#+END_SRC
-** General Setting
+** Window Setting
Disable scroll bar, tool-bar and menu-bar
; (global-set-key (kbd "C-.") 'scoll-right)
#+END_SRC
+Set default window size
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (setq initial-frame-alist
+ '((width . 120)
+ (height . 50)))
+#+END_SRC
+
* Package Management Tools
** Use-package
Some global bindings on =Super=, on Mac, it is =Command=
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (defun sd/delete-current-window ()
+ (interactive)
+ (if (> (length (window-list)) 1)
+ (delete-window)
+ (message "Only one Windows now!")))
+
(global-set-key (kbd "s-h") 'keyboard-quit)
(global-set-key (kbd "s-j") 'ido-switch-buffer)
(global-set-key (kbd "s-k") 'ido-find-file)
;; s-k --> kill-this-buffer
- (global-set-key (kbd "s-l") (lambda ()
- (interactive)
- (if (> (length (window-list)) 1)
- (delete-window)
- (message "Only one Windows now!"))))
+ (global-set-key (kbd "s-l") 'sd/delete-current-window)
;; s-l --> goto-line
(global-set-key (kbd "s-;") 'swiper)
;; s-; -->
#+END_SRC
** =M-s= bindings for searching
-
-I use the prefix =M-s= for searching in buffers
-
+use the prefix =M-s= for searching in buffers
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
-
- (defun pl-make-keymap (key bindings)
+ (defun sd/make-keymap (key bindings)
(setq keymap (make-sparse-keymap))
(dolist (binding bindings)
(define-key keymap (car binding) (cdr binding)))
(global-set-key key keymap))
- (define-key minibuffer-local-map "\M-s" nil)
+ (use-package highlight-symbol
+ :ensure t)
+
+ (sd/make-keymap "\M-s"
+ '(("w" . save-buffer)
+ ;; ("\M-w" . save-buffer)
+ ("W" . revert-buffer)
+ ("s" . isearch-forward-regexp)
+ ("r" . isearch-backward-regexp)
+ ("." . isearch-forward-symbol-at-point)
+ ("o" . occur)
+ ;; ("h" . highlight-symbol-at-point)
+ ("h" . highlight-symbol)
+ ("m" . highlight-regexp)
+ ("l" . highlight-lines-matching-regexp)
+ ("M" . unhighlight-regexp)
+ ("f" . keyboard-quit)
+ ("q" . keyboard-quit)))
+
+ ;; search and replace
+ (define-key isearch-mode-map (kbd "M-s") 'isearch-repeat-forward)
+ (define-key isearch-mode-map (kbd "M-r") 'isearch-repeat-backward)
+ (global-set-key (kbd "s-[") 'highlight-symbol-next)
+ (global-set-key (kbd "s-]") 'highlight-symbol-prev)
+ (global-set-key (kbd "s-\\") 'highlight-symbol-query-replace)
- (global-set-key (kbd "M-s s") 'isearch-forward-regexp)
- (define-key isearch-mode-map "\M-s" 'isearch-repeat-forward)
- (global-set-key (kbd "M-s r") 'isearch-backward-regexp)
- (define-key isearch-mode-map "\M-r" 'isearch-repeat-backward)
- (global-set-key (kbd "s-/") 'isearch-forward-regexp)
- (define-key isearch-mode-map (kbd "s-/") 'isearch-repeat-forward)
- (define-key isearch-mode-map (kbd "C-n") 'isearch-repeat-forward)
+ (define-key minibuffer-local-map "\M-s" nil)
(set-face-background 'ido-first-match "white")
- ;; M-s o --> occur
- ;; M-s s --> isearch-forward-regexp
- ;; M-s r --> isearch-backward-regexp
- ;; M-s w --> isearch-forward-word
- ;; M-s . --> isearch-forward-symbol-at-point
- ;; M-s _ --> isearch-forward-symbol
-
- ;; highlight bindings
- ;; M-s h . --> highlight-symbol-at-point
- ;; M-s h r --> highlight-regexp
- ;; M-s h u --> unhighlight-regexp
- ;; M-s h l --> highlight-lines-match-regexp
- ;; M-s h p --> highlight-phrase
- ;; M-s h f --> hi-lock-find-patterns
-
- ;;
- ;; (global-set-key (kbd "M-s M-r") 'isearch-backward-regexp)
- ;;
+
+
+ ;; M-s h . highlight-symbol-at-point
+ ;; M-s h f hi-lock-find-patterns
+ ;; M-s h l highlight-lines-matching-regexp
+ ;; M-s h p highlight-phrase
+ ;; M-s h r highlight-regexp
+ ;; M-s h u unhighlight-regexp
+ ;; M-s h w hi-lock-write-interactive-patterns
+
+ ;; M-s M-w eww-search-words
;; M-c
;; M-r
#+END_SRC
Occur search key bindings
-
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (add-hook 'occur-hook (lambda ()
+ (switch-to-buffer-other-window "*Occur*")
+ (define-key occur-mode-map (kbd "C-o") nil)))
+ ;; auto select occur window
(define-key occur-mode-map (kbd "C-n")
(lambda ()
(recenter)
(other-window 1)))
+ (use-package color-moccur
+ :ensure t
+ :commands (isearch-moccur isearch-all)
+ :init
+ (setq isearch-lazy-highlight t)
+ :config
+ (use-package moccur-edit))
#+END_SRC
-
** =M-o= as prefix key for windows
** =M-g= as prefix key for launcher
-** others
-
-#+BEGIN_SRC emacs-lisp :tangle yes :results silent
-
-
- ;; C-' undefined
- ;; C-. undefined
-#+END_SRC
-
* Org-mode Settings
** Org-mode Basic setting
(org-bullets-mode t))))
(setq org-bullets-bullet-list '("⦿" "✪" "◉" "○" "►" "◆"))
+
+ ;; increase font size when enter org-src-mode
+ (add-hook 'org-src-mode-hook (lambda () (text-scale-increase 2)))
#+END_SRC
** Worf Mode
#+END_SRC
*** hydra-window
-
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(winner-mode 1)
(windmove-down))
"horz" :exit t)
("o" delete-other-windows "one" :exit t)
- ("C-o" delete-other-windows "one" :exit t)
+ ("C-o" ido-switch-buffer "buf" :exit t)
+ ("C-k" sd/delete-current-window "del" :exit t)
("a" ace-window "ace")
("s" ace-swap-window "swap")
("d" ace-delete-window "ace-one" :exit t)
(global-unset-key (kbd "C-o"))
(global-set-key (kbd "C-o") 'sd/hydra-window/body)
-
- (defun triggle-windows-max-size ()
- (interactive)
- (if (> (length (window-list)) 1)
- (delete-other-windows)
- (winner-undo)))
-
#+END_SRC
*** hydra misc
#+END_SRC
** undo-tree
-
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
-
(use-package undo-tree
:ensure t
:config
+ (define-key undo-tree-visualizer-mode-map "j" 'undo-tree-visualize-redo)
+ (define-key undo-tree-visualizer-mode-map "k" 'undo-tree-visualize-undo)
+ (define-key undo-tree-visualizer-mode-map "h" 'undo-tree-visualize-switch-branch-left)
+ (define-key undo-tree-visualizer-mode-map "l" 'undo-tree-visualize-switch-branch-right)
(global-undo-tree-mode 1))
-
#+END_SRC
** swiper
(use-package lispy
:ensure t
:init
- (eval-after-load 'lispy
+ (eval-after-load "lispy"
`(progn
- (define-key lispy-mode-map (kbd "M-o") nil)
- (define-key lispy-mode-map (kbd "C-d") nil)))
+ (define-key lispy-mode-map (kbd "M-o") nil)))
:config
(add-hook 'emacs-lisp-mode-hook (lambda () (lispy-mode 1))))
#+END_SRC
;; thread
(setq gnus-thread-hide-subtree t)
+ ;; (with-eval-after-load 'gnus-summary-mode
+ ;; (define-key gnus-summary-mode-map (kbd "C-o") 'sd/hydra-window/body))
+
+ (add-hook 'gnus-summary-mode-hook (lambda ()
+ (define-key gnus-summary-mode-map (kbd "C-o") nil)))
+
-
#+END_SRC
** Windows layout
(summary 0.50 point)
(article 1.0)))))
+ (with-eval-after-load 'gnus-group-mode
+ (gnus-group-select-group "INBOX"))
;; (add-hook 'gnus-group-mode-map (lambda ()
- ;; (gnus-group-select-group "INBOX")))
+ ;; (gnus-group-select-group "INBOX")))
#+END_SRC
* key