|
|
|
|
@ -78,6 +78,12 @@ |
|
|
|
|
(mapcar |
|
|
|
|
(lambda (binding) |
|
|
|
|
(global-set-key (kbd (car binding)) (cdr binding))) binding-alist)) |
|
|
|
|
|
|
|
|
|
(defun define-key-alist (keymap binding-alist) |
|
|
|
|
"This function iterates over the binding-alist, which should be an alist of key and binding and sets each binding in the global-key-map" |
|
|
|
|
(mapcar |
|
|
|
|
(lambda (binding) |
|
|
|
|
(define-key keymap (kbd (car binding)) (cdr binding))) binding-alist)) |
|
|
|
|
#+END_SRC |
|
|
|
|
** Cosmetics |
|
|
|
|
Prefer a minimal appearance: no menu, toolbar or scroll-bars; no |
|
|
|
|
@ -815,70 +821,52 @@ |
|
|
|
|
(font-lock-add-keywords 'latex-mode |
|
|
|
|
`((,(rx "$") 0 'font-latex-sedate-face t)) t) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-S-SPC") 'TeX-insert-braces) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-v") 'wilder/TeX-insert-reference) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c ESC") 'wilder/TeX-insert-cite) |
|
|
|
|
; (define-key LaTeX-mode-map (kbd "C-c [") 'wilder/TeX-insert-cite) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-w") 'wilder/TeX-insert-cite) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-M-<return>") 'wilder/TeX-insert-align-dwim) |
|
|
|
|
|
|
|
|
|
;; unbind return - NOTE it is important to unbind |
|
|
|
|
;; <return> and not RET. If we unbind RET then C-m won't work |
|
|
|
|
;; either. |
|
|
|
|
(define-key LaTeX-mode-map (kbd "<return>") |
|
|
|
|
(lambda() (interactive) (insert "\\"))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "S-<return>") |
|
|
|
|
(lambda() (interactive) (insert "|"))) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-.") 'LaTeX-mark-environment) |
|
|
|
|
#+END_SRC |
|
|
|
|
Dealing with bad habits and sub|superscripts. Previous |
|
|
|
|
bindings were ~M-_~ and ~M-^~ but they turned out to be too |
|
|
|
|
typo-prone. |
|
|
|
|
#+BEGIN_SRC emacs-lisp |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-_") |
|
|
|
|
(lambda() (interactive) (flash-hline) (message "Use C-c C-k"))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-^") |
|
|
|
|
(lambda() (interactive) (flash-hline) (message "Use C-c C-i"))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-k") |
|
|
|
|
(lambda (r-begin r-end) (interactive "r") (add-delimiter "_{" "}" r-begin r-end))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-i") |
|
|
|
|
(lambda (r-begin r-end) (interactive "r") (add-delimiter "^{" "}" r-begin r-end))) |
|
|
|
|
#+END_SRC |
|
|
|
|
|
|
|
|
|
#+BEGIN_SRC emacs-lisp |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-|") (lambda (r-begin r-end) (interactive "r") (add-delimiter "|" "|" r-begin r-end))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-,") (lambda (r-begin r-end) (interactive "r") (add-delimiter ", " ", " r-begin r-end))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-\"") (lambda (r-begin r-end) (interactive "r") (add-delimiter "“" "”" r-begin r-end))) |
|
|
|
|
|
|
|
|
|
;; This is the rationale: C-M-SPC starts inline math C-M-RET starts display math |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-M-SPC") (lambda (r-begin r-end) (interactive "r") (add-delimiter "$" "$" r-begin r-end))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-d") 'wilder/TeX-insert-todonote) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-M-d") 'kill-sexp) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-M-i") 'down-list) ;; -i stands for /in/ |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-M-o") 'up-list) ;; -o stands for /out/ |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "<f4>") (lambda() (interactive) (message "Use C-c C-c"))) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-c C-c") (lambda() (interactive) (compile "/home/jacopods/scripts/latex-mk")) ) |
|
|
|
|
(define-key-alist LaTeX-mode-map |
|
|
|
|
'(("M-S-SPC" . TeX-insert-braces) |
|
|
|
|
("C-c C-v" . wilder/TeX-insert-reference) |
|
|
|
|
("C-M-<return>" . wilder/TeX-insert-align-dwim) |
|
|
|
|
;; unbind return - NOTE it is important to unbind |
|
|
|
|
;; <return> and not RET. If we unbind RET then C-m won't work |
|
|
|
|
;; either. |
|
|
|
|
("<return>" . (lambda() (interactive) (insert "\\"))) |
|
|
|
|
("S-<return>" . (lambda() (interactive) (insert "|"))) |
|
|
|
|
("C-c C-." . LaTeX-mark-environment) |
|
|
|
|
("C-c C-k" . (lambda (r-begin r-end) |
|
|
|
|
(interactive "r") |
|
|
|
|
(add-delimiter "_{" "}" r-begin r-end))) |
|
|
|
|
("C-c C-i" . (lambda (r-begin r-end) |
|
|
|
|
(interactive "r") |
|
|
|
|
(add-delimiter "^{" "}" r-begin r-end))) |
|
|
|
|
("M-|" . (lambda (r-begin r-end) |
|
|
|
|
(interactive "r") |
|
|
|
|
(add-delimiter "|" "|" r-begin r-end))) |
|
|
|
|
("M-," . (lambda (r-begin r-end) |
|
|
|
|
(interactive "r") |
|
|
|
|
(add-delimiter ", " ", " r-begin r-end))) |
|
|
|
|
("M-\"" . (lambda (r-begin r-end) |
|
|
|
|
(interactive "r") |
|
|
|
|
(add-delimiter "“" "”" r-begin r-end))) |
|
|
|
|
|
|
|
|
|
;; This is the rationale: C-M-SPC starts inline math C-M-RET starts display math |
|
|
|
|
|
|
|
|
|
("C-M-SPC" . (lambda (r-begin r-end) (interactive "r") (add-delimiter "$" "$" r-begin r-end))) |
|
|
|
|
("C-c C-d" . wilder/TeX-insert-todonote) |
|
|
|
|
("C-M-d" . kill-sexp) |
|
|
|
|
("C-M-i" . down-list) ;; -i stands for /in/ |
|
|
|
|
("C-M-o" . up-list) ;; -o stands for /out/ |
|
|
|
|
("<f4>" . ( lambda() (interactive) (message "Use C-c C-c"))) |
|
|
|
|
("C-c C-c" . ( lambda() (interactive) (compile "/home/jacopods/scripts/latex-mk")) ) |
|
|
|
|
("~" . wilder/TeX-replace-tilde) |
|
|
|
|
;; Force moves around to be more “semantic” |
|
|
|
|
("C-v" . forward-paragraph) |
|
|
|
|
("M-v" . backward-paragraph) |
|
|
|
|
("C-S-v" . backward-paragraph))) |
|
|
|
|
|
|
|
|
|
(mapcar (lambda (ch) |
|
|
|
|
(define-key LaTeX-mode-map (kbd ch) 'insert-char-with-padding)) |
|
|
|
|
'("=" "≠" ">" "<" "≥" "≤" "⇒" "∩" "∪" "∨" "∧" "×" "⊂" "⊃")) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "~") 'wilder/TeX-replace-tilde) |
|
|
|
|
|
|
|
|
|
;; Force moves around to be more “semantic” |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-v") 'forward-paragraph) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "M-v") 'backward-paragraph) |
|
|
|
|
(define-key LaTeX-mode-map (kbd "C-S-v") 'backward-paragraph) |
|
|
|
|
|
|
|
|
|
(define-key LaTeX-mode-map (kbd "<next>") (lambda() (interactive) (message "Command disabled"))) |
|
|
|
|
(define-key |
|
|
|
|
LaTeX-mode-map (kbd "<prior>") (lambda() (interactive) (message "Command |
|
|
|
|
disabled"))) )) |
|
|
|
|
)) |
|
|
|
|
#+END_SRC |
|
|
|
|
|
|
|
|
|
*** Require |
|
|
|
|
|