diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml new file mode 100644 index 0000000..267fe79 --- /dev/null +++ b/.config/alacritty/alacritty.yml @@ -0,0 +1,62 @@ +decorations: none + +font: + normal: + family: JetBrainsMono Nerd Font + style: Regular + + size: 10 + +env: + TERM: xterm-256color + +colors: + primary: + background: '#292d3e' + foreground: '#d0d0d0' + normal: + black: '#292d3e' + red: '#f07178' + green: '#c3e88d' + yellow: '#ffcb6b' + blue: '#82aaff' + magenta: '#c792ea' + cyan: '#89ddff' + white: '#d0d0d0' + bright: + Black: '#434758' + Red: '#ff8b92' + Green: '#ddffa7' + Yellow: '#ffe585' + Blue: '#9cc4ff' + Magenta: '#e1acff' + Cyan: '#a3f7ff' + White: '#ffffff' + +background_opacity: 0.80 + +key_bindings: + - { key: Paste, action: Paste } + - { key: Copy, action: Copy } + - { key: L, mods: Control, action: ClearLogNotice } + - { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" } + - { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp, } + - { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown } + - { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop, } + - { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom } + + # Turn off vi mode + - { key: Space, mods: Shift|Control, mode: ~Search, action: ReceiveChar } + + # (Windows, Linux, and BSD only) + - { key: V, mods: Control|Shift, mode: ~Vi, action: Paste } + - { key: C, mods: Control|Shift, action: Copy } + - { key: F, mods: Control|Shift, mode: ~Search, action: ReceiveChar } + - { key: B, mods: Control|Shift, mode: ~Search, action: ReceiveChar } + - { key: Insert, mods: Shift, action: PasteSelection } + - { key: Key0, mods: Control, action: ResetFontSize } + - { key: Equals, mods: Control, action: IncreaseFontSize } + - { key: Plus, mods: Control, action: IncreaseFontSize } + - { key: NumpadAdd, mods: Control, action: IncreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + - { key: NumpadSubtract, mods: Control, action: DecreaseFontSize } diff --git a/.config/i3/config b/.config/i3/config index 57b0308..b11ae69 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -284,7 +284,7 @@ mode "rofi" { # [[file:../../Desktop.org::*Apps][Apps:1]] # Launch apps # start a terminal at workspace 1 -bindsym $mod+Return exec "i3-msg 'workspace 1 🚀; exec st'" +bindsym $mod+Return exec "i3-msg 'workspace 1 🚀; exec alacritty'" bindsym $mod+p exec "copyq menu" bindsym $mod+Shift+x exec "i3lock -f -i /home/pavel/Pictures/lock-wallpaper-2-1.png" @@ -296,13 +296,13 @@ mode "apps" { bindsym b exec firefox; mode default bindsym v exec vk-messenger; mode default bindsym s exec slack; mode default; - bindsym m exec "st -e ncmpcpp"; mode default + bindsym m exec "alacritty -e ncmpcpp"; mode default bindsym c exec "copyq toggle"; mode default bindsym k exec "keepassxc"; mode default # bindsym e exec mailspring; mode default bindsym a exec "bash /home/pavel/bin/emacs.sh"; mode default - bindsym n exec "st -e newsboat"; mode default - bindsym w exec "st /home/pavel/bin/scripts/run_wego"; mode default + bindsym n exec "alacritty -e newsboat"; mode default + bindsym w exec "alacritty /home/pavel/bin/scripts/run_wego"; mode default # bindsym a exec emacsclient -c; mode default # bindsym Shift+a exec emacs; mode default } @@ -314,6 +314,10 @@ bindsym XF86AudioRaiseVolume exec --no-startup-id "pactl set-sink-volume @DEFAUL bindsym XF86AudioLowerVolume exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ -5%" bindsym XF86AudioMute exec --no-startup-id "pactl set-sink-mute @DEFAULT_SINK@ toggle" +exec --no-startup-id xmodmap -e 'keycode 135 = Super_R' && xset -r 135 +bindsym $mod+F2 exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ -5%" +bindsym $mod+F3 exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ +5%" + # Media player controls bindsym XF86AudioPlay exec mpc toggle bindsym XF86AudioPause exec mpc pause diff --git a/Desktop.org b/Desktop.org index 57b34bc..1fd6e44 100644 --- a/Desktop.org +++ b/Desktop.org @@ -2,7 +2,7 @@ #+TODO: TODO(t) CHECK(s) | OFF(o) #+PROPERTY: header-args :mkdirp yes #+PROPERTY: header-args:conf-space :comments link -#+PROPERTY: header-args:conf-unix :comments link +#+PROPERTY: header-args:conf-unix :comments link #+PROPERTY: header-args:conf-windows :comments link #+PROPERTY: header-args:sh :tangle-mode (identity #o755) :comments link :shebang "#!/bin/sh" #+PROPERTY: header-args:bash :tangle-mode (identity #o755) :comments link :shebang "#!/bin/bash" @@ -270,7 +270,7 @@ First of all, we have to distinguish a scratchpad terminal from a normal one. To Then, it would be cool not to duplicate scratchpads, so the following script first looks for a window with a created classname. If it exists, the script just toggles the scratchpad visibility. Otherwise, a new instance of a window is created. #+begin_src bash :tangle ./bin/scripts/dropdown CLASSNAME="dropdown_tmux" -COMMAND="st -n $CLASSNAME -e tmux new-session -s $CLASSNAME" +COMMAND="alacritty --class $CLASSNAME -e tmux new-session -s $CLASSNAME" pid=$(xdotool search --classname "dropdown_tmux") if [[ ! -z $pid ]]; then i3-msg scratchpad show @@ -441,7 +441,7 @@ I prefer to use a separate mode to launch most of my apps, with some exceptions. #+begin_src conf-space # Launch apps # start a terminal at workspace 1 -bindsym $mod+Return exec "i3-msg 'workspace 1 🚀; exec st'" +bindsym $mod+Return exec "i3-msg 'workspace 1 🚀; exec alacritty'" bindsym $mod+p exec "copyq menu" bindsym $mod+Shift+x exec "i3lock -f -i /home/pavel/Pictures/lock-wallpaper-2-1.png" @@ -453,13 +453,13 @@ mode "apps" { bindsym b exec firefox; mode default bindsym v exec vk-messenger; mode default bindsym s exec slack; mode default; - bindsym m exec "st -e ncmpcpp"; mode default + bindsym m exec "alacritty -e ncmpcpp"; mode default bindsym c exec "copyq toggle"; mode default bindsym k exec "keepassxc"; mode default # bindsym e exec mailspring; mode default bindsym a exec "bash /home/pavel/bin/emacs.sh"; mode default - bindsym n exec "st -e newsboat"; mode default - bindsym w exec "st /home/pavel/bin/scripts/run_wego"; mode default + bindsym n exec "alacritty -e newsboat"; mode default + bindsym w exec "alacritty /home/pavel/bin/scripts/run_wego"; mode default # bindsym a exec emacsclient -c; mode default # bindsym Shift+a exec emacs; mode default } @@ -471,6 +471,10 @@ bindsym XF86AudioRaiseVolume exec --no-startup-id "pactl set-sink-volume @DEFAUL bindsym XF86AudioLowerVolume exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ -5%" bindsym XF86AudioMute exec --no-startup-id "pactl set-sink-mute @DEFAULT_SINK@ toggle" +exec --no-startup-id xmodmap -e 'keycode 135 = Super_R' && xset -r 135 +bindsym $mod+F2 exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ -5%" +bindsym $mod+F3 exec --no-startup-id "pactl set-sink-volume @DEFAULT_SINK@ +5%" + # Media player controls bindsym XF86AudioPlay exec mpc toggle bindsym XF86AudioPause exec mpc pause diff --git a/README.org b/README.org index 9d85d63..492c85b 100644 --- a/README.org +++ b/README.org @@ -1,46 +1,47 @@ * My dotfiles Deployed with [[https://yadm.io/][yadm]] -| Group | Program | Purpose | Status | Documented? | Notes | -|-----------+----------------+--------------------------------+-------------------+-------------+----------------------------------------------------------------------------| -| console | bash | shell | launches fish :) | - | | -| console | [[https://fishshell.com/][fish]] | shell | *active* | - | | -| console | [[https://github.com/starship/starship][starship]] | prompt | *active* | - | | -| console | [[https://st.suckless.org/][st]] | terminal | *active* | - | I compiled it 1.5 years ago and lost the source, so I just copy the binary | -| console | [[https://github.com/tmux/tmux][tmux]] | terminal multiplexer | *active* | - | | -| console | [[https://github.com/ogham/exa][exa]] | ls clone | *active* | - | | -| console | [[https://github.com/moonpyk/dtrx][dtrx]] | archive extractor | *active* | - | | -| console | [[https://github.com/jhspetersson/fselect][fselect]] | SQL-like find | *active* | - | | -| console | [[https://github.com/sharkdp/bat][bat]] | cat clone | *active* | - | | -| console | [[https://vifm.info/][vifm]] | file manager with vim bindings | archive | - | | -| mail | [[https://notmuchmail.org/][notmuch]] | mail indexer | *active* | [[https://sqrtminusone.xyz/posts/2021-02-27-gmail/][post]] | | -| mail | [[https://github.com/gauteh/lieer][lieer]] | gmail API client | *active* | [[https://sqrtminusone.xyz/posts/2021-02-27-gmail/][post]] | credentials are encrypted | -| mail | [[https://marlam.de/msmtp/][msmtp]] | SMTP client | *active* | - | encrypted | -| editor | [[https://www.gnu.org/software/emacs/][emacs]] | everything | *active* | - | GitHub renders .org files without labels and =tangle: no= | -| editor | [[https://neovim.io/][neovim]] | text edtior | archive | - | | -| documents | [[https://mg.readthedocs.io/latexmk.html][latexmk]] | LaTeX build tool | *active* | - | | -| documents | [[https://pwmt.org/projects/zathura/][zathura]] | pdf viewer | *active* | - | | -| desktop | [[https://github.com/dunst-project/dunst][dunst]] | notification manager | *active* | [[file:Desktop.org::*dunst][Desktop.org]] | | -| desktop | [[https://i3wm.org/][i3wm]] | tiling WM | *active* | [[file:Desktop.org::*i3wm][Desktop.org]] | | -| desktop | [[https://github.com/jordansissel/keynav][keynav]] | control mouse with keyboard | *active* | [[file:Desktop.org::*keynav][Desktop.org]] | | -| desktop | [[https://github.com/polybar/polybar][polybar]] | status bar | *active* | [[file:Desktop.org::*Polybar][Desktop.org]] | | -| desktop | [[https://github.com/davatorium/rofi][rofi]] | generic menu | *active* | [[file:Desktop.org::*Rofi][Desktop.org]] | | -| desktop | [[https://github.com/flameshot-org/flameshot][flameshot]] | screenshot | *active* | [[file:Desktop.org::Flameshot][Desktop.org]] | | -| desktop | [[https://github.com/yshui/picom][picom]] | X11 compositor | *active* | [[file:Desktop.org::*Picom][Desktop.org]] | | -| desktop | [[https://github.com/vivien/i3blocks][i3blocks]] | status bar | archive | - | | -| internet | [[https://github.com/tridactyl/tridactyl][tridactyl]] | vim bindings for Firefox | *active* | - | templated with yadm | -| internet | [[https://newsboat.org/][newsboat]] | terminal RSS reader | *active* | - | urls are encrypted | -| internet | [[https://qutebrowser.org/][qutebrowser]] | browser with vim bindings | archive | - | | -| internet | [[https://github.com/jarun/buku][buku]] | bookmarks manager | archive | - | | -| internet | [[https://tabliss.io/][tabliss]] | new tab page | *active* | - | runned as server to work with tridactyl | -| audio | [[https://www.musicpd.org/][mpd]] | music player daemon | *active* | - | | -| audio | [[https://github.com/ncmpcpp/ncmpcpp][ncmpcpp]] | MPD frontend | *active* | - | | -| audio | [[https://github.com/graysky2/pulseaudio-ctl][pulseaudio-ctl]] | PulseAudio controller | archive | - | | -| dev | [[https://github.com/prompt-toolkit/ptpython][ptpython]] | Python REPL | archive | - | | -| dev | [[https://github.com/inducer/pudb][pudb]] | Python Debugger | archive | - | | -| misc | [[https://yadm.io][yadm]] | dotfiles manager | *active* | - | | -| misc | [[https://github.com/risacher/sunwait][sunwait]] | sunrise calculator | *active* | - | | -| misc | [[https://github.com/vergoh/vnstat][vnstat]] | traffic stats | *active* | - | | +| Group | Program | Purpose | Status | Documented? | Notes | +|-----------+----------------+--------------------------------+-------------------+-------------+-----------------------------------------------------------| +| console | bash | shell | launches fish :) | - | | +| console | [[https://fishshell.com/][fish]] | shell | *active* | - | | +| console | [[https://github.com/starship/starship][starship]] | prompt | *active* | - | | +| console | [[https://github.com/tmux/tmux][tmux]] | terminal multiplexer | *active* | - | | +| console | [[https://github.com/ogham/exa][exa]] | ls clone | *active* | - | | +| console | [[https://github.com/moonpyk/dtrx][dtrx]] | archive extractor | *active* | - | | +| console | [[https://github.com/jhspetersson/fselect][fselect]] | SQL-like find | *active* | - | | +| console | [[https://github.com/sharkdp/bat][bat]] | cat clone | *active* | - | | +| console | [[https://github.com/alacritty/alacritty][alacritty]] | terminal emulator | *active* | - | | +| console | [[https://vifm.info/][vifm]] | file manager with vim bindings | archive | - | | +| mail | [[https://notmuchmail.org/][notmuch]] | mail indexer | *active* | [[https://sqrtminusone.xyz/posts/2021-02-27-gmail/][post]] | | +| mail | [[https://github.com/gauteh/lieer][lieer]] | gmail API client | *active* | [[https://sqrtminusone.xyz/posts/2021-02-27-gmail/][post]] | credentials are encrypted | +| mail | [[https://marlam.de/msmtp/][msmtp]] | SMTP client | *active* | - | encrypted | +| editor | [[https://www.gnu.org/software/emacs/][emacs]] | everything | *active* | - | GitHub renders .org files without labels and =tangle: no= | +| editor | [[https://www.vim.org/][vim]] | text edtior | *active* | - | A minimal config to have a lightweight terminal $EDITOR | +| editor | [[https://neovim.io/][neovim]] | text edtior | archive | - | | +| documents | [[https://mg.readthedocs.io/latexmk.html][latexmk]] | LaTeX build tool | *active* | - | | +| documents | [[https://pwmt.org/projects/zathura/][zathura]] | pdf viewer | *active* | - | | +| desktop | [[https://github.com/dunst-project/dunst][dunst]] | notification manager | *active* | [[file:Desktop.org::*dunst][Desktop.org]] | | +| desktop | [[https://i3wm.org/][i3wm]] | tiling WM | *active* | [[file:Desktop.org::*i3wm][Desktop.org]] | | +| desktop | [[https://github.com/jordansissel/keynav][keynav]] | control mouse with keyboard | *active* | [[file:Desktop.org::*keynav][Desktop.org]] | | +| desktop | [[https://github.com/polybar/polybar][polybar]] | status bar | *active* | [[file:Desktop.org::*Polybar][Desktop.org]] | | +| desktop | [[https://github.com/davatorium/rofi][rofi]] | generic menu | *active* | [[file:Desktop.org::*Rofi][Desktop.org]] | | +| desktop | [[https://github.com/flameshot-org/flameshot][flameshot]] | screenshot | *active* | [[file:Desktop.org::Flameshot][Desktop.org]] | | +| desktop | [[https://github.com/yshui/picom][picom]] | X11 compositor | *active* | [[file:Desktop.org::*Picom][Desktop.org]] | | +| desktop | [[https://github.com/vivien/i3blocks][i3blocks]] | status bar | archive | - | | +| internet | [[https://github.com/tridactyl/tridactyl][tridactyl]] | vim bindings for Firefox | *active* | - | templated with yadm | +| internet | [[https://newsboat.org/][newsboat]] | terminal RSS reader | *active* | - | urls are encrypted | +| internet | [[https://qutebrowser.org/][qutebrowser]] | browser with vim bindings | archive | - | | +| internet | [[https://github.com/jarun/buku][buku]] | bookmarks manager | archive | - | | +| internet | [[https://tabliss.io/][tabliss]] | new tab page | *active* | - | runned as server to work with tridactyl | +| audio | [[https://www.musicpd.org/][mpd]] | music player daemon | *active* | - | | +| audio | [[https://github.com/ncmpcpp/ncmpcpp][ncmpcpp]] | MPD frontend | *active* | - | | +| audio | [[https://github.com/graysky2/pulseaudio-ctl][pulseaudio-ctl]] | PulseAudio controller | archive | - | | +| dev | [[https://github.com/prompt-toolkit/ptpython][ptpython]] | Python REPL | archive | - | | +| dev | [[https://github.com/inducer/pudb][pudb]] | Python Debugger | archive | - | | +| misc | [[https://yadm.io][yadm]] | dotfiles manager | *active* | - | | +| misc | [[https://github.com/risacher/sunwait][sunwait]] | sunrise calculator | *active* | - | | +| misc | [[https://github.com/vergoh/vnstat][vnstat]] | traffic stats | *active* | - | | * Misc diff --git a/bin/scripts/dropdown b/bin/scripts/dropdown index 7fac285..0b94e84 100755 --- a/bin/scripts/dropdown +++ b/bin/scripts/dropdown @@ -1,7 +1,7 @@ #!/bin/bash # [[file:../../Desktop.org::*Launch script][Launch script:1]] CLASSNAME="dropdown_tmux" -COMMAND="st -n $CLASSNAME -e tmux new-session -s $CLASSNAME" +COMMAND="alacritty --class $CLASSNAME -e tmux new-session -s $CLASSNAME" pid=$(xdotool search --classname "dropdown_tmux") if [[ ! -z $pid ]]; then i3-msg scratchpad show