Implement Cask file & general cleanup
This commit is contained in:
parent
b3e5d578cd
commit
42394b5e92
22 changed files with 224 additions and 170 deletions
89
Cask
Normal file
89
Cask
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
(source melpa)
|
||||||
|
(source org)
|
||||||
|
(source marmalade)
|
||||||
|
(source gnu)
|
||||||
|
|
||||||
|
;; Essentials
|
||||||
|
(depends-on "cask")
|
||||||
|
(depends-on "dash")
|
||||||
|
(depends-on "s")
|
||||||
|
(depends-on "f")
|
||||||
|
(depends-on "deferred")
|
||||||
|
(depends-on "exec-path-from-shell")
|
||||||
|
(depends-on "use-package")
|
||||||
|
|
||||||
|
;; Editing
|
||||||
|
(depends-on "autopair")
|
||||||
|
(depends-on "expand-region")
|
||||||
|
(depends-on "flycheck")
|
||||||
|
(depends-on "flyspell")
|
||||||
|
(depends-on "multiple-cursors")
|
||||||
|
(depends-on "rainbow-delimiters")
|
||||||
|
(depends-on "autopair")
|
||||||
|
(depends-on "anzu")
|
||||||
|
(depends-on "key-chord")
|
||||||
|
(depends-on "saveplace")
|
||||||
|
(depends-on "yasnippet")
|
||||||
|
(depends-on "highlight-indentation" :git "https://github.com/hlissner/Highlight-Indentation-for-Emacs")
|
||||||
|
(depends-on "git-gutter-fringe")
|
||||||
|
(depends-on "popwin")
|
||||||
|
(depends-on "dash-at-point")
|
||||||
|
(depends-on "auto-complete")
|
||||||
|
(depends-on "auto-complete-clang")
|
||||||
|
(depends-on "auto-complete-c-headers")
|
||||||
|
|
||||||
|
;; Eeeevil
|
||||||
|
(depends-on "evil")
|
||||||
|
(depends-on "evil-matchit")
|
||||||
|
(depends-on "evil-surround")
|
||||||
|
(depends-on "evil-numbers")
|
||||||
|
(depends-on "evil-exchange")
|
||||||
|
(depends-on "evil-space")
|
||||||
|
(depends-on "evil-visualstar")
|
||||||
|
(depends-on "evil-nerd-commenter")
|
||||||
|
|
||||||
|
;; Project management
|
||||||
|
(depends-on "projectile")
|
||||||
|
(depends-on "helm")
|
||||||
|
(depends-on "smex")
|
||||||
|
(depends-on "ag")
|
||||||
|
(depends-on "grizzl")
|
||||||
|
(depends-on "neotree")
|
||||||
|
(depends-on "ido-ubiquitous")
|
||||||
|
(depends-on "ido-vertical-mode")
|
||||||
|
(depends-on "flx-ido")
|
||||||
|
|
||||||
|
;; Modes/mode-specific
|
||||||
|
(depends-on "org-plus-contrib")
|
||||||
|
(depends-on "org-opml" :git "https://github.com/edavis/org-opml")
|
||||||
|
|
||||||
|
(depends-on "rainbow-mode")
|
||||||
|
(depends-on "web-mode")
|
||||||
|
(depends-on "lua-mode")
|
||||||
|
(depends-on "php-mode")
|
||||||
|
(depends-on "emmet-mode")
|
||||||
|
(depends-on "haml-mode")
|
||||||
|
(depends-on "scss-mode")
|
||||||
|
(depends-on "sws-mode")
|
||||||
|
(depends-on "json-mode")
|
||||||
|
(depends-on "yaml-mode")
|
||||||
|
(depends-on "markdown-mode")
|
||||||
|
(depends-on "glsl-mode")
|
||||||
|
|
||||||
|
(depends-on "tern")
|
||||||
|
(depends-on "tern-auto-complete")
|
||||||
|
|
||||||
|
(depends-on "rbenv")
|
||||||
|
(depends-on "inf-ruby")
|
||||||
|
(depends-on "ac-inf-ruby")
|
||||||
|
|
||||||
|
(depends-on "jedi")
|
||||||
|
|
||||||
|
(depends-on "omnisharp")
|
||||||
|
(depends-on "csharp-mode")
|
||||||
|
(depends-on "emacs-eclim")
|
||||||
|
|
||||||
|
(depends-on "git-commit-mode")
|
||||||
|
(depends-on "git-rebase-mode")
|
||||||
|
(depends-on "gitconfig-mode")
|
||||||
|
(depends-on "gitignore-mode")
|
13
init.el
13
init.el
|
@ -3,16 +3,20 @@
|
||||||
;; Author: Henrik Lissner <henrik@lissner>
|
;; Author: Henrik Lissner <henrik@lissner>
|
||||||
;; URL: https://github.com/hlissner/emacs.d
|
;; URL: https://github.com/hlissner/emacs.d
|
||||||
;;
|
;;
|
||||||
;; These settings set up a very vim-like experience, with some of emacs goodness
|
;; These settings set up a vim-like experience, with some of emacs
|
||||||
;; squeezed into the cracks.
|
;; goodness squeezed into the cracks.
|
||||||
;;
|
;;
|
||||||
;;; Code:
|
;;; Code:
|
||||||
|
|
||||||
(cd "~") ; Default directory, instead of /
|
(cd "~") ; Default directory, instead of /
|
||||||
;; (setq use-package-verbose t)
|
;; (setq use-package-verbose t)
|
||||||
|
|
||||||
(server-mode t)
|
(require 'cask)
|
||||||
(unless (server-running-p) (server-start))
|
(cask-initialize)
|
||||||
|
|
||||||
|
(when window-system
|
||||||
|
(server-mode t)
|
||||||
|
(unless (server-running-p) (server-start)))
|
||||||
|
|
||||||
;; Global vars
|
;; Global vars
|
||||||
(defconst my/dir (file-name-directory load-file-name))
|
(defconst my/dir (file-name-directory load-file-name))
|
||||||
|
@ -24,6 +28,7 @@
|
||||||
|
|
||||||
(defconst my/theme 'brin)
|
(defconst my/theme 'brin)
|
||||||
(defconst my/font "Inconsolata-14")
|
(defconst my/font "Inconsolata-14")
|
||||||
|
;; (defconst my/font "Ubuntu-Mono-16")
|
||||||
|
|
||||||
(add-to-list 'load-path my/init-dir)
|
(add-to-list 'load-path my/init-dir)
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,6 @@
|
||||||
;;;; Editor behavior ;;;;;;;;;;;;;;;;
|
;;;; Editor behavior ;;;;;;;;;;;;;;;;
|
||||||
;; (electric-indent-mode +1) ; auto-indent on RET
|
|
||||||
;; (defun disable-electric-indent-mode ()
|
|
||||||
;; (set (make-local-variable 'electric-indent-mode) nil)
|
|
||||||
;; (setq-local tab-always-indent t))
|
|
||||||
|
|
||||||
;; ;; Only enable electric-mode in programming languages
|
|
||||||
;; (add-hook 'text-mode-hook 'disable-electric-indent-mode)
|
|
||||||
;; (add-hook 'org-mode-hook 'disable-electric-indent-mode)
|
|
||||||
;; (add-hook 'markdown-mode-hook 'disable-electric-indent-mode)
|
|
||||||
|
|
||||||
;; (global-hl-line-mode +1) ; highlight the line
|
|
||||||
(blink-cursor-mode -1)
|
(blink-cursor-mode -1)
|
||||||
|
|
||||||
(setq-default
|
(setq-default
|
||||||
tab-width 4 ; set tab width to 4 for all buffers
|
tab-width 4 ; set tab width to 4 for all buffers
|
||||||
indent-tabs-mode nil ; use tabs, not spaces
|
indent-tabs-mode nil ; use tabs, not spaces
|
||||||
|
@ -22,36 +12,41 @@
|
||||||
(add-hook 'before-save-hook 'delete-trailing-whitespace)
|
(add-hook 'before-save-hook 'delete-trailing-whitespace)
|
||||||
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
|
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
|
||||||
|
|
||||||
;;;; Plugins ;;;;;;;;;;;;;;;;;;;;;;;;
|
;; All this just to show errant tab characters
|
||||||
(use-package deferred :ensure t :defer t)
|
(add-hook 'font-lock-mode-hook
|
||||||
(use-package helm :ensure t :defer t)
|
(function
|
||||||
(use-package ediff :ensure t :defer t)
|
(lambda ()
|
||||||
|
(setq font-lock-keywords
|
||||||
|
(append font-lock-keywords
|
||||||
|
'(("\r" (0 'my-carriage-return-face t))
|
||||||
|
("\t" (0 'my-tab-face t))))))))
|
||||||
|
(setq whitespace-style (quote (face trailing tab-mark)))
|
||||||
|
(setq whitespace-display-mappings '((tab-mark 9 [?> 9] [92 9])))
|
||||||
|
(add-hook 'find-file-hook 'whitespace-mode)
|
||||||
|
|
||||||
(use-package evil :ensure t
|
;;;; Plugins ;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
(use-package highlight-indentation
|
||||||
|
:init
|
||||||
|
(add-hook 'prog-mode-hook 'highlight-indentation-mode))
|
||||||
|
|
||||||
|
(use-package evil
|
||||||
:diminish undo-tree-mode
|
:diminish undo-tree-mode
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
;; (setq evil-want-C-i-jump t)
|
|
||||||
;; (setq evil-want-C-u-scroll t)
|
|
||||||
|
|
||||||
(evil-mode 1)
|
(evil-mode 1)
|
||||||
|
|
||||||
(use-package evil-leader :ensure t)
|
(use-package evil-matchit)
|
||||||
(use-package evil-matchit :ensure t)
|
(use-package evil-surround)
|
||||||
(use-package evil-surround :ensure t)
|
(use-package evil-numbers)
|
||||||
(use-package evil-numbers :ensure t)
|
(use-package evil-exchange)
|
||||||
(use-package evil-exchange :ensure t)
|
(use-package evil-space)
|
||||||
(use-package evil-space :ensure t)
|
(use-package evil-visualstar)
|
||||||
(use-package evil-visualstar :ensure t)
|
(use-package evil-nerd-commenter)
|
||||||
(use-package evil-nerd-commenter :ensure t)
|
|
||||||
(use-package evil-ex-registers)
|
(use-package evil-ex-registers)
|
||||||
|
|
||||||
;; To get evil-leader mappings to work in the messages buffer...
|
;; To get evil-leader mappings to work in the messages buffer...
|
||||||
(kill-buffer "*Messages*")
|
(kill-buffer "*Messages*")
|
||||||
|
|
||||||
(setq evil-leader/in-all-states t)
|
|
||||||
|
|
||||||
(global-evil-leader-mode 1)
|
|
||||||
(global-evil-matchit-mode 1)
|
(global-evil-matchit-mode 1)
|
||||||
(global-evil-surround-mode 1)
|
(global-evil-surround-mode 1)
|
||||||
|
|
||||||
|
@ -69,15 +64,15 @@
|
||||||
;; Enable registers in ex-mode
|
;; Enable registers in ex-mode
|
||||||
(define-key evil-ex-completion-map (kbd "C-r") #'evil-ex-paste-from-register)))
|
(define-key evil-ex-completion-map (kbd "C-r") #'evil-ex-paste-from-register)))
|
||||||
|
|
||||||
;; (use-package rainbow-mode :ensure t :defer t)
|
(use-package rainbow-delimiters
|
||||||
(use-package rainbow-delimiters :ensure t
|
|
||||||
:commands rainbow-delimiters-mode
|
:commands rainbow-delimiters-mode
|
||||||
:init (add-hook 'prog-mode-hook 'rainbow-delimiters-mode))
|
:init (add-hook 'prog-mode-hook 'rainbow-delimiters-mode))
|
||||||
|
|
||||||
(use-package rotate-text :commands (rotate-word-at-point rotate-region))
|
(use-package rotate-text
|
||||||
|
:commands (rotate-word-at-point rotate-region))
|
||||||
|
|
||||||
;;;; Init plugins ;;;;;;;;;;;;;;;;;;;
|
;;;; Init plugins ;;;;;;;;;;;;;;;;;;;
|
||||||
(use-package autopair :ensure t
|
(use-package autopair
|
||||||
:diminish autopair-mode
|
:diminish autopair-mode
|
||||||
:init
|
:init
|
||||||
(progn (autopair-global-mode)
|
(progn (autopair-global-mode)
|
||||||
|
@ -85,11 +80,13 @@
|
||||||
;; disable blink-matching-paren
|
;; disable blink-matching-paren
|
||||||
(setq blink-matching-paren nil)))
|
(setq blink-matching-paren nil)))
|
||||||
|
|
||||||
(use-package anzu :ensure t
|
(use-package anzu
|
||||||
:diminish anzu-mode
|
:diminish anzu-mode
|
||||||
:init (global-anzu-mode))
|
:init (global-anzu-mode))
|
||||||
|
|
||||||
(use-package key-chord :ensure t
|
(use-package expand-region)
|
||||||
|
|
||||||
|
(use-package key-chord
|
||||||
:init
|
:init
|
||||||
(progn (key-chord-mode 1)
|
(progn (key-chord-mode 1)
|
||||||
(setq key-chord-two-keys-delay 0.5)))
|
(setq key-chord-two-keys-delay 0.5)))
|
||||||
|
@ -110,7 +107,7 @@
|
||||||
savehist-file (expand-file-name "savehist" my/tmp-dir))
|
savehist-file (expand-file-name "savehist" my/tmp-dir))
|
||||||
(savehist-mode 1)))
|
(savehist-mode 1)))
|
||||||
|
|
||||||
(use-package multiple-cursors :ensure t
|
(use-package multiple-cursors
|
||||||
:commands (mc/mark-next-like-this mc/mark-previous-like-this mc/mark-all-like-this)
|
:commands (mc/mark-next-like-this mc/mark-previous-like-this mc/mark-all-like-this)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
@ -119,7 +116,7 @@
|
||||||
(defadvice keyboard-quit (around mc-and-keyboard-quit activate)
|
(defadvice keyboard-quit (around mc-and-keyboard-quit activate)
|
||||||
(mc/keyboard-quit) ad-do-it)))
|
(mc/keyboard-quit) ad-do-it)))
|
||||||
|
|
||||||
(use-package smex :ensure t
|
(use-package smex
|
||||||
:commands (smex smex-major-mode-commands)
|
:commands (smex smex-major-mode-commands)
|
||||||
:config
|
:config
|
||||||
(progn (smex-initialize)
|
(progn (smex-initialize)
|
||||||
|
@ -128,7 +125,7 @@
|
||||||
(when (boundp 'smex-cache) (smex-update)))
|
(when (boundp 'smex-cache) (smex-update)))
|
||||||
(add-hook 'after-load-functions 'smex-update-after-load)))
|
(add-hook 'after-load-functions 'smex-update-after-load)))
|
||||||
|
|
||||||
(use-package recentf :ensure t
|
(use-package recentf
|
||||||
:init
|
:init
|
||||||
(progn (recentf-mode 1)
|
(progn (recentf-mode 1)
|
||||||
(add-to-list 'recentf-exclude "\\.ido\\.last\\'")
|
(add-to-list 'recentf-exclude "\\.ido\\.last\\'")
|
||||||
|
|
|
@ -44,6 +44,7 @@
|
||||||
(kbd "s-M") 'projectile-recentf
|
(kbd "s-M") 'projectile-recentf
|
||||||
(kbd "s-o") 'ido-find-file
|
(kbd "s-o") 'ido-find-file
|
||||||
(kbd "s-d") 'dash-at-point
|
(kbd "s-d") 'dash-at-point
|
||||||
|
|
||||||
(kbd "s-'") 'mc/mark-next-like-this
|
(kbd "s-'") 'mc/mark-next-like-this
|
||||||
(kbd "s-\"") 'mc/mark-previous-like-this
|
(kbd "s-\"") 'mc/mark-previous-like-this
|
||||||
(kbd "C-s-'") 'mc/mark-all-like-this)
|
(kbd "C-s-'") 'mc/mark-all-like-this)
|
||||||
|
@ -66,25 +67,25 @@
|
||||||
(kbd "s-E") 'emmet-expand-line)))
|
(kbd "s-E") 'emmet-expand-line)))
|
||||||
|
|
||||||
;; Local keymaps ;;;;;;;;;;;;;;;;
|
;; Local keymaps ;;;;;;;;;;;;;;;;
|
||||||
(evil-leader/set-leader ",")
|
(nmap my/mode-map
|
||||||
(evil-leader/set-key
|
",'" 'mc/mark-next-like-this
|
||||||
"'" 'mc/mark-next-like-this
|
",\"" 'mc/mark-all-like-this
|
||||||
"\"" 'mc/mark-all-like-this
|
|
||||||
"e" 'ido-find-file
|
",e" 'ido-find-file
|
||||||
"E" 'my/initfiles
|
",E" 'my/initfiles
|
||||||
"g" 'git-gutter:stage-hunk
|
",g" 'git-gutter:stage-hunk
|
||||||
"G" 'git-gutter:revert-hunk
|
",G" 'git-gutter:revert-hunk
|
||||||
"m" 'my/recentf-ido-find-file ; recent GLOBAL files
|
",m" 'my/recentf-ido-find-file ; recent GLOBAL files
|
||||||
"M" 'projectile-recentf ; recent PROJECT files
|
",M" 'projectile-recentf ; recent PROJECT files
|
||||||
"p" 'projectile-switch-project
|
",p" 'projectile-switch-project
|
||||||
"\\" 'neotree-show
|
",\\" 'neotree-show
|
||||||
"|" 'neotree-hide
|
",|" 'neotree-hide
|
||||||
";" 'helm-imenu
|
",;" 'helm-imenu
|
||||||
":" 'my/ido-goto-symbol
|
",:" 'my/ido-goto-symbol
|
||||||
"," 'ido-switch-buffer
|
",," 'ido-switch-buffer
|
||||||
"." 'projectile-find-file
|
",." 'projectile-find-file
|
||||||
"=" 'align-regexp
|
",=" 'align-regexp
|
||||||
(kbd "RET") 'org-capture)
|
(kbd ", RET") 'org-capture)
|
||||||
|
|
||||||
;; Remap ; to : - SPC and shift-SPC replace ; and , - have to use
|
;; Remap ; to : - SPC and shift-SPC replace ; and , - have to use
|
||||||
;; define-key instead of n/vmap for this one to register.
|
;; define-key instead of n/vmap for this one to register.
|
||||||
|
@ -125,7 +126,10 @@
|
||||||
;; vnoremap > >gv
|
;; vnoremap > >gv
|
||||||
">" (λ (evil-shift-right (region-beginning) (region-end))
|
">" (λ (evil-shift-right (region-beginning) (region-end))
|
||||||
(evil-normal-state)
|
(evil-normal-state)
|
||||||
(evil-visual-restore)))
|
(evil-visual-restore))
|
||||||
|
|
||||||
|
"+" 'er/expand-region
|
||||||
|
"_" 'er/contract-region)
|
||||||
|
|
||||||
(imap my/mode-map
|
(imap my/mode-map
|
||||||
;; Make DEL act like expandtab in vim
|
;; Make DEL act like expandtab in vim
|
||||||
|
@ -188,8 +192,9 @@
|
||||||
minibuffer-local-must-match-map
|
minibuffer-local-must-match-map
|
||||||
minibuffer-local-isearch-map))
|
minibuffer-local-isearch-map))
|
||||||
(define-key evil-emacs-state-map [escape] 'evil-exit-emacs-state)
|
(define-key evil-emacs-state-map [escape] 'evil-exit-emacs-state)
|
||||||
;; Close help window with escape
|
;; Close help/compilation windows with escape
|
||||||
(define-key help-mode-map [escape] 'kill-buffer-and-window)
|
(define-key help-mode-map [escape] 'kill-buffer-and-window)
|
||||||
|
(define-key compilation-mode-map [escape] 'kill-buffer-and-window)
|
||||||
|
|
||||||
;; Restore bash-esque keymaps in insert mode and the minibuffer
|
;; Restore bash-esque keymaps in insert mode and the minibuffer
|
||||||
(mapc (lambda (map)
|
(mapc (lambda (map)
|
||||||
|
|
|
@ -7,8 +7,8 @@
|
||||||
(setq ns-pop-up-frames nil)
|
(setq ns-pop-up-frames nil)
|
||||||
|
|
||||||
;; fix emacs PATH on OSX
|
;; fix emacs PATH on OSX
|
||||||
(use-package exec-path-from-shell :ensure t
|
(use-package exec-path-from-shell
|
||||||
:if window-system
|
:if (memq window-system '(mac ns))
|
||||||
:init (exec-path-from-shell-initialize))
|
:init (exec-path-from-shell-initialize))
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -1,37 +1,23 @@
|
||||||
|
|
||||||
;; (require 'cl)
|
|
||||||
|
|
||||||
;; Package management bootstrap
|
;; Package management bootstrap
|
||||||
(setq package-enable-at-startup nil
|
(setq package-enable-at-startup nil
|
||||||
package-archives
|
;; package-archives
|
||||||
'(("melpa" . "http://melpa.milkbox.net/packages/")
|
;; '(("melpa" . "http://melpa.milkbox.net/packages/")
|
||||||
("org" . "http://orgmode.org/elpa/")
|
;; ("org" . "http://orgmode.org/elpa/")
|
||||||
("marmalade" . "http://marmalade-repo.org/packages/")
|
;; ("marmalade" . "http://marmalade-repo.org/packages/")
|
||||||
("gnu" . "http://elpa.gnu.org/packages/"))
|
;; ("gnu" . "http://elpa.gnu.org/packages/"))
|
||||||
package-archive-exclude-alist
|
package-archive-exclude-alist
|
||||||
'(("melpa" org-trello)
|
'(("melpa" org-trello)
|
||||||
("melpa" org)
|
("melpa" org)
|
||||||
("marmalade" org)
|
("marmalade" org)
|
||||||
("gnu" org))
|
("gnu" org)))
|
||||||
)
|
|
||||||
|
|
||||||
(let ((default-directory my/elisp-dir))
|
(let ((default-directory my/elisp-dir))
|
||||||
(normal-top-level-add-to-load-path '("."))
|
(normal-top-level-add-to-load-path '("."))
|
||||||
(normal-top-level-add-subdirs-to-load-path))
|
(normal-top-level-add-subdirs-to-load-path))
|
||||||
|
|
||||||
(eval-and-compile
|
;; (package-initialize)
|
||||||
(package-initialize)
|
(require 'use-package)
|
||||||
(require 'use-package))
|
(require 'diminish)
|
||||||
|
|
||||||
;; Check if a package is installed; if load is t, load it too.
|
|
||||||
;; Works for packages bundled with emacs too!
|
|
||||||
(defun my/install-package (package)
|
|
||||||
(message "=> checking: %s" package)
|
|
||||||
(unless (package-installed-p package)
|
|
||||||
(message "=> installing: %s" package)
|
|
||||||
(package-install package)))
|
|
||||||
|
|
||||||
(use-package diminish :ensure t)
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
(provide 'core-packages)
|
(provide 'core-packages)
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
(setq frame-title-format
|
(setq frame-title-format
|
||||||
'(:eval (if (buffer-file-name) (abbreviate-file-name (buffer-file-name)) "%b")))
|
'(:eval (if (buffer-file-name) (abbreviate-file-name (buffer-file-name)) "%b")))
|
||||||
|
|
||||||
|
|
||||||
;;;; GUI Settings ;;;;;;;;;;;;;;;;;;;;;
|
;;;; GUI Settings ;;;;;;;;;;;;;;;;;;;;;
|
||||||
(setq ring-bell-function 'ignore)
|
(setq ring-bell-function 'ignore)
|
||||||
(add-to-list 'default-frame-alist `(font . ,my/font))
|
(add-to-list 'default-frame-alist `(font . ,my/font))
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
auto-save-default nil) ; Don't want any auto saving
|
auto-save-default nil) ; Don't want any auto saving
|
||||||
(fset 'yes-or-no-p 'y-or-n-p) ; y/n instead of yes/no
|
(fset 'yes-or-no-p 'y-or-n-p) ; y/n instead of yes/no
|
||||||
(setq confirm-kill-emacs nil)
|
(setq confirm-kill-emacs nil)
|
||||||
|
(setq echo-keystrokes 0.02)
|
||||||
|
|
||||||
;; Sane scroll settings
|
;; Sane scroll settings
|
||||||
(setq scroll-margin 3
|
(setq scroll-margin 3
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(use-package auto-complete :ensure t
|
(use-package auto-complete
|
||||||
:diminish auto-complete-mode
|
:diminish auto-complete-mode
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
(add-to-list 'ac-dictionary-files "~/.emacs.d/ac-dict/global")
|
(add-to-list 'ac-dictionary-files "~/.emacs.d/ac-dict/global")
|
||||||
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
|
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
|
||||||
|
|
||||||
|
(imap ac-mode-map (kbd "C-x C-f") 'ac-complete-filename)
|
||||||
(imap ac-mode-map (kbd "C-SPC") 'auto-complete)
|
(imap ac-mode-map (kbd "C-SPC") 'auto-complete)
|
||||||
;; (imap ac-mode-map (kbd "C-S-SPC") 'auto-complete)
|
;; (imap ac-mode-map (kbd "C-S-SPC") 'auto-complete)
|
||||||
(define-key ac-completing-map (kbd "<tab>") 'ac-expand)
|
(define-key ac-completing-map (kbd "<tab>") 'ac-expand)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(use-package flycheck :ensure t
|
(use-package flycheck
|
||||||
:init (add-hook 'after-init-hook #'global-flycheck-mode)
|
:init (add-hook 'after-init-hook #'global-flycheck-mode)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
@ -7,7 +7,7 @@
|
||||||
(setq flycheck-indication-mode 'right-fringe)
|
(setq flycheck-indication-mode 'right-fringe)
|
||||||
(setq-default flycheck-disabled-checkers '(emacs-lisp-checkdoc))))
|
(setq-default flycheck-disabled-checkers '(emacs-lisp-checkdoc))))
|
||||||
|
|
||||||
(use-package flyspell :ensure t
|
(use-package flyspell
|
||||||
:commands flyspell-mode
|
:commands flyspell-mode
|
||||||
:diminish (flyspell-mode . " @")
|
:diminish (flyspell-mode . " @")
|
||||||
:config
|
:config
|
||||||
|
|
|
@ -1,26 +1,26 @@
|
||||||
(use-package git-commit-mode :ensure t
|
(use-package git-commit-mode
|
||||||
:mode (("/COMMIT_EDITMSG\\'" . git-commit-mode)
|
:mode (("/COMMIT_EDITMSG\\'" . git-commit-mode)
|
||||||
("/NOTES_EDITMSG\\'" . git-commit-mode)
|
("/NOTES_EDITMSG\\'" . git-commit-mode)
|
||||||
("/MERGE_MSG\\'" . git-commit-mode)
|
("/MERGE_MSG\\'" . git-commit-mode)
|
||||||
("/TAG_EDITMSG\\'" . git-commit-mode)
|
("/TAG_EDITMSG\\'" . git-commit-mode)
|
||||||
("/PULLREQ_EDITMSG\\'" . git-commit-mode)))
|
("/PULLREQ_EDITMSG\\'" . git-commit-mode)))
|
||||||
|
|
||||||
(use-package git-rebase-mode :ensure t
|
(use-package git-rebase-mode
|
||||||
:mode ("/git-rebase-todo\\'" . git-rebase-mode))
|
:mode ("/git-rebase-todo\\'" . git-rebase-mode))
|
||||||
|
|
||||||
(use-package gitconfig-mode :ensure t
|
(use-package gitconfig-mode
|
||||||
:mode (("/\\.gitconfig\\'" . gitconfig-mode)
|
:mode (("/\\.gitconfig\\'" . gitconfig-mode)
|
||||||
("/\\.git/config\\'" . gitconfig-mode)
|
("/\\.git/config\\'" . gitconfig-mode)
|
||||||
("/git/config\\'" . gitconfig-mode)
|
("/git/config\\'" . gitconfig-mode)
|
||||||
("/\\.gitmodules\\'" . gitconfig-mode))
|
("/\\.gitmodules\\'" . gitconfig-mode))
|
||||||
:config (add-hook 'gitconfig-mode-hook 'flyspell-mode))
|
:config (add-hook 'gitconfig-mode-hook 'flyspell-mode))
|
||||||
|
|
||||||
(use-package gitignore-mode :ensure t
|
(use-package gitignore-mode
|
||||||
:mode (("/\\.gitignore\\'" . gitignore-mode)
|
:mode (("/\\.gitignore\\'" . gitignore-mode)
|
||||||
("/\\.git/info/exclude\\'" . gitignore-mode)
|
("/\\.git/info/exclude\\'" . gitignore-mode)
|
||||||
("/git/ignore\\'" . gitignore-mode)))
|
("/git/ignore\\'" . gitignore-mode)))
|
||||||
|
|
||||||
(use-package git-gutter-fringe :ensure t
|
(use-package git-gutter-fringe
|
||||||
:diminish git-gutter-mode
|
:diminish git-gutter-mode
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
(add-hook 'dired-load-hook
|
(add-hook 'dired-load-hook
|
||||||
(lambda()
|
(lambda()
|
||||||
(use-package dired+ :ensure t :config
|
(use-package dired+ :config
|
||||||
(setq dired-recursive-deletes 'always
|
(setq dired-recursive-deletes 'always
|
||||||
dired-recursive-copies 'always
|
dired-recursive-copies 'always
|
||||||
|
|
||||||
|
@ -9,15 +9,15 @@
|
||||||
;; current subdir, instead of the current subdir of this dired buffer
|
;; current subdir, instead of the current subdir of this dired buffer
|
||||||
dired-dwim-target t))))
|
dired-dwim-target t))))
|
||||||
|
|
||||||
(use-package ag :ensure t :defer t
|
(use-package ag :defer t
|
||||||
:config
|
:config
|
||||||
(define-key ag-mode-map [escape] 'kill-buffer-and-window))
|
(define-key ag-mode-map [escape] 'kill-buffer-and-window))
|
||||||
|
|
||||||
(use-package helm :ensure t :defer t)
|
(use-package helm :defer t)
|
||||||
(use-package grizzl :ensure t :defer t)
|
(use-package grizzl :defer t)
|
||||||
(use-package neotree :ensure t :commands (neotree-show neotree-hide neotree-toggle))
|
(use-package neotree :commands (neotree-show neotree-hide neotree-toggle))
|
||||||
|
|
||||||
(use-package projectile :ensure t
|
(use-package projectile
|
||||||
:diminish projectile-mode
|
:diminish projectile-mode
|
||||||
:config
|
:config
|
||||||
(progn (projectile-global-mode)
|
(progn (projectile-global-mode)
|
||||||
|
@ -42,14 +42,15 @@
|
||||||
(set-keymap-parent ido-buffer-completion-map ido-common-completion-map))
|
(set-keymap-parent ido-buffer-completion-map ido-common-completion-map))
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(use-package ido-ubiquitous)
|
||||||
|
(use-package ido-vertical-mode)
|
||||||
|
(use-package flx-ido)
|
||||||
|
|
||||||
(ido-mode 1)
|
(ido-mode 1)
|
||||||
|
(ido-vertical-mode 1)
|
||||||
(use-package ido-ubiquitous :ensure t)
|
|
||||||
(use-package ido-vertical-mode :ensure t :config (ido-vertical-mode 1))
|
|
||||||
|
|
||||||
(ido-everywhere 1)
|
(ido-everywhere 1)
|
||||||
|
(ido-ubiquitous-mode 1)
|
||||||
(use-package flx-ido :ensure t :config (flx-ido-mode 1))
|
(flx-ido-mode 1)
|
||||||
|
|
||||||
(add-to-list 'ido-ignore-files "\\`.DS_Store\\'")
|
(add-to-list 'ido-ignore-files "\\`.DS_Store\\'")
|
||||||
(setq ido-use-faces nil
|
(setq ido-use-faces nil
|
||||||
|
@ -60,37 +61,7 @@
|
||||||
ido-create-new-buffer 'always
|
ido-create-new-buffer 'always
|
||||||
ido-enable-tramp-completion t
|
ido-enable-tramp-completion t
|
||||||
ido-enable-last-directory-history t)
|
ido-enable-last-directory-history t)
|
||||||
|
))
|
||||||
;; (add-to-list 'ido-ubiquitous-default-function-overrides '(disable exact "evil-ex"))
|
|
||||||
|
|
||||||
;; Filters ido-matches setting acronynm matches in front of the results
|
|
||||||
(defadvice ido-set-matches-1 (after ido-smex-acronym-matches activate)
|
|
||||||
(if (and (fboundp 'smex-already-running) (smex-already-running)
|
|
||||||
(> (length ido-text) 1))
|
|
||||||
(let ((regex (concat "^" (mapconcat 'char-to-string ido-text "[^-]*-")))
|
|
||||||
(acronym-matches (list))
|
|
||||||
(remove-regexes '("-menu-")))
|
|
||||||
;; Creating the list of the results to be set as first
|
|
||||||
(dolist (item items)
|
|
||||||
(if (string-match (concat regex "[^-]*$") item) ;; strict match
|
|
||||||
(add-to-list 'acronym-matches item)
|
|
||||||
(if (string-match regex item) ;; appending relaxed match
|
|
||||||
(add-to-list 'acronym-matches item t))))
|
|
||||||
|
|
||||||
;; Filtering ad-return-value
|
|
||||||
(dolist (to_remove remove-regexes)
|
|
||||||
(setq ad-return-value
|
|
||||||
(delete-if (lambda (item)
|
|
||||||
(string-match to_remove item))
|
|
||||||
ad-return-value)))
|
|
||||||
|
|
||||||
;; Creating resulting list
|
|
||||||
(setq ad-return-value
|
|
||||||
(append acronym-matches
|
|
||||||
ad-return-value))
|
|
||||||
|
|
||||||
(delete-dups ad-return-value)
|
|
||||||
(reverse ad-return-value))))))
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
(provide 'init-project)
|
(provide 'init-project)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(use-package yasnippet :ensure t
|
(use-package yasnippet
|
||||||
:diminish (yas-minor-mode . " $")
|
:diminish (yas-minor-mode . " $")
|
||||||
:mode (("emacs.+/snippets/" . snippet-mode))
|
:mode (("emacs.+/snippets/" . snippet-mode))
|
||||||
:pre-load (progn
|
:pre-load (progn
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
|
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
|
||||||
(add-hook 'c-mode-common-hook
|
(add-hook 'c-mode-common-hook
|
||||||
(lambda()
|
(lambda()
|
||||||
(use-package auto-complete-clang :ensure t)
|
(use-package auto-complete-clang)
|
||||||
(use-package auto-complete-c-headers :ensure t)
|
(use-package auto-complete-c-headers)
|
||||||
|
|
||||||
(setq ac-sources
|
(setq ac-sources
|
||||||
'(ac-source-clang
|
'(ac-source-clang
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
ac-source-words-in-same-mode-buffers
|
ac-source-words-in-same-mode-buffers
|
||||||
))))
|
))))
|
||||||
|
|
||||||
(use-package glsl-mode :ensure t
|
(use-package glsl-mode
|
||||||
:mode (("\\.glsl\\'" . glsl-mode)
|
:mode (("\\.glsl\\'" . glsl-mode)
|
||||||
("\\.vert\\'" . glsl-mode)
|
("\\.vert\\'" . glsl-mode)
|
||||||
("\\.frag\\'" . glsl-mode)
|
("\\.frag\\'" . glsl-mode)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;; TODO Make more Unity-friendly
|
;; TODO Make more Unity-friendly
|
||||||
|
|
||||||
(use-package omnisharp :ensure t :defer t
|
(use-package omnisharp :defer t
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
;; (setq flycheck-idle-change-delay 2)
|
;; (setq flycheck-idle-change-delay 2)
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
(use-package shaderlab-mode :defer t
|
(use-package shaderlab-mode :defer t
|
||||||
:mode "\\.shader")
|
:mode "\\.shader")
|
||||||
|
|
||||||
(use-package csharp-mode :ensure t
|
(use-package csharp-mode
|
||||||
:mode "\\.cs\\'"
|
:mode "\\.cs\\'"
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
(add-to-list 'auto-mode-alist '("\\.plist\\'" . nxml-mode))
|
(add-to-list 'auto-mode-alist '("\\.plist\\'" . nxml-mode))
|
||||||
|
|
||||||
(use-package dash-at-point :ensure t
|
(use-package dash-at-point
|
||||||
:commands (dash-at-point dash-at-point-with-docset)
|
:commands (dash-at-point dash-at-point-with-docset)
|
||||||
:if is-mac
|
:if is-mac
|
||||||
:config
|
:config
|
||||||
|
@ -10,22 +10,22 @@
|
||||||
(add-to-list 'dash-at-point-mode-alist '(ruby-mode . "rb"))
|
(add-to-list 'dash-at-point-mode-alist '(ruby-mode . "rb"))
|
||||||
(add-to-list 'dash-at-point-mode-alist '(python-mode . "py2"))))
|
(add-to-list 'dash-at-point-mode-alist '(python-mode . "py2"))))
|
||||||
|
|
||||||
(use-package yaml-mode :ensure t
|
(use-package yaml-mode
|
||||||
:defer t
|
:defer t
|
||||||
:config
|
:config
|
||||||
(defun my/setup-yaml-mode () (setq tab-width 2))
|
(defun my/setup-yaml-mode () (setq tab-width 2))
|
||||||
(add-hook 'yaml-mode-hook 'my/setup-yaml-mode))
|
(add-hook 'yaml-mode-hook 'my/setup-yaml-mode))
|
||||||
|
|
||||||
(use-package json-mode :ensure t
|
(use-package json-mode
|
||||||
:mode (("\\.json\\'" . json-mode)
|
:mode (("\\.json\\'" . json-mode)
|
||||||
("\\.jshintrc\\'" . json-mode)))
|
("\\.jshintrc\\'" . json-mode)))
|
||||||
|
|
||||||
(use-package python :ensure python-mode
|
(use-package python
|
||||||
:mode ("\\.py\\'" . python-mode)
|
:mode ("\\.py\\'" . python-mode)
|
||||||
:interpreter ("python" . python-mode)
|
:interpreter ("python" . python-mode)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(use-package jedi :ensure t
|
(use-package jedi
|
||||||
:init
|
:init
|
||||||
(if (not (file-directory-p "~/.emacs.d/.python-environments/default/"))
|
(if (not (file-directory-p "~/.emacs.d/.python-environments/default/"))
|
||||||
(jedi:install-server)))
|
(jedi:install-server)))
|
||||||
|
@ -52,17 +52,18 @@
|
||||||
(setq ruby-indent-level 4)
|
(setq ruby-indent-level 4)
|
||||||
(setq ruby-deep-indent-paren nil)
|
(setq ruby-deep-indent-paren nil)
|
||||||
|
|
||||||
|
;; Remember to install rsense w/ homebrew!
|
||||||
(setq rsense-home "/usr/local/Cellar/rsense/0.3/libexec")
|
(setq rsense-home "/usr/local/Cellar/rsense/0.3/libexec")
|
||||||
(when (file-directory-p rsense-home)
|
(when (file-directory-p rsense-home)
|
||||||
(add-to-list 'load-path (concat rsense-home "/etc"))
|
(add-to-list 'load-path (concat rsense-home "/etc"))
|
||||||
(require 'rsense)
|
(require 'rsense)
|
||||||
(add-hook 'ruby-mode-hook 'my/ac-ruby-setup))
|
(add-hook 'ruby-mode-hook 'my/ac-ruby-setup))
|
||||||
|
|
||||||
(use-package rbenv :ensure t)
|
(use-package rbenv)
|
||||||
(use-package inf-ruby :ensure t
|
(use-package inf-ruby
|
||||||
:config (evil-set-initial-state 'inf-ruby-mode 'insert)
|
:config (evil-set-initial-state 'inf-ruby-mode 'insert)
|
||||||
:init (add-to-list 'ac-modes 'inf-ruby-mode))
|
:init (add-to-list 'ac-modes 'inf-ruby-mode))
|
||||||
(use-package ac-inf-ruby :ensure t
|
(use-package ac-inf-ruby
|
||||||
:init (add-hook 'inf-ruby-mode-hook 'ac-inf-ruby-enable))
|
:init (add-hook 'inf-ruby-mode-hook 'ac-inf-ruby-enable))
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(use-package eclim :ensure emacs-eclim
|
(use-package eclim
|
||||||
:commands (eclim-mode global-eclim-mode)
|
:commands (eclim-mode global-eclim-mode)
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
|
@ -18,8 +18,7 @@
|
||||||
|
|
||||||
(setq help-at-pt-display-when-idle t)
|
(setq help-at-pt-display-when-idle t)
|
||||||
(setq help-at-pt-timer-delay 0.1)
|
(setq help-at-pt-timer-delay 0.1)
|
||||||
(help-at-pt-set-timer)
|
(help-at-pt-set-timer)))
|
||||||
))
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
(provide 'mod-eclim)
|
(provide 'mod-eclim)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(use-package lua-mode :ensure t
|
(use-package lua-mode
|
||||||
:mode "\\.lua\\'"
|
:mode "\\.lua\\'"
|
||||||
:interpreter "lua"
|
:interpreter "lua"
|
||||||
:config
|
:config
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
(point-max)))
|
(point-max)))
|
||||||
|
|
||||||
;;
|
;;
|
||||||
(use-package org :ensure t
|
(use-package org
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
(define-minor-mode evil-org-mode
|
(define-minor-mode evil-org-mode
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
:group 'evil-org)
|
:group 'evil-org)
|
||||||
|
|
||||||
;; Reset evil to ensure certain evil keybindings are prioritized
|
;; Reset evil to ensure certain evil keybindings are prioritized
|
||||||
;; (add-hook 'org-mode-hook (lambda() (evil-mode nil) (evil-mode 1)))
|
(add-hook 'org-mode-hook (lambda() (evil-mode nil) (evil-mode 1)))
|
||||||
(add-hook 'org-mode-hook 'evil-org-mode)
|
(add-hook 'org-mode-hook 'evil-org-mode)
|
||||||
(add-hook 'org-mode-hook 'flyspell-mode)
|
(add-hook 'org-mode-hook 'flyspell-mode)
|
||||||
(add-hook 'org-mode-hook 'my/enable-hard-wrap)
|
(add-hook 'org-mode-hook 'my/enable-hard-wrap)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
(add-hook 'text-mode-hook 'my/enable-hard-wrap)
|
(add-hook 'text-mode-hook 'my/enable-hard-wrap)
|
||||||
|
|
||||||
(use-package markdown-mode :ensure t
|
(use-package markdown-mode
|
||||||
:mode (("\\.md\\'" . markdown-mode)
|
:mode (("\\.md\\'" . markdown-mode)
|
||||||
("/README\\'" . markdown-mode))
|
("/README\\'" . markdown-mode))
|
||||||
:config
|
:config
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
(use-package rainbow-mode :ensure t
|
(use-package rainbow-mode
|
||||||
:defer t
|
:defer t
|
||||||
:init (add-hook 'scss-mode 'rainbow-mode))
|
:init (add-hook 'scss-mode 'rainbow-mode))
|
||||||
|
|
||||||
(use-package scss-mode :ensure t
|
(use-package scss-mode
|
||||||
:mode "\\.scss\\'"
|
:mode "\\.scss\\'"
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(setq scss-compile-at-save nil)
|
(setq scss-compile-at-save nil)
|
||||||
(add-hook 'scss-mode-hook 'ac-css-mode-setup)))
|
(add-hook 'scss-mode-hook 'ac-css-mode-setup)))
|
||||||
|
|
||||||
(use-package haml-mode :ensure t :mode "\\.haml\\'")
|
(use-package haml-mode :mode "\\.haml\\'")
|
||||||
|
|
||||||
(use-package php-mode :ensure t
|
(use-package php-mode
|
||||||
:mode (("\\.php\\'" . php-mode)
|
:mode (("\\.php\\'" . php-mode)
|
||||||
("\\.inc\\'" . php-mode))
|
("\\.inc\\'" . php-mode))
|
||||||
:interpreter "php"
|
:interpreter "php"
|
||||||
|
@ -20,7 +20,7 @@
|
||||||
(my/setup-run-code php-mode-map "php")
|
(my/setup-run-code php-mode-map "php")
|
||||||
(setq php-template-compatibility nil)))
|
(setq php-template-compatibility nil)))
|
||||||
|
|
||||||
(use-package web-mode :ensure t
|
(use-package web-mode
|
||||||
:mode (("\\.\\(p\\)?htm\\(l\\)?\\'" . web-mode)
|
:mode (("\\.\\(p\\)?htm\\(l\\)?\\'" . web-mode)
|
||||||
("\\.tpl\\(\\.php\\)?\\'" . web-mode)
|
("\\.tpl\\(\\.php\\)?\\'" . web-mode)
|
||||||
("\\.erb\\'" . web-mode)
|
("\\.erb\\'" . web-mode)
|
||||||
|
@ -49,12 +49,12 @@
|
||||||
|
|
||||||
(add-hook 'web-mode-hook 'jekyll-mode-maybe)))
|
(add-hook 'web-mode-hook 'jekyll-mode-maybe)))
|
||||||
|
|
||||||
(use-package tern :ensure t
|
(use-package tern
|
||||||
:commands tern-mode
|
:commands tern-mode
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(my/setup-run-code js-mode-map "node")
|
(my/setup-run-code js-mode-map "node")
|
||||||
(use-package tern-auto-complete :ensure t
|
(use-package tern-auto-complete
|
||||||
:config (setq tern-ac-on-dot nil)))
|
:config (setq tern-ac-on-dot nil)))
|
||||||
:init
|
:init
|
||||||
;; replace auto-complete with tern-ac-complete only in js-mode
|
;; replace auto-complete with tern-ac-complete only in js-mode
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
(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
|
(use-package emmet-mode
|
||||||
:defer t
|
:defer t
|
||||||
:config
|
:config
|
||||||
(setq emmet-move-cursor-between-quotes t)
|
(setq emmet-move-cursor-between-quotes t)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue