+ (setq org-completion-use-ido t)
+ (setq org-startup-with-inline-images t)
+ ;; latex preview
+ ;; (setq org-startup-with-latex-preview t)
+ ;; (setq org-format-latex-options (plist-put org-format-latex-options :scale 1.2))
+ (require 'org-habit)
+ (add-to-list 'org-modules 'org-habit)
+ (setq org-habit-graph-column 50)
+ (setq org-hide-emphasis-markers t)
+ (setq org-html-validation-link nil)
+ ;; open link when return clicked
+ (setq org-return-follows-link t)
+ ;; open the ppt file by external open instead of emacs
+ (add-to-list 'org-file-apps '("\\.pptx" . "open %s"))
+ (add-to-list 'org-file-apps '("\\.doc" . "open %s"))
+ (setq org-image-actual-width nil))
+#+END_SRC
+
+** Org theme
+*** Fix the default theme - molokai
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (with-eval-after-load "org"
+ (set-face-attribute 'org-block-begin-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic)
+ (set-face-attribute 'org-block-end-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic)
+ ;; (set-face-attribute 'org-table nil :family "Ubuntu Mono" :height (face-attribute 'default :height))
+ )
+#+END_SRC
+*** variable-pitch-mode and fixed-pitch-mode
+[[https://yoo2080.wordpress.com/2013/05/30/monospace-font-in-tables-and-source-code-blocks-in-org-mode-proportional-font-in-other-parts/][monospace font in tables and source code blocks in org-mode, proportional font in other parts]]
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ ;(when (display-graphic-p)
+ ; (unless (find-font (font-spec :name "Ubuntu Mono"))
+ ; (warn "Font not found Ubuntu Mono"))
+ ; (unless (find-font (font-spec :name "Source Code Pro"))
+ ; (warn "Font not found Source Code Pro"))
+ ; (unless (find-font (font-spec :name "Source Sans Pro"))
+ ; (warn "Font not found Source Sans Pro")))
+
+ ;; (set-face-attribute 'variable-pitch nil :font "Source Sans Pro" :height 160)
+ ;; (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" :height (face-attribute 'default :height))
+
+
+ ;; Install Ubuntu Mono fonts and apply it in org-table to align Chinese fonts
+ ;; (with-eval-after-load "org"
+ ;; (mapc (lambda (face)
+ ;; (set-face-attribute face nil :inherit 'fixed-pitch))
+ ;; (list
+ ;; 'org-code
+ ;; 'org-block
+ ;; 'org-block-background
+ ;; 'org-block-begin-line
+ ;; 'org-block-end-line))
+ ;; (set-face-attribute 'org-table nil :family "Ubuntu Mono" :height 100)
+ ;; (set-face-attribute 'org-formula nil :family "Ubuntu Mono" :height 100)
+ ;; ;; org-special-keyword inherited from font-lock-keywork originally; as org is changed to variable-pitch, it cause
+ ;; ;; the font in special-keywords are not monospace
+ ;; (set-face-attribute 'org-special-keyword nil :inherit '(font-lock-keyword-face fixed-pitch))
+ ;; ;; same as above
+ ;; (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch))
+ ;; (set-face-attribute 'org-block-begin-line nil :inherit 'shadow :slant 'italic :foreground nil)
+ ;; (set-face-attribute 'org-block-end-line nil :inherit 'shadow :slant 'italic :foreground nil)
+
+ ;; ;; fix indent broken by variable-pitch-mode
+ ;; ;; http://emacs.stackexchange.com/questions/26864/variable-pitch-face-breaking-indentation-in-org-mode
+ ;; (require 'org-indent)
+ ;; (set-face-attribute 'org-indent nil :inherit '(org-hide fixed-pitch)))
+
+ ;; (with-eval-after-load "org"
+ ;; (let ((default-font-size (- (face-attribute 'default :height) (if (display-graphic-p) 20 0))))
+ ;; (set-face-attribute 'org-code nil :height default-font-size)
+ ;; (set-face-attribute 'org-block nil :height default-font-size)
+ ;; ;; (set-face-attribute 'org-block-begin-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic :height default-font-size)
+ ;; ;; (set-face-attribute 'org-block-end-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic :height default-font-size)
+ ;; (when (find-font (font-spec :name "Ubuntu Mono"))
+ ;; (set-face-attribute 'org-table nil :family "Ubutu Mono" :height default-font-size)
+ ;; (set-face-attribute 'org-formula nil :family "Ubutu Mono" :height default-font-size))))
+
+ ;; (add-hook 'org-mode-hook
+ ;; (lambda ()
+ ;; (let ((default-font-size (- (face-attribute 'default :height) (if (display-graphic-p) 20 0))))
+ ;; (set-face-attribute 'org-code nil :height default-font-size)
+ ;; (set-face-attribute 'org-block nil :height default-font-size)
+ ;; ;; (set-face-attribute 'org-block-begin-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic :height default-font-size)
+ ;; ;; (set-face-attribute 'org-block-end-line nil :background nil :foreground nil :inherit 'shadow :slant 'italic :height default-font-size)
+ ;; (when (find-font (font-spec :name "Ubuntu Mono"))
+ ;; (set-face-attribute 'org-table nil :family "Ubutu Mono" :height default-font-size)
+ ;; (set-face-attribute 'org-formula nil :family "Ubutu Mono" :height default-font-size)))))
+#+END_SRC
+
+Also correct the face of =org-meta-line= in =org-table=
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ ;; (with-eval-after-load "org"
+ ;; (set-face-attribute 'org-meta-line nil :font "Source Code Pro" :height 120 :slant 'italic :inherit 'font-lock-comment-face))
+#+END_SRC
+***
+
+*** Org-head face
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ ;; (with-eval-after-load "org"
+ ;; (let* ((base-height (face-attribute 'variable-pitch :height))
+ ;; (base-font-color (face-foreground 'default nil 'default)))
+ ;; (set-face-attribute 'org-document-title nil :weight 'bold :height (+ 60 base-height))
+ ;; (set-face-attribute 'org-level-1 nil :weight 'bold :height (+ 40 base-height))
+ ;; (set-face-attribute 'org-level-2 nil :weight 'bold :height (+ 30 base-height))
+ ;; (set-face-attribute 'org-level-3 nil :weight 'bold :height (+ 20 base-height))
+ ;; (set-face-attribute 'org-level-4 nil :weight 'bold :height (+ 10 base-height))
+ ;; (set-face-attribute 'org-level-5 nil :weight 'bold)
+ ;; (set-face-attribute 'org-level-6 nil :weight 'bold)
+ ;; (set-face-attribute 'org-level-7 nil :weight 'bold)
+ ;; (set-face-attribute 'org-level-8 nil :weight 'bold)))
+#+END_SRC
+
+
+** Org babel
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (el-get-bundle hasu/emacs-ob-racket
+ :features ob-racket)
+
+ ;; Lua support
+;; (use-package ob-lua
+;; :ensure t)