13 files changed,
405 insertions(+),
129 deletions(-)
Author:
Smirnov Olexandr
ss2316544@gmail.com
Committed at:
2021-01-06 17:54:15 +0200
Parent:
13c6216
A
config/dwm/README.md
··· 1 +# DWM 2 + 3 + 4 +------------------------ 5 + 6 + 7 +### Install 8 +~~~bash 9 +git clone https://git.suckless.org/dwm ~/.config/dwm 10 +sudo cp ~/.config/dwm/dwm.desktop /usr/share/xsessions 11 +cd ~/.config/dwm 12 +sudo make clean install 13 +~~~~
A
config/dwm/config.def.h
··· 1 +static const unsigned int borderpx = 1; // border pixel of windows 2 +static const unsigned int snap = 32; // snap pixel 3 +static const int showbar = 1; // 0 means no bar 4 +static const int topbar = 1; // 0 means bottom bar 5 +static const char *fonts[] = { "monospace:size=10" }; 6 +static const char col_gray1[] = "#262A2B"; 7 +static const char col_gray2[] = "#262A2B"; 8 +static const char col_gray3[] = "#CED4DA"; 9 +static const char col_gray4[] = "#FFFFFF"; 10 +static const char col_cyan[] = "#008DCD"; 11 +static const char *colors[][3] = { 12 + /* fg bg border */ 13 + [SchemeNorm] = { col_gray3, col_gray1, col_gray2 }, 14 + [SchemeSel] = { col_gray4, col_cyan, col_cyan }, 15 +}; 16 + 17 +// Workspaces names 18 +static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; 19 + 20 +// Rules 21 +static const Rule rules[] = { 22 + /* class instance title tags mask isfloating monitor */ 23 + { "trayer", NULL, NULL, ~0, True, -1 }, 24 + { "Gimp", NULL, NULL, 0, 1, -1 }, 25 + { "Firefox", NULL, NULL, 1 << 8, 0, -1 }, 26 +}; 27 + 28 +// Autostart 29 +static const char *const autostart[] = { 30 + "./.config/dwm/autostart.sh", NULL, 31 + "./.script/dwmbar.sh", NULL, 32 + NULL 33 +}; 34 + 35 +// Layout 36 +static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ 37 +static const int nmaster = 1; /* number of clients in master area */ 38 +static const int resizehints = 1; /* 1 means respect size hints in tiled resizals */ 39 + 40 +static const Layout layouts[] = { 41 + { "[]=", tile }, 42 + { "><>", NULL }, 43 + { "[M]", monocle }, 44 +}; 45 + 46 +// Key definitions 47 +#define MODKEY Mod4Mask 48 +#define TAGKEYS(KEY,TAG) \ 49 + { MODKEY, KEY, view, {.ui = 1 << TAG} }, \ 50 + { MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \ 51 + { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \ 52 + { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} }, 53 +#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } 54 + 55 +// Commands 56 +static char dmenumon[2] = "0"; 57 +static const char *dmenucmd[] = { "dmenu_run", NULL }; 58 +static const char *launchercmd[] = { "rofi", "-location", "2", "-show", "drun", NULL }; 59 +static const char *passmenucmd[] = { "passmenu", "-h", "24", "-p", "Passwords", NULL }; 60 +static const char *termcmd[] = { "alacritty", NULL }; 61 + 62 +// Keyboards binds 63 +static Key keys[] = { 64 + /* modifier key function argument */ 65 + { MODKEY|ShiftMask, XK_Return, spawn, {.v = launchercmd } }, // Program menu 66 + { MODKEY, XK_Return, spawn, {.v = termcmd } }, // Terminal 67 + { MODKEY, XK_q, killclient, {0} }, // Kill window 68 + { MODKEY, XK_b, togglebar, {0} }, // Toggle status bar 69 + { MODKEY, XK_j, focusstack, {.i = +1 } }, 70 + { MODKEY, XK_k, focusstack, {.i = -1 } }, 71 + { MODKEY, XK_i, incnmaster, {.i = +1 } }, 72 + { MODKEY, XK_d, incnmaster, {.i = -1 } }, 73 + { MODKEY, XK_h, setmfact, {.f = -0.05} }, 74 + { MODKEY, XK_l, setmfact, {.f = +0.05} }, 75 + { MODKEY, XK_Return, zoom, {0} }, 76 +// { MODKEY, XK_Tab, view, {0} }, 77 + { MODKEY, XK_Tab, setlayout, {0} }, 78 + { MODKEY|ShiftMask, XK_Tab, togglefloating, {0} }, 79 + { MODKEY, XK_comma, focusmon, {.i = -1 } }, 80 + { MODKEY, XK_period, focusmon, {.i = +1 } }, 81 + { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, 82 + { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, 83 + 84 + // Menus 85 + { MODKEY|ControlMask, XK_i, spawn, {.v = passmenucmd} }, 86 + { MODKEY|ControlMask, XK_u, spawn, SHCMD("~/.script/dmenu/dmenu-config-edit.sh") }, 87 + { MODKEY, XK_Escape, spawn, SHCMD("~/.script/dmenu/dmenu-power.sh") }, 88 + 89 + // Volume 90 + { MODKEY, XK_minus, spawn, SHCMD("amixer sset 'Master' 2%-") }, 91 + { MODKEY, XK_equal, spawn, SHCMD("amixer sset 'Master' 2%+") }, 92 + { MODKEY|ShiftMask, XK_minus, spawn, SHCMD("amixer sset 'Master' toggle") }, 93 + 94 + // Workspaces 95 + TAGKEYS( XK_1, 0) 96 + TAGKEYS( XK_2, 1) 97 + TAGKEYS( XK_3, 2) 98 + TAGKEYS( XK_4, 3) 99 + TAGKEYS( XK_5, 4) 100 + TAGKEYS( XK_6, 5) 101 + TAGKEYS( XK_7, 6) 102 + TAGKEYS( XK_8, 7) 103 + TAGKEYS( XK_9, 8) 104 + { MODKEY, XK_0, view, {.ui = ~0 } }, 105 + { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, 106 +}; 107 + 108 +// Mouse binds 109 +static Button buttons[] = { 110 + // click event mask button function argument 111 + { ClkLtSymbol, 0, Button1, setlayout, {0} }, 112 + { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} }, 113 + { ClkWinTitle, 0, Button2, zoom, {0} }, 114 + { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, 115 + { ClkClientWin, MODKEY, Button1, movemouse, {0} }, 116 + { ClkClientWin, MODKEY, Button2, togglefloating, {0} }, 117 + { ClkClientWin, MODKEY, Button3, resizemouse, {0} }, 118 + { ClkTagBar, 0, Button1, view, {0} }, 119 + { ClkTagBar, 0, Button3, toggleview, {0} }, 120 + { ClkTagBar, MODKEY, Button1, tag, {0} }, 121 + { ClkTagBar, MODKEY, Button3, toggletag, {0} }, 122 +};
A
config/dwm/cool-autostart.diff
··· 1 +diff --git a/config.def.h b/config.def.h 2 +index 1c0b587..ed056a4 100644 3 +--- a/config.def.h 4 ++++ b/config.def.h 5 +@@ -18,6 +18,11 @@ static const char *colors[][3] = { 6 + [SchemeSel] = { col_gray4, col_cyan, col_cyan }, 7 + }; 8 + 9 ++static const char *const autostart[] = { 10 ++ "st", NULL, 11 ++ NULL /* terminate */ 12 ++}; 13 ++ 14 + /* tagging */ 15 + static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; 16 + 17 +diff --git a/dwm.c b/dwm.c 18 +index 9fd0286..1facd56 100644 19 +--- a/dwm.c 20 ++++ b/dwm.c 21 +@@ -234,6 +234,7 @@ static int xerror(Display *dpy, XErrorEvent *ee); 22 + static int xerrordummy(Display *dpy, XErrorEvent *ee); 23 + static int xerrorstart(Display *dpy, XErrorEvent *ee); 24 + static void zoom(const Arg *arg); 25 ++static void autostart_exec(void); 26 + 27 + /* variables */ 28 + static const char broken[] = "broken"; 29 +@@ -275,6 +276,34 @@ static Window root, wmcheckwin; 30 + /* compile-time check if all tags fit into an unsigned int bit array. */ 31 + struct NumTags { char limitexceeded[LENGTH(tags) > 31 ? -1 : 1]; }; 32 + 33 ++/* dwm will keep pid's of processes from autostart array and kill them at quit */ 34 ++static pid_t *autostart_pids; 35 ++static size_t autostart_len; 36 ++ 37 ++/* execute command from autostart array */ 38 ++static void 39 ++autostart_exec() { 40 ++ const char *const *p; 41 ++ size_t i = 0; 42 ++ 43 ++ /* count entries */ 44 ++ for (p = autostart; *p; autostart_len++, p++) 45 ++ while (*++p); 46 ++ 47 ++ autostart_pids = malloc(autostart_len * sizeof(pid_t)); 48 ++ for (p = autostart; *p; i++, p++) { 49 ++ if ((autostart_pids[i] = fork()) == 0) { 50 ++ setsid(); 51 ++ execvp(*p, (char *const *)p); 52 ++ fprintf(stderr, "dwm: execvp %s\n", *p); 53 ++ perror(" failed"); 54 ++ _exit(EXIT_FAILURE); 55 ++ } 56 ++ /* skip arguments */ 57 ++ while (*++p); 58 ++ } 59 ++} 60 ++ 61 + /* function implementations */ 62 + void 63 + applyrules(Client *c) 64 +@@ -1249,6 +1278,16 @@ propertynotify(XEvent *e) 65 + void 66 + quit(const Arg *arg) 67 + { 68 ++ size_t i; 69 ++ 70 ++ /* kill child processes */ 71 ++ for (i = 0; i < autostart_len; i++) { 72 ++ if (0 < autostart_pids[i]) { 73 ++ kill(autostart_pids[i], SIGTERM); 74 ++ waitpid(autostart_pids[i], NULL, 0); 75 ++ } 76 ++ } 77 ++ 78 + running = 0; 79 + } 80 + 81 +@@ -1632,9 +1671,25 @@ showhide(Client *c) 82 + void 83 + sigchld(int unused) 84 + { 85 ++ pid_t pid; 86 ++ 87 + if (signal(SIGCHLD, sigchld) == SIG_ERR) 88 + die("can't install SIGCHLD handler:"); 89 +- while (0 < waitpid(-1, NULL, WNOHANG)); 90 ++ while (0 < (pid = waitpid(-1, NULL, WNOHANG))) { 91 ++ pid_t *p, *lim; 92 ++ 93 ++ if (!(p = autostart_pids)) 94 ++ continue; 95 ++ lim = &p[autostart_len]; 96 ++ 97 ++ for (; p < lim; p++) { 98 ++ if (*p == pid) { 99 ++ *p = -1; 100 ++ break; 101 ++ } 102 ++ } 103 ++ 104 ++ } 105 + } 106 + 107 + void 108 +@@ -2139,6 +2194,7 @@ main(int argc, char *argv[]) 109 + if (!(dpy = XOpenDisplay(NULL))) 110 + die("dwm: cannot open display"); 111 + checkotherwm(); 112 ++ autostart_exec(); 113 + setup(); 114 + #ifdef __OpenBSD__ 115 + if (pledge("stdio rpath proc exec", NULL) == -1) 116 +
M
config/i3/config
··· 19 19 set $terminal alacritty 20 20 set $browser firefox 21 21 set $filemanager thunar 22 +set $guieditor emacs 22 23 23 24 ############ Autostart ############ 24 25 exec --no-startup-id exec picom --experimental-backends -b ··· 41 42 # Restart i3wm 42 43 bindsym $mod+Control+r restart 43 44 45 +# Reload i3wm 46 +bindsym $mod+Shift+r reload 47 + 44 48 # Floating layout 45 49 bindsym $mod+Tab floating toggle 46 50 47 51 # Tab layout 48 -bindsym $mod+w layout tabbed 52 +bindsym $mod+Shift+w layout tabbed 49 53 50 54 # Split layout 51 -bindsym $mod+e layout toggle split 55 +bindsym $mod+Shift+e layout toggle split 52 56 53 57 # Splits 54 58 bindsym $mod+b split h ··· 71 75 bindsym $mod+Return exec $terminal 72 76 bindsym $mod+F2 exec $browser 73 77 bindsym $mod+f exec $filemanager 78 +bindsym $mod+d exec $guieditor 74 79 75 80 # Sceenshot 76 81 bindsym --release Print exec "scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png"
M
config/nvim/init.vim
··· 1 -filetype plugin on 2 1 call plug#begin('~/.vim/plugged') 3 - Plug 'nathanaelkane/vim-indent-guides' " Displaying indent levels 4 - Plug 'voldikss/vim-floaterm' " Terminal window 5 - Plug 'frazrepo/vim-rainbow' " Rainbow brackets 6 - Plug 'airblade/vim-gitgutter' " Git indicator 7 - Plug 'ap/vim-css-color' " CSS color preview 8 - Plug 'mhinz/vim-startify' " Start page 9 - Plug 'itchyny/lightline.vim' " Status line 10 - Plug 'vimwiki/vimwiki', {'on': 'VimwikiIndex'} " Notes manager in (n)vim 11 - 12 - " Color scheme 13 - Plug 'Smirnov-O/nten16.vim' 2 + Plug 'nathanaelkane/vim-indent-guides' " Displaying indent levels 3 + Plug 'itchyny/lightline.vim' " Status line 4 + Plug 'Smirnov-O/nten16.vim' " Color scheme 5 + Plug 'frazrepo/vim-rainbow' " Rainbow brackets 6 + Plug 'mhinz/vim-startify' " Start page 7 + Plug 'ap/vim-css-color' " CSS color preview 8 + Plug 'airblade/vim-gitgutter' " Git indicator 9 + Plug 'preservim/nerdcommenter' " Code commenter 14 10 15 11 " Project/file navigation 16 - Plug 'scrooloose/nerdtree', {'on': 'NERDTreeToggle'} 17 - Plug 'ryanoasis/vim-devicons', {'on': 'NERDTreeToggle'} 18 - Plug 'preservim/tagbar', {'on': 'TagbarToggle'} 19 - Plug 'kien/ctrlp.vim', {'on': 'CtrlP'} 20 - Plug 'easymotion/vim-easymotion' 12 + Plug 'scrooloose/nerdtree', {'on': 'NERDTreeToggle'} 13 + Plug 'preservim/tagbar', {'on': 'TagbarToggle'} 14 + Plug 'kien/ctrlp.vim', {'on': 'CtrlP'} 21 15 22 - " Completion 16 + " Completion & snippets 17 + Plug 'ycm-core/YouCompleteMe' 23 18 Plug 'jiangmiao/auto-pairs' 24 - Plug 'neoclide/coc.nvim', {'branch': 'release'} 19 + Plug 'SirVer/ultisnips' 25 20 26 - " Language support 27 - Plug 'iamcco/markdown-preview.nvim', {'for': 'markdown'} 28 - Plug 'dhruvasagar/vim-table-mode', {'for': 'markdown'} 21 + " Language syntax 29 22 Plug 'plasticboy/vim-markdown', {'for': 'markdown'} 23 + Plug 'dhruvasagar/vim-table-mode', {'for': 'markdown'} 24 + Plug 'xinhangliu/ficus.vim', {'for': 'markdown'} 30 25 Plug 'vim-python/python-syntax', {'for': 'python'} 31 - Plug 'kovetskiy/sxhkd-vim', {'for': 'sxhkd'} 32 - Plug 'mattn/emmet-vim', {'on': 'Emmet'} 33 - Plug 'cakebaker/scss-syntax.vim', {'for': 'scss'} 34 - Plug 'PotatoesMaster/i3-vim-syntax', {'for': 'i3'} 26 + Plug 'alaviss/nim.nvim', {'for': 'nim'} 35 27 Plug 'fatih/vim-go', {'for': 'go'} 28 + "Plug 'nsf/gocode', {'for': 'go'} 29 + Plug 'PotatoesMaster/i3-vim-syntax', {'for': 'i3'} 30 + Plug 'kovetskiy/sxhkd-vim', {'for': 'sxhkd'} 36 31 call plug#end() 37 32 38 -" Colors 33 +" Theme 39 34 set termguicolors 40 -set background=dark 41 -colo nten16 35 +colorscheme nten16 42 36 set t_Co=256 43 37 44 -" Syntax & line numbers 38 +" Syntax & number line 45 39 syntax on 46 -set number 47 -set relativenumber 40 +set nu rnu 48 41 49 -" Vim status line 42 +" Status line 50 43 set noshowmode 51 44 set ruler 52 -set showmode 53 45 set showcmd 54 46 55 47 " Mouse ··· 57 49 set mousehide 58 50 set cursorline 59 51 60 -" File encoding 52 +" Encoding 61 53 set encoding=utf-8 62 -set fileencodings=utf8 54 +set fileencodings=utf-8 63 55 64 56 " Line wrap 65 57 set nowrap 66 58 set nolinebreak 67 59 68 -" Backup files & history 60 +" Backup file & history 69 61 set nobackup 70 62 set noswapfile 71 63 set history=100 72 64 73 -" Auto reload file 65 +" Reload file 74 66 set autoread 75 67 76 68 " Tabs ··· 85 77 set ignorecase 86 78 set smartcase 87 79 88 -" Buffer 80 +" Buffer(s) 89 81 set hidden 90 82 set smartindent 91 83 ··· 96 88 " Disable sound 97 89 set visualbell t_vb= 98 90 99 -" == Plugins configure 100 - 101 -" Lightline 91 +" == Plugins configuration 102 92 let g:lightline = { 103 93 \ 'colorscheme': 'nten16', 104 94 \ 'active': { 105 -\ 'left': [ [ 'mode', 'paste' ], 106 -\ [ 'readonly', 'modified' ] ], 107 -\ 'right': [ [ 'lineinfo' ], 108 -\ [ 'percent' ], 109 -\ [ 'filename', 'fileencoding', 'filetype' ] ] 95 +\ 'left': [ [ 'mode', 'paste' ], 96 +\ [ 'readonly', 'modified' ] ], 97 +\ 'right': [ [ 'lineinfo' ], 98 +\ [ 'percent' ], 99 +\ [ 'filename', 'filetype' ] ] 110 100 \ }, } 111 101 112 -" Nerdtree 113 -let NERDTreeIgnore = ['__pycache__', '.DS_Store', '.git'] 114 -let g:NERDTreeWinPos = "right" 115 -let g:NERDTreeWinSize = 28 116 -let NERDTreeMinimalUI = 1 117 -let NERDTreeShowLineNumbers = 1 118 -let NERDTreeShowHidden = 0 119 -map <C-b> :NERDTreeToggle<CR> 102 +" Markdown 103 +let g:vim_markdown_folding_disabled = 1 104 +let g:markdown_fenced_languages = ['go', 'python', 'bash', 'sh=bash'] 105 +let g:ficus_dir = "~/Documents/Notes" 106 + 107 +" Rainbow 108 +let g:rainbow_active = 1 109 + 110 +" Python 111 +let g:python_higlight_all = 1 120 112 121 -" VimWiki 122 -let g:vimwiki_markdown_link_ext = 0 123 -let g:vimwiki_list = [{ 124 -\ 'path': '~/Documents/Notes', 125 -\ 'syntax': 'markdown', 126 -\ 'ext': '.md', 127 -\ }] 113 +" YouCompleteMe 114 +let g:ycm_key_list_previous_completion=['<Up>'] 128 115 129 -" Coc 130 -inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>" 131 -inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>" 116 +" UltiSnipts 117 +let g:UltiSnipsExpandTrigger="<c-tab>" 118 +let g:UltiSnipsListSnippets="<c-s-tab>" 119 +"let g:UltiSnipsJumpForwardTrigger="<c-j>" 120 +"let g:UltiSnipsJumpBackwardTrigger="<c-k>" 132 121 133 -" Markdown 134 -let g:vim_markdown_folding_disabled = 1 135 122 136 -" Easymotion 137 -let g:EasyMotion_do_mapping = 0 138 -let g:EasyMotion_smartcase = 1 139 -nmap f <Plug>(easymotion-s) 140 -nmap FF <Plug>(easymotion-overwin-line) 141 -nmap FD <Plug>(easymotion-overwin-f2) 142 -nmap FS <Plug>(easymotion-bd-w) 123 +" Go 124 +let g:go_template_autocreate = 0 125 +let g:go_highlight_structs = 1 126 +let g:go_highlight_methods = 1 127 +let g:go_highlight_functions = 1 128 +let g:go_highlight_operators = 1 129 +let g:go_highlight_build_constraints = 1 130 +let g:go_snippet_engine = "" 143 131 144 -" CtrlP 145 -let g:ctrlp_custom_ignore = '\v[\/]\.git$' 146 -imap <C-p> :CtrlP<CR> 147 -nmap <C-p> :CtrlP<CR> 132 +" TagBar 133 +let g:tagbar_autoclose = 1 134 +let g:tagbar_width = 18 135 +let g:tagbar_left = 1 148 136 149 -" Indent guides 150 -let g:indent_guides_enable_on_vim_startup = 1 137 +" Nerdtree 138 +let NERDTreeIgnore = ['__pycache__', '.DS_Store', '.git'] 139 +let g:NERDTreeWinPos = "right" 140 +let g:NERDTreeWinSize = 28 141 +let NERDTreeMinimalUI = 1 151 142 152 -" Python 153 -let g:python_highlight_all = 1 143 +" CtrlP 144 +let g:ctrlp_custom_ignore = '\v[\/]\.(git|hg|svn)$' 154 145 155 146 " Startify 156 147 let g:startify_custom_header = [ ··· 164 155 \ { 'type': 'files', 'header': [" Files"] }, 165 156 \ ] 166 157 167 -" Rainbow 168 -let g:rainbow_active = 1 169 - 170 -" TagBar 171 -imap <F9> :TagbarToggle<CR> 172 -nmap <F9> :TagbarToggle<CR> 173 -let g:tagbar_autoclose = 1 174 -let g:tagbar_width = 18 175 -let g:tagbar_left = 1 176 - 177 -" Floaterm 178 -let g:floaterm_title = "VimTermianl" 179 -let g:floaterm_wintype = "floating" 180 -let g:floaterm_position = "center" 181 -let g:floaterm_height = 0.7 182 -let g:floaterm_width = 0.6 183 -let g:floaterm_autoclose = 2 184 -nmap <A-t> :FloatermNew<CR> 185 - 186 -" Go 187 -let g:go_template_autocreate = 0 188 - 189 -" == Maping 158 +" == Mapping 190 159 let mapleader="," 191 160 192 -" Window(s) 161 +" window(s) 193 162 nmap <C-h> :wincmd h<CR> 194 163 nmap <C-j> :wincmd j<CR> 195 164 nmap <C-k> :wincmd k<CR> 196 165 nmap <C-l> :wincmd l<CR> 197 -nmap <A-q> :wincmd q<CR> 198 -nmap <A-c> :wincmd n<CR> 199 166 nmap <A-z> :wincmd K<CR> 200 167 nmap <A-x> :wincmd L<CR> 201 -nmap <A-h> :wincmd <<CR> 202 -nmap <A-l> :wincmd ><CR> 168 +nmap <A-c> :wincmd n<CR> 203 169 204 170 " Tab(s) 205 171 noremap <C-Tab> :tabnext<CR> 206 172 noremap <C-S-Tab> :tabprev<CR> 207 -noremap <C-n> :tabnew<CR> 208 173 noremap <C-t> :tabnew<CR> 209 174 noremap <C-w> :tabclose<CR> 210 175 noremap <A-1> :tabn 1<CR> ··· 220 185 " Buffer(s) 221 186 noremap <leader>p :bnext<CR> 222 187 noremap <leader>o :bprev<CR> 188 + 189 +" Plugins 190 +map <F9> :TagbarToggle<CR> 191 +map <C-b> :NERDTreeToggle<CR>
M
config/polybar/config
··· 22 22 font-1 = FontAwesome5Free:style=Solid:size=7.5;2.5 23 23 font-2 = Weather Icons:size=7;2 24 24 modules-left = i3 menu pacman-up window-name 25 -modules-right = keyboard pulseaudio backlight wifi-signal time date 25 +modules-right = pulseaudio backlight wifi-signal keyboard time date 26 26 tray-position = right 27 27 28 28 [module/i3] ··· 103 103 [module/pacman-up] 104 104 type = custom/script 105 105 exec = ~/.config/polybar/scripts/updates-pacman-aur.sh 106 -interval = 60 106 +interval = 15 107 107 108 108 [module/window-name] 109 109 type = internal/xwindow
M
doom.d/custom.el
··· 1 1 (custom-set-variables 2 - ;; custom-set-variables was added by Custom. 3 - ;; If you edit it by hand, you could mess it up, so be careful. 4 - ;; Your init file should contain only one such instance. 5 - ;; If there is more than one, they won't work right. 6 - '(package-selected-packages '(markdown-mode zoutline))) 7 -(custom-set-faces 8 - ;; custom-set-faces was added by Custom. 9 - ;; If you edit it by hand, you could mess it up, so be careful. 10 - ;; Your init file should contain only one such instance. 11 - ;; If there is more than one, they won't work right. 12 - ) 2 + '(package-selected-packages '(racket-mode markdown-mode zoutline))) 3 +(custom-set-faces) 4 + 5 +(use-package markdown-mode 6 + :commands (markdown-mode gfm-mode) 7 + 8 + :mode 9 + ("README.*\\.md\\'" . gfm-mode) 10 + ("\\.md\\'" . markdown-mode) 11 + ("\\.markdown\\'" . markdown-mode) 12 + 13 + :hook 14 + (markdown-mode . variable-pitch-mode) 15 + (markdown-mode . yas-minor-mode) 16 + (markdown-mode . smartparens-mode) 17 + 18 + :custom 19 + (markdown-command "pandoc") 20 + (markdown-header-scaling t) 21 + 22 + :config 23 + (unbind-key "DEL" gfm-mode-map))
A
script/dwmbar.sh
··· 1 +#!/bin/sh 2 +getDate() { 3 + local date="$(date +%d.%m.%Y)" 4 + echo " ${date}" 5 +} 6 +getTime() { 7 + local time="$(date +%H:%M)" 8 + echo " ${time}" 9 +} 10 +getVolume() { 11 + local volume="$(amixer get Master | tail -n1 | sed -r 's/.*\[(.*)%\].*/\1/')" 12 + echo " ${volume}" 13 +} 14 +getKeyLayout() { 15 + case "$(xkblayout)" in 16 + "Eng") echo " us" ;; 17 + "Rus") echo " ru" ;; 18 + "Ukr") echo " ua" ;; 19 + esac 20 +} 21 + 22 +while true; do 23 + xsetroot -name " $(getVolume) | $(getKeyLayout) | $(getTime) | $(getDate)" 24 + sleep 0 25 +done
M
zshrc
··· 9 9 #HYPHEN_INSENSITIVE="true" # Case-sensitive completion must be off. 10 10 #DISABLE_AUTO_UPDATE="true" # Disable bi-weekly auto-update checks. 11 11 #DISABLE_UPDATE_PROMPT="true" # Automatically update without prompting. 12 -#DISABLE_MAGIC_FUNCTIONS="true" # If pasting URLs and other text is messed up. 12 +#DISABLE_MAGIC_FUNCTIONS="true" # If pasting URL 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 17 export UPDATE_ZSH_DAYS=7 # Change how often to auto-update. ··· 49 49 alias tmux="tmux -2" 50 50 alias ipython="ipython --no-banner" 51 51 alias icat="kitty +kitten icat" 52 +alias ccat="sh -c cat" 53 +alias cat="bat" 52 54 eval $(thefuck --alias) 53 55 54 56 # Exit ··· 71 73 alias doomdoctor="$HOME/.emacs.d/bin/doom doctor" 72 74 alias doom="$HOME/.emacs.d/bin/doom" 73 75 74 -eval $(thefuck --alias)