Migrate all package configs to use-package.
Total load time for 90+ packages without byte-compiling: 3s... amazing ! Thanks to \@jwiegley :-)
This commit is contained in:
parent
9eed0e3078
commit
1ffb42448e
|
@ -1,8 +1,10 @@
|
|||
(require 'auto-highlight-symbol)
|
||||
(use-package auto-highlight-symbol-mode
|
||||
:init
|
||||
(global-auto-highlight-symbol-mode t)
|
||||
:config
|
||||
(custom-set-variables
|
||||
'(ahs-case-fold-search nil)
|
||||
'(ahs-default-range (quote ahs-range-whole-buffer))
|
||||
'(ahs-idle-interval 0.5)))
|
||||
|
||||
(global-auto-highlight-symbol-mode t)
|
||||
|
||||
(custom-set-variables
|
||||
'(ahs-case-fold-search nil)
|
||||
'(ahs-default-range (quote ahs-range-whole-buffer))
|
||||
'(ahs-idle-interval 0.5))
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
(require 'centered-cursor-mode)
|
||||
|
||||
(custom-set-variables '(ccm-recenter-at-end-of-file t))
|
||||
(use-package centered-cursor-mode
|
||||
:commands global-centered-cursor-mode
|
||||
:config
|
||||
(custom-set-variables '(ccm-recenter-at-end-of-file t))
|
||||
)
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
(require 'dos)
|
||||
(use-package dos
|
||||
:mode ("\\.bat$" . dos-mode))
|
||||
|
||||
(add-to-list 'auto-mode-alist '("\\.bat$" . dos-mode))
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
(require 'edts-start)
|
||||
|
||||
;; (setq edts-log-level 'debug)
|
||||
|
||||
;; inherits faces from flycheck
|
||||
(custom-set-faces
|
||||
'(edts-face-error-line ((t (:inherit flycheck-error-face))))
|
||||
'(edts-face-error-mode-line ((t (:inherit flycheck-error-face-mode-line))))
|
||||
'(edts-face-warning-line ((t (:inherit flycheck-warning-face))))
|
||||
'(edts-face-warning-mode-line ((t (:inherit flycheck-warning-face-mode-line))))
|
||||
)
|
||||
(use-package edts
|
||||
:init
|
||||
(require 'edts-start)
|
||||
:config
|
||||
;; (setq edts-log-level 'debug)
|
||||
;; inherits faces from flycheck
|
||||
(custom-set-faces
|
||||
'(edts-face-error-line ((t (:inherit flycheck-error-face))))
|
||||
'(edts-face-error-mode-line ((t (:inherit flycheck-error-face-mode-line))))
|
||||
'(edts-face-warning-line ((t (:inherit flycheck-warning-face))))
|
||||
'(edts-face-warning-mode-line ((t (:inherit flycheck-warning-face-mode-line))))
|
||||
))
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
;; (require 'evil-relative-linum)
|
||||
(use-package evil-little-word)
|
||||
|
||||
(require 'evil-little-word)
|
||||
(use-package evil-operator-moccur
|
||||
:init
|
||||
(global-evil-operator-moccur-mode 1))
|
||||
|
||||
(require 'evil-operator-moccur)
|
||||
(global-evil-operator-moccur-mode 1)
|
||||
|
||||
(require 'evil-operator-comment)
|
||||
(global-evil-operator-comment-mode 1)
|
||||
(use-package evil-operator-comment
|
||||
:init
|
||||
(global-evil-operator-comment-mode 1))
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
(require 'mu4e)
|
||||
(require 'org-mu4e)
|
||||
;; make mu4e default email client for emacs
|
||||
(setq mail-user-agent 'mu4e-user-agent)
|
||||
|
||||
;; allow for updating mail using 'U' in the main view:
|
||||
(setq mu4e-get-mail-command "offlineimap")
|
||||
(setq mu4e-maildir "~/Mails")
|
||||
(setq mu4e-attachment-dir "~/Mails/.Downloads")
|
||||
(setq message-kill-buffer-on-exit t)
|
||||
|
||||
;; folders
|
||||
(setq mu4e-drafts-folder "/draft")
|
||||
(setq mu4e-sent-folder "/sent")
|
||||
(setq mu4e-trash-folder "/trash")
|
||||
(setq mu4e-refile-folder
|
||||
(lambda (msg)
|
||||
(cond
|
||||
;; ;; messages to the mu mailing list go to the /mu folder
|
||||
;; ((mu4e-message-contact-field-matches msg :to
|
||||
;; "mu-discuss@googlegroups.com")
|
||||
;; "/mu")
|
||||
;; ;; messages sent directly to me go to /archive
|
||||
;; ;; also `mu4e-user-mail-address-regexp' can be used
|
||||
;; ((mu4e-message-contact-field-matches msg :to "me@example.com")
|
||||
;; "/private")
|
||||
;; ;; messages with football or soccer in the subject go to /football
|
||||
;; ((string-match "football\\|soccer" (or (mu4e-message-field msg :subject) ""))
|
||||
;; "/football")
|
||||
;; everything else goes to /archive
|
||||
;; important to have a catch-all at the end!
|
||||
(t "/archive"))))
|
||||
|
||||
;; don't save message to Sent Messages, Gmail/IMAP takes care of this
|
||||
(setq mu4e-sent-messages-behavior 'delete)
|
||||
;; don't prompt for applying of marks, just apply
|
||||
(setq mu4e-headers-leave-behavior 'apply)
|
||||
;; no confirm on quit
|
||||
(setq mu4e-confirm-quit nil)
|
||||
|
||||
;; date format
|
||||
(setq mu4e-headers-date-format "%d/%b/%Y %H:%M")
|
||||
|
||||
;; fancy chars
|
||||
(setq mu4e-use-fancy-chars t)
|
||||
|
||||
;; setup some handy shortcuts
|
||||
;; you can quickly switch to your Inbox -- press ``ji''
|
||||
;; then, when you want archive some messages, move them to
|
||||
;; the 'All Mail' folder by pressing ``ma''.
|
||||
(setq mu4e-maildir-shortcuts '(
|
||||
("/INBOX" . ?i)
|
||||
("/sent" . ?s)
|
||||
("/spam" . ?m)
|
||||
("/trash" . ?t)
|
||||
))
|
||||
|
||||
;; inline images
|
||||
(setq mu4e-view-show-images t
|
||||
mu4e-view-image-max-width 800)
|
||||
;; use imagemagick, if available
|
||||
(when (fboundp 'imagemagick-register-types)
|
||||
(imagemagick-register-types))
|
||||
|
||||
;; prefere html version
|
||||
(setq mu4e-view-prefer-html t)
|
||||
;; html to text conversion program
|
||||
(setq mu4e-html2text-command "html2text -utf8 -width 140")
|
||||
;;(setq mu4e-html2text-command "html2markdown --body-width=0 | grep -v ' _place_holder;'")
|
||||
;; auto convert to html when sending
|
||||
(setq org-mu4e-convert-to-html t)
|
||||
|
||||
;; form magnars
|
||||
;; Start mu4e in fullscreen, immediately ping for new mail
|
||||
(defun mu4e-up-to-date-status ()
|
||||
(interactive)
|
||||
(window-configuration-to-register :mu4e-fullscreen)
|
||||
(mu4e)
|
||||
(mu4e-update-mail-show-window)
|
||||
(delete-other-windows))
|
||||
|
||||
;; form magnars
|
||||
;; Restore previous window configuration
|
||||
(defun mu4e-quit-session ()
|
||||
"Restores the previous window configuration and kills the magit buffer"
|
||||
(interactive)
|
||||
(kill-buffer)
|
||||
(jump-to-register :mu4e-fullscreen))
|
||||
|
||||
;; adapted from https://groups.google.com/d/topic/mu-discuss/ZXB72TR5GL0/discussion
|
||||
(defun mu4e-msgv-action-view-in-browser (msg)
|
||||
"View the body of the message in a web browser."
|
||||
(interactive)
|
||||
(let ((html (mu4e-msg-field (mu4e-message-at-point t) :body-html))
|
||||
(tmpfile (format "%s/%d.html" temporary-file-directory (random))))
|
||||
(unless html (error "No html part for this message"))
|
||||
(with-temp-file tmpfile
|
||||
(insert
|
||||
"<html>"
|
||||
"<head><meta http-equiv=\"content-type\""
|
||||
"content=\"text/html;charset=UTF-8\">"
|
||||
html))
|
||||
(browse-url (concat "file://" tmpfile))))
|
||||
(add-to-list 'mu4e-view-actions
|
||||
'("View in browser" . mu4e-msgv-action-view-in-browser) t)
|
|
@ -1,4 +1,11 @@
|
|||
(require 'nose)
|
||||
|
||||
(add-to-list 'nose-project-root-files "setup.cfg")
|
||||
(setq nose-use-verbose nil)
|
||||
(use-package nose
|
||||
:commands (nosetests-one
|
||||
nosetests-pdb-one
|
||||
nosetests-all
|
||||
nosetests-pdb-all
|
||||
nosetests-module
|
||||
nosetests-pdb-module)
|
||||
:config
|
||||
(progn
|
||||
(add-to-list 'nose-project-root-files "setup.cfg")
|
||||
(setq nose-use-verbose nil)))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'o-blog)
|
||||
(use-package o-blog
|
||||
:defer t)
|
||||
|
|
|
@ -1,84 +1,87 @@
|
|||
(require 'powerline)
|
||||
;; Setup modeline items
|
||||
(defun gcs-propertized-evil-mode-tag ()
|
||||
(propertize evil-mode-line-tag 'font-lock-face
|
||||
;; Don't propertize if we're not in the selected buffer
|
||||
(cond ((not (eq (current-buffer) (car (buffer-list)))) '())
|
||||
((evil-insert-state-p) '(:background "green3" :foreground "black"))
|
||||
((evil-emacs-state-p) '(:background "red" :foreground "black"))
|
||||
((evil-motion-state-p) '(:background "purple" :foreground "black"))
|
||||
((evil-visual-state-p) '(:background "gray" :foreground "black"))
|
||||
((evil-normal-state-p) '(:background "orange" :foreground "black"))
|
||||
(t '()))))
|
||||
(use-package powerline
|
||||
:init
|
||||
(progn
|
||||
;; Setup modeline items
|
||||
(defun gcs-propertized-evil-mode-tag ()
|
||||
(propertize evil-mode-line-tag 'font-lock-face
|
||||
;; Don't propertize if we're not in the selected buffer
|
||||
(cond ((not (eq (current-buffer) (car (buffer-list)))) '())
|
||||
((evil-insert-state-p) '(:background "green3" :foreground "black"))
|
||||
((evil-emacs-state-p) '(:background "red" :foreground "black"))
|
||||
((evil-motion-state-p) '(:background "purple" :foreground "black"))
|
||||
((evil-visual-state-p) '(:background "gray" :foreground "black"))
|
||||
((evil-normal-state-p) '(:background "orange" :foreground "black"))
|
||||
(t '()))))
|
||||
|
||||
(defpowerline powerline-window-number
|
||||
(let ((num (window-numbering-get-number-string)))
|
||||
(cond ((not (display-graphic-p)) (concat "(" num ")"))
|
||||
((equal num "1") "➊")
|
||||
((equal num "2") "➋")
|
||||
((equal num "3") "➌")
|
||||
((equal num "4") "➍")
|
||||
((equal num "5") "➎")
|
||||
((equal num "6") "❻")
|
||||
((equal num "7") "➐")
|
||||
((equal num "8") "➑")
|
||||
((equal num "9") "➒")
|
||||
((equal num "0") "➓")
|
||||
(t (concat "(" num ")")))))
|
||||
(defpowerline powerline-window-number
|
||||
(let ((num (window-numbering-get-number-string)))
|
||||
(cond ((not (display-graphic-p)) (concat "(" num ")"))
|
||||
((equal num "1") "➊")
|
||||
((equal num "2") "➋")
|
||||
((equal num "3") "➌")
|
||||
((equal num "4") "➍")
|
||||
((equal num "5") "➎")
|
||||
((equal num "6") "❻")
|
||||
((equal num "7") "➐")
|
||||
((equal num "8") "➑")
|
||||
((equal num "9") "➒")
|
||||
((equal num "0") "➓")
|
||||
(t (concat "(" num ")")))))
|
||||
|
||||
(defpowerline powerline-evil-mode
|
||||
(gcs-propertized-evil-mode-tag))
|
||||
(defpowerline powerline-evil-mode
|
||||
(gcs-propertized-evil-mode-tag))
|
||||
|
||||
(defvar powerline-minor-modesp nil)
|
||||
(defun powerline-minor-modes-toggle ()
|
||||
"Toggle display of minor modes."
|
||||
(interactive)
|
||||
(if powerline-minor-modesp
|
||||
(setq powerline-minor-modesp nil)
|
||||
(setq powerline-minor-modesp t)))
|
||||
(defvar powerline-minor-modesp nil)
|
||||
(defun powerline-minor-modes-toggle ()
|
||||
"Toggle display of minor modes."
|
||||
(interactive)
|
||||
(if powerline-minor-modesp
|
||||
(setq powerline-minor-modesp nil)
|
||||
(setq powerline-minor-modesp t)))
|
||||
|
||||
(setq-default mode-line-format
|
||||
'("%e"
|
||||
(:eval
|
||||
(let* ((active (eq (frame-selected-window) (selected-window)))
|
||||
(face1 (if active 'powerline-active1 'powerline-inactive1))
|
||||
(face2 (if active 'powerline-active2 'powerline-inactive2))
|
||||
(lhs (append (list
|
||||
(powerline-window-number face1 'l)
|
||||
(powerline-evil-mode face1 'l)
|
||||
(setq-default mode-line-format
|
||||
'("%e"
|
||||
(:eval
|
||||
(let* ((active (eq (frame-selected-window) (selected-window)))
|
||||
(face1 (if active 'powerline-active1 'powerline-inactive1))
|
||||
(face2 (if active 'powerline-active2 'powerline-inactive2))
|
||||
(lhs (append (list
|
||||
(powerline-window-number face1 'l)
|
||||
(powerline-evil-mode face1 'l)
|
||||
|
||||
(powerline-raw "%*" nil 'l)
|
||||
(powerline-buffer-size nil 'l)
|
||||
(powerline-buffer-id nil 'l)
|
||||
(powerline-raw " " nil)
|
||||
(powerline-raw "%*" nil 'l)
|
||||
(powerline-buffer-size nil 'l)
|
||||
(powerline-buffer-id nil 'l)
|
||||
(powerline-raw " " nil)
|
||||
|
||||
(powerline-arrow-right nil face1)
|
||||
(powerline-major-mode face1 'l)
|
||||
(powerline-raw " " face1))
|
||||
(powerline-arrow-right nil face1)
|
||||
(powerline-major-mode face1 'l)
|
||||
(powerline-raw " " face1))
|
||||
|
||||
(if powerline-minor-modesp
|
||||
(list (powerline-arrow-right face1 nil)
|
||||
(powerline-minor-modes nil 'l)
|
||||
(powerline-raw mode-line-process nil 'l)
|
||||
(powerline-raw " " nil)
|
||||
(powerline-arrow-right nil face2))
|
||||
(list (powerline-raw " " face1)
|
||||
(powerline-arrow-right face1 face2)))
|
||||
(if powerline-minor-modesp
|
||||
(list (powerline-arrow-right face1 nil)
|
||||
(powerline-minor-modes nil 'l)
|
||||
(powerline-raw mode-line-process nil 'l)
|
||||
(powerline-raw " " nil)
|
||||
(powerline-arrow-right nil face2))
|
||||
(list (powerline-raw " " face1)
|
||||
(powerline-arrow-right face1 face2)))
|
||||
|
||||
(list (powerline-vc face2))))
|
||||
(rhs (list
|
||||
(powerline-raw global-mode-string face2 'r)
|
||||
(powerline-raw " " face2)
|
||||
(list (powerline-vc face2))))
|
||||
(rhs (list
|
||||
(powerline-raw global-mode-string face2 'r)
|
||||
(powerline-raw " " face2)
|
||||
|
||||
(powerline-arrow-left face2 face1)
|
||||
(powerline-raw " " face1)
|
||||
(powerline-raw "%l:%2c" face1 'r)
|
||||
(powerline-arrow-left face1 nil)
|
||||
(powerline-raw " " nil)
|
||||
(powerline-raw "%p" nil 'r)
|
||||
(powerline-arrow-left face2 face1)
|
||||
(powerline-raw " " face1)
|
||||
(powerline-raw "%l:%2c" face1 'r)
|
||||
(powerline-arrow-left face1 nil)
|
||||
(powerline-raw " " nil)
|
||||
(powerline-raw "%p" nil 'r)
|
||||
|
||||
(powerline-hud face2 face1))))
|
||||
(concat
|
||||
(powerline-render lhs)
|
||||
(powerline-fill face2 (powerline-width rhs))
|
||||
(powerline-render rhs))))))
|
||||
(powerline-hud face2 face1))))
|
||||
(concat
|
||||
(powerline-render lhs)
|
||||
(powerline-fill face2 (powerline-width rhs))
|
||||
(powerline-render rhs))))))
|
||||
))
|
||||
|
|
|
@ -1,10 +1,9 @@
|
|||
(setq pylookup-dir (concat user-extensions-directory "/pylookup"))
|
||||
;; set executable file and db file
|
||||
(setq pylookup-program (concat pylookup-dir "/pylookup.py"))
|
||||
(setq pylookup-db-file (concat pylookup-dir "/pylookup.db"))
|
||||
|
||||
;; to speedup, just load it on demand
|
||||
(autoload 'pylookup-lookup "pylookup"
|
||||
"Lookup SEARCH-TERM in the Python HTML indexes." t)
|
||||
(autoload 'pylookup-update "pylookup"
|
||||
"Run pylookup-update and create the database at `pylookup-db-file'." t)
|
||||
(use-package pylookup
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(setq pylookup-dir (concat user-extensions-directory "/pylookup"))
|
||||
;; set executable file and db file
|
||||
(setq pylookup-program (concat pylookup-dir "/pylookup.py"))
|
||||
(setq pylookup-db-file (concat pylookup-dir "/pylookup.db"))
|
||||
))
|
||||
|
|
|
@ -1,5 +1,9 @@
|
|||
(require 'revive-mode-config)
|
||||
(use-package revive
|
||||
:init
|
||||
(require 'revive-mode-config)
|
||||
:config
|
||||
(progn
|
||||
;; save and restore layout
|
||||
(add-hook 'kill-emacs-hook 'emacs-save-layout)
|
||||
(add-hook 'after-init-hook 'emacs-load-layout t)))
|
||||
|
||||
;; save and restore layout
|
||||
(add-hook 'kill-emacs-hook 'emacs-save-layout)
|
||||
(add-hook 'after-init-hook 'emacs-load-layout t)
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
(require 'solarized)
|
||||
(use-package solarized
|
||||
:init
|
||||
(progn
|
||||
(deftheme solarized-dark "The dark variant of the Solarized colour theme")
|
||||
(create-solarized-theme 'dark 'solarized-dark)
|
||||
(provide-theme 'solarized-dark)
|
||||
|
||||
(deftheme solarized-dark "The dark variant of the Solarized colour theme")
|
||||
(create-solarized-theme 'dark 'solarized-dark)
|
||||
(provide-theme 'solarized-dark)
|
||||
(deftheme solarized-light "The light variant of the Solarized colour theme")
|
||||
(create-solarized-theme 'light 'solarized-light)
|
||||
(provide-theme 'solarized-light)
|
||||
|
||||
(deftheme solarized-light "The light variant of the Solarized colour theme")
|
||||
(create-solarized-theme 'light 'solarized-light)
|
||||
(provide-theme 'solarized-light)
|
||||
(if (or (equal system-name "QUE-WKS-AA427-Linux")
|
||||
(equal system-name "QUE-WKS-AA593"))
|
||||
(load-theme 'solarized-light t)
|
||||
(load-theme 'solarized-dark t))))
|
||||
|
||||
(if (or (equal system-name "QUE-WKS-AA427-Linux")
|
||||
(equal system-name "QUE-WKS-AA593"))
|
||||
(load-theme 'solarized-light t)
|
||||
(load-theme 'solarized-dark t))
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
(require 'window-numbering)
|
||||
(window-numbering-mode 1)
|
||||
(use-package window-numbering
|
||||
:init
|
||||
(window-numbering-mode 1))
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
(use-package ace-jump-mode
|
||||
:commands ace-jump-mode
|
||||
:defer t
|
||||
:config
|
||||
(add-hook 'ace-jump-mode-end-hook 'golden-ratio)
|
||||
)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
(use-package auto-complete-clang
|
||||
:commands auto-complete-clang
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(setq ac-clang-flags
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
(use-package auto-complete
|
||||
:commands auto-complete-mode
|
||||
:init
|
||||
(require 'auto-complete-config)
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(require 'auto-complete-config)
|
||||
(ac-config-default)
|
||||
(add-to-list 'completion-styles 'initials t)
|
||||
(add-to-list 'ac-sources 'ac-source-semantic)
|
||||
|
|
|
@ -1,2 +1,4 @@
|
|||
(require 'auto-dictionary)
|
||||
(add-hook 'flyspell-mode-hook '(lambda () (auto-dictionary-mode 1)))
|
||||
(use-package auto-dictionary
|
||||
:defer t
|
||||
:config
|
||||
(add-hook 'flyspell-mode-hook '(lambda () (auto-dictionary-mode 1))))
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
(require 'buffer-move)
|
||||
|
||||
(use-package buffer-mode
|
||||
:defer t)
|
||||
|
|
|
@ -1,17 +1,6 @@
|
|||
(require 'cc-mode)
|
||||
(add-hook 'c-mode-hook '(lambda () (c-toggle-auto-state t)))
|
||||
(add-hook 'c++-mode-hook '(lambda () (c-toggle-auto-state t)))
|
||||
|
||||
;; From http://xugx2007.blogspot.ca/2007/06/benjamin-rutts-emacs-c-development-tips.html
|
||||
(setq compilation-finish-function
|
||||
(lambda (buf str)
|
||||
|
||||
(if (or (string-match "exited abnormally" str)
|
||||
(string-match "FAILED" (buffer-string)))
|
||||
|
||||
;;there were errors
|
||||
(message "There were errors. SPC-e-n to visit.")
|
||||
|
||||
;;no errors, make the compilation window go away in 0.5 seconds
|
||||
(delete-windows-on buf)
|
||||
(message "compilation ok."))))
|
||||
(use-package cc-mode
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(add-hook 'c-mode-hook '(lambda () (c-toggle-auto-state t)))
|
||||
(add-hook 'c++-mode-hook '(lambda () (c-toggle-auto-state t)))))
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
(require 'cmake-mode)
|
||||
|
||||
(setq auto-mode-alist
|
||||
(append '(("CMakeLists\\.txt\\'" . cmake-mode)
|
||||
("\\.cmake\\'" . cmake-mode))
|
||||
auto-mode-alist))
|
||||
(use-package cmake-mode
|
||||
:defer t
|
||||
:init
|
||||
(setq auto-mode-alist
|
||||
(append '(("CMakeLists\\.txt\\'" . cmake-mode)
|
||||
("\\.cmake\\'" . cmake-mode))
|
||||
auto-mode-alist)))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'color-moccur)
|
||||
(use-package color-moccur
|
||||
:defer t)
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'csharp-mode)
|
||||
(use-package csharp-mode
|
||||
:defer t)
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
;; http://jblevins.org/projects/deft/
|
||||
(when (require 'deft nil 'noerror)
|
||||
(use-package deft
|
||||
:defer t
|
||||
:config
|
||||
(setq
|
||||
deft-extension "org"
|
||||
deft-directory "~/Org/deft/"
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
(use-package dired+
|
||||
:defer t)
|
|
@ -1,4 +1,5 @@
|
|||
;; Elisp go-to-definition with M-. and back again with M-,
|
||||
(require 'elisp-slime-nav)
|
||||
(require 'evil)
|
||||
(add-hook 'emacs-lisp-mode-hook (lambda () (elisp-slime-nav-mode t)))
|
||||
(use-package elisp-slime-nav
|
||||
:defer t
|
||||
:config
|
||||
(add-hook 'emacs-lisp-mode-hook (lambda () (elisp-slime-nav-mode t))))
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
(use-package elixir-mix
|
||||
:defer t
|
||||
:init
|
||||
(global-elixir-mix-mode))
|
|
@ -1,10 +1,11 @@
|
|||
(require 'elixir-mode-setup)
|
||||
(elixir-mode-setup)
|
||||
|
||||
(require 'ruby-end)
|
||||
(add-to-list 'elixir-mode-hook
|
||||
(defun auto-activate-ruby-end-mode-for-elixir-mode ()
|
||||
(set (make-variable-buffer-local 'ruby-end-expand-keywords-before-re)
|
||||
"\\(?:^\\|\\s-+\\)\\(?:do\\)")
|
||||
(set (make-variable-buffer-local 'ruby-end-check-statement-modifiers) nil)
|
||||
(ruby-end-mode +1)))
|
||||
(use-package elixir-mode
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(require 'ruby-end)
|
||||
(add-to-list 'elixir-mode-hook
|
||||
(defun auto-activate-ruby-end-mode-for-elixir-mode ()
|
||||
(set (make-variable-buffer-local 'ruby-end-expand-keywords-before-re)
|
||||
"\\(?:^\\|\\s-+\\)\\(?:do\\)")
|
||||
(set (make-variable-buffer-local 'ruby-end-check-statement-modifiers) nil)
|
||||
(ruby-end-mode +1)))))
|
||||
|
|
|
@ -1,22 +1,24 @@
|
|||
(require 'erc)
|
||||
|
||||
;; joining && autojoing
|
||||
(erc-autojoin-mode t)
|
||||
;; check channels
|
||||
(erc-track-mode t)
|
||||
(setq erc-track-exclude-types '("JOIN" "NICK" "PART" "QUIT" "MODE"
|
||||
"324" "329" "332" "333" "353" "477"))
|
||||
;; don't show any of this
|
||||
(setq erc-hide-list '("JOIN" "PART" "QUIT" "NICK"))
|
||||
;; buffer width
|
||||
(setq erc-fill-column 140)
|
||||
(use-package erc
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
;; joining && autojoing
|
||||
(erc-autojoin-mode t)
|
||||
;; check channels
|
||||
(erc-track-mode t)
|
||||
(setq erc-track-exclude-types '("JOIN" "NICK" "PART" "QUIT" "MODE"
|
||||
"324" "329" "332" "333" "353" "477"))
|
||||
;; don't show any of this
|
||||
(setq erc-hide-list '("JOIN" "PART" "QUIT" "NICK"))
|
||||
;; buffer width
|
||||
(setq erc-fill-column 140)))
|
||||
|
||||
;; from http://emacs-fu.blogspot.ca/2009/06/erc-emacs-irc-client.html
|
||||
(defun erc-start-or-switch ()
|
||||
"Connect to ERC, or switch to last active buffer"
|
||||
(interactive)
|
||||
(if (get-buffer "10.140.40.21:6667") ;; ERC already active?
|
||||
|
||||
(erc-track-switch-buffer 1) ;; yes: switch to last active
|
||||
(when (y-or-n-p "Start ERC? ") ;; no: maybe start ERC
|
||||
|
||||
(erc-track-switch-buffer 1) ;; yes: switch to last active
|
||||
(when (y-or-n-p "Start ERC? ") ;; no: maybe start ERC
|
||||
(erc :server "10.140.40.21" :port 6667 :nick "sylnux" :full-name "Sylvain Benner"))))
|
||||
|
|
|
@ -1,17 +1,20 @@
|
|||
(add-to-list 'auto-mode-alist '("\\.erl?$" . erlang-mode))
|
||||
(add-to-list 'auto-mode-alist '("\\.hrl?$" . erlang-mode))
|
||||
(add-to-list 'auto-mode-alist '("\\.spec?$" . erlang-mode))
|
||||
(setq erlang-root-dir "/usr/lib/erlang/erts-5.10.3")
|
||||
(add-to-list 'exec-path "/usr/lib/erlang/erts-5.10.3/bin")
|
||||
(setq erlang-man-root-dir "/usr/lib/erlang/erts-5.10.3/man")
|
||||
(setq erlang-compile-extra-opts '(debug_info))
|
||||
(require 'erlang-start)
|
||||
(use-package erlang-mode
|
||||
:mode (("\\.erl?$" . erlang-mode)
|
||||
("\\.hrl?$" . erlang-mode)
|
||||
("\\.spec?$" . erlang-mode))
|
||||
:config
|
||||
(progn
|
||||
(setq erlang-root-dir "/usr/lib/erlang/erts-5.10.3")
|
||||
(add-to-list 'exec-path "/usr/lib/erlang/erts-5.10.3/bin")
|
||||
(setq erlang-man-root-dir "/usr/lib/erlang/erts-5.10.3/man")
|
||||
(setq erlang-compile-extra-opts '(debug_info))
|
||||
(require 'erlang-start)
|
||||
|
||||
(add-hook 'erlang-mode-hook
|
||||
(lambda ()
|
||||
;; when starting an Erlang shell in Emacs, with a custom node name
|
||||
(setq inferior-erlang-machine-options '("-sname" "syl20bnr"))
|
||||
))
|
||||
(add-hook 'erlang-mode-hook
|
||||
(lambda ()
|
||||
;; when starting an Erlang shell in Emacs, with a custom node name
|
||||
(setq inferior-erlang-machine-options '("-sname" "syl20bnr"))
|
||||
))))
|
||||
|
||||
;; not needed using EDTS
|
||||
;; (require 'erlang-flymake)
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
(setq evil-leader/in-all-states t
|
||||
evil-leader/leader "SPC"
|
||||
evil-leader/non-normal-prefix "s-")
|
||||
(require 'evil-leader)
|
||||
;; Unset shortcuts which shadow evil leader
|
||||
(eval-after-load "compile"
|
||||
'(define-key compilation-mode-map (kbd "SPC") nil))
|
||||
;; make leader available in visual mode
|
||||
(define-key evil-visual-state-map (kbd "SPC") evil-leader--default-map)
|
||||
(define-key evil-motion-state-map (kbd "SPC") evil-leader--default-map)
|
||||
(define-key evil-emacs-state-map (kbd "SPC") evil-leader--default-map)
|
|
@ -1,39 +1,62 @@
|
|||
(setq evil-mode-line-format 'before)
|
||||
|
||||
(setq evil-emacs-state-cursor '("red" box))
|
||||
(setq evil-normal-state-cursor '("orange" box))
|
||||
(setq evil-visual-state-cursor '("black" box))
|
||||
(setq evil-insert-state-cursor '("green3" box))
|
||||
(setq evil-motion-state-cursor '("purple" box))
|
||||
|
||||
;; inspired from:
|
||||
;; https://github.com/roman/emacs.d/blob/master/zoo/zoo-evil.el
|
||||
(evil-define-command fd-trigger (callback)
|
||||
"Allows to execute the passed function using 'fd'."
|
||||
:repeat change
|
||||
(let ((modified (buffer-modified-p)))
|
||||
(insert "f")
|
||||
(let ((evt (read-event
|
||||
(format "Insert %c to exit insert state" ?d)
|
||||
nil 0.2)))
|
||||
(cond
|
||||
((null evt)
|
||||
(message ""))
|
||||
((and (integerp evt)
|
||||
(char-equal evt ?d))
|
||||
;; remove the f character
|
||||
(delete-char -1)
|
||||
(set-buffer-modified-p modified)
|
||||
(funcall callback))
|
||||
(t ; otherwise
|
||||
(setq unread-command-events (append unread-command-events
|
||||
(list evt))))))))
|
||||
|
||||
(evil-mode 1)
|
||||
|
||||
;; This is an endless debate and is just a matter of convention
|
||||
;; I prefer to stay on the original character when leaving insert mode
|
||||
;; (initiated with 'i').
|
||||
(setq evil-move-cursor-back nil)
|
||||
(use-package evil
|
||||
:init
|
||||
(progn
|
||||
(setq evil-mode-line-format 'before)
|
||||
(setq evil-emacs-state-cursor '("red" box))
|
||||
(setq evil-normal-state-cursor '("orange" box))
|
||||
(setq evil-visual-state-cursor '("black" box))
|
||||
(setq evil-insert-state-cursor '("green3" box))
|
||||
(setq evil-motion-state-cursor '("purple" box))
|
||||
;; This is an endless debate and is just a matter of convention
|
||||
;; I prefer to stay on the original character when leaving insert mode
|
||||
;; (initiated with 'i').
|
||||
(setq evil-move-cursor-back nil)
|
||||
(evil-mode 1))
|
||||
:config
|
||||
(progn
|
||||
;; inspired from:
|
||||
;; https://github.com/roman/emacs.d/blob/master/zoo/zoo-evil.el
|
||||
(evil-define-command fd-trigger (callback)
|
||||
"Allows to execute the passed function using 'fd'."
|
||||
:repeat change
|
||||
(let ((modified (buffer-modified-p)))
|
||||
(insert "f")
|
||||
(let ((evt (read-event
|
||||
(format "Insert %c to exit insert state" ?d)
|
||||
nil 0.2)))
|
||||
(cond
|
||||
((null evt)
|
||||
(message ""))
|
||||
((and (integerp evt)
|
||||
(char-equal evt ?d))
|
||||
;; remove the f character
|
||||
(delete-char -1)
|
||||
(set-buffer-modified-p modified)
|
||||
(funcall callback))
|
||||
(t ; otherwise
|
||||
(setq unread-command-events (append unread-command-events
|
||||
(list evt))))))))
|
||||
;; load evil-leader
|
||||
(use-package evil-leader
|
||||
:init
|
||||
(progn
|
||||
(setq evil-leader/in-all-states t
|
||||
evil-leader/leader "SPC"
|
||||
evil-leader/non-normal-prefix "s-"))
|
||||
:config
|
||||
(progn
|
||||
;; Unset shortcuts which shadow evil leader
|
||||
(eval-after-load "compile"
|
||||
'(define-key compilation-mode-map (kbd "SPC") nil))
|
||||
;; make leader available in visual mode
|
||||
(define-key evil-visual-state-map (kbd "SPC") evil-leader--default-map)
|
||||
(define-key evil-motion-state-map (kbd "SPC") evil-leader--default-map)
|
||||
(define-key evil-emacs-state-map (kbd "SPC") evil-leader--default-map)))
|
||||
;; load surround
|
||||
(use-package surround
|
||||
:init
|
||||
(global-surround-mode 1))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
(require 'expand-region)
|
||||
(custom-set-variables
|
||||
'(expand-region-contract-fast-key "V")
|
||||
'(expand-region-reset-fast-key "r"))
|
||||
(use-package expand-region
|
||||
:defer t
|
||||
:config
|
||||
(custom-set-variables
|
||||
'(expand-region-contract-fast-key "V")
|
||||
'(expand-region-reset-fast-key "r")))
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
(require 'fill-column-indicator)
|
||||
|
||||
(setq fci-rule-width 1)
|
||||
(setq fci-enabled 0)
|
||||
|
||||
|
@ -16,3 +14,7 @@
|
|||
(defun deactivate-fci ()
|
||||
(setq fci-enabled 0)
|
||||
(fci-mode 0))
|
||||
|
||||
(use-package fill-column-indicator
|
||||
:commands toggle-fill-column-indicator)
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
(require 'flx-ido)
|
||||
(flx-ido-mode 1)
|
||||
;; disable ido faces to see flx highlights.
|
||||
;; (setq ido-use-faces nil)
|
||||
(use-package flx-ido
|
||||
:init (flx-ido-mode 1)
|
||||
:config
|
||||
;; disable ido faces to see flx highlights.
|
||||
;; (setq ido-use-faces nil)
|
||||
)
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
(require 'flycheck-color-mode-line)
|
||||
|
||||
(eval-after-load "flycheck"
|
||||
'(add-hook 'flycheck-mode-hook 'flycheck-color-mode-line-mode))
|
|
@ -1,12 +1,18 @@
|
|||
(require 'flycheck)
|
||||
(use-package flycheck
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(dolist (mode '(c
|
||||
elixir
|
||||
json
|
||||
python
|
||||
ruby))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'flycheck-mode))
|
||||
|
||||
(dolist (mode '(c
|
||||
elixir
|
||||
json
|
||||
python
|
||||
ruby))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'flycheck-mode))
|
||||
(setq flycheck-check-syntax-automatically '(save mode-enabled))
|
||||
(setq flycheck-standard-error-navigation nil)
|
||||
|
||||
(setq flycheck-check-syntax-automatically '(save mode-enabled))
|
||||
(setq flycheck-standard-error-navigation nil)
|
||||
(use-package flycheck-color-mode-line
|
||||
:config
|
||||
'(add-hook 'flycheck-mode-hook 'flycheck-color-mode-line-mode))))
|
||||
|
|
|
@ -1,33 +1,33 @@
|
|||
(require 'git-gutter-fringe)
|
||||
(use-package git-gutter-fringe
|
||||
:init
|
||||
(global-git-gutter-mode t)
|
||||
:config
|
||||
(progn
|
||||
(setq git-gutter:hide-gutter t)
|
||||
;; Don't need log/message.
|
||||
(setq git-gutter:verbosity 0)
|
||||
(setq git-gutter-fr:side 'right-fringe)
|
||||
;; (setq git-gutter:update-hooks '(after-save-hook after-revert-hook))
|
||||
;; custom graphics that works nice with half-width fringes
|
||||
(fringe-helper-define 'git-gutter-fr:added nil
|
||||
"..X...."
|
||||
"..X...."
|
||||
"XXXXX.."
|
||||
"..X...."
|
||||
"..X...."
|
||||
)
|
||||
(fringe-helper-define 'git-gutter-fr:deleted nil
|
||||
"......."
|
||||
"......."
|
||||
"XXXXX.."
|
||||
"......."
|
||||
"......."
|
||||
)
|
||||
(fringe-helper-define 'git-gutter-fr:modified nil
|
||||
"..X...."
|
||||
".XXX..."
|
||||
"XXXXX.."
|
||||
".XXX..."
|
||||
"..X...."
|
||||
)))
|
||||
|
||||
(global-git-gutter-mode t)
|
||||
(setq git-gutter:hide-gutter t)
|
||||
|
||||
;; Don't need log/message.
|
||||
(setq git-gutter:verbosity 0)
|
||||
|
||||
(setq git-gutter-fr:side 'right-fringe)
|
||||
;; (setq git-gutter:update-hooks '(after-save-hook after-revert-hook))
|
||||
|
||||
;; custom graphics that works nice with half-width fringes
|
||||
(fringe-helper-define 'git-gutter-fr:added nil
|
||||
"..X...."
|
||||
"..X...."
|
||||
"XXXXX.."
|
||||
"..X...."
|
||||
"..X...."
|
||||
)
|
||||
(fringe-helper-define 'git-gutter-fr:deleted nil
|
||||
"......."
|
||||
"......."
|
||||
"XXXXX.."
|
||||
"......."
|
||||
"......."
|
||||
)
|
||||
(fringe-helper-define 'git-gutter-fr:modified nil
|
||||
"..X...."
|
||||
".XXX..."
|
||||
"XXXXX.."
|
||||
".XXX..."
|
||||
"..X...."
|
||||
)
|
||||
|
|
|
@ -1,24 +1,26 @@
|
|||
(require 'golden-ratio)
|
||||
(setq golden-ratio-extra-commands
|
||||
(append golden-ratio-extra-commands
|
||||
'(evil-window-left
|
||||
evil-window-right
|
||||
evil-window-up
|
||||
evil-window-down
|
||||
select-window-0
|
||||
select-window-1
|
||||
select-window-2
|
||||
select-window-3
|
||||
select-window-4
|
||||
select-window-5
|
||||
select-window-6
|
||||
select-window-7
|
||||
select-window-8
|
||||
select-window-9
|
||||
ace-jump-mode-pop-mark
|
||||
buf-move-left
|
||||
buf-move-right
|
||||
buf-move-up
|
||||
buf-move-down
|
||||
)))
|
||||
(golden-ratio-mode)
|
||||
(use-package golden-ratio
|
||||
:init
|
||||
(golden-ratio-mode)
|
||||
:config
|
||||
(setq golden-ratio-extra-commands
|
||||
(append golden-ratio-extra-commands
|
||||
'(evil-window-left
|
||||
evil-window-right
|
||||
evil-window-up
|
||||
evil-window-down
|
||||
select-window-0
|
||||
select-window-1
|
||||
select-window-2
|
||||
select-window-3
|
||||
select-window-4
|
||||
select-window-5
|
||||
select-window-6
|
||||
select-window-7
|
||||
select-window-8
|
||||
select-window-9
|
||||
ace-jump-mode-pop-mark
|
||||
buf-move-left
|
||||
buf-move-right
|
||||
buf-move-up
|
||||
buf-move-down
|
||||
))))
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
(require 'google-translate)
|
||||
(setq google-translate-enable-ido-completion t)
|
||||
(setq google-translate-default-source-language "En")
|
||||
(setq google-translate-default-target-language "Fr")
|
||||
(use-package google-translate
|
||||
:commands (google-translate-query-translate
|
||||
google-translate-at-point
|
||||
google-translate-query-translate-reverse
|
||||
google-translate-at-point-reverse)
|
||||
:config
|
||||
(progn
|
||||
(setq google-translate-enable-ido-completion t)
|
||||
(setq google-translate-default-source-language "En")
|
||||
(setq google-translate-default-target-language "Fr")))
|
||||
|
|
|
@ -1,74 +1,78 @@
|
|||
;; Customization
|
||||
(custom-set-variables
|
||||
;; Use cabal-dev for the GHCi session. Ensures our dependencies are in scope.
|
||||
'(haskell-process-type 'cabal-dev)
|
||||
(use-package haskell-mode
|
||||
:commands haskell-mode
|
||||
:config
|
||||
(progn
|
||||
;; Customization
|
||||
(custom-set-variables
|
||||
;; Use cabal-dev for the GHCi session. Ensures our dependencies are in scope.
|
||||
'(haskell-process-type 'cabal-dev)
|
||||
|
||||
;; Use notify.el (if you have it installed) at the end of running
|
||||
;; Cabal commands or generally things worth notifying.
|
||||
'(haskell-notify-p t)
|
||||
;; Use notify.el (if you have it installed) at the end of running
|
||||
;; Cabal commands or generally things worth notifying.
|
||||
'(haskell-notify-p t)
|
||||
|
||||
;; To enable tags generation on save.
|
||||
'(haskell-tags-on-save t)
|
||||
;; To enable tags generation on save.
|
||||
'(haskell-tags-on-save t)
|
||||
|
||||
;; To enable stylish on save.
|
||||
'(haskell-stylish-on-save t))
|
||||
;; To enable stylish on save.
|
||||
'(haskell-stylish-on-save t))
|
||||
|
||||
(add-hook 'haskell-mode-hook 'haskell-hook)
|
||||
(add-hook 'haskell-cabal-mode-hook 'haskell-cabal-hook)
|
||||
(add-hook 'haskell-mode-hook 'haskell-hook)
|
||||
(add-hook 'haskell-cabal-mode-hook 'haskell-cabal-hook)
|
||||
|
||||
;; Haskell main editing mode key bindings.
|
||||
(defun haskell-hook ()
|
||||
;; Use simple indentation.
|
||||
(turn-on-haskell-simple-indent)
|
||||
(define-key haskell-mode-map (kbd "<return>") 'haskell-simple-indent-newline-same-col)
|
||||
(define-key haskell-mode-map (kbd "C-<return>") 'haskell-simple-indent-newline-indent)
|
||||
;; Haskell main editing mode key bindings.
|
||||
(defun haskell-hook ()
|
||||
;; Use simple indentation.
|
||||
(turn-on-haskell-simple-indent)
|
||||
(define-key haskell-mode-map (kbd "<return>") 'haskell-simple-indent-newline-same-col)
|
||||
(define-key haskell-mode-map (kbd "C-<return>") 'haskell-simple-indent-newline-indent)
|
||||
|
||||
;; Load the current file (and make a session if not already made).
|
||||
(define-key haskell-mode-map [?\C-c ?\C-l] 'haskell-process-load-file)
|
||||
(define-key haskell-mode-map [f5] 'haskell-process-load-file)
|
||||
;; Load the current file (and make a session if not already made).
|
||||
(define-key haskell-mode-map [?\C-c ?\C-l] 'haskell-process-load-file)
|
||||
(define-key haskell-mode-map [f5] 'haskell-process-load-file)
|
||||
|
||||
;; Switch to the REPL.
|
||||
(define-key haskell-mode-map [?\C-c ?\C-z] 'haskell-interactive-switch)
|
||||
;; “Bring” the REPL, hiding all other windows apart from the source
|
||||
;; and the REPL.
|
||||
(define-key haskell-mode-map (kbd "C-`") 'haskell-interactive-bring)
|
||||
;; Switch to the REPL.
|
||||
(define-key haskell-mode-map [?\C-c ?\C-z] 'haskell-interactive-switch)
|
||||
;; “Bring” the REPL, hiding all other windows apart from the source
|
||||
;; and the REPL.
|
||||
(define-key haskell-mode-map (kbd "C-`") 'haskell-interactive-bring)
|
||||
|
||||
;; Build the Cabal project.
|
||||
(define-key haskell-mode-map (kbd "C-c C-c") 'haskell-process-cabal-build)
|
||||
;; Interactively choose the Cabal command to run.
|
||||
(define-key haskell-mode-map (kbd "C-c c") 'haskell-process-cabal)
|
||||
;; Build the Cabal project.
|
||||
(define-key haskell-mode-map (kbd "C-c C-c") 'haskell-process-cabal-build)
|
||||
;; Interactively choose the Cabal command to run.
|
||||
(define-key haskell-mode-map (kbd "C-c c") 'haskell-process-cabal)
|
||||
|
||||
;; Get the type and info of the symbol at point, print it in the
|
||||
;; message buffer.
|
||||
(define-key haskell-mode-map (kbd "C-c C-t") 'haskell-process-do-type)
|
||||
(define-key haskell-mode-map (kbd "C-c C-i") 'haskell-process-do-info)
|
||||
;; Get the type and info of the symbol at point, print it in the
|
||||
;; message buffer.
|
||||
(define-key haskell-mode-map (kbd "C-c C-t") 'haskell-process-do-type)
|
||||
(define-key haskell-mode-map (kbd "C-c C-i") 'haskell-process-do-info)
|
||||
|
||||
;; Contextually do clever things on the space key, in particular:
|
||||
;; 1. Complete imports, letting you choose the module name.
|
||||
;; 2. Show the type of the symbol after the space.
|
||||
(define-key haskell-mode-map (kbd "SPC") 'haskell-mode-contextual-space)
|
||||
;; Contextually do clever things on the space key, in particular:
|
||||
;; 1. Complete imports, letting you choose the module name.
|
||||
;; 2. Show the type of the symbol after the space.
|
||||
(define-key haskell-mode-map (kbd "SPC") 'haskell-mode-contextual-space)
|
||||
|
||||
;; Jump to the imports. Keep tapping to jump between import
|
||||
;; groups. C-u f8 to jump back again.
|
||||
(define-key haskell-mode-map [f8] 'haskell-navigate-imports)
|
||||
;; Jump to the imports. Keep tapping to jump between import
|
||||
;; groups. C-u f8 to jump back again.
|
||||
(define-key haskell-mode-map [f8] 'haskell-navigate-imports)
|
||||
|
||||
;; Jump to the definition of the current symbol.
|
||||
(define-key haskell-mode-map (kbd "M-.") 'haskell-mode-tag-find)
|
||||
;; Jump to the definition of the current symbol.
|
||||
(define-key haskell-mode-map (kbd "M-.") 'haskell-mode-tag-find)
|
||||
|
||||
;; Indent the below lines on columns after the current column.
|
||||
(define-key haskell-mode-map (kbd "C-<right>")
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(haskell-move-nested 1)))
|
||||
;; Same as above but backwards.
|
||||
(define-key haskell-mode-map (kbd "C-<left>")
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(haskell-move-nested -1))))
|
||||
;; Indent the below lines on columns after the current column.
|
||||
(define-key haskell-mode-map (kbd "C-<right>")
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(haskell-move-nested 1)))
|
||||
;; Same as above but backwards.
|
||||
(define-key haskell-mode-map (kbd "C-<left>")
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(haskell-move-nested -1))))
|
||||
|
||||
;; Useful to have these keybindings for .cabal files, too.
|
||||
(defun haskell-cabal-hook ()
|
||||
(define-key haskell-cabal-mode-map (kbd "C-c C-c") 'haskell-process-cabal-build)
|
||||
(define-key haskell-cabal-mode-map (kbd "C-c c") 'haskell-process-cabal)
|
||||
(define-key haskell-cabal-mode-map (kbd "C-`") 'haskell-interactive-bring)
|
||||
(define-key haskell-cabal-mode-map [?\C-c ?\C-z] 'haskell-interactive-switch))
|
||||
;; Useful to have these keybindings for .cabal files, too.
|
||||
(defun haskell-cabal-hook ()
|
||||
(define-key haskell-cabal-mode-map (kbd "C-c C-c") 'haskell-process-cabal-build)
|
||||
(define-key haskell-cabal-mode-map (kbd "C-c c") 'haskell-process-cabal)
|
||||
(define-key haskell-cabal-mode-map (kbd "C-`") 'haskell-interactive-bring)
|
||||
(define-key haskell-cabal-mode-map [?\C-c ?\C-z] 'haskell-interactive-switch))))
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
(require 'helm-config)
|
||||
(helm-mode 1)
|
||||
(use-package helm
|
||||
:init
|
||||
(helm-mode 1))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'hy-mode)
|
||||
(use-package hy-mode
|
||||
:defer t)
|
||||
|
|
|
@ -1,2 +1,4 @@
|
|||
(require 'ido-vertical-mode)
|
||||
;; (ido-vertical-mode)
|
||||
(use-package ido-vertical-mode
|
||||
:disabled t
|
||||
:init
|
||||
(ido-vertical-mode))
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
(setq jedi:setup-keys t)
|
||||
(require 'jedi)
|
||||
(setq jedi:complete-on-dot t)
|
||||
(add-hook 'python-mode-hook 'jedi:setup)
|
||||
(use-package jedi
|
||||
:defer t
|
||||
:init
|
||||
(setq jedi:setup-keys t)
|
||||
:config
|
||||
(progn
|
||||
(setq jedi:complete-on-dot t)
|
||||
(add-hook 'python-mode-hook 'jedi:setup)))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'json-mode)
|
||||
(use-package json-mode
|
||||
:defer t)
|
||||
|
|
|
@ -1,42 +1,34 @@
|
|||
(require 'magit)
|
||||
(global-set-key (kbd "C-x m") 'magit-status)
|
||||
(use-package magit
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
;; full screen magit-status
|
||||
(defadvice magit-status (around magit-fullscreen activate)
|
||||
(window-configuration-to-register :magit-fullscreen)
|
||||
ad-do-it
|
||||
(delete-other-windows))
|
||||
|
||||
;; C-x C-k to kill file on line
|
||||
(defun magit-kill-file-on-line ()
|
||||
"Show file on current magit line and prompt for deletion."
|
||||
(interactive)
|
||||
(magit-visit-item)
|
||||
(delete-current-buffer-file)
|
||||
(magit-refresh))
|
||||
(defun magit-quit-session ()
|
||||
"Restores the previous window configuration and kills the magit buffer"
|
||||
(interactive)
|
||||
(kill-buffer)
|
||||
(jump-to-register :magit-fullscreen))
|
||||
(define-key magit-status-mode-map (kbd "q") 'magit-quit-session)
|
||||
|
||||
(define-key magit-status-mode-map (kbd "C-x C-k") 'magit-kill-file-on-line)
|
||||
(defun magit-toggle-whitespace ()
|
||||
(interactive)
|
||||
(if (member "-w" magit-diff-options)
|
||||
(magit-dont-ignore-whitespace)
|
||||
(magit-ignore-whitespace)))
|
||||
|
||||
;; full screen magit-status
|
||||
(defadvice magit-status (around magit-fullscreen activate)
|
||||
(window-configuration-to-register :magit-fullscreen)
|
||||
ad-do-it
|
||||
(delete-other-windows))
|
||||
(defun magit-ignore-whitespace ()
|
||||
(interactive)
|
||||
(add-to-list 'magit-diff-options "-w")
|
||||
(magit-refresh))
|
||||
|
||||
(defun magit-quit-session ()
|
||||
"Restores the previous window configuration and kills the magit buffer"
|
||||
(interactive)
|
||||
(kill-buffer)
|
||||
(jump-to-register :magit-fullscreen))
|
||||
(define-key magit-status-mode-map (kbd "q") 'magit-quit-session)
|
||||
(defun magit-dont-ignore-whitespace ()
|
||||
(interactive)
|
||||
(setq magit-diff-options (remove "-w" magit-diff-options))
|
||||
(magit-refresh))
|
||||
(define-key magit-status-mode-map (kbd "W") 'magit-toggle-whitespace)))
|
||||
|
||||
(defun magit-toggle-whitespace ()
|
||||
(interactive)
|
||||
(if (member "-w" magit-diff-options)
|
||||
(magit-dont-ignore-whitespace)
|
||||
(magit-ignore-whitespace)))
|
||||
|
||||
(defun magit-ignore-whitespace ()
|
||||
(interactive)
|
||||
(add-to-list 'magit-diff-options "-w")
|
||||
(magit-refresh))
|
||||
|
||||
(defun magit-dont-ignore-whitespace ()
|
||||
(interactive)
|
||||
(setq magit-diff-options (remove "-w" magit-diff-options))
|
||||
(magit-refresh))
|
||||
(define-key magit-status-mode-map (kbd "W") 'magit-toggle-whitespace)
|
||||
|
|
|
@ -1,4 +1,2 @@
|
|||
(autoload 'markdown-mode "markdown-mode"
|
||||
"Major mode for editing Markdown files" t)
|
||||
(setq auto-mode-alist
|
||||
(cons '("\\.md" . markdown-mode) auto-mode-alist))
|
||||
(use-package markdown-mode
|
||||
:mode ("\\.md" . markdown-mode))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'move-text)
|
||||
(use-package move-text
|
||||
:defer t)
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
(require 'multi-term)
|
||||
(use-package multi-term
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(setq multi-term-program "/bin/zsh")
|
||||
|
||||
(setq multi-term-program "/bin/zsh")
|
||||
(defun term-send-tab ()
|
||||
"Send tab in term mode."
|
||||
(interactive)
|
||||
(term-send-raw-string "\t"))
|
||||
|
||||
(defun term-send-tab ()
|
||||
"Send tab in term mode."
|
||||
(interactive)
|
||||
(term-send-raw-string "\t"))
|
||||
(add-to-list 'term-bind-key-alist '("<tab>" . term-send-tab))))
|
||||
|
||||
(add-to-list 'term-bind-key-alist '("<tab>" . term-send-tab))
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
(require 'org-bullets)
|
||||
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))
|
|
@ -1,2 +0,0 @@
|
|||
(require 'org-trello)
|
||||
(add-hook 'org-mode-hook 'org-trello-mode)
|
|
@ -1,5 +1,14 @@
|
|||
(require 'org-install)
|
||||
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
|
||||
(define-key global-map "\C-cl" 'org-store-link)
|
||||
(define-key global-map "\C-ca" 'org-agenda)
|
||||
(setq org-log-done t)
|
||||
(use-package org
|
||||
:mode ("\\.org$" . org-mode)
|
||||
:config
|
||||
(progn
|
||||
(require 'org-install)
|
||||
(define-key global-map "\C-cl" 'org-store-link)
|
||||
(define-key global-map "\C-ca" 'org-agenda)
|
||||
(setq org-log-done t)
|
||||
(use-package org-bullets
|
||||
:config
|
||||
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
|
||||
(use-package org-trello
|
||||
:config
|
||||
(add-hook 'org-mode-hook 'org-trello-mode))))
|
||||
|
|
|
@ -1 +1,6 @@
|
|||
(require 'p4)
|
||||
(use-package p4
|
||||
:commands (p4-add
|
||||
p4-delete
|
||||
p4-describe
|
||||
p4-edit
|
||||
p4-revert))
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
(require 'page-break-lines)
|
||||
(use-package page-break-lines
|
||||
:init
|
||||
(global-page-break-lines-mode t))
|
||||
|
||||
(global-page-break-lines-mode t)
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
(dolist (mode '(scheme emacs-lisp lisp clojure clojurescript))
|
||||
(when (> (display-color-cells) 8)
|
||||
(font-lock-add-keywords (intern (concat (symbol-name mode) "-mode"))
|
||||
'(("(\\|)" . 'esk-paren-face))))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'paredit-mode))
|
||||
(use-package paredit
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(dolist (mode '(scheme emacs-lisp lisp clojure clojurescript))
|
||||
(when (> (display-color-cells) 8)
|
||||
(font-lock-add-keywords (intern (concat (symbol-name mode) "-mode"))
|
||||
'(("(\\|)" . 'esk-paren-face))))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'paredit-mode))))
|
||||
|
|
|
@ -1,11 +1,15 @@
|
|||
(require 'popup)
|
||||
(use-package popup
|
||||
:defer t
|
||||
;; :config
|
||||
;; (progn
|
||||
;; ;; solarized
|
||||
;; (custom-set-faces
|
||||
;; '(popup-face ((t (:background "#586e75" :foreground "#000000"))))
|
||||
;; '(popup-menu-face ((t (:background "#586e75" :foreground "#000000"))))
|
||||
;; '(popup-menu-mouse-face ((t (:background "#073642" :foreground "#dc322f" :box (:line-width -1 :style pressed-button)))))
|
||||
;; '(popup-menu-selection-face ((t (:background "#073642" :foreground "#b58900" :box (:line-width -1 :style pressed-button) :overline "black" :weight bold))))
|
||||
;; '(popup-scroll-bar-background-face ((t (:background "#586e75"))))
|
||||
;; '(popup-scroll-bar-foreground-face ((t (:background "#002b36"))))
|
||||
;; '(popup-tip-face ((t (:background "#586e75" :foreground "#000000" :slant italic))))))
|
||||
)
|
||||
|
||||
;; solarized
|
||||
(custom-set-faces
|
||||
'(popup-face ((t (:background "#586e75" :foreground "#000000"))))
|
||||
'(popup-menu-face ((t (:background "#586e75" :foreground "#000000"))))
|
||||
'(popup-menu-mouse-face ((t (:background "#073642" :foreground "#dc322f" :box (:line-width -1 :style pressed-button)))))
|
||||
'(popup-menu-selection-face ((t (:background "#073642" :foreground "#b58900" :box (:line-width -1 :style pressed-button) :overline "black" :weight bold))))
|
||||
'(popup-scroll-bar-background-face ((t (:background "#586e75"))))
|
||||
'(popup-scroll-bar-foreground-face ((t (:background "#002b36"))))
|
||||
'(popup-tip-face ((t (:background "#586e75" :foreground "#000000" :slant italic)))))
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
(require 'popwin)
|
||||
(setq display-buffer-function 'popwin:display-buffer)
|
||||
(push '("^\*helm .+\*$" :regexp t) popwin:special-display-config)
|
||||
(push '("^\*helm-.+\*$" :regexp t) popwin:special-display-config)
|
||||
(use-package popwin
|
||||
:init
|
||||
(progn
|
||||
(setq display-buffer-function 'popwin:display-buffer)
|
||||
;; use popwin with helm
|
||||
(push '("^\*helm.+\*$" :regexp t) popwin:special-display-config)
|
||||
(push '("^\*helm-.+\*$" :regexp t) popwin:special-display-config)))
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
(setq pretty-symbol-categories '(lambda relational logical))
|
||||
|
||||
(dolist (mode '(emacs-lisp
|
||||
java
|
||||
python
|
||||
ruby))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'pretty-symbols-mode))
|
||||
(use-package pretty-symbols-mode
|
||||
:commands pretty-symbols-mode
|
||||
:init
|
||||
(progn
|
||||
(setq pretty-symbol-categories '(lambda relational logical))
|
||||
(dolist (mode '(emacs-lisp
|
||||
java
|
||||
python
|
||||
ruby))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook"))
|
||||
'pretty-symbols-mode))))
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
(require 'projectile)
|
||||
|
||||
(dolist (mode '(python ruby))
|
||||
(add-hook (intern (concat (symbol-name mode) "-mode-hook")) 'projectile-on))
|
||||
(use-package projectile
|
||||
:init
|
||||
(projectile-global-on))
|
||||
|
|
|
@ -1,22 +1,26 @@
|
|||
(add-hook 'python-mode-hook '(lambda()
|
||||
(setq indent-tabs-mode nil)
|
||||
(setq indent-level 4)
|
||||
(setq python-indent 4)
|
||||
(setq tab-width 4)))
|
||||
(use-package python
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(add-hook 'python-mode-hook '(lambda()
|
||||
(setq indent-tabs-mode nil)
|
||||
(setq indent-level 4)
|
||||
(setq python-indent 4)
|
||||
(setq tab-width 4)))
|
||||
|
||||
;; from http://pedrokroger.net/2010/07/configuring-emacs-as-a-python-ide-2/
|
||||
(defun annotate-pdb ()
|
||||
"Highlight break point lines."
|
||||
(interactive)
|
||||
(highlight-lines-matching-regexp "import pdb")
|
||||
(highlight-lines-matching-regexp "pdb.set_trace()"))
|
||||
(add-hook 'python-mode-hook 'annotate-pdb)
|
||||
;; from http://pedrokroger.net/2010/07/configuring-emacs-as-a-python-ide-2/
|
||||
(defun annotate-pdb ()
|
||||
"Highlight break point lines."
|
||||
(interactive)
|
||||
(highlight-lines-matching-regexp "import pdb")
|
||||
(highlight-lines-matching-regexp "pdb.set_trace()"))
|
||||
(add-hook 'python-mode-hook 'annotate-pdb)
|
||||
|
||||
;; from http://pedrokroger.net/2010/07/configuring-emacs-as-a-python-ide-2/
|
||||
(defun python-add-breakpoint ()
|
||||
"Add a break point, highlight it and save the buffer."
|
||||
(interactive)
|
||||
(evil-end-of-line)
|
||||
(newline-and-indent)
|
||||
(insert "import pdb; pdb.set_trace()")
|
||||
(save-buffer))
|
||||
;; from http://pedrokroger.net/2010/07/configuring-emacs-as-a-python-ide-2/
|
||||
(defun python-add-breakpoint ()
|
||||
"Add a break point, highlight it and save the buffer."
|
||||
(interactive)
|
||||
(evil-end-of-line)
|
||||
(newline-and-indent)
|
||||
(insert "import pdb; pdb.set_trace()")
|
||||
(save-buffer))))
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'quickrun)
|
||||
(use-package quickrun
|
||||
:defer t)
|
||||
|
|
|
@ -1,14 +1,18 @@
|
|||
(defun turn-on-rainbow-delimiters-mode ()
|
||||
(interactive)
|
||||
(rainbow-delimiters-mode 1))
|
||||
(use-package rainbow-delimiters
|
||||
:defer t
|
||||
:init
|
||||
(progn
|
||||
(defun turn-on-rainbow-delimiters-mode ()
|
||||
(interactive)
|
||||
(rainbow-delimiters-mode 1))
|
||||
|
||||
(setq-default frame-background-mode 'dark)
|
||||
(let ((supported-modes '(c-mode-common-hook
|
||||
emacs-lisp-mode-hook
|
||||
clojure-mode-hook
|
||||
javascript-mode-hook
|
||||
lisp-mode-hook
|
||||
python-mode-hook
|
||||
erlang-mode-hook)))
|
||||
(dolist (hook supported-modes)
|
||||
(add-hook hook 'turn-on-rainbow-delimiters-mode)))
|
||||
(setq-default frame-background-mode 'dark)
|
||||
(let ((supported-modes '(c-mode-common-hook
|
||||
emacs-lisp-mode-hook
|
||||
clojure-mode-hook
|
||||
javascript-mode-hook
|
||||
lisp-mode-hook
|
||||
python-mode-hook
|
||||
erlang-mode-hook)))
|
||||
(dolist (hook supported-modes)
|
||||
(add-hook hook 'turn-on-rainbow-delimiters-mode)))))
|
||||
|
|
|
@ -1,7 +1,13 @@
|
|||
(require 'recentf)
|
||||
(setq recentf-exclude '("~/.emacs.d/.recentf"))
|
||||
(setq recentf-save-file (concat user-emacs-directory "/.recentf"))
|
||||
(setq recentf-max-saved-items 100)
|
||||
(setq recentf-auto-cleanup 'never)
|
||||
(setq recentf-auto-save-timer (run-with-idle-timer 600 t 'recentf-save-list))
|
||||
(recentf-mode 1)
|
||||
(use-package recentf
|
||||
:init
|
||||
(recentf-mode 1)
|
||||
:config
|
||||
(progn
|
||||
(setq recentf-exclude '("~/.emacs.d/.recentf"))
|
||||
(setq recentf-save-file (concat user-emacs-directory "/.recentf"))
|
||||
(setq recentf-max-saved-items 100)
|
||||
(setq recentf-auto-cleanup 'never)
|
||||
(setq recentf-auto-save-timer (run-with-idle-timer 600 t 'recentf-save-list))))
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'rfringe)
|
||||
(use-package rfringe
|
||||
:defer t)
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(require 'ruby-end)
|
||||
(use-package ruby-end
|
||||
:defer t)
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
(require 'ruby-mode)
|
||||
|
||||
(add-to-list 'auto-mode-alist
|
||||
'("\\.\\(rb\\|ru\\|builder\\|rake\\|thor\\|gemspec\\)\\'" .
|
||||
ruby-mode))
|
||||
(add-to-list 'auto-mode-alist
|
||||
'("\\(rake\\|thor\\|guard\\|gem\\|cap\\|vagrant\\)file\\'" .
|
||||
ruby-mode))
|
||||
(use-package ruby-mode
|
||||
:mode (("\\(rake\\|thor\\|guard\\|gem\\|cap\\|vagrant\\)file\\'" . ruby-mode)
|
||||
("\\.\\(rb\\|ru\\|builder\\|rake\\|thor\\|gemspec\\)\\'" . ruby-mode))
|
||||
)
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
(require 'smart-operator)
|
|
@ -1,2 +1,3 @@
|
|||
(require 'smartparens-config)
|
||||
(smartparens-global-mode t)
|
||||
(use-package smartparens-config
|
||||
:init
|
||||
(smartparens-global-mode t))
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
(require 'stripe-buffer)
|
||||
(add-hook 'dired-mode-hook 'turn-on-stripe-buffer-mode)
|
||||
(add-hook 'dired-mode-hook 'stripe-listify-buffer)
|
||||
(add-hook 'org-mode-hook 'turn-on-stripe-table-mode)
|
||||
(use-package stripe-buffer
|
||||
:disabled t
|
||||
:init
|
||||
(progn
|
||||
(add-hook 'dired-mode-hook 'turn-on-stripe-buffer-mode)
|
||||
(add-hook 'dired-mode-hook 'stripe-listify-buffer)
|
||||
(add-hook 'org-mode-hook 'turn-on-stripe-table-mode)))
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
(require 'subword)
|
||||
|
||||
(add-hook 'prog-mode-hook 'subword-mode)
|
||||
(use-package subword
|
||||
:defer t
|
||||
:init
|
||||
(add-hook 'prog-mode-hook 'subword-mode)
|
||||
)
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
(global-surround-mode 1)
|
|
@ -1,6 +1,7 @@
|
|||
(eval-after-load "sgml-mode"
|
||||
'(progn
|
||||
(require 'tagedit)
|
||||
(tagedit-add-experimental-features)
|
||||
(add-hook 'html-mode-hook (lambda () (tagedit-mode 1)))))
|
||||
(use-package tagedit
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(tagedit-add-experimental-features)
|
||||
(add-hook 'html-mode-hook (lambda () (tagedit-mode 1)))))
|
||||
|
||||
|
|
|
@ -1,26 +1,30 @@
|
|||
(setq twittering-use-master-password t)
|
||||
(setq twittering-icon-mode t) ; Show icons
|
||||
(setq twittering-timer-interval 300) ; Update your timeline each 300 seconds (5 minutes)
|
||||
(setq twittering-url-show-status nil) ; Keeps the echo area from showing all the http processes
|
||||
(use-package twittering-mode
|
||||
:defer t
|
||||
:config
|
||||
(progn
|
||||
(setq twittering-use-master-password t)
|
||||
(setq twittering-icon-mode t) ; Show icons
|
||||
(setq twittering-timer-interval 300) ; Update your timeline each 300 seconds (5 minutes)
|
||||
(setq twittering-url-show-status nil) ; Keeps the echo area from showing all the http processes
|
||||
|
||||
;; spell check
|
||||
(add-hook 'twittering-edit-mode-hook (lambda () (ispell-minor-mode) (flyspell-mode)))
|
||||
;; spell check
|
||||
(add-hook 'twittering-edit-mode-hook (lambda () (ispell-minor-mode) (flyspell-mode)))
|
||||
|
||||
;; timelines opened at startup
|
||||
(setq twittering-initial-timeline-spec-string '(
|
||||
":direct_messages"
|
||||
":replies"
|
||||
":home"
|
||||
;; ":search/emacs/"
|
||||
;; "user_name/list_name"
|
||||
))
|
||||
;; timelines opened at startup
|
||||
(setq twittering-initial-timeline-spec-string '(
|
||||
":direct_messages"
|
||||
":replies"
|
||||
":home"
|
||||
;; ":search/emacs/"
|
||||
;; "user_name/list_name"
|
||||
))
|
||||
|
||||
;; add follow URL by pressing 'o'
|
||||
(add-hook 'twittering-mode-hook
|
||||
(lambda ()
|
||||
(mapc (lambda (pair)
|
||||
(let ((key (car pair))
|
||||
(func (cdr pair)))
|
||||
(define-key twittering-mode-map
|
||||
(read-kbd-macro key) func)))
|
||||
'(("o" . twittering-click)))))
|
||||
;; add follow URL by pressing 'o'
|
||||
(add-hook 'twittering-mode-hook
|
||||
(lambda ()
|
||||
(mapc (lambda (pair)
|
||||
(let ((key (car pair))
|
||||
(func (cdr pair)))
|
||||
(define-key twittering-mode-map
|
||||
(read-kbd-macro key) func)))
|
||||
'(("o" . twittering-click)))))))
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
(require 'visual-regexp-steroids)
|
||||
(use-package visual-regexp-steroids
|
||||
:defer t)
|
||||
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
(after "volatile-highlights-autoloads"
|
||||
(require 'volatile-highlights)
|
||||
(use-package volatile-highlights
|
||||
:init
|
||||
(volatile-highlights-mode t)
|
||||
|
||||
:config
|
||||
(progn
|
||||
;; define extensions for evil mode
|
||||
(vhl/define-extension 'evil_past_after 'evil-paste-after)
|
||||
(vhl/install-extension 'evil_past_after)
|
||||
)
|
||||
)
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
;; Webjump let's you quickly search google, wikipedia, emacs wiki
|
||||
(global-set-key (kbd "C-x g") 'webjump)
|
||||
(global-set-key (kbd "C-x M-g") 'browse-url-at-point)
|
|
@ -1,5 +1,13 @@
|
|||
(require 'yasnippet)
|
||||
(require 'helm-c-yasnippet)
|
||||
(setq helm-c-yas-space-match-any-greedy t)
|
||||
(setq yas-snippet-dirs '("~/.emacs.d/snippets"))
|
||||
(yas-global-mode 1)
|
||||
(use-package helm-c-yasnippet
|
||||
:commands helm-c-yas-complete
|
||||
:config
|
||||
(progn
|
||||
(setq helm-c-yas-space-match-any-greedy t)
|
||||
(use-package yasnippet
|
||||
:config
|
||||
(progn
|
||||
(setq yas-snippet-dirs '("~/.emacs.d/snippets"))
|
||||
(yas-global-mode 1)
|
||||
))
|
||||
)
|
||||
)
|
||||
|
|
21
init.el
21
init.el
|
@ -1,4 +1,7 @@
|
|||
(require 'cl)
|
||||
;; from jwiegley
|
||||
;; https://github.com/jwiegley/dot-emacs/blob/master/init.el
|
||||
(setq message-log-max 16384)
|
||||
(defconst emacs-start-time (current-time))
|
||||
|
||||
;; Locations ==================================================================
|
||||
(defvar user-home-directory
|
||||
|
@ -52,3 +55,19 @@
|
|||
;; Put this here since it seems to loop recursively if put in the init file
|
||||
(global-centered-cursor-mode t)
|
||||
|
||||
;; Post initialization =======================================================
|
||||
;; from jwiegley
|
||||
;; https://github.com/jwiegley/dot-emacs/blob/master/init.el
|
||||
;; Display load times after init.el and after all buffers has been loaded
|
||||
(when window-system
|
||||
(let ((elapsed (float-time (time-subtract (current-time)
|
||||
emacs-start-time))))
|
||||
(message "Loading %s...done (%.3fs)" load-file-name elapsed))
|
||||
|
||||
(add-hook 'after-init-hook
|
||||
`(lambda ()
|
||||
(let ((elapsed (float-time (time-subtract (current-time)
|
||||
emacs-start-time))))
|
||||
(message "Loading %s...done (%.3fs) [after-init]"
|
||||
,load-file-name elapsed)))
|
||||
t))
|
||||
|
|
14
my-funcs.el
14
my-funcs.el
|
@ -206,4 +206,18 @@ argument takes the kindows rotate backwards."
|
|||
(interactive)
|
||||
(load-theme 'solarized-dark))
|
||||
|
||||
;; From http://xugx2007.blogspot.ca/2007/06/benjamin-rutts-emacs-c-development-tips.html
|
||||
(setq compilation-finish-function
|
||||
(lambda (buf str)
|
||||
|
||||
(if (or (string-match "exited abnormally" str)
|
||||
(string-match "FAILED" (buffer-string)))
|
||||
|
||||
;;there were errors
|
||||
(message "There were errors. SPC-e-n to visit.")
|
||||
|
||||
;;no errors, make the compilation window go away in 0.5 seconds
|
||||
(delete-windows-on buf)
|
||||
(message "compilation ok."))))
|
||||
|
||||
(provide 'my-funcs)
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
;; http://milkbox.net/note/single-file-master-emacs-configuration/
|
||||
(defmacro after (mode &rest body)
|
||||
"`eval-after-load' MODE evaluate BODY."
|
||||
(declare (indent defun))
|
||||
`(eval-after-load ,mode '(progn ,@body)))
|
||||
;; nothing here for now
|
||||
|
||||
(provide 'my-macros)
|
||||
|
|
13
packages.el
13
packages.el
|
@ -36,7 +36,8 @@
|
|||
flycheck
|
||||
flycheck-color-mode-line
|
||||
fringe-helper
|
||||
fuzzy
|
||||
;; to be deleted
|
||||
;; fuzzy
|
||||
git-gutter-fringe
|
||||
ghc
|
||||
golden-ratio
|
||||
|
@ -45,7 +46,8 @@
|
|||
helm
|
||||
helm-c-yasnippet
|
||||
helm-projectile
|
||||
htmlize
|
||||
;; to be deleted
|
||||
;; htmlize
|
||||
hy-mode
|
||||
ido-vertical-mode
|
||||
jedi
|
||||
|
@ -76,10 +78,9 @@
|
|||
ruby-mode
|
||||
ruby-test-mode
|
||||
s
|
||||
smart-operator
|
||||
smartparens
|
||||
string-edit
|
||||
;; stripe-buffer
|
||||
stripe-buffer
|
||||
subword
|
||||
surround
|
||||
tagedit
|
||||
|
@ -101,13 +102,11 @@
|
|||
|
||||
;;; initialize packages
|
||||
(setq syl:package-init-dir (concat user-emacs-directory "init-package/"))
|
||||
(message (format "initializing packages out of %s" syl:package-init-dir))
|
||||
(dolist (package (append (mapcar 'car package--builtins) package-activated-list))
|
||||
(let* ((initfile (concat syl:package-init-dir (format "init-%s.el" package))))
|
||||
(if (and (package-installed-p package)
|
||||
(file-exists-p initfile))
|
||||
(progn (load initfile)
|
||||
(message (format "loaded %s" initfile))))))
|
||||
(load initfile))))
|
||||
|
||||
(when (memq window-system '(mac ns))
|
||||
(exec-path-from-shell-initialize))
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
dos
|
||||
edts
|
||||
evil-plugins
|
||||
;; mu4e
|
||||
nose
|
||||
o-blog
|
||||
powerline
|
||||
|
@ -19,11 +18,9 @@
|
|||
|
||||
;; initialize extensions
|
||||
(setq syl:extension-init-dir (concat user-emacs-directory "init-extension/"))
|
||||
(message (format "initializing extensions out of %s" syl:extension-init-dir))
|
||||
(dolist (ext syl:post-extensions)
|
||||
(let* ((initfile (concat syl:extension-init-dir (format "init-%s.el" ext))))
|
||||
(if (file-exists-p initfile)
|
||||
(progn (load initfile)
|
||||
(message (format "loaded %s" initfile))))))
|
||||
(load initfile))))
|
||||
|
||||
(provide 'post-extensions)
|
||||
|
|
|
@ -11,11 +11,9 @@
|
|||
|
||||
;; initialize extensions
|
||||
(setq syl:extension-init-dir (concat user-emacs-directory "init-extension/"))
|
||||
(message (format "initializing extensions out of %s" syl:extension-init-dir))
|
||||
(dolist (ext syl:pre-extensions)
|
||||
(let* ((initfile (concat syl:extension-init-dir (format "init-%s.el" ext))))
|
||||
(if (file-exists-p initfile)
|
||||
(progn (load initfile)
|
||||
(message (format "loaded %s" initfile))))))
|
||||
(load initfile))))
|
||||
|
||||
(provide 'pre-extensions)
|
||||
|
|
Loading…
Reference in New Issue