From 7d936b8d874a40d97fb3282d77c431926e9b98ba Mon Sep 17 00:00:00 2001 From: TuDatTr Date: Fri, 5 Jan 2018 13:04:45 +0100 Subject: [PATCH] reorganized .emacs --- .config/i3/config.bak | 444 ----------------------------------------- .config/termite/config | 2 +- .emacs | 105 ++++++---- .gitignore | 1 - 4 files changed, 63 insertions(+), 489 deletions(-) delete mode 100644 .config/i3/config.bak diff --git a/.config/i3/config.bak b/.config/i3/config.bak deleted file mode 100644 index 04181dd..0000000 --- a/.config/i3/config.bak +++ /dev/null @@ -1,444 +0,0 @@ -# i3 config file (v4) -# Please see http://i3wm.org/docs/userguide.html for a complete reference! - -# Set mod key (Mod1=, Mod4=) -set $mod Mod4 - -# set default desktop layout (default is tiling) -# workspace_layout tabbed - -# Configure border style -new_window pixel 1 -new_float normal - -# Hide borders -hide_edge_borders none - -# change borders -bindsym $mod+u border none -bindsym $mod+y border pixel 1 -bindsym $mod+n border normal - -# Font for window titles. Will also be used by the bar unless a different font -# is used in the bar {} block below. -font xft:Noto Sans 10 - -# Use Mouse+$mod to drag floating windows -floating_modifier $mod - -# start a terminal -bindsym $mod+Return exec terminal - -# kill focused window -bindsym $mod+Shift+q kill - -# start program launcher -bindsym $mod+d exec --no-startup-id dmenu_recency - -# launch categorized menu -bindsym $mod+z exec --no-startup-id morc_menu - -################################################################################################ -## sound-section - DO NOT EDIT if you wish to automatically upgrade Alsa -> Pulseaudio later! ## -################################################################################################ - -exec --no-startup-id volumeicon -bindsym $mod+Ctrl+m exec terminal -e 'alsamixer' -#exec --no-startup-id pulseaudio -#exec --no-startup-id pa-applet -#bindsym $mod+Ctrl+m exec pavucontrol - -################################################################################################ - -# Screen brightness controls -# bindsym XF86MonBrightnessUp exec "xbacklight -inc 10; notify-send 'brightness up'" -# bindsym XF86MonBrightnessDown exec "xbacklight -dec 10; notify-send 'brightness down'" - -# Start Applications -bindsym $mod+Ctrl+b exec terminal -e 'bmenu' -bindsym $mod+F2 exec palemoon -bindsym $mod+F3 exec pcmanfm -# bindsym $mod+F3 exec ranger -bindsym $mod+Shift+F3 exec gksu pcmanfm -bindsym $mod+F5 exec terminal -e 'mocp' -bindsym $mod+t exec --no-startup-id pkill compton -bindsym $mod+Ctrl+t exec --no-startup-id compton -b -bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'" -bindsym Print exec --no-startup-id i3-scrot -bindsym $mod+Print --release exec --no-startup-id i3-scrot -w -bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s -bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf -bindsym $mod+Ctrl+x --release exec --no-startup-id xkill - -# focus_follows_mouse no - -# change focus -bindsym $mod+j focus left -bindsym $mod+k focus down -bindsym $mod+l focus up -bindsym $mod+semicolon focus right - -# alternatively, you can use the cursor keys: -bindsym $mod+Left focus left -bindsym $mod+Down focus down -bindsym $mod+Up focus up -bindsym $mod+Right focus right - -# move focused window -bindsym $mod+Shift+j move left -bindsym $mod+Shift+k move down -bindsym $mod+Shift+l move up -bindsym $mod+Shift+semicolon move right - -# alternatively, you can use the cursor keys: -bindsym $mod+Shift+Left move left -bindsym $mod+Shift+Down move down -bindsym $mod+Shift+Up move up -bindsym $mod+Shift+Right move right - -# workspace back and forth (with/without active container) -workspace_auto_back_and_forth yes -bindsym $mod+b workspace back_and_forth -bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth - -# split orientation -bindsym $mod+h split h;exec notify-send 'tile horizontally' -bindsym $mod+v split v;exec notify-send 'tile vertically' -bindsym $mod+q split toggle - -# toggle fullscreen mode for the focused container -bindsym $mod+f fullscreen toggle - -# change container layout (stacked, tabbed, toggle split) -bindsym $mod+s layout stacking -bindsym $mod+w layout tabbed -bindsym $mod+e layout toggle split - -# toggle tiling / floating -bindsym $mod+Shift+space floating toggle - -# change focus between tiling / floating windows -bindsym $mod+space focus mode_toggle - -# toggle sticky -bindsym $mod+Shift+s sticky toggle - -# focus the parent container -bindsym $mod+a focus parent - -# move the currently focused window to the scratchpad -bindsym $mod+Shift+minus move scratchpad - -# Show the next scratchpad window or hide the focused scratchpad window. -# If there are multiple scratchpad windows, this command cycles through them. -bindsym $mod+minus scratchpad show - -#navigate workspaces next / previous -bindsym $mod+Ctrl+Right workspace next -bindsym $mod+Ctrl+Left workspace prev - -# Workspace names -# to display names or symbols instead of plain workspace numbers you can use -# something like: set $ws1 1:mail -# set $ws2 2: -set $ws1 1 -set $ws2 2 -set $ws3 3 -set $ws4 4 -set $ws5 5 -set $ws6 6 -set $ws7 7 -set $ws8 8 - -# switch to workspace -bindsym $mod+1 workspace $ws1 -bindsym $mod+2 workspace $ws2 -bindsym $mod+3 workspace $ws3 -bindsym $mod+4 workspace $ws4 -bindsym $mod+5 workspace $ws5 -bindsym $mod+6 workspace $ws6 -bindsym $mod+7 workspace $ws7 -bindsym $mod+8 workspace $ws8 - -# Move focused container to workspace -bindsym $mod+Ctrl+1 move container to workspace $ws1 -bindsym $mod+Ctrl+2 move container to workspace $ws2 -bindsym $mod+Ctrl+3 move container to workspace $ws3 -bindsym $mod+Ctrl+4 move container to workspace $ws4 -bindsym $mod+Ctrl+5 move container to workspace $ws5 -bindsym $mod+Ctrl+6 move container to workspace $ws6 -bindsym $mod+Ctrl+7 move container to workspace $ws7 -bindsym $mod+Ctrl+8 move container to workspace $ws8 - -# Move to workspace with focused container -bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 -bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2 -bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 -bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 -bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 -bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 -bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7 -bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 - -# Open applications on specific workspaces -# assign [class="Thunderbird"] $ws1 -# assign [class="Pale moon"] $ws2 -# assign [class="Pcmanfm"] $ws3 -# assign [class="Skype"] $ws5 - -# Open specific applications in floating mode -for_window [title="alsamixer"] floating enable border pixel 1 -for_window [class="Calamares"] floating enable border normal -for_window [class="Clipgrab"] floating enable -for_window [title="File Transfer*"] floating enable -for_window [class="Galculator"] floating enable border pixel 1 -for_window [class="GParted"] floating enable border normal -for_window [title="i3_help"] floating enable sticky enable border normal -for_window [class="Lightdm-gtk-greeter-settings"] floating enable -for_window [class="Lxappearance"] floating enable sticky enable border normal -for_window [class="Manjaro-hello"] floating enable -for_window [class="Manjaro Settings Manager"] floating enable border normal -for_window [title="MuseScore: Play Panel"] floating enable -for_window [class="Nitrogen"] floating enable sticky enable border normal -for_window [class="Oblogout"] fullscreen enable -for_window [class="octopi"] floating enable -for_window [title="About Pale Moon"] floating enable -for_window [class="Pamac-manager"] floating enable -for_window [class="Pavucontrol"] floating enable -for_window [class="qt5ct"] floating enable sticky enable border normal -for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal -for_window [class="Simple-scan"] floating enable border normal -for_window [class="(?i)System-config-printer.py"] floating enable border normal -for_window [class="Skype"] floating enable border normal -for_window [class="Thus"] floating enable border normal -for_window [class="Timeset-gui"] floating enable border normal -for_window [class="(?i)virtualbox"] floating enable border normal -for_window [class="Xfburn"] floating enable - -# switch to workspace with urgent window automatically -for_window [urgent=latest] focus - -# reload the configuration file -bindsym $mod+Shift+c reload - -# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) -bindsym $mod+Shift+r restart - -# exit i3 (logs you out of your X session) -bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" - -# Set shut down, restart and locking features -bindsym $mod+0 mode "$mode_system" -set $mode_system (l)ock, (e)xit, switch_(u)ser, (s)uspend, (h)ibernate, (r)eboot, (Shift+s)hutdown -mode "$mode_system" { - bindsym l exec --no-startup-id i3exit lock, mode "default" - bindsym s exec --no-startup-id i3exit suspend, mode "default" - bindsym u exec --no-startup-id i3exit switch_user, mode "default" - bindsym e exec --no-startup-id i3exit logout, mode "default" - bindsym h exec --no-startup-id i3exit hibernate, mode "default" - bindsym r exec --no-startup-id i3exit reboot, mode "default" - bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default" - - # exit system mode: "Enter" or "Escape" - bindsym Return mode "default" - bindsym Escape mode "default" -} - -# Resize window (you can also use the mouse for that) -bindsym $mod+r mode "resize" -mode "resize" { - # These bindings trigger as soon as you enter the resize mode - # Pressing left will shrink the window’s width. - # Pressing right will grow the window’s width. - # Pressing up will shrink the window’s height. - # Pressing down will grow the window’s height. - bindsym j resize shrink width 5 px or 5 ppt - bindsym k resize grow height 5 px or 5 ppt - bindsym l resize shrink height 5 px or 5 ppt - bindsym semicolon resize grow width 5 px or 5 ppt - - # same bindings, but for the arrow keys - bindsym Left resize shrink width 10 px or 10 ppt - bindsym Down resize grow height 10 px or 10 ppt - bindsym Up resize shrink height 10 px or 10 ppt - bindsym Right resize grow width 10 px or 10 ppt - - # exit resize mode: Enter or Escape - bindsym Return mode "default" - bindsym Escape mode "default" -} - -# Lock screen -bindsym $mod+9 exec --no-startup-id blurlock - -# Autostart applications -exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 -exec --no-startup-id nitrogen --restore; sleep 1; compton -b -#exec --no-startup-id manjaro-hello -exec --no-startup-id nm-applet -exec --no-startup-id xfce4-power-manager -exec --no-startup-id pamac-tray -exec --no-startup-id clipit -# exec --no-startup-id blueman-applet -# exec_always --no-startup-id sbxkb -exec --no-startup-id start_conky_maia -# exec --no-startup-id start_conky_green -exec --no-startup-id xautolock -time 10 -locker blurlock -exec_always --no-startup-id ff-theme-util -exec_always --no-startup-id fix_xcursor - -# Color palette used for the terminal ( ~/.extend.Xresources file ) -# Colors are gathered based on the documentation: -# https://i3wm.org/docs/userguide.html#xresources -# Change the variable name at the place you want to match the color -# of your terminal like this: -# [example] -# If you want your bar to have the same background color as your -# terminal background change the line 362 from: -# background $i3_background -# to: -# background $term_background -# Same logic applied to everything else. -set_from_resource $term_background background -set_from_resource $term_foreground foreground -set_from_resource $term_color0 color0 -set_from_resource $term_color1 color1 -set_from_resource $term_color2 color2 -set_from_resource $term_color3 color3 -set_from_resource $term_color4 color4 -set_from_resource $term_color5 color5 -set_from_resource $term_color6 color6 -set_from_resource $term_color7 color7 -set_from_resource $term_color8 color8 -set_from_resource $term_color9 color9 -set_from_resource $term_color10 color10 -set_from_resource $term_color11 color11 -set_from_resource $term_color12 color12 -set_from_resource $term_color13 color13 -set_from_resource $term_color14 color14 -set_from_resource $term_color15 color15 - -# Color palette used for i3 -# Variables are set based on the documentation: -# https://i3wm.org/dovs/userguide.html#variables -# Changing the value of one of the variables will -# effect all the areas with the same color. -set $i3_background #2b2c2b -set $i3_text #f9faf9 -set $i3_separator #454947 -set $i3_color1 #f9faf9 -set $i3_color2 #595b5b -set $i3_color3 #353836 -set $i3_color4 #16a085 -set $i3_color5 #fdf6e3 -set $i3_color6 #eee8d5 -set $i3_color7 #e5201d -set $i3_color8 #808380 -set $i3_color9 #434745 -set $i3_color10 #454948 -set $i3_color11 #80fff9 -set $i3_color12 #fdf6e3 -set $i3_color13 #cb4b16 -set $i3_color14 #268bd2 -set $i3_color15 #000000 -set $i3_color16 #ffffff -set $i3_color17 #0c0c0c - -# Start i3bar to display a workspace bar (plus the system information i3status if available) -bar { - i3bar_command i3bar - status_command i3status - position bottom - -## please set your primary output first. Example: 'xrandr --output eDP1 --primary' -# tray_output primary -# tray_output eDP1 - - bindsym button4 nop - bindsym button5 nop - font xft:Noto Sans 10.5 - strip_workspace_numbers yes - - colors { - background $i3_background - statusline $i3_text - separator $i3_separator - -# border backgr. text - focused_workspace $i3_color1 $i3_color4 $i3_text - active_workspace $i3_color2 $i3_color3 $i3_color5 - inactive_workspace $i3_color2 $i3_color3 $i3_color6 - binding_mode $i3_color8 $i3_background $i3_text - urgent_workspace $i3_color4 $i3_color5 $i3_color7 - } -} - -# hide/unhide i3status bar -bindsym $mod+m bar mode toggle - -# Theme colors -# class border backgr. text indic. child_border -client.focused $i3_color8 $i3_color8 $i3_color11 $i3_color12 -client.focused_inactive $i3_color9 $i3_color9 $i3_color4 $i3_color10 -client.unfocused $i3_color9 $i3_color9 $i3_color4 $i3_color10 -client.urgent $i3_color13 $i3_color12 $i3_color4 $i3_color14 -client.placeholder $i3_color15 $i3_color17 $i3_color16 $i3_color15 $i3_color17 - -client.background $i3_background - -############################# -### settings for i3-gaps: ### -############################# - -# Set inner/outer gaps -gaps inner 10 -gaps outer -4 - -# Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size. -# gaps inner|outer current|all set|plus|minus -# gaps inner all set 10 -# gaps outer all plus 5 - -# Smart gaps (gaps used if only more than one container on the workspace) -smart_gaps on - -# Smart borders (draw borders around container only if it is not the only container on this workspace) -# on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0) -smart_borders on - -# Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces. -set $mode_gaps Gaps: (o) outer, (i) inner -set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) -set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) -bindsym $mod+Shift+g mode "$mode_gaps" - -mode "$mode_gaps" { - bindsym o mode "$mode_gaps_outer" - bindsym i mode "$mode_gaps_inner" - bindsym Return mode "default" - bindsym Escape mode "default" -} -mode "$mode_gaps_inner" { - bindsym plus gaps inner current plus 5 - bindsym minus gaps inner current minus 5 - bindsym 0 gaps inner current set 0 - - bindsym Shift+plus gaps inner all plus 5 - bindsym Shift+minus gaps inner all minus 5 - bindsym Shift+0 gaps inner all set 0 - - bindsym Return mode "default" - bindsym Escape mode "default" -} -mode "$mode_gaps_outer" { - bindsym plus gaps outer current plus 5 - bindsym minus gaps outer current minus 5 - bindsym 0 gaps outer current set 0 - - bindsym Shift+plus gaps outer all plus 5 - bindsym Shift+minus gaps outer all minus 5 - bindsym Shift+0 gaps outer all set 0 - - bindsym Return mode "default" - bindsym Escape mode "default" -} diff --git a/.config/termite/config b/.config/termite/config index 1ac7014..9336c25 100644 --- a/.config/termite/config +++ b/.config/termite/config @@ -1,4 +1,4 @@ -x[options] +[options] #allow_bold = true #audible_bell = false #clickable_url = true diff --git a/.emacs b/.emacs index 8b76705..207ceb9 100644 --- a/.emacs +++ b/.emacs @@ -1,4 +1,24 @@ ;;; package --- summary +;; auctex -- installed -- Integrated environment for *TeX* +;; dummyparents -- installed -- paranthesis auto-pairing and wrapping +;; elpy -- installed -- Emacs Python Development Environment +;; flycheck -- installed -- On-the-fly syntax checking +;; forest-blue-theme -- installed -- Emacs theme with a dark background +;; google-this -- installed -- A set of functions and bindings to google under point +;; nyan-mode -- installed -- Nyan Cat shows position in current buffer in mode-line. +;; rainbow-mode -- installed -- Colorize color names in buffers +;; company -- dependency -- Modular text completion framework +;; dash -- dependency -- A modern list library for Emacs +;; epl -- dependency -- Emacs Package Library +;; find-file-in-project -- dependency -- Find file/directory for review Diff/Patch/Commit efficiently everywhere +;; highlight-indentation -- dependency -- Minor modes for highlight indentation +;; ivy -- dependency -- Incremental Vertical completYon +;; pkg-info -- dependency -- Information about packages +;; popup -- dependency -- Visual Popup User Interface +;; pyvenv -- dependency -- Python virtual environment interface +;; s -- dependency -- The long lost Emacs string manipulation library. +;; yasnippet -- dependency -- Yet another snippet extension for Emacs. + ;;; Code: (package-initialize) @@ -7,15 +27,15 @@ (require 'package) (add-to-list 'package-archives - ;; '("melpa" . "http://stable.melpa.org/packages/") ; many packages won't show if using stable + ; '("melpa" . "http://stable.melpa.org/packages/") ; many packages won't show if using stable '("melpa" . "http://melpa.milkbox.net/packages/") '("elpy" . "http://jorgenschaefer.github.io/packages/") ) ) -;;; Commentary: -;; Functions -;; Copy and Paste -;; https://github.com/Boruch-Baum +;; Global functions + +; Copy and Paste +; https://github.com/Boruch-Baum (defun my-copy-to-xclipboard(arg) (interactive "P") (cond @@ -52,29 +72,6 @@ ((= 16 opt) "s")))) (insert (shell-command-to-string (concat "xsel -o -" opt)))))) -;; elpy-mode functions -(defun pyexec () - "Execute the python program in an external terminal." - (interactive) - (when buffer-file-name - (shell-command (concat "termite --hold -e \"python " buffer-file-name "\"")) - ) - ) -;; CC-mode functions -(defun cppexec () - "Execute the python program in an external terminal." - (interactive) - (when buffer-file-name - (shell-command (concat "termite -e \"g++ " buffer-file-name "\"")) - (shell-command (concat "termite --hold -e \"./a.out\"")) - ) - ) -;; Latex-mode functions -(fset 'next-section - (lambda (&optional arg) "Keyboard macro." (interactive "p") (kmacro-exec-ring-item (quote ("\\sec " 0 "%d")) arg))) -(fset 'prev-section - (lambda (&optional arg) "Keyboard macro." (interactive "p") (kmacro-exec-ring-item (quote ("\\sec " 0 "%d")) arg))) - ;; Theme (custom-set-variables ;; custom-set-variables was added by Custom. @@ -109,39 +106,50 @@ '(highlight-indentation-face ((t (:background "green"))))) -;; Startup -;; Load Theme +;; Functions: +; Load Theme (load-theme 'forest-blue t) -;; Python +; Python (elpy-enable) (defalias 'workon 'pyvenv-workon) (workon "~/.virtualenv/default") -(eval-after-load 'elpy - '(define-key elpy-mode-map (kbd "C-c C-c") 'pyexec) + +(defun pyexec () + "Execute the python program in an external terminal." + (interactive) + (when buffer-file-name + (shell-command (concat "termite --hold -e \"python " buffer-file-name "\"")) + ) ) -;; C++ -(eval-after-load 'cc-mode - '(define-key c++-mode-map (kbd "C-c C-c") 'cppexec)) +; C++ +(defun cppexec () + "Execute the cpp program in an external terminal." + (interactive) + (when buffer-file-name + (shell-command (concat "termite -e \"g++ " buffer-file-name "\"")) + (shell-command (concat "termite --hold -e \"./a.out\"")) + ) + ) -;; LaTeX +; LaTeX (require 'tex) (setq TeX-auto-save t) (setq TeX-parse-self t) (setq-default TeX-master nil) -(eval-after-load 'latex - '(define-key LaTeX-mode-map (kbd "C-c n") 'next-section)) -(eval-after-load 'latex - '(define-key LaTeX-mode-map (kbd "C-c p") 'prev-section)) -;; Yasnippet +(fset 'next-section + (lambda (&optional arg) "Next section." (interactive "p") (kmacro-exec-ring-item (quote ("\\sec " 0 "%d")) arg))) +(fset 'prev-section + (lambda (&optional arg) "Previous section" (interactive "p") (kmacro-exec-ring-item (quote ("\\sec " 0 "%d")) arg))) + +; Yasnippet (setq yas-snippet-dirs '("~/.emacs.d/snippets" ;; personal snippets/copied ones ) ) - ;; Modes (show-paren-mode 1) (menu-bar-mode -1) @@ -157,6 +165,17 @@ (global-set-key (kbd "C-c M-w") 'my-copy-to-xclipboard) (global-set-key (kbd "C-c M-y") 'my-paste-from-xclipboard) (global-set-key (kbd "C-x g") 'google-this-mode-submap) +(eval-after-load 'latex + '(define-key LaTeX-mode-map (kbd "C-c n") 'next-section)) +(eval-after-load 'latex + '(define-key LaTeX-mode-map (kbd "C-c p") 'prev-section)) +(eval-after-load 'cc-mode + '(define-key c++-mode-map (kbd "C-c C-c") 'cppexec)) +(eval-after-load 'elpy + '(define-key elpy-mode-map (kbd "C-c C-c") 'pyexec) + ) + +;;; Commentary: (provide '.emacs) ;;; .emacs ends here diff --git a/.gitignore b/.gitignore index 381de5b..d3a3935 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ *~ \#*\# *.log -.#\config \ No newline at end of file