X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig.org;h=bc97b891eccc0ba2d047ed0fd72497478c32bfa7;hb=11de8e7921f52763777d4d8349ce28e02ba9bb31;hp=fdd9843d92dbea5b10b62178ca4209d455937d72;hpb=a8af98dedf21eb2f2829d0565ba13aa578deaf36;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index fdd9843..bc97b89 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -7,7 +7,6 @@ Most config are just copied from [[https://github.com/howardabrams/dot-files][howardabrams]]'s and [[https://github.com/abo-abo/oremacs][abo-abo's]] dotfiles * Basic Settings - ** Setting loading Path Set system PATH and emacs exec path @@ -42,10 +41,8 @@ Set the emacs load path #+END_SRC -** Window Setting - -Disable scroll bar, tool-bar and menu-bar - +** General Setting +*** scroll bar, tool-bar and menu-bar #+BEGIN_SRC emacs-lisp :tangle yes :results silent (scroll-bar-mode 0) (tool-bar-mode 0) @@ -60,38 +57,26 @@ Disable scroll bar, tool-bar and menu-bar (setq make-backup-files nil) #+END_SRC -set custom file - +*** Custom file #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (setq custom-file "~/.emacs.d/custom.el") (if (file-exists-p custom-file) (load custom-file)) - #+END_SRC -Switch the focus to help window when it appears - +*** Switch the focus to help window when it appears #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (setq help-window-select t) - -#+END_SRC - -Setting scroll right/left -#+BEGIN_SRC emacs-lisp :tangle yes :results silent - ; (global-set-key (kbd "C-,") 'scoll-left) - ; (global-set-key (kbd "C-.") 'scoll-right) #+END_SRC -Set default window size +*** Set default window size #+BEGIN_SRC emacs-lisp :tangle yes :results silent (setq initial-frame-alist '((width . 120) (height . 50))) #+END_SRC -Stop auto save +*** Stop auto save #+BEGIN_SRC emacs-lisp :tangle yes :results silent (setq auto-save-default nil) @@ -99,6 +84,22 @@ Stop auto save ;; (desktop-save-mode t) #+END_SRC +*** Save minibuffer history +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (savehist-mode 1) + (setq history-length 1000) +#+END_SRC + +*** temp folder +Make a temp directory for all cache/history files +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (defconst sd-temp-directory + (file-name-as-directory "~/.emacs.d/temp")) + + (unless (file-exists-p sd-temp-directory) + (mkdir sd-temp-directory)) +#+END_SRC + * Package Management Tools ** Use-package @@ -781,47 +782,14 @@ Some global bindings on =Super=, on Mac, it is =Command= #+END_SRC ** Search Replace and highlight -*** Occur -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 () - (interactive) - (occur-next) - (occur-mode-goto-occurrence-other-window) - (recenter) - (other-window 1))) - - (define-key occur-mode-map (kbd "C-p") - (lambda () - (interactive) - (occur-prev) - (occur-mode-goto-occurrence-other-window) - (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 - *** swiper #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (use-package swiper - :ensure t) + ;; (use-package swiper + ;; :ensure t) - (ivy-mode 1) - (setq ivy-use-virtual-buffers t) - (global-set-key (kbd "s-/") 'swiper) + ;; (ivy-mode 1) + ;; (setq ivy-use-virtual-buffers t) + ;; (global-set-key (kbd "s-/") 'swiper) (use-package counsel :ensure t @@ -844,10 +812,13 @@ Occur search key bindings ;; (global-set-key (kbd "C-S-o") 'counsel-rhythmbox) ;; ;; (define-key read-expression-map (kbd "C-r") 'counsel-expression-history) - (set-face-attribute - 'ivy-current-match nil - :background "Orange" - :foreground "black") + ;; (set-face-attribute + ;; 'ivy-current-match nil + ;; :background "Orange" + ;; :foreground "black") + + ;; ivy-resume + ;; (define-key swiper-map (kbd "M-%") 'swiper-aa-replace) #+END_SRC *** =M-s= prefix @@ -899,7 +870,6 @@ use the prefix =M-s= for searching in buffers ;; M-u, #+END_SRC - * Org-mode Settings ** Org-mode Basic setting @@ -941,6 +911,12 @@ Always indents header, and hide header leading starts so that no need type =#+ST (define-key org-mode-map (kbd "C-'") nil) ;; C-M-i is mapped to imenu globally (define-key org-mode-map (kbd "C-M-i") nil) + + ;; set the ditta.jar path + (setq org-ditaa-jar-path "/usr/local/Cellar/ditaa/0.9/libexec/ditaa0_9.jar") + (unless + (file-exists-p org-ditaa-jar-path) + (error "seudut: ditaa.jar not found at %s " org-ditaa-jar-path)) #+END_SRC ** Org-bullets @@ -1294,6 +1270,12 @@ and Defined keys, using vi keybindings, Refer abo-abo's setting [[https://github (defalias 'ee 'find-files) #+END_SRC +*** eshell temp directory +set default eshell history folder +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (setq eshell-directory-name (concat sd-temp-directory "eshell")) +#+END_SRC + *** Eshell erase buffer #+BEGIN_SRC emacs-lisp :tangle yes :results silent (defun sd/eshell-clear-buffer () @@ -1444,9 +1426,9 @@ Refer [[https://github.com/abo-abo/hydra/blob/master/hydra-examples.el][hydra-ex Enable linum mode on programming modes #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (add-hook 'prog-mode-hook 'linum-mode) - + ;; (add-hook 'prog-mode-hook (lambda () + ;; (setq-default indicate-empty-lines t))) #+END_SRC Fix the font size of line number @@ -2340,8 +2322,7 @@ Use =Avy= for motion (use-package avy :ensure t :config - (avy-setup-default) - ) + (avy-setup-default)) (global-set-key (kbd "C-M-j") 'avy-goto-line-below) (global-set-key (kbd "C-M-n") 'avy-goto-line-below) @@ -2394,5 +2375,103 @@ Use =Avy= for motion ;; ("s" . isearch-forward-regexp "search-forward" :exit t) ;; ("r" . isearch-backward-regexp "search-backward" :exit t) ;; ) + + ;; (setq-default indicate-empty-lines t) +#+END_SRC + +*** Occur +Occur search key bindings +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (defun sd/occur-keys () + "My key bindings in occur-mode" + (interactive) + (switch-to-buffer-other-window "*Occur*") + (define-key occur-mode-map (kbd "C-o") nil) + (define-key occur-mode-map (kbd "C-n") (lambda () + (interactive) + (occur-next) + (occur-mode-goto-occurrence-other-window) + (recenter) + (other-window 1))) + (define-key occur-mode-map (kbd "C-p") (lambda () + (interactive) + (occur-prev) + (occur-mode-goto-occurrence-other-window) + (recenter) + (other-window 1)))) + + (add-hook 'occur-hook #'sd/occur-keys) + + (use-package color-moccur + :ensure t + :commands (isearch-moccur isearch-all) + :init + (setq isearch-lazy-highlight t) + :config + (use-package moccur-edit)) +#+END_SRC + +*** Swiper +stolen from [[https://github.com/mariolong/emacs.d/blob/f6a061594ef1b5d1f4750e9dad9dc97d6e122840/emacs-init.org][here]] +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (use-package swiper + :ensure t + :init + (setq ivy-use-virtual-buffers t) + (set-face-attribute 'ivy-current-match nil :background "Orange" :foreground "black") + :config + (ivy-mode) + (global-set-key (kbd "s-/") 'swiper) + (define-key swiper-map (kbd "M-r") 'swiper-query-replace) + (define-key swiper-map (kbd "C-.") (lambda () + (interactive) + (insert (format "%s" (with-ivy-window (thing-at-point 'word)))))) + (define-key swiper-map (kbd "M-.") (lambda () + (interactive) + (insert (format "%s" (with-ivy-window (thing-at-point 'symbol))))))) #+END_SRC +* TODO Temp directory for cached/history/temp files +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (use-package recentf + :config + (setq recentf-save-file (concat sd-temp-directory "recentf"))) + + (use-package projectile + :config + (setq projectile-cache-file (concat sd-temp-directory "projectile.cache"))) + + (use-package ido + :config + (setq ido-save-directory-list-file (concat sd-temp-directory "ido.last"))) + + (use-package savehist + :config + (setq savehist-file (concat sd-temp-directory "history"))) + + (use-package emms + :config + (setq emms-directory (concat sd-temp-directory "emms"))) + + (setq auto-save-list-file-prefix (concat sd-temp-directory "auto-save-list/.saves-")) + + (use-package smex + :config + (setq smex-save-file (concat sd-temp-directory "smex-items"))) +#+END_SRC + +* test +#+BEGIN_SRC ditaa :file temp/hello-world.png :cmdline -r ++--------------+ +| | +| Hello World! | +| | ++--------------+ +#+END_SRC + +#+RESULTS: +[[file:temp/hello-world.png]] + + +* =C-u C-h a= search funtions +=apropos-command=