From c2b78bff38c78a93897a96ab36d0f93e9ccddc0b Mon Sep 17 00:00:00 2001 From: Tuan-Dat Tran Date: Thu, 5 Apr 2018 09:46:48 +0200 Subject: [PATCH] Added visual-replace and smartcompile (+keybinds) to emacs, also added c version of polybar-spotify script --- .gitignore | 2 +- config/.config/neofetch/config.conf | 2 +- config/.config/ranger/rc.conf | 5 +- config/.scripts/i3lock.py | 22 ++++++--- config/.scripts/spotify-play.cpp | 9 ++-- config/.scripts/spotify-play.out | Bin 39648 -> 39648 bytes emacs/.emacs.d/config.org | 53 +++++++++++++--------- emacs/.emacs.d/snippets/org-mode/add-hook | 7 +++ zsh/.zshrc | 2 +- 9 files changed, 67 insertions(+), 35 deletions(-) create mode 100644 emacs/.emacs.d/snippets/org-mode/add-hook diff --git a/.gitignore b/.gitignore index 25f0acb..2bb0f0e 100755 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,6 @@ *.log .#* emacs/.emacs.d/* +config/.scripts/playstate !emacs/.emacs.d/snippets* !emacs/.emacs.d/config.org -!emacs/.emacs.d/init.el \ No newline at end of file diff --git a/config/.config/neofetch/config.conf b/config/.config/neofetch/config.conf index 7152efe..da7de53 100755 --- a/config/.config/neofetch/config.conf +++ b/config/.config/neofetch/config.conf @@ -448,7 +448,7 @@ underline_char="-" # # Display colors 0-15 in the blocks. (16 colors) # neofetch --block_range 0 15 -block_range=(0 7) +block_range=(0 15) # Toggle color blocks # diff --git a/config/.config/ranger/rc.conf b/config/.config/ranger/rc.conf index 2f005cd..8d6d9aa 100644 --- a/config/.config/ranger/rc.conf +++ b/config/.config/ranger/rc.conf @@ -1,2 +1,5 @@ set preview_images true -set vcs_aware true \ No newline at end of file +set vcs_aware true + +EDITOR='emacsclient -nw' +DEFAULT_EDITOR='emacsclient -nw' \ No newline at end of file diff --git a/config/.scripts/i3lock.py b/config/.scripts/i3lock.py index ca2135e..d534bc5 100755 --- a/config/.scripts/i3lock.py +++ b/config/.scripts/i3lock.py @@ -94,20 +94,27 @@ def lock_config(): # Color of seperator | Color: dark-blue lock_sep_color = '--separatorcolor 0000D1FF' # Right Text - lock_right_text = '--veriftext="\.\.\."' + lock_right_text = '--veriftext="..."' # Wrong Text lock_wrong_text = '--wrongtext="Noope"' + # Text Size + lock_text_size = '--textsize=20' # Ring Position - lock_texts = '{} {}'.format(lock_right_text, lock_wrong_text) - lock_pos = '--indpos={}:{}'.format(int(clock_x)+350, int(clock_y+90)) + lock_texts = '{} {} {}'.format(lock_right_text, lock_wrong_text, + lock_text_size) + lock_pos = '--indpos={}:{}'.format(int(clock_x)+380, int(clock_y+90)) # Ring size ring_size = 40 lock_radius = '--radius {}'.format(ring_size) lock_stats = '{} {}'.format(lock_pos, lock_radius) - indicator_outer_ring = "{} {} {} {} {} {} {} {}".format(lock_ring, lock_ring_w, - lock_ring_v, lock_press, - lock_del, lock_sep_color, - lock_stats, lock_texts) + indicator_outer_ring = "{} {} {} {} {} {} {} {}".format(lock_ring, + lock_ring_w, + lock_ring_v, + lock_press, + lock_del, + lock_sep_color, + lock_stats, + lock_texts) # done indicator = "{} {}".format(indicator_inner, indicator_outer_ring) @@ -143,6 +150,7 @@ def log(start_time): if __name__ == '__main__': + start_time = time.time() screenshot() pixelate() diff --git a/config/.scripts/spotify-play.cpp b/config/.scripts/spotify-play.cpp index 423853f..bfed409 100644 --- a/config/.scripts/spotify-play.cpp +++ b/config/.scripts/spotify-play.cpp @@ -53,8 +53,8 @@ string getfile(string file_path){ bool spotify_running(){ string dir = string("/proc/"); - vector procs = vector(); - getdir(dir, procs); + vector processes = vector(); + getdir(dir, processes); string proc_name = string(""); for (unsigned int i = 0; i < procs.size(); i++){ proc_name = dir + procs[i] + "/cmdline"; @@ -66,6 +66,7 @@ bool spotify_running(){ } int main(){ + // struct passwd *pw = getpwuid(getuid()); const char *homedir = pw->pw_dir; int state = -1; @@ -73,6 +74,8 @@ int main(){ string playstate_file = ""; playstate_file += homedir + string("/.scripts/playstate"); while (spotify_running()){ + usleep(100000); + // cout << spotify_running() << endl; playstate = stoi(getfile(playstate_file)); if(playstate != state){ state = playstate; @@ -85,6 +88,6 @@ int main(){ system("playerctl play"); } } - usleep(100); } + cout << endl; } diff --git a/config/.scripts/spotify-play.out b/config/.scripts/spotify-play.out index 641e867bc2145079f569b8d03ddfe348679679e0..21aa910c5965d3d88bebbdd1bea5d718b57f0ea1 100755 GIT binary patch delta 3757 zcmZ9O3se->8OQHkb`em7HR!saEKdO=tgGnqjIJ+6BRQIgK|v9NfF6@-YU-o3NXU|G zkc#~%qBSiVt(wM0vyoO~6nueNJ;vrlqcKNL)Q%Ai>#GnS)BoKWG$(To-*4u7{O7xO z?!C*Ey}B!Vb+u>xJH|2Z)v@lIL&oG$>cdmgPJSumW#vLpQcmlk%kfjz1}?fAh4@AK+;UFW%a_(hY~nREEYi-GQ&D6jUqMxolgfQLV}}~6IFp+mD2h~* zv)U`^`da8j-xsclP|se?TG88|3rK_mw17;`xnD_S}{l3I$gRyhOr)!t~j zvlKbYD%2;Jv$PzKm0t)adn;9{8CBO$j43nS8o}gZA>leKRU4)zM&LEaCD(a*saH31 z3G(Fo_Y~#E$fpWC$TJ4<-9B68D5atVib?BUNG&Jxib zk~RuoteVs;9Nl++Q6>M(;eGjeIJ7sG-PbFMTtYR`iP0CIHQE0IF}#{lt#Dx=y}Scy zmABL7Xz9g+cSQN|>YNU#dSa);byjkf53Z0bWgPu52n$@QI>5YG)7pZE^XqqamR-$pMb zO*Q1+P?QtY9%phlCE0X_-v1Sk#)JW+vnBIEWVcy$8P`dP52fwaKz@X3ZL^IRu6l>j zDYaZN2-!AzX!~~9!|#PRM|9t&b$=84OaAbh+Tu+wy)82G8M!XBK#cll-TeUqwU~y1 zd2}UiARQk$Dy=vv$nuWZm#o(Ds$=G4*Lg>dW5(2)*tzBimLt_97K5)iT#qNa9!yOT zU)fJ;dF-R~{|#A_J>`qr73E{><_t7k22Mf?$v%u7xUMMqV3MpT?|@Y|kq4IFR+P@( zjJ1KmeHgn8eucUp!FymDKIK=)n-AUt*MK2<#+txn@H9r04-UY0F4MDeCgEli97SL= zxC6Wjo&og+#%_Z#;IFaZrh@yy#b6t_2Aq#|w;TLDcoy6Uc7i{EA-;@tfyrPLHsK6# zIJgX41lIXt{Wsy}GZFZoqI?U!0X_oX2M6`SX$fY4*TH-+xl2)2gD-=P;0ySIN5Lxa zDtHpqAm$b#USi+_1+G07rl_I0^K_ zH@*uF2M6J-oCaoqOTcWf7OV$%gJ-GGZs-4^4R$N+340vplSuUU&jEdP4(k{qz$Q-$y>48@e9oK zJ0R1eJku-6BH-VR+D*urAacZ)>B%WqbHtlxptA$S(=7ZjMW$H-4kOfxpkrQp4R$OU#t47x7>mw!$16E+jGhmp1#k}` zCu|69gB?xBV29H+*l}bSYY7;QO}$IZQY9sg4d_HxxbD)-aY>k0cjdSn0aTmq#~;y#>=It*<}bDS^EzsOwZBggYXnW^o__$*k)(maznXt&U)TW`{s<{tEhWU7XK4D=9(b3!%!LHJb=IibW0th|D31t#+wV$b8!T4yr?)tm+@M6@nh zjrQ0rT67AnL$pfkze5Yp>f19LEr?3mTt#WoAGPSazcT&nmQpGmWd#CLQRW$_65 zvdA>~hXl1$?0#{z;4~9&F>14l|9-vK3C;h@*&d7&OyrLx+X5?2<-!G7<~Nhnnx4+9 zuslT0NorYOGS_R$Lp9~`;cE0R1UXyS{ zs1jdOMX?p<_nzV`bD1V2PG@mZBxC*1L@gOhOy)E3s#hGF;_5HHJ delta 3721 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 G_xUd^#vwZZ diff --git a/emacs/.emacs.d/config.org b/emacs/.emacs.d/config.org index ddb9db0..f59a777 100644 --- a/emacs/.emacs.d/config.org +++ b/emacs/.emacs.d/config.org @@ -31,7 +31,6 @@ A list of installed packages and details about them. (require 'use-package) (setq use-package-always-ensure t) -;; (use-package aggressive-indent) is a dep (use-package anaconda-mode) (use-package auctex :defer t @@ -50,20 +49,13 @@ A list of installed packages and details about them. (use-package ox-twbs) (use-package rainbow-delimiters) (use-package rainbow-mode) +(use-package smart-compile) (use-package smartparens) (use-package swiper) (use-package powerline) -;; (use-package yasnippet) is a dep +(use-package php-mode) +(use-package visual-regexp) #+END_SRC - -#+BEGIN_SRC emacs-lisp -(custom-set-variables - '(package-selected-packages - (quote - (powerline ledger-mode smartparens rainbow-mode rainbow-delimiters ox-twbs material-theme google-this flycheck eclim counsel auto-complete-auctex auto-complete auctex anaconda-mode use-package))) - '(truncate-lines t)) -#+END_SRC - * Appearance Using the [[https://github.com/cpaulik/emacs-material-theme][Material]]-Theme. #+BEGIN_SRC emacs-lisp @@ -198,6 +190,25 @@ Using Anaconda-mode as default python development mode (add-hook 'python-mode-hook 'anaconda-mode) (add-hook 'python-mode-hook 'anaconda-eldoc-mode) #+END_SRC +** C++ +My exec doesnt quite work yet. +#+BEGIN_SRC emacs-lisp +;;(defun my-exec () +;; (interactive) +;; (let ((exe (smart-compile-string "%n"))) +;; (with-current-buffer "*eshell*" +;; (goto-char (point-max)) +;; (insert "./") +;; (insert exe) +;; (eshell-send-input)) +;; (switch-to-buffer-other-window "*eshell*"))) +(add-hook + 'c++-mode-hook + (lambda() + (local-set-key (kbd "C-c C-c") #'smart-compile) + (local-set-key (kbd "C-c /") #'comment-region))) +#+END_SRC + ** LaTeX Some default settings for LaTeX-Mode. AucTeX is needed. @@ -207,11 +218,6 @@ AucTeX is needed. (setq-default TeX-master nil) #+END_SRC ** Org -Enable a Twitter Bootstrap mode as an export mode for Org-mode. -#+BEGIN_SRC emacs-lisp -;; (require 'ox-twbs) -#+END_SRC - Use Evince as default pdf viewer. #+BEGIN_SRC emacs-lisp (add-hook 'org-mode-hook @@ -247,6 +253,13 @@ Handy shortcuts (setq org-log-done t) #+END_SRC +GNU Plot +#+BEGIN_SRC emacs-lisp +(add-hook 'org-mode-hook + '(lambda () + (local-set-key (kbd "C-c c") #'org-plot/gnuplot))) +#+END_SRC + Enabled languages: #+BEGIN_SRC emacs-lisp (org-babel-do-load-languages @@ -255,6 +268,7 @@ Enabled languages: (sh . t) (emacs-lisp . t) (C . t) + (gnuplot . t) )) #+END_SRC @@ -284,11 +298,7 @@ Globaly highlight the current line in a slightly darker shade of grey. (yas-global-mode 1) #+END_SRC -** Ledger -#+BEGIN_SRC emacs-lisp -(org-babel-load-file "~/.emacs.d/ledger.org") -#+END_SRC -** Personal +** Personal Global #+BEGIN_SRC emacs-lisp (defvar my-keys-minor-mode-map (let ((map (make-sparse-keymap))) @@ -297,6 +307,7 @@ Globaly highlight the current line in a slightly darker shade of grey. (define-key map (kbd "C-c C-w") 'cut-to-xclipboard) (define-key map (kbd "C-c M-y") 'paste-from-xclipboard) (define-key map (kbd "C-c w") 'copy-word) + (define-key map (kbd "C-c r") 'vr/query-replace) map) "my-keys-minor-mode keymap.") diff --git a/emacs/.emacs.d/snippets/org-mode/add-hook b/emacs/.emacs.d/snippets/org-mode/add-hook new file mode 100644 index 0000000..de8d16d --- /dev/null +++ b/emacs/.emacs.d/snippets/org-mode/add-hook @@ -0,0 +1,7 @@ +# -*- mode: snippet; -*- +#contributor: Xah Lee (XahLee.org) +#name: add-hook +#key: add-hook +#key: ah +# -- +(add-hook '${1:name}-hook ${2:'${3:function}})$0 diff --git a/zsh/.zshrc b/zsh/.zshrc index 5f0bdf7..b3e875c 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -30,12 +30,12 @@ POWERLEVEL9K_TIME_FORMAT="%D{%H:%M:%S}" alias df="df -h" alias mkvirtenv="python -m virtualenv --system-site-packages" alias e="emacsclient -t" +alias ed="emacs --daemon" alias nyan="nyancat" alias rm="rm -i" alias -s tex=e alias -s cpp=e alias org="e ~/Nextcloud/orgs/man.org" -alias neofetch="neofetch --block_range 0 16" alias diff="diff -s" alias budget="e ~/Nextcloud/orgs/Budget/MyBudget.ledger" alias q="exit"