projectile-bookmarks.eld
config/init-my-theme-2.el
config/my-color-theme.el
+\#*
\ No newline at end of file
;;; this variable should equal as height in mode-line
(custom-set-variables
- '(powerline-text-scale-factor 0.74)) ;; 100/140
+ '(powerline-text-scale-factor 0.85)) ;; 100/140
(custom-set-faces
;;; '(mode-line ((t (:foreground "#030303" :background "#bdbdbd" :box nil :height 0.8 ))))
(concat (replace-regexp-in-string "[<>]" "" (powerline-evil-tag)) " ")
)
+;; -----------------------------------------------------------------------------
+
+;; -----------------------------------------------------------------------------
+;; |evil| buffer_name | major-mode | vc | | position | pwd | time |
+;; -----------------------------------------------------------------------------
+;;
+;; ToDo:
+;; position and pwd only shows in some mode, such as programming mode
+;; using workgroup instead of pwd
+;; some other modes such as eshell, package, help, don't need the posittion and
+;; pwd
+;;
+
+;; -----------------------------------------------------------------------------
+
(defun powerline-ha-theme ()
"A powerline theme that removes many minor-modes that don't serve much purpose on the mode-line."
(interactive)
(rhs
(list
(funcall separator-right face1 mode-line)
+ ;; position
(powerline-raw (concat "%3c, %l/" (format "%d" (count-lines (point-min) (point-max))) " %4p ") mode-line)
(funcall separator-right mode-line face-blue)
- (powerline-raw " [" face-blue)
- (powerline-raw (powerline-format-default-directory default-directory) face-blue )
- (powerline-raw "] " face-blue)
+ ;; pwd/workgroups
+ (powerline-raw (concat " [" (powerline-format-default-directory default-directory) "] ") face-blue )
(funcall separator-right face-blue face1)
+ ;; date and time
(powerline-raw (format-time-string " %m-%d") face1 'r)
(funcall separator-right face1 face-yel)
(powerline-raw (format-time-string " %I:%M %p %a ") face-yel 'r)))
;;---------------------------------------------------------------------------------------
;; evil
;;
+
+(require 'evil)
+(defalias 'evil-insert-state 'evil-emacs-state)
+;; C-o C-o switch to normal mode, defined in config/init-key-binding.el
+;;;(global-set-key (kbd "C-o C-o") 'evil-normal-state)
+
+;;https://github.com/toumorokoshi/yt.rc/blob/master/emacs/my-evil.el
+;; let's disable keymaps we don't want.
+;; basically, anything that uses C or M
+(define-key evil-visual-state-map "\C-w" nil)
+;(define-key evil-normal-state-map (kbd "M-.") nil)
+(define-key evil-normal-state-map "\C-t" nil)
+(define-key evil-normal-state-map "\C-p" nil)
+(define-key evil-normal-state-map "\C-n" nil)
+(define-key evil-normal-state-map "\C-k" nil)
+(define-key evil-normal-state-map "\C-l" nil)
+(define-key evil-normal-state-map "\C-k" nil)
+(define-key evil-normal-state-map "\C-j" nil)
+(define-key evil-normal-state-map "\C-o" nil)
+
+
(global-evil-leader-mode)
(evil-leader/set-leader ";")
(evil-leader/set-key "e" 'find-file)
+(evil-leader/set-key "f" 'recentf-ido-find-file)
(evil-leader/set-key "b" 'switch-to-buffer)
(evil-leader/set-key "w" 'evil-write)
-;; TODO: change cursor to next windows
(evil-leader/set-key "s" 'split-window-below)
(evil-leader/set-key "v" 'split-window-right)
(evil-leader/set-key "q" 'delete-window)
-(require 'evil)
-;(setq key-chord-two-keys-delay 0.5)
+(setq key-chord-two-keys-delay 0.5)
(key-chord-define evil-insert-state-map "jj" 'evil-normal-state)
+(key-chord-define evil-emacs-state-map "jj" 'evil-normal-state)
+
(key-chord-mode 1)
+
(define-key evil-normal-state-map [escape] 'keyboard-quit)
(define-key evil-visual-state-map [escape] 'keyboard-quit)
-;(define-key minibuffer-local-map [escape] 'minibuffer-keyboard-quit)
+
+;(define-key minibuffer-local-map [jscape] 'minibuffer-keyboard-quit)
;(define-key minibuffer-local-ns-map [escape] 'minibuffer-keyboard-quit)
;(define-key minibuffer-local-completion-map [escape] 'minibuffer-keyboard-quit)
;(define-key minibuffer-local-must-match-map [escape] 'minibuffer-keyboard-quit)
;; cursor shape
-(setq evil-emacs-state-cursor '("red" box))
+;(setq evil-emacs-state-cursor '("red" box))
+(setq evil-emacs-state-cursor '("red" bar))
(setq evil-normal-state-cursor '("green" box))
(setq evil-visual-state-cursor '("orange" box))
(setq evil-insert-state-cursor '("red" bar))
(nrepl-mode . insert)
(pylookup-mode . emacs)
(comint-mode . normal)
- (shell-mode . insert)
- (git-commit-mode . insert)
+ (shell-mode . emacs)
+ (git-commit-mode . emacs)
(git-rebase-mode . emacs)
(term-mode . emacs)
(help-mode . emacs)
;;
(global-unset-key "\C-o")
;;(global-set-key (kbd "C-o C-o") 'keyboard-quit);; same as C-g to quit
-(global-set-key (kbd "C-o C-o") 'fiplr-find-file)
+;;; c-o c-o swith to normal mode
+(global-set-key (kbd "C-o C-o") 'evil-normal-state)
+;;(global-set-key (kbd "C-o C-o") 'fiplr-find-file)
(global-set-key (kbd "C-o C-f") 'ido-find-file)
(global-set-key (kbd "C-o C-n") 'recentf-ido-find-file)
(global-set-key (kbd "C-o C-j") 'ido-switch-buffer)
recentf-ext
linum-relative
jekyll-modes
+ evil-escape
workgroups2
+ highlight-current-line
) "a list of packages to ensure are installed at launch.")
(require 'cl)
(add-to-list 'default-frame-alist '(width . 120))
(add-to-list 'default-frame-alist '(height . 40))
;(add-to-list 'default-frame-alist '(font . "Source Code Pro for Powerline-12:weight:light" ))
-(add-to-list 'default-frame-alist '(font . "Source Code Pro for Powerline-14" ))
+(add-to-list 'default-frame-alist '(font . "Source Code Pro for Powerline-12" ))
(setq inhibit-startup-message t)
(put 'set-goal-column 'disabled nil)
(add-to-list 'auto-mode-alist '("emacs\\'" . emacs-lisp-mode))
-(fringe-mode 0)
;; elscreen should be placed begin of https://github.com/knu/elscreen/issues/6
;(elscreen-start)
;(require 'init-elscreen)
+;(require 'elscreen)
+;(custom-set-faces
+; '(elscreen-tab-current-screen-face ((t (:background "Yellow" :foreground "black"))))
+; '(elscreen-tab-other-screen-face ((t (:background "gray22" :foreground "black")))))
+
+
(require 'init-color-theme)
(require 'init-key-binding)
-(require 'linum-relative)
(winner-mode 1)
(global-set-key (kbd "C-c C-l") 'winner-redo)
;(require 'eyebrowse)
;(eyebrowse-mode t)
-(require 'workgroups2)
-;;;;(workgroups-mode 1)
;;(require 'minibuffer-line)
; (insert " "))
; (insert (format-time-string "%m-%d %I:%M %p %a ")))))
+
+
+
+;;; set font size of minibuffer
+;;;; http://stackoverflow.com/questions/7869429/altering-the-font-size-for-the-emacs-minibuffer-separately-from-default-emacs
+(add-hook 'minibuffer-setup-hook 'my-minibuffer-setup)
+(defun my-minibuffer-setup ()
+ (set (make-local-variable 'face-remapping-alist)
+ '((default :height 120))))
+
+
+
+(add-hook 'minibuffer-setup-hook
+ (lambda ()
+ (make-local-variable 'face-remapping-alist)
+ (add-to-list 'face-remapping-alist '(default (:background "green")))))
+
+
+
+
+(require 'evil-escape)
+;(setq-default evil-escape-delay 0.2)
+;(setq evil-escape-excluded-major-modes '(dired-mode))
+;(setq-default evil-escape-key-sequence "jj")
+;(evil-escape-mode 1)
+
+
+;; ---------------
+;; recent file
+(require 'recentf)
+(recentf-mode)
+;(setq recentf-max-menu-items 100)
+
+;; http://www.emacswiki.org/emacs/RecentFiles
+(defun recentf-ido-find-file ()
+ "Find a recent file using Ido."
+ (interactive)
+ (let ((file (ido-completing-read "Choose recent file: " recentf-list nil t)))
+ (when file
+ (find-file file))))
+
+
+
+;; http://stackoverflow.com/questions/11484225/fix-an-auto-complete-mode-and-linum-mode-annoyance
+(ac-linum-workaround)
+
+
+;; ---------------------------------
+;; linum-relative
+
+(require 'linum-relative)
+
+(custom-set-variables
+ '(fringe-mode (quote (4 . 0)) nil (fringe)))
+
+;; maybe better to fix the size of line number rather scaled 0.8
+;; https://github.com/howardabrams/dot-files/blob/master/emacs.org
+(custom-set-faces
+ '(highlight-current-line-face ((t (:background "gray22"))))
+ '(linum ((t (:background "#000000" :foreground "gray40" :height 0.8 :slant italic :weigth light))))
+ '(linum-relative-current-face ((t (:inherit linum :foreground "Yellow" :weight light :height 0.8)))))
+
+
+;; enable linum-relative in programming mode
+;https://github.com/howardabrams/dot-files/blob/master/emacs.org
+(add-hook 'prog-mode-hook 'linum-mode)
+
+
+;; hight current line
+(require 'highlight-current-line)
+(highlight-current-line-on t)
+
+
+
+;(defun pl-fringe-mode ()
+; "jfoewoif"
+; (if linum-mode
+; (fringe-mode '(4 . 0))
+; (fringe-mode '(0 . 0))))
+
+
+;(add-hook 'eshell-mode-hook 'pl-fringe-mode)
+;(add-hook 'prog-mode-hook 'pl-fringe-mode)
+
+
+
+
+
+(require 'workgroups2)
+
+
+(setq wg-prefix-key (kbd "C-c z"))
+(setq wg-session-file "~/.emacs.d/.emacs_workgroups")
+(setq wg-mode-line-display-on t) ; Default: (not (featurep 'powerline))
+(setq wg-flag-modified t) ; Display modified flags as well
+(setq wg-mode-line-decor-left-brace "["
+ wg-mode-line-decor-right-brace "]" ; how to surround it
+ wg-mode-line-decor-divider ":")
+;(workgroups-mode 1)
+
--- /dev/null
+#!/usr/bin/perl -w
+chdir '/Users/peli3/JCC/ecc-p2p' or die ": $!";
--- /dev/null
+#!/usr/bin/perl
+#
+#open IFCONF, 'ifconfig | grep "inet .*broadcast" |' or die 'haha';
+#while(<IFCONF>)
+#{
+## print $_;
+#}
+#
+#my @cc = split /\s+/, `ifconfig | grep "inet .*broadcast"`;
+#my $aa = `ifconfig | grep "inet .*broadcast"`;
+#$_ = $aa;
+#print $aa;
+#my $aa =~ m/([0-9]{1,3}\.){3}[0-9]{1,3}/;
+#print $1;
+my $ff = (split / /, `ifconfig | grep "inet .*broadcast"`)[0];
+print "==||" . $ff . "==\n";
+
+
+
--- /dev/null
+#!/usr/bin/perl -w
+
+use strict;
+
+use Getopt::Std;
+
+my %options = ();
+getopts("n", \%options);
+print "-n $options{n}\n" if defined $options{n};
+
+my $ip = (split / /, `ifconfig | grep "inet .*broadcast"`)[1];
+
+if($options{n})
+{
+ print "==== don't build CPVE ======\n";
+}
+else
+{
+ print "building cpve\n";
+ chdir '/Users/peli3/CPVE/cpve_trunk' or die ": $!";
+ !system "scons arch=x86_64 platform=darwin debug=True -j16 osxversion=10.10" or die "building CPVE failed : $!";
+
+ chdir '/Users/peli3/JCC/ecc-p2p' or die ": $!";
+ print "remove cpve libs\n";
+ !system "rm -rf ./contrib/cpve/lib/darwin/x86_64/*" or die "remove libs failed : $!";
+
+ print "copy cpve libs\n";
+ !system "/bin/cp -r /Users/peli3/CPVE/cpve_trunk/target/dist/lib/darwin/x86_64/* ./contrib/cpve/lib/darwin/x86_64/" or die "copy libs failed: $!";
+
+}
+
+print "building ecc\n";
+!system "python runSconsBuild.py JabberMac64Bit -j 16 -t no --early_cpve" or die " building ECC failed : $!";
+
+print "copy bin-s bin-c\n";
+###system "rm -rf bin-s binn-c";
+!system "/bin/cp -r out/bin ./bin-c" or die "$!";
+!system "/bin/cp -r out/bin ./bin-s" or die "$!";
+
+print "copy config files\n";
+!system "/bin/cp ./sss.txt ./bin-s/cucm-credentials.txt" or die ": $!";
+!system "/bin/cp ./ccc.txt ./bin-c/cucm-credentials.txt" or die ": $!";
+
+print "add p2p server ip\n";
+open CONF, ">>", './bin-c/cucm-credentials.txt' or die "error $!";
+#print CONF "P2P_SERVER_IP=" . &get_local_ip . "\n";
+print CONF "P2P_SERVER_IP=" . $ip . "\n";
+close CONF;
+
+
+print "####### DONE #######\n";
+
+#sub get_local_ip{
+# my @cc = (split / /, `ifconfig | grep "inet .*broadcast"`)[1];
+## @cc[1]; ## return value
+## return @cc[1];
+#}
+