439752ada882a16d7b3f892c7abc16bde01101c6
[dotfiles.git] / emacs.d / config / init-elscreen.el
1 ;; this config file is based on  seudut/elscreen.git, which added two interface and one property 
2 ;; default directory
3
4
5 ;; change default keybinding
6 (global-set-key (kbd "<M-tab>") 'elscreen-next) ;; "C-M-I"
7 (global-set-key (kbd "M-n") 'elscreen-next)
8 (global-set-key (kbd "M-p") 'elscreen-previous)
9 (global-set-key (kbd "M-t") 'elscreen-create)
10 ;;; split 
11
12
13 ;; tab face
14
15 (custom-set-faces
16  '(elscreen-tab-current-screen-face ((t (:background "Yellow" :foreground "black"))))
17  '(elscreen-tab-other-screen-face ((t (:background "gray22" :foreground "black")))))
18
19 ;;(add-hook 'elscreen-create-hook
20 ;;          (lambda ()
21 ;;            (elscreen-set-default-directory  
22 ;;              (elscreen-get-current-screen) "~/")))
23
24
25 (add-hook 'elscreen-goto-hook
26           (lambda ()
27             (elscreen-cd-default-directory
28               (elscreen-get-default-directory (elscreen-get-current-screen)))))
29
30 (defun sd-cd-dd (dir)
31   "Set default directory screen."
32   (interactive "sSet dir:")
33   (elscreen-set-default-directory (elscreen-get-current-screen) dir)
34   (cd dir)
35 )
36
37 (defun sd-show-dir ()
38   "show elscreen default directory."
39   (interactive)
40   (message
41   (elscreen-get-default-directory (elscreen-get-current-screen))))
42
43 (defun sd-update-elscreen-dir ()
44   "update elscreen dir as current default directory"
45   (interactive)
46   (elscreen-set-default-directory (elscreen-get-current-scren) default-directory))
47
48
49
50 ;;(add-hook 'buffer-list-update-hook
51 ;;          (lambda ()
52 ;;            (let ((el-dir (elscreen-get-default-directory (elscreen-get-current-screen))))
53 ;;              (if (> (length el-dir) 0)
54 ;;                 (cd el-dir)))))
55
56
57 (provide 'init-elscreen)