emacs - add face for org-level
[dotfiles.git] / emacs.d / config.org
index 9660544..dce891a 100644 (file)
@@ -155,15 +155,11 @@ Check out [[http://tapoueh.org/emacs/el-get.html][el-get]].
 #+END_SRC
 
 ** Smart Comments
-
 [[https://github.com/paldepind/smart-comment][smart-comments]]
-
 #+BEGIN_SRC emacs-lisp :tangle yes :results silent
-
   (use-package smart-comment
     :ensure t
     :bind ("M-;" . smart-conmment))
-
 #+END_SRC
 
 ** Font Setting
@@ -730,8 +726,8 @@ Always indents header, and hide header leading starts so that no need type =#+ST
     (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))
+    ;; (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)
@@ -1085,6 +1081,50 @@ extend org-mode's easy templates, refer to [[http://coldnew.github.io/coldnew-em
                '("m" "\\begin{equation}\n?\n\\end{equation}"))
 #+END_SRC
 
+** Org theme
+*** 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
+  (set-face-attribute 'variable-pitch nil :font "Calibri" :height 140)
+  (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" :height 120)
+
+  (add-hook 'text-mode-hook 'variable-pitch-mode)
+
+  ;; 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))
+    (set-face-attribute 'org-table nil :family "Ubuntu Mono" :height 140)
+    
+    ;; 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)))
+#+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 (+ 100 base-height))
+      (set-face-attribute 'org-level-1 nil :weight 'bold :height (+ 80 base-height))
+      (set-face-attribute 'org-level-2 nil :weight 'bold :height (+ 60 base-height))
+      (set-face-attribute 'org-level-3 nil :weight 'bold :height (+ 40 base-height))
+      (set-face-attribute 'org-level-4 nil :weight 'bold :height (+ 20 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
+
 * Magit
 [[https://github.com/magit/magit][Magit]] is a very cool git interface on Emacs.
 and Defined keys, using vi keybindings, Refer abo-abo's setting [[https://github.com/abo-abo/oremacs/blob/c5cafdcebc88afe9e73cc8bd40c49b70675509c7/modes/ora-nextmagit.el][here]]
@@ -1764,11 +1804,12 @@ here on Mac, just use "open" commands to pen =.pdf=,  =.html= and image files
     (define-key company-active-map (kbd "M-p") nil)
     (define-key company-active-map (kbd "C-n") #'company-select-next)
     (define-key company-active-map (kbd "C-p") #'company-select-previous)
-     ;; should map both (kbd "TAB") and [tab],https://github.com/company-mode/company-mode/issues/75
+    ;; should map both (kbd "TAB") and [tab],https://github.com/company-mode/company-mode/issues/75
     (define-key company-active-map (kbd "TAB") #'company-complete-selection)
     (define-key company-active-map [tab] #'company-complete-selection)
     (global-company-mode)
-    (setq company-global-modes '(not org-mode)))
+    ;; magig-commit is text-modeh
+    (setq company-global-modes '(not org-mode magit-status-mode text-mode)))
 
   (use-package company-statistics
     :ensure t
@@ -3332,89 +3373,12 @@ Refer [[https://github.com/fnwiya/dotfiles/blob/c9ca79f1b22c919d9f4c3a0f944ba828
   (global-set-key (kbd "C-w") 'sd/kill-region-or-backward-kill-word)
 #+END_SRC
 
-
-
 * TODO todolist
-** rucket
+** Rucket
 ** player video on iphone for 
 ** SICP
 ** music searcher
 search music on some music web site
-#+BEGIN_SRC emacs-lisp :tangle yes :results silent
-  ;; (create-fontset-from-fontset-spec
-  ;;  "-*-Source Code Pro-*-*-*-*-12-*-*-*-*-*-fontset-Source Code Pro,
-  ;;    ascii:-*-Source Code Pro-normal-normal-normal-*-23-*-*-*-m-0-iso10646-1,
-  ;;    latin-iso8859-1:-*-Source Code Pro-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1,
-  ;;    latin-iso8859-15:-*-Source Code Pro-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1,
-  ;;    chinese-gb2312:-*-STHeiti-*-*-*-*-14-*-*-*-c-*-*-*,
-  ;;    han:-*-STHeiti-*-*-*-*-14-*-*-*-c-*-*-*")
-
-
-  ;; (create-fontset-from-fontset-spec
-  ;;  "-*-Courier New-normal-r-*-*-14-*-*-*-c-*-fontset-myfixwidth,
-  ;; ascii:-*-Courier New-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1,
-  ;; kana:-*-STFangsong-normal-r-*-*-16-*-*-*-c-*-*-*,
-  ;; han:-*-STFangsong-normal-r-*-*-16-*-*-*-c-*-*-*,
-  ;; symbol:-*-STFangsong-normal-r-*-*-16-*-*-*-c-*-*-*,
-  ;; cjk-misc:-*-STFangsong-normal-r-*-*-16-*-*-*-c-*-*-*,
-  ;; bopomofo:-*-STFangsong-normal-r-*-*-16-*-*-*-c-*-*-*" t)
-  ;; (create-fontset-from-fontset-spec
-  ;;  "-*-Courier New-normal-r-*-*-14-*-*-*-c-*-fontset-myfixwidth,
-  ;; ascii:-*-Courier New-normal-normal-normal-*-17-*-*-*-m-0-iso10646-1")
-
-  ;; (create-fontset-from-fontset-spec
-  ;;  "-*-Source Code Pro-normal-normal-normal-*-12-*-*-*-*-*-fontset-osaka12")
-  ;; (create-fontset-from-fontset-spec
-  ;;  "-*-Source Code Pro-normal-normal-normal-*-12-*-*-*-*-*-fontset-osaka13")
-
-  ;; (create-fontset-from-fontset-spec
-  ;;     "-*-consolas-*-*-*-*-12-*-*-*-*-*-fontset-consolas,
-  ;;     ascii:-*-consolas-*-*-*-*-12-*-*-*-*-*-iso8859-1,
-  ;;     latin-iso8859-1:-*-consolas-*-*-*-*-12-*-*-*-*-*-iso8859-1,
-  ;;     latin-iso8859-15:-*-consolas-*-*-*-*-12-*-*-*-*-*-iso8859-15")
-
-  ;; (setq default-frame-alist '(;; (width . 100)
-                             
-  ;;   ;; (height . 44)
-    
-  ;;   ;; (top . 50)
-  ;;                                        ;pixels
-  ;;   ;; (left . 50)
-  ;;                                        ;pixels
-  ;;   (font . "fontset-my-private")
-  ;;   ))
-  ;; (with-eval-after-load "org"
-  ;;   (set-face-attribute 'org-code nil :family "fontset-myfixwidth")
-  ;;   (set-face-attribute 'org-block nil :family "fontset-myfixwidth")
-  ;;   (set-face-attribute 'org-table nil :family "fontset-myfixwidth")
-  ;;   (set-face-attribute 'org-block-background nil :family "fontset-myfixwidth"))
-  ;; (setq default-frame-alist
-  ;;       (append
-  ;;        '((font . "fontset-osaka13")) default-frame-alist))
-
-
-  ;; (set-fontset-font
-  ;;  "fontset-default" nil
-  ;;  "-*-stheiti-*-*-*-*-14-*-*-*-*-*-gb2312.1980-*" nil 'prepend)
-  ;; (set-fontset-font
-  ;;  "fontset-osaka12" 'kana
-  ;;  "-*-stheiti-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
-  ;; (set-fontset-font
-  ;;  "fontset-osaka12" 'han
-  ;;  "-*-stheiti-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
-  ;; (set-fontset-font
-  ;;  "fontset-osaka12" 'cjk-misc
-  ;;  "-*-stheiti-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
-
-  (set-face-attribute 'variable-pitch nil :font "Calibri" :height 160)
-  (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" :height 120)
 
-  (add-hook 'text-mode-hook 'variable-pitch-mode)
 
-  (with-eval-after-load "org"
-    (set-face-attribute 'org-code nil :inherit 'fixed-pitch)
-    (set-face-attribute 'org-block nil :inherit 'fixed-pitch)
-    (set-face-attribute 'org-table nil :family "Ubuntu Mono" :height 120)
-    (set-face-attribute 'org-block-background nil :inherit 'fixed-pitch))
-#+END_SRC