Add web-mode keymaps; clean up keymaps in general
This commit is contained in:
parent
b4a272b74b
commit
dc01e4b2a9
3 changed files with 44 additions and 43 deletions
|
@ -25,6 +25,10 @@
|
|||
(global-set-key (kbd "s-/") 'evilnc-comment-or-uncomment-lines)
|
||||
(global-set-key (kbd "s-<f12>") 'toggle-frame-fullscreen)
|
||||
|
||||
(global-set-key (kbd "C-;") 'eval-expression)
|
||||
(global-set-key (kbd "s-;") 'my/tmux-run)
|
||||
(global-set-key (kbd "s-:") 'my/tmux-paste)
|
||||
|
||||
;; Faster scrolling
|
||||
(mapc (lambda(map)
|
||||
(evil-define-key map my/mode-map (kbd "s-j") "5j")
|
||||
|
@ -33,17 +37,16 @@
|
|||
|
||||
(nmap my/mode-map
|
||||
;; Leader alternatives
|
||||
(kbd "s-f") 'projectile-find-file
|
||||
(kbd "s-t") 'projectile-find-file
|
||||
(kbd "s-F") 'projectile-ag
|
||||
(kbd "s-p") 'projectile-switch-project
|
||||
(kbd "s-m") 'my/recentf-ido-find-file
|
||||
(kbd "s-M") 'projectile-recentf
|
||||
(kbd "s-o") 'ido-find-file
|
||||
(kbd "s-O") 'open-major-mode-conf
|
||||
(kbd "s-d") 'dash-at-point
|
||||
(kbd "s-'") 'mc/mark-next-like-this
|
||||
(kbd "s-\"") 'mc/mark-previous-like-this
|
||||
(kbd "C-s-'") 'mc/mark-all-like-this
|
||||
(kbd "s-d") 'dash-at-point)
|
||||
(kbd "C-s-'") 'mc/mark-all-like-this)
|
||||
|
||||
(imap my/mode-map
|
||||
;; Textmate-esque insert-line before/after
|
||||
|
@ -56,19 +59,19 @@
|
|||
(kbd "<s-backspace>") 'backward-kill-line
|
||||
|
||||
;; Fixes delete
|
||||
(kbd "<kp-delete>") 'delete-char)))
|
||||
(kbd "<kp-delete>") 'delete-char)
|
||||
|
||||
(imap emmet-mode-keymap
|
||||
(kbd "s-e") 'emmet-expand-yas
|
||||
(kbd "s-E") 'emmet-expand-line)))
|
||||
|
||||
;; Local keymaps ;;;;;;;;;;;;;;;;
|
||||
(evil-leader/set-leader ",")
|
||||
(evil-leader/set-key
|
||||
"`" 'my/notes
|
||||
"'" 'mc/mark-next-like-this
|
||||
"\"" 'mc/mark-all-like-this
|
||||
"e" 'ido-find-file
|
||||
"E" 'my/initfiles
|
||||
"d" 'dash-at-point
|
||||
"f" 'projectile-find-file
|
||||
"F" 'projectile-ag
|
||||
"g" 'git-gutter:stage-hunk
|
||||
"G" 'git-gutter:revert-hunk
|
||||
"m" 'my/recentf-ido-find-file ; recent GLOBAL files
|
||||
|
@ -79,9 +82,8 @@
|
|||
";" 'helm-imenu
|
||||
":" 'my/ido-goto-symbol
|
||||
"," 'ido-switch-buffer
|
||||
"." 'projectile-find-file
|
||||
"=" 'align-regexp
|
||||
"x" 'my/kill-other-buffers
|
||||
"X" 'my/kill-all-buffers
|
||||
(kbd "RET") 'org-capture)
|
||||
|
||||
;; Remap ; to : - SPC and shift-SPC replace ; and , - have to use
|
||||
|
@ -90,10 +92,6 @@
|
|||
(define-key evil-visual-state-map ";" 'evil-ex)
|
||||
|
||||
(nmap my/mode-map
|
||||
(kbd "C-;") 'eval-expression ; Elisp command
|
||||
(kbd "s-;") 'my/tmux-run
|
||||
(kbd "s-:") 'my/tmux-paste
|
||||
|
||||
;; Moving rows rather than lines (in case of wrapping)
|
||||
"j" 'evil-next-visual-line
|
||||
"k" 'evil-previous-visual-line
|
||||
|
@ -174,12 +172,14 @@
|
|||
(evil-ex-define-cmd "retab" 'untabify) ; TODO: Implement proper retab defun
|
||||
(evil-ex-define-cmd "msg" 'view-echo-area-messages)
|
||||
(evil-ex-define-cmd "gtd" 'open-gtd)
|
||||
(evil-ex-define-cmd "notes" 'open-notes)
|
||||
(evil-ex-define-cmd "n[otes]" 'my/notes)
|
||||
(evil-ex-define-cmd "tcd" (λ (my/tmux-chdir (projectile-project-root))))
|
||||
(evil-ex-define-cmd "ag" 'projectile-ag)
|
||||
(evil-ex-define-cmd "el" 'my/initfiles)
|
||||
(evil-ex-define-cmd "ba" (lambda(bang) (interactive) (if bang (my/kill-all-buffers) (my/kill-other-buffers))))
|
||||
|
||||
;;;; Keymap fixes ;;;;;;;;;;;;;;;
|
||||
;; Make ESC quit all the things
|
||||
(nvmap my/mode-map [escape] 'keyboard-quit)
|
||||
(mapc (lambda (map)
|
||||
(define-key map [escape] 'minibuffer-quit))
|
||||
(list minibuffer-local-map
|
||||
|
@ -187,9 +187,9 @@
|
|||
minibuffer-local-completion-map
|
||||
minibuffer-local-must-match-map
|
||||
minibuffer-local-isearch-map))
|
||||
(global-set-key [escape] 'evil-exit-emacs-state)
|
||||
(define-key evil-emacs-state-map [escape] 'evil-exit-emacs-state)
|
||||
;; Close help window with escape
|
||||
(define-key global-map [escape] 'quit-window)
|
||||
(define-key help-mode-map [escape] 'kill-buffer-and-window)
|
||||
|
||||
;; Restore bash-esque keymaps in insert mode and the minibuffer
|
||||
(mapc (lambda (map)
|
||||
|
@ -197,7 +197,6 @@
|
|||
(define-key map (kbd "C-e") 'move-end-of-line)
|
||||
(define-key map (kbd "C-u") 'backward-kill-line))
|
||||
(list minibuffer-local-map minibuffer-local-ns-map evil-insert-state-map))
|
||||
|
||||
(define-key evil-insert-state-map (kbd "C-w") 'backward-kill-word)
|
||||
(define-key minibuffer-local-map (kbd "C-w") 'ido-delete-backward-word-updir)
|
||||
|
||||
|
@ -211,10 +210,6 @@
|
|||
(define-key ido-completion-map " " 'ido-exit-minibuffer)))
|
||||
|
||||
;;
|
||||
(defun backward-kill-line ()
|
||||
(interactive)
|
||||
(evil-delete (point-at-bol) (point)))
|
||||
|
||||
(defun minibuffer-quit ()
|
||||
"Abort recursive edit.
|
||||
In Delete Selection mode, if the mark is active, just deactivate it;
|
||||
|
@ -225,6 +220,10 @@
|
|||
(when (get-buffer "*Completions*") (delete-windows-on "*Completions*"))
|
||||
(abort-recursive-edit)))
|
||||
|
||||
(defun backward-kill-line ()
|
||||
(interactive)
|
||||
(evil-delete (point-at-bol) (point)))
|
||||
|
||||
;; Mimic expandtab in vim
|
||||
(defun backward-delete-whitespace-to-column ()
|
||||
"delete back to the previous column of whitespace, or as much whitespace as possible,
|
||||
|
@ -240,6 +239,5 @@ or just one char if that's not possible"
|
|||
(backward-delete-char-untabify (- (match-end 1) (match-beginning 1)))
|
||||
(call-interactively 'backward-delete-char-untabify))))))
|
||||
|
||||
|
||||
;;
|
||||
(provide 'core-keymaps)
|
||||
|
|
|
@ -9,7 +9,10 @@
|
|||
;; current subdir, instead of the current subdir of this dired buffer
|
||||
dired-dwim-target t))))
|
||||
|
||||
(use-package ag :ensure t :defer t)
|
||||
(use-package ag :ensure t :defer t
|
||||
:config
|
||||
(define-key ag-mode-map [escape] 'kill-buffer-and-window))
|
||||
|
||||
(use-package helm :ensure t :defer t)
|
||||
(use-package grizzl :ensure t :defer t)
|
||||
(use-package neotree :ensure t :commands (neotree-show neotree-hide neotree-toggle))
|
||||
|
|
|
@ -30,19 +30,23 @@
|
|||
(setq web-mode-ac-sources-alist
|
||||
'(("css" . (ac-source-css-property))))
|
||||
|
||||
(setq web-mode-markup-indent-offset 4)
|
||||
(setq web-mode-css-indent-offset 4)
|
||||
(setq web-mode-code-indent-offset 4)
|
||||
(setq web-mode-markup-indent-offset 4
|
||||
web-mode-css-indent-offset 4
|
||||
web-mode-code-indent-offset 4)
|
||||
|
||||
(nvmap web-mode-map "]a" 'web-mode-attribute-next)
|
||||
(nvmap web-mode-map "]t" 'web-mode-tag-next)
|
||||
(nvmap web-mode-map "[t" 'web-mode-tag-previous)
|
||||
(nvmap web-mode-map "]T" 'web-mode-element-child)
|
||||
(nvmap web-mode-map "[T" 'web-mode-element-parent)
|
||||
(nmap web-mode-map "zf" 'web-mode-fold-or-unfold)
|
||||
(nmap web-mode-map ",t" 'web-mode-element-rename)
|
||||
(nvmap web-mode-map
|
||||
"]a" 'web-mode-attribute-next
|
||||
"]t" 'web-mode-tag-next
|
||||
"[t" 'web-mode-tag-previous
|
||||
"]T" 'web-mode-element-child
|
||||
"[T" 'web-mode-element-parent)
|
||||
|
||||
(nmap web-mode-map
|
||||
"zf" 'web-mode-fold-or-unfold
|
||||
",ct" 'web-mode-element-rename)
|
||||
|
||||
(define-key web-mode-map (kbd "s-/") 'web-mode-comment-or-uncomment)
|
||||
|
||||
(add-hook 'web-mode-hook 'jekyll-mode-maybe)))
|
||||
|
||||
(use-package tern :ensure t
|
||||
|
@ -58,17 +62,13 @@
|
|||
(lambda ()
|
||||
(tern-mode t)
|
||||
(tern-ac-setup)
|
||||
(imap js-mode-map (kbd "C-SPC") 'tern-ac-complete)
|
||||
)))
|
||||
(imap js-mode-map (kbd "C-SPC") 'tern-ac-complete
|
||||
))))
|
||||
|
||||
(use-package emmet-mode :ensure t
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(imap emmet-mode-keymap (kbd "s-e") 'emmet-expand-yas)
|
||||
(imap emmet-mode-keymap (kbd "s-E") 'emmet-expand-line)
|
||||
|
||||
(setq emmet-move-cursor-between-quotes t))
|
||||
(setq emmet-move-cursor-between-quotes t)
|
||||
:init
|
||||
(progn
|
||||
(add-hook 'scss-mode-hook 'emmet-mode)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue