"~/projects/sysadmin/sndservers/sndservers.org"
"~/projects/chaim/chaim.org"
"~/projects/chaim/papers/gwas_paper_2012/gwas_paper.org"
+ "~/projects/reviews/reviews.org"
"~/projects/fh/fh.org")))
(setq org-global-properties '(("Effort_ALL 0 0:10 0:30 1:00 2:00 3:00 4:00 5:00 6:00 7:00")))
-(setq org-columns-default-format "%40ITEM(Task) %TAGS %PRIORITY %TODO %13SCHEDULED %17Effort(Estimated Effort){:} %CLOCKSUM")
+(setq org-columns-default-format "%40ITEM(Task) %TAGS %PRIORITY %TODO %13SCHEDULED %13DEADLINE %6Effort{:} %CLOCKSUM")
(setq org-default-notes-file "~/projects/notes/notes.org")
(setq org-capture-templates ;; mail-specific note template, identified by "m"
"* NEXT Respond to %:from on %:subject\nSCHEDULED: %t\n%U\n%a\n" :clock-in t :clock-resume t :immediate-finish t)
("n" "note" entry (file "~/projects/notes/refile.org")
"* %? :NOTE:\n%U\n%a\n" :clock-in t :clock-resume t)
+ ("s" "schedule" entry (file "~/projects/notes/refile.org")
+ "* %? \n%^{scheduled:}t\n%U\n%a\n" :clock-in t :clock-resume t)
("j" "Journal" entry (file+datetree "~/projects/notes/diary.org")
"* %?\n%U\n" :clock-in t :clock-resume t)
("w" "org-protocol" entry (file "~/projects/notes/refile.org")
(org-remove-empty-drawer-at "LOGBOOK" (point))))
(add-hook 'org-clock-out-hook 'bh/remove-empty-drawer-on-clock-out 'append)
+; add ids on creation of nodes
+(add-hook 'org-capture-prepare-finalize-hook 'org-id-get-create)
+; create function to create headlines in file. This comes from
+; http://stackoverflow.com/questions/13340616/assign-ids-to-every-entry-in-org-mode
+(defun my/org-add-ids-to-headlines-in-file ()
+ "Add ID properties to all headlines in the current file which
+do not already have one."
+ (interactive)
+ (org-map-entries 'org-id-get-create))
+; if we wanted to do this to every buffer, do the following:
+; (add-hook 'org-mode-hook
+; (lambda ()
+; (add-hook 'before-save-hook 'my/org-add-ids-to-headlines-in-file nil 'local)))
+
+; resolve clocks after 10 minutes of idle; use xprintidle
+(setq org-clock-idle-time 10)
+(setq org-clock-x11idle-program-name "xprintidle")
; this is from http://doc.norang.ca/org-mode.html#Capture
; use C-M-r for org mode capture
"Delete frame at remember finalization"
(progn (if my-org-protocol-flag (delete-frame))
(setq my-org-protocol-flag nil)))
+(defadvice org-capture-refile (around delete-frame-after-refile activate)
+ "Delete frame at remember refile"
+ (if my-org-protocol-flag
+ (progn
+ (setq my-org-protocol-flag nil)
+ ad-do-it
+ (delete-frame))
+ ad-do-it)
+ )
(defadvice org-capture-kill (after delete-frame-at-end activate)
"Delete frame at remember abort"
(progn (if my-org-protocol-flag (delete-frame))
(setq my-org-protocol-flag t))
+;; org modules
+(add-to-list 'org-modules 'org-habit)
+
; this comes from http://upsilon.cc/~zack/blog/posts/2010/02/integrating_Mutt_with_Org-mode/
(defun open-mail-in-mutt (message)
"Open a mail message in Mutt, using an external terminal.
Maildir, or by Message-ID."
(interactive "MPath or Message-ID: ")
(shell-command
- (format "xterm -e \"%s %s\""
+ (format "faf xterm -e \"%s %s\""
(substitute-in-file-name "$HOME/bin/mutt_open") message)))
;; add support for "mutt:ID" links
cperl-auto-newline nil
cperl-auto-newline-after-colon nil
cperl-continued-statement-offset 4
- cperl-brace-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 t
+ 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")))
(add-hook 'LaTeX-mode-hook 'outline-minor-mode) ; with AUCTeX LaTeX mode
(add-hook 'latex-mode-hook 'outline-minor-mode) ; with Emacs latex mode
+; use smart quotes by default instead of `` and ''
+; taken from http://kieranhealy.org/esk/kjhealy.html
+(setq TeX-open-quote "“")
+(setq TeX-close-quote "”")
+
;; (TeX-add-style-hook
;; "latex"
;; (lambda ()
(?h . "*** %t\n:PROPERTIES:\n:Custom_ID: %l\n:END:\n[[papers:%l][%l paper]]")))
))
(define-key org-mode-map (kbd "C-c )") 'reftex-citation)
+ (define-key org-mode-map (kbd "C-c [") 'reftex-citation)
(define-key org-mode-map (kbd "C-c (") 'org-mode-reftex-search)
(define-key org-mode-map (kbd "C-c 0") 'reftex-view-crossref)
)
(interactive)
(org-open-link-from-string (format "[[notes:%s]]" (reftex-citation t))))
-
(defun open-research-paper (bibtexkey)
"Open a paper by bibtex key"
(interactive "bibtex key: ")
(shell-command
(format "%s %s"
(substitute-in-file-name "$HOME/bin/bibtex_to_paper") bibtexkey)))
+(org-add-link-type "papers" 'open-research-paper)
+; I pretty much always want hiearchical checkboxes
+(setq org-hierachical-checkbox-statistics nil)
+
;; stolen from
;; http://www-public.it-sudparis.eu/~berger_o/weblog/2012/03/23/how-to-manage-and-export-bibliographic-notesrefs-in-org-mode/
(defun my-rtcite-export-handler (path desc format)
(setq-default org-directory "/home/don/org-mode/")
(setq-default org-mobile-inbox-for-pull "/home/don/org-mode/from-mobile.org")
+;; org mode ical export
+(setq org-icalendar-timezone "America/Los_Angeles")
+(setq org-icalendar-use-scheduled '(todo-start event-if-todo))
+(setq org-icalendar-store-UID t)
+
+;; org babel support
+(org-babel-do-load-languages
+ 'org-babel-load-languages
+ '((emacs-lisp . t )
+ (R . t)
+ (latex . t)))
+;; org-babel-by-backend
+(defmacro org-babel-by-backend (&rest body)
+ `(case (if (boundp 'backend)
+ (org-export-backend-name backend)
+ nil) ,@body))
+
+
+
+;; org latex
+;; stolen from http://kieranhealy.org/esk/kjhealy.html
+(require 'org-latex)
+;; Choose either listings or minted for exporting source code blocks.
+;; Using minted (as here) requires pygments be installed. To use the
+;; default listings package instead, use
+;; (setq org-latex-listings t)
+;; and change references to "minted" below to "listings"
+; (setq org-latex-listings 'minted)
+
+;; default settings for minted code blocks
+(setq org-latex-minted-options
+ '(;("frame" "single")
+ ("bgcolor" "bg") ; bg will need to be defined in the preamble of your document. It's defined in org-preamble-pdflatex.sty and org-preamble-xelatex.sty below.
+ ("fontsize" "\\small")
+ ))
+;; turn off the default toc behavior; deal with it properly in headers to files.
+(defun org-latex-no-toc (depth)
+ (when depth
+ (format "%% Org-mode is exporting headings to %s levels.\n"
+ depth)))
+(setq org-latex-format-toc-function 'org-latex-no-toc)
+
+(require 'ox-latex)
+(add-to-list 'org-latex-classes
+ '("memarticle"
+ "\\documentclass[11pt,oneside,article]{memoir}\n"
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+ ("\\paragraph{%s}" . "\\paragraph*{%s}")
+ ("\\subparagraph{%s}" . "\\subparagraph*{%s}")))
+
+(add-to-list 'org-latex-classes
+ '("membook"
+ "\\documentclass[11pt,oneside]{memoir}\n"
+ ("\\chapter{%s}" . "\\chapter*{%s}")
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}")))
+
+(add-to-list 'org-latex-classes
+ '("letter"
+ "\\documentclass[11pt]{letter}
+[NO-DEFAULT-PACKAGES]
+[PACKAGES]
+[EXTRA]"
+ ("\\section{%s}" . "\\section*{%s}")
+ ("\\subsection{%s}" . "\\subsection*{%s}")
+ ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+ ("\\paragraph{%s}" . "\\paragraph*{%s}")
+ ("\\subparagraph{%s}" . "\\subparagraph*{%s}")))
+
+;; Originally taken from Bruno Tavernier: http://thread.gmane.org/gmane.emacs.orgmode/31150/focus=31432
+;; but adapted to use latexmk 4.22 or higher.
+(setq org-latex-pdf-process '("latexmk -pdflatex=xelatex -bibtex -use-make -pdf %f"))
+
+;; Default packages included in /every/ tex file, latex, pdflatex or xelatex
+(setq org-latex-default-packages-alist
+ '())
+(setq org-latex-packages-alist
+ '(("" "graphicx" t)
+ ("" "fontspec" t)
+ ("" "xunicode" t)
+ ("" "hyperref" t)
+ ("" "url" t)
+ ("" "rotating" t)
+ ("" "longtable" nil)
+ ("" "float" )))
+
+(defun org-create-formula--latex-header ()
+ "Return LaTeX header appropriate for previewing a LaTeX snippet."
+ (let ((info (org-combine-plists (org-export--get-global-options
+ (org-export-get-backend 'latex))
+ (org-export--get-inbuffer-options
+ (org-export-get-backend 'latex)))))
+ (org-latex-guess-babel-language
+ (org-latex-guess-inputenc
+ (org-splice-latex-header
+ org-format-latex-header
+ org-latex-default-packages-alist
+ nil t
+ (plist-get info :latex-header)))
+ info)))
+
+
+; support ignoring headers in org mode export to latex
+; from http://article.gmane.org/gmane.emacs.orgmode/67692
+(defadvice org-latex-headline (around my-latex-skip-headlines
+ (headline contents info) activate)
+ (if (member "ignoreheading" (org-element-property :tags headline))
+ (setq ad-return-value contents)
+ ad-do-it))
+
; debian stuff
(setq-default debian-changelog-mailing-address "don@debian.org")
(setq-default debian-changelog-full-name "Don Armstrong")
+; ediff configuration
+; don't use the multi-window configuration
+(setq ediff-window-setup-function 'ediff-setup-windows-plain)
+
; use iedit
(require 'iedit)
(define-key global-map (kbd "C-;") 'iedit-mode)
(setq flymake-mode-line mode-line)
(force-mode-line-update)))
+; load sql-indent when sql is loaded
+(eval-after-load "sql"
+ '(load-library "sql-indent"))
+
; fix up tmux xterm keys
; stolen from http://unix.stackexchange.com/questions/24414/shift-arrow-not-working-in-emacs-within-tmux
(if (getenv "TMUX")