diff options
| -rw-r--r-- | config/emacs/init.el | 174 | ||||
| -rw-r--r-- | config/emacs/site-lisp/my-builtins.el | 2 | ||||
| -rw-r--r-- | config/emacs/site-lisp/my-defines.el | 24 | ||||
| -rw-r--r-- | config/emacs/site-lisp/my-packages.el | 29 |
4 files changed, 145 insertions, 84 deletions
diff --git a/config/emacs/init.el b/config/emacs/init.el index 461f7d2..1130f72 100644 --- a/config/emacs/init.el +++ b/config/emacs/init.el @@ -49,13 +49,13 @@ ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. - '(comment-style 'extra-line) + '(comment-style 'indent) '(connection-local-criteria-alist '(((:application eshell :protocol "ssh" :user "tmu" :machine - "cnoserver") + "cnoserver") autogenerated-connection-local-profile/\(:application\ eshell\ :protocol\ \"ssh\"\ :user\ \"tmu\"\ :machine\ \"cnoserver\"\)) ((:application vc-git :protocol "ssh" :user "tmu" :machine - "cnoserver") + "cnoserver") autogenerated-connection-local-profile/\(:application\ vc-git\ :protocol\ \"ssh\"\ :user\ \"tmu\"\ :machine\ \"cnoserver\"\)) ((:application vc-git) vc-git-connection-default-profile) ((:application tramp :protocol "kubernetes") @@ -70,109 +70,110 @@ '(connection-local-profile-alist '((autogenerated-connection-local-profile/\(:application\ eshell\ :protocol\ \"ssh\"\ :user\ \"tmu\"\ :machine\ \"cnoserver\"\) (eshell-path-env-list "/bin" "/usr/bin" "/sbin" "/usr/sbin" - "/usr/local/bin" "/usr/local/sbin")) + "/usr/local/bin" "/usr/local/sbin")) (autogenerated-connection-local-profile/\(:application\ vc-git\ :protocol\ \"ssh\"\ :user\ \"tmu\"\ :machine\ \"cnoserver\"\) (vc-git--program-version . "2.48.1")) (vc-git-connection-default-profile (vc-git--program-version)) (tramp-flatpak-connection-local-default-profile (tramp-remote-path "/app/bin" tramp-default-remote-path "/bin" - "/usr/bin" "/sbin" "/usr/sbin" - "/usr/local/bin" "/usr/local/sbin" - "/local/bin" "/local/freeware/bin" - "/local/gnu/bin" "/usr/freeware/bin" - "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" - "/opt/sbin" "/opt/local/bin")) + "/usr/bin" "/sbin" "/usr/sbin" + "/usr/local/bin" "/usr/local/sbin" + "/local/bin" "/local/freeware/bin" + "/local/gnu/bin" "/usr/freeware/bin" + "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" + "/opt/sbin" "/opt/local/bin")) (tramp-kubernetes-connection-local-default-profile (tramp-config-check . tramp-kubernetes--current-context-data) (tramp-extra-expand-args 97 - (tramp-kubernetes--container - (car tramp-current-connection)) - 104 - (tramp-kubernetes--pod - (car tramp-current-connection)) - 120 - (tramp-kubernetes--context-namespace - (car tramp-current-connection)))) + (tramp-kubernetes--container + (car tramp-current-connection)) + 104 + (tramp-kubernetes--pod + (car tramp-current-connection)) + 120 + (tramp-kubernetes--context-namespace + (car tramp-current-connection)))) (tramp-container-connection-local-default-flatpak-profile (tramp-remote-path "/app/bin" tramp-default-remote-path "/bin" - "/usr/bin" "/sbin" "/usr/sbin" - "/usr/local/bin" "/usr/local/sbin" - "/local/bin" "/local/freeware/bin" - "/local/gnu/bin" "/usr/freeware/bin" - "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" - "/opt/sbin" "/opt/local/bin")) + "/usr/bin" "/sbin" "/usr/sbin" + "/usr/local/bin" "/usr/local/sbin" + "/local/bin" "/local/freeware/bin" + "/local/gnu/bin" "/usr/freeware/bin" + "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" + "/opt/sbin" "/opt/local/bin")) (tramp-connection-local-darwin-ps-profile (tramp-process-attributes-ps-args "-acxww" "-o" - "pid,uid,user,gid,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - "-o" "state=abcde" "-o" - "ppid,pgid,sess,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etime,pcpu,pmem,args") + "pid,uid,user,gid,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" + "-o" "state=abcde" "-o" + "ppid,pgid,sess,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etime,pcpu,pmem,args") (tramp-process-attributes-ps-format (pid . number) - (euid . number) - (user . string) - (egid . number) (comm . 52) - (state . 5) (ppid . number) - (pgrp . number) - (sess . number) - (ttname . string) - (tpgid . number) - (minflt . number) - (majflt . number) - (time . tramp-ps-time) - (pri . number) - (nice . number) - (vsize . number) - (rss . number) - (etime . tramp-ps-time) - (pcpu . number) - (pmem . number) (args))) + (euid . number) + (user . string) + (egid . number) (comm . 52) + (state . 5) (ppid . number) + (pgrp . number) + (sess . number) + (ttname . string) + (tpgid . number) + (minflt . number) + (majflt . number) + (time . tramp-ps-time) + (pri . number) + (nice . number) + (vsize . number) + (rss . number) + (etime . tramp-ps-time) + (pcpu . number) + (pmem . number) (args))) (tramp-connection-local-busybox-ps-profile (tramp-process-attributes-ps-args "-o" - "pid,user,group,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - "-o" "stat=abcde" "-o" - "ppid,pgid,tty,time,nice,etime,args") + "pid,user,group,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" + "-o" "stat=abcde" "-o" + "ppid,pgid,tty,time,nice,etime,args") (tramp-process-attributes-ps-format (pid . number) - (user . string) - (group . string) (comm . 52) - (state . 5) (ppid . number) - (pgrp . number) - (ttname . string) - (time . tramp-ps-time) - (nice . number) - (etime . tramp-ps-time) - (args))) + (user . string) + (group . string) (comm . 52) + (state . 5) (ppid . number) + (pgrp . number) + (ttname . string) + (time . tramp-ps-time) + (nice . number) + (etime . tramp-ps-time) + (args))) (tramp-connection-local-bsd-ps-profile (tramp-process-attributes-ps-args "-acxww" "-o" - "pid,euid,user,egid,egroup,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - "-o" - "state,ppid,pgid,sid,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etimes,pcpu,pmem,args") + "pid,euid,user,egid,egroup,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" + "-o" + "state,ppid,pgid,sid,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etimes,pcpu,pmem,args") (tramp-process-attributes-ps-format (pid . number) - (euid . number) - (user . string) - (egid . number) - (group . string) (comm . 52) - (state . string) - (ppid . number) - (pgrp . number) - (sess . number) - (ttname . string) - (tpgid . number) - (minflt . number) - (majflt . number) - (time . tramp-ps-time) - (pri . number) - (nice . number) - (vsize . number) - (rss . number) - (etime . number) - (pcpu . number) - (pmem . number) (args))) + (euid . number) + (user . string) + (egid . number) + (group . string) (comm . 52) + (state . string) + (ppid . number) + (pgrp . number) + (sess . number) + (ttname . string) + (tpgid . number) + (minflt . number) + (majflt . number) + (time . tramp-ps-time) + (pri . number) + (nice . number) + (vsize . number) + (rss . number) + (etime . number) + (pcpu . number) + (pmem . number) (args))) (tramp-connection-local-default-shell-profile (shell-file-name . "/bin/sh") (shell-command-switch . "-c")) (tramp-connection-local-default-system-profile (path-separator . ":") (null-device . "/dev/null")) (eshell-connection-default-profile (eshell-path-env-list)))) '(custom-safe-themes - '("aee99e2118e960b53016623dc2345d88227d1236d28c6c34858e1d55575cf7c3" + '("d79ca37c254ceca44ddca3c422f35418d402b3a059cdf960f2f5d91c9685cd9a" + "aee99e2118e960b53016623dc2345d88227d1236d28c6c34858e1d55575cf7c3" "6f5e3fd2b4245ffe660da69ea5c13ab392337e94776dfb23cc1d8d0f80e3baa2" "1b8c2fd98bf6777d8b95f8cf98fdaede88feee3419ec3e5008f94b56618ac6ca" "0cc5046b7981609166c28b64f6185fa5f73bcb00d21e037f304794c6aaa1f340" @@ -192,7 +193,14 @@ '(gdb-non-stop-setting nil) '(helm-minibuffer-history-key "M-p") '(menu-bar-mode nil) - '(package-selected-packages nil) + '(package-selected-packages + '(avy balanced-windows bash-completion benchmark-init cape + clang-format corfu diff-hl eat ednc eglot-tempel eldoc-box + embark esh-help flycheck fold-this free-keys haskell-mode + hl-todo ibuffer-vc marginalia merlin minions mmm-mode + ocp-indent olivetti opam-switch-mode orderless pass pinentry + projectile pyvenv racket-mode rust-mode sdcv + tempel-collection tuareg vertico visible-mark winum)) '(pyim-assistant-scheme 'cangjie) '(safe-local-variable-values '((LEXICAL-binding . t))) '(scroll-bar-mode nil) @@ -201,7 +209,7 @@ '(transient-mark-mode nil) '(whitespace-style '(face trailing tabs lines-tail missing-newline-at-eof indentation - space-after-tab space-before-tab tab-mark) t)) + space-after-tab space-before-tab tab-mark) t)) (custom-set-faces ;; custom-set-faces was added by Custom. diff --git a/config/emacs/site-lisp/my-builtins.el b/config/emacs/site-lisp/my-builtins.el index 94e82c1..bc29beb 100644 --- a/config/emacs/site-lisp/my-builtins.el +++ b/config/emacs/site-lisp/my-builtins.el @@ -30,6 +30,7 @@ (use-package ibuffer ; give a nice list of buffers with extra info :commands (ibuffer) :custom + (ibuffer-expert t) (ibuffer-formats '((mark modified read-only " " (name 50 50 :left :elide) ; was originally 18 @@ -182,6 +183,7 @@ (progn ; vc and related binds (setq vc-follow-symlinks t) + (setq vc-dir-allow-mass-mark-changes t) (vc-auto-revert-mode 1) (add-hook 'prog-mode-hook 'smerge-mode)) diff --git a/config/emacs/site-lisp/my-defines.el b/config/emacs/site-lisp/my-defines.el index 425a23e..5931149 100644 --- a/config/emacs/site-lisp/my-defines.el +++ b/config/emacs/site-lisp/my-defines.el @@ -148,6 +148,15 @@ If no such window exists, switch to BUFFER in the current window." (select-window win) (switch-to-buffer buffer)))) +(defun my/new-text () + "Produce a new text buffer to write a scrap of text in." + (interactive) + (let ((buf (generate-new-buffer "text"))) + (switch-to-buffer buf) + (text-mode) + (olivetti-mode 1) + buf)) + (defun my/shorten-path (path) "Shorten string PATH. Initialize all but the last path component." (let* ((components (split-string path "/")) @@ -282,6 +291,18 @@ With ARG, don't save the current layout." (setq my/layout-pair (cons right left))) (t (message "Quick layout swap only works with same frame!"))))) +(defun my/unfill-paragraph () + "Inverse of `fill-paragraph'." + (interactive) + (let ((fill-column most-positive-fixnum)) + (call-interactively 'fill-paragraph))) + +(defun my/unfill-region (start end) + "Inverse of `fill-region'." + (interactive "r") + (let ((fill-column most-positive-fixnum)) + (fill-region start end))) + (defun my/display-lines-advice (func &rest r) "Around advice that temporarily shows line numbers." (let ((want-quit inhibit-quit)) @@ -347,7 +368,8 @@ With ARG, don't save the current layout." (keymap-set my/keys-mode-map "M-N" 'man) (keymap-set my/keys-mode-map "M-*" 'my/shell-at-root) (keymap-set my/keys-mode-map "M-S" 'surround-prefix) - (keymap-set my/keys-mode-map "M-J" 'my/activate-mark) + (keymap-set my/keys-mode-map "M-H" 'my/activate-mark) + (keymap-set my/keys-mode-map "M-J" 'delete-indentation) (my/keys-mode 1)) diff --git a/config/emacs/site-lisp/my-packages.el b/config/emacs/site-lisp/my-packages.el index c625252..65572b2 100644 --- a/config/emacs/site-lisp/my-packages.el +++ b/config/emacs/site-lisp/my-packages.el @@ -302,6 +302,35 @@ (use-package rust-mode ; rust lang syntax ) +(use-package mmm-mode + :after haskell-mode + :custom + (mmm-submode-decoration-level 0) + :hook + ('haskell-literate-mode . 'my/mmm-mode) + (haskell-literate-mode . 'mmm-ify-by-class) + :init + (defun my/mmm-mode () + ;; go into mmm minor mode when class is given + (make-local-variable 'mmm-global-mode) + (setq mmm-global-mode 'true)) + (mmm-add-classes + '((literate-haskell-bird + :submode text-mode + :front "^[^>]" + :include-front true + :back "^>\\|$" + ) + (literate-haskell-latex + :submode literate-haskell-mode + :front "^\\\\begin{code}" + :front-offset (end-of-line 1) + :back "^\\\\end{code}" + :include-back nil + :back-offset (beginning-of-line -1) + )))) + + (use-package haskell-mode ; haskell + cabal integrations :custom (haskell-tags-on-save t) |
