X-Git-Url: https://git.donarmstrong.com/?p=lib.git;a=blobdiff_plain;f=emacs_el%2Fconfiguration%2Fdon-configuration.org;h=d07925f1f3971a6bbed10f1fae8356fe2c08f5a4;hp=0291bd47b068031abe33005486d9a52b328da762;hb=bec9b00ba4d3e65debb7eeedec3e9987a79904b9;hpb=845e4083176a7234403d86ec371a922b24689aee diff --git a/emacs_el/configuration/don-configuration.org b/emacs_el/configuration/don-configuration.org index 0291bd4..d07925f 100644 --- a/emacs_el/configuration/don-configuration.org +++ b/emacs_el/configuration/don-configuration.org @@ -27,7 +27,10 @@ ** [[https://github.com/jwiegley/use-package/][use-package]] #+BEGIN_SRC emacs-lisp (package-initialize) - (require 'use-package) + (condition-case nil + (require 'use-package) + (progn (package-install 'use-package) + (require 'use-package))) #+END_SRC ** Paradox #+BEGIN_SRC emacs-lisp @@ -265,6 +268,7 @@ value, scrolling continues until there is no more output. :ensure t :bind (("C-c j ," . goto-last-change) ("C-c j ." . goto-last-change-reverse)) + ) #+END_SRC *** Jumping to bookmarks (visible bookmarks, bm) #+BEGIN_SRC emacs-lisp @@ -344,27 +348,30 @@ value, scrolling continues until there is no more output. ** Perl #+BEGIN_SRC emacs-lisp - (require 'cperl-mode) - ;; Use c-mode for perl .xs files - (add-to-list 'auto-mode-alist '("\\.xs\\'" . c-mode)) - (add-to-list 'auto-mode-alist '("\\.\\([pP][Llm]\\|al\\)\\'" . cperl-mode)) - (add-to-list 'interpreter-mode-alist '("perl" . cperl-mode)) - (add-to-list 'interpreter-mode-alist '("perl5" . cperl-mode)) - (add-to-list 'interpreter-mode-alist '("miniperl" . cperl-mode)) - (setq cperl-hairy t - cperl-indent-level 4 - cperl-auto-newline nil - cperl-auto-newline-after-colon nil - cperl-continued-statement-offset 4 - cperl-brace-offset -1 - cperl-continued-brace-offset 0 - cperl-label-offset -4 - cperl-highlight-variables-indiscriminately t - cperl-electric-lbrace-space nil - cperl-indent-parens-as-block nil - cperl-close-paren-offset -1 - cperl-tab-always-indent t) - ;(add-hook 'cperl-mode-hook (lambda () (cperl-set-style "PerlStyle"))) + (use-package cperl-mode + :config + (progn + ;; Use c-mode for perl .xs files + (add-to-list 'auto-mode-alist '("\\.xs\\'" . c-mode)) + (add-to-list 'auto-mode-alist '("\\.\\([pP][Llm]\\|al\\)\\'" . cperl-mode)) + (add-to-list 'interpreter-mode-alist '("perl" . cperl-mode)) + (add-to-list 'interpreter-mode-alist '("perl5" . cperl-mode)) + (add-to-list 'interpreter-mode-alist '("miniperl" . cperl-mode)) + (setq cperl-hairy t + cperl-indent-level 4 + cperl-auto-newline nil + cperl-auto-newline-after-colon nil + cperl-continued-statement-offset 4 + cperl-brace-offset -1 + cperl-continued-brace-offset 0 + cperl-label-offset -4 + cperl-highlight-variables-indiscriminately t + cperl-electric-lbrace-space nil + cperl-indent-parens-as-block nil + cperl-close-paren-offset -1 + cperl-tab-always-indent t) + ;;(add-hook 'cperl-mode-hook (lambda () (cperl-set-style "PerlStyle"))) + )) #+END_SRC ** Helm @@ -410,7 +417,7 @@ value, scrolling continues until there is no more output. #+BEGIN_SRC emacs-lisp ;;; stolen from https://github.com/malb/emacs.d/blob/master/malb.org - (defun malb/helm-swoop-pr2e-fill () + (defun malb/helm-swoop-pre-fill () (thing-at-point 'symbol)) (setq malb/helm-swoop-ignore-major-mode '(dired-mode paradox-menu-mode doc-view-mode pdf-view-mode @@ -521,6 +528,17 @@ value, scrolling continues until there is no more output. (setq-default reftex-default-bibliography '("~/projects/research/references.bib"))) #+END_SRC +** BibTex +#+BEGIN_SRC emacs-lisp + (use-package bibtex + :config (setq bibtex-user-optional-fields + (quote (("annote" "Personal annotation (ignored)") + ("abstract" "") + ("pmid" "") + ("doi" "")))) + ) + +#+END_SRC ** LaTeX #+BEGIN_SRC emacs-lisp (use-package tex @@ -622,24 +640,12 @@ value, scrolling continues until there is no more output. ("fixme" "{")) ) ) + (setq font-latex-fontify-script nil) + (setq font-latex-fontify-sectioning (quote color)) + (setq font-latex-script-display (quote (nil))) ) #+END_SRC -*** Org-Gcal -#+BEGIN_SRC emacs-lisp - (use-package calfw - :ensure f - ) - (use-package calfw-org - :ensure f - ) - (use-package org-gcal - :ensure f - :config '((if (file-readable-p "~/.hide/org_gcal.el") - (load-file "~/.hide/org_gcal.el")) - ) - ) -#+END_SRC ** ESS #+BEGIN_SRC emacs-lisp (use-package ess @@ -729,7 +735,8 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori ** GhostText/Atomic Chrome #+BEGIN_SRC emacs-lisp (use-package atomic-chrome - :config (atomic-chrome-start-server) + :config + (ignore-errors (atomic-chrome-start-server)) (setq atomic-chrome-buffer-open-style 'full) ) #+END_SRC @@ -746,6 +753,81 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori ("C-S-c C-S-c" . mc/edit-lines)) ) #+END_SRC +** Web Mode +#+BEGIN_SRC emacs-lisp + (use-package web-mode + :config + (add-to-list 'auto-mode-alist '("\\.tmpl\\'" . web-mode)) + (setq web-mode-enable-engine-detection t) + (setq web-mode-engines-alist + '(("template-toolkit" . "\\.tmpl\\'"))) + ) +#+END_SRC +* Email +** Message Mode +#+BEGIN_SRC emacs-lisp + (use-package post + :config + (setq post-email-address "don@donarmstrong.com") + (setq post-kill-quoted-sig nil) + (setq post-mail-message "mutt\\(ng\\|\\)-[a-z0-9]+-[0-9]+-.*") + (setq post-uses-fill-mode nil) + ) +#+END_SRC +** Mutt +*** Message-mode +#+BEGIN_SRC emacs-lisp + (use-package message-mode + + :mode "muttng-[a-z0-9]+-[0-9]+-" + :mode "mutt-[a-z0-9]+-[0-9]+-" + :hook 'my/message-mode-settings + :hook 'turn-on-flyspell + :bind (:map message-mode-map + ("C-c C-a" . my/post-attach-file)) + :config + (defun my/message-mode-settings () + (font-lock-add-keywords nil + '(("^[ \t]*>[ \t]*>[ \t]*>.*$" + (0 'message-multiply-quoted-text-face)) + ("^[ \t]*>[ \t]*>.*$" + (0 'message-double-quoted-text-face)))) + ) + + (defun my/post-attach-file () + "Prompt for an attachment." + (interactive) + (let ((file (read-file-name "Attach file: " nil nil t nil)) + (description (string-read "Description: "))) + (my/header-attach-file file description))) + + (defun my/header-attach-file (file description) + "Attach a FILE to the current message (works with Mutt). + Argument DESCRIPTION MIME description." + (interactive "fAttach file: \nsDescription: ") + (when (> (length file) 0) + (save-excursion + (save-match-data + (save-restriction + (widen) + (goto-char (point-min)) + (search-forward-regexp "^$") + (insert (concat "Attach: " (replace-regexp-in-string "\\([[:space:]\\]\\)" "\\\\\\1" (file-truename file)) " " + description "\n")) + (message (concat "Attached '" file "'.")) + (setq post-has-attachment t)))))) + + (setq mail-yank-prefix "> ") + ) +#+END_SRC +*** Muttrc mode +#+BEGIN_SRC emacs-lisp + (use-package muttrc-mode + :mode "muttngrc" + :mode "muttrc" + ) + +#+END_SRC * Org Mode ** Use-package and load things #+BEGIN_SRC emacs-lisp @@ -895,7 +977,7 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (setq org-columns-default-format "%40ITEM(Task) %6Effort{:} %CLOCKSUM %PRIORITY %TODO %13SCHEDULED %13DEADLINE %TAGS") (setq org-default-notes-file "~/projects/org-notes/notes.org") - (setq org-id-link-to-org-use-id t) + (setq org-id-link-to-org-use-id 'use-existing) #+END_SRC ** Capture Templates #+BEGIN_SRC emacs-lisp @@ -1160,11 +1242,11 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (org-add-link-type "mutt" 'open-mail-in-mutt) (defun my-org-mode-setup () - (load-library "reftex") + ; (load-library "reftex") (and (buffer-file-name) (file-exists-p (buffer-file-name)) (progn - (reftex-parse-all) + ; (reftex-parse-all) (reftex-set-cite-format '((?b . "[[bib:%l][%l-bib]]") (?n . "[[notes:%l][%l-notes]]") @@ -1242,7 +1324,7 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (setq org-icalendar-timezone "America/Los_Angeles") (setq org-icalendar-use-scheduled '(todo-start event-if-todo)) ;; we already add the id manually - ;; (setq org-icalendar-store-UID t) + (setq org-icalendar-store-UID t) #+END_SRC ** General Org Babel Configuration @@ -1659,6 +1741,21 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (unless (bolp) (insert "\n")))))))))))) #+END_SRC +** Org-Gcal +#+BEGIN_SRC emacs-lisp + (use-package calfw + :ensure f + ) + (use-package calfw-org + :ensure f + ) + (use-package org-gcal + :ensure f + :config '((if (file-readable-p "~/.hide/org_gcal.el") + (load-file "~/.hide/org_gcal.el")) + ) + ) +#+END_SRC ** End use-package #+BEGIN_SRC emacs-lisp ) @@ -1700,7 +1797,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori #+END_SRC * Misc (uncharacterized) #+BEGIN_SRC emacs-lisp - (setq bibtex-user-optional-fields (quote (("annote" "Personal annotation (ignored)") ("abstract" "") ("pmid" "") ("doi" "")))) (setq calendar-latitude 40.11) (setq calendar-longitude -88.24) (setq case-fold-search t) @@ -1711,9 +1807,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (setq display-time-24hr-format t) (setq display-time-day-and-date t) (display-time-mode 1) - (setq font-latex-fontify-script nil) - (setq font-latex-fontify-sectioning (quote color)) - (setq font-latex-script-display (quote (nil))) (global-auto-revert-mode 1) (global-font-lock-mode 1) (icomplete-mode 1) @@ -1722,10 +1815,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (setq markdown-enable-math t) (setq markdown-follow-wiki-link-on-enter nil) (setq mutt-alias-file-list (quote ("~/.mutt/aliases" "~/.mail_aliases"))) - (setq post-email-address "don@donarmstrong.com") - (setq post-kill-quoted-sig nil) - (setq post-mail-message "mutt\\(ng\\|\\)-[a-z0-9]+-[0-9]+-.*") - (setq post-uses-fill-mode nil) (setq ps-footer-font-size (quote (8 . 10))) (setq ps-header-font-size (quote (8 . 10))) (setq ps-header-title-font-size (quote (10 . 10))) @@ -1757,17 +1846,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (require 'vcl-mode) - (require 'tex-site) - ;;(require 'psvn) - ;;(require 'ecasound) - ;;(require 'emacs-wiki) - (require 'bibtex) - (require 'post) - ;;(require 'fixme) - ; (require 'google-weather) - ; (require 'org-google-weather) - ; (setq-default org-google-weather-format "%i %c, [%l,%h] %s %C") - (global-set-key "\C-xp" 'server-edit) (setq-default auto-mode-alist (cons '("\.wml$" . @@ -1783,51 +1861,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori ;; tramp configuration (setq tramp-use-ssh-controlmaster-options nil) - ; mail configuration - (add-to-list 'auto-mode-alist '("muttng-[a-z0-9]+-[0-9]+-" . message-mode)) - (add-to-list 'auto-mode-alist '("muttngrc" . muttrc-mode)) - - (add-to-list 'auto-mode-alist '("mutt-[a-z0-9]+-[0-9]+-" . message-mode)) - (add-to-list 'auto-mode-alist '("muttrc" . muttrc-mode)) - (defun my-message-mode-settings () - (font-lock-add-keywords nil - '(("^[ \t]*>[ \t]*>[ \t]*>.*$" - (0 'message-multiply-quoted-text-face)) - ("^[ \t]*>[ \t]*>.*$" - (0 'message-double-quoted-text-face)))) - (local-set-key (kbd "C-c C-a") 'my-post-attach-file) - ) - (add-hook 'message-mode-hook 'my-message-mode-settings) - - (defun my-post-attach-file () - "Prompt for an attachment." - (interactive) - (let ((file (read-file-name "Attach file: " nil nil t nil)) - (description (string-read "Description: "))) - (my-header-attach-file file description))) - - (symbol-function 'my-post-attach-file) - - (defun my-header-attach-file (file description) - "Attach a FILE to the current message (works with Mutt). - Argument DESCRIPTION MIME description." - (interactive "fAttach file: \nsDescription: ") - (when (> (length file) 0) - (save-excursion - (save-match-data - (save-restriction - (widen) - (goto-char (point-min)) - (search-forward-regexp "^$") - (insert (concat "Attach: " (replace-regexp-in-string "\\([[:space:]\\]\\)" "\\\\\\1" (file-truename file)) " " - description "\n")) - (message (concat "Attached '" file "'.")) - (setq post-has-attachment t)))))) - - - - (setq mail-yank-prefix "> ") - ;; self-insert-command hack. ;; Without this, "if" expands to ;; if ( -!-) { @@ -1873,8 +1906,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori (column-number-mode t) - (server-start) - ; (require 'mode-compile) (defadvice server-process-filter (after post-mode-message first activate) @@ -2151,6 +2182,14 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori #+END_SRC +* Server +#+BEGIN_SRC emacs-lisp + (unless (server-running-p) + (server-start)) +#+END_SRC + + + * END #+BEGIN_SRC emacs-lisp (provide 'don-configuration)