Created
April 28, 2016 08:42
-
-
Save mickael-kerjean/612078f789230331b61127c90c83c142 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; https://github.com/dholm/benchmark-init-el | |
;; (add-to-list 'load-path "~/.emacs.d/lisp/plugins/benchmark-init") | |
;; (require 'benchmark-init-loaddefs) | |
;; (benchmark-init/activate) | |
;; ------------------------------------------------------------------------------------- | |
;; --------------------- SHORTCUTS ----------------------------------------- | |
;; ------------------------------------------------------------------------------------- | |
;; LISP | |
;; lisp-interative-mode | |
;; M-: to eval | |
;; enlarge window C-x { or C-x } | |
;;key binding | |
(global-set-key [f1] 'neotree-toggle) | |
(global-set-key [f2] 'eww-open-file) | |
(global-set-key [f3]'comment-region) | |
(global-set-key (kbd "<M-f3>") 'uncomment-region) | |
(global-set-key [f4] 'magit-status) | |
(global-set-key [f5] 'eshell) | |
(global-set-key [f9] 'artist-mode) | |
(global-set-key [f11] 'toggle-frame-fullscreen) | |
;; occur short cut | |
(global-set-key (kbd "C-c o") 'occur) | |
;; code folding | |
(global-set-key (kbd "C-c C-d") 'hs-hide-all) | |
(global-set-key (kbd "C-c C-f") 'hs-show-all) | |
(global-set-key (kbd "C-c C-c") 'hs-toggle-hiding) | |
;; right click for artist mode | |
(eval-after-load "artist" | |
'(define-key artist-mode-map [(down-mouse-3)] 'artist-mouse-choose-operation)) | |
;; recentf | |
(global-set-key (kbd "C-x C-r") 'recentf-open-files) | |
;; eww - emacs web browser | |
;; undo-tree mode | |
(global-set-key (kbd "C-+") 'undo-tree-visualize) | |
;; move multiple line | |
(global-set-key (kbd "M-n") (kbd "C-u 5 C-n")) | |
(global-set-key (kbd "M-p") (kbd "C-u 5 C-p")) | |
;; overwrite default conf | |
(global-set-key "\C-s" 'isearch-forward-regexp) | |
(global-set-key "\C-r" 'isearch-backward-regexp) | |
;; ------------------------------------------------------------------------------------- | |
;; --------------------- DEFAULT CONFIG ----------------------------------------- | |
;; ------------------------------------------------------------------------------------- | |
(add-to-list 'load-path "~/.emacs.d/lisp") | |
;; lag on window | |
(setq mac-command-modifier 'meta) | |
(setq mac-option-modifier 'alt) | |
(setq mac-right-option-modifier 'super) | |
(if (eq window-system 'w32) | |
(progn | |
(setq explicit-shell-file-name "C:/cygwin/bin/bash.exe") | |
(setq shell-file-name "bash") | |
(setq explicit-bash.exe-args '("--noediting" "--login" "-i")) | |
(setenv "SHELL" shell-file-name) | |
(add-hook 'comint-output-filter-functions 'comint-strip-ctrl-m))) | |
;;(add-to-list 'exec-path "C:/cygwin/bin") | |
;;(setq default-directory "~/") | |
;;(setq default-directory "C:/wamp/www/"))) | |
(setq w32-get-true-file-attributes nil) | |
(setq vc-handled-backends nil) | |
(remove-hook 'find-file-hooks 'vc-find-file-hook) | |
;; font | |
(set-default-font "Monaco 10") | |
;; indent | |
(setq-default indent-tabs-mode nil) | |
(setq-default tab-width 4) | |
(setq standard-indent 4) | |
(setq indent-line-function 'insert-tab) | |
(setq tab-width 4) | |
(setq tab-stop-list '(4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80)) | |
(setq indent-tabs-mode nil) | |
;; remove sound | |
(setq visible-bell 1) | |
;; scroll | |
(setq scroll-step 1) | |
(setq scroll-conservatively 10) | |
(setq scroll-margin 7) | |
(setq scroll-conservatively 5) | |
;; remove unecessary UI | |
(menu-bar-mode -1) | |
(toggle-scroll-bar -1) | |
(tool-bar-mode -1) | |
;; disable backup files | |
(setq make-backup-files nil) | |
;; line and column numbering | |
(column-number-mode 1) | |
(line-number-mode 1) | |
;; auto wraping | |
(set-default 'truncate-lines t) | |
;; Code folding | |
(add-hook 'prog-mode-hook #'(lambda () (hs-minor-mode t) )) | |
;; simple buffer | |
(ido-mode t) | |
(setq ido-enable-flex-matching t) | |
(setq resize-mini-windows t) | |
(add-hook 'minibuffer-setup-hook | |
(lambda () (setq truncate-lines nil))) | |
(add-to-list 'ido-ignore-buffers "*Messages*") | |
(add-to-list 'ido-ignore-buffers "*Buffer*") | |
(add-to-list 'ido-ignore-buffers "*ESS*") | |
(add-to-list 'ido-ignore-buffers "*NeoTree*") | |
(add-to-list 'ido-ignore-buffers "*Completions*") | |
(add-to-list 'ido-ignore-buffers "*Help*") | |
(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. | |
'(fringe ((t (:background "#1b1d1e")))) | |
'(ido-first-match ((t (:foreground "#435154" :weight bold)))) | |
'(ido-incomplete-regexp ((t (:foreground "#00ff00")))) | |
'(ido-indicator ((t (:foreground "#ff0000")))) | |
'(ido-only-match ((t (:foreground "#cbae52" :weight bold)))) | |
'(ido-subdir ((t (:foreground "#6891c0")))) | |
'(mode-line ((t (:box (:line-width 1 :color "#121212"))))) | |
'(tabbar-button ((t (:inherit tabbar-default)))) | |
'(tabbar-button-highlight ((t (:inherit tabbar-default)))) | |
'(tabbar-default ((t (:inherit variable-pitch :background "#151515" :foreground "#435154" :weight bold)))) | |
'(tabbar-highlight ((t (:inherit tabbar-default :foreground "#cfcab5")))) | |
'(tabbar-selected ((t (:inherit tabbar-default :foreground "#cfcab5")))) | |
'(tabbar-separator ((t (:inherit tabbar-default)))) | |
'(tabbar-unselected ((t (:inherit tabbar-default))))) | |
;; affiche l'heure dans la bare de status | |
(load "time" t t) | |
(display-time) | |
;; highlight selected text | |
(transient-mark-mode t) | |
;; supprime tous les espaces en fin de ligne | |
(add-hook 'before-save-hook 'delete-trailing-whitespace) | |
; Affichage des images et fichiers compressés | |
(setq auto-image-file-mode t) | |
(setq auto-compression-mode t) | |
;; save cursor position | |
(require 'saveplace) | |
(setq-default save-place t) | |
;; Parenthese matching | |
(load-library "paren") | |
(require 'paren) | |
(show-paren-mode 1) | |
(setq-default hilight-paren-expression t) | |
;; quit emacs | |
(fset 'yes-or-no-p 'y-or-n-p) | |
;; recentf stuff | |
(require 'recentf) | |
(recentf-mode 1) | |
(setq recentf-max-saved-items 1000) | |
(setq recentf-max-menu-items 50) | |
;; scroll mouse position | |
(setq scroll-preserve-screen-position 1) | |
;; tabulation automatique | |
(setq c-auto-newline t) | |
(setq cssm-indent-function #'cssm-c-style-indenter) | |
;; Doc VIEW MODE - for window http://www.emacswiki.org/emacs/DocViewMode | |
(setq doc-view-ghostscript-program "gswin32c") | |
;; backup | |
(setq make-backup-files nil) | |
;; disable line wrappping | |
(auto-fill-mode -1) | |
;; initial screen | |
(setq inhibit-startup-screen t) | |
(setq inhibit-splash-screen t) | |
;; prevent new window | |
(setq pop-up-frames nil) | |
;; remove visual bell | |
(setq visible-bell nil) | |
(setq ring-bell-function 'ignore) | |
;; eshell clear screen | |
(defun eshell-clear-buffer () | |
"Clear terminal" | |
(interactive) | |
(let ((inhibit-read-only t)) | |
(erase-buffer) | |
(eshell-send-input))) | |
(add-hook 'eshell-mode-hook | |
'(lambda() | |
(local-set-key (kbd "C-l") 'eshell-clear-buffer))) | |
;; package install | |
(require 'package) | |
(add-to-list 'package-archives | |
'("melpa" . "http://melpa.org/packages/") t) | |
;; ------------------------------------------------------------------------------------- | |
;; ---------------------- THEME ---------------------------------------------- | |
;; ------------------------------------------------------------------------------------- | |
(defun theme-mike-dark () | |
(interactive) | |
(setq ansi-term-color-vector [unspecified "#3f3f3f" "#cc9393" "#7f9f7f" "#f0dfaf" "#8cd0d3" "#dc8cc3" "#93e0e3" "#dcdccc"]) | |
(color-theme-install | |
'(theme-mike-dark | |
( | |
(background-color . "#1b1d1e") | |
(background-mode . light) | |
(border-color . "#969696") | |
(cursor-color . "#ffffff") | |
(foreground-color . "#cfcab5") | |
(mouse-color . "black") | |
) | |
(region ((t (:background "#666666")))) | |
(font-lock-builtin-face ((t (:foreground "#cbae52")))) | |
(font-lock-comment-face ((t (:foreground "#435154")))) | |
(font-lock-doc-face ((t (:foreground "#435154")))) | |
(font-lock-function-name-face ((t (:foreground "#b7a385")))) | |
(font-lock-keyword-face ((t (:foreground "#6891c0")))) | |
(font-lock-string-face ((t (:foreground "#c77429")))) | |
(font-lock-type-face ((t (:foreground"#199915")))) | |
(font-lock-constant-face ((t (:foreground "#e6a00f")))) | |
(font-lock-variable-name-face ((t (:foreground "#e6a00f")))) | |
(mode-line ((t (:foreground "#ffffff" :background "#161616" :box (:line-width 1 :color "#121212"))))) | |
(mode-line-inactive ((t (:foreground "#ffffff" :background "#161616")))) | |
(linum ((t (:foreground "#435154" :background "#161616")))) | |
(fringe ((t (:inherit background-color)))) | |
(minibuffer-prompt ((t (:foreground "#6891c0" :background "#1b1d1e" :bold t)))) | |
(vertical-border ((t (:foreground "#282a2e")))) | |
(font-lock-warning-face ((t (:foreground "red" :bold t)))) | |
))) | |
(provide 'theme-mike-dark) | |
(defvar mkl-bg "#2a2a38") | |
(defvar mkl-bg+1 "#20242E") | |
(defvar mkl-fg "#c5c8c6") | |
(defvar mkl-fg "#ff0000") | |
(defvar mkl-gray "#707880") | |
(defvar mkl-blue "#81a2be") | |
(defvar mkl-bluem1 "#7293AF") | |
(defvar mkl-yellow "#f0c674") | |
(defvar mkl-orange "#de935f") | |
(defvar mkl-green "#b5bd68") | |
(defvar mkl-red "#cc6666") | |
(defun color-theme-mika-lighter () | |
"The wombat color theme for Emacs." | |
(interactive) | |
(color-theme-install | |
`(color-theme-mika-lighter | |
;; Built-in | |
((background-color . ,mkl-bg) | |
(background-mode . dark) | |
(border-color . ,mkl-bg) | |
(cursor-color . ,mkl-fg) | |
(foreground-color . ,mkl-fg) | |
(mouse-color . "black")) | |
(region ((t (:background ,mkl-bg+1)))) | |
;; Default components | |
(button ((t (:underline t :foreground ,mkl-blue)))) | |
(link ((t (:underline t :foreground ,mkl-blue)))) | |
(custom-variable-tag ((t (:foreground ,mkl-green)))) | |
(custom-group-tag ((t (:foreground ,mkl-blue :bold t :height 1.3)))) | |
(custom-state ((t (:foreground ,mkl-orange)))) | |
(custom-button ((t (:foreground ,mkl-fg :background ,mkl-blue :box (:line-width 2 :color ,mkl-blue))))) | |
;; font-lock | |
(font-lock-builtin-face ((t (:foreground ,mkl-fg)))) | |
(font-lock-comment-face ((t (:foreground ,mkl-gray)))) | |
(font-lock-doc-face ((t (:inherit font-lock-comment-face)))) | |
(font-lock-function-name-face ((t (:foreground ,mkl-yellow)))) | |
(font-lock-keyword-face ((t (:foreground ,mkl-blue)))) | |
(font-lock-string-face ((t (:foreground ,mkl-green)))) | |
(font-lock-type-face ((t (:foreground"#de935f")))) | |
(font-lock-constant-face ((t (:foreground ,mkl-red)))) | |
(font-lock-variable-name-face ((t (:inherit font-lock-builtin-face)))) | |
(font-lock-warning-face ((t (:foreground ,mkl-red :bold t)))) | |
;; LAYOUT & PARTS | |
(mode-line ((t (:foreground "#eeeeee" :background ,mkl-bg+1)))) | |
(mode-line-inactive ((t (:foreground "#eeeeee" :background nil)))) | |
(minibuffer-prompt ((t (:foreground "#81a2be" :background "#2A2E38" :bold t)))) | |
(linum ((t (:foreground ,mkl-gray :background ,mkl-bg+1)))) | |
(fringe ((t (:inherit background-color)))) | |
(vertical-border ((t (:foreground ,mkl-bg+1)))) | |
;; TABBAR2 | |
(tabbar-default ((t (:inherit variable-pitch :background ,mkl-bg+1)))) | |
(tabbar-button ((t (:inherit tabbar-default :box (:line-width 8 :color ,mkl-bg+1 :style nil))))) | |
(tabbar-button-highlight ((t (:inherit tabbar-default)))) | |
(tabbar-highlight ((t (:inherit tabbar-default :foreground ,mkl-blue )))) | |
(tabbar-selected ((t (:foreground ,mkl-blue)))) | |
;;(tabbar-separator ((t (:box (:line-width 8 :color ,mkl-bg+1 :style nil))))) | |
(tabbar-unselected ((t (:inherit tabbar-default)))) | |
;; neotree | |
(neo-dir-link-face ((t (:foreground ,mkl-blue)))) | |
(neo-expand-btn-face ((t (:foreground ,mkl-bluem1)))) | |
(neo-file-link-face ((t (:foreground ,mkl-fg)))) | |
(neo-root-dir-face ((t (:foreground ,mkl-red)))) | |
(neo-banner-face ((t (:foreground ,mkl-fg)))) | |
(neo-header-face ((t (:foreground ,mkl-fg)))) | |
;; dired | |
(dired-directory ((t (:foreground ,mkl-blue)))) | |
(dired-header ((t (:inherit neo-root-dir-face)))) | |
;; Org mode | |
(org-done ((t (:foreground "#435154")))) | |
(org-todo ((t (:foreground "#435154")))) | |
(org-document-title ((t (:inherit font-lock-keyword-face)))) | |
(org-level-1 ((t (:foreground ,mkl-blue :background nil :height 120 :slant italic :bold t)))) | |
(org-level-2 ((t (:foreground ,mkl-bluem1)))) | |
(org-level-3 ((t (:foreground ,mkl-bluem1)))) | |
(org-level-4 ((t (:foreground ,mkl-bluem1)))) | |
(org-level-5 ((t (:foreground ,mkl-bluem1)))) | |
(org-level-6 ((t (:foreground ,mkl-bluem1)))) | |
(org-table ((t (:inherit inherit font-lock-keyword-face)))) | |
(org-special-keyword ((t (:inherit font-lock-comment-face)))) | |
(org-block ((t (:inherit font-lock-comment-face)))) | |
(org-date ((t (:inherit inherit font-lock-comment-face)))) | |
(org-tag ((t (:foreground ,mkl-orange)))) | |
(org-checkbox-statistics-todo ((t (:foreground ,mkl-orange)))) | |
(org-link ((t (:foreground ,mkl-orange)))) | |
(org-checkbox ((t (:foreground ,mkl-orange)))) | |
))) | |
(provide 'color-theme-mika-lighter) | |
(add-to-list 'load-path "~/.emacs.d/lisp/themes") | |
(require 'color-theme) | |
(eval-after-load "color-theme" | |
'(progn | |
(color-theme-initialize) | |
(color-theme-mika-lighter))) | |
;; ------------------------------------------------------------------------------------- | |
;; ---------------------- PLUG IN -------------------------------------------- | |
;; ------------------------------------------------------------------------------------- | |
(defun region-active-p () (and transient-mark-mode mark-active)) | |
(package-initialize) | |
;; LINUM : display line numbers | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/linum") | |
(load "linum.el") | |
(global-linum-mode 9) | |
;; NYAN MODE : get cursor position on the screen | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/nyan") | |
(load "nyan-mode.el") | |
(nyan-mode t) | |
;;JS2-MODE | |
;; (add-to-list 'load-path "~/.emacs.d/lisp/plugins/js2-mode") | |
;; (require 'js2-mode) | |
;; (set-face-underline 'js2-warning nil) | |
;; (set-face-background 'js2-warning nil) | |
;; ;;(add-hook 'js-mode-hook 'js2-minor-mode) | |
;; ;;(add-hook 'js2-mode-hook 'ac-js2-mode) | |
;; (setq js2-highlight-level 3) | |
;; PHP MODE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/php-mode") | |
(autoload 'php-mode "php-mode" "Major mode for editing php code." t) | |
;; NEOTREE : directory view | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/neotree") | |
(require 'neotree) | |
(setq neo-smart-open t) | |
(setq neo-theme 'nerd) | |
(add-hook 'neotree-mode-hook | |
(lambda () | |
(face-remap-add-relative 'default "aqua"))) | |
;; AUTO COMPLETE | |
(require 'auto-complete-config) | |
(ac-config-default) | |
(set-face-background 'popup-tip-face "#272727") | |
(set-face-foreground 'popup-tip-face "#cfcab5") | |
(set-face-background 'popup-face "#cfcab5") | |
(set-face-background 'popup-scroll-bar-background-face "#cfcab5") | |
(set-face-background 'popup-scroll-bar-foreground-face "#272727") | |
(set-face-background 'popup-menu-mouse-face "#272727") | |
(set-face-background 'ac-selection-face "#272727") | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/tern/emacs") | |
(setenv "NODE_PATH" "C:/Users/sesa369698/AppData/Roaming/npm/node_modules/tern") | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/tern/") | |
(autoload 'tern-mode "tern.el" nil t) | |
(add-hook 'js-mode-hook (lambda () (tern-mode t))) | |
(add-hook 'js2-mode-hook (lambda () (tern-mode t))) | |
(add-to-list 'auto-mode-alist '("\\.less\\'" . css-mode)) | |
(add-to-list 'auto-mode-alist '("\\.scss\\'" . css-mode)) | |
;(add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode)) | |
(add-to-list 'auto-mode-alist '("\\.tmpl\\'" . html-mode)) | |
(add-hook 'html-mode-hook | |
(lambda () | |
;; Default indentation is usually 2 spaces, changing to 4. | |
(set (make-local-variable 'sgml-basic-offset) 4))) | |
(eval-after-load 'tern | |
'(progn | |
(require 'tern-auto-complete) | |
(tern-ac-setup))) | |
(defun delete-tern-process () | |
(interactive) | |
(delete-process "Tern")) | |
(setf callback (lambda (port err) | |
(if port | |
(unwind-protect | |
(tern-req port doc runner) | |
(funcall runner '((err connection-failed)) nil)) | |
(funcall f err nil)))) | |
;; powerline | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/powerline") | |
(defcustom powerline-default-separator 'curve | |
"The separator to use for the default theme." | |
:group 'powerline) | |
(require 'powerline) | |
(powerline-default-theme) | |
;; DIMINISH to remove scrap from modeline | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/diminish") | |
(require 'diminish) | |
;; SMOOTH SCROLL | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/smooth-scrolling") | |
(require 'smooth-scrolling) | |
(setq mouse-wheel-scroll-amount '(1 ((shift) . 1))) ;; one line at a time | |
(setq mouse-wheel-follow-mouse 't) ;; scroll window under mouse | |
(setq scroll-step 1) ;; keyboard scroll one line at a time | |
;; AUTOPAIR | |
;; (add-to-list 'load-path "~/.emacs.d/lisp/plugins/autopair") | |
;; (require 'autopair) | |
;; (autopair-global-mode) | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/paredit") | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/paredit-everywhere") | |
(require 'paredit) | |
;(paredit-mode) | |
;; (define-minor-mode paredit-everywhere | |
;; "This mode contains little helpers for non lisp developement" | |
;; nil "" '(((kbd "{") . insert-c-block-parentheses))) | |
;; (defun insert-c-block-parentheses () | |
;; (interactive) | |
;; (insert "{") | |
;; (newline) | |
;; (newline) | |
;; (insert "}") | |
;; (indent-for-tab-command) | |
;; (previous-line) | |
;; (indent-for-tab-command)) | |
;; (paredit-everywhere) | |
;; (add-hook 'prog-mode-hook 'paredit-mode) | |
;; (add-hook 'prog-mode-hook 'paredit-everywhere) | |
;; CENTERED WINDOW MODE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/centered-window-mode") | |
(require 'centered-window-mode) | |
(centered-window-mode t) | |
;; MULTIPLE CURSORS | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/multiple-cursors") | |
(require 'multiple-cursors) | |
;; UNDO-TREE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/undo-tree") | |
(require 'undo-tree) | |
(global-undo-tree-mode) | |
;; LITABLE-MODE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/litable-mode") | |
(require 'litable) | |
;; PULM-MODE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/puml-mode-git") | |
(require 'puml-mode) | |
(add-to-list 'auto-mode-alist | |
'("\\.puml\\'" . puml-mode) | |
'("\\.plantuml\\'" . puml-mode)) | |
;; PROJECTILE | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/projectile") | |
(require 'projectile) | |
(projectile-global-mode) | |
(setq projectile-indexing-method 'alien) | |
(setq projectile-enable-caching t) | |
;; (add-to-list 'load-path "~/.emacs.d/lisp/plugins/helm") | |
;; (require 'helm-config) | |
;; (helm-mode 1) | |
;; typescript mode | |
;; sample config | |
(add-hook 'typescript-mode-hook | |
(lambda () | |
(tide-setup) | |
(flycheck-mode +1) | |
(setq flycheck-check-syntax-automatically '(save mode-enabled)) | |
(eldoc-mode +1) | |
;; company is an optional dependency. You have to | |
;; install it separately via package-install | |
(company-mode-on))) | |
;; aligns annotation to the right hand side | |
(setq company-tooltip-align-annotations t) | |
;; --------------------------------------------------------------------------------- | |
;; TABBAR | |
(add-to-list 'load-path "~/.emacs.d/lisp/plugins/aqua-tabbar") | |
;; Tabbar | |
(require 'tabbar) | |
(tabbar-mode 1) | |
(setq tabbar-separator '(1.2)) | |
(global-set-key (kbd "C-<tab>") 'tabbar-forward-tab) | |
(global-set-key (kbd "C-S-<tab>") 'tabbar-backward-tab) | |
;; --------------------------------------------------------------------------------- | |
;; ORG MODE | |
;;(setq initial-major-mode 'org-mode) | |
(require 'org) | |
(require 'epa-file) | |
(epa-file-enable) | |
(require 'org-crypt) | |
(org-crypt-use-before-save-magic) | |
(setq org-tags-exclude-from-inheritance (quote ("crypt"))) | |
(setq org-crypt-key nil) | |
(setq auto-save-default nil) | |
(define-key global-map "\C-cl" 'org-store-link) | |
(global-set-key [f12] 'org-agenda) | |
(add-hook 'org-mode-hook 'visual-line-mode) | |
(add-hook 'org-mode-hook 'org-indent-mode) | |
(add-hook 'org-mode-hook (lambda () (linum-mode 0))) | |
(setq org-log-done t) | |
(global-set-key (kbd "C-c a") 'org-agenda) | |
(setq org-todo-keyword-faces | |
(quote (("TODO" :weight bold :background "#4F78A7" :box '(:line-width 2 :color "#4F78A7")) | |
("WAITING" :background nil)))) | |
;; create new face by highlihghting '*' | |
(defvar org-level-star (make-face 'org-level-star)) | |
(set-face-attribute 'org-level-star nil :foreground "#435154") | |
(font-lock-add-keywords 'org-mode (list | |
(list (concat "\\*") | |
'(0 org-level-star t)) | |
)) | |
(defface org-level-1-star | |
'((t (:inherit org-level-1))) | |
"Face for GFM checkboxes." | |
:group 'markdown-faces) | |
(setq org-agenda-files '("~/.emacs.d/files" "~/.emacs.d/files/projects")) | |
(setq org-todo-keywords (quote ((sequence "TODO(t)" "DOING(d)" "WAITING" "|" "DEFERRED(F)" "DONE(D)")))) | |
(eval-after-load 'org | |
'(progn | |
(defun wicked/org-clock-in-if-starting () | |
"Clock in when the task is marked DOING." | |
(when (and (string= org-state "DOING") | |
(not (string= org-last-state org-state))) | |
(org-clock-in))) | |
(add-hook 'org-after-todo-state-change-hook | |
'wicked/org-clock-in-if-starting) | |
(defadvice org-clock-in (after wicked activate) | |
"Set this task's status to 'STARTED'." | |
(org-todo "DOING")) | |
(defun wicked/org-clock-out-if-waiting () | |
"Clock out when the task is marked WAITING." | |
(when (and (string= org-state "DONE") | |
(equal (marker-buffer org-clock-marker) (current-buffer)) | |
(< (point) org-clock-marker) | |
(> (save-excursion (outline-next-heading) (point)) | |
org-clock-marker) | |
(not (string= org-last-state state))) | |
(org-clock-out))) | |
(add-hook 'org-after-todo-state-change-hook | |
'wicked/org-clock-out-if-waiting))) | |
(setq org-html-head "<meta name='viewport' content='width=device-width, user-scalable=no'> <script type='text/javascript'>var el=document.createElement('img');el.setAttribute('src','data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAeiAAAHogHiaFAhAAAAB3RJTUUH3wgECBsMPj0OxQAAAcFJREFUeNrt2tENg1AUw1DS/Xd+/aaoC+DjDcpNHCR6XQAAAAAAAEiw6g8/55zbg9gmALGj/30ooTDM4dtB+FhB7wDaH7bAHL8dgjl+OwTeAbwDaH/ZAnP8dghMgAnQ/rIF5vjtEJgAE6D9ZQswAANof9kCc/x2CEyACdD+sgXm+O0QmAAToP1lCzAAA2h/2QJz/HYITIAJ0P6yBeb47RCYABOg/WULMAADaH/ZAnP8dghMgAnQ/rIF5vjtEJgAE6D9ZQvM8dshMAEmQPvLFmAABtD+sgXm+O0QmAAToP1lC8zx2yEwASZA+8sWYAAG0P6yBeb47RCYABOg/WULzPHbITABJkD7yxaY47dDYAJMgPaXLcAADKD9ZQvM8dshMAEmQPvLFpjjt0NgAkyA9pctwAAMoP1lC8zx2yEwASZA+8sWmOO3Q2ACTID2ly3AAAyg/WULzPHbITABJkD7yxaY47dDYAJMgPaXLTDHb4fABJgA7S9bgAEYQPvLFpjjt0NgAuoh0P42DCAAEAAIAAQAAgABgABAACAAEAAIAN6Nz8Hl4/scDP8ICrf/FgAhaB3+YYBfhOHdhwcAAAAAAECMLyyTAKi2U+adAAAAAElFTkSuQmCC');el.setAttribute('onclick','window.scrollTo(0, 0);');el.setAttribute('style','background:#33B26E; padding:10px; position:fixed; width:64px; height:64px; bottom:10px; right:10px;border-radius:10px;');window.onload=function(){document.querySelector('#content').appendChild(el)}</script> <style>@import url(http://fonts.googleapis.com/css?family=Open+Sans);@import url(http://fonts.googleapis.com/css?family=Ubuntu);*{box-sizing:border-box}div a{color:#33B26E;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:'ubuntu'}h2,h3,h4,h5,h6{margin:20px 0 8px 0px}p,ul,ol{margin:6px 0;text-align:justify}body{padding:0;margin:0;background:#fff;color:rgb(51, 51, 51);font-weight:normal;font-size:18px;font-family:'Open Sans',sans-serif}h1.title{background-color:#2C343C;color:#fff;margin:0;padding:60px 0;text-transform:uppercase;font-size:50px}#content>div#table-of-contents{margin-bottom:50px;margin-top:50px}#table-of-contents h2{margin-bottom:0}#text-table-of-contents li{list-style-type:none}#text-table-of-contents a{color:inherit;text-decoration:none;font-style:italic}#content>div,#postamble>p{width:95%;max-width:900px;margin:0 auto}@media (max-width: 900px){h1.title{font-size:30px;padding:40px 0}}pre{white-space:pre-wrap}pre,.verse{background-color:#DFE7EC;border:none;box-shadow:2px 2px 1px #eee;border:1px solid #ccc;box-shadow:3px 3px 3px #eee;padding:8pt;font-family:monospace;overflow:auto;margin:1.2em}#postamble{background:#2C343C;color:white;padding:40px 0;margin-top:60px}@page{size:auto;margin-bottom:2cm;margin-top:2cm;margin-left:0.5cm; margin-right:0.5cm;font-size:10px;}@media print{body{font-size:12px;}}</style>") | |
(setq org-html-validation-link nil) | |
(setq org-html-creator-string "") | |
(kill-buffer-and-window) | |
(find-file "~/.emacs.d/files/home.org") | |
(get-buffer-create "*scratch*") |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment