From f50084bebdcd5c57bfa4d0950affc23350a4da98 Mon Sep 17 00:00:00 2001 From: Thomas von Dein Date: Sun, 9 Jul 2017 12:29:27 +0200 Subject: [PATCH] +fixes --- .emacs | 63 ++-- emacs.html | 891 +++++++++++++++++++++++++++-------------------------- 2 files changed, 502 insertions(+), 452 deletions(-) diff --git a/.emacs b/.emacs index 62123ce..3866d49 100644 --- a/.emacs +++ b/.emacs @@ -1,4 +1,4 @@ -;; Toms Emacs Config - portable - version (20170703.01) -*-emacs-lisp-*- +;; Toms Emacs Config - portable - version (20170707.01) -*-emacs-lisp-*- ;; * Introduction ;; This is my emacs config, it is more than twenty years old. It @@ -33,7 +33,7 @@ ;; Therefore I use lots of aliases in emacs for not-so-regular used ;; functions, which turned out to be sometimes easier to type than an -;; actual key binding. +;; actual key binding. ;; The html export has been created with the function ;; outshine-to-html, written by myself, see below. @@ -402,10 +402,17 @@ ;; - removed smart-forward, it annoys me ;; - made tvd-outshine-jump more portable, do not use hardcoded ;; regexps anymore, use outshine functions +;; - added 'change-inner and ci simulators' +;; - added suggest.el with my own reload function +;; - modified recentf: do not provide files already visited ;; 20170703.01: ;; - fixed recentf-exclude list, now REALLY ignores unreadables ;; - added export for easier export and commit of dot-emacs ;; - added tvd-suggest-jump to jump between input and output +;; 20170707.01: +;; - added C-x 4 to split fram into 4 windows +;; - fixed config-general-mode config +;; - fixed 'emacs-change-log (didn't expand trees before work) ;; ** TODO @@ -424,7 +431,7 @@ ;; My emacs config has a version (consisting of a timestamp with a ;; serial), which I display in the mode line. So I can clearly see, if ;; I'm using an outdated config somewhere. -(defvar tvd-emacs-version "20170703.01") +(defvar tvd-emacs-version "20170707.01") ;; -------------------------------------------------------------------------------- @@ -663,10 +670,22 @@ to next buffer otherwise." ;; Use only in X11 emacs - setting M-O inside console causes and ;; to stop working properly, for whatever reasons. (if (display-graphic-p) -(global-set-key (kbd "M-O") 'flip-windows) -) +(global-set-key (kbd "M-O") 'flip-windows)) ;; -------------------------------------------------------------------------------- +;; *** Split window to 4 parts + +(defun tvd-quarter-windows () + (interactive) + (split-window-vertically) + (split-window-horizontally) + (windmove-down) + (split-window-horizontally)) + +(global-set-key (kbd "C-x 4") 'tvd-quarter-windows) + +;; -------------------------------------------------------------------------------- + ;; ** re-read a modified buffer ;; F5 == reload file if it has been modified by another process, shift @@ -876,14 +895,9 @@ to next buffer otherwise." ;; ** c-h != delete (keyboard-translate ?\C-h ?\C-?) (keyboard-translate ?\C-? ?\C-h) -;; - added 'change-inner and ci simulators' -;; - added suggest.el with my own reload function -;; - modified recentf: do not provide files already visited - ;; -------------------------------------------------------------------------------- ;; ** general keys (re-)mappings -(global-set-key (kbd "C-x C-4") 'set-selective-display-to-current-column) (global-set-key (kbd "C-s") 'isearch-forward-regexp) (global-set-key (kbd "C-r") 'isearch-backward-regexp) (global-set-key (kbd "M-C-s") 'isearch-forward) @@ -902,6 +916,8 @@ to next buffer otherwise." (global-set-key (kbd "C-x k") 'kill-this-buffer) ; C-x k really kill current buffer w/o asking (global-set-key (kbd "C-x C-b") 'buffer-menu) + + ;; -------------------------------------------------------------------------------- ;; ** display a list of my own global key bindings and aliases ;; via [[https://www.emacswiki.org/emacs/OccurMode#toc9][emacswiki]] @@ -1975,13 +1991,23 @@ col1, col2" (require 'config-general-mode) -;; the mode enables electric indent automatically, but I disabled it -;; for conf-mode (see tvd-disarm-conf-mode), therefore I re-enable it here +;; I use TAB for completion AND tab and outshine. Also, the mode +;; enables electric indent automatically, but I disabled it for +;; conf-mode (see tvd-disarm-conf-mode), therefore I re-enable it here ;; for config-general-mode (which inherits from conf-mode). -(add-hook 'config-general-mode-hook 'electric-indent-mode) +(add-hook 'config-general-mode-hook + (lambda () + (outline-minor-mode) + (electric-indent-mode) + ;; de-activate some senseless bindings + (local-unset-key (kbd "C-c C-c")) + (local-unset-key (kbd "C-c C-p")) + (local-unset-key (kbd "C-c C-u")) + (local-unset-key (kbd "C-c C-w")) + (local-unset-key (kbd "C-c C-x")) + (local-unset-key (kbd "C-c :")) + (local-set-key (kbd "") 'config-general-tab-or-expand))) -;; enable outshine -(add-hook 'config-general-mode-hook 'outline-minor-mode) ;; -------------------------------------------------------------------------------- ;; ** Text Manupilation @@ -2549,6 +2575,7 @@ a list symbol describing the command." "Add a changelog entry to .emacs Changelog" (interactive "Menter change log entry: ") (save-excursion + (show-all) (beginning-of-buffer) (re-search-forward ";; .. Changelog") (next-line) @@ -2614,7 +2641,6 @@ a list symbol describing the command." (switch-to-buffer "*suggest*") (tvd-suggest-reload) (tvd-suggest-reload) - (calculator) (windmove-right) (switch-to-buffer "*Help*") (split-window-vertically) @@ -3996,10 +4022,7 @@ defun." (setq recentf-exclude (list "ido.last" "/elpa/" ".el.gz$" - '(not (file-readable-p)) - )) - - + '(not (file-readable-p)))) ;; -------------------------------------------------------------------------------- diff --git a/emacs.html b/emacs.html index 09d8f2b..fbc224d 100644 --- a/emacs.html +++ b/emacs.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + @@ -232,184 +232,185 @@ for the JavaScript code in this tag.

Table of Contents

-Toms Emacs Config - portable - version (20170703.01) -*-emacs-lisp-*- +Toms Emacs Config - portable - version (20170707.01) -*-emacs-lisp-*-

-
-

1 Introduction

+
+

1 Introduction

This is my emacs config, it is more than twenty years old. It @@ -452,7 +453,7 @@ that I could use them while drunk or dying.

Therefore I use lots of aliases in emacs for not-so-regular used functions, which turned out to be sometimes easier to type than an -actual key binding. +actual key binding.

@@ -463,11 +464,11 @@ outshine-to-html, written by myself, see below.

-
-

2 Config Log, Trivia, Notes, Changes

+
+

2 Config Log, Trivia, Notes, Changes

-
-

2.1 Changelog

+
+

2.1 Changelog

20160420.03: @@ -1229,6 +1230,9 @@ or inserts a % if not on a paren. Better than C-5, haha.

  • removed smart-forward, it annoys me
  • made tvd-outshine-jump more portable, do not use hardcoded regexps anymore, use outshine functions
  • +
  • added 'change-inner and ci simulators'
  • +
  • added suggest.el with my own reload function
  • +
  • modified recentf: do not provide files already visited
  • 20170703.01: @@ -1238,11 +1242,19 @@ regexps anymore, use outshine functions

  • added export for easier export and commit of dot-emacs
  • added tvd-suggest-jump to jump between input and output
  • +

    +20170707.01: +

    +
      +
    • added C-x 4 to split fram into 4 windows
    • +
    • fixed config-general-mode config
    • +
    • fixed 'emacs-change-log (didn't expand trees before work)
    • +
    -
    -

    2.2 TODO

    +
    +

    2.2 TODO

    • fix C-c C-j to work in non-elisp buffers too, see /FIXME/s there @@ -1258,8 +1270,8 @@ and make it recursive like a path or the like

    -
    -

    2.3 .emacs config version

    +
    +

    2.3 .emacs config version

    My emacs config has a version (consisting of a timestamp with a @@ -1267,7 +1279,7 @@ serial), which I display in the mode line. So I can clearly see, if I'm using an outdated config somewhere.

    -
    (defvar tvd-emacs-version "20170703.01")
    +
    (defvar tvd-emacs-version "20170707.01")
     
    @@ -1276,11 +1288,11 @@ I'm using an outdated config somewhere.
    -
    -

    3 System Specifics

    +
    +

    3 System Specifics

    -
    -

    3.1 Global init file+dir vars, portable

    +
    +

    3.1 Global init file+dir vars, portable

    • added dev function which opens a new development frame
    • @@ -1318,8 +1330,8 @@ all modes and extensions are located here
    -
    -

    3.2 Fontlock-mode - use syntax highlighting on graphical displays

    +
    +

    3.2 Fontlock-mode - use syntax highlighting on graphical displays

    look: emacswiki @@ -1336,8 +1348,8 @@ look: emacswiki


    -
    -

    3.3 line-cursor in console

    +
    +

    3.3 line-cursor in console

    better visibility of cursor in console sessions @@ -1353,8 +1365,8 @@ better visibility of cursor in console sessions


    -
    -

    3.4 Backup Config

    +
    +

    3.4 Backup Config

    I save backup files in a central location below the init dir, that @@ -1425,8 +1437,8 @@ This is system specific and only matches special host names.


    -
    -

    3.5 console backspace fix

    +
    +

    3.5 console backspace fix

    make backspace work in console sessions @@ -1439,8 +1451,8 @@ make backspace work in console sessions


    -
    -

    3.6 hide menu- and tool-bar

    +
    +

    3.6 hide menu- and tool-bar

    I prefer a bare bones emacs window without any distractions, so turn them off. @@ -1456,8 +1468,8 @@ I prefer a bare bones emacs window without any distractions, so turn them off.


    -
    -

    3.7 stay silent on startup

    +
    +

    3.7 stay silent on startup

    (setq initial-scratch-message "")
    @@ -1470,8 +1482,8 @@ I prefer a bare bones emacs window without any distractions, so turn them off.
     
    -
    -

    3.8 y means yes

    +
    +

    3.8 y means yes

    y is shorter than yes and less error prone. @@ -1484,8 +1496,8 @@ y is shorter than yes and less error prone.


    -
    -

    3.9 show col in modeline

    +
    +

    3.9 show col in modeline

    very useful to know current column @@ -1498,8 +1510,8 @@ very useful to know current column


    -
    -

    3.10 file or buffer in title

    +
    +

    3.10 file or buffer in title

    this can be seen in xmobar @@ -1513,8 +1525,8 @@ this can be seen in xmobar


    -
    -

    3.11 avoid invalid files

    +
    +

    3.11 avoid invalid files

    (setq require-final-newline t)
    @@ -1524,8 +1536,8 @@ this can be seen in xmobar
     
    -
    -

    3.12 prepare load-path

    +
    +

    3.12 prepare load-path

    where to look for extensions: @@ -1552,8 +1564,8 @@ modules


    -
    -

    3.13 byte-compile all of them, if needed

    +
    +

    3.13 byte-compile all of them, if needed

    handy function to recompile all lisp files @@ -1568,8 +1580,8 @@ handy function to recompile all lisp files


    -
    -

    3.14 increase fontsize with ctrl-+ and ctrl--

    +
    +

    3.14 increase fontsize with ctrl-+ and ctrl--

    I use those bindings everywhere (firefox, terminal, etc), and in @@ -1595,11 +1607,11 @@ emacs as well.


    -
    -

    3.15 WINDOW management stuff

    +
    +

    3.15 WINDOW management stuff

    -
    -

    3.15.1 resize windows by keyboard

    +
    +

    3.15.1 resize windows by keyboard

    Very practical: resize windows easily. @@ -1616,8 +1628,8 @@ hit C-c C-r then use cursor keys to resize, <ret> to finish

    -
    -

    3.15.2 switch windows with MS-WINDOWS key

    +
    +

    3.15.2 switch windows with MS-WINDOWS key

    (require 'windmove)
    @@ -1628,8 +1640,8 @@ hit C-c C-r then use cursor keys to resize, <ret> to finish
     
    -
    -

    3.15.3 M-o switch window or buffer

    +
    +

    3.15.3 M-o switch window or buffer

    via mbork @@ -1700,8 +1712,25 @@ Use only in X11 emacs - setting M-O inside console causes <up> and

    (if (display-graphic-p)
    -(global-set-key (kbd "M-O")             'flip-windows)
    -)
    +(global-set-key (kbd "M-O")             'flip-windows))
    +
    +
    + +
    +
    +
    +
    +

    3.15.4 Split window to 4 parts

    +
    +
    +
    (defun tvd-quarter-windows ()
    +  (interactive)
    +  (split-window-vertically)
    +  (split-window-horizontally)
    +  (windmove-down)
    +  (split-window-horizontally))
    +
    +(global-set-key (kbd "C-x 4")           'tvd-quarter-windows)
     
    @@ -1709,8 +1738,9 @@ Use only in X11 emacs - setting M-O inside console causes <up> and
    -
    -

    3.16 re-read a modified buffer

    + +
    +

    3.16 re-read a modified buffer

    F5 == reload file if it has been modified by another process, shift @@ -1735,8 +1765,8 @@ because Xmonad


    -
    -

    3.17 global TAB/Indent config

    +
    +

    3.17 global TAB/Indent config

    I use spaces everywhere but Makefiles. If I encounter TABs I @@ -1776,8 +1806,8 @@ Use normal tabs in makefiles


    -
    -

    3.18 handy aliases

    +
    +

    3.18 handy aliases

    M-x q r <ret> is short enough for me, no need for key bindings for @@ -1809,8 +1839,8 @@ those


    -
    -

    3.19 various settings

    +
    +

    3.19 various settings

    point stays while scrolling @@ -1863,8 +1893,8 @@ I'm grown up!


    -
    -

    3.20 load imenu

    +
    +

    3.20 load imenu

    (define-key global-map [C-down-mouse-2] 'imenu)
    @@ -1874,8 +1904,8 @@ I'm grown up!
     
    -
    -

    3.21 copy/paste Config

    +
    +

    3.21 copy/paste Config

    Related: @@ -1942,8 +1972,8 @@ marked region automatically copied, also on win


    -
    -

    3.22 use more mem

    +
    +

    3.22 use more mem

    are you from the past? @@ -1956,8 +1986,8 @@ are you from the past?


    -
    -

    3.23 better file name completion

    +
    +

    3.23 better file name completion

    Complete filenames case insensitive and ignore certain files during completion. @@ -1987,8 +2017,8 @@ via -

    3.24 abbreviations

    +
    +

    3.24 abbreviations

    Do I really need those anymore? Added ca 1999… @@ -2010,8 +2040,8 @@ Do I really need those anymore? Added ca 1999…

    -
    -

    3.25 meaningful names for buffers with the same name

    +
    -
    -

    3.26 packages

    +
    +

    3.26 packages

    I dont need it all the time and only for experimentation, so lets @@ -2053,8 +2083,8 @@ only use melpa on demand


    -
    -

    3.27 My own global variables

    +
    +

    3.27 My own global variables

    narrowed fringe background @@ -2067,8 +2097,8 @@ narrowed fringe background


    -
    -

    3.28 More scratch space

    +
    +

    3.28 More scratch space

    Sometimes I need a text mode scratch buffer while scratch is @@ -2084,35 +2114,28 @@ already in use. So let's prepare one

    -
    -

    4 Global Key Bindings

    +
    +

    4 Global Key Bindings


    -
    -

    4.1 c-h != delete

    +
    +

    4.1 c-h != delete

    (keyboard-translate ?\C-h ?\C-?)
     (keyboard-translate ?\C-? ?\C-h)
     
    -
      -
    • added 'change-inner and ci simulators'
    • -
    • added suggest.el with my own reload function
    • -
    • modified recentf: do not provide files already visited
    • -
    -
    -
    -

    4.2 general keys (re-)mappings

    +
    +

    4.2 general keys (re-)mappings

    -
    (global-set-key (kbd "C-x C-4")         'set-selective-display-to-current-column)
    -(global-set-key (kbd "C-s")             'isearch-forward-regexp)
    +
    (global-set-key (kbd "C-s")             'isearch-forward-regexp)
     (global-set-key (kbd "C-r")             'isearch-backward-regexp)
     (global-set-key (kbd "M-C-s")           'isearch-forward)
     (global-set-key (kbd "M-C-r")           'isearch-backward)
    @@ -2132,11 +2155,13 @@ already in use. So let's prepare one
     
    + +
    -
    -

    4.3 display a list of my own global key bindings and aliases

    +
    +

    4.3 display a list of my own global key bindings and aliases

    via emacswiki @@ -2213,13 +2238,13 @@ more help with: describe-function occur-mode

    -
    -

    5 Productivity Functions

    +
    +

    5 Productivity Functions


    -
    -

    5.1 goto line with tmp line numbers

    +
    +

    5.1 goto line with tmp line numbers

    I stole this somewhere, as far as I remember, emacswiki, however, I @@ -2243,8 +2268,8 @@ always had F7 for goto-line


    -
    -

    5.2 invert fore- and background

    +
    +

    5.2 invert fore- and background

    Sometimes when sitting in a very dark enviroment, my usual light @@ -2287,8 +2312,8 @@ fast


    -
    -

    5.3 Some useful bindings for Home and End keys Hit the key once to

    +
    +

    5.3 Some useful bindings for Home and End keys Hit the key once to

    Go to the beginning/end of a line, hit it twice in a row to go to @@ -2352,8 +2377,8 @@ This is the most natural use for those keys


    -
    -

    5.4 percent function

    +
    +

    5.4 percent function

    by Jens Heunemann: jump to percent position into current buffer @@ -2374,8 +2399,8 @@ by Jens Heunemann: jump to percent position into current buffer


    -
    -

    5.5 Simulate vi's % function

    +
    +

    5.5 Simulate vi's % function

    There's not a lot about vi[m] I like, but jumping with % to a @@ -2407,8 +2432,8 @@ just insert a literal ?%. Only make sense if bound to %.


    -
    -

    5.6 Move region

    +
    +

    5.6 Move region

    Mark a region, then use M-up|down to move it around @@ -2507,8 +2532,8 @@ code from -

    5.7 comment-uncomment region with one key binding

    + -
    -

    5.8 search for symbol at point

    +
    +

    5.8 search for symbol at point

    Simulate the # function of vi, marks the symbol at point, C-s then @@ -2575,8 +2600,8 @@ via ergomacs


    -
    -

    5.9 Window Margin

    +
    +

    5.9 Window Margin

    Kinda screen reader for the poor. I use this sometimes with info @@ -2602,8 +2627,8 @@ left+right margin on demand (but nothing else)


    -
    -

    5.10 Fill and justify a paragraph

    +
    +

    5.10 Fill and justify a paragraph

    this is just a shortcut for: @@ -2632,8 +2657,8 @@ idea via: -

    5.11 Make a read-only copy of the current buffer

    +
    +

    5.11 Make a read-only copy of the current buffer

    I just create a new read-only buffer and copy the contents of the @@ -2682,8 +2707,8 @@ a file is not maintained via VC anyway.


    -
    -

    5.12 Cleanup, close all windows and kill all buffers

    +
    +

    5.12 Cleanup, close all windows and kill all buffers

    From time to time I get annoyed by the many dozen buffers @@ -2714,8 +2739,8 @@ setup accidentally.


    -
    -

    5.13 Cleanup current buffer

    +
    -
    -

    5.14 Better newline(s)

    +
    -
    -

    5.15 Mouse Rectangle

    +
    -
    -

    5.16 DOS <=> UNIX conversion helpers

    +
    +

    5.16 DOS <=> UNIX conversion helpers

    (defun dos2unix ()
    @@ -2830,8 +2855,8 @@ via stackoverflow
     
    -
    -

    5.17 helper do add the same thing to multiple mode hooks

    +
    +

    5.17 helper do add the same thing to multiple mode hooks

    via stackoverflow @@ -2849,8 +2874,8 @@ usage samples below.

    -
    -

    5.18 helper to catch load errors

    +
    +

    5.18 helper to catch load errors

    Try to eval 'fn, catch errors, if any but make it possible for @@ -2872,8 +2897,8 @@ emacs to continue undisturbed, used with SMEX, see below.


    -
    -

    5.19 Alignment Wrappers

    +
    +

    5.19 Alignment Wrappers

    align-regexp is already a very usefull tool, however, sometimes I @@ -2923,8 +2948,8 @@ wrappers to make this easier.

    -
    -

    5.20 String Helpers

    +
    +

    5.20 String Helpers

    Some helper functions I use here and there. @@ -2963,14 +2988,14 @@ Some helper functions I use here and there.

    -
    -

    6 Modes

    +
    +

    6 Modes

    -
    -

    6.1 Programming Languages

    +
    +

    6.1 Programming Languages

    -
    -

    6.1.1 VALA

    +
    +

    6.1.1 VALA

    (autoload 'vala-mode "vala-mode" "Major mode for editing Vala code." t)
    @@ -2985,8 +3010,8 @@ Some helper functions I use here and there.
     
    -
    -

    6.1.2 python mode

    +
    +

    6.1.2 python mode

    Not much configured for python, I'm happy with the defaults as it seems :) @@ -3014,8 +3039,8 @@ Not much configured for python, I'm happy with the defaults as it seems :)

    -
    -

    6.1.3 cperl mode

    +
    +

    6.1.3 cperl mode

    I am a perl addict. I love it, therefore, emacs must be prepared @@ -3162,8 +3187,8 @@ and hook them into cperl

    -
    -

    6.1.4 Paredit for lisp only

    +
    +

    6.1.4 Paredit for lisp only

    I use paredit in lisp a lot, but are mostly happy with the defaults. @@ -3206,8 +3231,8 @@ sometimes I need to be able to turn it off fast:

    -
    -

    6.1.5 ETAGS

    +
    +

    6.1.5 ETAGS

    I use ETAGS for some projects. With etags I can easily jump to the @@ -3284,11 +3309,11 @@ some handy aliases

    -
    -

    6.2 Text Modes

    +
    +

    6.2 Text Modes

    -
    -

    6.2.1 sgml

    +
    +

    6.2.1 sgml

    Used for XML and the likes. @@ -3315,8 +3340,8 @@ Used for XML and the likes.

    -
    -

    6.2.2 web-mode (JS, HTML, CSS combined)

    +
    +

    6.2.2 web-mode (JS, HTML, CSS combined)

    Web development is shit. Tech involved is a mess, and in most cases @@ -3410,8 +3435,8 @@ convert a text list into a html list.

    -
    -

    6.2.3 Cisco Mode

    +
    +

    6.2.3 Cisco Mode

    Written by myself many years ago, but I'm still using it daily to @@ -3429,8 +3454,8 @@ view and prepare cisco configs.

    -
    -

    6.2.4 Markdown

    +
    +

    6.2.4 Markdown

    I rarely use markdown, but sometimes I stumble upon such a file and @@ -3466,8 +3491,8 @@ parens and quotes constraints check on save

    -
    -

    6.2.5 POD mode

    +
    +

    6.2.5 POD mode

    I LOVE POD! POD is the documentation format of perl and there's a @@ -3576,8 +3601,8 @@ pod mode config


    -
    -

    6.2.6 conf-mode

    +
    +

    6.2.6 conf-mode

    conf-mode annoyingly overwrites the global keybinding C-c C-c with @@ -3598,8 +3623,8 @@ configs. Applies for derivates as well.

    -
    -

    6.2.7 Config::General mode

    +
    +

    6.2.7 Config::General mode

    config-general-mode (also on Melpa). @@ -3618,32 +3643,37 @@ both did not satisfy me. Now (as of 20170625) I solved this mess once and for al

    -the mode enables electric indent automatically, but I disabled it -for conf-mode (see tvd-disarm-conf-mode), therefore I re-enable it here +I use TAB for completion AND tab and outshine. Also, the mode +enables electric indent automatically, but I disabled it for +conf-mode (see tvd-disarm-conf-mode), therefore I re-enable it here for config-general-mode (which inherits from conf-mode).

    -
    (add-hook 'config-general-mode-hook 'electric-indent-mode)
    +
    (add-hook 'config-general-mode-hook
    +               (lambda ()
    +                 (outline-minor-mode)
    +                 (electric-indent-mode)
    +                 ;; de-activate some senseless bindings
    +                 (local-unset-key (kbd "C-c C-c"))
    +                 (local-unset-key (kbd "C-c C-p"))
    +                 (local-unset-key (kbd "C-c C-u"))
    +                 (local-unset-key (kbd "C-c C-w"))
    +                 (local-unset-key (kbd "C-c C-x"))
    +                 (local-unset-key (kbd "C-c :"))
    +                 (local-set-key (kbd "<tab>") 'config-general-tab-or-expand)))
     
    -

    -enable outshine -

    -
    -
    (add-hook 'config-general-mode-hook 'outline-minor-mode)
    -
    -

    -
    -

    6.3 Text Manupilation

    +
    +

    6.3 Text Manupilation

    -
    -

    6.3.1 expand-region

    +
    +

    6.3.1 expand-region

    One of the best modes I ever discovered. Press C-= multiple times @@ -3662,8 +3692,8 @@ related to ER:

    -
    -

    6.3.2 Mark, Copy, Yank Things

    +
    +

    6.3.2 Mark, Copy, Yank Things

    For a long time this stuff was located here in my emacs config. As @@ -3766,8 +3796,8 @@ it appears as NNN,NN.

    -
    -

    6.3.3 change-inner

    +
    +

    6.3.3 change-inner

    I use change-inner with a prefix key and some wrappers around @@ -3889,8 +3919,8 @@ typing the prefix key twice calls the real change-inner


    -
    -

    6.3.4 Rotate text

    +
    +

    6.3.4 Rotate text

    This one is great as well, I use it to toggle flags and such stuff @@ -3946,8 +3976,8 @@ short command anymore, so C-t would be free now, wouldn't it?

    -
    -

    6.3.5 Word wrapping

    +
    +

    6.3.5 Word wrapping

    same as word-wrap but without the fringe which I hate the most! @@ -3969,8 +3999,8 @@ overwritten by visual-line-mode above for specifics

    -
    -

    6.3.6 Viking Mode

    +
    +

    6.3.6 Viking Mode

    Delete stuff fast. Press the key multiple times - delete more @@ -3988,8 +4018,8 @@ things. Inspired by expand-region. Written by myself.

    -
    -

    6.3.7 HTMLize

    +
    +

    6.3.7 HTMLize

    extracted from debian package emacs-goodies-el-35.2+nmu1, since @@ -4006,8 +4036,8 @@ the current buffer, however it looks.

    -
    -

    6.3.8 iEdit (inline edit multiple searches)

    +
    +

    6.3.8 iEdit (inline edit multiple searches)

    Edit all occurences of something at once. Great for re-factoring. @@ -4048,11 +4078,11 @@ behavior, so, I modify it myself using defadvice.

    -
    -

    6.4 Interactives

    +
    +

    6.4 Interactives

    -
    -

    6.4.1 eShell stuff, or if interactive stuff is needed, use ansi-term

    +
    +

    6.4.1 eShell stuff, or if interactive stuff is needed, use ansi-term

    I am a hardcore bash user, but from time to time eshell is good @@ -4332,8 +4362,8 @@ no need for less or more, this is emacs, isn't it?

    -
    -

    6.4.2 Emacs LISP interactive

    +
    +

    6.4.2 Emacs LISP interactive

    General configuration for all things elisp. @@ -4417,6 +4447,7 @@ REPL where it will be evaluated "Add a changelog entry to .emacs Changelog" (interactive "Menter change log entry: ") (save-excursion + (show-all) (beginning-of-buffer) (re-search-forward ";; .. Changelog") (next-line) @@ -4522,7 +4553,6 @@ opens a new frame with all those buffers already opened and pinned. (switch-to-buffer "*suggest*") (tvd-suggest-reload) (tvd-suggest-reload) - (calculator) (windmove-right) (switch-to-buffer "*Help*") (split-window-vertically) @@ -4537,8 +4567,8 @@ opens a new frame with all those buffers already opened and pinned.


    -
    -

    6.4.3 el2markdown

    +
    +

    6.4.3 el2markdown

    el2markdown is a module which @@ -4562,8 +4592,8 @@ README.md. Take care though: it doesn't convert the META section.

    -
    -

    6.4.4 tramp mode

    +
    +

    6.4.4 tramp mode

    Edit remote files, one of the best things in emacs. I use it every day heavily. @@ -4585,8 +4615,8 @@ doku: gnu.org

    -
    -

    6.4.5 org mode

    +
    +

    6.4.5 org mode

    I use org mode to take notes mostly at work. I also track projects @@ -4887,8 +4917,8 @@ is in the outline section.


    -
    -

    6.4.6 org table mode

    +
    +

    6.4.6 org table mode

    I'm so used to lovely org mode tables, I need them everywhere! @@ -5134,8 +5164,8 @@ tables as well

    -
    -

    6.4.7 org mode slideshows

    +
    +

    6.4.7 org mode slideshows

    Making presentations within emacs with org mode is cool as well. @@ -5243,8 +5273,8 @@ Will be inserted as first help slide in a slide show


    -
    -

    6.4.8 outshine mode

    +
    +

    6.4.8 outshine mode

    I maintain my emacs config with outshine mode. It works a lot like @@ -5424,8 +5454,8 @@ posting online, which makes it way easier to read.

    -
    -

    6.4.9 outline mode

    +
    +

    6.4.9 outline mode

    I use the very same cycle style as in org mode: when on a heading, @@ -5522,8 +5552,8 @@ orange fringe when narrowed


    -
    -

    6.4.10 narrowing (no mode but fits here)

    +
    +

    6.4.10 narrowing (no mode but fits here)

    I use narrowing quite frequently, so here are some enhancements. @@ -5563,8 +5593,8 @@ via -

    6.4.11 ANSI-TERM (inferior shells/interpreters and REPLs)

    +
    +

    6.4.11 ANSI-TERM (inferior shells/interpreters and REPLs)

    I use ansi term for inferior shells only. @@ -5680,8 +5710,8 @@ finally the inferior REPLs:

    -
    -

    6.4.12 Puppet

    +
    +

    6.4.12 Puppet

    adds hook for .pp files @@ -5695,8 +5725,8 @@ adds hook for .pp files

    -
    -

    6.4.13 Novel Mode - Screen Reader

    +
    +

    6.4.13 Novel Mode - Screen Reader

    my own emacs screen reader, very handy to read docs on the road. @@ -5712,8 +5742,8 @@ my own emacs screen reader, very handy to read docs on the road.

    -
    -

    6.4.14 Macro Math

    +
    +

    6.4.14 Macro Math

    see macro-math @@ -5736,8 +5766,8 @@ mark something and hit C-x C-0 (which is a reminder to C-x C-= w/o the shift)

    -
    -

    6.4.15 Common-Lisp (SLIME)

    +
    +

    6.4.15 Common-Lisp (SLIME)

    I'm learing CL with slime, start with M-x slime. @@ -5770,8 +5800,8 @@ INSTALL: (see: -

    6.4.16 INFO Mode

    +
    +

    6.4.16 INFO Mode

    open an info file somewhere outside %infodir% with info-mode @@ -5803,8 +5833,8 @@ easier navigation in Info mode, intuitive history back and forth.

    -
    -

    6.4.17 calc et al.

    +
    +

    6.4.17 calc et al.

    emacs provides 4 ways to calculate: @@ -5854,8 +5884,8 @@ or, inferior perl calc: M-x icalc, see above

    -
    -

    6.4.18 MACROs

    +
    +

    6.4.18 MACROs

    help: emacswiki macro tricks. @@ -6068,8 +6098,8 @@ but only load if in use


    -
    -

    6.4.19 EWW browser stuff

    +
    +

    6.4.19 EWW browser stuff

    Emacs has a builtin browser, which is not too bad. @@ -6137,8 +6167,8 @@ hides menus and distractions! Update emacs.


    -
    -

    6.4.20 Firestarter

    +
    +

    6.4.20 Firestarter

    experimental: do things on save buffer etc. @@ -6147,8 +6177,8 @@ Source: firestarter

    -
    -

    6.4.21 Tabulated List Mode

    +
    +

    6.4.21 Tabulated List Mode

    built-in, used by many interactive major modes @@ -6196,8 +6226,8 @@ we need to kill tablist's binding in order to have ours run (see below)

    -
    -

    6.4.22 Help Mode

    +
    +

    6.4.22 Help Mode

    I even customize help windows! … at least a little :) @@ -6220,8 +6250,8 @@ I even customize help windows! … at least a little :)

    -
    -

    6.4.23 Suggest Mode

    +
    +

    6.4.23 Suggest Mode

    suggest mode is a great @@ -6272,11 +6302,11 @@ I use my own clearing function, since suggest doesn't provide this

    -
    -

    6.5 Emacs Interface

    +
    +

    6.5 Emacs Interface

    -
    -

    6.5.1 Parens

    +
    +

    6.5.1 Parens

    display matching braces @@ -6297,8 +6327,8 @@ display matching braces

    -
    -

    6.5.2 highlight todo keywords (such as FIXME)

    +
    +

    6.5.2 highlight todo keywords (such as FIXME)

    Absolutely needed! @@ -6313,8 +6343,8 @@ Absolutely needed!


    -
    -

    6.5.3 UNDO Tree Mode

    +
    +

    6.5.3 UNDO Tree Mode

    Better undo, with redo support. @@ -6357,8 +6387,8 @@ M-_ catched by Xmonad


    -
    -

    6.5.4 Smarter M-x Mode (smex)

    +
    +

    6.5.4 Smarter M-x Mode (smex)

    This is really cool and I don't know how I could ever live without it. @@ -6381,8 +6411,8 @@ fails @win, so wrap it

    -
    -

    6.5.5 Which Func

    +
    +

    6.5.5 Which Func

    display current function - if any - in mode line @@ -6397,8 +6427,8 @@ display current function - if any - in mode line


    -
    -

    6.5.6 Show current-line in the Fringe

    +
    +

    6.5.6 Show current-line in the Fringe

    (require 'fringe-current-line)
    @@ -6417,8 +6447,8 @@ also change the color (matching the mode line
     
    -
    -

    6.5.7 Recent Files

    +
    +

    6.5.7 Recent Files

    You know the file you edited yesterday had "kri" in its name, but @@ -6504,19 +6534,16 @@ exclude some auto generated files

    (setq recentf-exclude (list "ido.last"
                                 "/elpa/"
                                 ".el.gz$"
    -                            '(not (file-readable-p))
    -                            ))
    +                            '(not (file-readable-p))))
     
    - -
    -
    -

    6.5.8 IDO mode

    +
    +

    6.5.8 IDO mode

    There are other completion enhancement packages available like ivy @@ -6648,8 +6675,8 @@ by howardism: [re]open non-writable file with sudo

    -
    -

    6.5.9 Save cursor position

    +
    +

    6.5.9 Save cursor position

    So the next time I start emacs and open a file I were editing @@ -6670,8 +6697,8 @@ before.

    -
    -

    6.5.10 DoReMi experimentation

    +
    +

    6.5.10 DoReMi experimentation

    I'm not using it a lot, sometimes I tune the background color though. @@ -6700,8 +6727,8 @@ cool ones: doremi-buffers, doremi-all-faces-fg+ [s, h]


    -
    -

    6.5.11 Hightligt TABs

    +
    +

    6.5.11 Hightligt TABs

    not a mode, but however: higlight TABs in certain modes @@ -6724,8 +6751,8 @@ not a mode, but however: higlight TABs in certain modes

    -
    -

    6.5.12 Browse kill-ring

    +
    +

    6.5.12 Browse kill-ring

    when active use n and p to browse, <ret> to select, it's the same @@ -6743,8 +6770,8 @@ as <M-y> and I never really use it…

    -
    -

    6.5.13 goto-last-change

    +
    +

    6.5.13 goto-last-change

    Very handy, jump to last change[s]. @@ -6761,8 +6788,8 @@ Very handy, jump to last change[s].

    -
    -

    6.5.14 Bookmarks

    +
    +

    6.5.14 Bookmarks

    I use the builtin bookmark feature quite a lot and am happy with @@ -6794,8 +6821,8 @@ I use the same aliases as in apparix for bash (since I'm used to them)

    -
    -

    6.5.15 which-key

    +
    +

    6.5.15 which-key

    One of the best unobstrusive modes for key help ever. Just start @@ -6815,8 +6842,8 @@ press from there along with the associated functions.

    -
    -

    6.5.16 iBuffer mode

    +
    +

    6.5.16 iBuffer mode

    iBuffer is a great interactive buffer management tool included with @@ -7026,8 +7053,8 @@ override ibuffer M-o binding

    -
    -

    6.5.17 Printing

    +
    +

    6.5.17 Printing

    overwrites printing default menu, access via menu File => Print @@ -7072,8 +7099,8 @@ via -

    6.5.18 Beacon mode (pointer blink)

    +
    +

    6.5.18 Beacon mode (pointer blink)

    Source: beacon mode @@ -7103,8 +7130,8 @@ editing position.

    -
    -

    6.6 mode-line setup (must be the last mode)

    +
    +

    6.6 mode-line setup (must be the last mode)

    I just append the current version of my emacs config and leave out @@ -7169,13 +7196,13 @@ custom modeline

    -
    -

    7 Emacs Autoconfig / Customizegroup stuff

    +
    +

    7 Emacs Autoconfig / Customizegroup stuff


    -
    -

    7.1 font faces

    +
    +

    7.1 font faces

    Font color config, must always be the last thing so all hook faces are loaded. @@ -7253,8 +7280,8 @@ unless we're on windoze


    -
    -

    7.2 variables

    +
    +

    7.2 variables

    If I ever use custom-group to customize a mode, then I create a @@ -7275,8 +7302,8 @@ here. So, in normal times this should be empty, but needs to exist.

    -
    -

    7.3 done

    +
    +

    7.3 done

    Finally, this message is being displayed. If this isn't the case I @@ -7293,7 +7320,7 @@ know easily that something went wrong.

    Author: Tom

    -

    Created: 2017-07-04 Di 21:21

    +

    Created: 2017-07-09 So 12:29

    Validate