diff --git a/README.md b/README.md index b0b32b1..8a6578b 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,8 @@ __walpappers: [Dropbox](https://www.dropbox.com/s/yx7tsplowtyih7f/walpapper.zip? curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh) && chsh -s $(which zsh) git clone https://github.com/Smirnov-O/zsh-simple-colors ~/.oh-my-zsh/custom/themes -sudo pacman -S i3-wm polybar dunst rofi picom feh redshift \ -kitty ranger htop bash zsh git vim neofetch scrot clipboard yay \ +sudo pacman -S i3-wm bspwm polybar dunst rofi picom feh nitrogen redshift task \ +kitty ranger htop bash zsh git vim neofetch scrot clipboard yay bash zsh \ ttf-font-awesome ttf-jetbrains-mono ttf-hack yay -S ttf-weather-icons ~~~ @@ -16,17 +16,20 @@ yay -S ttf-weather-icons ### Packages | Name | Description | | ------------------------------------------------------------------------ | ----------------- | -| `i3-wm` | Window Manager | +| `i3-wm`, `bspwm` | Window Manager | | `polybar` | Panel | | `dunst` | Notify manager | | `rofi` | Program loncher | | `picom` | Compositor | -| `feh` | Setting wallpaper | +| `qutebrowser` | Browser | +| `feh`, `nitrogen` | Setting wallpaper | | `kitty` | Terminal | | `ranger` | File manager | | `htop` | System motitor | | `yay` | AUR helper | | `redshift` | Night light | +| `zsh`, `bash` | Shell | +| `task` | Task manager | | `ttf-font-awesome`, `ttf-jetbrains-mono`, `ttf-weather-icons` `ttf-hack` | Font | | `arc-gtk-theme` | GTK theme | | `papirus-icon-theme` | Icon theme | diff --git a/bashrc b/bashrc index bdc26fd..26482fe 100644 --- a/bashrc +++ b/bashrc @@ -1,9 +1,9 @@ -export VISUAL="vim" [[ $- != *i* ]] && return -alias ls='ls --color=auto' PS1='\e[36m\w\e[39m ' + +source ~/.profile + +alias ls='ls --color=auto' alias cls='clear' +alias ..='cd ..' alias py='python3' -alias ipy='ipython3' -alias py3='python3' -alias ipy3='ipython3' diff --git a/config/bspwm/bspwmrc b/config/bspwm/bspwmrc new file mode 100755 index 0000000..9232f4f --- /dev/null +++ b/config/bspwm/bspwmrc @@ -0,0 +1,40 @@ +#! /bin/sh + +###### Auto start ##### +setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" & +sxhkd & +nmcli radio wifi on; nmcli device wifi connect Pechenka password 24032006 name net & +picom -b & +polybar test & +feh --randomize --bg-scale ~/Изображения/Walpapper/* & +# redshift-gtk & + + +###### BSPWM ##### +bspc monitor -d I II III IV V VI VII VIII IX X + +#bspc config border_radius 8 +bspc config border_width 2 +bspc config window_gap 10 +bspc config top_padding 20 +bspc config bottom_padding 0 +bspc config left_padding 0 +bspc config right_padding 0 +bspc config single_monocle false +bspc config click_to_focus true +bspc config split_ratio 0.50 +bspc config borderless_monocle true +bspc config gapless_monocle true +bspc config focus_by_distance true +bspc config focus_follows_pointer true +bspc config history_aware_focus true +bspc config remove_disabled_monitors true +bspc config merge_overlapping_monitors true +bspc config pointer_modifier mod4 +bspc config pointer_action1 move +bspc config pointer_action2 resize_side +bspc config pointer_action3 resize_corner + +####### Rules ###### +bspc rule -a Thunar desktop='^4' +bspc rule -a Qutebrowser desktop='^2' diff --git a/config/dunst/dunstrc b/config/dunst/dunstrc index 7ee06d2..2929cbf 100644 --- a/config/dunst/dunstrc +++ b/config/dunst/dunstrc @@ -30,12 +30,6 @@ width = 0 color = "#000000" -[shortcuts] - close = mod4+m - close_all = mod4+shift+m - history = mod4+n - context = mod4+shift+i - [urgency_low] background = "#002B36" foreground = "#dfdfdf" @@ -49,4 +43,4 @@ [urgency_critical] background = "#900000" foreground = "#ffffff" - timeout = 0 \ No newline at end of file + timeout = 0 diff --git a/config/htop/htoprc b/config/htop/htoprc index cb458cb..8ddf127 100644 --- a/config/htop/htoprc +++ b/config/htop/htoprc @@ -1,3 +1,5 @@ +# Beware! This file is rewritten by htop when settings are changed in the interface. +# The parser is also very primitive, and not human-friendly. fields=0 48 17 18 38 39 40 2 46 47 49 1 sort_key=46 sort_direction=1 @@ -25,4 +27,3 @@ left_meters=AllCPUs Memory Swap left_meter_modes=1 1 1 right_meters=Clock Uptime Tasks LoadAverage right_meter_modes=2 2 2 2 -vim_mode=1 diff --git a/config/i3/config b/config/i3/config index 291047a..cae15ea 100644 --- a/config/i3/config +++ b/config/i3/config @@ -1,12 +1,17 @@ ############# General ############# # Bind $MOD(super) key set $mod Mod4 +set $alt Mod1 +floating_modifier $mod + # Font font monospace 10 font pango:JetBrains Mono 10 + # Disable window title default_border pixel new_float pixel + # Borders hide_edge_borders smart @@ -14,24 +19,33 @@ hide_edge_borders smart exec --no-startup-id exec picom -b exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect password name net exec --no-startup-id exec redshift-gtk -exec --no-startup-id exec setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" +exec --no-startup-id exec nitrogen +exec --no-startup-id exec setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" exec --no-startup-id exec org.telegram.desktop -exec --no-startup-id exec discord -exec --no-startup-id exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 -exec --no-startup-id ecec clipmenud +#exec --no-startup-id exec discord +exec_always --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 +exec_always --no-startup-id $HOME/.config/polybar/launch.sh ############ Key bindings ######### -# Terminal + +# Open terminal bindsym $mod+Return exec kitty -bindsym ctrl+Mod1+t exec kitty +bindsym $mod+ctrl+Return exec kitty -T=Terminal-floating + +# Window switcher +bindsym $mod+Tab exec "rofi -show window -show-icons" +bindsym $alt+Tab exec "rofi -show window -show-icons" # Kill focus window bindsym $mod+q kill -bindsym Mod1+F4 kill # Program/Exit louncher bindsym $mod+space exec "rofi -show drun -show cobi -show-icons" -bindsym $mod+Escape exec "rofi -show power-menu -show-icons -width 30 -lines 6 -modi power-menu:~/.config/rofi/rofi-power-menu" +bindsym $mod+Escape exec "rofi -show power-menu -width 30 -lines 6 -modi power-menu:~/.config/rofi/rofi-power-menu" + +bindsym $mod+$alt+u exec ~/.script/dmenu/dmenu-config-edit.sh +bindsym $mod+$alt+i exec "rofi-keepassxc -d ~/Документы/text.kdbx" + # Restart i3wm bindsym $mod+Shift+r restart @@ -42,16 +56,19 @@ bindsym --release Shift+Print exec "scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-% # Clipboard menu bindsym $mod+c exec "CM_LAUNCHER=rofi clipmenu" +# Volume +bindsym $mod+plus exec "pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo +5%" +bindsym $mod+minus exec "pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo -5%" +bindsym $mod+Shift+minus exec "pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo toggle" + # Load program bindsym $mod+F1 exec kitty -T=Ranger_FM ranger -bindsym $mod+F2 exec chromium +bindsym $mod+F2 exec qutebrowser bindsym $mod+F3 exec subl bindsym $mod+F4 exec notable # Floating window -floating_modifier $mod bindsym $mod+Shift+space floating toggle -bindsym $mod+Shift+f focus mode_toggle # Fullscreen mode bindsym $mod+f fullscreen toggle @@ -73,45 +90,46 @@ bindsym $mod+e layout toggle split bindsym $mod+Shift+grave move scratchpad bindsym $mod+grave scratchpad show, floating disable -# Move workspace on open window -for_window [urgent=["lastet"]] focus -focus_on_window_activation focus - ######### Window preferens ######## -assign [class="(?i)kitty"] $ws1 -assign [class="(?i)chromium|firefox"] $ws2 -assign [class="(?i)subl|code|typora"] $ws3 -assign [class="(?i)thunar"] $ws4 -assign [title="Notable|Simplenote"] $ws5 -assign [class="(?i)telegram|discord"] $ws6 +#assign [class="(?i)kitty"] $ws1 +#assign [class="(?i)chromium|firefox|qutebrowser"] $ws2 +#assign [class="(?i)subl|code|emacs"] $ws3 +#assign [class="(?i)thunar"] $ws4 +#assign [title="Notable|Simplenote"] $ws5 +assign [class="(?i)telegram|discord|viber"] $ws6 assign [title="KeePassXC"] $ws7 -for_window [title="Ranger_FM"] move to workspace $ws4 -for_window [class="Spotify"] move to workspace $ws10 +#for_window [title="Ranger_FM"] move to workspace $ws4 +#for_window [class="Spotify"] move to workspace $ws10 +for_window [class="(?i)mousepad"] floating enable +for_window [title="Terminal-floating"] floating enable +for_window [class="(?i)lxappearance|qt5ct"] floating enable +for_window [class="(?i)nitrogen"] floating enable +#for_window [class=""] +for_window [urgent="lastet"] focus +#focus_on_window_activation focus + +############## Gaps ############### +gaps inner 4 +#smart_gaps on ##### Change containet focus ###### -# Vim like keys container bindsym $mod+j focus left -bindsym $mod+k focus down -bindsym $mod+l focus up -bindsym $mod+semicolon focus right - -# Alternatively cursor keys bindsym $mod+Left focus left +bindsym $mod+k focus down bindsym $mod+Down focus down +bindsym $mod+l focus up bindsym $mod+Up focus up +bindsym $mod+semicolon focus right bindsym $mod+Right focus right ##### Move focused container ###### -# Vim like keys bindsym $mod+Shift+j move left -bindsym $mod+Shift+k move down -bindsym $mod+Shift+l move up -bindsym $mod+Shift+colon move right - -# Alternatively cursor keys bindsym $mod+Shift+Left move left +bindsym $mod+Shift+k move down bindsym $mod+Shift+Down move down +bindsym $mod+Shift+l move up bindsym $mod+Shift+Up move up +bindsym $mod+Shift+colon move right bindsym $mod+Shift+Right move right ############ Workspaces ########### @@ -126,7 +144,6 @@ set $ws8 "8" set $ws9 "9" set $ws10 "10" -# Switch workspace bindsym $mod+1 workspace $ws1 bindsym $mod+2 workspace $ws2 bindsym $mod+3 workspace $ws3 @@ -138,7 +155,6 @@ bindsym $mod+8 workspace $ws8 bindsym $mod+9 workspace $ws9 bindsym $mod+0 workspace $ws10 -# Move focused container to workspace bindsym $mod+Shift+1 move container to workspace $ws1 bindsym $mod+Shift+2 move container to workspace $ws2 bindsym $mod+Shift+3 move container to workspace $ws3 @@ -151,30 +167,38 @@ bindsym $mod+Shift+9 move container to workspace $ws9 bindsym $mod+Shift+0 move container to workspace $ws10 ########### Resize mode ########### +bindsym $mod+$alt+r mode "resize" +bindsym $mod+$alt+g mode "gaps" + mode "resize" { bindsym j resize shrink width 10 px or 10 ppt bindsym k resize grow height 10 px or 10 ppt bindsym l resize shrink height 10 px or 10 ppt bindsym semicolon resize grow width 10 px or 10 ppt - # same bindings, but for the arrow keys bindsym Left resize shrink width 10 px or 10 ppt bindsym Down resize grow height 10 px or 10 ppt bindsym Up resize shrink height 10 px or 10 ppt bindsym Right resize grow width 10 px or 10 ppt - # back to normal: Enter or Escape or $mod+r bindsym Return mode "default" bindsym Escape mode "default" - bindsym $mod+r mode "default" } -bindsym $mod+r mode "resize" +mode "gaps" { + bindsym plus gaps inner current plus 2 + bindsym minus gaps inner current minus 2 + bindsym 0 gaps inner current set 0 -############### Bar ############### -exec_always --no-startup-id $HOME/.config/polybar/launch.sh + bindsym Shift+plus gaps inner all plus 4 + bindsym Shift+minus gaps inner all minus 4 + bindsym Shift+0 gaps inner all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} ############## Colors ############# -# class border backgr text indicator child_border +# Class Border Backgr Text Indicator Child_border client.focused #268bd2 #268bd2 #ffffff #268bd2 #268bd2 client.focused_inactive #000000 #000000 #ffffff #000000 #000000 client.unfocused #000000 #000000 #888888 #000000 #000000 diff --git a/config/nvim/init.vim b/config/nvim/init.vim new file mode 100644 index 0000000..0803ea6 --- /dev/null +++ b/config/nvim/init.vim @@ -0,0 +1,111 @@ +call plug#begin('~/.vim/plugged') + Plug 'overcache/NeoSolarized' + Plug 'ryanoasis/vim-devicons' + Plug 'itchyny/lightline.vim' + + " File manger & seacher + Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } + Plug 'kien/ctrlp.vim', { 'on': 'CtrlP' } + + " Completion + Plug 'jiangmiao/auto-pairs' + Plug 'neoclide/coc.nvim', {'branch': 'release'} + + " Language support + Plug 'pangloss/vim-javascript', { 'for': 'javascript' } + Plug 'PotatoesMaster/i3-vim-syntax' + Plug 'vim-python/python-syntax', { 'for': 'python' } + Plug 'mattn/emmet-vim', { 'for': 'html' } + Plug 'ap/vim-css-color' +call plug#end() + +set number +set relativenumber + +syntax on +set ruler +set t_Co=256 + +set mouse=a +set mousehide + +set encoding=utf-8 +set fileencodings=utf8,cp1251 + +set cursorline + +set nowrap +set nolinebreak + +set nobackup +set noswapfile +set history=100 +set autoread + +set showmode +set showcmd + +set tabstop=4 +set shiftwidth=4 +set softtabstop=4 +set expandtab +set autoindent + +set incsearch +set ignorecase +set smartcase + +set hidden +set smartindent + +set visualbell t_vb= + +set termguicolors +set background=dark +colorscheme NeoSolarized + +"""" Plugins """" +let g:lightline = { +\ 'colorscheme': 'selenized_dark', +\ 'active': { +\ 'left': [ [ 'mode', 'paste' ], +\ [ 'readonly', 'modified', 'gitbranch' ] ], +\ 'right': [ [ 'lineinfo' ], +\ [ 'percent' ], +\ [ 'filename', 'fileencoding', 'filetype' ] ] +\ }, } + +let g:NERDTreeWinPos="right" +let NERDTreeMinimalUI = 1 +let NERDTreeShowLineNumbers=0 + +inoremap pumvisible() ? "\" : "\" +inoremap pumvisible() ? "\" : "\" + +"""" Maping """" +let mapleader="," +map j +map k +map h +map l + +map :NERDTreeToggle + +noremap :tabnext +noremap :tabprev + +noremap :tabnew +noremap :tabnew +noremap :tabclose +noremap 1 :tabn 1 +noremap 2 :tabn 2 +noremap 3 :tabn 3 +noremap 4 :tabn 4 +noremap 5 :tabn 5 +noremap 6 :tabn 6 +noremap 7 :tabn 7 +noremap 8 :tabn 8 +noremap 9 :tabn 9 + +noremap n :bnext +noremap p :bprev diff --git a/config/picom.conf b/config/picom.conf index 11f5fe2..1ded9d6 100644 --- a/config/picom.conf +++ b/config/picom.conf @@ -6,9 +6,7 @@ shadow = true; shadow-radius = 11; shadow-offset-x = -7; shadow-offset-y = -7; -shadow-exclude = [ - "name = 'Notification'" -]; +shadow-exclude = []; ############ Fading ########### @@ -18,15 +16,19 @@ fade-out-step = 0.03; ##### Transparency/Opacity #### -inactive-opacity = 0.8; +#inactive-opacity = 0.8; +inactive-opacity = 1; frame-opacity = 0.7; inactive-opacity-override = false; +#inactive-opacity-override = true; focus-exclude = []; ##### Background-Blurring ##### blur-kern = "3x3box"; -blur-background-exclude = [ "window_type = 'desktop'" ]; +blur-background-exclude = [ + "window_type = 'desktop'" +]; ####### General Settings ###### @@ -43,8 +45,7 @@ detect-client-leader = true; glx-no-rebind-pixmap = true; use-damage = true; log-level = "warn"; -wintypes: -{ +wintypes: { tooltip = { fade = true; shadow = false; opacity = 1; focus = true; full-shadow = false; }; menu = { fade = true; shadow = false; }; popup_menu = { fade = true; shadow = false; }; diff --git a/config/polybar/config b/config/polybar/config index 1cb747b..794c7d9 100644 --- a/config/polybar/config +++ b/config/polybar/config @@ -2,30 +2,40 @@ pseudo-transparency = true [colors] -background = #002B36 -background-alt = #002236 -foreground = #dfdfdf -foreground-alt = #f0f0f0 -primary = #268bd2 -secondary = #218DC8 -alert = #268bd2 +; Solarized ======== +;background = #002B36 +;foreground = #dfdfdf +;secondary = #073642 +;alert = #268bd2 + +; Nord ============ +background = #2E3440 +foreground = #ECEFF4 +secondary = #434C5E +alert = #88C0D0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -[bar/bar] -;monitor = ${env:MONITOR:HDMI-1} +[bar/i3bar] width = 100% -height = 25 -fixed-center = true -locale = en_US.UTF-8 +height = 20 + +fixed-center = true +;override-redirect = true background = ${colors.background} foreground = ${colors.foreground} line-size = 2 -line-color = #f00 +line-color = #000000 + +padding-left = 2 +padding-right = 2 + +radius = 6.0 +border-left-size = 0.2% +border-top-size = 0.2% +border-right-size = 0.2% -padding-left = 0 -padding-right = 0 module-margin-left = 1 module-margin-right = 1 @@ -33,26 +43,17 @@ font-0 = Iosevka Nerd Font:style=Medium:size=8;3 font-1 = FontAwesome5Free:style=Solid:size=7.5;2.5 font-2 = Weather Icons:size=7;2 -;; Modules position ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::; -modules-left = i3 sp2 weather updates-pacman -modules-center = -modules-right = pulseaudio microphone backlight keyboard clipmenu wifi-signal date time sp2 -tray-position = right -tray-padding = 2 -tray-detached = false +modules-left = i3 weather title +modules-right = keyboard pulseaudio backlight wifi-signal time +tray-position = center + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [settings] screenchange-reload = true - [global/wm] -margin-top = 5 -margin-bottom = 5 -cursor-click = pointer -cursor-scroll = ns-resize wm-restack = i3 - [module/i3] type = internal/i3 format = @@ -60,13 +61,13 @@ index-sort = true wrapping-scroll = false label-mode-padding = 1 label-mode-foreground = #000 -label-mode-background = ${colors.primary} +label-mode-background = ${colors.secondary} label-focused = %icon% -label-focused-background = 073642 +label-focused-background = ${colors.secondary} label-focused-foreground = ${colors.foreground} label-focused-padding = 1 -label-focused-underline = 268bd2 +label-focused-underline = ${colors.alert} label-unfocused = %icon% label-unfocused-foreground = ${colors.foreground} @@ -128,9 +129,9 @@ type = internal/fs interval = 25 mount-0 = / mount-1 = /home -label-mounted = %{F#c38611} %mountpoint%: %percentage_used%% +label-mounted =  %mountpoint%: %percentage_used%% label-unmounted = %mountpoint% not mounted -label-unmounted-foreground = ${colors.foreground-alt} +label-unmounted-foreground = ${colors.foreground} [module/pulseaudio] @@ -151,15 +152,15 @@ ramp-volume-4 =  type = internal/cpu interval = 2 format-prefix = " " -format-prefix-foreground = ${colors.foreground-alt} -label = %{F#1ecb0b} CPU %percentage%% +format-prefix-foreground = ${colors.foreground} +label =  CPU %percentage%% [module/memory] type = internal/memory interval = 2 format-prefix = " " -label = %{F#8d61ff}  MEM %percentage_used%% +label =  MEM %percentage_used%% [module/weather] @@ -174,8 +175,8 @@ type = custom/script interval = 1 format =