X-Git-Url: https://iankelling.org/git/?p=dot-emacs;a=blobdiff_plain;f=ian-notes.org;fp=init-notes.org;h=e976bacc0fb9717e6f5dbf465687773729c22766;hp=af7bad97aeabc55a6258200c0a34de48a98e594e;hb=87395fc29e64efbbef5c52bb0ac905cea46e6698;hpb=7c3660936ebc15b70a005c78df9cd32516e0c196 diff --git a/init-notes.org b/ian-notes.org similarity index 75% rename from init-notes.org rename to ian-notes.org index af7bad9..e976bac 100644 --- a/init-notes.org +++ b/ian-notes.org @@ -1,3 +1,6 @@ +#+title: My Personal Init Customization +#+OPTIONS: toc:nil num:nil ^:nil + * python disabled due to long load time todo: get smart-operator to work todo, checkout https://github.com/python-rope/ropemacs refactoring python, @@ -1503,3 +1506,389 @@ web-mode is competing package and actively developed, so i'm using that instead resizing a window horizontally with the mouse should be allowed in more places * TODO try using / making abbreviations + +* TODO move over to ivy, ditch ido + +* key binds. keep at end of file +this should come at the end because it depends on key maps being +created in earlier sections. + +** emacs keys notes +commands not needed in ido mode and their replacement in ido mode +spell check fix -> use current pattern and start new one +narrow -> create subdirectory +org-cycle -> M-s search recently used directory +vert split Window -> create file instead of select match +delete-other-windows -> open dired buffer +delete current window -> delete buffer/file +find file -> search within all subdirectories + +forward/back error + +buffer select -> toggle find file / buffer +up/down -> next/previous history +forward/back -> ido-forward/back + + +right keyboard attributes: movement, involve typing words +left keyboard attributes: non-typing universal non-movement + + + + +todo +fix global unpop mark ring +setup helm +learn cedet and projectile and helm +setup key for pop-global-mark +try out C-M-\ indent region +set quoted insert to some obscure keybind +make currently overrided M-u uppercase word into something obscure +remember mode +bind shell-command to something better +investigate tags +investigate keys in isearch mode and find file mode +try out occur. M-s o +investigate programming modes. M-g n/b next/previous error. gdb? +investigate org mode keys +learn version control +learn mail +check out imenu +bind capitalize-word to something obscure +sentance/paragraph movement/marking should be swapped with sexp/paren movement based on mode +bind fill-paragraph to something obscure +setup linewise paste +install magit (git control) +magpie expansion provides a completion key for acronym expansion based on buffer text +learn ediff +universal google +figure out auto-indent +learn eshell and prelude settings for it +combine register prefix and c-x prefix +note: remember to think of mouse & foot pedals +commands to change: select other window: C-x o. + +** named commands +*** gdb +gdb-many-windows +*** tramp sudo +/ssh:host|sudo:host: +when in the same session, you can then do: +/sudo:root@host: + +*** org insert table row +[org-shiftmetadown/up] +*** toggle line continuation / truncation / wrap + toggle-truncate-lines +*** auto-save on/off + my-as-on/my-as-off +*** toggle menu bar +menu-bar-mode +*** show abbreviations +list-abbrevs + +*** rename-file-and-buffer +*** ediff-buffers +*** refill-mode +automatically balance a paragraph with newlines +*** executable-make-buffer-file-executable-if-script-p +make a script executable +*** (setq lazy-highlight-cleanup nil) +keep search highlight on after search is done +*** auto-revert-tail-mode +tail a file +*** what-line +*** linum-mode +line numbers + +*** sgml-pretty-print +format xml in nxml-mode +*** visual-line-mode +toggle word wrap. +** compound commands +*** C-xc +exit0 +*** C-x s +save file +*** C-x e +eval last sexp +*** C-c - +[org insert table horizontal line or create list] +*** C-x tab +indent/dedent region + +*** C-x * +[calc-dispatch] +*** C-x = +[point information] +*** C-x d +[dired] +*** C-xb +[ibuffer] + +*** C-x r c +rectangular clear, replace area with whitespace +** gnus +searching overview. +3 types: +ingroup searching +nnir searching with notmuch, specific group (not sure if it can do multiple) +search all groups with mairix +*** a] +compose new message +*** C-c C-c] +send message +*** s] +save newsrc file, alterations to groups. +*** g] +gnus refresh / get new +*** m] +gnus new message +*** F] +gnus quoted reply all +*** e] +gnus draft edit message +*** delete] +gnus delete draft +#+begin_src emacs-lisp +(add-hook 'gnus-startup-hook + (lambda () + (define-key gnus-summary-mode-map (kbd "") 'gnus-summary-delete-article))) +#+end_src + +*** b] +mairix search +#+begin_src emacs-lisp +(add-hook 'gnus-startup-hook + (lambda () + (define-key gnus-group-mode-map "b" 'nnmairix-search) + (define-key gnus-summary-mode-map "b" 'nnmairix-search))) +#+end_src +*** B m] +move message, or messages in region +*** #] +mark article, move with B m +*** B delete] +gnus delete draft +*** / plus x a / b] +search current group (or see info manual for more groups), +using the gnus native search (its slow, do a notmuch or mairix search instead) +x= extra (ie. to) +todo; send in patch to make author search to in sent folder +a = author +/ = subject +b = body +see C-h m for a full list +*** G G ] +do a nnir notmuch search, for the group on the current line +*** A T ] +jump to thread from nnir group + +*** marks] +! = saved for later +E = expired +M-& apply process mark to a non-process mark command +*** S D e] +edit as new +*** T k / C-M-k +maybe rebind this to a shorter keybind, like del +gnus-summary-kill-thread +** message mode +*** C-ck] +discard message +** notmuch +*** space] +notmuch advance to next message/thread + +** readline / bash / .inputrc +*** C-m +[--------] +terminal crap, duplicate of enter + +** isearch +*** C-w +paste word/char under cursor into isearch +*** M-n/p +next/previous isearch history +*** C-o +*** m-r + +** icomplete +*** C-. C-, +icomplete-forward/backward-completions + +** info +*** [, ] +forward / previous node, descend/ascend tree as needed +*** x +Info-follow-nearest-node + +m, f, n, p or ^ command, depending on where you click. +** auto-complete +*** S-return +select next completion candidate +ac-expand +** agenda +*** t] +agenda cycle todo state +** org +*** C-c / t] +make just todo items visible +*** S- +org-shifttab global visibility cycle / move table cell +*** C-cs] +schedule todo item +*** C-cx p] +org set property +*** C-c -] +org insert horizontal line +*** C-cq] + org tag +** calc +i'd like to drill these sometime when I have space in my head, or I +plan to use calc. +*** space +[enter input to the stack, or duplicate top stack item] +*** C-M-i +[cycle 3 elements on stack] +*** tab +[cycle 2 elements on stack] +*** n +[negate] +*** _ +[begin negative number] +*** / +[reciprocal] +*** x +[calc named command] +*** M-delete +[delete 2nd from top of stack] +*** C-u [-]0-9 +[0=whole stack, 1-9=that many, -1-9=that element] +*** delete +[remove from the top of the stack] +*** ' +[algebraic mode. infix expressions are calculated when input to the stack] +*** m a +[auto algebraic mode] +*** $,$$,$$$ +[top x of stack reference] +*** s s/t/r/u +[store to variable: store, top, retrieve, unstore. the quick variables 0-9 don't need s prefix] +*** U/D +[undo/redo] +*** t p/n/]/y +[trail prev/next/end/yankh] +*** ` +[calc edit mode, to edit the top of stack] + +* keybind tables + + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | left primary | C- | M- | C-M- | C-S- | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | 2 | copy-symbol | shell-cd-to-file | --- | | + | 3 | dot-mode-execute | | recenter-top-bottom | | + | q | org-cycle, comint previous arg | org-archive-to-archive-sibling | quoted-insert | | + | w | goto-t.org | org-clock-in | | | + | e | copy-line | org-clock-in-last | | | + | r | isearch-backward | org-clock-out | | | + | a | copy-all | | | | + | s | C-x prefix | | split-window-vertically | | + | d | C-c prefix | | swap buffer | | + | f | kill-whole-line | print-var-at-point | kill rest of line | | + | g | other-window / cancel | abort-recursive-edit | gnus | | + | z | undo-tree-undo | | | | + | x | kill-region | append-next-kill | append-next-kill | | + | c | copy | org-capture | copy-to-register | | + | v | yank | insert-register | yank pop | | + | b | delete-other-windows | isearch-backward-current-symbol | isearch-current-symbol | | + | tab | yas-insert-snippet | indent line | | | + | delete | kill-symbol | | kill-sexp | | + | left-arrow | compile | | org-shiftup | | + | right-arrow | paste selection | | org-shiftdown | | + | backspace | backward-kill-symbol | | backward-kill-sexp | | + | f7 | | | | | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | right primary | C- | M- | C-M- | C-S- | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | * | split-window-horizontally | | calc-dispatch | | + | 9 | delete-window-or-exit | kill-buffer-and-window | kill client buffer | | + | u | universal-argument | | search-keybind | | + | i | ----- | | query-replace-regexp | | + | o | occur | | counsel-imenu | | + | p | move-mouse-to-point | | delete-horizontal-space | | + | j | pop-to-mark | previous-error | register prefix | | + | k | jump to register | next-error | man | | + | l | ivy-switch-buffer | | move cursor top bottom mid | | + | ; | comment-dwim | comment-dwim | comment-current-line-dwim | | + | m | | | recursive grep | | + | , | counsel-find-file | | find-file-in-project | | + | . | recentf-ido-find-file | | - | | + | / | join lines | | copy-variable | | + | 8 | calc-embedded-word | | | | + | up-arrow | back defun/headline | | | winner undo | + | down-arrow | forward dfun/headline | | toggle-mark-activation | smex-major-mode-commands | + | lbracket | ---- | | scroll-right | | + | rbracket | fill-paragraph | | scroll-left | | + | return | newline next line | non-indented newline | open newline on previous line | | + | space | org-edit-special | | spell check word | | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | left secondary | C- | M- | C-M- | C-S- | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | = | | | | | + | 1 | | | | | + | 4 | | | widen | | + | 5 | | | | | + | tab-key | query-replace | | | | + | t | org change todo state | | org insert timestamp | | + | home | start of buffer | | | | + | end | end of buffer | | | | + | f9 | | | | | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | right secondary | C- | M- | C-M- | C-S- | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + | 6 | save-buffers-kill-emacs | | insert-small-copyright | | + | 7 | | | insert-full-copyright | | + | 0 | text-scale-reset | | insert-apache | | + | - | | | org-edit-src-exit | | + | y | undo-tree-redo | | | | + | \ | sr-speedbar-toggle | | mark-defun | | + | h | help-prefix | | | | + | ' | eval-expression | | | | + | n | unpop-to-mark-command | | narrow-to-region | | + | rshift | | | | | + | escape | find-tag | | | | + |-----------------+--------------------------------+---------------------------------+-------------------------------+--------------------------| + +* keybind notes +common keys, which would be better off doing swaps than rebinds: +c-x prefix -> c-s +c-c prefix -> c-d +yank c-y -> c-c +search c-s -> kp-add +kill line c-k -> c-f +undo c-_ -> c-z +set-mark-command c-@ -> kp-enter +quoted-insert c-q -> c-m-q +recenter-top-bottom c-l -> c-m-3 +kill-region c-w -> c-x + +commands to make less accessible +narrow-to-defun/subtree -> M-2 maybe +occur + +command to make more accessible, ... + + +* TESTING / DEVELOPMENT AREA + +(defun comint-send-string (process string) + "Like `process-send-string', but also does extra bookkeeping for Comint mode." + (if process + (with-current-buffer (if (processp process) + (process-buffer process) + (get-buffer process)) + (comint-snapshot-last-prompt)) + (comint-snapshot-last-prompt)) + (process-send-string process string))