General refactor & cleanup + update TODO
This commit is contained in:
parent
8648ea0314
commit
b0bb013601
7 changed files with 91 additions and 78 deletions
4
TODO.org
4
TODO.org
|
@ -89,7 +89,7 @@
|
||||||
+ [ ] twitter
|
+ [ ] twitter
|
||||||
+ [ ] present
|
+ [ ] present
|
||||||
|
|
||||||
** 2.0.3 [23/46]
|
** 2.0.3 [25/48]
|
||||||
+ [ ] Test ~package-autoremove~
|
+ [ ] Test ~package-autoremove~
|
||||||
+ [ ] tools/upload: add ~+upload/open-remote-file~ command to open current file
|
+ [ ] tools/upload: add ~+upload/open-remote-file~ command to open current file
|
||||||
on the remote (with TRAMP)
|
on the remote (with TRAMP)
|
||||||
|
@ -119,6 +119,8 @@
|
||||||
+ [ ] syntax highlighter for ~+regex-mode~ (plus make it a major mode)
|
+ [ ] syntax highlighter for ~+regex-mode~ (plus make it a major mode)
|
||||||
+ [ ] README.org
|
+ [ ] README.org
|
||||||
+ [ ] Use ~make-process~ daemon approach rather than ~call-process~
|
+ [ ] Use ~make-process~ daemon approach rather than ~call-process~
|
||||||
|
+ [X] feature/evil: make ~d~ operator invoke ~wgrep-mark-deletion~ in wgrep buffers
|
||||||
|
+ [X] feature/version-control: improve magit+shackle integration; magit links open separate popups. They should open within the same popup.
|
||||||
+ [X] ui/doom: fix nav-flash on evil-multiedit or in eshell/term buffers
|
+ [X] ui/doom: fix nav-flash on evil-multiedit or in eshell/term buffers
|
||||||
+ [X] core-os: don't use GTK tooltips (ugly!)
|
+ [X] core-os: don't use GTK tooltips (ugly!)
|
||||||
+ [X] ui/doom-modeline: reduce excess whitespace on right of flycheck segment
|
+ [X] ui/doom-modeline: reduce excess whitespace on right of flycheck segment
|
||||||
|
|
|
@ -442,7 +442,6 @@ the command buffer."
|
||||||
;;
|
;;
|
||||||
;; By handing neotree over to shackle, which is better integrated into the
|
;; By handing neotree over to shackle, which is better integrated into the
|
||||||
;; rest of my config (and persp-mode), this is no longer a problem.
|
;; rest of my config (and persp-mode), this is no longer a problem.
|
||||||
(setq neo-display-action '(+evil-neotree-display-fn))
|
|
||||||
(set! :popup " *NeoTree*" :align 'left :size 25)
|
(set! :popup " *NeoTree*" :align 'left :size 25)
|
||||||
|
|
||||||
(defun +evil-neotree-display-fn (buf _alist)
|
(defun +evil-neotree-display-fn (buf _alist)
|
||||||
|
@ -450,6 +449,7 @@ the command buffer."
|
||||||
(let ((win (doom-popup-buffer buf)))
|
(let ((win (doom-popup-buffer buf)))
|
||||||
(setq neo-global--buffer (window-buffer win)
|
(setq neo-global--buffer (window-buffer win)
|
||||||
neo-global--window win)))
|
neo-global--window win)))
|
||||||
|
(setq neo-display-action '(+evil-neotree-display-fn))
|
||||||
|
|
||||||
(defun +evil|neotree-fix-popup ()
|
(defun +evil|neotree-fix-popup ()
|
||||||
"Repair neotree state whenever its popup state is restored. This ensures
|
"Repair neotree state whenever its popup state is restored. This ensures
|
||||||
|
|
|
@ -136,7 +136,11 @@ across windows."
|
||||||
(advice-add #'evil-ex-replace-special-filenames
|
(advice-add #'evil-ex-replace-special-filenames
|
||||||
:override #'+evil*ex-replace-special-filenames)
|
:override #'+evil*ex-replace-special-filenames)
|
||||||
|
|
||||||
;; Add extra argument types that highlight matches in the current buffer.
|
;; By default :g[lobal] doesn't highlight matches in the current buffer. I've
|
||||||
|
;; got to write my own argument type and interactive code to get it to do so.
|
||||||
|
;; While I'm at it, I use this to write an :al[ign] command as a wrapper
|
||||||
|
;; around `align-regexp'.
|
||||||
|
|
||||||
;; TODO Must be simpler way to do this
|
;; TODO Must be simpler way to do this
|
||||||
(evil-ex-define-argument-type buffer-match :runner +evil-ex-buffer-match)
|
(evil-ex-define-argument-type buffer-match :runner +evil-ex-buffer-match)
|
||||||
(evil-ex-define-argument-type global-match :runner +evil-ex-global-match)
|
(evil-ex-define-argument-type global-match :runner +evil-ex-global-match)
|
||||||
|
@ -163,6 +167,8 @@ across windows."
|
||||||
(evil-transform-vim-style-regexp pattern)))
|
(evil-transform-vim-style-regexp pattern)))
|
||||||
1 1))
|
1 1))
|
||||||
|
|
||||||
|
;; Must be aggressively defined here, otherwise the above highlighting won't
|
||||||
|
;; work on first invocation
|
||||||
(evil-ex-define-cmd "g[lobal]" #'+evil:global)
|
(evil-ex-define-cmd "g[lobal]" #'+evil:global)
|
||||||
(evil-ex-define-cmd "al[ign]" #'+evil:align))
|
(evil-ex-define-cmd "al[ign]" #'+evil:align))
|
||||||
|
|
||||||
|
|
|
@ -42,14 +42,15 @@
|
||||||
:n "]l" #'markdown-previous-link
|
:n "]l" #'markdown-previous-link
|
||||||
:n "gf" #'markdown-follow-thing-at-point
|
:n "gf" #'markdown-follow-thing-at-point
|
||||||
:i "M--" #'markdown-insert-hr
|
:i "M--" #'markdown-insert-hr
|
||||||
(:localleader
|
|
||||||
:nv "o" #'markdown-open
|
:localleader
|
||||||
:nv "b" #'markdown-preview
|
:nv "o" #'markdown-open
|
||||||
(:prefix "i"
|
:nv "b" #'markdown-preview
|
||||||
:nv "t" #'markdown-toc-generate-toc
|
(:prefix "i"
|
||||||
:nv "i" #'markdown-insert-image
|
:nv "t" #'markdown-toc-generate-toc
|
||||||
:nv "l" #'markdown-insert-link
|
:nv "i" #'markdown-insert-image
|
||||||
:nv "L" #'markdown-insert-reference-link-dwim))))
|
:nv "l" #'markdown-insert-link
|
||||||
|
:nv "L" #'markdown-insert-reference-link-dwim)))
|
||||||
|
|
||||||
|
|
||||||
(def-package! markdown-toc
|
(def-package! markdown-toc
|
||||||
|
|
|
@ -54,10 +54,10 @@
|
||||||
"M-9" (λ! (+workspace/switch-to 8))
|
"M-9" (λ! (+workspace/switch-to 8))
|
||||||
"M-0" #'+workspace/switch-to-last
|
"M-0" #'+workspace/switch-to-last
|
||||||
;; Basic escape keys for emacs mode
|
;; Basic escape keys for emacs mode
|
||||||
:e "C-h" #'evil-window-left
|
"C-h" #'evil-window-left
|
||||||
:e "C-j" #'evil-window-down
|
"C-j" #'evil-window-down
|
||||||
:e "C-k" #'evil-window-up
|
"C-k" #'evil-window-up
|
||||||
:e "C-l" #'evil-window-right
|
"C-l" #'evil-window-right
|
||||||
|
|
||||||
"M-r" #'+eval/buffer
|
"M-r" #'+eval/buffer
|
||||||
"M-S-r" #'+eval/region-and-replace
|
"M-S-r" #'+eval/region-and-replace
|
||||||
|
|
|
@ -1,88 +1,92 @@
|
||||||
(defalias 'ex! 'evil-ex-define-cmd)
|
(defalias 'ex! 'evil-ex-define-cmd)
|
||||||
|
|
||||||
|
;;; Commands defined elsewhere
|
||||||
|
;;(ex! "al[ign]" #'+evil:align)
|
||||||
|
;;(ex! "g[lobal]" #'+evil:global)
|
||||||
|
|
||||||
;;; Custom commands
|
;;; Custom commands
|
||||||
;; Emacs utilities
|
;; Emacs utilities
|
||||||
(ex! "bc[omp]" '+hlissner:byte-compile)
|
(ex! "bc[omp]" #'+hlissner:byte-compile)
|
||||||
(ex! "clog" 'global-command-log-mode)
|
(ex! "clog" #'global-command-log-mode)
|
||||||
(ex! "minor" 'describe-minor-mode) ; list minor modes
|
(ex! "minor" #'describe-minor-mode) ; list minor modes
|
||||||
(ex! "re[load]" 'doom/reload)
|
(ex! "re[load]" #'doom/reload)
|
||||||
(ex! "re[load]au" 'doom/reload-autoloads)
|
(ex! "re[load]au" #'doom/reload-autoloads)
|
||||||
|
|
||||||
;; Editing
|
;; Editing
|
||||||
(ex! "@" '+evil:macro-on-all-lines) ; TODO Test me
|
(ex! "@" #'+evil:macro-on-all-lines) ; TODO Test me
|
||||||
(ex! "enhtml" '+web:encode-html-entities)
|
(ex! "enhtml" #'+web:encode-html-entities)
|
||||||
(ex! "dehtml" '+web:decode-html-entities)
|
(ex! "dehtml" #'+web:decode-html-entities)
|
||||||
(ex! "ie[dit]" 'evil-multiedit-ex-match)
|
(ex! "ie[dit]" #'evil-multiedit-ex-match)
|
||||||
(ex! "na[rrow]" '+evil:narrow-buffer)
|
(ex! "na[rrow]" #'+evil:narrow-buffer)
|
||||||
(ex! "retab" '+evil:retab)
|
(ex! "retab" #'+evil:retab)
|
||||||
|
|
||||||
;; External resources
|
;; External resources
|
||||||
;; TODO (ex! "db" 'doom:db)
|
;; TODO (ex! "db" #'doom:db)
|
||||||
;; TODO (ex! "dbu[se]" 'doom:db-select)
|
;; TODO (ex! "dbu[se]" #'doom:db-select)
|
||||||
;; TODO (ex! "go[ogle]" 'doom:google-search)
|
;; TODO (ex! "go[ogle]" #'doom:google-search)
|
||||||
(ex! "http" 'httpd-start) ; start http server
|
(ex! "http" #'httpd-start) ; start http server
|
||||||
(ex! "repl" '+eval:repl) ; invoke or send to repl
|
(ex! "repl" #'+eval:repl) ; invoke or send to repl
|
||||||
;; TODO (ex! "rx" 'doom:regex) ; open re-builder
|
;; TODO (ex! "rx" 'doom:regex) ; open re-builder
|
||||||
(ex! "sh[ell]" '+eshell:run)
|
(ex! "sh[ell]" #'+eshell:run)
|
||||||
(ex! "t[mux]" '+tmux:run) ; send to tmux
|
(ex! "t[mux]" #'+tmux:run) ; send to tmux
|
||||||
(ex! "tcd" '+tmux:cd-here) ; cd to default-directory in tmux
|
(ex! "tcd" #'+tmux:cd-here) ; cd to default-directory in tmux
|
||||||
(ex! "x" '+doom:scratch-buffer)
|
(ex! "x" #'+doom:scratch-buffer)
|
||||||
|
|
||||||
;; GIT
|
;; GIT
|
||||||
(ex! "gist" '+gist:send) ; send current buffer/region to gist
|
(ex! "gist" #'+gist:send) ; send current buffer/region to gist
|
||||||
(ex! "gistl" '+gist:list) ; list gists by user
|
(ex! "gistl" #'+gist:list) ; list gists by user
|
||||||
(ex! "gbrowse" '+vcs/git-browse) ; show file in github/gitlab
|
(ex! "gbrowse" #'+vcs/git-browse) ; show file in github/gitlab
|
||||||
(ex! "gissues" '+vcs/git-browse-issues) ; show github issues
|
(ex! "gissues" #'+vcs/git-browse-issues) ; show github issues
|
||||||
(ex! "git" 'magit-status) ; open magit status window
|
(ex! "git" #'magit-status) ; open magit status window
|
||||||
(ex! "gstage" 'magit-stage)
|
(ex! "gstage" #'magit-stage)
|
||||||
(ex! "gunstage" 'magit-unstage)
|
(ex! "gunstage" #'magit-unstage)
|
||||||
;; TODO :gblame
|
;; TODO :gblame
|
||||||
;; TODO :grevert
|
;; TODO :grevert
|
||||||
;; TODO :gblame
|
;; TODO :gblame
|
||||||
|
|
||||||
;; Dealing with buffers
|
;; Dealing with buffers
|
||||||
(ex! "clean[up]" 'doom/cleanup-buffers)
|
(ex! "clean[up]" #'doom/cleanup-buffers)
|
||||||
(ex! "k[ill]" 'doom/kill-this-buffer)
|
(ex! "k[ill]" #'doom/kill-this-buffer)
|
||||||
(ex! "k[ill]all" '+hlissner:kill-all-buffers)
|
(ex! "k[ill]all" #'+hlissner:kill-all-buffers)
|
||||||
(ex! "k[ill]m" '+hlissner:kill-matching-buffers)
|
(ex! "k[ill]m" #'+hlissner:kill-matching-buffers)
|
||||||
(ex! "k[ill]o" 'doom/kill-other-buffers)
|
(ex! "k[ill]o" #'doom/kill-other-buffers)
|
||||||
(ex! "l[ast]" 'doom/popup-restore)
|
(ex! "l[ast]" #'doom/popup-restore)
|
||||||
(ex! "m[sg]" 'view-echo-area-messages)
|
(ex! "m[sg]" #'view-echo-area-messages)
|
||||||
(ex! "pop[up]" 'doom/popup) ; open current buffer in popup
|
(ex! "pop[up]" #'doom/popup) ; open current buffer in popup
|
||||||
|
|
||||||
;; Project navigation
|
;; Project navigation
|
||||||
(ex! "a" 'projectile-find-other-file)
|
(ex! "a" #'projectile-find-other-file)
|
||||||
(ex! "ag" '+ivy:ag)
|
(ex! "ag" #'+ivy:ag)
|
||||||
(ex! "agc[wd]" '+ivy:ag-cwd)
|
(ex! "agc[wd]" #'+ivy:ag-cwd)
|
||||||
(ex! "rg" '+ivy:rg)
|
(ex! "rg" #'+ivy:rg)
|
||||||
(ex! "rgc[wd]" '+ivy:rg-cwd)
|
(ex! "rgc[wd]" #'+ivy:rg-cwd)
|
||||||
(ex! "cd" '+hlissner:cd)
|
(ex! "cd" #'+hlissner:cd)
|
||||||
(ex! "sw[iper]" '+ivy:swiper) ; in-file search
|
(ex! "sw[iper]" #'+ivy:swiper) ; in-file search
|
||||||
|
|
||||||
;; Project tools
|
;; Project tools
|
||||||
(ex! "build" '+eval/build)
|
(ex! "build" #'+eval/build)
|
||||||
(ex! "debug" '+debug/run)
|
(ex! "debug" #'+debug/run)
|
||||||
(ex! "er[rors]" 'flycheck-list-errors)
|
(ex! "er[rors]" #'flycheck-list-errors)
|
||||||
(ex! "todo" '+ivy:todo)
|
(ex! "todo" #'+ivy:todo)
|
||||||
|
|
||||||
;; File operations
|
;; File operations
|
||||||
(ex! "mv" '+evil:move-this-file)
|
(ex! "mv" #'+evil:move-this-file)
|
||||||
(ex! "rm" '+evil:delete-this-file)
|
(ex! "rm" #'+evil:delete-this-file)
|
||||||
|
|
||||||
;; Sessions/tabs
|
;; Sessions/tabs
|
||||||
(ex! "sclear" '+workspace/kill-session)
|
(ex! "sclear" #'+workspace/kill-session)
|
||||||
(ex! "sl[oad]" '+workspace:load-session)
|
(ex! "sl[oad]" #'+workspace:load-session)
|
||||||
(ex! "ss[ave]" '+workspace:save-session)
|
(ex! "ss[ave]" #'+workspace:save-session)
|
||||||
(ex! "tabc[lose]" '+workspace:delete)
|
(ex! "tabc[lose]" #'+workspace:delete)
|
||||||
(ex! "tabclear" 'doom/kill-all-buffers)
|
(ex! "tabclear" #'doom/kill-all-buffers)
|
||||||
(ex! "tabl[ast]" '+workspace/switch-to-last)
|
(ex! "tabl[ast]" #'+workspace/switch-to-last)
|
||||||
(ex! "tabload" '+workspace:load)
|
(ex! "tabload" #'+workspace:load)
|
||||||
(ex! "tabn[ew]" '+workspace:new)
|
(ex! "tabn[ew]" #'+workspace:new)
|
||||||
(ex! "tabn[ext]" '+workspace:switch-next)
|
(ex! "tabn[ext]" #'+workspace:switch-next)
|
||||||
(ex! "tabp[rev]" '+workspace:switch-previous)
|
(ex! "tabp[rev]" #'+workspace:switch-previous)
|
||||||
(ex! "tabr[ename]" '+workspace:rename)
|
(ex! "tabr[ename]" #'+workspace:rename)
|
||||||
(ex! "tabs" '+workspace/display)
|
(ex! "tabs" #'+workspace/display)
|
||||||
(ex! "tabsave" '+workspace:save)
|
(ex! "tabsave" #'+workspace:save)
|
||||||
|
|
||||||
;; Org-mode
|
;; Org-mode
|
||||||
(ex! "org" '+org:capture)
|
(ex! "org" #'+org:capture)
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
(defun ,fn-sym (&rest _)
|
(defun ,fn-sym (&rest _)
|
||||||
(define-key evil-motion-state-map (kbd "SPC") ',next-func)
|
(define-key evil-motion-state-map (kbd "SPC") ',next-func)
|
||||||
(define-key evil-motion-state-map (kbd "S-SPC") ',prev-func))
|
(define-key evil-motion-state-map (kbd "S-SPC") ',prev-func))
|
||||||
(advice-add ',command :before ',fn-sym))))
|
(advice-add #',command :before #',fn-sym))))
|
||||||
|
|
||||||
(after! evil
|
(after! evil
|
||||||
;; n/N
|
;; n/N
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue