emacs: emacs style for remaining SPC keybindings, fix nano-calendar scaling, use emacs for magit
This commit is contained in:
parent
b6aec65c87
commit
7fdcfa458c
@ -808,25 +808,6 @@ Fill region is great, except when you don't need it...
|
||||
(evil-get-auxiliary-keymap joe/evil-space-mode-map state t t)
|
||||
state))
|
||||
|
||||
(evil-define-key 'normal joe/evil-space-mode-map
|
||||
(kbd "SPC fb") 'bookmark-jump
|
||||
(kbd "SPC fr") 'consult-recent-file
|
||||
(kbd "SPC ff") 'project-find-file
|
||||
(kbd "SPC fa") '(lambda () (interactive) (project-find-file t))
|
||||
(kbd "SPC fi") 'joe/edit-init
|
||||
(kbd "SPC bi") 'ibuffer
|
||||
(kbd "SPC bu") 'recentf-open-most-recent-file
|
||||
(kbd "SPC bm") 'joe/toggle-buffer-mode
|
||||
(kbd "SPC br") 'joe/revert-buffer-no-confirm
|
||||
(kbd "SPC ss") 'joe/vterm-here
|
||||
(kbd "SPC sv") 'vterm-other-window
|
||||
(kbd "SPC mm") 'mu4e
|
||||
(kbd "SPC cl") 'consult-line
|
||||
(kbd "SPC cy") 'consult-yank-from-kill-ring
|
||||
(kbd "SPC cg") 'consult-ripgrep
|
||||
(kbd "SPC cF") 'consult-find
|
||||
(kbd "SPC co") 'consult-outline)
|
||||
|
||||
(define-key evil-window-map "u" #'winner-undo)
|
||||
(define-key evil-window-map "U" #'winner-redo)
|
||||
|
||||
@ -1460,11 +1441,12 @@ odd looking ~'(t .t)~ is for specifying a default for all other actions.
|
||||
|
||||
;; (require 'consult-lsp)
|
||||
|
||||
(global-set-key (kbd "C-. C-l") 'consult-line)
|
||||
(global-set-key (kbd "C-. C-i") 'consult-imenu)
|
||||
(global-set-key (kbd "C-. C-t") 'joe/consult-theme)
|
||||
(global-set-key (kbd "C-. C-r") 'consult-recent-file)
|
||||
(global-set-key (kbd "C-. C-y") 'consult-yank-from-kill-ring)
|
||||
(global-set-key (kbd "M-s l") #'consult-line)
|
||||
(global-set-key (kbd "M-s g") #'consult-ripgrep)
|
||||
(global-set-key (kbd "M-s f") #'consult-find)
|
||||
(global-set-key (kbd "M-s y") #'consult-yank-from-kill-ring)
|
||||
(global-set-key (kbd "M-s r") #'consult-recent-file)
|
||||
(global-set-key (kbd "M-s i") #'consult-imenu)
|
||||
|
||||
#+end_src
|
||||
*** Orderless
|
||||
@ -1580,6 +1562,8 @@ odd looking ~'(t .t)~ is for specifying a default for all other actions.
|
||||
(require 'mu4e)
|
||||
(setq mu4e-use-maildirs-extension nil)
|
||||
|
||||
(global-set-key (kbd "C-c m") #'mu4e)
|
||||
|
||||
;; Attach files to a message composition buffer by going into `dired'
|
||||
;; and doing C-c C-m C-a (M-x `gnus-dired-attach').
|
||||
(require 'gnus-dired) ; does not require `gnus'
|
||||
@ -1677,8 +1661,7 @@ odd looking ~'(t .t)~ is for specifying a default for all other actions.
|
||||
(require 'avy)
|
||||
(setq avy-case-fold-search nil)
|
||||
(setq avy-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l ?q ?w ?e ?r ?u ?i ?o ?p ?z ?x ?c ?v ?n ?m))
|
||||
;; (define-key global-map (kbd "C-;") 'avy-goto-char) ;; I use this most frequently
|
||||
(define-key global-map (kbd "M-s") 'avy-goto-char) ;; I use this most frequently
|
||||
(global-set-key (kbd "C-;") #'avy-goto-char) ;; I use this most frequently
|
||||
;; (define-key global-map (kbd "C-'") 'avy-goto-line) ;; Consistent with ivy-avy
|
||||
(define-key global-map (kbd "M-g c") 'avy-goto-char)
|
||||
(define-key global-map (kbd "M-g e") 'avy-goto-word-0) ;; lots of candidates
|
||||
@ -1721,8 +1704,7 @@ odd looking ~'(t .t)~ is for specifying a default for all other actions.
|
||||
(with-current-buffer vterm-buf
|
||||
(setq popper-popup-status 'raised))))
|
||||
|
||||
;; (global-set-key (kbd "C-c t") #'vterm)
|
||||
;; (global-set-key (kbd "C-c T") #'joe/vterm-here)
|
||||
(global-set-key (kbd "C-c t") #'joe/vterm-here)
|
||||
;; (setq explicit-shell-file-name "~/Development/fell/fell")
|
||||
(add-hook 'shell-mode (lambda () (setq-local global-hl-line-mode nil)))
|
||||
(setq shell-kill-buffer-on-exit t)
|
||||
@ -1932,14 +1914,7 @@ These help speed eglot up apparently [[https://www.reddit.com/r/emacs/comments/1
|
||||
(evil-global-set-key 'normal (kbd "M-D") #'lsp-describe-thing-at-point)
|
||||
(evil-global-set-key 'normal (kbd "M-r") #'lsp-rename)
|
||||
(evil-global-set-key 'insert (kbd "M-i") #'lsp-signature-activate)
|
||||
(evil-global-set-key 'normal (kbd "gD") #'xref-find-definitions-other-window)
|
||||
(evil-global-set-key 'normal (kbd "SPC la") #'lsp-execute-code-action)
|
||||
(evil-global-set-key 'normal (kbd "SPC lt") #'lsp-find-type-definition)
|
||||
(evil-global-set-key 'normal (kbd "SPC lr") #'lsp-find-references)
|
||||
(evil-global-set-key 'normal (kbd "SPC ld") #'lsp-find-definition)
|
||||
(evil-global-set-key 'normal (kbd "SPC ls") #'consult-lsp-symbols)
|
||||
(evil-global-set-key 'normal (kbd "SPC lD") #'consult-lsp-diagnostics)
|
||||
(evil-global-set-key 'normal (kbd "SPC lf") #'consult-lsp-file-symbols))
|
||||
(evil-global-set-key 'normal (kbd "gD") #'xref-find-definitions-other-window))
|
||||
|
||||
#+end_src
|
||||
|
||||
@ -2075,22 +2050,23 @@ start it, so go through all existing buffers that match the mode and belong to t
|
||||
(insert-file-contents (expand-file-name "gptel-key" user-emacs-directory))
|
||||
(buffer-string)))
|
||||
|
||||
(setq gptel-model 'claude-sonnet-4-6)
|
||||
(setq gptel-backend (gptel-get-backend "Claude"))
|
||||
|
||||
(setq gptel-prompt-prefix-alist '((markdown-mode . "### ")
|
||||
(org-mode . "* ")
|
||||
(text-mode . "### ")))
|
||||
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a a") #'gptel)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a RET") #'gptel-ask)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a M") #'gptel-mode)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a c") #'gptel-add) ;; Will delete context at point
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a A") #'gptel-abort)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC a <backspace>") #'joe/gptel-context-remove-all)
|
||||
(define-prefix-command 'joe/gptel-map)
|
||||
(global-set-key (kbd "C-c a") 'joe/gptel-map)
|
||||
|
||||
(evil-define-key 'visual joe/evil-space-mode-map (kbd "SPC a r") #'gptel-rewrite)
|
||||
(evil-define-key 'visual joe/evil-space-mode-map (kbd "SPC a RET") #'gptel-ask)
|
||||
(evil-define-key 'visual joe/evil-space-mode-map (kbd "SPC a c") #'gptel-add)
|
||||
(setq gptel-model 'claude-sonnet-4-6)
|
||||
(setq gptel-backend (gptel-get-backend "Claude"))
|
||||
(define-key joe/gptel-map (kbd "a") #'gptel)
|
||||
(define-key joe/gptel-map (kbd "RET") #'gptel-ask)
|
||||
(define-key joe/gptel-map (kbd "m") #'gptel-mode)
|
||||
(define-key joe/gptel-map (kbd "c") #'gptel-add)
|
||||
(define-key joe/gptel-map (kbd "q") #'gptel-abort)
|
||||
(define-key joe/gptel-map (kbd "<backspace>") #'joe/gptel-context-remove-all)
|
||||
(define-key joe/gptel-map (kbd "r") #'gptel-rewrite)
|
||||
#+end_src
|
||||
|
||||
gptel-context-remove-all without confirmation
|
||||
@ -2484,7 +2460,6 @@ Org mode buffers have associated files.
|
||||
(700 900 1200 1700 1900 2030 2300)
|
||||
" ═════ "
|
||||
" ════════════════════ "))
|
||||
(define-key global-map (kbd "C-c a") #'org-agenda)
|
||||
|
||||
(setq org-agenda-custom-commands
|
||||
'(("n" "Agenda and all TODOs"
|
||||
@ -2626,7 +2601,7 @@ with the cursor you hit TAB and you complete the following;
|
||||
(setq org-download-image-dir "./Images/")
|
||||
(setq org-download-heading-lvl nil)
|
||||
#+end_src
|
||||
*** org-transclusion
|
||||
*** COMMENT org-transclusion
|
||||
#+begin_src emacs-lisp
|
||||
(define-key global-map (kbd "C-c t t") #'org-transclusion-mode)
|
||||
(define-key global-map (kbd "C-c t a") #'org-transclusion-add)
|
||||
@ -2649,14 +2624,25 @@ with the cursor you hit TAB and you complete the following;
|
||||
#+end_src
|
||||
** Calendar
|
||||
#+begin_src emacs-lisp
|
||||
(defun joe/fit-text-scale-to-window ()
|
||||
"Scale text so buffer content fills the window width."
|
||||
(let* ((window (get-buffer-window (current-buffer)))
|
||||
(win-width (window-body-width window t)) ; pixels
|
||||
(char-width (frame-char-width))
|
||||
(buffer-cols 90) ; nano-calendar is 90 chars wide
|
||||
(desired-scale (log (/ (float win-width)
|
||||
(* char-width buffer-cols))
|
||||
1.2)))
|
||||
(text-scale-set (floor desired-scale))))
|
||||
|
||||
(defun joe/nano-calendar ()
|
||||
(interactive)
|
||||
(nano-calendar)
|
||||
(with-current-buffer "*nano-calendar*"
|
||||
(text-scale-set 2)
|
||||
(joe/fit-text-scale-to-window)
|
||||
(evil-emacs-state)))
|
||||
|
||||
(evil-global-set-key 'normal (kbd "SPC cc") #'joe/nano-calendar)
|
||||
(global-set-key (kbd "C-c M-c") #'joe/nano-calendar)
|
||||
#+end_src
|
||||
** Magit
|
||||
|
||||
@ -2668,11 +2654,11 @@ The best git porcelain/client I've ever used. Also kill stray magit buffers left
|
||||
(defun joe/magit-kill-buffers (param)
|
||||
"Restore window configuration and kill all Magit buffers."
|
||||
(let ((buffers (magit-mode-get-buffers)))
|
||||
(magit-restore-window-configuration)
|
||||
;; (magit-restore-window-configuration)
|
||||
(mapc #'kill-buffer buffers)))
|
||||
|
||||
(when (boundp 'evil-mode)
|
||||
(add-hook 'with-editor-mode-hook 'evil-insert-state))
|
||||
(add-hook 'with-editor-mode-hook 'evil-emacs-state))
|
||||
|
||||
(setq magit-bury-buffer-function #'joe/magit-kill-buffers)
|
||||
(setq magit-clone-set-remote.pushDefault t)
|
||||
@ -2685,11 +2671,14 @@ The best git porcelain/client I've ever used. Also kill stray magit buffers left
|
||||
(display-buffer buffer '(display-buffer-same-window)))))
|
||||
(magit-status)))
|
||||
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC g h") #'joe/magit-status-here)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC g f") #'magit-find-file)
|
||||
;; (define-key magit-mode-map "h" 'backward-char)
|
||||
;; (define-key magit-mode-map "l" 'backward-char)
|
||||
(define-prefix-command 'joe/magit-map)
|
||||
(global-set-key (kbd "C-x g") 'joe/magit-map)
|
||||
|
||||
(define-key joe/magit-map (kbd "g") #'magit-status)
|
||||
(define-key joe/magit-map (kbd "h") #'joe/magit-status-here)
|
||||
(define-key joe/magit-map (kbd "f") #'magit-find-file)
|
||||
|
||||
(evil-set-initial-state 'magit-status-mode 'emacs)
|
||||
#+end_src
|
||||
|
||||
TODO: We need to create a var for a project based base branch
|
||||
@ -2711,10 +2700,8 @@ TODO: We need to create a var for a project based base branch
|
||||
nil nil "origin/dev")))
|
||||
(magit-log-other (list (concat base "..HEAD")))))
|
||||
|
||||
(with-eval-after-load 'magit
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC g b") #'joe/magit-diff-branch-changes)
|
||||
(evil-define-key 'normal joe/evil-space-mode-map (kbd "SPC g l") #'joe/magit-log-branch-commits))
|
||||
|
||||
(define-key joe/magit-map (kbd "b") #'joe/magit-diff-branch-changes)
|
||||
(define-key joe/magit-map (kbd "l") #'joe/magit-log-branch-commits)
|
||||
#+end_src
|
||||
** Restclient
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user