feat(core): use general.el for keybind definitions nearly everywhere

Primarily this replaces :bind with :general in all use-package calls.
This commit is contained in:
2022-03-14 20:58:06 +00:00
parent 3fc0d2d77d
commit a8618938bf
91 changed files with 665 additions and 632 deletions

View File

@@ -9,12 +9,13 @@
(require 'siren-flyspell)
(use-package auto-complete
:bind (:map ac-completing-map
("RET" . ac-complete)
("C-m" . ac-complete)
("C-s" . ac-isearch)
("C-n" . ac-next)
("C-p" . ac-previous))
:general
(:keymaps 'ac-completing-map
"RET" 'ac-complete
"C-m" 'ac-complete
"C-s" 'ac-isearch
"C-n" 'ac-next
"C-p" 'ac-previous)
:custom
(ac-auto-show-menu 0.2)

View File

@@ -7,14 +7,14 @@
;;; Code:
(use-package company
:bind
:general
;; Enable indent and complete at point functionality by pressing tab.
("TAB" . company-indent-or-complete-common)
("TAB" 'company-indent-or-complete-common)
;; Scroll through company suggestions with C-n and C-p.
(:map company-active-map
("C-n" . company-select-next)
("C-p" . company-select-previous)
("<tab>" . company-complete-selection))
(:keymaps 'company-active-map
"C-n" 'company-select-next
"C-p" 'company-select-previous
"<tab>" 'company-complete-selection)
:custom
(company-begin-commands '(self-insert-command))

View File

@@ -6,55 +6,57 @@
;;; Code:
;; Enable alternative to M-x.
(global-set-key (kbd "C-x C-m") 'execute-extended-command)
(general-define-key
;; Enable alternative to M-x.
"C-x C-m" 'execute-extended-command
;; Enable dabbrev-expand via custom keybinding.
(global-set-key (kbd "C-x M-/") 'dabbrev-expand)
;; Enable dabbrev-expand via custom keybinding.
"C-x M-/" 'dabbrev-expand
;; Easier version of "C-x k" to kill buffer
(global-set-key (kbd "C-x C-k") 'kill-buffer)
;; Easier version of "C-x k" to kill buffer
"C-x C-k" 'kill-buffer
;; Evaluate buffer
(global-set-key (kbd "C-c C-e") 'eval-buffer)
;; Evaluate buffer
"C-c C-e" 'eval-buffer
;; Window switching
(global-set-key (kbd "C-x i") 'siren-other-window-reverse)
(global-set-key (kbd "C-x C-o") 'other-window)
(global-set-key (kbd "C-x C-i") 'siren-other-window-reverse)
;; Window switching
"C-x i" 'siren-other-window-reverse
"C-x C-o" 'other-window
"C-x C-i" 'siren-other-window-reverse
;; Window management
(global-set-key (kbd "C-x C-SPC") 'balance-windows)
(global-set-key (kbd "C-x SPC") 'balance-windows)
;; Window management
"C-x C-SPC" 'balance-windows
"C-x SPC" 'balance-windows
;; Kill-Ring related
(global-set-key (kbd "M-Y") 'siren-yank-pop-forwards)
;; Kill-Ring related
"M-Y" 'siren-yank-pop-forwards
;; Align to equal signs
(global-set-key (kbd "C-x a =") 'siren-align-region-to-equals)
(global-set-key (kbd "C-x a {") 'siren-align-region-to-opening-brace)
;; Align to equal signs
"C-x a =" 'siren-align-region-to-equals
"C-x a {" 'siren-align-region-to-opening-brace
;; align-regexp
(global-set-key (kbd "C-c a") 'align-regexp)
;; align-regexp
"C-c a" 'align-regexp
;; Toggle auto-fill-mode.
(global-set-key (kbd "C-c q") 'auto-fill-mode)
;; Toggle auto-fill-mode.
"C-c q" 'auto-fill-mode
;; iBuffer
(global-set-key (kbd "C-x C-b") 'ibuffer)
;; iBuffer
"C-x C-b" 'ibuffer
;; Rename current file and buffer
(global-set-key (kbd "C-c r") 'siren-rename-file-and-buffer)
;; Rename current file and buffer
"C-c r" 'siren-rename-file-and-buffer)
;; Mac OS X specific keybindings
(when (eq system-type 'darwin)
;; Move to beginning/end of buffer
(global-set-key (kbd "s-<up>") 'beginning-of-buffer)
(global-set-key (kbd "s-<down>") 'end-of-buffer)
(general-define-key
;; Move to beginning/end of buffer
"s-<up>" 'beginning-of-buffer
"s-<down>" 'end-of-buffer
;; Move to beginning/end of line
(global-set-key (kbd "s-<left>") 'beginning-of-line)
(global-set-key (kbd "s-<right>") 'end-of-line))
;; Move to beginning/end of line
"s-<left>" 'beginning-of-line
"s-<right>" 'end-of-line))
(provide 'siren-global-keybindings)
;;; siren-global-keybindings.el ends here

View File

@@ -12,14 +12,15 @@
(use-package dap-mode
:defer t
:bind (:map siren-debug-map
("d" . dap-debug)
("t" . dap-breakpoint-toggle)
("c" . dap-breakpoint-condition)
("h" . dap-breakpoint-hit-condition)
("m" . dap-breakpoint-log-message)
("l" . dap-ui-breakpoints-list)
("b" . dap-ui-breakpoints))
:general
(:keymaps 'siren-debug-map
"d" 'dap-debug
"t" 'dap-breakpoint-toggle
"c" 'dap-breakpoint-condition
"h" 'dap-breakpoint-hit-condition
"m" 'dap-breakpoint-log-message
"l" 'dap-ui-breakpoints-list
"b" 'dap-ui-breakpoints)
:custom
(dap-auto-configure-features '(sessions locals controls tooltip))

View File

@@ -7,13 +7,8 @@
;;; Code:
(use-package siren-debug-map
:straight (:type built-in)
:no-require t
:bind
(:prefix-map siren-debug-map
:prefix "C-c -"))
(define-prefix-command 'siren-debug-map)
(general-define-key "C-c -" 'siren-debug-map)
(provide 'siren-debug-map)
;;; siren-debug-map.el ends here

View File

@@ -7,9 +7,9 @@
;;; Code:
(use-package dash-at-point
:bind
("C-c d" . dash-at-point)
("C-c e" . dash-at-point-with-docset))
:general
("C-c d" 'dash-at-point)
("C-c e" 'dash-at-point-with-docset))
(provide 'siren-dash-at-point)
;;; siren-dash-at-point.el ends here

View File

@@ -7,14 +7,14 @@
;;; Code:
(use-package helpful
:bind
("C-h k" . helpful-key)
("C-h f" . helpful-callable)
("C-h v" . helpful-variable)
("C-h C" . helpful-command)
("C-h F" . helpful-function)
(:map emacs-lisp-mode-map
("C-c C-d" . helpful-at-point))
:general
("C-h k" 'helpful-key)
("C-h f" 'helpful-callable)
("C-h v" 'helpful-variable)
("C-h C" 'helpful-command)
("C-h F" 'helpful-function)
(:keymaps 'emacs-lisp-mode-map
"C-c C-d" 'helpful-at-point)
:custom
(helm-describe-function-function 'helpful-function)

View File

@@ -9,9 +9,9 @@
(require 'siren-ido)
(use-package amx
:bind
("M-x" . amx)
("C-x C-m" . amx)
:general
("M-x" 'amx)
("C-x C-m" 'amx)
:custom
(amx-backend 'ido)

View File

@@ -11,11 +11,11 @@
(use-package auto-highlight-symbol
:diminish auto-highlight-symbol-mode
:bind
(:map auto-highlight-symbol-mode-map
("C-c C-p" . ahs-backward)
("C-c C-n" . ahs-forward)
("C-c C-r" . ahs-edit-mode))
:general
(:keymaps 'auto-highlight-symbol-mode-map
"C-c C-p" 'ahs-backward
"C-c C-n" 'ahs-forward
"C-c C-r" 'ahs-edit-mode)
:hook
(prog-mode . auto-highlight-symbol-mode)

View File

@@ -10,10 +10,10 @@
(require 'siren-consult)
(use-package embark
:bind
(("C-." . embark-act) ;; pick some comfortable binding
("C-," . embark-dwim) ;; good alternative: M-.
("C-h B" . embark-bindings)) ;; alternative for `describe-bindings'
:general
("C-." 'embark-act) ;; pick some comfortable binding
("C-," 'embark-dwim) ;; good alternative: M-.
("C-h B" 'embark-bindings) ;; alternative for `describe-bindings'
:config
;; Hide the mode line of the Embark live/completions buffers

View File

@@ -10,18 +10,20 @@
;; http://www.lukeswart.net/2015/04/lightning-intro-to-emacs-using-evil-mode-and-org-mode/
(use-package evil
:demand
:bind (:map evil-normal-state-map
;; Treat wrapped line scrolling as single lines.
("j" . evil-next-visual-line)
("k" . evil-previous-visual-line)
;; esc quits pretty much anything (like pending prompts in the minibuffer)
:map evil-normal-state-map ("<escape>" . keyboard-quit)
:map evil-visual-state-map ("<escape>" . keyboard-quit)
:map minibuffer-local-map ("<escape>" . minibuffer-keyboard-quit)
:map minibuffer-local-ns-map ("<escape>" . minibuffer-keyboard-quit)
:map minibuffer-local-completion-map ("<escape>" . minibuffer-keyboard-quit)
:map minibuffer-local-must-match-map ("<escape>" . minibuffer-keyboard-quit)
:map minibuffer-local-isearch-map ("<escape>" . minibuffer-keyboard-quit)))
:general
(:keymaps 'evil-normal-state-map
;; Treat wrapped line scrolling as single lines.
"j" 'evil-next-visual-line
"k" 'evil-previous-visual-line)
;; esc quits pretty much anything (like pending prompts in the minibuffer)
(:keymaps 'evil-normal-state-map "<escape>" 'keyboard-quit)
(:keymaps 'evil-visual-state-map "<escape>" 'keyboard-quit)
(:keymaps 'minibuffer-local-map "<escape>" 'minibuffer-keyboard-quit)
(:keymaps 'minibuffer-local-ns-map "<escape>" 'minibuffer-keyboard-quit)
(:keymaps 'minibuffer-local-completion-map "<escape>" 'minibuffer-keyboard-quit)
(:keymaps 'minibuffer-local-must-match-map "<escape>" 'minibuffer-keyboard-quit)
(:keymaps 'minibuffer-local-isearch-map "<escape>" 'minibuffer-keyboard-quit))
(provide 'siren-evil)
;;; siren-evil.el ends here

View File

@@ -9,9 +9,9 @@
(use-package hideshow
:straight (:type built-in)
:bind
("C-=" . siren-folding-toggle-selective-display)
("C-c C-h" . siren-folding-toggle)
:general
("C-=" 'siren-folding-toggle-selective-display)
("C-c C-h" 'siren-folding-toggle)
:init
(defun siren-folding (&optional arg)

View File

@@ -9,10 +9,10 @@
(use-package highlight-symbol
:diminish highlight-symbol-mode
:bind
("C-c C-p" . highlight-symbol-prev)
("C-c C-n" . highlight-symbol-next)
("C-c C-r" . highlight-symbol-query-replace)
:general
("C-c C-p" 'highlight-symbol-prev)
("C-c C-n" 'highlight-symbol-next)
("C-c C-r" 'highlight-symbol-query-replace)
:hook
(prog-mode . highlight-symbol-mode)

View File

@@ -10,8 +10,8 @@
(use-package ivy
:defer t
:bind
("C-c C-r" . ivy-resume)
:general
("C-c C-r" 'ivy-resume)
:custom
(ivy-use-virtual-buffers nil)

View File

@@ -8,8 +8,9 @@
(use-package marginalia
:demand t
:bind (:map minibuffer-local-map
("M-A" . marginalia-cycle))
:general
(:keymaps 'minibuffer-local-map
"M-A" 'marginalia-cycle)
:custom
(marginalia-align-offset 10)

View File

@@ -7,9 +7,9 @@
;;; Code:
(use-package mwim
:bind
("C-a" . mwim-beginning)
("C-e" . mwim-end))
:general
("C-a" 'mwim-beginning)
("C-e" 'mwim-end))
(provide 'siren-mwim)
;;; siren-mwim.el ends here

View File

@@ -7,11 +7,11 @@
;;; Code:
(use-package smex
:bind
("C-x C-m" . smex)
("C-c C-m" . smex)
("M-X" . smex-major-mode-commands)
("C-c C-c M-x" . execute-extended-command)
:general
("C-x C-m" 'smex)
("C-c C-m" 'smex)
("M-X" 'smex-major-mode-commands)
("C-c C-c M-x" 'execute-extended-command)
:custom
(smex-save-file (expand-file-name "smex-items" siren-cache-dir))

View File

@@ -8,13 +8,13 @@
(use-package undo-tree
:demand
:bind
(:map undo-tree-map
("C-x u" . undo-tree-visualize)
("M--" . undo-tree-undo)
("M-_" . undo-tree-redo)
("s-z" . undo-tree-undo)
("s-Z" . undo-tree-redo))
:general
(:keymaps 'undo-tree-map
"C-x u" 'undo-tree-visualize
"M--" 'undo-tree-undo
"M-_" 'undo-tree-redo
"s-z" 'undo-tree-undo
"s-Z" 'undo-tree-redo)
:diminish
undo-tree-mode

View File

@@ -30,15 +30,15 @@
(use-package vertico-repeat
:after vertico
:bind
("C-c C-v" . vertico-repeat))
:general
("C-c C-v" 'vertico-repeat))
(use-package vertico-directory
:after vertico
:demand t
:bind
(:map vertico-map
("C-l" . vertico-directory-up))
:general
(:keymaps 'vertico-map
"C-l" 'vertico-directory-up)
:init
;; Hacky minor-mode to toggle vertico-directory features on and off.

View File

@@ -9,35 +9,43 @@
(require 'siren-lisp)
(require 'siren-string-inflection)
(defun siren-recompile-elc-on-save ()
"Recompile your elc when saving an elisp file."
(add-hook 'after-save-hook
(lambda ()
(when (and
(string-prefix-p siren-dir (file-truename buffer-file-name))
(file-exists-p (byte-compile-dest-file buffer-file-name)))
(emacs-lisp-byte-compile)))
nil t))
(use-package emacs-lisp-mode
:straight (:type built-in)
:mode "Cask\\'"
(defun siren-conditional-emacs-lisp-checker ()
"Don't check doc style in Emacs Lisp test files."
(let ((file-name (buffer-file-name)))
(when (and file-name (string-match-p ".*-tests?\\.el\\'" file-name))
(setq-local flycheck-checkers '(emacs-lisp)))))
:hook
(emacs-lisp-mode . siren-emacs-lisp-mode-setup)
(defun siren-emacs-lisp-mode-setup ()
"Sensible defaults for `emacs-lisp-mode'."
;; (run-hooks 'siren-lisp-coding-hook)
;; (eldoc-mode +1)
;; (siren-recompile-elc-on-save)
;; (rainbow-mode +1)
;; (setq mode-name "EL")
;; (siren-conditional-emacs-lisp-checker)
)
:general
(:keymaps 'emacs-lisp-mode-map
"C-c C-u" 'string-inflection-all-cycle)
(add-hook 'emacs-lisp-mode-hook #'siren-emacs-lisp-mode-setup)
(add-to-list 'auto-mode-alist '("Cask\\'" . emacs-lisp-mode))
(define-key emacs-lisp-mode-map (kbd "C-c C-u") 'string-inflection-all-cycle)
:preface
(defun siren-emacs-lisp-mode-setup ()
"Sensible defaults for `emacs-lisp-mode'."
;; (run-hooks 'siren-lisp-coding-hook)
;; (eldoc-mode +1)
;; (siren-recompile-elc-on-save)
;; (rainbow-mode +1)
;; (setq mode-name "EL")
;; (siren-conditional-emacs-lisp-checker)
)
(defun siren-recompile-elc-on-save ()
"Recompile your elc when saving an elisp file."
(add-hook 'after-save-hook
(lambda ()
(when (and
(string-prefix-p siren-dir (file-truename buffer-file-name))
(file-exists-p (byte-compile-dest-file buffer-file-name)))
(emacs-lisp-byte-compile)))
nil t))
(defun siren-conditional-emacs-lisp-checker ()
"Don't check doc style in Emacs Lisp test files."
(let ((file-name (buffer-file-name)))
(when (and file-name (string-match-p ".*-tests?\\.el\\'" file-name))
(setq-local flycheck-checkers '(emacs-lisp))))))
(provide 'siren-emacs-lisp)
;;; siren-emacs-lisp.el ends here

View File

@@ -10,8 +10,9 @@
(use-package flutter
:after dart-mode
:bind (:map dart-mode-map
("C-M-x" . #'flutter-run-or-hot-reload)))
:general
(:keymaps 'dart-mode-map
"C-M-x" 'flutter-run-or-hot-reload))
(provide 'siren-flutter)
;;; siren-flutter.el ends here

View File

@@ -19,9 +19,10 @@
:mode "\\.go\\'"
:interpreter "go"
:commands go-mode
:bind (:map go-mode-map
("RET" . newline-and-indent)
("C-h f" . godoc-at-point))
:general
(:keymaps 'go-mode-map
"RET" 'newline-and-indent
"C-h f" 'godoc-at-point)
:hook
(go-mode . siren-go-mode-setup)
@@ -118,15 +119,16 @@
:hook
(go-mode . siren-gotest-setup)
:bind (:map go-mode-map
("C-c , a" . go-test-current-project)
("C-c , v" . go-test-current-file)
("C-c , s" . go-test-current-test)
("C-c , c" . go-test-current-coverage)
("C-c , b" . go-test-current-benchmark)
("C-c , B" . go-test-current-project-benchmarks)
("C-c , r" . go-run)
("C-c , t" . ff-find-other-file))
:general
(:keymaps 'go-mode-map
"C-c , a" 'go-test-current-project
"C-c , v" 'go-test-current-file
"C-c , s" 'go-test-current-test
"C-c , c" 'go-test-current-coverage
"C-c , b" 'go-test-current-benchmark
"C-c , B" 'go-test-current-project-benchmarks
"C-c , r" 'go-run
"C-c , t" 'ff-find-other-file)
:custom
(go-test-verbose t)
@@ -156,9 +158,10 @@ For example, if the current buffer is `foo.go', the buffer for
(use-package dap-go
:straight dap-mode
:after (go-mode)
:bind (:map dap-mode-map
("C-c , d" . siren-dap-go-debug-current-test))
:after go-mode
:general
(:keymaps 'dap-mode-map
"C-c , d" 'siren-dap-go-debug-current-test)
:init
(defun siren-dap-go-debug-current-test ()
@@ -178,9 +181,10 @@ For example, if the current buffer is `foo.go', the buffer for
(use-package go-gen-test
:defer t
:after (go-mode)
:bind (:map go-mode-map
("C-c , g" . go-gen-test-dwim)
("C-c , G" . go-gen-test-exported)))
:general
(:keymaps 'go-mode-map
"C-c , g" 'go-gen-test-dwim
"C-c , G" 'go-gen-test-exported))
(use-package go-projectile
:defer t

View File

@@ -9,8 +9,9 @@
(require 'siren-folding)
(use-package haskell-mode
:bind (:map haskell-mode-map
("RET" . newline-and-indent))
:general
(:keymaps 'haskell-mode-map
"RET" 'newline-and-indent)
:hook
(haskell-mode . siren-haskell-mode-setup)

View File

@@ -15,9 +15,10 @@
"\\.js\\'"
"\\.pac\\'"
:bind (:map js-mode-map
("C-j" . newline-and-indent)
("C-c C-h" . siren-toggle-hiding))
:general
(:keymaps 'js-mode-map
"C-j" 'newline-and-indent
"C-c C-h" 'siren-toggle-hiding)
:hook
(js-mode . siren-js-mode-setup)

View File

@@ -13,9 +13,10 @@
(use-package json-mode
:mode "\\.json\\'"
:bind (:map json-mode-map
("C-j" . newline-and-indent)
("C-c C-h" . siren-folding-toggle))
:general
(:keymaps 'json-mode-map
"C-j" 'newline-and-indent
"C-c C-h" 'siren-folding-toggle)
:hook
(json-mode . siren-json-mode-setup)

View File

@@ -7,10 +7,11 @@
;;; Code:
(use-package jsonnet-mode
:bind (:map jsonnet-mode-map
("C-c C-c" . jsonnet-eval-buffer)
("C-c C-f" . jsonnet-reformat-buffer)
("C-c C-j" . jsonnet-jump))
:general
(:keymaps 'jsonnet-mode-map
"C-c C-c" 'jsonnet-eval-buffer
"C-c C-f" 'jsonnet-reformat-buffer
"C-c C-j" 'jsonnet-jump)
:hook
(jsonnet-mode . siren-jsonnet-mode-setup)

View File

@@ -14,9 +14,9 @@
:hook
(makefile-mode . siren-makefile-mode-setup)
:bind
(:map makefile-mode-map
("C-c C-m" . makefile-executor-execute-project-target))
:general
(:keymaps 'makefile-mode-map
"C-c C-m" 'makefile-executor-execute-project-target)
:init
(add-to-list 'siren-indent-sensitive-modes 'makefile-mode)

View File

@@ -22,13 +22,13 @@
"\\.mdown"
"\\.markdown"
:bind
(:map markdown-mode-map
("C-c p" . markdown-preview)
("M-p" . md-move-lines-up)
("M-n" . md-move-lines-down)
("M-P" . markdown-previous-link)
("M-N" . markdown-next-link))
:general
(:keymaps 'markdown-mode-map
"C-c p" 'markdown-preview
"M-p" 'md-move-lines-up
"M-n" 'md-move-lines-down
"M-P" 'markdown-previous-link
"M-N" 'markdown-next-link)
:hook
(markdown-mode . siren-markdown-mode-setup)

View File

@@ -38,14 +38,15 @@
"\\.thor\\'"
"\\.rb\\'"
:bind (:map ruby-mode-map
("C-j" . newline-and-indent)
("RET" . newline-and-indent)
("M-'" . ruby-toggle-string-quotes)
("C-c C-l" . goto-line)
("C-M-f" . sp-ruby-forward-sexp)
("C-M-b" . sp-ruby-backward-sexp)
("C-c C-u" . string-inflection-ruby-style-cycle))
:general
(:keymaps 'ruby-mode-map
"C-j" 'newline-and-indent
"RET" 'newline-and-indent
"M-'" 'ruby-toggle-string-quotes
"C-c C-l" 'goto-line
"C-M-f" 'sp-ruby-forward-sexp
"C-M-b" 'sp-ruby-backward-sexp
"C-c C-u" 'string-inflection-ruby-style-cycle)
:hook
(ruby-mode . siren-ruby-mode-setup)
@@ -152,20 +153,22 @@
(use-package rubocop
:defer t
:after ruby-mode
:bind (:map ruby-mode-map
("C-c . f" . rubocop-check-current-file)
("C-c . p" . rubocop-check-project)
("C-c . d" . rubocop-check-directory)
("C-c . F" . rubocop-autocorrect-current-file)
("C-c . P" . rubocop-autocorrect-project)
("C-c . D" . rubocop-autocorrect-directory)))
:general
(:keymaps 'ruby-mode-map
"C-c . f" 'rubocop-check-current-file
"C-c . p" 'rubocop-check-project
"C-c . d" 'rubocop-check-directory
"C-c . F" 'rubocop-autocorrect-current-file
"C-c . P" 'rubocop-autocorrect-project
"C-c . D" 'rubocop-autocorrect-directory))
(use-package rubocopfmt
:hook
(ruby-mode . rubocopfmt-mode)
:bind (:map ruby-mode-map
("C-c C-f" . rubocopfmt))
:general
(:keymaps 'ruby-mode-map
"C-c C-f" 'rubocopfmt)
:custom
(rubocopfmt-include-unsafe-cops t)
@@ -194,8 +197,9 @@
(use-package ruby-tools
:defer t
:diminish ruby-tools-mode
:bind (:map ruby-tools-mode-map
("C-'" . toggle-quotes))
:general
(:keymaps 'ruby-tools-mode-map
"C-'" 'toggle-quotes)
:hook
(ruby-mode . ruby-tools-mode)
@@ -209,8 +213,9 @@
(use-package yari
:defer t
:init
(define-key 'help-command (kbd "R") 'yari))
:general
(:keymaps 'help-command
"R" 'yari))
(provide 'siren-ruby)
;;; siren-ruby.el ends here

View File

@@ -13,8 +13,9 @@
:mode "\\.rs\\'"
:interpreter "rust"
:commands rust-mode
:bind (:map rust-mode-map
("RET" . newline-and-indent))
:general
(:keymaps 'rust-mode-map
"RET" 'newline-and-indent)
:hook
(rust-mode . siren-rust-mode-setup)

View File

@@ -19,9 +19,9 @@
("\\.tmuxsh\\'" . sh-mode)
("\\.tmuxtheme\\'" . sh-mode)
:bind
(:map sh-mode-map
("RET" . newline-and-indent))
:general
(:keymaps 'sh-mode-map
"RET" 'newline-and-indent)
:hook
(sh-mode . siren-sh-mode-setup)

View File

@@ -18,9 +18,10 @@
:hook
(typescript-mode . siren-typescript-mode-setup)
:bind (:map typescript-mode-map
("C-j" . newline-and-indent)
("C-c C-h" . siren-folding-toggle))
:general
(:keymaps 'typescript-mode-map
"C-j" 'newline-and-indent
"C-c C-h" 'siren-folding-toggle)
:init
(defun siren-typescript-mode-setup ()

View File

@@ -15,9 +15,10 @@
"\\.html.erb\\'"
"\\.tpl\\'"
:bind (:map web-mode-map
("C-j" . newline-and-indent)
("C-c C-h" . siren-folding-toggle))
:general
(:keymaps 'web-mode-map
"C-j" 'newline-and-indent
"C-c C-h" 'siren-folding-toggle)
:hook
(web-mode . siren-web-mode-setup)

View File

@@ -11,8 +11,9 @@
(use-package yaml-mode
:mode "\\.yml\\'" "\\.yaml\\'"
:bind (:map yaml-mode-map
("RET" . newline-and-indent))
:general
(:keyamps 'yaml-mode-map
"RET" 'newline-and-indent)
:hook
(yaml-mode . siren-yaml-mode-setup)

View File

@@ -10,8 +10,8 @@
(require 'siren-lsp)
(use-package consult-lsp
:bind
("C-c C-\\" . consult-lsp-diagnostics))
:general
("C-c C-\\" 'consult-lsp-diagnostics))
(provide 'siren-consult-lsp)
;;; siren-consult-lsp.el ends here

View File

@@ -11,10 +11,10 @@
(use-package helm-lsp
:after (helm-global-bindings)
:bind
("C-c '" . helm-lsp-workspace-symbol)
("C-c C-'" . helm-lsp-workspace-symbol)
("C-c \\" . helm-lsp-diagnostics))
:general
("C-c '" 'helm-lsp-workspace-symbol)
("C-c C-'" 'helm-lsp-workspace-symbol)
("C-c \\" 'helm-lsp-diagnostics))
(provide 'siren-helm-lsp)
;;; siren-helm-lsp.el ends here

View File

@@ -7,9 +7,10 @@
;;; Code:
(use-package lsp-mode
:bind (:map lsp-mode-map
("C-c C-." . lsp-rename)
("C-c C-f" . siren-lsp-format-buffer))
:general
(:keymaps 'lsp-mode-map
"C-c C-." 'lsp-rename
"C-c C-f" 'siren-lsp-format-buffer)
:commands
lsp
@@ -82,11 +83,12 @@
(use-package lsp-ui
:defer t
:bind (:map lsp-ui-mode-map
("C-c C-d" . lsp-ui-doc-glance)
("C-c d" . lsp-ui-doc-show)
("M-?" . lsp-ui-peek-find-references)
("C-c C-j" . lsp-ui-peek-find-definitions))
:general
(:keymaps 'lsp-ui-mode-map
"C-c C-d" 'lsp-ui-doc-glance
"C-c d" 'lsp-ui-doc-show
"M-?" 'lsp-ui-peek-find-references
"C-c C-j" 'lsp-ui-peek-find-definitions)
:custom
(lsp-ui-doc-alignment 'window)

View File

@@ -7,8 +7,9 @@
;;; Code:
(use-package grip-mode
:bind (:map markdown-mode-command-map
("g" . grip-mode)))
:general
(:keymaps 'markdown-mode-command-map
"g" 'grip-mode))
(provide 'siren-grip)
;;; siren-grip.el ends here

View File

@@ -7,10 +7,10 @@
;;; Code:
(use-package lorem-ipsum
:bind
("C-c l s" . lorem-ipsum-insert-sentences)
("C-c l p" . lorem-ipsum-insert-paragraphs)
("C-c l l" . lorem-ipsum-insert-list))
:general
("C-c l s" 'lorem-ipsum-insert-sentences)
("C-c l p" 'lorem-ipsum-insert-paragraphs)
("C-c l l" 'lorem-ipsum-insert-list))
(provide 'siren-lorem-ipsum)
;;; siren-lorem-ipsum.el ends here

View File

@@ -8,10 +8,10 @@
(use-package refine
:commands refine
:bind
(:map refine-mode-map
("M-n" . refine-move-forward)
("M-p" . refine-move-backward)))
:general
(:keymaps 'refine-mode-map
"M-n" 'refine-move-forward
"M-p" 'refine-move-backward))
(provide 'siren-refine)
;;; siren-refine.el ends here

View File

@@ -7,9 +7,9 @@
;;; Code:
(use-package anzu
:bind
("C-x C-r" . anzu-query-replace-regexp)
("M-%" . anzu-query-replace)
:general
("C-x C-r" 'anzu-query-replace-regexp)
("M-%" 'anzu-query-replace)
:custom
(anzu-mode-lighter "")

View File

@@ -8,17 +8,17 @@
;;; Code:
(use-package avy
:bind
("C-c j" . avy-goto-word-or-subword-1)
("C-c SPC" . avy-goto-char)
:general
("C-c j" 'avy-goto-word-or-subword-1)
("C-c SPC" 'avy-goto-char)
:custom
(avy-background t)
(avy-style 'at-full))
(use-package ace-window
:bind
("M-o" . ace-window))
:general
("M-o" 'ace-window))
(provide 'siren-avy)
;;; siren-avy.el ends here

View File

@@ -9,11 +9,11 @@
(use-package centaur-tabs
:commands centaur-tabs-mode
:bind
("s-[" . centaur-tabs-backward-tab)
("s-]" . centaur-tabs-forward-tab)
("s-<" . centaur-tabs-backward-group)
("s->" . centaur-tabs-forward-group)
:general
("s-[" 'centaur-tabs-backward-tab)
("s-]" 'centaur-tabs-forward-tab)
("s-<" 'centaur-tabs-backward-group)
("s->" 'centaur-tabs-forward-group)
:custom
(centaur-tabs-gray-out-icons 'buffer)

View File

@@ -11,11 +11,11 @@
(use-package consult
:defer t
:bind
("C-t" . siren-consult-imenu)
("C-x b" . consult-buffer)
("C-c b" . siren-consult-projectile-buffer)
("M-g M-g" . consult-goto-line)
:general
("C-t" 'siren-consult-imenu)
("C-x b" 'consult-buffer)
("C-c b" 'siren-consult-projectile-buffer)
("M-g M-g" 'consult-goto-line)
:custom
(consult-buffer-sources '(siren-consult--source-buffer-outside-project

View File

@@ -8,8 +8,9 @@
(use-package dired+
:defer t
:bind (:map dired-mode-map
("C-l" . diredp-up-directory-reuse-dir-buffer))
:general
(:keymaps 'dired-mode-map
"C-l" 'diredp-up-directory-reuse-dir-buffer)
:hook
(dired-mode . siren-diredp-mode-setup)

View File

@@ -11,11 +11,14 @@
(use-package dired
:straight (:type built-in)
:defer t
:hook
(dired-mode . siren-dired-mode-setup)
:bind (:map dired-mode-map
("c" . dired-create-directory)
("M-?" . siren-dired-display-size))
:general
(:keymaps 'dired-mode-map
"c" 'dired-create-directory
"M-?" 'siren-dired-display-size)
:custom
(siren-dired-clean-up-dired-buffers-after-deletion nil)
@@ -151,13 +154,15 @@ confirmation. To disable the confirmation, see
(use-package dired-subtree
:after dired
:bind (:map dired-mode-map
("TAB" . dired-subtree-toggle)))
:general
(:keymaps 'dired-mode-map
"TAB" 'dired-subtree-toggle))
(use-package dired-narrow
:after dired
:bind (:map dired-mode-map
("C-s" . dired-narrow))
:general
(:keymaps 'dired-mode-map
"C-s" 'dired-narrow)
:custom
(dired-narrow-exit-action 'dired-narrow-find-file)

View File

@@ -7,7 +7,8 @@
;;; Code:
(use-package direx
:bind ("C-x j" . direx-project:jump-to-project-root)
:general
("C-x j" 'direx-project:jump-to-project-root)
:hook
(direx-mode . siren-direx-mode-setup)

View File

@@ -7,14 +7,14 @@
;;; Code:
(use-package dumb-jump
:bind
("C-c C-j" . dumb-jump-go)
("M-g o" . dumb-jump-go-other-window)
("M-g j" . dumb-jump-go)
("M-g b" . dumb-jump-back)
("M-g i" . dumb-jump-go-prompt)
("M-g x" . dumb-jump-go-prefer-external)
("M-g z" . dumb-jump-go-prefer-external-other-window))
:general
("C-c C-j" 'dumb-jump-go)
("M-g o" 'dumb-jump-go-other-window)
("M-g j" 'dumb-jump-go)
("M-g b" 'dumb-jump-back)
("M-g i" 'dumb-jump-go-prompt)
("M-g x" 'dumb-jump-go-prefer-external)
("M-g z" 'dumb-jump-go-prefer-external-other-window))
(provide 'siren-dumb-jump)
;;; siren-dumb-jump.el ends here

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package full-ack
:bind
("C-c C-a" . ack)
:general
("C-c C-a" 'ack)
:custom
(ack-arguments '("--sort-files"

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package git-link
:bind
("C-c g" . git-link)
:general
("C-c g" 'git-link)
:custom
(git-link-open-in-browser t)

View File

@@ -10,11 +10,12 @@
(use-package helm-ag
:after (helm-global-bindings)
:bind
("C-x '" . helm-do-ag-project-root)
("C-x C-'" . helm-do-ag-project-root)
(:map helm-command-map
("a" . helm-do-ag))
:general
("C-x '" 'helm-do-ag-project-root)
("C-x C-'" 'helm-do-ag-project-root)
(:keymaps 'helm-command-map
"a" 'helm-do-ag)
:custom
(helm-ag-base-command (mapconcat 'identity

View File

@@ -10,11 +10,11 @@
(use-package helm-open-github
:after (helm-global-bindings)
:bind
("C-c o f" . helm-open-github-from-file)
("C-c o c" . helm-open-github-from-commit)
("C-c o i" . helm-open-github-from-issues)
("C-c o p" . helm-open-github-from-pull-requests)
:general
("C-c o f" 'helm-open-github-from-file)
("C-c o c" 'helm-open-github-from-commit)
("C-c o i" 'helm-open-github-from-issues)
("C-c o p" 'helm-open-github-from-pull-requests)
:custom
(helm-open-github-commit-limit 10000))

View File

@@ -10,11 +10,11 @@
(use-package helm-swoop
:after (helm-global-bindings)
:bind
("M-r" . helm-swoop-without-pre-input)
("M-R" . helm-swoop-back-to-last-point)
("C-c M-r" . helm-multi-swoop)
("C-x M-r" . helm-multi-swoop-all))
:general
("M-r" 'helm-swoop-without-pre-input)
("M-R" 'helm-swoop-back-to-last-point)
("C-c M-r" 'helm-multi-swoop)
("C-x M-r" 'helm-multi-swoop-all))
(provide 'siren-helm-swoop)
;;; siren-helm-swoop.el ends here

View File

@@ -12,9 +12,9 @@
(use-package helm-global-bindings
:straight helm
:demand
:bind
(:map helm-command-map
("M" . helm-man-woman))
:general
(:keymaps 'helm-command-map
"M" 'helm-man-woman)
:custom
(helm-command-prefix-key "C-c h"))

View File

@@ -19,8 +19,8 @@
(imenu-max-items 400))
(use-package imenu-anywhere
:bind
("C-c t" . helm-imenu-anywhere))
:general
("C-c t" 'helm-imenu-anywhere))
(provide 'siren-imenu)
;;; siren-imenu.el ends here

View File

@@ -7,10 +7,10 @@
;;; Code:
(use-package recursive-narrow
:bind
("C-x C-n" . recursive-narrow-or-widen-dwim)
("C-x n w" . recursive-widen)
("C-x n n" . recursive-narrow-or-widen-dwim)
:general
("C-x C-n" 'recursive-narrow-or-widen-dwim)
("C-x n w" 'recursive-widen)
("C-x n n" 'recursive-narrow-or-widen-dwim)
:config
(add-hook 'recursive-narrow-dwim-functions

View File

@@ -9,8 +9,8 @@
(require 'siren-ivy)
(use-package swiper
:bind
("C-s" . swiper)
:general
("C-s" 'swiper)
:custom-face
(ivy-current-match ((t (:background "#7e9fc9" :foreground "black"))))

View File

@@ -15,20 +15,20 @@
(use-package org
:straight (:type built-in)
:bind
(:map org-mode-map
("C-j" . org-return-indent)
("RET" . org-return-indent)
("M-{" . org-promote-subtree)
("M-}" . org-demote-subtree)
("M-P" . org-metaup)
("M-N" . org-metadown)
("C-M-n" . outline-next-visible-heading)
("C-M-p" . outline-previous-visible-heading)
("C-c [" . smart-shift-left)
("C-c ]" . smart-shift-right))
(:map org-src-mode-map
("C-c C-c" . org-edit-src-exit))
:general
(:keymaps 'org-mode-map
"C-j" 'org-return-indent
"RET" 'org-return-indent
"M-{" 'org-promote-subtree
"M-}" 'org-demote-subtree
"M-P" 'org-metaup
"M-N" 'org-metadown
"C-M-n" 'outline-next-visible-heading
"C-M-p" 'outline-previous-visible-heading
"C-c [" 'smart-shift-left
"C-c ]" 'smart-shift-right)
(:keymaps 'org-src-mode-map
"C-c C-c" 'org-edit-src-exit)
:hook
(org-mode . siren-org-mode-setup)

View File

@@ -9,8 +9,8 @@
(use-package dired-sidebar
:commands dired-sidebar-toggle-sidebar
:bind
("C-x C-p" . dired-sidebar-toggle-sidebar)
:general
("C-x C-p" 'dired-sidebar-toggle-sidebar)
:config
(setq dired-sidebar-subtree-line-prefix " .")

View File

@@ -11,11 +11,11 @@
(use-package helm-projectile
:after (helm-global-bindings)
:bind
("C-x ;" . helm-projectile-find-file)
("C-x C-;" . helm-projectile-find-file)
("C-c ;" . helm-projectile-switch-project)
("C-c C-;" . helm-projectile-switch-project))
:general
("C-x ;" 'helm-projectile-find-file)
("C-x C-;" 'helm-projectile-find-file)
("C-c ;" 'helm-projectile-switch-project)
("C-c C-;" 'helm-projectile-switch-project))
(provide 'siren-helm-projectile)
;;; siren-helm-projectile.el ends here

View File

@@ -10,9 +10,9 @@
(require 'siren-projectile)
(use-package neotree
:bind
("C-x C-p" . neotree-toggle)
("C-x p" . neotree-project-dir)
:general
("C-x C-p" 'neotree-toggle)
("C-x p" 'neotree-project-dir)
:custom
(neo-autorefresh t)

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package project-explorer
:bind
("C-x C-p" . project-explorer-toggle)
:general
("C-x C-p" 'project-explorer-toggle)
:custom
(pe/follow-current t)

View File

@@ -7,22 +7,20 @@
;;; Code:
(use-package projectile
:bind
("C-c p p" . projectile-switch-project)
("C-c p k" . projectile-kill-buffers)
("C-c p r" . projectile-replace)
("C-c p S" . projectile-save-project-buffers)
("C-c C-b" . projectile-ibuffer)
("C-x C-t" . projectile-find-file)
("C-x j" . projectile-dired)
("C-x ;" . projectile-find-file)
("C-x C-;" . projectile-find-file)
("C-c ;" . projectile-switch-project)
("C-c C-;" . projectile-switch-project)
(:map projectile-mode-map
("C-c p" . projectile-command-map))
:general
("C-c p p" 'projectile-switch-project)
("C-c p k" 'projectile-kill-buffers)
("C-c p r" 'projectile-replace)
("C-c p S" 'projectile-save-project-buffers)
("C-c C-b" 'projectile-ibuffer)
("C-c ;" 'projectile-switch-project)
("C-c C-;" 'projectile-switch-project)
("C-x C-t" 'projectile-find-file)
("C-x j" 'projectile-dired)
("C-x ;" 'projectile-find-file)
("C-x C-;" 'projectile-find-file)
(:keymaps 'projectile-mode-map
"C-c p" 'projectile-command-map)
:custom
(projectile-buffers-filter-function 'projectile-buffers-with-file-or-process)

View File

@@ -7,9 +7,10 @@
;;; Code:
(use-package treemacs
:bind
("C-x C-p" . treemacs)
("C-x p" . treemacs-select-window)
:general
("C-x C-p" 'treemacs)
("C-x p" 'treemacs-select-window)
(general-unbind :keymaps 'treemacs-mode-map "M-l")
:hook
(treemacs-mode . siren-treemacs-change-hl-line-mode)
@@ -58,10 +59,7 @@
(treemacs-define-RET-action
'file-node-open #'treemacs-visit-node-in-most-recently-used-window)
(treemacs-define-RET-action
'file-node-closed #'treemacs-visit-node-in-most-recently-used-window)
;; Unbind keys which conflict with global keybindings I use.
(unbind-key "M-l" treemacs-mode-map))
'file-node-closed #'treemacs-visit-node-in-most-recently-used-window))
(use-package treemacs-all-the-icons
:defer t

View File

@@ -9,8 +9,8 @@
(require 'siren-vterm)
(use-package shell-pop
:bind
("C-`" . shell-pop)
:general
("C-`" 'shell-pop)
:custom
(shell-pop-full-span t)

View File

@@ -13,20 +13,20 @@
:hook
(vterm-mode . siren-vterm-mode-setup)
:bind
(:map vterm-mode-map
("C-c [" . vterm-copy-mode)
("M-i" . windmove-up)
("M-k" . windmove-down)
("M-j" . windmove-left)
("M-l" . windmove-right)
("M-K" . windmove-swap-states-down)
("M-I" . windmove-swap-states-up)
("M-J" . windmove-swap-states-left)
("M-L" . windmove-swap-states-right))
(:map vterm-copy-mode-map
("C-g" . siren-vterm-copy-mode-cancel)
("C-c [" . vterm-copy-mode))
:general
(:keymaps 'vterm-mode-map
"C-c [" 'vterm-copy-mode
"M-i" 'windmove-up
"M-k" 'windmove-down
"M-j" 'windmove-left
"M-l" 'windmove-right
"M-K" 'windmove-swap-states-down
"M-I" 'windmove-swap-states-up
"M-J" 'windmove-swap-states-left
"M-L" 'windmove-swap-states-right)
(:keymaps 'vterm-copy-mode-map
"C-g" 'siren-vterm-copy-mode-cancel
"C-c [" 'vterm-copy-mode)
:custom
(vterm-always-compile-module t)

View File

@@ -26,7 +26,8 @@
(unbind-key "C-;" flyspell-mode-map))
(use-package flyspell-correct
:bind ("C-/" . flyspell-correct-wrapper))
:general
("C-/" 'flyspell-correct-wrapper))
(provide 'siren-flyspell)
;;; siren-flyspell.el ends here

View File

@@ -7,9 +7,9 @@
;;; Code:
(use-package expand-region
:bind
("M-." . er/expand-region)
("M-," . er/contract-region))
:general
("M-." 'er/expand-region)
("M-," 'er/contract-region))
(provide 'siren-expand-region)
;;; siren-expand-region.el ends here

View File

@@ -7,8 +7,9 @@
;;; Code:
(use-package goto-chg
:bind (("C-." . goto-last-change)
("C-," . goto-last-change-reverse)))
:general
("C-." 'goto-last-change)
("C-," 'goto-last-change-reverse))
(provide 'siren-goto-chg)
;;; siren-goto-chg.el ends here

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package ialign
:bind
("C-x l" . ialign))
:general
("C-x l" 'ialign))
(provide 'siren-ialign)
;;; siren-ialign.el ends here

View File

@@ -7,10 +7,10 @@
;;; Code:
(use-package move-dup
:bind
("M-p" . move-dup-move-lines-up)
("M-n" . move-dup-move-lines-down)
("C-x C-d" . move-dup-duplicate-down))
:general
("M-p" 'move-dup-move-lines-up)
("M-n" 'move-dup-move-lines-down)
("C-x C-d" 'move-dup-duplicate-down))
(provide 'siren-move-dup)
;;; siren-move-dup.el ends here

View File

@@ -7,12 +7,12 @@
;;; Code:
(use-package multiple-cursors
:bind
("C-x C-@" . mc/edit-lines) ;; Terminal
("M-/" . mc/mark-next-like-this)
("M-m" . mc/mark-previous-like-this)
("C-c M-/" . mc/mark-all-like-this)
("M-RET" . set-rectangular-region-anchor)
:general
("C-x C-@" 'mc/edit-lines) ;; Terminal
("M-/" 'mc/mark-next-like-this)
("M-m" 'mc/mark-previous-like-this)
("C-c M-/" 'mc/mark-all-like-this)
("M-RET" 'set-rectangular-region-anchor)
:custom
(mc/edit-lines-empty-lines 'ignore)

View File

@@ -7,11 +7,11 @@
;;; Code:
(use-package smart-shift
:bind
("C-c [" . smart-shift-left)
("C-c ]" . smart-shift-right)
("M-{" . smart-shift-left)
("M-}" . smart-shift-right)
:general
("C-c [" 'smart-shift-left)
("C-c ]" 'smart-shift-right)
("M-{" 'smart-shift-left)
("M-}" 'smart-shift-right)
:config
;; Override default keymap adding support additional keybindings once

View File

@@ -9,22 +9,23 @@
(use-package smartparens
:defer t
:diminish smartparens-mode
:bind (:map smartparens-mode-map
("C-M-f" . sp-forward-sexp)
("C-M-b" . sp-backward-sexp)
("C-M-t" . sp-transpose-sexp)
("C-M-r" . sp-transpose-sexp-reverse)
("C-M-a" . sp-beginning-of-sexp)
("C-M-e" . sp-end-of-sexp)
("C-M-]" . sp-forward-slurp-sexp)
("C-M-[" . sp-forward-barf-sexp)
("C-M-d" . sp-kill-sexp)
("C-<delete>" . sp-kill-sexp)
("C-<backspace>" . sp-backward-kill-sexp)
("M-|" . sp-split-sexp)
("M-\"" . sp-join-sexp)
("M-t" . sp-backward-up-sexp)
("M-R" . sp-rewrap-sexp))
:general
(:keymaps 'smartparens-mode-map
"C-M-f" 'sp-forward-sexp
"C-M-b" 'sp-backward-sexp
"C-M-t" 'sp-transpose-sexp
"C-M-r" 'sp-transpose-sexp-reverse
"C-M-a" 'sp-beginning-of-sexp
"C-M-e" 'sp-end-of-sexp
"C-M-]" 'sp-forward-slurp-sexp
"C-M-[" 'sp-forward-barf-sexp
"C-M-d" 'sp-kill-sexp
"C-<delete>" 'sp-kill-sexp
"C-<backspace>" 'sp-backward-kill-sexp
"M-|" 'sp-split-sexp
"M-\"" 'sp-join-sexp
"M-t" 'sp-backward-up-sexp
"M-R" 'sp-rewrap-sexp)
:hook
(prog-mode . smartparens-mode)

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package string-inflection
:bind
("C-c C-u" . string-inflection-cycle))
:general
("C-c C-u" 'string-inflection-cycle))
(provide 'siren-string-inflection)
;;; siren-string-inflection.el ends here

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package toggle-quotes
:bind
("C-'" . toggle-quotes))
:general
("C-'" 'toggle-quotes))
(provide 'siren-toggle-quotes)
;;; siren-toggle-quotes.el ends here

View File

@@ -10,9 +10,9 @@
(use-package helm-make
:after (helm-global-bindings)
:bind
(:map helm-command-map
("m" . helm-make-projectile))
:general
(:keymaps 'helm-command-map
"m" 'helm-make-projectile)
:custom
(helm-make-cache-targets nil)

View File

@@ -12,8 +12,8 @@
:hook
(makefile-mode . makefile-executor-mode)
:bind
("C-c C-m" . makefile-executor-execute-project-target)
:general
("C-c C-m" 'makefile-executor-execute-project-target)
:config
;; Replace get targets function with that from helm-make as it faster and more

View File

@@ -11,8 +11,8 @@
(require 'siren-flyspell)
(use-package magit
:bind
("C-x g". magit-status)
:general
("C-x g" 'magit-status)
:hook
(siren-magit-mode . siren-magit-mode-setup)

View File

@@ -7,8 +7,8 @@
;;; Code:
(use-package resize-window
:bind
("C-;" . resize-window))
:general
("C-;" 'resize-window))
(provide 'siren-resize-window)
;;; siren-resize-window.el ends here

View File

@@ -11,37 +11,37 @@
(use-package windmove
:straight (:type built-in)
:bind
("M-i" . siren-windmove-up)
("M-k" . siren-windmove-down)
("M-j" . siren-windmove-left)
("M-l" . siren-windmove-right))
:general
("M-i" 'siren-windmove-up)
("M-k" 'siren-windmove-down)
("M-j" 'siren-windmove-left)
("M-l" 'siren-windmove-right))
(use-package buffer-move
:bind
("M-K" . buf-move-down)
("M-I" . buf-move-up)
("M-J" . buf-move-left)
("M-L" . buf-move-right)))
:general
("M-K" 'buf-move-down)
("M-I" 'buf-move-up)
("M-J" 'buf-move-left)
("M-L" 'buf-move-right)))
;; Emacs 27.0 and later
(when (not (version< emacs-version "27.0"))
(use-package windmove
:straight (:type built-in)
:bind
("M-i" . windmove-up)
("M-k" . windmove-down)
("M-j" . windmove-left)
("M-l" . windmove-right)
("M-K" . windmove-swap-states-down)
("M-I" . windmove-swap-states-up)
("M-J" . windmove-swap-states-left)
("M-L" . windmove-swap-states-right)
("C-x M-i" . windmove-delete-up)
("C-x M-k" . windmove-delete-down)
("C-x M-j" . windmove-delete-left)
("C-x M-l" . windmove-delete-right)))
:general
("M-i" 'windmove-up)
("M-k" 'windmove-down)
("M-j" 'windmove-left)
("M-l" 'windmove-right)
("M-K" 'windmove-swap-states-down)
("M-I" 'windmove-swap-states-up)
("M-J" 'windmove-swap-states-left)
("M-L" 'windmove-swap-states-right)
("C-x M-i" 'windmove-delete-up)
("C-x M-k" 'windmove-delete-down)
("C-x M-j" 'windmove-delete-left)
("C-x M-l" 'windmove-delete-right)))
;; Tmux integration with windmove
(when (and (getenv "TMUX")

View File

@@ -9,10 +9,10 @@
(require 'siren-workspace-map)
(use-package zoom-window
:bind
(:map siren-workspace-map
("RET" . zoom-window-zoom)
("C-<return>" . zoom-window-zoom))
:general
(:keymaps 'siren-workspace-map
"RET" 'zoom-window-zoom
"C-<return>" 'zoom-window-zoom)
:config
(with-eval-after-load "persp-mode"

View File

@@ -11,6 +11,10 @@
(use-package desktop
:straight (:type built-in)
:general
(:keymaps 'siren-workspace-map
"C-z" 'siren-desktop-map)
:hook
(desktop-after-read . siren-desktop-after-read-hook)
@@ -60,7 +64,9 @@
(push '(zoom-window-buffers . :never) frameset-filter-alist)
(push '(zoom-window-enabled . :never) frameset-filter-alist)
:init
:preface
(define-prefix-command 'siren-desktop-map)
;; Enable restoring window configurations when running in terminal
;; - from: https://emacs.stackexchange.com/a/45829
(defun siren-desktop-after-read-hook ()
@@ -72,22 +78,22 @@
:force-onscreen desktop-restore-forces-onscreen)))
(use-package desktop+
:bind
(:map siren-workspace-map
("C-z c" . desktop+-create)
("C-z C-c" . desktop+-create)
("C-z n" . siren-desktop+-create-new)
("C-z C-n" . siren-desktop+-create-new)
("C-z s" . desktop+-load-or-create)
("C-z C-s" . desktop+-load-or-create)
("C-z l" . desktop+-load)
("C-z C-l" . desktop+-load))
:general
(:keymaps 'siren-desktop-map
"c" 'desktop+-create
"C-c" 'desktop+-create
"n" 'siren-desktop+-create-new
"C-n" 'siren-desktop+-create-new
"s" 'desktop+-load-or-create
"C-s" 'desktop+-load-or-create
"l" 'desktop+-load
"C-l" 'desktop+-load)
:config
(unless (file-exists-p desktop+-base-dir)
(make-directory desktop+-base-dir))
:init
:preface
(defvar desktop+-base-dir (expand-file-name "desktops" siren-dir)
"Base directory for desktop files.")

View File

@@ -8,24 +8,17 @@
(use-package elscreen
:demand
:bind (("s-}" . elscreen-next)
("s-{" . elscreen-previous)
:map elscreen-map
;; Prefix key.
("C-z" . elscreen-map)
;; Set screen nickname
("," . elscreen-screen-nickname)
("C-," . elscreen-screen-nickname)
;; Toggle screens.
("l" . elscreen-toggle)
("C-l" . elscreen-toggle)
;; Display list of screens.
(";" . elscreen-display-screen-name-list)
("C-;" . elscreen-display-screen-name-list))
:general
("s-}" 'elscreen-next)
("s-{" 'elscreen-previous)
(:keymaps 'elscreen-map
"C-z" 'elscreen-map
"," 'elscreen-screen-nickname
"C-," 'elscreen-screen-nickname
"l" 'elscreen-toggle
"C-l" 'elscreen-toggle
";" 'elscreen-display-screen-name-list
"C-;" 'elscreen-display-screen-name-list)
:config
(elscreen-start))

View File

@@ -10,20 +10,20 @@
:straight (:type git :host github :repo "renard/escreen-el")
:demand
:bind
("s-}" . escreen-goto-next-screen)
("s-{" . escreen-goto-prev-screen)
(:map escreen-map
("C-z" . escreen-goto-last-screen)
("l" . escreen-goto-last-screen)
("C-l" . escreen-goto-last-screen)
(";" . siren-escreen-get-active-screen)
("C-;" . siren-escreen-get-active-screen)
("C-c" . escreen-create-screen)
("C-g" . escreen-goto-screen)
("C-k" . escreen-kill-screen)
("C-n" . escreen-goto-next-screen)
("C-p" . escreen-goto-prev-screen))
:general
("s-}" 'escreen-goto-next-screen)
("s-{" 'escreen-goto-prev-screen)
(:keymaps 'escreen-map
"C-z" 'escreen-goto-last-screen
"l" 'escreen-goto-last-screen
"C-l" 'escreen-goto-last-screen
";" 'siren-escreen-get-active-screen
"C-;" 'siren-escreen-get-active-screen
"C-c" 'escreen-create-screen
"C-g" 'escreen-goto-screen
"C-k" 'escreen-kill-screen
"C-n" 'escreen-goto-next-screen
"C-p" 'escreen-goto-prev-screen)
:hook
(escreen-goto-screen . siren-escreen-get-active-screen)

View File

@@ -10,52 +10,52 @@
(require 'siren-workspace-map)
(use-package persp-mode
:bind
("s-}" . persp-next)
("s-{" . persp-prev)
(:map siren-workspace-map
("n" . persp-next)
("C-n" . persp-next)
("p" . persp-prev)
("C-p" . persp-prev)
("s" . persp-frame-switch)
("C-s" . persp-frame-switch)
("S" . persp-window-switch)
("r" . persp-rename)
("C-r" . persp-rename)
("c" . persp-copy)
("C-c" . persp-copy)
("C" . persp-kill)
("z" . persp-save-and-kill)
("a" . persp-add-buffer)
("C-a" . persp-add-buffer)
("b" . persp-switch-to-buffer)
("C-b" . siren-persp-mode-ibuffer)
("t" . persp-temporarily-display-buffer)
("i" . persp-import-buffers)
("I" . persp-import-win-conf)
("k" . persp-remove-buffer)
("C-k" . persp-remove-buffer)
("K" . persp-kill-buffer)
("w" . persp-save-state-to-file)
("W" . persp-save-to-file-by-names)
("C-l" . siren-persp-mode-switch-to-most-recent)
("l" . persp-load-state-from-file)
("L" . persp-load-from-file-by-names)
(";" . siren-persp-mode-show-current-perspective-name)
("C-;" . siren-persp-mode-show-current-perspective-name)
("e" . siren-persp-mode-edit-names-cache)
("C-e" . siren-persp-mode-edit-names-cache)
("0" . siren-persp-switch-to-index)
("1" . siren-persp-switch-to-index)
("2" . siren-persp-switch-to-index)
("3" . siren-persp-switch-to-index)
("4" . siren-persp-switch-to-index)
("5" . siren-persp-switch-to-index)
("6" . siren-persp-switch-to-index)
("7" . siren-persp-switch-to-index)
("8" . siren-persp-switch-to-index)
("9" . siren-persp-switch-to-index))
:general
("s-}" 'persp-next)
("s-{" 'persp-prev)
(:keymaps 'siren-workspace-map
"n" 'persp-next
"C-n" 'persp-next
"p" 'persp-prev
"C-p" 'persp-prev
"s" 'persp-frame-switch
"C-s" 'persp-frame-switch
"S" 'persp-window-switch
"r" 'persp-rename
"C-r" 'persp-rename
"c" 'persp-copy
"C-c" 'persp-copy
"C" 'persp-kill
"z" 'persp-save-and-kill
"a" 'persp-add-buffer
"C-a" 'persp-add-buffer
"b" 'persp-switch-to-buffer
"C-b" 'siren-persp-mode-ibuffer
"t" 'persp-temporarily-display-buffer
"i" 'persp-import-buffers
"I" 'persp-import-win-conf
"k" 'persp-remove-buffer
"C-k" 'persp-remove-buffer
"K" 'persp-kill-buffer
"w" 'persp-save-state-to-file
"W" 'persp-save-to-file-by-names
"C-l" 'siren-persp-mode-switch-to-most-recent
"l" 'persp-load-state-from-file
"L" 'persp-load-from-file-by-names
";" 'siren-persp-mode-show-current-perspective-name
"C-;" 'siren-persp-mode-show-current-perspective-name
"e" 'siren-persp-mode-edit-names-cache
"C-e" 'siren-persp-mode-edit-names-cache
"0" 'siren-persp-switch-to-index
"1" 'siren-persp-switch-to-index
"2" 'siren-persp-switch-to-index
"3" 'siren-persp-switch-to-index
"4" 'siren-persp-switch-to-index
"5" 'siren-persp-switch-to-index
"6" 'siren-persp-switch-to-index
"7" 'siren-persp-switch-to-index
"8" 'siren-persp-switch-to-index
"9" 'siren-persp-switch-to-index)
:custom
(persp-auto-save-num-of-backups 10)

View File

@@ -8,31 +8,32 @@
(use-package perspective
:demand
:bind (:map persp-mode-map
("C-z z" . persp-switch)
("C-z C-z" . persp-switch)
("C-z c" . persp-switch)
("C-z C-c" . persp-switch)
("C-z s" . persp-switch)
("C-z C-s" . persp-switch)
("C-z b" . persp-switch)
("C-z C-b" . persp-switch)
("C-z l" . persp-switch-last)
("C-z C-l" . persp-switch-last)
("C-z c" . persp-remove-buffer)
("C-z C-c" . persp-remove-buffer)
("C-z k" . persp-kill)
("C-z C-k" . persp-kill)
("C-z r" . persp-rename)
("C-z C-r" . persp-rename)
("C-z a" . persp-add-buffer)
("C-z C-a" . persp-add-buffer)
("C-z i" . persp-import)
("C-z C-i" . persp-import)
("C-z n" . persp-next)
("C-z C-n" . persp-next)
("C-z p" . persp-prev)
("C-z C-p" . persp-prev))
:general
(:keymaps 'persp-mode-map
"C-z z" 'persp-switch
"C-z C-z" 'persp-switch
"C-z c" 'persp-switch
"C-z C-c" 'persp-switch
"C-z s" 'persp-switch
"C-z C-s" 'persp-switch
"C-z b" 'persp-switch
"C-z C-b" 'persp-switch
"C-z l" 'persp-switch-last
"C-z C-l" 'persp-switch-last
"C-z c" 'persp-remove-buffer
"C-z C-c" 'persp-remove-buffer
"C-z k" 'persp-kill
"C-z C-k" 'persp-kill
"C-z r" 'persp-rename
"C-z C-r" 'persp-rename
"C-z a" 'persp-add-buffer
"C-z C-a" 'persp-add-buffer
"C-z i" 'persp-import
"C-z C-i" 'persp-import
"C-z n" 'persp-next
"C-z C-n" 'persp-next
"C-z p" 'persp-prev
"C-z C-p" 'persp-prev)
:custom-face
;; (persp-selected-face ((t (:foreground "#d97a35" :weight bold))))

View File

@@ -11,44 +11,44 @@
(use-package tab-bar
:straight (:type built-in)
:bind
("s-}" . tab-next)
("s-{" . tab-previous)
(:map siren-workspace-map
("C-n" . tab-next)
("C-p" . tab-previous)
("c" . tab-new)
("C-c" . tab-new)
("k" . tab-close)
("C-k" . tab-close)
("l" . tab-recent)
("C-l" . tab-recent)
("r" . tab-rename)
("C-r" . tab-rename)
("n" . siren-tab-bar-move-tab-right)
("p" . siren-tab-bar-move-tab-left)
("s" . siren-tab-bar-switch-to-or-create-tab)
("C-s" . siren-tab-bar-switch-to-or-create-tab)
("e" . tab-switcher)
("C-e" . tab-switcher)
("u" . tab-undo)
("C-u" . tab-undo)
(";" . siren-tab-bar-echo-tab-list)
("C-;" . siren-tab-bar-echo-tab-list)
("0" . siren-tab-bar-switch-to-index)
("1" . siren-tab-bar-switch-to-index)
("2" . siren-tab-bar-switch-to-index)
("3" . siren-tab-bar-switch-to-index)
("4" . siren-tab-bar-switch-to-index)
("5" . siren-tab-bar-switch-to-index)
("6" . siren-tab-bar-switch-to-index)
("7" . siren-tab-bar-switch-to-index)
("8" . siren-tab-bar-switch-to-index)
("9" . siren-tab-bar-switch-to-index)
("b" . tab-bar-history-back)
("C-b" . tab-bar-history-back)
("f" . tab-bar-history-forward)
("C-f" . tab-bar-history-forward))
:general
("s-}" 'tab-next)
("s-{" 'tab-previous)
(:keymaps 'siren-workspace-map
"C-n" 'tab-next
"C-p" 'tab-previous
"c" 'tab-new
"C-c" 'tab-new
"k" 'tab-close
"C-k" 'tab-close
"l" 'tab-recent
"C-l" 'tab-recent
"r" 'tab-rename
"C-r" 'tab-rename
"n" 'siren-tab-bar-move-tab-right
"p" 'siren-tab-bar-move-tab-left
"s" 'siren-tab-bar-switch-to-or-create-tab
"C-s" 'siren-tab-bar-switch-to-or-create-tab
"e" 'tab-switcher
"C-e" 'tab-switcher
"u" 'tab-undo
"C-u" 'tab-undo
";" 'siren-tab-bar-echo-tab-list
"C-;" 'siren-tab-bar-echo-tab-list
"0" 'siren-tab-bar-switch-to-index
"1" 'siren-tab-bar-switch-to-index
"2" 'siren-tab-bar-switch-to-index
"3" 'siren-tab-bar-switch-to-index
"4" 'siren-tab-bar-switch-to-index
"5" 'siren-tab-bar-switch-to-index
"6" 'siren-tab-bar-switch-to-index
"7" 'siren-tab-bar-switch-to-index
"8" 'siren-tab-bar-switch-to-index
"9" 'siren-tab-bar-switch-to-index
"b" 'tab-bar-history-back
"C-b" 'tab-bar-history-back
"f" 'tab-bar-history-forward
"C-f" 'tab-bar-history-forward)
:custom
(tab-bar-close-button-show nil)
@@ -63,7 +63,7 @@
:config
(siren-tab-bar-setup)
:init
:preface
(defun siren-tab-bar-setup ()
(tab-bar-mode)
(tab-bar-history-mode))

View File

@@ -7,13 +7,8 @@
;;; Code:
(use-package siren-workspace-map
:straight (:type built-in)
:no-require t
:bind
(:prefix-map siren-workspace-map
:prefix "C-z"))
(define-prefix-command 'siren-workspace-map)
(general-define-key "C-z" 'siren-workspace-map)
(provide 'siren-workspace-map)
;;; siren-workspace-map.el ends here

View File

@@ -8,11 +8,11 @@
(use-package writeroom-mode
:defer t
:bind
(:map writeroom-mode-map
("C-M-<" . writeroom-decrease-width)
("C-M->" . writeroom-increase-width)
("C-M-=" . writeroom-adjust-width))
:general
(:keymaps 'writeroom-mode-map
"C-M-<" 'writeroom-decrease-width
"C-M->" 'writeroom-increase-width
"C-M-=" 'writeroom-adjust-width)
:custom
(writeroom-global-effects nil)

View File

@@ -7,9 +7,9 @@
;;; Code:
(use-package xwwp
:bind
(:map xwidget-webkit-mode-map
("v" . xwwp-follow-link)))
:general
(:keymaps 'xwidget-webkit-mode-map
"v" 'xwwp-follow-link))
(provide 'siren-xwwp)
;;; siren-xwwp.el ends here