#+END_SRC
* Color and Fonts Settings
-
** highlight current line
-
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
-
- (global-hl-line-mode)
-
+ ;; (global-hl-line-mode)
+ ;; don't want high light current line in eshell/term mode
+ (add-hook 'prog-mode-hook 'hl-line-mode)
+ (add-hook 'text-mode-hook 'hl-line-mode)
#+END_SRC
** Smart Comments
#+END_SRC
** Multi-term
+define =multi-term= mapping to disable some mapping which is used globally.
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(use-package multi-term
:ensure t)
+
+ (defun sd/term-mode-mapping ()
+ (mapcar (lambda (map)
+ (define-key map (kbd "C-o") nil)
+ (define-key map (kbd "C-g") nil))
+ (list term-mode-map
+ term-raw-map)))
+
+ (with-eval-after-load 'multi-term
+ (sd/term-mode-mapping))
#+END_SRC
** ace-link
#+END_SRC
* Completion
-company mode and company-statistics
+** company mode and company-statistics
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
(use-package company
:ensure t
:diminish company-mode
:init (setq company-idle-delay 0.1)
+ (setq company-selection-wrap-around t)
:config
+ (define-key company-active-map (kbd "M-n") nil)
+ (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
+ (define-key company-active-map (kbd "TAB") #'company-complete-selection)
+ (define-key company-active-map [tab] #'company-complete-selection)
(global-company-mode))
(use-package company-statistics
;; other special buffers
("d" sd/project-or-dired-jump nil :exit t)
("b" ibuffer nil :exit t)
+ ("t" multi-term nil :exit t)
("e" sd/toggle-project-eshell nil :exit t)
("m" bookmark-jump-other-window nil :exit t)
("M" bookmark-set nil :exit t)
#+END_SRC
*** TODO make expand-region hydra work with lispy selected
+** =C-w= delete backward word
+Refer [[https://github.com/fnwiya/dotfiles/blob/c9ca79f1b22c919d9f4c3a0f944ba8281255a594/setup/.emacs.d/loader-init/_90-kill-region-or-backward-kill-word.el][kill-region-or-backward-kill-word]]
+#+BEGIN_SRC emacs-lisp :tangle yes :results silent
+ (defun sd/kill-region-or-backward-kill-word ()
+ (interactive)
+ (if (region-active-p)
+ (kill-region (point) (mark))
+ (backward-kill-word 1)))
+
+ (global-set-key (kbd "C-w") 'sd/kill-region-or-backward-kill-word)
+#+END_SRC
+
* key
- passion
- vision