Skip to content

Instantly share code, notes, and snippets.

@edw
Created August 26, 2015 18:00
Show Gist options
  • Select an option

  • Save edw/374aebfcbcd05e30e24d to your computer and use it in GitHub Desktop.

Select an option

Save edw/374aebfcbcd05e30e24d to your computer and use it in GitHub Desktop.
Selected Emacs `init.el`-isms
(setq mac-option-key-is-meta t)
(setq mac-right-option-modifier nil)
(setq ns-function-modifier 'hyper)
(add-to-list 'package-archives
'("melpa" . "http://melpa.milkbox.net/packages/") t)
(add-to-list 'package-archives
'("melpa-stable" . "http://melpa-stable.milkbox.net/packages/") t)
(add-to-list 'package-pinned-packages
'(cider . "melpa-stable") t)
(package-initialize)
(require 'multi-web-mode)
(setq mweb-default-major-mode 'html-mode)
(setq mweb-tags '((js-mode
"\\(<script +\\(type=\"\\{0,1\\}text/javascript\"\\{0,1\\}\\|language=\"\\{0,1\\}javascript\"\\{0,1\\}\\)[^>]*>\\|<script>\\)" "</script>")
(css-mode "<style +type=\"text/css\"[^>]*>" "</style>")))
(setq mweb-filename-extensions '("htm" "html"))
(multi-web-global-mode 1)
(require 'paredit)
(defun turn-on-paredit () (paredit-mode 1))
(add-hook 'emacs-lisp-mode-hook 'turn-on-paredit)
(add-hook 'nrepl-mode-hook 'turn-on-paredit)
(add-hook 'lisp-mode-hook 'turn-on-paredit)
(add-hook 'cider-repl-mode-hook 'turn-on-paredit)
(add-hook 'clojure-mode-hook 'turn-on-paredit)
(add-hook 'clojurescript-mode-hook 'turn-on-paredit)
(defun with-rc (start end)
(interactive "rSet env vars for region:")
(mapcar
(lambda (line)
(when (> (length line) 0)
(let* ((pair (split-string line "="))
(k (car pair))
(v (shell-command-to-string
(format "echo -n \"%s\"" (cadr pair)))))
(setenv k v))))
(split-string (buffer-substring-no-properties start end) "\n")))
(defun pbcopy (start end)
(interactive "rSend region to OS X pasteboard:")
(shell-command-on-region start end "pbcopy"))
;; Thank you Nathan Weizenbaum for this wonderful suggestion!
;; http://nex-3.com/posts/45-efficient-window-switching-in-emacs
(defun select-next-window ()
"Switch to the next window"
(interactive)
(select-window (next-window)))
(defun select-previous-window ()
"Switch to the previous window"
(interactive)
(select-window (previous-window)))
;; end praise Nathan's window switching.
;; for tmux/mosh
(define-key paredit-mode-map (kbd "M-[ c") 'paredit-forward-slurp-sexp)
(define-key paredit-mode-map (kbd "M-[ d") 'paredit-forward-barf-sexp)
(define-key paredit-mode-map (kbd "ESC <right>") 'paredit-forward-slurp-sexp)
(define-key paredit-mode-map (kbd "ESC <left>") 'paredit-forward-barf-sexp)
(define-key paredit-mode-map (kbd "S-<left>") 'paredit-backward-slurp-sexp)
(define-key paredit-mode-map (kbd "S-<right>") 'paredit-backward-barf-sexp)
(defun kill-this-buffer ()
(interactive)
(kill-buffer (current-buffer)))
(defun smarter-move-beginning-of-line (arg)
"Move point back to indentation of beginning of line.
Move point to the first non-whitespace character on this line.
If point is already there, move to the beginning of the line.
Effectively toggle between the first non-whitespace character and
the beginning of the line.
If ARG is not nil or 1, move forward ARG - 1 lines first. If
point reaches the beginning or end of the buffer, stop there."
(interactive "^p")
(setq arg (or arg 1))
;; Move lines first
(when (/= arg 1)
(let ((line-move-visual nil))
(forward-line (1- arg))))
(let ((orig-point (point)))
(back-to-indentation)
(when (= orig-point (point))
(move-beginning-of-line 1))))
(add-hook 'cider-repl-mode-hook 'subword-mode)
(add-hook 'clojure-mode-hook 'subword-mode)
(add-hook 'cider-mode-hook 'cider-turn-on-eldoc-mode)
(add-hook 'cider-mode-hook 'cider-profile-mode)
(add-hook 'cider-repl-mode-hook 'cider-profile-mode)
(setq ido-create-new-buffer 'always)
(setq ido-ignore-extensions t)
(global-set-key [remap move-beginning-of-line]
'smarter-move-beginning-of-line)
(global-set-key (kbd "M-`") 'select-next-window) ; More OS X-like
(global-set-key (kbd "M-~") 'select-previous-window) ; Ditto
(global-set-key (kbd "C-x C-j") 'direx:find-directory)
(global-set-key (kbd "C-c r") 'replace-regexp)
(global-set-key (kbd "C-x C-k") 'kill-this-buffer)
(global-set-key [f1] 'ansi-term)
(global-set-key [f8] 'previous-error)
(global-set-key [f9] 'next-error)
(global-set-key [f10] 'magit-status)
(global-set-key (kbd "H-s") 'flx-isearch-forward)
(global-set-key (kbd "H-r") 'flx-isearch-backwards)
(define-key paredit-mode-map (kbd "ESC M-[ c") 'paredit-backward-barf-sexp)
(define-key paredit-mode-map (kbd "ESC M-[ d") 'paredit-backward-slurp-sexp)
;; end for tmux
(require 'clojure-mode)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment