First version of use-package
This commit is contained in:
parent
42ff73fdd7
commit
fca83b0b97
15 changed files with 214 additions and 197 deletions
21
01mac.el
21
01mac.el
|
|
@ -111,12 +111,12 @@
|
||||||
;;;;;;;;;;;;;;;;;;;;;; Shell stuff ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;; Shell stuff ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
|
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
|
||||||
|
|
||||||
;; Add pgp binary
|
;; Allow to execute path from shell
|
||||||
(add-to-list 'exec-path "/usr/local/bin")
|
(use-package exec-path-from-shell
|
||||||
|
:if (memq window-system '(mac ns))
|
||||||
; Use Shells variables
|
:ensure t
|
||||||
(when (memq window-system '(mac ns))
|
:config (add-to-list 'exec-path "/usr/local/bin")
|
||||||
(exec-path-from-shell-initialize))
|
(exec-path-from-shell-initialize))
|
||||||
|
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;; Font configuration ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;; Font configuration ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
@ -145,6 +145,9 @@
|
||||||
(scroll-bar-mode -1)
|
(scroll-bar-mode -1)
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;; Record frequency of different commands. Review them later
|
;;;;;;;;;;;;;;;;; Record frequency of different commands. Review them later
|
||||||
(require 'keyfreq)
|
(use-package keyfreq
|
||||||
(keyfreq-mode 1)
|
:defer t
|
||||||
(keyfreq-autosave-mode 1)
|
:ensure t)
|
||||||
|
|
||||||
|
(keyfreq-mode t)
|
||||||
|
(keyfreq-autosave-mode t)
|
||||||
|
|
|
||||||
33
02ivy.el
33
02ivy.el
|
|
@ -1,17 +1,20 @@
|
||||||
(setq-default ivy-use-virtual-buffers t ;; Display recent files in ivy-switch-buffer
|
(use-package ivy
|
||||||
ivy-count-format "(%d of %d) " ;; Current candidate count style
|
:requires (counsel swiper)
|
||||||
ivy-display-style 'fancy ;; Formatting style
|
:ensure t
|
||||||
)
|
:config (setq-default ivy-use-virtual-buffers t ;; Display recent files in ivy-switch-buffer
|
||||||
|
ivy-count-format "(%d of %d) " ;; Current candidate count style
|
||||||
|
ivy-display-style 'fancy) ;; Formatting style
|
||||||
|
:bind ("C-c a" . counsel-ag)
|
||||||
|
("C-c a" . counsel-ag)
|
||||||
|
("C-c b" . ivy-switch-buffer)
|
||||||
|
("C-c t" . counsel-find-file)
|
||||||
|
|
||||||
(global-set-key (kbd "C-c a") 'counsel-ag)
|
("C-c C-s" . swiper) ;; Find things by regexp
|
||||||
(global-set-key (kbd "C-c b") 'ivy-switch-buffer)
|
("M-x" . counsel-M-x) ;; M-x on steroids
|
||||||
(global-set-key (kbd "C-c t") 'counsel-find-file)
|
|
||||||
|
|
||||||
(global-set-key (kbd "C-c C-s") 'swiper) ;; Find things by regexp
|
("<f1> f" . counsel-describe-function)
|
||||||
(global-set-key (kbd "M-x") 'counsel-M-x) ;; M-x on steroids
|
("<f1> v" . counsel-describe-variable)
|
||||||
|
("<f1> l" . counsel-find-library)
|
||||||
(global-set-key (kbd "<f1> f") 'counsel-describe-function)
|
("<f2> i" . counsel-info-lookup-symbol)
|
||||||
(global-set-key (kbd "<f1> v") 'counsel-describe-variable)
|
("<f2> u" . counsel-unicode-char)
|
||||||
(global-set-key (kbd "<f1> l") 'counsel-find-library)
|
("C-c b" . ivy-switch-buffer))
|
||||||
(global-set-key (kbd "<f2> i") 'counsel-info-lookup-symbol)
|
|
||||||
(global-set-key (kbd "<f2> u") 'counsel-unicode-char)
|
|
||||||
|
|
|
||||||
89
03hydra.el
89
03hydra.el
|
|
@ -1,7 +1,8 @@
|
||||||
(require 'hydra)
|
(use-package hydra
|
||||||
|
:ensure t
|
||||||
(defhydra hydra-file-switcher-menu (:color teal :hint nil)
|
:config
|
||||||
"
|
(defhydra hydra-file-switcher-menu (:color teal :hint nil)
|
||||||
|
"
|
||||||
^Ivy^ ^Projectile^ ^Magit^
|
^Ivy^ ^Projectile^ ^Magit^
|
||||||
^^^^^^^^------------------------------------------------------------------------
|
^^^^^^^^------------------------------------------------------------------------
|
||||||
_a_: ag _s_: Switch project _m_: Git status
|
_a_: ag _s_: Switch project _m_: Git status
|
||||||
|
|
@ -11,25 +12,23 @@ _t_: Find file _g_: ag in current project _M_: Git blame
|
||||||
^^ _n_: New project
|
^^ _n_: New project
|
||||||
^^ _i_: ielm console
|
^^ _i_: ielm console
|
||||||
"
|
"
|
||||||
("q" nil "cancel" :color pink)
|
("q" nil "cancel" :color pink)
|
||||||
|
|
||||||
("a" counsel-ag)
|
("a" counsel-ag)
|
||||||
("b" ivy-switch-buffer)
|
("b" ivy-switch-buffer)
|
||||||
("t" counsel-find-file)
|
("t" counsel-find-file)
|
||||||
("s" counsel-projectile-switch-project)
|
("s" counsel-projectile-switch-project)
|
||||||
("f" counsel-projectile-find-file)
|
("f" counsel-projectile-find-file)
|
||||||
("g" counsel-projectile-ag)
|
("g" counsel-projectile-ag)
|
||||||
("c" projectile-invalidate-cache)
|
("c" projectile-invalidate-cache)
|
||||||
("n" projectile-add-known-project)
|
("n" projectile-add-known-project)
|
||||||
("i" ielm)
|
("i" ielm)
|
||||||
("m" magit-status)
|
("m" magit-status)
|
||||||
("C" magit-checkout)
|
("C" magit-checkout)
|
||||||
("M" magit-blame))
|
("M" magit-blame))
|
||||||
|
|
||||||
(global-set-key (kbd "C-c p") 'hydra-file-switcher-menu/body)
|
(defhydra hydra-programming-actions (:color teal :hint nil)
|
||||||
|
"
|
||||||
(defhydra hydra-programming-actions (:color teal :hint nil)
|
|
||||||
"
|
|
||||||
Programming actions
|
Programming actions
|
||||||
|
|
||||||
^Code Manipulation^ ^Code Completion^
|
^Code Manipulation^ ^Code Completion^
|
||||||
|
|
@ -41,22 +40,20 @@ _a_: align regexp
|
||||||
_e_: eval region
|
_e_: eval region
|
||||||
_s_: swiper
|
_s_: swiper
|
||||||
"
|
"
|
||||||
("q" nil "cancel" :color pink)
|
("q" nil "cancel" :color pink)
|
||||||
|
|
||||||
("c" comment-line)
|
("c" comment-line)
|
||||||
("r" vr/replace)
|
("r" vr/replace)
|
||||||
("i" indent-region)
|
("i" indent-region)
|
||||||
("a" align-regexp)
|
("a" align-regexp)
|
||||||
("e" eval-region)
|
("e" eval-region)
|
||||||
("s" swiper)
|
("s" swiper)
|
||||||
|
|
||||||
("y" company-yasnippet)
|
("y" company-yasnippet)
|
||||||
("m" company-complete))
|
("m" company-complete))
|
||||||
|
|
||||||
(global-set-key (kbd "C-c c") 'hydra-programming-actions/body)
|
(defhydra hydra-window-actions (:color teal :hint nil)
|
||||||
|
"
|
||||||
(defhydra hydra-window-actions (:color teal :hint nil)
|
|
||||||
"
|
|
||||||
Window actions
|
Window actions
|
||||||
|
|
||||||
^Windows^ ^Move around^
|
^Windows^ ^Move around^
|
||||||
|
|
@ -68,17 +65,19 @@ _v_: split vertically _<up>_: Move up
|
||||||
^^ _p_: Previous buffer
|
^^ _p_: Previous buffer
|
||||||
^^ _n_: Next buffer
|
^^ _n_: Next buffer
|
||||||
"
|
"
|
||||||
("q" nil "cancel" :color pink)
|
("q" nil "cancel" :color pink)
|
||||||
|
|
||||||
("k" kill-buffer-and-window)
|
("k" kill-buffer-and-window)
|
||||||
("h" split-window-below)
|
("h" split-window-below)
|
||||||
("v" split-window-right)
|
("v" split-window-right)
|
||||||
|
|
||||||
("<left>" windmove-left)
|
("<left>" windmove-left)
|
||||||
("<right>" windmove-right)
|
("<right>" windmove-right)
|
||||||
("<up>" windmove-up)
|
("<up>" windmove-up)
|
||||||
("<down>" windmove-down)
|
("<down>" windmove-down)
|
||||||
("p" previous-buffer)
|
("p" previous-buffer)
|
||||||
("n" next-buffer))
|
("n" next-buffer))
|
||||||
|
|
||||||
(global-set-key (kbd "C-c w") 'hydra-window-actions/body)
|
:bind ("C-c p" . hydra-file-switcher-menu/body)
|
||||||
|
("C-c c" . hydra-programming-actions/body)
|
||||||
|
("C-c w" . hydra-window-actions/body))
|
||||||
|
|
|
||||||
14
04magit.el
14
04magit.el
|
|
@ -1,8 +1,8 @@
|
||||||
;;; Magit
|
;;; Magit
|
||||||
|
(use-package magit
|
||||||
(require 'magit)
|
:ensure t
|
||||||
|
:bind ("<f5> c" . magit-checkout)
|
||||||
(global-set-key (kbd "<f5> c") 'magit-checkout)
|
("<f5> b" . magit-blame)
|
||||||
(global-set-key (kbd "<f5> b") 'magit-blame)
|
("<f5> g" . magit-status)
|
||||||
(define-key magit-blame-mode-map (kbd "<f5> b") 'magit-blame-quit)
|
(:map magit-blame-mode-map
|
||||||
(global-set-key (kbd "<f5> g") 'magit-status)
|
("<f5> b" . 'magit-blame-quit)))
|
||||||
|
|
|
||||||
103
05prog-mode.el
103
05prog-mode.el
|
|
@ -2,59 +2,76 @@
|
||||||
|
|
||||||
;;; Wrap long lines
|
;;; Wrap long lines
|
||||||
(toggle-truncate-lines t)
|
(toggle-truncate-lines t)
|
||||||
|
|
||||||
;;; Show trailing whitespace and remove whitespace on save
|
|
||||||
(require 'whitespace)
|
|
||||||
(add-hook 'prog-mode-hook 'whitespace-mode)
|
|
||||||
(add-hook 'text-mode-hook 'whitespace-mode)
|
|
||||||
(setq whitespace-style '(face trailing empty))
|
|
||||||
|
|
||||||
;;; Cleanup whitespace on save
|
|
||||||
(add-hook 'before-save-hook 'whitespace-cleanup)
|
|
||||||
|
|
||||||
;;; Tabs are spaces and are general at 2. Guide indent with lines
|
|
||||||
(setq-default indent-tabs-mode nil)
|
|
||||||
|
|
||||||
;;; Insert newline on save
|
|
||||||
(setq require-final-newline t)
|
|
||||||
|
|
||||||
;;; Match parenthasis (left-right)
|
|
||||||
(electric-pair-mode 1)
|
|
||||||
|
|
||||||
;;; Rainbow parenthesis
|
|
||||||
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode)
|
|
||||||
(add-hook 'text-mode-hook 'rainbow-delimiters-mode)
|
|
||||||
|
|
||||||
;;; Show hex colors as colors
|
|
||||||
(add-hook 'prog-mode-hook 'rainbow-mode)
|
|
||||||
(add-hook 'text-mode-hook 'rainbow-mode)
|
|
||||||
(require 'lsp-mode)
|
|
||||||
|
|
||||||
;;; When pasting/writing over a selection, replace it.
|
;;; When pasting/writing over a selection, replace it.
|
||||||
(delete-selection-mode 1)
|
(delete-selection-mode 1)
|
||||||
|
|
||||||
;; Dash
|
|
||||||
(define-key prog-mode-map (kbd "C-s C-d") 'dash-at-point) ;; Jump to dash definition
|
|
||||||
(define-key text-mode-map (kbd "C-s C-d") 'dash-at-point) ;; Jump to dash definition
|
|
||||||
(add-to-list
|
|
||||||
'dash-at-point-mode-alist
|
|
||||||
'(enh-ruby-mode . "ruby,rubygems,rails")) ;; Configure lookup for Ruby mode
|
|
||||||
|
|
||||||
;; When possible, show code documentation
|
;; When possible, show code documentation
|
||||||
(global-eldoc-mode 1)
|
(global-eldoc-mode 1)
|
||||||
|
|
||||||
;; Revert tags automatically
|
;; Revert tag tables without asking
|
||||||
(setq tags-revert-without-query 1)
|
(setq tags-revert-without-query 1)
|
||||||
|
|
||||||
;; Use flycheck globally to check syntax and compile languages
|
;;; Show trailing whitespace and remove whitespace on save
|
||||||
(global-flycheck-mode 1)
|
(use-package whitespace
|
||||||
|
:commands whitespace-mode
|
||||||
|
:ensure t
|
||||||
|
:hook (((prog-mode text-mode) . whitespace-mode)
|
||||||
|
(before-save . whitespace-cleanup))
|
||||||
|
:init (setq whitespace-style #'(face trailing empty))
|
||||||
|
;;; Insert newline on save
|
||||||
|
(setq require-final-newline t)
|
||||||
|
;;; Tabs are spaces and are general at 2. Guide indent
|
||||||
|
;;; with lines
|
||||||
|
(setq-default indent-tabs-mode nil))
|
||||||
|
|
||||||
;; Function for definiting indentation
|
;; Use colorful, matching parens
|
||||||
|
(use-package rainbow-delimiters
|
||||||
|
:commands rainbow-delimiters-mode
|
||||||
|
:ensure t
|
||||||
|
:hook (((prog-mode text-mode) . rainbow-delimiters-mode))
|
||||||
|
:init
|
||||||
|
;;; Match parenthasis (left-right)
|
||||||
|
(electric-pair-mode 1))
|
||||||
|
|
||||||
|
;;; Show hex colors as colors
|
||||||
|
(use-package rainbow-mode
|
||||||
|
:commands rainbow-mode
|
||||||
|
:ensure t
|
||||||
|
:hook ((prog-mode text-mode) . rainbow-mode))
|
||||||
|
|
||||||
|
(use-package lsp-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
;; Dash integration
|
||||||
|
(use-package dash-at-point
|
||||||
|
:commands dash-at-point
|
||||||
|
:ensure t
|
||||||
|
:bind (:map prog-mode-map ("C-s C-d" . dash-at-point)
|
||||||
|
:map text-mode-map ("C-s C-d" . dash-at-point))
|
||||||
|
:config
|
||||||
|
(add-to-list 'dash-at-point-mode-alist
|
||||||
|
;; Configure lookup for Ruby mode
|
||||||
|
'(enh-ruby-mode . "ruby,rubygems,rails")))
|
||||||
|
|
||||||
|
|
||||||
|
;; Use flycheck globally to check syntax and compile languages
|
||||||
|
(use-package flycheck
|
||||||
|
:commands flycheck-define-checker
|
||||||
|
:ensure t
|
||||||
|
:defer t
|
||||||
|
:config (global-flycheck-mode t))
|
||||||
|
|
||||||
|
;; By default, use 2 spaces for indentation
|
||||||
|
(setq tab-width 2)
|
||||||
|
(setq tab-stop-list (number-sequence tab-width 200 tab-width))
|
||||||
|
|
||||||
|
;; Ensure indentation in steps:
|
||||||
(defun set-indent (step)
|
(defun set-indent (step)
|
||||||
"Set indentation to X STEPs."
|
"Set indentation to X STEPs."
|
||||||
(interactive "NNumber of columns for one step: ")
|
(interactive "NNumber of columns for one step: ")
|
||||||
(setq tab-width step)
|
(setq-local tab-width step)
|
||||||
(setq tab-stop-list (number-sequence step 200 step)))
|
(setq-local tab-stop-list (number-sequence step 200 step)))
|
||||||
|
|
||||||
;; Enforce column width by number
|
(use-package column-enforce-mode
|
||||||
(global-column-enforce-mode 1)
|
:ensure t
|
||||||
|
:config (global-column-enforce-mode t))
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,17 @@
|
||||||
;; Company completion framework configuration
|
;; Company completion framework configuration
|
||||||
(require 'company); Add completion
|
(use-package company
|
||||||
|
:commands (company-indent-or-complete-common company-yasnippet)
|
||||||
|
:requires (yasnippet
|
||||||
|
yasnippet-snippets
|
||||||
|
lsp-mode
|
||||||
|
company-lsp
|
||||||
|
lsp-ui)
|
||||||
|
:ensure t
|
||||||
|
:defer t)
|
||||||
|
|
||||||
|
(global-company-mode 1)
|
||||||
|
(yas-global-mode 1)
|
||||||
|
|
||||||
;; Company configuration
|
|
||||||
(setq-default
|
(setq-default
|
||||||
company-minimum-prefix-length 2 ; minimum prefix character number for auto complete.
|
company-minimum-prefix-length 2 ; minimum prefix character number for auto complete.
|
||||||
company-idle-delay 0.1
|
company-idle-delay 0.1
|
||||||
|
|
@ -20,17 +30,14 @@
|
||||||
;; company-async-timeout 2
|
;; company-async-timeout 2
|
||||||
)
|
)
|
||||||
|
|
||||||
(global-company-mode 1)
|
|
||||||
(yas-global-mode 1)
|
|
||||||
|
|
||||||
;; Absolute defaults for company mode
|
;; Absolute defaults for company mode
|
||||||
(setq-default company-backends
|
(setq company-backends
|
||||||
'((company-files ; files & directory
|
'((company-files ; files & directory
|
||||||
company-keywords ; keywords
|
company-keywords ; keywords
|
||||||
company-capf
|
company-capf
|
||||||
)
|
)
|
||||||
(company-dabbrev company-abbrev)
|
(company-dabbrev company-abbrev)
|
||||||
))
|
))
|
||||||
|
|
||||||
(setq-default
|
(setq-default
|
||||||
company-lsp-cache-candidates 1 ;; Cache LSP results
|
company-lsp-cache-candidates 1 ;; Cache LSP results
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,14 @@
|
||||||
(require 'projectile)
|
(use-package projectile
|
||||||
|
:ensure t
|
||||||
(setq-default projectile-completion-system 'ivy ;; Use ivy as completion system
|
:requires (counsel counsel-projectile)
|
||||||
projectile-enable-caching t ;; Cache project files
|
:config
|
||||||
projectile-file-exists-local-cache-expire (* 3 60) ;; keep cache for 3 minutes
|
(setq-default projectile-completion-system 'ivy ;; Use ivy as completion system
|
||||||
projectile-sort-order (quote recently-active) ;; Order by recently active projects
|
projectile-enable-caching t ;; Cache project files
|
||||||
projectile-globally-ignored-directories
|
projectile-file-exists-local-cache-expire (* 3 60) ;; keep cache for 3 minutes
|
||||||
(append '("node_modules" ".svn" "_build" "tmp" "log") projectile-globally-ignored-directories)
|
projectile-sort-order (quote recently-active) ;; Order by recently active projects
|
||||||
;; Add certain folders to ignored
|
projectile-globally-ignored-directories
|
||||||
)
|
(append '("node_modules" ".svn" "_build" "tmp" "log") projectile-globally-ignored-directories)
|
||||||
|
;; Add certain folders to ignored
|
||||||
|
))
|
||||||
|
|
||||||
(projectile-mode t)
|
(projectile-mode t)
|
||||||
|
|
|
||||||
11
09ispell.el
11
09ispell.el
|
|
@ -1,6 +1,7 @@
|
||||||
(require 'ispell)
|
|
||||||
;; Highlight misspelled words
|
;; Highlight misspelled words
|
||||||
(setq ispell-program-name "aspell")
|
(use-package ispell
|
||||||
(setq ispell-extra-args
|
:ensure t
|
||||||
'("--run-together" "--run-together-limit=5" "--run-together-min=2"))
|
:config (setq ispell-program-name "aspell")
|
||||||
(add-hook 'prog-mode-hook 'flyspell-mode)
|
(setq ispell-extra-args
|
||||||
|
'("--run-together" "--run-together-limit=5" "--run-together-min=2"))
|
||||||
|
:hook ((prog-mode text-mode) . flyspell-mode))
|
||||||
|
|
|
||||||
11
10themes.el
11
10themes.el
|
|
@ -1,9 +1,10 @@
|
||||||
;; Use smart-mode-line
|
;; Use smart-mode-line
|
||||||
(require 'smart-mode-line)
|
(use-package smart-mode-line
|
||||||
|
:ensure t
|
||||||
(setq-default sml/no-confirm-load-theme t)
|
:config
|
||||||
(setq-default display-time-format "%H:%M") ;; time format to display on mode line
|
(setq-default sml/no-confirm-load-theme t)
|
||||||
(sml/setup)
|
(setq-default display-time-format "%H:%M") ;; time format to display on mode line
|
||||||
|
(sml/setup))
|
||||||
|
|
||||||
(load "~/.emacs.d/10themes-base16-not-harmonic.el" t)
|
(load "~/.emacs.d/10themes-base16-not-harmonic.el" t)
|
||||||
(load-theme 'base16-mexico-light t t)
|
(load-theme 'base16-mexico-light t t)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
(use-package cider
|
||||||
|
:requires clojure-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
(add-hook 'clojure-mode-hook 'cider-mode)
|
(add-hook 'clojure-mode-hook 'cider-mode)
|
||||||
|
|
||||||
(defun activate-clojure-mode ()
|
(defun activate-clojure-mode ()
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
(require 'alchemist)
|
(use-package alchemist
|
||||||
|
:requires (ruby-end-mode)
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
(defun activate-elixir-mode ()
|
(defun activate-elixir-mode ()
|
||||||
"All things Elixir."
|
"All things Elixir."
|
||||||
|
|
@ -9,9 +11,9 @@
|
||||||
(add-to-list (make-local-variable 'company-backends)
|
(add-to-list (make-local-variable 'company-backends)
|
||||||
'(alchemist-company company-yasnippet)))
|
'(alchemist-company company-yasnippet)))
|
||||||
|
|
||||||
|
(add-hook 'elixir-mode-hook 'alchemist-mode)
|
||||||
(add-hook 'alchemist-mode-hook 'activate-elixir-mode)
|
(add-hook 'alchemist-mode-hook 'activate-elixir-mode)
|
||||||
(add-hook 'elixir-mode-hook 'ruby-end-mode)
|
(add-hook 'elixir-mode-hook 'ruby-end-mode)
|
||||||
(add-hook 'elixir-mode-hook 'alchemist-mode)
|
|
||||||
|
|
||||||
;; Eex Web mode
|
;; Eex Web mode
|
||||||
(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
|
(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
|
||||||
|
|
|
||||||
18
20ruby.el
18
20ruby.el
|
|
@ -1,14 +1,13 @@
|
||||||
;; Require Enhanced Ruby Mode
|
;; Require Enhanced Ruby Mode
|
||||||
(require 'enh-ruby-mode)
|
|
||||||
|
|
||||||
(define-key enh-ruby-mode-map (kbd "C-c \\") 'nil)
|
(use-package enh-ruby-mode
|
||||||
|
:requires (rspec-mode ruby-end-mode)
|
||||||
(add-hook 'ruby-mode-hook 'enh-ruby-mode)
|
:ensure t
|
||||||
(add-hook 'enh-ruby-mode-hook 'rspec-mode)
|
:config
|
||||||
(add-hook 'enh-ruby-mode-hook 'ruby-end-mode)
|
(add-hook 'enh-ruby-mode-hook 'rspec-mode)
|
||||||
|
(add-hook 'enh-ruby-mode-hook 'ruby-end-mode)
|
||||||
(eval-after-load 'rspec-mode
|
(eval-after-load 'rspec-mode
|
||||||
'(rspec-install-snippets))
|
'(rspec-install-snippets)))
|
||||||
|
|
||||||
(defun activate-ruby-mode ()
|
(defun activate-ruby-mode ()
|
||||||
"All things for ruby mode."
|
"All things for ruby mode."
|
||||||
|
|
@ -34,6 +33,7 @@
|
||||||
(format "ctags -e -R --languages=ruby -f %sTAGS %s. $(bundle list --paths)"
|
(format "ctags -e -R --languages=ruby -f %sTAGS %s. $(bundle list --paths)"
|
||||||
(projectile-project-root) (projectile-project-root))))
|
(projectile-project-root) (projectile-project-root))))
|
||||||
|
|
||||||
|
(add-hook 'ruby-mode-hook 'enh-ruby-mode)
|
||||||
(add-hook 'enh-ruby-mode-hook 'activate-ruby-mode)
|
(add-hook 'enh-ruby-mode-hook 'activate-ruby-mode)
|
||||||
|
|
||||||
;;; ERB specific things
|
;;; ERB specific things
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
(use-package racer
|
||||||
|
:ensure t
|
||||||
|
:requires (racer flycheck-rust))
|
||||||
|
|
||||||
(defun activate-rust-mode ()
|
(defun activate-rust-mode ()
|
||||||
"All things for Rust mode"
|
"All things for Rust mode"
|
||||||
(interactive)
|
(interactive)
|
||||||
|
|
|
||||||
7
20web.el
7
20web.el
|
|
@ -1,3 +1,10 @@
|
||||||
|
(use-package web-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(use-package js2-mode
|
||||||
|
:requires (web-mode company-web lsp)
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
;; Use js2-mode for javascript editing
|
;; Use js2-mode for javascript editing
|
||||||
(add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
|
(add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
|
||||||
(add-to-list 'auto-mode-alist '("\\.json\\'" . js2-mode))
|
(add-to-list 'auto-mode-alist '("\\.json\\'" . js2-mode))
|
||||||
|
|
|
||||||
37
init.el
37
init.el
|
|
@ -14,53 +14,18 @@
|
||||||
|
|
||||||
;; list the packages you want
|
;; list the packages you want
|
||||||
(setq package-list '(
|
(setq package-list '(
|
||||||
keyfreq ;; Record how often emacs commands are executed
|
|
||||||
exec-path-from-shell ;; Allow to execute path from shell
|
|
||||||
|
|
||||||
rainbow-delimiters ;; Colorize matching parens
|
|
||||||
rainbow-mode ;; Make color symbols like #FFF colorfull
|
|
||||||
|
|
||||||
magit ;; Git interface for Emacs
|
|
||||||
column-enforce-mode ;; Enforce column length of X
|
|
||||||
window-purpose ;; Make sure that windows are of grouped by
|
window-purpose ;; Make sure that windows are of grouped by
|
||||||
;; purpose.
|
;; purpose.
|
||||||
|
|
||||||
;;; Helm replacements
|
|
||||||
ivy
|
|
||||||
counsel
|
|
||||||
swiper
|
|
||||||
hydra ;; Create nice text menus without memorizing too much
|
|
||||||
|
|
||||||
;;; Code
|
|
||||||
dash-at-point
|
|
||||||
|
|
||||||
company ;; Code completion framework
|
|
||||||
yasnippet ;; Code snippets framework
|
|
||||||
yasnippet-snippets ;; Actual snippets for various languages
|
|
||||||
flycheck ;; Compilation framework
|
|
||||||
visual-regexp ;; Regexp replacement with preview in
|
visual-regexp ;; Regexp replacement with preview in
|
||||||
;; current buffer.
|
;; current buffer.
|
||||||
|
|
||||||
;; Language server protocol
|
|
||||||
lsp-mode
|
|
||||||
company-lsp
|
|
||||||
lsp-ui
|
|
||||||
|
|
||||||
;; Project management
|
|
||||||
projectile
|
|
||||||
counsel-projectile
|
|
||||||
|
|
||||||
;; Themes
|
;; Themes
|
||||||
smart-mode-line
|
smart-mode-line
|
||||||
base16-theme
|
base16-theme
|
||||||
flatui-theme
|
flatui-theme
|
||||||
planet-theme
|
planet-theme
|
||||||
|
|
||||||
;; Ruby
|
|
||||||
enh-ruby-mode ;; Enhanced Ruby mode
|
|
||||||
ruby-end ;; Insert end for methods automatically
|
|
||||||
rspec-mode ;; RSpec yasnippets
|
|
||||||
|
|
||||||
;; Elixir
|
;; Elixir
|
||||||
alchemist
|
alchemist
|
||||||
|
|
||||||
|
|
@ -102,6 +67,8 @@
|
||||||
(unless (package-installed-p package)
|
(unless (package-installed-p package)
|
||||||
(package-install package)))
|
(package-install package)))
|
||||||
|
|
||||||
|
(require 'use-package)
|
||||||
|
|
||||||
;; Additional files
|
;; Additional files
|
||||||
(load "~/.emacs.d/01mac.el")
|
(load "~/.emacs.d/01mac.el")
|
||||||
(load "~/.emacs.d/02macros.el")
|
(load "~/.emacs.d/02macros.el")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue