-
Notifications
You must be signed in to change notification settings - Fork 0
/
init-emacs
181 lines (151 loc) · 5.32 KB
/
init-emacs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
;; .emacs
;; Added by Package.el. This must come before configurations of
;; installed packages. Don't delete this line. If you don't want it,
;; just comment it out by adding a semicolon to the start of the line.
;; You may delete these explanatory comments.
(package-initialize)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(ansi-color-faces-vector
[default default default italic underline success warning error])
'(ansi-color-names-vector
["#2e3436" "#a40000" "#4e9a06" "#c4a000" "#204a87" "#5c3566" "#729fcf" "#eeeeec"])
'(custom-enabled-themes (quote (light-blue)))
'(diff-switches "-u")
'(ess-R-font-lock-keywords
(quote
((ess-R-fl-keyword:modifiers . t)
(ess-R-fl-keyword:fun-defs . t)
(ess-R-fl-keyword:keywords . t)
(ess-R-fl-keyword:assign-ops . t)
(ess-R-fl-keyword:constants . t)
(ess-fl-keyword:fun-calls . t)
(ess-fl-keyword:numbers)
(ess-fl-keyword:operators)
(ess-fl-keyword:delimiters . t)
(ess-fl-keyword:=)
(ess-R-fl-keyword:F&T . t)
(ess-R-fl-keyword:%op%))))
'(package-selected-packages
(quote
(magit tabbar markdown-mode polymode auctex bibretrieve ess-R-data-view auto-complete-auctex ess ess-R-object-popup ess-smart-equals ess-view))))
;;; uncomment for CJK utf-8 support for non-Asian users
;; (require 'un-define)
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
(when (>= emacs-major-version 24)
(require 'package)
(add-to-list
'package-archives
'("melpa" . "http://melpa.org/packages/")
t)
(package-initialize))
(org-babel-do-load-languages
'org-babel-load-languages
'((R . t)
(python . t)
(org . t)
(ditaa . t)
(latex . t)))
(setq-default fill-column 80)
(require 'git)
;; Graphically indicate fill-column
(require 'fill-column-indicator)
;; width and color
(setq fci-rule-width 1)
(setq fci-rule-color "darkblue")
;; Define when fci should activate itself
(define-globalized-minor-mode global-fci-mode fci-mode
(lambda ()
(if (and
(not (string-match "^\*.*\*$" (buffer-name)))
(not (eq major-mode 'dired-mode)))
(fci-mode 1))))
(global-fci-mode 1)
;; Define automatic activation of 80 column fill
(setq-default fill-column 80)
;; To activate auto-fill in all text mode
(setq-default auto-fill-function 'do-auto-fill)
;; Activate Shift move windows
(windmove-default-keybindings)
;; Show matching parenthesis
(show-paren-mode 1)
;; Set font size
(set-face-attribute 'default nil :height 100)
;; fontify code in code blocks
(setq org-src-fontify-natively t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Latex for Emacs
;;
;; Dependencies: okular, texlive-full, auctex
;;
;; Okular setup:
;; 1.) Open Okular and go to...
;; 2.) Settings -> Configure Okular -> Editor
;; 3.) Set Editor to "Emacs client"
;; 4.) Command should automatically set to:
;; emacsclient -a emacs --no-wait +%l %f
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; only start server for okular comms when in latex mode
(add-hook 'LaTeX-mode-hook 'server-start)
(setq TeX-PDF-mode t) ;; use pdflatex instead of latex
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Standard emacs/latex config
;; http://emacswiki.org/emacs/AUCTeX
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq-default TeX-master nil)
(add-hook 'LaTeX-mode-hook 'visual-line-mode)
(add-hook 'LaTeX-mode-hook 'flyspell-mode)
(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode)
; enable auto-fill mode, nice for text
(add-hook 'LaTeX-mode-hook 'auto-fill-mode)
(add-hook 'LaTeX-mode-hook 'turn-on-reftex)
(setq reftex-plug-into-AUCTeX t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Enable synctex correlation
(setq TeX-source-correlate-method 'synctex)
;; Enable synctex generation. Even though the command shows
;; as "latex" pdflatex is actually called
(custom-set-variables '(LaTeX-command "latex -synctex=1") )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Use Okular as the pdf viewer. Build okular
;; command, so that Okular jumps to the current line
;; in the viewer.
(setq TeX-view-program-selection
'((output-pdf "PDF Viewer")))
(setq TeX-view-program-list
'(("PDF Viewer" "okular --unique %o#src:%n%b")))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Default source block generateur
;; (defun org-insert-source-block (name language switches header)
;; "Asks name, language, switches, header.
;; Inserts org-mode source code snippet"
;; (interactive "sname?
;; slanguage?
;; sswitches?
;; sheader? ")
;; (insert
;; (if (string= name "")
;; ""
;; (concat "#+NAME: " name) )
;; (format "
;; #+BEGIN_SRC %s %s %s
;; #+END_SRC" language switches header
;; )
;; )
;; (forward-line -1)
;; (goto-char (line-end-position))
;; )
(add-to-list 'org-structure-template-alist
'("s" "#+NAME: ?\n#+BEGIN_SRC \n\n#+END_SRC"))