]> git.donarmstrong.com Git - emacs.git/blobdiff - .emacs
use latexmk for everything; fix package list
[emacs.git] / .emacs
diff --git a/.emacs b/.emacs
index 3b1d2733364f92698822fc5049f4058b02534f26..d56140bc9f20880f371801fc87fe322df659313a 100644 (file)
--- a/.emacs
+++ b/.emacs
              "~/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"
 (add-hook 'org-clock-out-hook 'bh/remove-empty-drawer-on-clock-out 'append)
 
 
+; 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
 (global-set-key (kbd "C-M-r") 'org-capture)
   (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.
@@ -289,12 +297,13 @@ Argument DESCRIPTION MIME description."
       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")))
 
@@ -554,6 +563,7 @@ Argument DESCRIPTION MIME description."
             (?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)
   )
@@ -569,6 +579,8 @@ Argument DESCRIPTION MIME description."
   (shell-command
    (format "%s %s"
        (substitute-in-file-name "$HOME/bin/bibtex_to_paper") bibtexkey)))
+(org-add-link-type "papers" 'open-research-paper)
+
 
 ;; stolen from
 ;; http://www-public.it-sudparis.eu/~berger_o/weblog/2012/03/23/how-to-manage-and-export-bibliographic-notesrefs-in-org-mode/
@@ -592,6 +604,25 @@ Argument DESCRIPTION MIME description."
 (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)   
@@ -600,7 +631,7 @@ Argument DESCRIPTION MIME description."
 ;; default listings package instead, use
 ;; (setq org-latex-listings t)
 ;; and change references to "minted" below to "listings"
-(setq org-latex-listings 'minted)
+(setq org-latex-listings 'minted)
 
 ;; default settings for minted code blocks
 (setq org-latex-minted-options
@@ -633,45 +664,34 @@ Argument DESCRIPTION MIME description."
                ("\\subsection{%s}" . "\\subsection*{%s}")
                ("\\subsubsection{%s}" . "\\subsubsection*{%s}")))
 
+(add-to-list 'org-latex-classes
+             '("letter"
+               "\\documentclass[11pt]{letter}"
+               ("\\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.  
-(defun my-auto-tex-cmd ()
-  "When exporting from .org with latex, automatically run latex,
-                     pdflatex, or xelatex as appropriate, using latexmk."
-  (let ((texcmd)))
-  ;; default command: pdflatex 
-  (setq texcmd "latexmk -pdflatex='pdflatex -synctex=1 --shell-escape --' -pdf %f")        
-  ;; pdflatex -> .pdf
-  (if (string-match "LATEX_CMD: pdflatex" (buffer-string))
-      (setq texcmd "latexmk -pdflatex='pdflatex -synctex=1 --shell-escape' -pdf %f"))
-  ;; xelatex -> .pdf
-  (if (string-match "LATEX_CMD: xelatex" (buffer-string))
-      (setq texcmd "latexmk -pdflatex='xelatex -syntex=1 --shell-escape' -bibtex -use-make -pdf %f"))
-  ;; LaTeX compilation command
-  (setq org-latex-to-pdf-process (list texcmd)))
-
-(add-hook 'org-latex-after-initial-vars-hook 'my-auto-tex-cmd)
+(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
+      '(("" "fontspec" t)
+        ("" "xunicode" t)
+        ))
 (setq org-latex-packages-alist
       '(("" "graphicx" t)
+        ("" "fontspec" t)
+        ("" "xunicode" t)
+        ("" "hyperref" t)
+        ("" "url" t)
+        ("" "rotating" t)
         ("" "longtable" nil)
         ("" "float" )))
 
-;; Custom packages
-(defun my-auto-tex-parameters ()
-  "Automatically select the tex packages to include. See https://github.com/kjhealy/latex-custom-kjh for the support files included here."
-  ;; default packages for ordinary latex or pdflatex export
-  (setq org-latex-default-packages-alist
-        '(("AUTO" "inputenc" t)
-          ("minted,minion" "org-preamble-pdflatex" t)))        
-  ;; Packages to include when xelatex is used
-  (if (string-match "LATEX_CMD: xelatex" (buffer-string))
-      (setq org-latex-default-packages-alist
-            '(("minted" "org-preamble-xelatex" t) ))))
-
-(add-hook 'org-latex-after-initial-vars-hook 'my-auto-tex-parameters)
-
 ; 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
@@ -684,6 +704,10 @@ Argument DESCRIPTION MIME description."
 (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)