(menu-bar-mode 1)
(menu-bar-mode 0))
- ;; (setq debug-on-error t)
+ (setq debug-on-error t)
(setq inhibit-startup-message t)
(defalias 'yes-or-no-p 'y-or-n-p)
#+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
Setting the fonts alignment issue
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
- (if window-system
- (when sd/fixed-font-family
- (set-frame-font sd/fixed-font-family)
- (set-face-attribute 'default nil :font sd/fixed-font-family :height 120)
- (set-face-font 'default sd/fixed-font-family)))
+ (if window-system
+ (when sd/fixed-font-family
+ (set-frame-font sd/fixed-font-family)
+ (set-face-attribute 'default nil :font sd/fixed-font-family :height 140)
+ (set-face-font 'default sd/fixed-font-family)))
#+END_SRC
*** Chinese fonts
set height in mode line
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
- (set-variable 'powerline-height 14)
- (set-variable 'powerline-text-scale-factor (/ (float 100) 140))
- ;; (custom-set-variables
- ;; '(powerline-height 14)
- ;; '(powerline-text-scale-factor (/ (float 100) 140)))
- ;; 100/140;0.8
- (set-face-attribute 'mode-line nil :height 100)
+ (with-eval-after-load "powerline"
+ (if window-system
+ (progn
+ (let* ((base-font-size (face-attribute 'default :height)))
+ ;; 100/140;0.8
+ (set-variable 'powerline-height (/ base-font-size 10))
+ (set-variable 'powerline-text-scale-factor (/ (float 100) base-font-size)))
+ (set-face-attribute 'mode-line nil :height 100)
+ (set-face-attribute 'mode-line-inactive nil :height 100))))
#+END_SRC
* IDO & SMEX
(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)
- (setq org-hide-emphasis-markers t))
+ (setq org-hide-emphasis-markers t)
+ (setq org-html-validation-link nil))
(el-get-bundle hasu/emacs-ob-racket
:features ob-racket)
(sqlite . t)
(js . t)
(gnuplot . t)
- (ditaa . t)))
+ (ditaa . t)
+ (plantuml . t)))
;; use current window for org source buffer editting
(setq org-src-window-setup 'current-window )
:ensure t)
#+END_SRC
+*** plantUML
+[[http://eschulte.github.io/babel-dev/DONE-integrate-plantuml-support.html][DONE-integrate-plantuml-support]]
+#+BEGIN_SRC sh
+ ## support plantuml
+ brew install plantuml
+#+END_SRC
+
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (use-package plantuml-mode
+ :ensure t)
+
+ (setq org-plantuml-jar-path
+ (expand-file-name "/usr/local/Cellar/plantuml/8041/plantuml.8041.jar"))
+
+ (set-variable 'plantuml-jar-path
+ (expand-file-name "/usr/local/Cellar/plantuml/8041/plantuml.8041.jar"))
+#+END_SRC
+
** Org-bullets
use [[https://github.com/sabof/org-bullets][org-bullets]] package to show utf-8 charactes
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(setq org-bullets-bullet-list '("⦿" "✪" "◉" "○" "►" "◆"))
;; increase font size when enter org-src-mode
- (add-hook 'org-src-mode-hook (lambda () (text-scale-increase 2)))
+ ;; (add-hook 'org-src-mode-hook (lambda () (text-scale-increase 2)))
#+END_SRC
** Worf Mode
'("C" "#+BEGIN_SRC c :tangle ?\n\n#+END_SRC"))
(add-to-list 'org-structure-template-alist
'("m" "\\begin{equation}\n?\n\\end{equation}"))
+
+ (add-to-list 'org-structure-template-alist
+ '("b" "#+STARTUP: showall
+ ,#+STARTUP: inlineimages
+ ,#+OPTIONS: toc:nil\n"))
+#+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 160)
+ (set-face-attribute 'fixed-pitch nil :font "Source Code Pro" :height (face-attribute 'default :height))
+
+ (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 (+ 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 Blog
+Refer to [[http://orgmode.org/worg/org-tutorials/org-publish-html-tutorial.html][org-publish-html-tutorial]], and [[https://ogbe.net/blog/blogging_with_org.html][blogging_with_org]]
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (require 'ox-publish)
+
+ (setq org-publish-project-alist
+ `(
+ ("org-notes"
+ :base-directory "~/Private/blog/"
+ :base-extension "org"
+ :publishing-directory "~/Private/publish_html"
+ :recursive t
+ :publishing-function org-html-publish-to-html
+ :headline-levels 4
+ :section-numbers nil
+ :auto-preamble t
+ :auto-sitemap t ;Generate sitmap.org automagicaly...
+ :sitemap-filename "sitemap.org" ;... call it sitemap.org (it's the default )...
+ :sitemap-title "Sitemap"
+
+ :html-table-of-contents nil
+ :html-postamble nil ;dont export creator auto validation info in html postamble div
+ :html-link-home "/"
+ :html-head "<link rel='stylesheet' href='./css/worg.css' />"
+ :html-head-include-default-style nil
+ :html-head-include-scripts nil)
+ ("org-static"
+ :base-directory "~/Private/blog/"
+ :base-extension "css\\|js\\|png\\|gif\\|pdf\\|mp3\\|ogg\\|swf"
+ :publishing-directory "~/Private/publish_html"
+ :recursive t
+ :publishing-function org-publish-attachment
+ :table-of-contents nil)
+ ("org" :components ("org-notes" "org-static"))))
#+END_SRC
* Magit
(car (last (split-string url "/" t))))))))))
#+END_SRC
+** Elscreen
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (use-package elscreen
+ :ensure t
+ :init
+ (setq elscreen-tab-display-control nil)
+ :config
+ (elscreen-start)
+ (set-face-attribute 'elscreen-tab-current-screen-face nil :foreground "black" :background "yellow")
+ (set-face-attribute 'elscreen-tab-other-screen-face nil :foreground "black" :background "disabledControlTextColor" :underline nil)
+ ;; (global-unset-key (kbd)); M-TAB switch screen
+ (global-set-key (kbd "s-`") '(lambda () (interactive) (elscreen-goto 0)))
+ (dotimes (i 8)
+ (global-set-key (kbd (concat "s-" (number-to-string (+ i 1))))
+ `(lambda () (interactive) (elscreen-goto ,(+ i 1)))))
+ (global-set-key (kbd "s-t") 'elscreen-create)
+ (global-set-key (kbd "s-n") 'elscreen-next)
+ (global-set-key (kbd "s-p") 'elscreen-previous))
+#+END_SRC
+
* Dired
** Dired bindings
=C-o= is defined as a global key for window operation, here unset it in dired mode
(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 eshell-mode)))
(use-package company-statistics
:ensure t
:config
(persp-mode)
:bind
- (:map projectile-mode-map
- ("s-t" . projectile-persp-switch-project)))
+ ;; (:map projectile-mode-map
+ ;; ("s-t" . projectile-persp-switch-project))
+ )
;; change default-directory of scratch buffer to projectile-project-root
(defun sd/project-switch-action ()
(global-set-key (kbd "<s-return>") 'toggle-frame-fullscreen)
(global-set-key (kbd "s-f") 'projectile-find-file)
- (global-set-key (kbd "s-`") 'mode-line-other-buffer)
+ ;; (global-set-key (kbd "s-`") 'mode-line-other-buffer)
- (global-set-key (kbd "s-n") 'persp-next)
- (global-set-key (kbd "s-p") 'persp-prev)
- (global-set-key (kbd "s-;") 'persp-switch-last)
+ ;; (global-set-key (kbd "s-n") 'persp-next)
+ ;; (global-set-key (kbd "s-p") 'persp-prev)
+ ;; (global-set-key (kbd "s-;") 'persp-switch-last)
(global-set-key (kbd "s-=") 'text-scale-increase)
(global-set-key (kbd "s--") 'text-scale-decrease)
;; (global-set-key (kbd "s-u") 'undo-tree-visualize)
-
-
- ;; someothers default mapping on super (command) key
- ;; s-s save-buffer
- ;; s-k kill-this-buffer
-
-
- ;; s-h --> ns-do-hide-emacs
- ;; s-j --> ido-switch-buffer +
- ;; s-k --> kill-this-buffer
- ;; s-l --> goto-line
- ;; s-; --> undefined
- ;; s-' --> next-multiframe-window
- ;; s-ret --> toggle-frame-fullscreen +
-
- ;; s-y --> ns-paste-secondary
- ;; s-u --> revert-buffer
- ;; s-i --> undefined - but used for iterm globally
- ;; s-o --> used for emacs globally
- ;; s-p --> projectile-persp-switch-project +
- ;; s-[ --> next-buffer +
- ;; s-] --> previous-buffer +
-
- ;; s-0 --> undefined
- ;; s-9 --> undefined
- ;; s-8 --> undefined
- ;; s-7 --> undefined
- ;; s-6 --> undefined
- ;; s-- --> center-line
- ;; s-= --> undefined
-
- ;; s-n --> make-frame
- ;; s-m --> iconify-frame
- ;; s-b --> undefined
- ;; s-, --> customize
- ;; s-. --> undefined
- ;; s-/ --> undefined
-
- ;; s-g --> isearch-repeat-forward
- ;; s-f --> projectile-find-file +
- ;; s-d --> isearch-repeat-background
- ;; s-s --> save-buffer
- ;; s-a --> make-whole-buffer
-
- ;; s-b --> undefined
- ;; s-v --> yank
- ;; s-c --> ns-copy-including-secondary
-
- ;; s-t --> ns-popup-font-panel
- ;; s-r --> undefined
- ;; s-e --> isearch-yanqk-kill
- ;; s-w --> delete-frame
- ;; s-q --> same-buffers-kill-emacs
-
- ;; s-` --> other-frame
#+END_SRC
** Windown & Buffer - =C-o=
("C-b" ido-switch-buffer nil :exit t)
("C-f" projectile-find-file nil :exit t)
("C-p" persp-switch :exit t)
+ ("C-t" projectile-persp-switch-project nil :exit t)
;; other special buffers
("d" sd/project-or-dired-jump nil :exit t)
#+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-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")
-
- ;; (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)
- ;; 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
+** Need separate the Key-bindings and package-initialization