|
|
(6 intermediate revisions by the same user not shown) |
Line 13: |
Line 13: |
| ** official [https://www.gnu.org/software/emacs/manual/html_node/emacs/index.html manual] | | ** official [https://www.gnu.org/software/emacs/manual/html_node/emacs/index.html manual] |
| ** I haven't found yet any good tutorial, outside of the official [https://www.gnu.org/software/emacs/tour/ tour] | | ** I haven't found yet any good tutorial, outside of the official [https://www.gnu.org/software/emacs/tour/ tour] |
| | ** [http://www.emacswiki.org/ wiki] (with many tips) |
| | ** [https://github.com/vikasrawal/orgpaper/blob/master/orgpapers.org org tutorial] |
| | ** [https://github.com/emacsmirror/p code] (mirrors packages) |
| | ** [http://xkcd.com/378/ cartoon] |
|
| |
|
| * '''Important packages''': | | * '''Important packages''': |
| ** [http://orgmode.org/) org-mode] (already included in recent versions of emacs) | | ** [http://orgmode.org/) org-mode] |
| ** [http://cx4a.org/software/auto-complete/ Auto-Complete] | | ** [http://cx4a.org/software/auto-complete/ Auto-Complete] |
| ** [http://ess.r-project.org/ ESS] | | ** [http://ess.r-project.org/ ESS] |
| ** [http://www.gnu.org/software/auctex/ AUCTeX] | | ** [http://www.gnu.org/software/auctex/ AUCTeX] |
|
| |
|
| * '''Configuration''': my own file <nowiki>~/.emacs</nowiki> (I try to avoid customizing it too much) | | * '''Configuration''': my own file <nowiki>~/.emacs</nowiki> (versioned [https://github.com/timflutre/perso/blob/master/emacs here]): |
| | |
| <nowiki>
| |
| ;; .emacs
| |
| | |
| (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.
| |
| '(column-number-mode t) ;; in the mode line
| |
| '(size-indication-mode t) ;; in the mode line
| |
| '(display-time-mode 1) ;; in the mode line
| |
| '(display-time-day-and-date t) ;; in the mode line
| |
| '(display-time-24hr-format t) ;; in the mode line
| |
| '(case-fold-search t)
| |
| '(current-language-environment "UTF-8")
| |
| '(default-input-method "rfc1345")
| |
| '(global-font-lock-mode t nil (font-lock))
| |
| '(show-paren-mode t))
| |
| (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.
| |
| )
| |
| | |
| (setq inhibit-startup-message t)
| |
| | |
| (add-to-list 'load-path "~/.emacs.d/")
| |
| | |
| (setq latex-run-command "pdflatex")
| |
| | |
| ;; config for C/C++ code
| |
| (setq c-default-style "bsd"
| |
| c-basic-offset 2
| |
| tab-width 2
| |
| indent-tabs-mode t)
| |
| | |
| ;;--------------------------------------------------------------------
| |
| | |
| ;; START config Auto-Complete
| |
| (require 'auto-complete-config)
| |
| (add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
| |
| (ac-config-default)
| |
| ;; END config Auto-Complete
| |
| | |
| ;;--------------------------------------------------------------------
| |
| | |
| ;; START config ESS
| |
| (require 'ess-site)
| |
| ;;(load "~/src_ext_nb/ESS/ess-12.09-2/lisp/ess-site")
| |
| | |
| ;; tips from http://emacswiki.org/emacs/EmacsSpeaksStatistics
| |
| (setq ess-eval-visibly-p nil) ;otherwise C-c C-r (eval region) takes forever
| |
| (setq ess-ask-for-ess-directory nil) ;otherwise you are prompted each time you start an interactive R session
| |
| | |
| ;; tips source: http://www.emacswiki.org/emacs/ESSAuto-complete
| |
| (setq ess-use-auto-complete t)
| |
| ;; END config ESS
| |
| | |
| ;; clear R console (http://stackoverflow.com/a/3450038/597069)
| |
| (defun clear-shell ()
| |
| (interactive)
| |
| (let ((old-max comint-buffer-maximum-size))
| |
| (setq comint-buffer-maximum-size 0)
| |
| (comint-truncate-buffer)
| |
| (setq comint-buffer-maximum-size old-max)))
| |
| | |
| ;;--------------------------------------------------------------------
| |
| | |
| ;; START config AUCTeX
| |
| ;;(load "/home/tflutre/src/LATEX_PKGS/AUCTEX/auctex.el" nil t t)
| |
| ;;(load "/home/tflutre/src/LATEX_PKGS/AUCTEX/preview-latex.el" nil t t)
| |
| ;;(add-to-list 'load-path "/home/tflutre/src/LATEX_PKGS/AUCTEX")
| |
| (setq TeX-auto-save t)
| |
| (setq TeX-parse-self t)
| |
| (setq-default TeX-master nil)
| |
| (setq TeX-save-query nil)
| |
| (setq TeX-PDF-mode t) ;; to have a pdf output for all LaTeX documents
| |
| ;; END config AUCTeX
| |
| | |
| ;;--------------------------------------------------------------------
| |
| | |
| ;; START config org-mode
| |
| (global-set-key "\C-cl" 'org-store-link)
| |
| (global-set-key "\C-cc" 'org-capture)
| |
| (global-set-key "\C-ca" 'org-agenda)
| |
| (global-set-key "\C-cb" 'org-iswitchb)
| |
| (org-babel-do-load-languages
| |
| 'org-babel-load-languages
| |
| '((R . t)
| |
| (sh . t)
| |
| (python . t)
| |
| ))
| |
| (setq org-confirm-babel-evaluate nil)
| |
| (require 'org-latex)
| |
| (add-to-list 'org-export-latex-packages-alist '("" "listings"))
| |
| (setq org-export-latex-listings t)
| |
| (setq org-export-latex-listings-options
| |
| '(("breaklines")))
| |
| (setq org-log-done 'time)
| |
| (setq org-startup-truncated nil) ;so that lines longer than the screen are not truncated
| |
| ;; END config org-mode
| |
| | |
| ;;--------------------------------------------------------------------
| |
| | |
| ;; START config python-mode
| |
| (setq
| |
| python-shell-interpreter "ipython"
| |
| python-shell-interpreter-args ""
| |
| python-shell-prompt-regexp "In \\[[0-9]+\\]: "
| |
| python-shell-prompt-output-regexp "Out\\[[0-9]+\\]: "
| |
| python-shell-completion-setup-code
| |
| "from IPython.core.completerlib import module_completion"
| |
| python-shell-completion-module-string-code
| |
| "';'.join(module_completion('''%s'''))\n"
| |
| python-shell-completion-string-code
| |
| "';'.join(get_ipython().Completer.all_completions('''%s'''))\n")
| |
| ;; END config python-mode
| |
| </nowiki>
| |
|
| |
|
| * '''Tips''': | | * '''Tips''': |
| ** from the office computer (desktop), log interactively to a cluster node, launch <code>emacs --daemon</code> and keep the terminal open indefinitely; then access this session from any computer, e.g. a laptop, with <code>emacsclient -t</code> | | ** from the office computer (desktop), log interactively to a cluster node, launch <code>emacs --daemon</code> and keep the terminal open indefinitely; then access this session from any computer, e.g. a laptop, with <code>emacsclient -t</code> |
| ** especially useful with [http://en.wikipedia.org/wiki/PuTTY PuTTY] on Windows, launch emacs so that its window is the terminal itself, via <code>emacs -nw</code> | | ** especially useful with [http://en.wikipedia.org/wiki/PuTTY PuTTY] on Windows, launch emacs so that its window is the terminal itself, via <code>emacs -nw</code> |
| | ** when updating org-mode, one may have to first comment all org-related lines in ~/.emacs, remove the dir ~/.emacs.d/elpa/org-*, re-open Emacs with option -Q, install the latest version of org-mode, close Emacs and re-open it without -Q, uncomment all org-related lines in ~/.emacs |
|
| |
|
| <!-- ##### DO NOT edit below this line unless you know what you are doing. ##### --> | | <!-- ##### DO NOT edit below this line unless you know what you are doing. ##### --> |