X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;ds=sidebyside;f=init.el;h=412b68dda5a8a93ec4bb3333f089990ef80ef53b;hb=dd4d9ea3ba1e7aa7a4986de0d5b9e9b2be4f077c;hp=d2411eb0ee0fd6f7f9c8be6f79d0645074ff1dbc;hpb=3f21bda3e1eb4c85c20f8b8996765372a30800f6;p=dot-emacs diff --git a/init.el b/init.el index d2411eb..412b68d 100644 --- a/init.el +++ b/init.el @@ -218,7 +218,7 @@ Fourth argument TYPE is the custom option type." ;; nnfolder-generate-active-file ;; to reset things, when changing mail group. I duno all the proper way, but it works to delete - ;; ~/Mail ~/.newsrc.eld ~/.dribble (or something) + ;; ~/Mail ~/.newsrc.eld ~/.newsrc-dribble ;;;;; mail sources vs select methods background @@ -249,8 +249,6 @@ Fourth argument TYPE is the custom option type." ;;; things that should be at the beginning - ;; todo, evaluating this manually disables debug on error instead of toggling it - (toggle-debug-on-error) ;uncomment to help debug and catch errors ;; packages installed from package manager: i pretty much prioritize repos this way: gnu, then melpa, then marmalade. @@ -311,6 +309,7 @@ Fourth argument TYPE is the custom option type." + ;;; abreviations ;; turn on abbrev mode globally (setq-default abbrev-mode t) @@ -955,21 +954,14 @@ and Ian Kelling as the name" (defun fsf-mu4e () (interactive) - (require 'mu4e) - (unless (equal mu4e-maildir "/nocow/user/fsfmd") (mu-exit-wait)) + (my-mu4e-commmon) (setq - ;; fsf monitor is smaller - mu4e-headers-visible-lines 15 - mu4e-maildir "/nocow/user/fsfmd" - mu4e-refile-folder "/Spam" - mu4e-index-lazy-check nil - mu4e-get-mail-command "true" user-mail-address "iank@fsf.org" ;; WARNING: be careful editing this, there needs to be a space after --, and my editor ;; and git will automatically remove it unless i manually disable it. mail-signature " --- +-- Ian Kelling | Senior Systems Administrator, Free Software Foundation GPG Key: B125 F60B 7B28 7FF6 A2B7 DF8F 170A F0E2 9542 95DF https://fsf.org | https://gnu.org @@ -977,16 +969,7 @@ https://fsf.org | https://gnu.org mu4e-user-mail-address-list '("iank@fsf.org" "iank@gnu.org") - mu4e-maildir-shortcuts - '( ("/INBOX" . ?i) - ("/sysadmin" . ?a) - ("/sec" . ?x) - ("/rtcc" . ?c) - ("/Drafts" . ?d) - ("/Sent" . ?s) - ) ) ;; end setq - (call-process "/a/exe/lnf" nil nil nil "-T" "/nocow/user/.mufsf" (concat (getenv "HOME") "/.mu")) (add-hook 'mu4e-compose-pre-hook 'my-mu4e-to-fsf) (remove-hook 'mu4e-compose-pre-hook 'my-mu4e-to) (mu4e)) ;; end defun fsf-mu4e @@ -1177,10 +1160,10 @@ https://fsf.org | https://gnu.org (add-hook 'haskell-mode-hook (lambda () (define-key haskell-mode-map (kbd "C-(") - (lambda () (interactive) - (basic-save-buffer) - (haskell-compile) - (run-with-timer .3 nil 'repeat-shell))))) + (lambda () (interactive) + (basic-save-buffer) + (haskell-compile) + (run-with-timer .3 nil 'repeat-shell))))) (add-hook 'haskell-cabal-mode-hook (lambda () (define-key haskell-cabal-mode-map (kbd "C-(") 'haskell-compile))) @@ -1850,6 +1833,7 @@ Go to the next directory based on where the cursor is." (dot-mode . "") (yas-global-mode . "") (yas-minor-mode . "") + (undo-tree-mode . "") (volatile-highlights-mode . "") (highlight-symbol-mode . "") ;; Major modes @@ -2334,7 +2318,11 @@ indent yanked text (with prefix arg don't indent)." ;; consider invisible frames to be unseen. seems like an obvious default erc-track-visibility 'visible ;; switch to buffer where i've been mentioned, etc instead of oldest - erc-track-switch-direction 'importance) + erc-track-switch-direction 'importance + ;; defaults minus fill + erc-modules + '(autojoin button completion irccontrols list match menu move-to-prompt netsplit networks noncommands readonly ring stamp track) + ) ;;; named commands @@ -2360,6 +2348,7 @@ indent yanked text (with prefix arg don't indent)." (dolist (r `( (?i (file . ,"~/.emacs.d/init.el")) + (?w (file . ,"/a/work.org")) (?t (file . ,"/a/t.org")) (?x (file . ,"/a/x.txt")) )) @@ -2369,9 +2358,34 @@ indent yanked text (with prefix arg don't indent)." undo-limit 500000000 ; undo history limit undo-strong-limit 600000000) ; undo history limit plus some extra + +;;; undo tree mode + + ;; note, this has weird errors when it was before recentf-mode + + ;; more resilient undo-tree-history if we have its location set up front. + (setq undo-tree-history-directory-alist '(("." . "~/.undo-tree-history"))) + + + ;; todo, send patch undo-tree-visualize should scroll with the scroll key, instead of just pgup pgdn (aka next/prior) + (global-undo-tree-mode) + ;; disabled due to bug, something like unknown entry in undo tree canary + ;; (setq undo-tree-auto-save-history t) + (setq undo-outer-limit 100000000 ; per undo command + undo-limit 500000000 ; undo history limit + undo-strong-limit 600000000) ; undo history limit plus some extra + ;; Undo in region just happens accidentally, and throws me off + (setq undo-tree-enable-undo-in-region nil) + ;;; keybinds ;;;; misc + + (define-prefix-command 'terminal-key-map) + (global-set-key (kbd "\e[") 'terminal-key-map) + + + (global-set-key (kbd "C-x C-b") 'ibuffer) @@ -2803,8 +2817,10 @@ modes like org-mode which have their own yank function." (global-set-key (kbd "C-M-q") 'quoted-insert) -;;;;; C-w --- - ;; in terminal, it's ctrl-backspace, duplicate keybind. +;;;;; C-w + + (global-set-key (kbd "C-w") 'counsel-find-file) + ;;;;; M-w org-clock-in (global-set-key (kbd "M-w") 'org-clock-in) @@ -2981,7 +2997,7 @@ modes like org-mode which have their own yank function." ;;;;; C-z - undo-only - (global-set-key (kbd "C-z") 'undo-only) + (global-set-key (kbd "C-z") 'undo-tree-undo) ;;;;; C-x - kill-region @@ -3130,6 +3146,9 @@ modes like org-mode which have their own yank function." ;;;;; C-backspace - backward-kill-symbol + (define-key terminal-key-map (kbd "4b") 'backward-kill-symbol) ;c-backspace in my konsole + + ;; c-w is duplicate in terminal (global-set-key (kbd "") 'backward-kill-symbol) (add-hook 'comint-mode-hook (lambda () @@ -3200,7 +3219,8 @@ modes like org-mode which have their own yank function." (delete-windows-on "*Help*") )) -;;;;; C-i - ----- +;;;;; C-i - + (define-key input-decode-map [?\C-i] [C-i]) ;;;;; C-M-i - query-replace-regexp (global-set-key (kbd "C-M-i") 'query-replace-regexp) @@ -3291,13 +3311,16 @@ modes like org-mode which have their own yank function." (move-beginning-of-line 2)) (global-set-key (kbd "C-M-;") 'comment-current-line-dwim) +;;;;; C-m + (define-key input-decode-map [?\C-m] [C-m]) ;;;;; C-M-m - recursive grep (define-key global-map (kbd "C-M-m") 'rgrep) -;;;;; C-, - counsel-find-file +;;;;; C-, - --- + ;; not recognized by terminal, can't get konsole keydef file to recognize comma, + ;; todo: dig into konsole sources, or try newer version than t8 - (global-set-key (kbd "C-,") 'counsel-find-file) (add-hook 'flyspell-mode-hook (lambda () (define-key flyspell-mode-map (kbd "C-,") nil))) @@ -3330,6 +3353,7 @@ modes like org-mode which have their own yank function." (add-hook 'flyspell-mode-hook (lambda () (define-key flyspell-mode-map (kbd "C-.") nil))) (define-key dot-mode-map (kbd "C-.") nil) + (define-key terminal-key-map (kbd "4c") 'recentf-ido-find-file) (global-set-key (kbd "C-.") 'recentf-ido-find-file) (add-hook 'php-mode-hook (lambda () (define-key php-mode-map (kbd "C-.") nil))) @@ -3345,6 +3369,7 @@ modes like org-mode which have their own yank function." (interactive) (join-line '(4))) (global-set-key (kbd "C-/") 'vim-style-join-line) + (define-key undo-tree-map (kbd "C-/") nil) ;;;;; C-M-/ - copy-buffer-file-name @@ -3431,7 +3456,7 @@ modes like org-mode which have their own yank function." ;;;;; C-S-down-arrow - m-x for major mode -;; todo, update this for ivy + ;; todo, update this for ivy (global-set-key (kbd "") 'smex-major-mode-commands) ;;;;; C-lbracket - ---- @@ -3465,15 +3490,6 @@ modes like org-mode which have their own yank function." (global-set-key (kbd "") 'plain-newline) -;;;;; C-M-return - newline-anywhere-previous - (defun newline-anywhere-previous () - "Add a newline from anywhere in the line." - (interactive) - (forward-line -1) - (end-of-line) - (newline-and-indent)) - (global-set-key (kbd "") 'newline-anywhere-previous) - ;;;;; C-space - org-edit-special ;; commented due to new keyboard needing ctrl-space for mark @@ -3551,9 +3567,9 @@ modes like org-mode which have their own yank function." ;;;;; C-home - start of buffer ;;;;; C-end - end of buffer ;;;; right secondary -;;;;; C-6 - save-buffers-kill-emacs +;;;;; C-^ - save-buffers-kill-emacs - (global-set-key (kbd "C-6") 'save-buffers-kill-emacs) + (global-set-key (kbd "C-^") 'save-buffers-kill-emacs) ;;;;; C-M-6 - insert-small-copyright @@ -3561,7 +3577,7 @@ modes like org-mode which have their own yank function." (interactive) (beginning-of-line) (let ((beg (point))) - (insert "Copyright (C) 2017 Ian Kelling\nThis program is under GPL v. 3 or later, see ") + (insert "Copyright (C) 2019 Ian Kelling\nThis program is under GPL v. 3 or later, see ") (comment-region beg (point)))) (global-set-key (kbd "C-M-6") 'insert-small-copyright) @@ -3572,7 +3588,7 @@ modes like org-mode which have their own yank function." (interactive) (beginning-of-line) (let ((beg (point))) - (insert "Copyright (C) 2017 Ian Kelling\n") + (insert "Copyright (C) 2019 Ian Kelling\n") (insert "\n") (insert "This program is free software: you can redistribute it and/or modify\n") (insert "it under the terms of the GNU General Public License as published by\n") @@ -3624,7 +3640,7 @@ modes like org-mode which have their own yank function." ;;;;; C-M-- - org-edit-src-exit ;;;;; C-y - undo - (global-set-key (kbd "C-y") 'undo) + (global-set-key (kbd "C-y") 'undo-tree-redo) (add-hook 'org-mode-hook (lambda () (define-key org-mode-map (kbd "C-y") nil))) @@ -3665,7 +3681,9 @@ modes like org-mode which have their own yank function." ;;;;; C-escape - find-tag (global-set-key (kbd "") 'find-tag) - ) ;; end let + +;;; end let from start of file + ) ;; Local Variables: ;; eval: (outline-minor-mode)