cua keybinds
This commit is contained in:
@@ -6,9 +6,10 @@
|
|||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(eglot-code-action-indications '(eldoc-hint))
|
'(eglot-code-action-indications '(eldoc-hint))
|
||||||
'(package-selected-packages
|
'(package-selected-packages
|
||||||
'(cape dumb-jump dumber-jump exec-path-from-shell jai-mode magit
|
'(apheleia cape dart-mode dumb-jump dumber-jump exec-path-from-shell
|
||||||
markdown-mode move-text multiple-cursors vterm yaml
|
jai-mode magit marginalia markdown-mode move-text
|
||||||
yaml-mode))
|
multiple-cursors nael orderless undo-tree vertico vterm
|
||||||
|
yaml yaml-mode))
|
||||||
'(package-vc-selected-packages
|
'(package-vc-selected-packages
|
||||||
'((jai-mode :url "https://github.com/valignatev/jai-mode.git"))))
|
'((jai-mode :url "https://github.com/valignatev/jai-mode.git"))))
|
||||||
(custom-set-faces
|
(custom-set-faces
|
||||||
|
|||||||
109
init.el
109
init.el
@@ -13,21 +13,45 @@
|
|||||||
(setq dired-use-ls-dired nil)
|
(setq dired-use-ls-dired nil)
|
||||||
(setq mac-command-modifier 'control))
|
(setq mac-command-modifier 'control))
|
||||||
|
|
||||||
|
(setq hgh/cua t)
|
||||||
|
|
||||||
|
(defun hgh/set-cua-keymaps ()
|
||||||
|
(setq cua-mode 1)
|
||||||
|
(keymap-global-set "C-o" #'find-file)
|
||||||
|
(keymap-global-set "C-f" #'isearch-forward)
|
||||||
|
(keymap-global-set "C-r" #'compile)
|
||||||
|
(keymap-global-set "C-b" #'switch-to-buffer)
|
||||||
|
(keymap-global-set "C-j" #'eldoc)
|
||||||
|
(keymap-global-set "<f1>" #'hgh/edit-init-file))
|
||||||
|
|
||||||
|
(defun hgh/set-non-cua-keymaps ()
|
||||||
|
(keymap-global-set "C-c c" #'compile)
|
||||||
|
(keymap-global-set "C-h h" #'eldoc)
|
||||||
|
(keymap-global-set "C-c e i" #'hgh/edit-init-file))
|
||||||
|
|
||||||
|
(hgh/set-cua-keymaps)
|
||||||
|
|
||||||
|
(setq duplicate-line-final-position -1
|
||||||
|
duplicate-region-final-position -1)
|
||||||
|
(keymap-global-set "C-," #'duplicate-dwim)
|
||||||
(keymap-global-set "M-o" #'other-window)
|
(keymap-global-set "M-o" #'other-window)
|
||||||
(keymap-global-set "M-i" #'imenu)
|
;; (keymap-global-set "M-i" #'imenu)
|
||||||
(keymap-global-set "C-c c" #'compile)
|
|
||||||
(keymap-global-set "M-0" #'delete-window)
|
(keymap-global-set "M-0" #'delete-window)
|
||||||
(keymap-global-set "M-1" #'delete-other-windows)
|
(keymap-global-set "M-1" #'delete-other-windows)
|
||||||
(keymap-global-set "M-2" #'split-window-below)
|
(keymap-global-set "M-2" #'split-window-below)
|
||||||
(keymap-global-set "M-3" #'split-window-right)
|
(keymap-global-set "M-3" #'split-window-right)
|
||||||
|
(keymap-global-set "M-i" #'complete-symbol)
|
||||||
|
|
||||||
(keymap-global-set "C-c e i" #'hgh/edit-init-file)
|
(require 'completion-preview)
|
||||||
(keymap-global-set "C-," #'hgh/duplicate-dwim)
|
(keymap-set completion-preview-active-mode-map "M-n" #'completion-preview-next-candidate)
|
||||||
|
(keymap-set completion-preview-active-mode-map "M-p" #'completion-preview-prev-candidate)
|
||||||
|
|
||||||
(setq
|
(setq
|
||||||
custom-file "~/.emacs.d/custom.el"
|
custom-file "~/.emacs.d/custom.el"
|
||||||
make-backup-files nil
|
make-backup-files nil
|
||||||
dired-dwim-target t)
|
dired-dwim-target t
|
||||||
|
use-package-compute-statistics t
|
||||||
|
treesit-font-lock-level 4)
|
||||||
|
|
||||||
(load-file "~/.emacs.d/utils.el")
|
(load-file "~/.emacs.d/utils.el")
|
||||||
|
|
||||||
@@ -36,12 +60,14 @@
|
|||||||
(setopt
|
(setopt
|
||||||
use-short-answers t
|
use-short-answers t
|
||||||
use-dialog-box nil
|
use-dialog-box nil
|
||||||
use-package-enable-imenu-support t)
|
use-package-enable-imenu-support t
|
||||||
|
tab-width 4)
|
||||||
|
|
||||||
(electric-pair-mode 1)
|
(electric-pair-mode 1)
|
||||||
(ido-mode 1)
|
(ido-mode -1)
|
||||||
(fido-mode 1)
|
(fido-mode -1)
|
||||||
(global-completion-preview-mode 1)
|
(global-completion-preview-mode 1)
|
||||||
|
(global-eldoc-mode 1)
|
||||||
(tab-bar-mode -1)
|
(tab-bar-mode -1)
|
||||||
(tool-bar-mode -1)
|
(tool-bar-mode -1)
|
||||||
(scroll-bar-mode -1)
|
(scroll-bar-mode -1)
|
||||||
@@ -53,7 +79,6 @@
|
|||||||
|
|
||||||
(add-hook 'compilation-filter-hook 'ansi-color-compilation-filter)
|
(add-hook 'compilation-filter-hook 'ansi-color-compilation-filter)
|
||||||
(add-hook 'before-save-hook 'delete-trailing-whitespace)
|
(add-hook 'before-save-hook 'delete-trailing-whitespace)
|
||||||
(add-hook 'before-save-hook 'hgh/untabify-buffer)
|
|
||||||
|
|
||||||
(if (file-exists-p custom-file)
|
(if (file-exists-p custom-file)
|
||||||
(load-file custom-file))
|
(load-file custom-file))
|
||||||
@@ -72,7 +97,7 @@
|
|||||||
|
|
||||||
(use-package jai-mode
|
(use-package jai-mode
|
||||||
:vc (:url "https://github.com/valignatev/jai-mode.git"
|
:vc (:url "https://github.com/valignatev/jai-mode.git"
|
||||||
:rev :newest))
|
:rev :newest))
|
||||||
|
|
||||||
(use-package magit
|
(use-package magit
|
||||||
:bind ("C-x g" . magit-status))
|
:bind ("C-x g" . magit-status))
|
||||||
@@ -92,7 +117,7 @@
|
|||||||
|
|
||||||
(use-package cape
|
(use-package cape
|
||||||
:hook ((completion-at-point-functions . cape-dabbrev)
|
:hook ((completion-at-point-functions . cape-dabbrev)
|
||||||
(completion-at-point-functions . cape-file)))
|
(completion-at-point-functions . cape-file)))
|
||||||
|
|
||||||
(use-package dumber-jump
|
(use-package dumber-jump
|
||||||
:init
|
:init
|
||||||
@@ -100,28 +125,64 @@
|
|||||||
:config
|
:config
|
||||||
(push
|
(push
|
||||||
'(:language "jai" :type "function"
|
'(:language "jai" :type "function"
|
||||||
:supports ("ag" "grep" "rg" "git-grep")
|
:supports ("ag" "grep" "rg" "git-grep")
|
||||||
:regex "\\bJJJ\\s*::"
|
:regex "\\bJJJ\\s*::"
|
||||||
:tests ("test ::"))
|
:tests ("test ::"))
|
||||||
dumber-jump-find-rules)
|
dumber-jump-find-rules)
|
||||||
(push
|
(push
|
||||||
'(:language "jai" :type "variable"
|
'(:language "jai" :type "variable"
|
||||||
:supports ("ag" "grep" "rg" "git-grep")
|
:supports ("ag" "grep" "rg" "git-grep")
|
||||||
:regex "\\bJJJ\\s*(:|:\\s*=|::)"
|
:regex "\\bJJJ\\s*(:|:\\s*=|::)"
|
||||||
:tests ("test: Type" "test : Type = Val" "test :: Val"))
|
:tests ("test: Type" "test : Type = Val" "test :: Val"))
|
||||||
dumber-jump-find-rules)
|
dumber-jump-find-rules)
|
||||||
(push
|
(push
|
||||||
'(:language "jai" :type "type"
|
'(:language "jai" :type "type"
|
||||||
:supports ("ag" "grep" "rg" "git-grep")
|
:supports ("ag" "grep" "rg" "git-grep")
|
||||||
:regex "\\bJJJ\\s*::"
|
:regex "\\bJJJ\\s*::"
|
||||||
:tests ("test ::"))
|
:tests ("test ::"))
|
||||||
dumber-jump-find-rules))
|
dumber-jump-find-rules))
|
||||||
|
|
||||||
|
;; go-ts-mode registers its `\\.go\\'' -> auto-mode-alist entry with a
|
||||||
|
;; top-level form that has no autoload cookie, so it only runs once
|
||||||
|
;; the file is loaded. Add the mapping ourselves so .go files open in
|
||||||
|
;; go-ts-mode (grammar already lives under tree-sitter/).
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.go\\'" . go-ts-mode))
|
||||||
|
(add-to-list 'auto-mode-alist '("go\\.mod\\'" . go-mod-ts-mode))
|
||||||
|
|
||||||
(use-package eglot
|
(use-package eglot
|
||||||
|
:hook ((jai-mode . eglot-ensure)
|
||||||
|
(go-ts-mode . eglot-ensure))
|
||||||
:config
|
:config
|
||||||
(push '(jai-mode "jails") eglot-server-programs)
|
(push '(jai-mode "jails" "-jai_path" "/home/grant/.local/jai/") eglot-server-programs)
|
||||||
(push '(sql-mode "postgres-language-server" "lsp-proxy") eglot-server-programs))
|
(push '(sql-mode "postgres-language-server" "lsp-proxy") eglot-server-programs)
|
||||||
|
(push '(dart-mode "fvm" "dart" "language-server" "--client-id" "emacs.eglot-dart") eglot-server-programs))
|
||||||
|
|
||||||
(use-package yaml-mode)
|
(use-package yaml-mode)
|
||||||
|
|
||||||
(use-package vterm)
|
(use-package vterm)
|
||||||
|
|
||||||
|
(use-package dart-mode)
|
||||||
|
|
||||||
|
(use-package nael)
|
||||||
|
|
||||||
|
(use-package vertico
|
||||||
|
:init
|
||||||
|
(vertico-mode 1))
|
||||||
|
|
||||||
|
(use-package marginalia
|
||||||
|
:init
|
||||||
|
(marginalia-mode 1))
|
||||||
|
|
||||||
|
(use-package orderless)
|
||||||
|
|
||||||
|
(use-package go-ts-mode
|
||||||
|
:custom
|
||||||
|
(go-ts-mode-indent-offset 4))
|
||||||
|
|
||||||
|
(use-package undo-tree
|
||||||
|
:init
|
||||||
|
(global-undo-tree-mode 1))
|
||||||
|
|
||||||
|
(use-package apheleia
|
||||||
|
:init
|
||||||
|
(apheleia-global-mode 1))
|
||||||
|
|||||||
5
utils.el
5
utils.el
@@ -3,11 +3,6 @@
|
|||||||
(interactive)
|
(interactive)
|
||||||
(find-file user-init-file))
|
(find-file user-init-file))
|
||||||
|
|
||||||
(defun hgh/duplicate-dwim ()
|
|
||||||
(interactive)
|
|
||||||
(duplicate-dwim)
|
|
||||||
(next-line))
|
|
||||||
|
|
||||||
(defun hgh/set-bar-cursor(&rest args)
|
(defun hgh/set-bar-cursor(&rest args)
|
||||||
(setq-local cursor-type 'bar))
|
(setq-local cursor-type 'bar))
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user