50 files changed,
1575 insertions(+),
976 deletions(-)
Author:
Smirnov Olexandr
ss2316544@gmail.com
Committed at:
2020-12-05 23:27:37 +0200
Parent:
0d2b7d6
jump to
M
README.md
··· 1 -# Dotfiles 2 -__walpappers: [Dropbox](https://www.dropbox.com/s/yx7tsplowtyih7f/walpapper.zip?dl=0) [Google Drive](https://drive.google.com/file/d/1PX76sgLygXfo9qhsdN3cCsFuFuNKpM1y/view?usp=sharing)__ 1 +<h1 align="center">~ dotfiles ~</h1> 2 + 3 +I use **rcm** for managment dotfiles 3 4 4 5 **Preparing for installation** 5 6 ~~~bash 6 7 git clone https://github.com/Smirnov-O/dotfiles 7 -make install 8 8 9 -sudo pacman -S i3-wm bspwm polybar dunst rofi picom feh nitrogen redshift task \ 10 -kitty ranger htop bash zsh git vim neofetch scrot clipboard yay bash zsh python-tldextract \ 9 +sudo pacman -S dunst rofi picom nitrogen redshift task kitty ranger htop zsh git neovim neofetch scrot yay zsh \ 11 10 ttf-font-awesome ttf-jetbrains-mono ttf-hack 12 11 yay -S ttf-weather-icons 13 12 ~~~ ··· 15 14 ### Packages 16 15 | Name | Description | 17 16 | ------------------------------------------------------------------------ | ----------------- | 18 -| `i3-wm`, `qtile` | Window Manager | 19 -| `polybar` | Panel | 20 17 | `dunst` | Notify manager | 21 18 | `rofi` | Program loncher | 22 19 | `picom` | Compositor | 23 20 | `qutebrowser` | Browser | 24 -| `feh`, `nitrogen` | Setting wallpaper | 21 +| `nitrogen` | Setting wallpaper | 25 22 | `kitty` | Terminal | 26 23 | `ranger` | File manager | 27 24 | `htop` | System motitor | 28 25 | `yay` | AUR helper | 29 26 | `redshift` | Night light | 30 -| `zsh`, `bash` | Shell | 27 +| `zsh` | Shell | 31 28 | `task` | Task manager | 32 -| `ttf-font-awesome`, `ttf-jetbrains-mono`, `ttf-weather-icons` `ttf-hack` | Font | 29 +| `ttf-font-awesome` `ttf-jetbrains-mono` `ttf-weather-icons` `ttf-hack` | Font | 33 30 | `arc-gtk-theme` | GTK theme | 34 31 | `papirus-icon-theme` | Icon theme | 35 32 | `scrot` | Screenshot tool |
M
config/berry/README.md
··· 1 1 # [Berry](https://berrywm.org) 2 2 3 3  4 +------------------------- 4 5 5 ---- 6 +Install `sxhkd` 7 +~~~bash 8 +sudo pacman -S sxhkd 9 +~~~ 10 + 11 +Install `berry` from source 12 +~~~bash 13 +sudo pacman -S libx11 libxft libxinerama 14 +git clone https://github.com/JLErvin/berry 15 +cd berry 16 +make && sudo make install 17 +~~~ 18 + 19 +Add berry in lightdm 20 +~~~bash 21 +sudo cat <<EOF > /usr/share/xsessions/berry.desktop 22 +[Desktop Entry] 23 +Encoding=UTF-8 24 +Name=berry 25 +Comment=berry - a small window manager 26 +Exec=berry 27 +Type=XSession 28 +EOF 29 +~~~ 6 30 7 31 ### Autostart 8 32 ~~~bash 33 +setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" 9 34 sxhkd -c ~/.config/berry/sxhkdrc & 10 -picom -b & 11 35 ~/.config/berry/polybar/bar.sh & 12 36 nitrogen --restore & 13 -setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" 37 +picom -b & 14 38 ~~~ 15 39 16 40 ### Keybindings
M
config/berry/autostart
··· 1 1 #!/bin/bash 2 + 3 +# ------ Autostart ------ # 4 +setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" & 5 +/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & 2 6 sxhkd -c ~/.config/berry/sxhkdrc & 3 -picom -b & 4 -/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & 5 -setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" & 6 7 ~/.config/berry/polybar/bar.sh & 7 8 nitrogen --restore & 9 +picom -b & 10 +conky & 8 11 9 -berryc border_width 1 10 -berryc inner_border_width 1 12 + 13 +# ------ Berry ------ # 14 +# Set decoration geometry 15 +berryc border_width 0 16 +berryc inner_border_width 1 11 17 berryc title_height 0 12 -berryc top_gap 0 18 +berryc top_gap 0 13 19 20 +# Set decoration colors 14 21 berryc focus_color 073642 15 22 berryc unfocus_color 002b36 16 23 berryc inner_focus_color 268bd2 17 24 berryc inner_unfocus_color 002b36 18 25 berryc text_focus_color ffffff 19 -berryc text_unfocus_color efefef 26 +berryc text_unfocus_color eeeeee 20 27 28 +# Other options 21 29 berryc smart_place "true" 22 30 berryc draw_text "true" 23 -berryc edge_lock "true" 24 -berryc set_font "Jetbrains Mono" 31 +berryc edge_lock "false" 32 +berryc set_font "Dina-9"
D
config/fish/config.fish
··· 1 -#source ~/.env 2 -set PATH $PATH ~/.local/bin 3 -set fish_greeting 4 - 5 -### VARIABLES ### 6 -export EDITOR="nvim" 7 -export VISUAL="nvim" 8 -export TERM="kitty" 9 - 10 -### ALIASES ### 11 -alias cls='clear' 12 -alias :q='exit' 13 - 14 -alias ..='cd ..' 15 -alias ...='cd ../..' 16 -alias .3='cd ../../..' 17 -alias .4='cd ../../../..' 18 -alias .5='cd ../../../../..' 19 - 20 -alias tobash="chsh -s /bin/bash && echo 'Now log out.'" 21 -alias tozsh="chsh -s /bin/zsh && echo 'Now log out.'" 22 -alias tofish="chsh -s /bin/fish && echo 'Now log out.'"
D
config/fish/functions/fish_prompt.fish
··· 1 -/home/sasha/.config//omf/themes/scyanm/fish_prompt.fish
M
config/htop/htoprc
··· 1 1 # Beware! This file is rewritten by htop when settings are changed in the interface. 2 2 # The parser is also very primitive, and not human-friendly. 3 3 fields=0 48 17 18 38 39 40 2 46 47 49 1 4 -sort_key=46 4 +sort_key=38 5 5 sort_direction=1 6 6 hide_threads=0 7 7 hide_kernel_threads=1
M
config/i3/README.md
··· 1 1 # [i3](https://i3wm.org) 2 2 3 3  4 +---- 4 5 5 ----- 6 +### Install 7 +----------- 8 +~~~bash 9 +sudo pacman -S i3-gaps polybar 10 +~~~ 6 11 7 12 **Mod key:** `super(win)` 8 13 **Font:** `monospace 10`, `JetBrains Mono 10` ··· 10 15 ### Auttostart 11 16 -------------- 12 17 ~~~bash 13 -picom -b 14 18 nmcli radio wifi on; nmcli device wifi connect <wifi_name> password <wifi_pass> name net 15 -redshift-gtk 16 -nitrogen --restore 17 19 setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" 18 20 org.telegram.desktop 21 +nitrogen --restore 22 +redshift-gtk 23 +picom -b 19 24 ~~~ 20 25 21 26 ### Variables ··· 23 28 ~~~i3 24 29 set $terminal kitty 25 30 set $browser qutebwoser 31 +set $filemanager pcmanfm 26 32 ~~~ 27 - 28 33 29 34 ### Keybindings 30 35 ---------------
M
config/i3/config
··· 17 17 18 18 ############ Variables ########### 19 19 set $terminal kitty 20 -set $browser qutebrowser 20 +set $browser firefox 21 +set $filemanager pcmanfm 21 22 22 23 ############ Autostart ############ 23 24 exec --no-startup-id exec picom -b 24 -exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect <wifi_name> password <wifi_password> name net 25 +exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect Pechenka password 24032006 name net 25 26 exec --no-startup-id exec redshift-gtk 26 27 exec --no-startup-id exec nitrogen --restore 27 28 exec --no-startup-id exec setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" ··· 42 43 bindsym $mod+a focus parent 43 44 # Floating window 44 45 bindsym $mod+Shift+space floating toggle 45 -# Fullscreen mode 46 -bindsym $mod+F11 fullscreen toggle 47 46 # Splits 48 47 bindsym $mod+b split h 49 48 bindsym $mod+v split v ··· 55 54 bindsym $mod+Shift+grave move scratchpad 56 55 bindsym $mod+grave scratchpad show, floating disable 57 56 58 - 59 57 ### Launchers 60 58 bindsym $mod+p exec "dmenu_run -h 24 -p Run" 61 59 bindsym $mod+Shift+Return exec "rofi -show drun -drun-display-format '{name}'" ··· 63 61 bindsym $mod+Control+u exec ~/.script/dmenu/dmenu-config-edit.sh 64 62 bindsym $mod+Control+i exec passmenu -h 24 -p Passwords 65 63 bindsym $alt+Tab exec "rofi -show window -show-icons" 64 +bindsym $mod+$alt+t exec $terminal nvim .todo 66 65 67 66 68 67 ### Applications 69 68 bindsym $mod+Return exec $terminal 70 69 bindsym $mod+F2 exec $browser 70 +bindsym $mod+F3 exec gnvim 71 +bindsym $mod+F4 exec $filemanager 71 72 bindsym --release $mod+Shift+Escape exec xkill 72 -bindsym $mod+$alt+t exec $terminal -e "nvim ~/.todo" 73 73 74 74 75 75 ### Sceenshot
M
config/kitty/kitty.conf
··· 1 -#: MOD 2 -#kitty_mod ctrl+shift 3 -clear_all_shortcuts no 1 +# MOD 2 +clear_all_shortcuts yes 4 3 5 4 # Font 6 5 font_family Jetbrains Mono ··· 41 40 mouse_hide_wait 2.5 42 41 url_color #4ecdc4 43 42 url_style curly 44 - 45 43 open_url_modifiers kitty_mod 46 44 open_url_with default 47 45 url_prefixes http https file ftp ··· 66 64 initial_window_height 480 67 65 enabled_layouts * 68 66 69 -window_resize_step_cells 2 70 -window_resize_step_lines 2 71 -window_border_width 1.0 72 -draw_minimal_borders no 73 -window_margin_width 0.0 74 -single_window_margin_width -1000.0 75 -window_padding_width 0.0 76 - 77 -placement_strategy center 78 -active_border_color #073642 79 -inactive_border_color #292f36 80 -bell_border_color #ff5a00 81 -inactive_text_alpha 1.0 82 -hide_window_decorations no 83 -resize_debounce_time 0.1 84 -resize_draw_strategy static 85 -resize_in_steps no 86 - 87 -# Tabs 88 -tab_bar_edge bottom 89 -tab_bar_margin_width 0.0 90 -tab_bar_style powerline 91 -tab_bar_min_tabs 2 92 -tab_switch_strategy previous 93 -tab_fade 0.25 0.5 0.75 1 94 -tab_separator "┇" 95 -tab_title_template "{title}" 96 -tab_bar_background none 97 -active_tab_title_template none 98 - 99 -active_tab_foreground #dfdfdf 100 -active_tab_background #073642 101 -active_tab_font_style bold-italic 102 -inactive_tab_foreground #dfdfdf 103 -inactive_tab_background #292f36 104 -inactive_tab_font_style normal 105 - 106 -# Theming 107 -foreground #dfdfdf 108 -#background_opacity 0.85 109 -background_opacity 1 110 -background_image none 111 -background_image_layout tiled 112 -background_image_linear no 113 -dynamic_background_opacity no 114 -background_tint 0.0 115 -dim_opacity 0.75 116 -selection_foreground #edebd7 117 -selection_background #073642 118 - 119 67 # Keyboard Shortcuts 120 -map ctrl+shift+c copy_to_clipboard 121 -map ctrl+shift+v paste_from_clipboard 122 -map shift+insert paste_from_selection 123 -map kitty_mod+o pass_selection_to_program 124 - 68 +map ctrl+shift+c copy_to_clipboard 69 +map ctrl+shift+v paste_from_clipboard 70 +map shift+insert paste_from_selection 71 +map ctrl+shift+u kitten unicode_input 125 72 map shift+up scroll_line_up 126 73 map shift+down scroll_line_down 127 74 map shift+page_up scroll_page_up ··· 129 76 map shift+home scroll_home 130 77 map shift+end scroll_end 131 78 map ctrl+shift+h show_scrollback 132 -map alt+r start_resizing_window 133 - 134 -map ctrl+shift+l next_tab 135 -map ctrl+shift+h previous_tab 136 -map ctrl+shift+t new_tab 137 -map alt+q close_tab 138 -map ctrl+alt+. set_tab_title 139 -map alt+1 first_window 140 -map alt+2 second_window 141 -map alt+3 third_window 142 -map alt+4 fourth_window 143 -map alt+5 fifth_window 144 -map alt+6 sixth_window 145 -map alt+7 seventh_window 146 -map alt+8 eighth_window 147 -map alt+9 ninth_window 148 -map alt+0 tenth_window 149 - 150 -# Font Size 79 +map ctrl+shift+. set_tab_title 151 80 map alt+equal change_font_size all +2.0 152 81 map alt+minus change_font_size all -2.0 153 82 map alt+ctrl+backspace change_font_size all 0 154 83 155 -# Other 156 -map f11 toggle_fullscreen 157 -map ctrl+shift+f10 toggle_maximized 158 -map ctrl+shift+u kitten unicode_input 159 -map ctrl+shift+f2 edit_config_file 160 84 161 -background #002B36 162 -foreground #d2dae2 163 -selection_background #002731 85 +# Theming 86 +foreground #dfdfdf 87 +background_opacity 0.85 88 +#background_opacity 1 89 +background_image none 90 +background_image_layout tiled 91 +background_image_linear no 92 +dynamic_background_opacity no 93 +background_tint 0.0 94 +dim_opacity 0.75 95 +selection_foreground #edebd7 96 +selection_background #073642 97 +background #262a3b 98 +foreground #ffffff 99 +cursorColor #d2dae2 100 +selection_background #262a3b 164 101 selection_foreground #edebd7 165 102 color0 #002731 166 103 color8 #001e26 ··· 174 111 color12 #708183 175 112 color5 #c61b6e 176 113 color13 #5856b9 177 -color6 #259185 178 -color14 #81908f 114 +color6 #0fbcf9 115 +color14 #4bcffa 179 116 color7 #e9e2cb 180 117 color15 #fcf4dc
M
config/nvim/init.vim
··· 1 1 call plug#begin('~/.vim/plugged') 2 2 Plug 'overcache/NeoSolarized' 3 + Plug 'ericbn/vim-solarized' 3 4 Plug 'ryanoasis/vim-devicons' 4 5 Plug 'itchyny/lightline.vim' 5 6 Plug 'iamcco/markdown-preview.nvim' ··· 16 17 17 18 " Language support 18 19 Plug 'pangloss/vim-javascript', { 'for': 'javascript' } 19 - Plug 'PotatoesMaster/i3-vim-syntax' 20 - Plug 'kovetskiy/sxhkd-vim' 20 + Plug 'pearofducks/ansible-vim', { 'for': 'ansible' } 21 + Plug 'PotatoesMaster/i3-vim-syntax', { 'for': 'i3' } 22 + Plug 'kovetskiy/sxhkd-vim', { 'for': 'sxhkd' } 21 23 Plug 'vim-python/python-syntax', { 'for': 'python' } 22 24 Plug 'mattn/emmet-vim', { 'on': 'Emmet' } 23 25 Plug 'cakebaker/scss-syntax.vim', { 'for': 'scss' } 24 26 Plug 'dag/vim-fish', { 'for': 'fish' } 27 + Plug 'ocaml/vim-ocaml', { 'for': 'ocaml' } 28 + Plug 'plasticboy/vim-markdown', { 'for': 'markdown' } 25 29 Plug 'ap/vim-css-color' 26 30 call plug#end() 27 31 ··· 101 105 inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>" 102 106 """"""""""""""""""""""""""" 103 107 104 -"""""""" Easymotion """"""" 108 +""""""""" Markdown """""""" 109 +let g:vim_markdown_folding_disabled = 1 110 +""""""""""""""""""""""""" 111 + 112 + 113 +"""""" Easymotion """"""""" 105 114 let g:EasyMotion_do_mapping = 0 106 115 let g:EasyMotion_smartcase = 1 107 116 nmap f <Plug>(easymotion-s) ··· 110 119 nmap s <Plug>(easymotion-overwin-f2) 111 120 """"""""""""""""""""""""""" 112 121 113 -"""" MarkDown Previw """""" 114 -let g:mkdp_path_to_chrome = "/usr/bin/qutebrowser" 115 -""""""""""""""""""""""""""" 122 + 116 123 117 124 " ============ 118 125 " == Maping == ··· 144 151 noremap <leader>9 :tabn 9<CR> 145 152 noremap <leader>n :bnext<CR> 146 153 noremap <leader>p :bprev<CR> 154 + 155 +let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum" 156 +let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
A
config/openbox/README.md
··· 1 +# Openbox 2 + 3 +------------------------ 4 + 5 +### Install openbox, panel and applet(s) 6 +~~~bash 7 +sudo pacman -S openbox obconf volumeicon network-manager-applet xfce4-clipman-plugin 8 +yay -S fbxkb 9 +~~~ 10 + 11 +### Hotkeys 12 +| Key | Aсt |
A
config/openbox/autostart
··· 1 +tint2 & 2 +setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" & 3 +/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & 4 +nmcli radio wifi on; nmcli device wifi connect Pechenka password 24032006 name net & 5 +picom -b & 6 +nitrogen --restore & 7 +volumeicon &
A
config/openbox/rc.xml
··· 1 +<?xml version="1.0" encoding="UTF-8"?> 2 +<openbox_config xmlns="http://openbox.org/3.4/rc" xmlns:xi="http://www.w3.org/2001/XInclude"> 3 + <resistance> 4 + <strength>10</strength> 5 + <screen_edge_strength>20</screen_edge_strength> 6 + </resistance> 7 + <focus> 8 + <focusNew>yes</focusNew> 9 + <followMouse>no</followMouse> 10 + <focusLast>yes</focusLast> 11 + <underMouse>no</underMouse> 12 + <focusDelay>200</focusDelay> 13 + <raiseOnFocus>no</raiseOnFocus> 14 + </focus> 15 + <placement> 16 + <policy>Smart</policy> 17 + <center>yes</center> 18 + <monitor>Primary</monitor> 19 + <primaryMonitor>1</primaryMonitor> 20 + </placement> 21 + <theme> 22 + <name>SolArc-Dark</name> 23 + <titleLayout>CIMLSN</titleLayout> 24 + <keepBorder>yes</keepBorder> 25 + <animateIconify>yes</animateIconify> 26 + <font place="ActiveWindow"> 27 + <name>sans</name> 28 + <size>8</size> 29 + <weight>bold</weight> 30 + <slant>normal</slant> 31 + </font> 32 + <font place="InactiveWindow"> 33 + <name>sans</name> 34 + <size>8</size> 35 + <weight>bold</weight> 36 + <slant>normal</slant> 37 + </font> 38 + <font place="MenuHeader"> 39 + <name>Sans</name> 40 + <size>12</size> 41 + <weight>Bold</weight> 42 + <slant>Normal</slant> 43 + </font> 44 + <font place="MenuItem"> 45 + <name>Sans</name> 46 + <size>10</size> 47 + <weight>Normal</weight> 48 + <slant>Normal</slant> 49 + </font> 50 + <font place="ActiveOnScreenDisplay"> 51 + <name>Sans</name> 52 + <size>8</size> 53 + <weight>Bold</weight> 54 + <slant>Normal</slant> 55 + </font> 56 + <font place="InactiveOnScreenDisplay"> 57 + <name>sans</name> 58 + <size>9</size> 59 + <weight>bold</weight> 60 + <slant>normal</slant> 61 + </font> 62 + </theme> 63 + <desktops> 64 + <number>9</number> 65 + <firstdesk>1</firstdesk> 66 + <names> 67 + <name>1</name> 68 + <name>2</name> 69 + <name>3</name> 70 + <name>4</name> 71 + <name>5</name> 72 + <name>6</name> 73 + <name>7</name> 74 + <name>8</name> 75 + <name>9</name> 76 + </names> 77 + <popupTime>875</popupTime> 78 + </desktops> 79 + <resize> 80 + <drawContents>yes</drawContents> 81 + <popupShow>Nonpixel</popupShow> 82 + <popupPosition>Center</popupPosition> 83 + <popupFixedPosition> 84 + <x>10</x> 85 + <y>10</y> 86 + </popupFixedPosition> 87 + </resize> 88 + <margins> 89 + <top>0</top> 90 + <bottom>26</bottom> 91 + <left>0</left> 92 + <right>0</right> 93 + </margins> 94 + <dock> 95 + <position>TopLeft</position> 96 + <floatingX>0</floatingX> 97 + <floatingY>0</floatingY> 98 + <noStrut>no</noStrut> 99 + <stacking>Above</stacking> 100 + <direction>Vertical</direction> 101 + <autoHide>no</autoHide> 102 + <hideDelay>300</hideDelay> 103 + <showDelay>300</showDelay> 104 + <moveButton>Middle</moveButton> 105 + </dock> 106 + <keyboard> 107 + <chainQuitKey>C-g</chainQuitKey> 108 + <keybind key="C-A-Left"> 109 + <action name="GoToDesktop"> 110 + <to>left</to> 111 + <wrap>no</wrap> 112 + </action> 113 + </keybind> 114 + <keybind key="C-A-Right"> 115 + <action name="GoToDesktop"> 116 + <to>right</to> 117 + <wrap>no</wrap> 118 + </action> 119 + </keybind> 120 + <keybind key="C-A-Up"> 121 + <action name="GoToDesktop"> 122 + <to>up</to> 123 + <wrap>no</wrap> 124 + </action> 125 + </keybind> 126 + <keybind key="C-A-Down"> 127 + <action name="GoToDesktop"> 128 + <to>down</to> 129 + <wrap>no</wrap> 130 + </action> 131 + </keybind> 132 + <keybind key="S-A-Left"> 133 + <action name="SendToDesktop"> 134 + <to>left</to> 135 + <wrap>no</wrap> 136 + </action> 137 + </keybind> 138 + <keybind key="S-A-Right"> 139 + <action name="SendToDesktop"> 140 + <to>right</to> 141 + <wrap>no</wrap> 142 + </action> 143 + </keybind> 144 + <keybind key="S-A-Up"> 145 + <action name="SendToDesktop"> 146 + <to>up</to> 147 + <wrap>no</wrap> 148 + </action> 149 + </keybind> 150 + <keybind key="S-A-Down"> 151 + <action name="SendToDesktop"> 152 + <to>down</to> 153 + <wrap>no</wrap> 154 + </action> 155 + </keybind> 156 + <keybind key="W-Right"> 157 + <action name="UnmaximizeFull"/> 158 + <action name="GrowToEdgeEast"/> 159 + </keybind> 160 + <keybind key="W-Left"> 161 + <action name="UnmaximizeFull"/> 162 + <action name="GrowToEdgeWest"/> 163 + </keybind> 164 + <keybind key="W-Down"> 165 + <action name="UnmaximizeFull"/> 166 + <action name="GrowToEdgeSouth"/> 167 + </keybind> 168 + <keybind key="W-Up"> 169 + <action name="UnmaximizeFull"/> 170 + <action name="GrowToEdgeNorth"/> 171 + </keybind> 172 + <!-- Keybindings for switching workspaces --> 173 + <keybind key="W-1"> 174 + <action name="GoToDesktop"> 175 + <to>1</to> 176 + </action> 177 + </keybind> 178 + <keybind key="W-2"> 179 + <action name="GoToDesktop"> 180 + <to>2</to> 181 + </action> 182 + </keybind> 183 + <keybind key="W-3"> 184 + <action name="GoToDesktop"> 185 + <to>3</to> 186 + </action> 187 + </keybind> 188 + <keybind key="W-4"> 189 + <action name="GoToDesktop"> 190 + <to>4</to> 191 + </action> 192 + </keybind> 193 + <keybind key="W-5"> 194 + <action name="GoToDesktop"> 195 + <to>5</to> 196 + </action> 197 + </keybind> 198 + <keybind key="W-6"> 199 + <action name="GoToDesktop"> 200 + <to>6</to> 201 + </action> 202 + </keybind> 203 + <keybind key="W-7"> 204 + <action name="GoToDesktop"> 205 + <to>7</to> 206 + </action> 207 + </keybind> 208 + <keybind key="W-8"> 209 + <action name="GoToDesktop"> 210 + <to>8</to> 211 + </action> 212 + </keybind> 213 + <keybind key="W-9"> 214 + <action name="GoToDesktop"> 215 + <to>9</to> 216 + </action> 217 + </keybind> 218 + <!-- Keybindings for windows --> 219 + <keybind key="W-q"> 220 + <action name="Close"/> 221 + </keybind> 222 + <keybind key="A-F4"> 223 + <action name="Close"/> 224 + </keybind> 225 + <keybind key="A-Down"> 226 + <action name="Iconify"/> 227 + </keybind> 228 + <keybind key="A-Up"> 229 + <action name="ToggleMaximize"/> 230 + </keybind> 231 + <!-- Keybindings for window switching --> 232 + <keybind key="A-Tab"> 233 + <action name="NextWindow"> 234 + <finalactions> 235 + <action name="Focus"/> 236 + <action name="Raise"/> 237 + <action name="Unshade"/> 238 + </finalactions> 239 + </action> 240 + </keybind> 241 + <!-- Keybindings for launching terminal --> 242 + <keybind key="W-Return"> 243 + <action name="Execute"> 244 + <command>kitty</command> 245 + </action> 246 + </keybind> 247 + <!-- Keybindings for running applications --> 248 + <keybind key="W-S-space"> 249 + <action name="ShowMenu"> 250 + <menu>root-menu</menu> 251 + </action> 252 + </keybind> 253 + <!-- Keybindings for important applications --> 254 + <keybind key="W-S-apostrophe"> 255 + <action name="Execute"> 256 + <command>dmenu_run -h 26 -b -p Run</command> 257 + </action> 258 + </keybind> 259 + <keybind key="W-S-Return"> 260 + <action name="Execute"> 261 + <command>i3-dmenu-desktop --dmenu="dmenu -h 26 -b"</command> 262 + </action> 263 + </keybind> 264 + 265 + 266 + <keybind key="W-C-i"> 267 + <action name="Execute"> 268 + <command>passmenu -b -h 26 -p Password</command> 269 + </action> 270 + </keybind> 271 + <keybind key="W-C-u"> 272 + <action name="Execute"> 273 + <command>~/.script/dmenu/dmenu-config-edit.sh -h 26 -b</command> 274 + </action> 275 + </keybind> 276 + <keybind key="W-Escape"> 277 + <action name="Execute"> 278 + <command>~/.script/dmenu/dmenu-power.sh -h 26 -b</command> 279 + </action> 280 + </keybind> 281 + <keybind key="W-F2"> 282 + <action name="Execute"> 283 + <command>firefox</command> 284 + </action> 285 + </keybind> 286 + <keybind key="W-F4"> 287 + <action name="Execute"> 288 + <command>pcmanfm</command> 289 + </action> 290 + </keybind> 291 + <keybind key="S-W-Escape"> 292 + <action name="Execute"> 293 + <command>xkill</command> 294 + </action> 295 + </keybind> 296 + <keybind key="W-l"> 297 + <action name="Execute"> 298 + <command>i3lock</command> 299 + </action> 300 + </keybind> 301 + </keyboard> 302 + <mouse> 303 + <dragThreshold>1</dragThreshold> 304 + <doubleClickTime>500</doubleClickTime> 305 + <screenEdgeWarpTime>400</screenEdgeWarpTime> 306 + <screenEdgeWarpMouse>false</screenEdgeWarpMouse> 307 + <context name="Frame"> 308 + <mousebind button="W-Left" action="Press"> 309 + <action name="Focus"/> 310 + <action name="Raise"/> 311 + </mousebind> 312 + <mousebind button="W-Left" action="Click"> 313 + <action name="Unshade"/> 314 + </mousebind> 315 + <mousebind button="W-Left" action="Drag"> 316 + <action name="Move"/> 317 + </mousebind> 318 + <mousebind button="W-Right" action="Press"> 319 + <action name="Focus"/> 320 + <action name="Raise"/> 321 + <action name="Unshade"/> 322 + </mousebind> 323 + <mousebind button="W-Right" action="Drag"> 324 + <action name="Resize"/> 325 + </mousebind> 326 + <mousebind button="W-Middle" action="Press"> 327 + <action name="Lower"/> 328 + <action name="FocusToBottom"/> 329 + <action name="Unfocus"/> 330 + </mousebind> 331 + <mousebind button="W-Up" action="Click"> 332 + <action name="GoToDesktop"> 333 + <to>previous</to> 334 + </action> 335 + </mousebind> 336 + <mousebind button="W-Down" action="Click"> 337 + <action name="GoToDesktop"> 338 + <to>next</to> 339 + </action> 340 + </mousebind> 341 + <mousebind button="C-W-Up" action="Click"> 342 + <action name="GoToDesktop"> 343 + <to>previous</to> 344 + </action> 345 + </mousebind> 346 + <mousebind button="C-W-Down" action="Click"> 347 + <action name="GoToDesktop"> 348 + <to>next</to> 349 + </action> 350 + </mousebind> 351 + <mousebind button="W-S-Up" action="Click"> 352 + <action name="SendToDesktop"> 353 + <to>previous</to> 354 + </action> 355 + </mousebind> 356 + <mousebind button="W-S-Down" action="Click"> 357 + <action name="SendToDesktop"> 358 + <to>next</to> 359 + </action> 360 + </mousebind> 361 + </context> 362 + <context name="Titlebar"> 363 + <mousebind button="Left" action="Drag"> 364 + <action name="Move"/> 365 + </mousebind> 366 + <mousebind button="Left" action="DoubleClick"> 367 + <action name="ToggleMaximize"/> 368 + </mousebind> 369 + <mousebind button="Up" action="Click"> 370 + <action name="if"> 371 + <shaded>no</shaded> 372 + <then> 373 + <action name="Shade"/> 374 + <action name="FocusToBottom"/> 375 + <action name="Unfocus"/> 376 + <action name="Lower"/> 377 + </then> 378 + </action> 379 + </mousebind> 380 + <mousebind button="Down" action="Click"> 381 + <action name="if"> 382 + <shaded>yes</shaded> 383 + <then> 384 + <action name="Unshade"/> 385 + <action name="Raise"/> 386 + </then> 387 + </action> 388 + </mousebind> 389 + </context> 390 + <context name="Titlebar Top Right Bottom Left TLCorner TRCorner BRCorner BLCorner"> 391 + <mousebind button="Left" action="Press"> 392 + <action name="Focus"/> 393 + <action name="Raise"/> 394 + <action name="Unshade"/> 395 + </mousebind> 396 + <mousebind button="Middle" action="Press"> 397 + <action name="Lower"/> 398 + <action name="FocusToBottom"/> 399 + <action name="Unfocus"/> 400 + </mousebind> 401 + <mousebind button="Right" action="Press"> 402 + <action name="Focus"/> 403 + <action name="Raise"/> 404 + <action name="ShowMenu"> 405 + <menu>client-menu</menu> 406 + </action> 407 + </mousebind> 408 + </context> 409 + <context name="Top"> 410 + <mousebind button="Left" action="Drag"> 411 + <action name="Resize"> 412 + <edge>top</edge> 413 + </action> 414 + </mousebind> 415 + </context> 416 + <context name="Left"> 417 + <mousebind button="Left" action="Drag"> 418 + <action name="Resize"> 419 + <edge>left</edge> 420 + </action> 421 + </mousebind> 422 + </context> 423 + <context name="Right"> 424 + <mousebind button="Left" action="Drag"> 425 + <action name="Resize"> 426 + <edge>right</edge> 427 + </action> 428 + </mousebind> 429 + </context> 430 + <context name="Bottom"> 431 + <mousebind button="Left" action="Drag"> 432 + <action name="Resize"> 433 + <edge>bottom</edge> 434 + </action> 435 + </mousebind> 436 + <mousebind button="Right" action="Press"> 437 + <action name="Focus"/> 438 + <action name="Raise"/> 439 + <action name="ShowMenu"> 440 + <menu>client-menu</menu> 441 + </action> 442 + </mousebind> 443 + </context> 444 + <context name="TRCorner BRCorner TLCorner BLCorner"> 445 + <mousebind button="Left" action="Press"> 446 + <action name="Focus"/> 447 + <action name="Raise"/> 448 + <action name="Unshade"/> 449 + </mousebind> 450 + <mousebind button="Left" action="Drag"> 451 + <action name="Resize"/> 452 + </mousebind> 453 + </context> 454 + <context name="Client"> 455 + <mousebind button="Left" action="Press"> 456 + <action name="Focus"/> 457 + <action name="Raise"/> 458 + </mousebind> 459 + <mousebind button="Middle" action="Press"> 460 + <action name="Focus"/> 461 + <action name="Raise"/> 462 + </mousebind> 463 + <mousebind button="Right" action="Press"> 464 + <action name="Focus"/> 465 + <action name="Raise"/> 466 + </mousebind> 467 + </context> 468 + <context name="Icon"> 469 + <mousebind button="Left" action="Press"> 470 + <action name="Focus"/> 471 + <action name="Raise"/> 472 + <action name="Unshade"/> 473 + <action name="ShowMenu"> 474 + <menu>client-menu</menu> 475 + </action> 476 + </mousebind> 477 + <mousebind button="Right" action="Press"> 478 + <action name="Focus"/> 479 + <action name="Raise"/> 480 + <action name="ShowMenu"> 481 + <menu>client-menu</menu> 482 + </action> 483 + </mousebind> 484 + </context> 485 + <context name="AllDesktops"> 486 + <mousebind button="Left" action="Press"> 487 + <action name="Focus"/> 488 + <action name="Raise"/> 489 + <action name="Unshade"/> 490 + </mousebind> 491 + <mousebind button="Left" action="Click"> 492 + <action name="ToggleOmnipresent"/> 493 + </mousebind> 494 + </context> 495 + <context name="Shade"> 496 + <mousebind button="Left" action="Press"> 497 + <action name="Focus"/> 498 + <action name="Raise"/> 499 + </mousebind> 500 + <mousebind button="Left" action="Click"> 501 + <action name="ToggleShade"/> 502 + </mousebind> 503 + </context> 504 + <context name="Iconify"> 505 + <mousebind button="Left" action="Press"> 506 + <action name="Focus"/> 507 + <action name="Raise"/> 508 + </mousebind> 509 + <mousebind button="Left" action="Click"> 510 + <action name="Iconify"/> 511 + </mousebind> 512 + </context> 513 + <context name="Maximize"> 514 + <mousebind button="Left" action="Press"> 515 + <action name="Focus"/> 516 + <action name="Raise"/> 517 + <action name="Unshade"/> 518 + </mousebind> 519 + <mousebind button="Middle" action="Press"> 520 + <action name="Focus"/> 521 + <action name="Raise"/> 522 + <action name="Unshade"/> 523 + </mousebind> 524 + <mousebind button="Right" action="Press"> 525 + <action name="Focus"/> 526 + <action name="Raise"/> 527 + <action name="Unshade"/> 528 + </mousebind> 529 + <mousebind button="Left" action="Click"> 530 + <action name="ToggleMaximize"/> 531 + </mousebind> 532 + <mousebind button="Middle" action="Click"> 533 + <action name="ToggleMaximize"> 534 + <direction>vertical</direction> 535 + </action> 536 + </mousebind> 537 + <mousebind button="Right" action="Click"> 538 + <action name="ToggleMaximize"> 539 + <direction>horizontal</direction> 540 + </action> 541 + </mousebind> 542 + </context> 543 + <context name="Close"> 544 + <mousebind button="Left" action="Press"> 545 + <action name="Focus"/> 546 + <action name="Raise"/> 547 + <action name="Unshade"/> 548 + </mousebind> 549 + <mousebind button="Left" action="Click"> 550 + <action name="Close"/> 551 + </mousebind> 552 + </context> 553 + <context name="Desktop"> 554 + <mousebind button="Up" action="Click"> 555 + <action name="GoToDesktop"> 556 + <to>previous</to> 557 + </action> 558 + </mousebind> 559 + <mousebind button="Down" action="Click"> 560 + <action name="GoToDesktop"> 561 + <to>next</to> 562 + </action> 563 + </mousebind> 564 + <mousebind button="W-Up" action="Click"> 565 + <action name="GoToDesktop"> 566 + <to>previous</to> 567 + </action> 568 + </mousebind> 569 + <mousebind button="W-Down" action="Click"> 570 + <action name="GoToDesktop"> 571 + <to>next</to> 572 + </action> 573 + </mousebind> 574 + <mousebind button="C-W-Up" action="Click"> 575 + <action name="GoToDesktop"> 576 + <to>previous</to> 577 + </action> 578 + </mousebind> 579 + <mousebind button="C-W-Down" action="Click"> 580 + <action name="GoToDesktop"> 581 + <to>next</to> 582 + </action> 583 + </mousebind> 584 + <mousebind button="Left" action="Press"> 585 + <action name="Focus"/> 586 + <action name="Raise"/> 587 + </mousebind> 588 + <mousebind button="Right" action="Press"> 589 + <action name="Focus"/> 590 + <action name="Raise"/> 591 + </mousebind> 592 + </context> 593 + <context name="Root"> 594 + <!-- Menus --> 595 + <mousebind button="Middle" action="Press"> 596 + <action name="ShowMenu"> 597 + <menu>client-list-combined-menu</menu> 598 + </action> 599 + </mousebind> 600 + <mousebind button="Right" action="Press"> 601 + <action name="ShowMenu"> 602 + <menu>root-menu</menu> 603 + </action> 604 + </mousebind> 605 + </context> 606 + <context name="MoveResize"> 607 + <mousebind button="Up" action="Click"> 608 + <action name="GoToDesktop"> 609 + <to>previous</to> 610 + </action> 611 + </mousebind> 612 + <mousebind button="Down" action="Click"> 613 + <action name="GoToDesktop"> 614 + <to>next</to> 615 + </action> 616 + </mousebind> 617 + <mousebind button="W-Up" action="Click"> 618 + <action name="GoToDesktop"> 619 + <to>previous</to> 620 + </action> 621 + </mousebind> 622 + <mousebind button="W-Down" action="Click"> 623 + <action name="GoToDesktop"> 624 + <to>next</to> 625 + </action> 626 + </mousebind> 627 + </context> 628 + </mouse> 629 + <menu> 630 + <file>menu.xml</file> 631 + <hideDelay>200</hideDelay> 632 + <middle>no</middle> 633 + <submenuShowDelay>100</submenuShowDelay> 634 + <submenuHideDelay>400</submenuHideDelay> 635 + <showIcons>yes</showIcons> 636 + <manageDesktops>yes</manageDesktops> 637 + </menu> 638 + <applications> 639 + </applications> 640 +</openbox_config>
M
config/picom.conf
··· 3 3 popup_menu = { shadow = false; }; 4 4 utility = { shadow = false; }; 5 5 shadow = true; 6 -shadow-radius = 11; 6 +shadow-radius = 15; 7 7 shadow-offset-x = -7; 8 8 shadow-offset-y = -7; 9 9 shadow-exclude = [ 10 + "override_redirect", 10 11 "class_g = 'Firefox' && argb", 11 - "name = 'Notification'", 12 12 "class_g = 'Polybar'" 13 13 ]; 14 - 15 14 16 15 ############ Fading ########### 17 -fading = true; 16 +fading = false; 18 17 fade-in-step = 0.03; 19 18 fade-out-step = 0.03; 20 19 21 - 22 20 ##### Transparency/Opacity #### 23 -#inactive-opacity = 0.8; 24 21 inactive-opacity = 1; 25 22 frame-opacity = 0.7; 26 23 inactive-opacity-override = false; 27 -#inactive-opacity-override = true; 28 24 focus-exclude = []; 29 -#no-fading-openclose = true 25 +opacity-exclude = [ "class_g = 'openbox'" ]; 26 +opacity-rule = [ "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" ]; 27 +no-fading-openclose = true 30 28 31 29 ##### Background-Blurring ##### 32 30 blur-kern = "3x3box"; 33 -blur-background-exclude = [ 34 - "window_type = 'desktop'" 35 -]; 31 +blur-background-exclude = []; 36 32 37 33 38 34 ####### General Settings ######
M
config/polybar/config
··· 3 3 4 4 [colors] 5 5 ; Solarized ======== 6 -background = #002B36 7 -foreground = #dfdfdf 8 -secondary = #073642 9 -alert = #268bd2 6 +;background = #002B36 7 +;foreground = #dfdfdf 8 +;secondary = #073642 9 +;alert = #268bd2 10 + 11 +; Smirnov-O Sheme == 12 +background = #262A2B 13 +foreground = #ffffff 14 +secondary = #111B1A 15 +alert = #008dcd 10 16 11 17 ; Nord ============= 12 18 ;background = #2E3440 ··· 21 27 22 28 fixed-center = true 23 29 wm-restack = i3 30 +;override-redirect = true 24 31 25 32 background = ${colors.background} 26 33 foreground = ${colors.foreground} ··· 28 35 line-size = 3 29 36 line-color = #000000 30 37 38 +#padding-left = 2 39 +#padding-right = 2 40 + 41 +#radius = 6.0 42 +#border-left-size = 0.2% 43 +#border-top-size = 0.2% 44 +#border-right-size = 0.2% 45 + 31 46 module-margin-left = 1 32 47 module-margin-right = 1 33 48 ··· 35 50 font-1 = FontAwesome5Free:style=Solid:size=7.5;2.5 36 51 font-2 = Weather Icons:size=7;2 37 52 38 -modules-left = i3 title 39 -modules-right = keyboard pulseaudio backlight wifi-signal date time 53 +modules-left = i3 54 +modules-right = keyboard pulseaudio backlight wifi-signal time 40 55 tray-position = right 41 56 42 57 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 58 +[settings] 59 +screenchange-reload = true 60 + 43 61 [module/i3] 44 62 type = internal/i3 45 63 format = <label-state><label-mode> ··· 106 124 label = %output:%% 107 125 exec = ~/.config/polybar/scripts/wifi-signal.sh 108 126 interval = 3.0 127 + 128 + 129 +[module/filesystem] 130 +type = internal/fs 131 +interval = 25 132 +mount-0 = / 133 +mount-1 = /home 134 +label-mounted = %mountpoint%: %percentage_used%% 135 +label-unmounted = %mountpoint% not mounted 136 +label-unmounted-foreground = ${colors.foreground} 109 137 110 138 111 139 [module/pulseaudio] ··· 122 150 ramp-volume-4 = 123 151 124 152 153 +[module/cpu] 154 +type = internal/cpu 155 +interval = 2 156 +format-prefix = " " 157 +format-prefix-foreground = ${colors.foreground} 158 +label = CPU %percentage%% 159 + 160 + 161 +[module/memory] 162 +type = internal/memory 163 +interval = 2 164 +format-prefix = " " 165 +label = MEM %percentage_used%% 166 + 167 + 125 168 [module/weather] 126 169 type = custom/script 127 170 exec = python3 ~/.config/polybar/scripts/weather.py ··· 129 172 label-font = 1 130 173 131 174 175 +[module/spotify] 176 +type = custom/script 177 +interval = 1 178 +format = <label> 179 +exec = python ~/.config/polybar/scripts/spotify_status.py -f '{artist} - {song}' 180 +format-underline = ${colors.alert} 181 + 132 182 [module/updates-pacman] 133 183 type = custom/script 134 184 exec = ~/.config/polybar/scripts/updates-pacman-aur.sh ··· 144 194 blacklist-0 = num lock 145 195 blacklist-1 = scroll lock 146 196 blacklist-2= caps lock 197 + 198 + 199 +[module/microphone] 200 +type = custom/script 201 +label = %output:0:40:...% 202 +exec = ~/.config/polybar/scripts/microphone.sh 203 +click-left = ~/.config/polybar/scripts/microphone.sh --click 204 +interval = 0 147 205 148 206 149 207 [module/sp2] ··· 167 225 168 226 [module/title] 169 227 type = internal/xwindow 170 -label = %title% 171 -format-padding = 4 228 +label = %title:0:50:...% 172 229 label-empty = 173 230 label-maxlen = 50 231 + 232 + 233 +[module/clipmenu] 234 +type = custom/text 235 +content = "" 236 +click-left = "CM_LAUNCHER=rofi clipmenu" 237 +interval = 0
D
config/polybar/scripts/microphone.sh
··· 1 -#!/bin/bash 2 -MICSYMBOL=$1 3 -MICMUTEDSYMBOL=$2 4 - 5 -case "$1" in 6 - --click) 7 - amixer -D pulse sset Capture toggle 8 - ;; 9 - *) 10 - ;; 11 -esac 12 - 13 -STATUS=$(amixer -D pulse get Capture | grep -E "\[on\]|\[off\]" | cut -s -d ' ' -f 8 | uniq) 14 - 15 -if [[ $STATUS = "[on]" ]]; then 16 - echo $MICSYMBOL 17 -elif [[ $STATUS = "[off]" ]]; then 18 - echo $MICMUTEDSYMBOL 19 -else 20 - echo "Not working, check script." 21 -fi
D
config/polybar/scripts/spotify_status.py
··· 1 -#!/usr/bin/env python 2 -# -*- encoding: utf-8 -*- 3 -import sys, dbus, argparse 4 - 5 -parser = argparse.ArgumentParser() 6 -parser.add_argument( 7 - '-t', 8 - '--trunclen', 9 - type=int, 10 - metavar='trunclen' 11 -) 12 -parser.add_argument( 13 - '-f', 14 - '--format', 15 - type=str, 16 - metavar='custom format', 17 - dest='custom_format' 18 -) 19 -parser.add_argument( 20 - '-p', 21 - '--playpause', 22 - type=str, 23 - metavar='play-pause indicator', 24 - dest='play_pause' 25 -) 26 -parser.add_argument( 27 - '--font', 28 - type=str, 29 - metavar='the index of the font to use for the main label', 30 - dest='font' 31 -) 32 -parser.add_argument( 33 - '--playpause-font', 34 - type=str, 35 - metavar='the index of the font to use to display the playpause indicator', 36 - dest='play_pause_font' 37 -) 38 -parser.add_argument( 39 - '-q', 40 - '--quiet', 41 - action='store_true', 42 - help="if set, don't show any output when the current song is paused", 43 - dest='quiet', 44 -) 45 - 46 -args = parser.parse_args() 47 - 48 - 49 -def fix_string(string): 50 - # corrects encoding for the python version used 51 - if sys.version_info.major == 3: 52 - return string 53 - else: 54 - return string.encode('utf-8') 55 - 56 - 57 -def truncate(name, trunclen): 58 - if len(name) > trunclen: 59 - name = name[:trunclen] 60 - name += '...' 61 - if ('(' in name) and (')' not in name): 62 - name += ')' 63 - return name 64 - 65 - 66 - 67 -# Default parameters 68 -output = fix_string(u'{play_pause} {artist}: {song}') 69 -trunclen = 35 70 -play_pause = fix_string(u'\u25B6,\u23F8') # first character is play, second is paused 71 - 72 -label_with_font = '%{{T{font}}}{label}%{{T-}}' 73 -font = args.font 74 -play_pause_font = args.play_pause_font 75 - 76 -quiet = args.quiet 77 - 78 -# parameters can be overwritten by args 79 -if args.trunclen is not None: 80 - trunclen = args.trunclen 81 -if args.custom_format is not None: 82 - output = args.custom_format 83 -if args.play_pause is not None: 84 - play_pause = args.play_pause 85 - 86 -try: 87 - session_bus = dbus.SessionBus() 88 - spotify_bus = session_bus.get_object( 89 - 'org.mpris.MediaPlayer2.spotify', 90 - '/org/mpris/MediaPlayer2' 91 - ) 92 - 93 - spotify_properties = dbus.Interface( 94 - spotify_bus, 95 - 'org.freedesktop.DBus.Properties' 96 - ) 97 - 98 - metadata = spotify_properties.Get('org.mpris.MediaPlayer2.Player', 'Metadata') 99 - status = spotify_properties.Get('org.mpris.MediaPlayer2.Player', 'PlaybackStatus') 100 - 101 - # Handle play/pause label 102 - 103 - play_pause = play_pause.split(',') 104 - 105 - if status == 'Playing': 106 - play_pause = play_pause[0] 107 - elif status == 'Paused': 108 - play_pause = play_pause[1] 109 - else: 110 - play_pause = str() 111 - 112 - if play_pause_font: 113 - play_pause = label_with_font.format(font=play_pause_font, label=play_pause) 114 - 115 - # Handle main label 116 - 117 - artist = fix_string(metadata['xesam:artist'][0]) if metadata['xesam:artist'] else '' 118 - song = fix_string(metadata['xesam:title']) if metadata['xesam:title'] else '' 119 - album = fix_string(metadata['xesam:album']) if metadata['xesam:album'] else '' 120 - 121 - if (quiet and status == 'Paused') or (not artist and not song and not album): 122 - print('') 123 - else: 124 - if font: 125 - artist = label_with_font.format(font=font, label=artist) 126 - song = label_with_font.format(font=font, label=song) 127 - album = label_with_font.format(font=font, label=album) 128 - 129 - # Add 4 to trunclen to account for status symbol, spaces, and other padding characters 130 - print(truncate(output.format(artist=artist, 131 - song=song, 132 - play_pause=play_pause, 133 - album=album), trunclen + 4)) 134 - 135 -except Exception as e: 136 - if isinstance(e, dbus.exceptions.DBusException): 137 - print('') 138 - else: 139 - print(e)
M
config/polybar/scripts/weather.py
··· 2 2 # -*- encoding: utf-8 -*- 3 3 import requests, os 4 4 5 + 5 6 API_KEY = os.getenv("OWM_POLYBAR") 6 7 CITY = "Horodnytsya,UA" 7 8 8 -try: 9 - JSON = requests.get(f"http://api.openweathermap.org/data/2.5/weather?q={CITY}&lang=EN&&units=metric&appid={API_KEY}").json() 10 -except Exception as e: 11 - print("No connection ") 12 9 10 +try: JSON = requests.get(f"http://api.openweathermap.org/data/2.5/weather?q={CITY}&lang=EN&&units=metric&appid={API_KEY}").json() 11 +except Exception as e: print("No connection ") 13 12 try: 14 13 if JSON['weather'][0]['main'] == "Clear": print("", int(JSON["main"]["temp"]),"°С") 15 14 elif JSON['weather'][0]['main'] == "Thunderstorm": print("", int(JSON["main"]["temp"]),"°С") ··· 26 25 elif JSON['weather'][0]['main'] == "Squall": print("", int(JSON["main"]["temp"]),"°С") 27 26 elif JSON['weather'][0]['main'] == "Tornado": print("", int(JSON["main"]["temp"]),"°С") 28 27 elif JSON['weather'][0]['main'] == "Clouds": print("", int(JSON["main"]["temp"]),"°С") 29 -except Exception as e: 30 - print(int(JSON["main"]["temp"]),"°С") 28 +except Exception as e: print(int(JSON["main"]["temp"]),"°С")
M
config/qtile/autostart.sh
··· 1 1 #!/bin/sh 2 -setxkbmap "us,ru" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" 2 +setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" 3 +/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & 4 +nitrogen --restore & 3 5 picom -b & 4 -nitrogen --restore & 5 -kitty & 6 +kbdd &
M
config/qtile/config.py
··· 1 -from typing import List 2 1 from libqtile import bar, layout, widget, hook 3 2 from libqtile.config import Click, Drag, Group, Key, Screen 4 3 from libqtile.lazy import lazy 4 +from typing import List 5 5 import os 6 6 7 7 8 -auto_fullscreen = True 9 -focus_on_window_activation = "smart" 8 +mod = "mod4" 9 +alt = "mod1" 10 +terminal = "kitty" 11 +browser = "firefox" 12 +user = "sasha" 13 +color = [ 14 + "#FFFFFF", # 0. Text color 15 + "#CED4DA", # 1. Unfocus color 16 + "#008DCD", # 2. Focus color 17 + "#262A2B", # 3. Panel color 18 + "#51AFEF", # 4. Text color 19 + "#C678DD", # 5. Text color 20 + "#FF6C6B", # 6. Text color 21 + "#ECBE7B", # 7. Text color 22 + "#98BE65", # 8. Text color 23 +] 10 24 11 -mod = "mod4" # Set mod key(Super/Win) 12 -terminal = "kitty" # Set terminal 13 - 14 -colors = [["#292d3e", "#292d3e"], # panel background 15 - ["#434758", "#434758"], # background for current screen tab 16 - ["#ffffff", "#ffffff"], # font color for group names 17 - ["#ff5555", "#ff5555"], # border line color for current tab 18 - ["#ff1151", "#ff1151"], # border line color for current tab 19 - ["#8d62a9", "#8d62a9"], # border line color for other tab and odd widgets 20 - ["#668bd7", "#668bd7"], # color for the even widgets 21 - ["#e1acff", "#e1acff"]] # window name 22 25 23 26 @hook.subscribe.startup_once 24 27 def autostart(): os.system("~/.config/qtile/autostart.sh") 25 28 26 29 27 30 keys = [ 28 - ## Window control 29 - Key([mod, "shift"], "c", lazy.window.kill(), desc="Kill focused window"), 30 - Key([mod], "k", lazy.layout.down(), desc="Move focus down in stack pane"), 31 - Key([mod], "j", lazy.layout.up(), desc="Move focus up in stack pane"), 32 - Key([mod, "control"], "k", lazy.layout.shuffle_down(), desc="Move window down in current stack"), 33 - Key([mod, "control"], "j", lazy.layout.shuffle_up(), desc="Move window up in current stack"), 31 + # Applications 32 + Key([mod], "Return", 33 + lazy.spawn(terminal), 34 + desc="Launch terminal" 35 + ), 36 + Key([mod], "F2", 37 + lazy.spawn(browser), 38 + desc="Launch browser" 39 + ), 40 + Key([mod, alt], "t", 41 + lazy.spawn(f"{terminal} -e \"nvim /home/{user}/.todo\""), 42 + desc="Open ~/.todo file in nvim" 43 + ), 44 + 45 + # Window control 46 + Key([mod], "q", 47 + lazy.window.kill(), 48 + desc="Kill focused window" 49 + ), 50 + Key([mod], "h", 51 + lazy.layout.left(), 52 + desc="Change focus window(left)" 53 + ), 54 + Key([mod], "j", 55 + lazy.layout.down(), 56 + desc="Change focus window(down)" 57 + ), 58 + Key([mod], "k", 59 + lazy.layout.up(), 60 + desc="Change focus window(up)" 61 + ), 62 + Key([mod], "l", 63 + lazy.layout.right(), 64 + desc="Change focus window(right)" 65 + ), 66 + Key([mod, "shift"], "h", 67 + lazy.layout.shuffle_left(), 68 + desc="Move focus window(left)" 69 + ), 70 + Key([mod, "shift"], "j", 71 + lazy.layout.shuffle_down(), 72 + desc="Move focus window(down)" 73 + ), 74 + Key([mod, "shift"], "k", 75 + lazy.layout.shuffle_up(), 76 + desc="Move focus window(up)" 77 + ), 78 + Key([mod, "shift"], "l", 79 + lazy.layout.shuffle_right(), 80 + desc="Move focus window(right)" 81 + ), 82 + Key([mod, "control"], "h", 83 + lazy.layout.grow_left(), 84 + #lazy.layout.grow()), 85 + desc="Resize focus window(left)" 86 + ), 87 + Key([mod, "control"], "j", 88 + lazy.layout.grow_down(), 89 + desc="Resize focus window(down)" 90 + ), 91 + Key([mod, "control"], "k", 92 + lazy.layout.grow_up(), 93 + desc="Resize focus window(up)" 94 + ), 95 + Key([mod, "control"], "l", 96 + lazy.layout.grow_right(), 97 + #lazy.layout.shrink() 98 + desc="Resize focus window(right)" 99 + ), 34 100 35 - ## Layout changer 36 - Key([mod], "space", lazy.next_layout(), desc="Toggle between layouts"), 37 - Key([mod, "shift"], "space", lazy.prev_layout(), desc="Toggle between layouts"), 38 - 39 - ## Launch program 40 - Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"), 41 - Key([mod], "F1", lazy.spawn(terminal + " -e ranger"), desc="Launch ranger"), 42 - Key([mod], "F2", lazy.spawn("qutebrowser"), desc="Launch qutebrowser"), 101 + # Layout 102 + Key([mod], "Tab", 103 + lazy.next_layout(), 104 + desc="Toggle between layouts" 105 + ), 106 + Key([mod], "space", 107 + lazy.layout.next(), 108 + desc="Switch window focus to other pane(s) of stack" 109 + ), 110 + Key([mod, "shift"], "space", 111 + lazy.layout.rotate(), 112 + desc="Swap panes of split stack" 113 + ), 43 114 44 - ## Program launcher(Dmenu or default) 45 - Key([mod], "r", lazy.spawncmd(), desc="Spawn a command using a prompt widget" ), 46 - Key([mod, "shift"], "Return", lazy.spawn("dmenu_run -h 24 -p Run:"), desc="Demnu program launcher" ), 47 - Key([mod, "control"], "u", lazy.spawn("sh ~/.script/dmenu/dmenu-config-edit.sh"), desc="Dmenu config menu"), 48 - Key([mod, "control"], "i", lazy.spawn("passmenu -h 24"), desc="Dmenu password menu"), 115 + # Volume 116 + Key([mod], "equal", 117 + lazy.spawn("pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo +2%"), 118 + desc="Plus 2% volume" 119 + ), 120 + Key([mod], "minus", 121 + lazy.spawn("pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo -2%"), 122 + desc="Minus 2% volume" 123 + ), 124 + Key([mod, "shift"], "minus", 125 + lazy.spawn("pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo toggle"), 126 + desc="Mute volume" 127 + ), 49 128 50 - ## Qtile 51 - Key([mod, "control"], "r", lazy.restart(), desc="Restart qtile"), 52 - Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown qtile"), 53 - 54 - ## Keyboard 55 - Key(["mod1"], "Shift_L", lazy.widget['keyboardlayout'].next_keyboard(), desc="Switch keyboard layout"), 129 + # Menus(dmenu & rofi) 130 + Key([mod, "shift"], "Return", 131 + lazy.spawn("rofi -show drun -drun-display-format \"{name}\""), 132 + desc="(Rofi) Program launcher" 133 + ), 134 + Key([mod],"Escape", 135 + lazy.spawn(f"/home/{user}/.script/dmenu/dmenu-power.sh"), 136 + desc="Power menu" 137 + ), 138 + Key([mod, "control"], "i", 139 + lazy.spawn("passmenu -h 24 -p Password"), 140 + desc="Dmenu password menu" 141 + ), 142 + Key([mod, "control"], "u", 143 + lazy.spawn(f"/home/{user}/.script/dmenu/dmenu-config-edit.sh"), 144 + desc="Config editor" 145 + ), 146 + Key([mod, "control"], "o", 147 + lazy.spawn(f"/home/{user}/.script/dmenu/dmenu-sysmon.sh"), 148 + desc="Choice system monitor" 149 + ), 150 + 151 + # Screenhot 152 + Key([], "Print", 153 + lazy.spawn(f"scrot -s /home/{user}/$(date +%Y-%m-%d-%H-%M-%S).png"), 154 + desc="Create screenhot(scrot -s)" 155 + ), 156 + Key(["shift"], "Print", 157 + lazy.spawn(f"scrot /home/{user}/$(date +%Y-%m-%d-%H-%M-%S).png"), 158 + desc="Create screenhot full screen(scrot)" 159 + ), 160 + 161 + # Qtile 162 + Key([mod, "control"], "r", 163 + lazy.restart(), 164 + desc="Restart qtile" 165 + ), 166 + Key([mod], "r", 167 + lazy.spawncmd(), 168 + desc="Spawn a command using a prompt widget" 169 + ), 56 170 ] 57 171 172 +# Workspaces name, keys 58 173 group_names = [("term", {'layout': 'monadtall'}), 59 - ("www", {'layout': 'monadtall'}), 60 - ("dev", {'layout': 'monadtall'}), 61 - ("sys", {'layout': 'monadtall'}), 62 - ("note", {'layout': 'monadtall'}), 174 + ("www", {'layout': 'max'}), 175 + ("dev", {'layout': 'monadtall'}), 176 + ("sys", {'layout': 'monadtall'}), 177 + ("doc", {'layout': 'monadtall'}), 63 178 ("chat", {'layout': 'monadtall'}), 64 179 ("pass", {'layout': 'monadtall'}), 65 - ("gft", {'layout': 'max'}), 66 - ("flo", {'layout': 'floating'}) 180 + ("mus", {'layout': 'max'}), 181 + ("flo", {'layout': 'monadtall'}) 67 182 ] 68 183 groups = [Group(name, **kwargs) for name, kwargs in group_names] 69 184 for i, (name, kwargs) in enumerate(group_names, 1): 70 185 keys.append(Key([mod], str(i), lazy.group[name].toscreen())) 71 186 keys.append(Key([mod, "shift"], str(i), lazy.window.togroup(name))) 72 187 188 +# Window layout(s) 73 189 layout_theme = { 74 - "border_width": 2, 75 - "margin": 0, 76 - "border_focus": "e1acff", 77 - "border_normal": "1D2330" 190 + "border_width": 1, 191 + "margin": 3, 192 + "border_focus": color[2], 193 + "border_normal": color[1], 194 + "font": "Jatbrains Mono" 78 195 } 79 196 layouts = [ 80 - layout.Max(**layout_theme), 81 - #layout.Stack(num_stacks=2, **layout_theme), 82 - #layout.Bsp(**layout_theme), 83 - layout.MonadTall(**layout_theme), 84 - layout.Floating(**layout_theme) 197 + layout.Max(), 198 + # layout.Stack(num_stacks=2, **layout_theme), 199 + # layout.Bsp(**layout_theme), 200 + layout.Columns(**layout_theme), 201 + # layout.Matrix(), 202 + # layout.MonadTall(**layout_theme), 203 + # layout.Floating(**layout_theme), 204 + # layout.MonadWide(), 205 + # layout.RatioTile(), 206 + # layout.Tile(**layout_theme), 207 + # layout.TreeTab(), 208 + # layout.VerticalTile(), 209 + # layout.Zoomy(), 85 210 ] 86 211 212 +# Panel 87 213 widget_defaults = dict( 88 - font='sans', 214 + font='Jatbrains Mono', 89 215 fontsize=12, 90 216 padding=5, 217 + foreground=color[0], 218 + background=color[3], 91 219 ) 92 220 extension_defaults = widget_defaults.copy() 93 - 94 -screens = [ 95 - Screen( 96 - top=bar.Bar([ 97 - widget.GroupBox( 98 - borderwidth = 0, 99 - active = colors[2], 100 - inactive = colors[2], 101 - rounded = False, 102 - highlight_color = colors[1], 103 - highlight_method = "line", 104 - this_current_screen_border = colors[3], 105 - this_screen_border = colors [4], 106 - other_current_screen_border = colors[0], 107 - other_screen_border = colors[0], 108 - foreground = colors[2], 109 - background = colors[0] 110 - ), 111 - widget.Prompt( padding = 10, foreground = colors[3], background = colors[0] ), 112 - widget.WindowName( foreground = colors[6], background = colors[0], padding = 7 ), 113 - widget.Systray( background = colors[0], padding = 3 ), 114 - widget.CurrentLayout(foreground = colors[2], background = colors[0]), 115 - widget.Net( interface = "wlp3s0", format = '{down}↓↑{up}', foreground = colors[2], background = colors[0], padding = 0 ), 116 - widget.TextBox(padding=3, background=colors[0]), 117 - widget.TextBox( text="", foreground = colors[2], background = colors[0], padding=3 ), 118 - widget.Volume( update_interval = 0.2, foreground = colors[2], background = colors[0], padding=0 ), 119 - widget.TextBox(padding=3, background=colors[0]), 120 - widget.TextBox( text="", foreground=colors[2], background=colors[0], padding=0 ), 121 - widget.KeyboardLayout( configured_keyboards=['us','ru', 'ua'], display_map={ 'us': ' us', 'ru': ' ru', 'ua': ' ua' }, update_interval=0.2, foreground=colors[2], background=colors[0], padding=2 ), 122 - widget.TextBox(padding=3, background=colors[0]), 123 - widget.TextBox( text = "", background = colors[0], foreground = colors[2], padding = 0 ), 124 - widget.Clock( format='%H:%M:%S', foreground=colors[2], background=colors[0], padding=2 ) 125 - ], 126 - 22, 127 - ), 221 +screens = [Screen(top=bar.Bar([ 222 + widget.GroupBox( 223 + active=color[0], 224 + inactive=color[1], 225 + rounded=False, 226 + disable_drag=True, 227 + highlight_color=color[2], 228 + highlight_method="block", 229 + this_current_screen_border=color[2], 230 + this_screen_border=color[3], 231 + foreground=color[0], 232 + ), 233 + widget.Prompt(foreground=color[0]), 234 + widget.WindowName(foreground=color[0]), 235 + widget.KeyboardKbdd( 236 + foreground=color[5], 237 + configured_keyboards=['us', 'ru', 'ua'], 238 + update_interval=0, 239 + fmt=" {}", 240 + ), 241 + widget.CurrentLayout( 242 + foreground=color[8] 243 + ), 244 + widget.Volume( 245 + foreground=color[6], 246 + fmt=" {}", 247 + ), 248 + widget.Net( 249 + interface="wlp3s0", 250 + format='{down}↓↑{up}', 251 + foreground=color[7], 252 + ), 253 + widget.Systray(), 254 + widget.Clock( 255 + format=' %H:%M', 256 + foreground=color[4] 128 257 ), 129 -] 258 + widget.Clock( 259 + format=" %d.%m.%Y", 260 + foreground=color[4] 261 + )], 24 # Panel size 262 +))] 130 263 131 -# Drag floating layouts. 264 +# Drag floating layouts 132 265 mouse = [ 133 - Drag([mod], "Button1", lazy.window.set_position_floating(), 134 - start=lazy.window.get_position()), 135 - Drag([mod], "Button3", lazy.window.set_size_floating(), 136 - start=lazy.window.get_size()), 266 + Drag([mod], "Button1", lazy.window.set_position(), start=lazy.window.get_position()), 267 + Drag([mod], "Button3", lazy.window.set_size_floating(), start=lazy.window.get_size()), 137 268 Click([mod], "Button2", lazy.window.bring_to_front()) 138 269 ] 139 - 140 - 141 270 142 271 dgroups_key_binder = None 143 -dgroups_app_rules = [] # type: List 144 -main = None # WARNING: this is deprecated and will be removed soon 272 +dgroups_app_rules = [] 273 +main = None 145 274 follow_mouse_focus = True 146 275 bring_front_click = False 147 276 cursor_warp = False ··· 154 283 {'wmclass': 'notification'}, 155 284 {'wmclass': 'splash'}, 156 285 {'wmclass': 'toolbar'}, 157 - {'wmclass': 'confirmreset'}, # gitk 158 - {'wmclass': 'makebranch'}, # gitk 159 - {'wmclass': 'maketag'}, # gitk 160 - {'wname': 'branchdialog'}, # gitk 161 - {'wname': 'pinentry'}, # GPG key password entry 162 - {'wmclass': 'ssh-askpass'}, # ssh-askpass 286 + {'wmclass': 'confirmreset'}, 287 + {'wmclass': 'makebranch'}, 288 + {'wmclass': 'maketag'}, 289 + {'wname': 'branchdialog'}, 290 + {'wname': 'pinentry'}, 291 + {'wmclass': 'ssh-askpass'}, 163 292 ]) 164 293 auto_fullscreen = True 165 294 focus_on_window_activation = "smart" 166 - 167 295 wmname = "LG3D"
M
config/qutebrowser/config.py
··· 1 1 # general 2 -c.url.start_pages = ["https://start.duckduckgo.com"] 2 +c.url.start_pages = ["about:blank"] 3 3 config.set("colors.webpage.darkmode.enabled", True) 4 -c.downloads.location.directory = '/home/sasha/Загрузки' 4 +c.downloads.location.directory = '/home/sasha/Downloads' 5 5 c.completion.shrink = True 6 6 config.load_autoconfig() 7 7 ··· 12 12 13 13 # alias, binds, search 14 14 c.aliases = {'q':'quit', 'w':'session-save', 'wq':'quit --save', 'e':'open'} 15 -config.bind('<l><p', 'spawn --userscript qute-pass') 15 +config.bind('<Ctrl-T>', 'open -t about:blank') 16 16 c.url.searchengines = { 17 17 'DEFAULT': 'https://www.google.com/search?q={}', 18 18 'ddg': 'https://duckduckgo.com/?q={}', ··· 60 60 c.colors.downloads.error.bg = color06 61 61 c.colors.downloads.start.bg = color03 62 62 c.colors.downloads.stop.bg = color04 63 -#c.colors.messages.info.bg = color01 64 -#c.colors.messages.info.border = color01 65 -#c.colors.messages.warning.border = color01 63 +c.colors.messages.info.bg = color01 64 +c.colors.messages.info.border = color01 65 +c.colors.messages.warning.border = color01 66 66 c.colors.statusbar.caret.bg = color01 67 67 c.colors.statusbar.command.bg = color01 68 68 c.colors.statusbar.insert.bg = color01
M
config/ranger/plugins/git.py
··· 3 3 4 4 5 5 class git(Command): 6 + 6 7 commands = 'init status clone add rm restore commit remote push'.split() 8 + 7 9 8 10 def execute(self): 11 + # empty 9 12 if not self.arg(1): 10 13 return self.fm.notify("For commands check \"git help\"") 11 14 15 + # help 12 16 if self.arg(1) == "help": 13 17 return self.fm.notify("Not done yet!", bad=True) 14 18 19 + # init 15 20 if self.arg(1) == self.commands[0]: 16 21 subprocess.run(["git", "init", "--quiet"]) 17 22 return self.fm.notify("Repository initialized successefully") 18 23 24 + # status 19 25 if self.arg(1) == self.commands[1]: 20 26 output = subprocess.check_output(["git", "status"]).decode() 21 27 ··· 24 30 25 31 return self.fm.edit_file('/tmp/gitplug-status') 26 32 33 + # clone 27 34 if self.arg(1) == self.commands[2]: 28 35 if not self.arg(2): 29 36 return self.fm.notify("Missing url!", bad=True) ··· 32 39 subprocess.run(["git", "clone", self.arg(2), "--quiet"]) 33 40 return self.fm.notify("Repository successfully cloned!") 34 41 42 + # add 35 43 if self.arg(1) == self.commands[3]: 36 44 if not self.arg(2): 37 45 return self.fm.notify("Missing arguments! Usage :git add <file>", bad=True) ··· 40 48 subprocess.run(["git", "add", self.arg(2)]) 41 49 return self.fm.notify("Successfully added files to branch!") 42 50 51 + #rm 43 52 if self.arg(1) == self.commands[4]: 44 53 if not self.arg(2): 45 54 return self.fm.notify("Missing arguments! Usage :git rm <file>", bad=True) ··· 48 57 subprocess.run(["git", "rm", self.arg(2)]) 49 58 return self.fm.notify("Successfully removed files from branch!") 50 59 60 + # restore 51 61 if self.arg(1) == self.commands[5]: 52 62 if not self.arg(2): 53 63 return self.fm.notify("Missing arguments! Usage :git restore <file>", bad=True) ··· 56 66 subprocess.run(["git", "restore", "--staged", self.arg(2), "--quiet"]) 57 67 return self.fm.notify("Successfully restored files!") 58 68 69 + # commit 59 70 if self.arg(1) == self.commands[6]: 60 71 if not self.rest(2): 61 72 return self.fm.notify("Missing commit text", bad=True) ··· 64 75 subprocess.run(["git", "commit", "-m", self.rest(2), "--quiet"]) 65 76 return self.fm.notify("Successfully commited!") 66 77 78 + # remote 67 79 if self.arg(1) == self.commands[7]: 68 80 if not self.arg(2): 69 81 return self.fm.notify("Missing arguments! Use: git remote add/rm <name> <url>", bad=True) ··· 88 100 subprocess.run(["git", "remote", "rm", self.arg(3)]) 89 101 return self.fm.notify("Remote successfully removed") 90 102 103 + # push 91 104 if self.arg(1) == self.commands[8]: 92 105 if self.arg(2) == "-u" and self.arg(3) and self.arg(4): 93 106 subprocess.run(["git", "push", "--quiet", "-u", self.arg(3), self.arg(4)])
M
config/ranger/rc.conf
··· 1 1 ############ 2 2 ### Options 3 -########### 3 +############ 4 4 5 5 ### Appearance 6 6 set colorscheme solarized ··· 24 24 25 25 ### Preview 26 26 set preview_images true 27 -#set preview_images_method w3m 28 -set preview_images_method kitty 29 - 27 +set preview_images_method w3m 30 28 set w3m_delay 0.02 31 29 set w3m_offset 0 32 30 33 -set iterm2_font_width 8 34 -set iterm2_font_height 11 35 - 36 31 set unicode_ellipsis false 37 32 set bidi_support false 38 33 set show_hidden_bookmarks true 39 - 40 34 set preview_files true 41 35 set preview_directories true 42 36 set collapse_preview true 43 - 44 37 set wrap_plaintext_previews false 45 38 set draw_progress_bar_in_status_bar true 46 39 set draw_borders none 47 - 48 40 set dirname_in_tabs false 49 - 50 41 set mouse_enabled true 51 - 52 42 set display_size_in_main_column true 53 43 set display_size_in_status_bar true 54 44 set display_free_space_in_status_bar false 55 45 set display_tags_in_all_columns true 56 - 57 46 set update_title false 58 47 set update_tmux_title false 59 48 set shorten_title 3 ··· 64 53 set max_history_size 20 65 54 set max_console_history_size 50 66 55 set save_console_history false 67 - 68 - 69 56 set scroll_offset 4 70 57 set flushinput true 71 58 set padding_right true 72 - 73 59 set autosave_bookmarks true 74 60 set save_backtick_bookmark true 75 - 76 61 set autoupdate_cumulative_size false 77 62 set show_cursor false 78 - 79 -# One of: size, natural, basename, atime, ctime, mtime, type, random 80 63 set sort natural 81 - 82 64 set sort_reverse false 83 65 set sort_case_insensitive true 84 66 set sort_directories_first true 85 67 set sort_unicode false 86 - 87 68 set xterm_alt_key false 88 - 89 69 set cd_bookmarks true 90 70 set cd_tab_case sensitive 91 71 set cd_tab_fuzzy false 92 - 93 72 set preview_max_size 0 94 - 95 73 set hint_collapse_threshold 10 96 - 97 74 set show_selection_in_titlebar true 98 75 set idle_delay 2000 99 - 100 76 set metadata_deep_search false 101 77 set clear_filters_on_dir_change false 102 - 103 -# Possible values: false, absolute, relative. 104 78 set line_numbers false 105 79 set relative_current_zero false 106 80 set one_indexed false 107 - 108 81 set save_tabs_on_exit false 109 82 set wrap_scroll false 110 83 set global_inode_type_filter ··· 115 88 ################################# 116 89 # Command Aliases in the Console 117 90 ################################# 91 + 92 +# "a" key 93 +map a rename_append 94 +map a 95 +map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%")) 96 + 97 + 98 + 118 99 map ex extract 119 100 map ed extract_to_dirs 120 101 map ec compress ··· 227 208 map E edit 228 209 229 210 map cw console rename%space 230 -map a rename_append 231 -map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%")) 232 211 map I eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7) 233 212 234 213 map pp paste
M
config/ranger/rifle.conf
··· 1 1 ############# 2 2 ### Websites 3 3 ############# 4 +ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@" 4 5 ext x?html?, has firefox, X, flag f = firefox -- "$@" 5 6 ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" 6 7 ext x?html?, has chromium, X, flag f = chromium -- "$@" ··· 8 9 ext x?html?, has surf, X, flag f = surf -- file://"$1" 9 10 ext x?html?, has vimprobable, X, flag f = vimprobable -- "$@" 10 11 ext x?html?, has vimprobable2, X, flag f = vimprobable2 -- "$@" 11 -ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@" 12 12 ext x?html?, has dwb, X, flag f = dwb -- "$@" 13 13 ext x?html?, has jumanji, X, flag f = jumanji -- "$@" 14 14 ext x?html?, has luakit, X, flag f = luakit -- "$@" ··· 126 126 mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@" 127 127 mime ^image/svg, has display, X, flag f = display -- "$@" 128 128 129 -mime ^image, has pix X, flag f = pix "$@" 129 +mime ^image, has pix X, flag f = pix -- "$@" 130 130 mime ^image, has ristretto, X, flag f = ristretto "$@" 131 131 mime ^image, has gpicview, X, flag f = gpicview -- "$@" 132 132 mime ^image, has gwenview, X, flag f = gwenview -- "$@"
D
config/rofi/flat-solarized.rasi
··· 1 -* { 2 - background-color: #002b36; 3 - border-color: #606060; 4 - text-color: #c8c8c8; 5 - width: 768px; 6 - height: 512px; 7 -} 8 - 9 -window { 10 - padding: 8px; 11 -} 12 - 13 -inputbar { 14 - padding: 8px; 15 - children: [/* prompt, */ entry]; 16 -} 17 - 18 -prompt { 19 - border: 0 1px 0 0; 20 - padding: 4px 20px 8px 12px; 21 -} 22 - 23 -entry { 24 - padding: 4px 12px 8px 20px; 25 -} 26 - 27 -listview { 28 - cycle: false; 29 -} 30 - 31 -element { 32 - padding: 6px 24px; 33 -} 34 - 35 -element selected { 36 - background-color: #073642; 37 - text-color: #e0e0e0; 38 -} 39 - 40 -element-icon { 41 - size: 20px; 42 -}
D
config/sublime-text-3/Default (Linux).sublime-keymap
··· 1 -[ 2 - // Unbind's 3 - { "keys": ["ctrl+b"], "command": null }, 4 - { "keys": ["ctrl+shift+x"],"command": null }, 5 - // Bind's 6 - { "keys": ["ctrl+shift+`"], "command": "ecsstractor", "args": {"bem_nesting": true } }, 7 - { "keys": ["ctrl+`"], "command": "ecsstractor"}, 8 - { "keys": ["ctrl+b"], "command": "toggle_side_bar" } 9 -]
D
config/sublime-text-3/Package Control.sublime-settings
··· 1 -{ 2 - "bootstrapped": true, 3 - "in_process_packages": [], 4 - "installed_packages": [ 5 - "A File Icon", 6 - "Agila Theme", 7 - "AutoFileName", 8 - "ayu", 9 - "BracketHighlighter", 10 - "Color Highlight", 11 - "ColorPicker", 12 - "Discord Rich Presence", 13 - "eCSStractor", 14 - "Emmet", 15 - "Package Control", 16 - "Sass" 17 - ] 18 -}
D
config/sublime-text-3/Preferences.sublime-settings
··· 1 -{ 2 - "color_scheme": "Packages/ayu/ayu-mirage.sublime-color-scheme", 3 - "theme": "ayu-mirage.sublime-theme", 4 - "auto_complete": true, 5 - "draw_indent_guides": false, 6 - "draw_white_space": "all", 7 - "file_exclude_patterns": [ "package-lock.json" ], 8 - "folder_exclude_patterns": [ "node_modules" ], 9 - "font_size": 10, 10 - "ignored_packages": [ "Vintage" ], 11 - "margin": 0, 12 - "remeber_open_files": true, 13 - "save_on_focus_lost": true, 14 - "tab_size": 4, 15 - "translate_tabs_to_spaces": true, 16 - "trim_trailing_white_space_on_save": false, 17 - "update_check": false, 18 - "word_wrap": true 19 -}
A
config/tint2/tint2rc
··· 1 +#---- Generated by tint2conf 41e4 ---- 2 +# See https://gitlab.com/o9000/tint2/wikis/Configure for 3 +# full documentation of the configuration options. 4 +#------------------------------------- 5 +# Gradients 6 +#------------------------------------- 7 +# Backgrounds 8 +# Background 1: Active taskbar, Battery, Clock, Launcher, Systray, Tooltip 9 +rounded = 0 10 +border_width = 0 11 +border_sides = TBLR 12 +border_content_tint_weight = 0 13 +background_content_tint_weight = 0 14 +background_color = #262a2b 100 15 +border_color = #222222 0 16 +background_color_hover = #000000 80 17 +border_color_hover = #000000 0 18 +background_color_pressed = #000000 80 19 +border_color_pressed = #000000 0 20 + 21 +# Background 2: Active task 22 +rounded = 0 23 +border_width = 0 24 +border_sides = TBLR 25 +border_content_tint_weight = 0 26 +background_content_tint_weight = 0 27 +background_color = #008dcd 100 28 +border_color = #272727 0 29 +background_color_hover = #272727 70 30 +border_color_hover = #272727 0 31 +background_color_pressed = #272727 70 32 +border_color_pressed = #272727 0 33 + 34 +# Background 3: Urgent task 35 +rounded = 0 36 +border_width = 0 37 +border_sides = TBLR 38 +border_content_tint_weight = 0 39 +background_content_tint_weight = 0 40 +background_color = #ff8066 60 41 +border_color = #d98282 0 42 +background_color_hover = #d98282 60 43 +border_color_hover = #d98282 0 44 +background_color_pressed = #d98282 60 45 +border_color_pressed = #d98282 0 46 + 47 +# Background 4: Default task 48 +rounded = 0 49 +border_width = 0 50 +border_sides = TBLR 51 +border_content_tint_weight = 0 52 +background_content_tint_weight = 0 53 +background_color = #262a2b 100 54 +border_color = #242424 0 55 +background_color_hover = #242424 60 56 +border_color_hover = #242424 0 57 +background_color_pressed = #242424 60 58 +border_color_pressed = #242424 0 59 + 60 +# Background 5: Iconified task 61 +rounded = 0 62 +border_width = 0 63 +border_sides = TBLR 64 +border_content_tint_weight = 0 65 +background_content_tint_weight = 0 66 +background_color = #262a2b 60 67 +border_color = #252525 0 68 +background_color_hover = #252525 60 69 +border_color_hover = #252525 0 70 +background_color_pressed = #252525 60 71 +border_color_pressed = #252525 0 72 + 73 +#------------------------------------- 74 +# Panel 75 +panel_items = TSC 76 +panel_size = 100% 26 77 +panel_margin = 0 0 78 +panel_padding = 0 0 0 79 +panel_background_id = 0 80 +wm_menu = 1 81 +panel_dock = 0 82 +panel_pivot_struts = 0 83 +panel_position = bottom center horizontal 84 +panel_layer = top 85 +panel_monitor = all 86 +panel_shrink = 0 87 +autohide = 0 88 +autohide_show_timeout = 0.3 89 +autohide_hide_timeout = 1.5 90 +autohide_height = 1 91 +strut_policy = follow_size 92 +panel_window_name = tint2 93 +disable_transparency = 0 94 +mouse_effects = 0 95 +font_shadow = 0 96 +mouse_hover_icon_asb = 100 0 10 97 +mouse_pressed_icon_asb = 100 0 0 98 +scale_relative_to_dpi = 0 99 +scale_relative_to_screen_height = 0 100 + 101 +#------------------------------------- 102 +# Taskbar 103 +taskbar_mode = single_desktop 104 +taskbar_hide_if_empty = 0 105 +taskbar_padding = 0 0 0 106 +taskbar_background_id = 0 107 +taskbar_active_background_id = 1 108 +taskbar_name = 1 109 +taskbar_hide_inactive_tasks = 0 110 +taskbar_hide_different_monitor = 0 111 +taskbar_hide_different_desktop = 0 112 +taskbar_always_show_all_desktop_tasks = 0 113 +taskbar_name_padding = 6 7 114 +taskbar_name_background_id = 0 115 +taskbar_name_active_background_id = 0 116 +taskbar_name_font = Droid Sans Bold 8 117 +taskbar_name_font_color = #d1d1d1 100 118 +taskbar_name_active_font_color = #aaaaaa 100 119 +taskbar_distribute_size = 0 120 +taskbar_sort_order = none 121 +task_align = left 122 + 123 +#------------------------------------- 124 +# Task 125 +task_text = 1 126 +task_icon = 0 127 +task_centered = 1 128 +urgent_nb_of_blink = 20 129 +task_maximum_size = 200 0 130 +task_padding = 8 6 8 131 +task_font = Droid Sans Bold 8 132 +task_tooltip = 1 133 +task_thumbnail = 0 134 +task_thumbnail_size = 210 135 +task_font_color = #cccccc 100 136 +task_active_font_color = #ffffff 100 137 +task_urgent_font_color = #cccccc 100 138 +task_iconified_font_color = #cccccc 80 139 +task_icon_asb = 100 0 0 140 +task_active_icon_asb = 100 0 0 141 +task_urgent_icon_asb = 100 0 0 142 +task_iconified_icon_asb = 80 0 0 143 +task_background_id = 4 144 +task_active_background_id = 2 145 +task_urgent_background_id = 3 146 +task_iconified_background_id = 5 147 +mouse_left = toggle_iconify 148 +mouse_middle = close 149 +mouse_right = none 150 +mouse_scroll_up = none 151 +mouse_scroll_down = none 152 + 153 +#------------------------------------- 154 +# System tray (notification area) 155 +systray_padding = 8 0 12 156 +systray_background_id = 1 157 +systray_sort = right2left 158 +systray_icon_size = 18 159 +systray_icon_asb = 100 0 0 160 +systray_monitor = 1 161 +systray_name_filter = 162 + 163 +#------------------------------------- 164 +# Launcher 165 +launcher_padding = 8 0 16 166 +launcher_background_id = 1 167 +launcher_icon_background_id = 0 168 +launcher_icon_size = 16 169 +launcher_icon_asb = 100 0 0 170 +launcher_icon_theme_override = 0 171 +startup_notifications = 0 172 +launcher_tooltip = 0 173 + 174 +#------------------------------------- 175 +# Clock 176 +time1_format = %H:%M 177 +time2_format = %d.%m.%Y 178 +time1_font = Droid Sans Bold 8 179 +time1_timezone = Europe/Kiev 180 +time2_timezone = 181 +time2_font = Droid Sans 7 182 +clock_font_color = #d1d1d1 100 183 +clock_padding = 4 2 184 +clock_background_id = 1 185 +clock_tooltip = 186 +clock_tooltip_timezone = 187 +clock_lclick_command = 188 +clock_rclick_command = 189 +clock_mclick_command = 190 +clock_uwheel_command = 191 +clock_dwheel_command = 192 + 193 +#------------------------------------- 194 +# Battery 195 +battery_tooltip = 1 196 +battery_low_status = 20 197 +battery_low_cmd = notify-send "battery low" 198 +battery_full_cmd = 199 +bat1_font = Droid Sans Bold 8 200 +bat2_font = Droid Sans Bold 8 201 +battery_font_color = #d1d1d1 100 202 +bat1_format = 203 +bat2_format = 204 +battery_padding = 2 0 205 +battery_background_id = 1 206 +battery_hide = 96 207 +battery_lclick_command = 208 +battery_rclick_command = 209 +battery_mclick_command = 210 +battery_uwheel_command = 211 +battery_dwheel_command = 212 +ac_connected_cmd = 213 +ac_disconnected_cmd = 214 + 215 +#------------------------------------- 216 +# Tooltip 217 +tooltip_show_timeout = 1 218 +tooltip_hide_timeout = 0 219 +tooltip_padding = 6 6 220 +tooltip_background_id = 1 221 +tooltip_font_color = #d1d1d1 100 222 +tooltip_font = Droid Sans Bold 8 223 +
M
conkyrc
··· 13 13 alignment = 'top_right', 14 14 gap_x = 40, 15 15 gap_y = 60, 16 - minimum_height = 200, 16 + minimum_height = 50, 17 17 minimum_width = 200, 18 18 maximum_width = 700, 19 19 border_inner_margin = 10, ··· 37 37 font = 'Jatbrains Mono', 38 38 max_text_width = 0, 39 39 max_user_text = 16384, 40 - override_utf8_locale = false, 40 + override_utf8_locale = true, 41 41 short_units = true, 42 42 top_name_width = 21, 43 43 top_name_verbose = false, ··· 62 62 63 63 conky.text = [[ 64 64 ${voffset 10}${font Jatbrains Mono:weight=Bold:size=14}${color1}Todo: ${font Jatbrains Mono:weight=Medium:size=10}${color2}<mod+alt+t>${font} 65 -${exec cat -n "$HOME/.todo" | fmt -s -w 50}\ 65 +${font Jatbrains Mono:weight=Medium:size=10}${exec cat -n "$HOME/.todo" | fmt -s -w 66}\ 66 66 ${color1} 67 67 ${font} 68 68 ]]
M
gitconfig
··· 1 1 [user] 2 2 username = Smirnov-O 3 3 name = Smirnov Olexandr 4 - email = ss2316544@gmail.com 4 + email = ss2316544@gmail.com 5 5 6 6 [github] 7 7 name = Smirnov-O 8 8 9 9 [web] 10 - browser = firefox 11 - #browser = google-chrome 10 + browser = chromium # firefox, google-chrome, 12 11 13 12 [core] 14 - editor = vim 13 + editor = vim 14 + excludesfile = ~/.gitignore_global 15 15 16 16 [alias] 17 - ada = add -A 18 - rmc = rm --cached 17 + ada = add -A 19 18 cm = commit 20 19 cmm = commit -m 21 - ch = checkout 22 - cl = clone 23 - st = status 20 + ch = checkout 21 + cl = clone 22 + st = status 24 23 br = branch 25 24 l = log 25 + i = init 26 26 27 27 [color] 28 - ui = true 29 - interactive = true 30 - branch = true 31 - status = true 28 + ui = true 29 + interactive = true 30 + branch = true 31 + status = true 32 32 33 33 [credential] 34 - helper = cache --timeout=1800 34 + helper = cache --timeout=1800
M
gitignore_global
··· 1 -## IDE ## 2 -.vscode/* 3 -.idea/* 1 +# IDE 2 +.idea 3 +*~ 4 +~* 4 5 5 -## OS: Linux, Windows, Mac OS X ## 6 -.directory 7 -.Trash-* 8 -Thumbs.db 9 -ehthumbs.db 10 -*.stackdump 11 -[Dd]esktop.ini 12 -.DS_Store 6 +# Logs and databases 7 +*.log 8 +*.sqlite 9 +*.db 10 +*.todo 13 11 14 -## Python files ## 12 +# Temp files 13 +*.pyc 14 +*.swp 15 +.*.swp 16 +*.swo 15 17 __pycache__ 16 -venv 17 -env 18 -*.py[cod] 19 -dist/ 20 18 21 -## Golang ## 22 -/Godeps/ 23 -*.out 24 - 25 -## JS/TS ## 26 -npm-debug.log* 27 -yarn-debug.log* 28 -yarn-error.log* 29 -node_modules/ 30 -jspm_packages/ 31 -typings/ 32 -.npm 33 -dist/ 34 - 35 -## db ## 36 -db.sqlite3 37 -db.db 19 +# Packages 20 +*.7z 21 +*.rar 22 +*.tar 23 +*.bz2 38 24 39 -## DotEnv ## 40 -.env 41 -.dotenv 42 -.env.sh 25 +# Compiled siurce 26 +*.so 27 +*.out 28 +*.bin
D
script/change-shell.sh
··· 1 -#!/bin/sh 2 - 3 -case "$1" in 4 - "help"|"--help") 5 - echo "bash Change default shell to bash" 6 - echo "zsh Change default shell to zsh" 7 - echo "fish Change default shell to fish" 8 - ;; 9 - bash) chsh -s $(whitch bash) ;; 10 - zsh) chsh -s $(whitch zsh) ;; 11 - fish) chsh -s $(whitch fish) ;; 12 -esac
A
script/mfet.sh
··· 1 +#!/bin/sh 2 +#### Info #### 3 +shell=$(echo $SHELL | sed -e 's|/bin/||g') 4 +os=$(lsb_release -sdr | sed -e 's|"||g') 5 +host=$(hostname) 6 +user=$(echo $USER) 7 +kernal=$(uname -r) 8 +editor=$(echo $EDITOR) 9 +uptime=$(uptime -p|sed 's|up ||g'|sed 's|,||g') 10 + 11 +### Colors ### 12 +rest="\e[0m" 13 +bold="\e[1m" 14 +blue="\e[34m" 15 +grey="\e[90m" 16 + 17 +#### Code #### 18 +echo -e " ${blue}${user}${rest}${grey}@${blue}${host}" 19 +echo -e " ${blue} os ${rest}${grey}~ ${rest}${os}" 20 +echo -e " ${blue} sh ${rest}${grey}~ ${rest}${shell}" 21 +echo -e " ${blue}kernal ${rest}${grey}~ ${rest}${kernal}" 22 +echo -e " ${blue}editor ${rest}${grey}~ ${rest}${editor}" 23 +echo -e " ${blue}uptime ${rest}${grey}~ ${rest}${uptime}"
A
tmux.conf
··· 1 +set -g default-terminal "screen-256color" 2 +set-option -sa terminal-overrides ",*:Tc" 3 +#set-option -sa terminal-overrides ",xterm-kitty:RGB" 4 +set -g history-limit 1000 5 +set -g base-index 1 6 +set -g pane-base-index 1 7 +set -g mouse on 8 +setw -g mouse on 9 + 10 +# Keybindongs 11 +set -g xterm-keys no 12 +set -g prefix C-a 13 +bind -n End send-key C-e 14 +bind -n Home send-key C-a 15 +bind-key -n Home send Escape "OH" 16 +bind-key -n End send Escape "OF" 17 +bind r source-file ~/.tmux.conf \; display 'Reloaded tmux config' 18 +bind - split-window -v 19 +bind _ split-window -h 20 +bind Tab last-window 21 +bind -r h select-pane -L 22 +bind -r j select-pane -D 23 +bind -r k select-pane -U 24 +bind -r l select-pane -R 25 +bind -r H resize-pane -L 2 26 +bind -r J resize-pane -D 2 27 +bind -r K resize-pane -U 2 28 +bind -r L resize-pane -R 2 29 + 30 +# Status bar 31 +set -g status-bg black 32 +set -g status-fg white 33 +set -g status-left ' ' 34 +set -g status-right ' #{?client_prefix,*,} #S ' 35 +set -g status-style fg=colour110 36 +set -g pane-border-style fg=colour240 37 +set -g pane-active-border-style fg=colour39 38 +set-window-option -g window-status-current-style fg=colour39
D
vimrc
··· 1 -call plug#begin('~/.vim/plugged') 2 - Plug 'jiangmiao/auto-pairs' 3 - Plug 'ayu-theme/ayu-vim' 4 -call plug#end() 5 - 6 -set nocompatible " be iMproved 7 -set laststatus=2 8 - 9 -set number " Number line 10 -"set relativenumber " Number line 11 - 12 -syntax on " Support syntax 13 -set ruler " Cursor position 14 -set t_Co=256 " Enable 265 colors 15 - 16 -set mouse=a " Mouse support 17 -set mousehide " Mouse hide 18 - 19 -set encoding=utf-8 " Use utf-8 encoding 20 - 21 -set fileencodings=utf8,cp1251 22 - 23 -set cursorline " The line with the cursor will be highlighted 24 -set wrap " Line wrappingv 25 -set linebreak " Line wrappingv 26 - 27 -set nobackup " Disable backup files 28 -set noswapfile " Disable *.swp files 29 -set history=50 " History size 1000 edits 30 -set autoread " Auto reade file for edit 31 - 32 -set showmode 33 -set showcmd 34 - 35 -" Tab 36 -set tabstop=4 " Tab size 4 37 -set shiftwidth=4 " Tab size 4 38 -set softtabstop=4 " Tab size 4 39 -set expandtab " Tab consist of space 40 -set smarttab 41 -set autoindent 42 - 43 -" Search 44 -set incsearch " Highlighted 45 -set ignorecase " Highlighted 46 -set smartcase " Smart Rigger 47 - 48 -" Buffers 49 -set hidden 50 -set smartindent 51 - 52 -set visualbell t_vb= " Mute Vim 53 - 54 -" ColoerCheme 55 -set termguicolors 56 -set background=dark 57 -let ayucolor="mirage" 58 -colorscheme ayu 59 - 60 -"""""""""" 61 -" MAPING " 62 -"""""""""" 63 -let mapleader=',' " Leader key 64 - 65 -" Smart way to move between windows 66 -map <C-j> <C-W>j 67 -map <C-k> <C-W>k 68 -map <C-h> <C-W>h 69 -map <C-l> <C-W>l 70 - 71 -" Tabs 72 -map <leader>tn :tabnew<CR> " Create new tab 73 -map <leader>tc :tabclose<CR> " Tab kill 74 -map <leader>1 :tabn 1<CR> " Change tab 75 -map <leader>2 :tabn 2<CR> " Change tab 76 -map <leader>3 :tabn 3<CR> " Change tab 77 -map <leader>4 :tabn 4<CR> " Change tab 78 -map <leader>5 :tabn 5<CR> " Change tab 79 -map <leader>6 :tabn 6<CR> " Change tab 80 -map <leader>7 :tabn 7<CR> " Change tab 81 -map <leader>8 :tabn 8<CR> " Change tab 82 -map <leader>9 :tabn 9<CR> " Change tab 83 - 84 -" Bufer 85 -nnoremap <C-N> :bnext<CR> 86 -nnoremap <C-P> :bprev<CR> 87 - 88 -"""""""" 89 -" GVIM " 90 -"""""""" 91 -if has("gui_running") 92 - set guioptions -=m 93 - set guioptions -=T 94 - map <leader>p "+gP " Past text in buffer 95 - map <C-Tab> :tabnext<cr> " Change tab 96 - map <C-S-Tab> :tabprev<cr> " Change tab 97 -endif
M
zshrc
··· 1 1 export ZSH="/home/sasha/.oh-my-zsh" 2 2 source ~/.env 3 +source ~/.profile 3 4 4 5 5 6 ### Oh my zsh ### ··· 7 8 #CASE_SENSITIVE="true" # Use case-sensitive completion. 8 9 #HYPHEN_INSENSITIVE="true" # Case-sensitive completion must be off. 9 10 #DISABLE_AUTO_UPDATE="true" # Disable bi-weekly auto-update checks. 10 -DISABLE_UPDATE_PROMPT="true" # Automatically update without prompting. 11 -export UPDATE_ZSH_DAYS=13 # Change how often to auto-update. 11 +#DISABLE_UPDATE_PROMPT="true" # Automatically update without prompting. 12 12 #DISABLE_MAGIC_FUNCTIONS="true" # If pasting URLs and other text is messed up. 13 13 #DISABLE_LS_COLORS="true" # Disable colors in ls. 14 -#DISABLE_AUTO_TITLE="true" # Disable auto-setting terminal title. 14 +#DISABLE_AUTO_TITLE="true" # Disable auto-setting terminal title. 15 15 #ENABLE_CORRECTION="true" # Enable command auto-correction. 16 16 #COMPLETION_WAITING_DOTS="true" # Display red dots whilst waiting for completion. 17 +export UPDATE_ZSH_DAYS=13 # Change how often to auto-update. 17 18 export LANG=en_US.UTF-8 # Set locale 18 19 19 -plugins=(pip python sudo git taskwarrior) 20 +plugins=(pip python sudo heroku git taskwarrior) 20 21 source $ZSH/oh-my-zsh.sh 21 22 23 + 24 +### Variables ### 25 +export EDITOR="nvim" 26 +export VISUAL="nvim" 27 + 22 28 ### Aliases ### 23 29 alias cls="clear" 24 -alias :q 30 +alias :q="exit" 31 +alias tmux="tmux -2" 25 32 26 33 alias ..="cd .." 27 34 alias ...="cd ../.."