feat: Add keybinding stubs
This commit is contained in:
@@ -36,12 +36,10 @@ are active.")
|
||||
(defvar-keymap syd-leader-map
|
||||
:doc "Leader-prefixed commands")
|
||||
|
||||
(defvar-keymap syd-leader-window-map
|
||||
:doc "Window commands")
|
||||
|
||||
(defun syd--initialise-leader ()
|
||||
"Set up the (empty) keymap associated with `syd-leader-key',
|
||||
`syd-localleader-key', `syd-alt-leader-key', and `syd-alt-localleader-key'."
|
||||
(require 'evil)
|
||||
;; Define `syd/leader' as a command corresponding to the prefix map
|
||||
;; `syd-leader-map'.
|
||||
(define-prefix-command 'syd/leader 'syd-leader-map)
|
||||
@@ -54,16 +52,68 @@ are active.")
|
||||
(define-key syd-leader-map [override-state] 'all)
|
||||
;; Finally, we shall bind the damned keys. }:)
|
||||
(let ((map general-override-mode-map))
|
||||
(require 'evil)
|
||||
(evil-define-key* syd-leader-key-states map (kbd syd-leader-key) 'syd/leader)
|
||||
(evil-define-key* syd-alt-leader-key-states map (kbd syd-alt-leader-key) 'syd/leader))
|
||||
(general-override-mode 1))
|
||||
|
||||
(defun syd-keybinds-initialise ()
|
||||
(syd--initialise-leader)
|
||||
(general-define-key
|
||||
:keymaps 'syd-leader-map
|
||||
"." #'find-file))
|
||||
|
||||
;;; Buffer
|
||||
(require 'syd-buffers)
|
||||
(general-def
|
||||
:prefix-map 'syd-leader-buffer-map
|
||||
"k" `("Kill buffer" . ,#'kill-current-buffer)
|
||||
"K" `("Kill all buffers" . ,#'syd/kill-all-buffers)
|
||||
"O" `("Kill other buffers" . ,#'syd/kill-other-buffers)
|
||||
"i" `("IBuffer" . ,#'ibuffer)
|
||||
"Z" `("Kill burried buffers" . ,#'syd/kill-burried-buffers)
|
||||
"C" `("Clone (indirect) buffer O/W" . ,#'clone-indirect-buffer-other-window)
|
||||
"c" `("Clone (indirect) buffer" . ,#'clone-indirect-buffer)
|
||||
"u" `("Save buffer as root" . ,#'syd/save-buffer-as-root)
|
||||
"r" `("Revert buffer" . ,#'revert-buffer))
|
||||
|
||||
;;; File
|
||||
(require 'syd-file)
|
||||
(general-def
|
||||
:prefix-map 'syd-leader-file-map
|
||||
"D" `("Delete file" . ,#'syd/delete-this-file)
|
||||
"R" `("Move file" . ,#'syd/move-this-file)
|
||||
"C" `("Copy file" . ,#'syd/copy-this-file)
|
||||
"F" `("Find file under current" . ,#'syd/find-file-under-here)
|
||||
"p" `("Find under Emacs config" . ,#'syd/find-file-under-emacs-user-directory)
|
||||
"P" `("Browse Emacs config" . ,#'syd/find-file-in-emacs-user-directory)
|
||||
"u" `("Find file as root" . ,#'syd/find-file-as-root)
|
||||
"U" `("Open this file as root" . ,#'syd/open-this-file-as-root)
|
||||
"y" `("Yank buffer path" . ,#'syd/yank-buffer-path))
|
||||
|
||||
;;; Window
|
||||
(require 'syd-window)
|
||||
(general-def
|
||||
:prefix-map 'syd-leader-window-maximise-map
|
||||
"m" `("Maximise" . ,#'syd/window-maximise))
|
||||
(general-def
|
||||
:prefix-map 'syd-leader-window-map
|
||||
"h" `("Select window left" . ,#'evil-window-left)
|
||||
"j" `("Select window below" . ,#'evil-window-down)
|
||||
"k" `("Select window above" . ,#'evil-window-up)
|
||||
"l" `("Select window right" . ,#'evil-window-right)
|
||||
"H" `("Swap window left" . ,#'syd/window-swap-left)
|
||||
"J" `("Swap window below" . ,#'syd/window-swap-down)
|
||||
"K" `("Swap window above" . ,#'syd/window-swap-up)
|
||||
"L" `("Swap window right" . ,#'syd/window-swap-right)
|
||||
"T" `("Tear off window" . ,#'tear-off-window)
|
||||
"=" `("Balance windows" . ,#'balance-windows)
|
||||
"m" `("Maximise" . ,syd-leader-window-maximise-map))
|
||||
|
||||
;;; Leader
|
||||
(general-def
|
||||
:keymaps 'syd-leader-map
|
||||
"." #'find-file
|
||||
"b" `("Buffer" . ,syd-leader-buffer-map)
|
||||
"w" `("Window" . ,syd-leader-window-map)
|
||||
"f" `("File" . ,syd-leader-file-map)
|
||||
"h" `("Help" . ,help-map)))
|
||||
|
||||
(syd-keybinds-initialise)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user