from .i3 to .config/i3 / Add megasync / debug binaries in path

This commit is contained in:
Thomas Dehaeze 2019-03-05 22:08:13 +01:00
parent a30a32a57b
commit c5b2e3fb3b

View File

@ -1,7 +1,7 @@
#+TITLE: I3 Configuration
#+PROPERTY: header-args:conf+ :comments both
#+PROPERTY: header-args:conf+ :mkdirp yes
#+PROPERTY: header-args:conf+ :tangle ~/.i3/config
#+PROPERTY: header-args:conf+ :tangle ~/.config/i3/config
* Mod Key
#+BEGIN_SRC conf
@ -49,55 +49,54 @@ bindsym XF86LaunchB fullscreen toggle
* Start Applications
#+begin_src conf
# TODO
# Start program launcher
bindsym $mod+d exec --no-startup-id rofi -show run
# Windows Switch
bindsym $mod+w exec --no-startup-id rofi -show window
# CheatSheets
bindsym $mod+Shift+c exec --no-startup-id rofi -show CheatSheets -modi CheatSheets:~/scripts/rofi_cheatsheets.sh
# Program Launcher with Icons
# bindsym $mod+Shift+d exec --no-startup-id rofi -show drun -show-icons
# Launch categorized menu
bindsym $mod+z exec --no-startup-id rofimenu
# Bookmarks
bindsym $mod+Shift+f exec --no-startup-id buku_run
# Passwords
bindsym $mod+Shift+p exec --no-startup-id rofi-pass
# Start Terminal
bindsym $mod+Return exec termite
# Tmux Terminal
bindsym $mod+Shift+Return exec termite -e 'tmux'
# Configuration application
bindsym $mod+Ctrl+b exec termite -e 'bmenu'
# Start Command line Calendar
bindsym $mod+c exec termite -e "khal interactive"
# Start GUI Calendar (Google calendar)
# bindsym $mod+Shift+c exec qutebrowser https://calendar.google.com/
# File Manager
bindsym $mod+o exec urxvt -e "ranger"
# GUI File Manager
# bindsym $mod+Shift+o exec pcmanfm
# Mail: Neomutt
bindsym $mod+m exec termite -e "tmuxinator start neomutt"
# Music Manager: NCMPCPP
# bindsym $mod+Shift+p exec termite -e "ncmpcpp"
# Browser
bindsym $mod+i exec qutebrowser
# Sound Manager
bindsym $mod+Ctrl+m exec pavucontrol
# Kill one application
bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
# Kill and restart Notification Manager
bindsym $mod+Shift+n --release exec "killall dunst; exec notify-send 'restart dunst'"
# Start program launcher
bindsym $mod+d exec --no-startup-id rofi -show run
# Windows Switch
bindsym $mod+w exec --no-startup-id rofi -show window
# CheatSheets
bindsym $mod+Shift+c exec --no-startup-id rofi -show CheatSheets -modi CheatSheets:~/scripts/rofi_cheatsheets.sh
# Program Launcher with Icons
# bindsym $mod+Shift+d exec --no-startup-id rofi -show drun -show-icons
# Launch categorized menu
bindsym $mod+z exec --no-startup-id rofimenu
# Bookmarks
bindsym $mod+Shift+F exec --no-startup-id $HOME/bin/buku_run
# Passwords
bindsym $mod+Shift+P exec --no-startup-id pass clip
# Start Terminal
bindsym $mod+Return exec termite
# Tmux Terminal
bindsym $mod+Shift+Return exec termite -e 'tmux'
# Configuration application
bindsym $mod+Ctrl+B exec termite -e 'bmenu'
# Start Command line Calendar
bindsym $mod+c exec termite -e "khal interactive"
# Start GUI Calendar (Google calendar)
# bindsym $mod+Shift+c exec qutebrowser https://calendar.google.com/
# File Manager
bindsym $mod+o exec urxvt -e "ranger"
# GUI File Manager
# bindsym $mod+Shift+o exec pcmanfm
# Mail: Neomutt
bindsym $mod+m exec termite -e "tmuxinator start neomutt"
# Music Manager: NCMPCPP
# bindsym $mod+Shift+p exec termite -e "ncmpcpp"
# Browser
bindsym $mod+i exec qutebrowser
# Sound Manager
bindsym $mod+Ctrl+m exec pavucontrol
# Kill one application
bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
# Kill and restart Notification Manager
bindsym $mod+Shift+n --release exec "killall dunst; exec notify-send 'restart dunst'"
# Keyboard Deadkey
# TODO - Better keybindings
bindsym $mod+Ctrl+d exec --no-startup-id setxkbmap -layout us -variant intl -option caps:escape
bindsym $mod+Shift+d exec --no-startup-id setxkbmap -layout us -option caps:escape
# Toggle poylbar
bindsym $mod+t exec --no-startup-id ~/.config/polybar/bin/toggle.sh bottom
bindsym $mod+Shift+t exec --no-startup-id ~/.config/polybar/bin/toggle.sh top
# Keyboard Deadkey
# TODO - Better keybindings
bindsym $mod+Ctrl+d exec --no-startup-id setxkbmap -layout us -variant intl -option caps:escape
bindsym $mod+Shift+d exec --no-startup-id setxkbmap -layout us -option caps:escape
# Toggle poylbar
bindsym $mod+t exec --no-startup-id ~/.config/polybar/bin/toggle.sh bottom
bindsym $mod+Shift+t exec --no-startup-id ~/.config/polybar/bin/toggle.sh top
#+end_src
* Vim Anywhere
@ -112,7 +111,7 @@ bindsym $mod+Print --release exec --no-startup-id i3-scrot -w
bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s
#+end_src
* change focus
* Change focus
#+begin_src conf
bindsym $mod+h focus left
bindsym $mod+j focus down
@ -201,71 +200,82 @@ bindsym $mod+BackSpace scratchpad show
#+end_src
* Custom Cratchpad for Quick Access
** Weechat
#+begin_src conf
for_window [instance="scratch-weechat"] scratchpad show;
exec termite --name="scratch-weechat" --exec="weechat"
for_window [instance="scratch-weechat"] floating enable;
for_window [instance="scratch-weechat"] move position 240 px 125 px;
for_window [instance="scratch-weechat"] resize set 1200 px 800 px;
for_window [instance="scratch-weechat"] move scratchpad;
#+end_src
** Music with ncmpcpp
#+begin_src conf
for_window [instance="scratch-ncmpcpp"] scratchpad show;
exec termite --name="scratch-ncmpcpp" --exec="ncmpcpp"
for_window [instance="scratch-ncmpcpp"] floating enable;
for_window [instance="scratch-ncmpcpp"] move position 440 px 225 px;
for_window [instance="scratch-ncmpcpp"] resize set 800 px 600 px;
for_window [instance="scratch-ncmpcpp"] move scratchpad;
for_window [instance="scratch-ncmpcpp"] scratchpad show;
exec termite --name="scratch-ncmpcpp" --exec="ncmpcpp"
for_window [instance="scratch-ncmpcpp"] floating enable;
for_window [instance="scratch-ncmpcpp"] move position 440 px 225 px;
for_window [instance="scratch-ncmpcpp"] resize set 800 px 600 px;
for_window [instance="scratch-ncmpcpp"] move scratchpad;
#+end_src
** RSS Feed with NewsBoat
#+begin_src conf
for_window [instance="scratch-newsboat"] scratchpad show;
exec termite --name="scratch-newsboat" --exec="tmuxinator start newsboat"
for_window [instance="scratch-newsboat"] floating enable;
for_window [instance="scratch-newsboat"] move position 240 px 125 px;
for_window [instance="scratch-newsboat"] resize set 1200 px 800 px;
for_window [instance="scratch-newsboat"] move scratchpad;
for_window [instance="scratch-newsboat"] scratchpad show;
exec termite --name="scratch-newsboat" --exec="tmuxinator start newsboat"
for_window [instance="scratch-newsboat"] floating enable;
for_window [instance="scratch-newsboat"] move position 240 px 125 px;
for_window [instance="scratch-newsboat"] resize set 1200 px 800 px;
for_window [instance="scratch-newsboat"] move scratchpad;
#+end_src
** Calculator with insect
#+begin_src conf
for_window [instance="scratch-insect"] scratchpad show;
exec termite --name="scratch-insect" --exec="insect"
for_window [instance="scratch-insect"] floating enable;
for_window [instance="scratch-insect"] move position 440 px 225 px;
for_window [instance="scratch-insect"] resize set 800 px 600 px;
for_window [instance="scratch-insect"] move scratchpad;
for_window [instance="scratch-insect"] scratchpad show;
exec termite --name="scratch-insect" --exec="insect"
for_window [instance="scratch-insect"] floating enable;
for_window [instance="scratch-insect"] move position 440 px 225 px;
for_window [instance="scratch-insect"] resize set 800 px 600 px;
for_window [instance="scratch-insect"] move scratchpad;
#+end_src
** Mails with Neomutt
#+begin_src conf
for_window [instance="scratch-neomutt"] scratchpad show;
exec termite --name="scratch-neomutt" --exec="neomutt"
for_window [instance="scratch-neomutt"] floating enable;
for_window [instance="scratch-neomutt"] move position 240 px 125 px;
for_window [instance="scratch-neomutt"] resize set 1200 px 800 px;
for_window [instance="scratch-neomutt"] move scratchpad;
for_window [instance="scratch-neomutt"] scratchpad show;
exec termite --name="scratch-neomutt" --exec="neomutt"
for_window [instance="scratch-neomutt"] floating enable;
for_window [instance="scratch-neomutt"] move position 240 px 125 px;
for_window [instance="scratch-neomutt"] resize set 1200 px 800 px;
for_window [instance="scratch-neomutt"] move scratchpad;
#+end_src
** Ranger
#+begin_src conf
for_window [instance="scratch-ranger"] scratchpad show;
exec urxvt -name scratch-ranger -e ranger
for_window [instance="scratch-ranger"] floating enable;
for_window [instance="scratch-ranger"] move position 240 px 125 px;
for_window [instance="scratch-ranger"] resize set 1200 px 800 px;
for_window [instance="scratch-ranger"] move scratchpad;
for_window [instance="scratch-ranger"] scratchpad show;
exec urxvt -name scratch-ranger -e ranger
for_window [instance="scratch-ranger"] floating enable;
for_window [instance="scratch-ranger"] move position 240 px 125 px;
for_window [instance="scratch-ranger"] resize set 1200 px 800 px;
for_window [instance="scratch-ranger"] move scratchpad;
#+end_src
** Terminal
#+begin_src conf
for_window [instance="scratch-termite"] scratchpad show;
exec termite --name="scratch-termite"
for_window [instance="scratch-termite"] floating enable;
for_window [instance="scratch-termite"] move position 440 px 225 px;
for_window [instance="scratch-termite"] resize set 800 px 600 px;
for_window [instance="scratch-termite"] move scratchpad;
for_window [instance="scratch-termite"] scratchpad show;
exec termite --name="scratch-termite"
for_window [instance="scratch-termite"] floating enable;
for_window [instance="scratch-termite"] move position 440 px 225 px;
for_window [instance="scratch-termite"] resize set 800 px 600 px;
for_window [instance="scratch-termite"] move scratchpad;
#+end_src
** TODO Stratchpad Mode - Add scripts that is there is no windows with that name runs the windows and then displays it
#+begin_src conf
bindsym $mod+s mode "$mode_stratchpad"
set $mode_stratchpad (m)ails (p)layer (c)alc (s)hell (n)ews (r)anger
set $mode_stratchpad (w)eechat (m)ails (p)layer (c)alc (s)hell (n)ews (r)anger
mode "$mode_stratchpad" {
bindsym w [instance="scratch-weechat"] scratchpad show; mode "default"
bindsym p [instance="scratch-ncmpcpp"] scratchpad show; mode "default"
bindsym n [instance="scratch-newsboat"] scratchpad show; mode "default"
bindsym s [instance="scratch-termite"] scratchpad show; mode "default"
@ -283,71 +293,68 @@ mode "$mode_stratchpad" {
To display names or symbols instead of plain workspace numbers you can use something like: =set $ws1 1:mail= and =set $ws2 2:=.
#+begin_src conf
set $ws1 1:
set $ws2 2:
set $ws3 3:
set $ws4 4:
set $ws5 5:
set $ws6 6:
set $ws7 7:
set $ws8 8:
set $ws1 1:
set $ws2 2:
set $ws3 3:
set $ws4 4:
set $ws5 5:
set $ws6 6:
set $ws7 7:
set $ws8 8:
#+end_src
* Switch to workspace
#+begin_src conf
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
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
#+end_src
* Navigate Workspace
** Workspace back and forth (with/without active container)
#+begin_src conf
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
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
#+end_src
** Move to prev/next workspace
#+begin_src conf
bindsym $mod+n workspace next
bindsym $mod+p workspace prev
bindsym $mod+n workspace next
bindsym $mod+p workspace prev
#+end_src
* Move focused container to workspace
#+begin_src conf
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
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
#+end_src
* Move to workspace with focused container
#+begin_src conf
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
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
#+end_src
* Open applications on specific workspaces
#+begin_src conf
# assign [class="qutebrowser"] $ws1
# assign [class="Pcmanfm"] $ws2
# Matlab Figures
assign[title="^Fig"] $ws6
for_window [title="^Fig"] layout tabbed
@ -384,99 +391,70 @@ bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
for_window [class="Yad"] floating enable
#+end_src
* reload the configuration file
#+begin_src conf
# bindsym $mod+Shift+c reload
#+end_src
* restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
* Restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
#+begin_src conf
bindsym $mod+Shift+r restart
#+end_src
* exit i3 (logs you out of your X session)
#+begin_src conf
# 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'"
#+end_src
* Set shut down, restart and locking features
#+begin_src conf
bindsym $mod+0 mode "$mode_system"
# TODO - Power Key, if "ignored" in /etc/systemd/logind.conf
bindcode 124 mode "$mode_system"
bindsym $mod+0 mode "$mode_system"
# TODO - Power Key, if "ignored" in /etc/systemd/logind.conf
bindcode 124 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"
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"
}
# exit system mode: "Enter" or "Escape"
bindsym Return mode "default"
bindsym Escape mode "default"
}
#+end_src
* Command Mode
#+begin_src conf
bindsym $mod+space mode "command"
bindsym $mod+space mode "command"
mode "command" {
# Command line Calendar Client (khal)
bindsym c exec termite -e "khal interactive"; mode "default"
# GUI Calendar (Google Calendar)
bindsym Shift+c exec qutebrowser https://calendar.google.com/; mode "default"
# Ranger
bindsym r exec urxvt -e "ranger"; mode "default"
# pcmanfm: GUI file manager
bindsym Shift+r exec pcmanfm; mode "default"
# Mails with neomutt
bindsym m exec termite -e "tmuxinator start neomutt"; mode "default"
# Mails with GUI
bindsym Shift+m exec qutebrowser https://mail.google.com/ https://mail.ulg.ac.be/ https://ssl.esrf.fr/+CSCO+0h75676763663A2F2F6A6A6A662E726665732E7365++/rc/?_task=mail&_mbox=INBOX; mode "default"
# Music with ncmpcpp
bindsym p exec termite --exec="ncmpcpp"; mode "default"
# Browser with qutebrowser
bindsym i exec qutebrowser; mode "default"
# Browser with firefox
bindsym Shift+i exec firefox; mode "default"
mode "command" {
# Command line Calendar Client (khal)
bindsym c exec termite -e "khal interactive"; mode "default"
# GUI Calendar (Google Calendar)
bindsym Shift+c exec qutebrowser https://calendar.google.com/; mode "default"
# Ranger
bindsym r exec urxvt -e "ranger"; mode "default"
# pcmanfm: GUI file manager
bindsym Shift+r exec pcmanfm; mode "default"
# Mails with neomutt
bindsym m exec termite -e "tmuxinator start neomutt"; mode "default"
# Music with ncmpcpp
bindsym p exec termite --exec="ncmpcpp"; mode "default"
# Browser with qutebrowser
bindsym i exec qutebrowser; mode "default"
# Browser with firefox
bindsym Shift+i exec firefox; mode "default"
# Emacs Client
bindsym e exec emacsclient -create-frame --alternate-editor=""; mode "default"
# Full Emacs - Usefull when installing packages
bindsym Shift+e exec emacs; mode "default"
# exit resize mode: Enter or Escape
bindsym Escape mode "default"
}
#+end_src
* Emacs Mode
#+begin_src conf
bindsym $mod+e mode "emacs"
mode "emacs" {
# Emacs Client
bindsym e exec emacsclient -create-frame --alternate-editor=""; mode "default"
# Full Emacs - Usefull when installing packages
bindsym Shift+e exec emacs; mode "default"
# Bibliography Managmenet with Emacs and Helm-Bibtex
bindsym b exec emacsclient -create-frame --alternate-editor="" --eval '(helm-bibtex)'; mode "default"
# Capture
bindsym c exec emacsclient -create-frame --alternate-editor="" --eval '(org-capture)'; mode "default"
# TODO Mails with Emacs
# bindsym m exec emacsclient -create-frame --alternate-editor="" --eval '(mu4e)'; mode "default"
# exit resize mode: Enter or Escape
bindsym Escape mode "default"
}
# exit resize mode: Enter or Escape
bindsym Escape mode "default"
}
#+end_src
* Resize
#+begin_src conf
bindsym $mod+Shift+y resize shrink width 10 px or 10 ppt
bindsym $mod+Shift+u resize grow height 10 px or 10 ppt
bindsym $mod+Shift+i resize shrink height 10 px or 10 ppt
bindsym $mod+Shift+o resize grow width 10 px or 10 ppt
bindsym $mod+Shift+y resize shrink width 10 px or 10 ppt
bindsym $mod+Shift+u resize grow height 10 px or 10 ppt
bindsym $mod+Shift+i resize shrink height 10 px or 10 ppt
bindsym $mod+Shift+o resize grow width 10 px or 10 ppt
#+end_src
* Autostart Background Applications
@ -515,9 +493,11 @@ exec --no-startup-id redshift
# Emacs Daemon
exec --no-startup-id /usr/bin/emacs --fg-daemon
# Megasync
exec --no-startup-id megasync
# TODO - Start polybar
exec_always --no-startup-id $HOME/.config/polybar/bin/launch.sh
# exec_always --no-startup-id $HOME/.i3/scripts/polybar_wrapper.sh launch
#+end_src
* Old autostart Applications