diff options
-rw-r--r-- | .gitignore | 5 | ||||
-rwxr-xr-x | autostart.sh | 1 | ||||
-rw-r--r-- | hypr/hyprland.conf | 31 | ||||
-rwxr-xr-x | nsxiv/exec/key-handler | 2 | ||||
-rw-r--r-- | vim/vimrc | 306 |
5 files changed, 342 insertions, 3 deletions
@@ -10,6 +10,7 @@ ardour*/ Audio Assault/ autostart/ Binance/ +Blackmagic Design/ Blacksun/ Blacksun.settings blender/ @@ -225,6 +226,7 @@ spotify-tui/ straw-viewer/ subversion/ SUPERHOT/ +suyu/ switcher/ syncthing/ Synergy/ @@ -250,7 +252,7 @@ unity3d/ Valve Corporation/ vdirsyncer/ VeraCrypt/ -vim/ +vim/* !vim/vimrc VirtualBox/ vlc/vlc-qt-interface.conf @@ -272,6 +274,7 @@ zec-qt-wallet-org/ Zelda64Recompiled/ zirless/ zoomus.conf +zoom.conf zsh/hist zsh/.zcompdump zsh/zcompdump diff --git a/autostart.sh b/autostart.sh index 3616220..42eb092 100755 --- a/autostart.sh +++ b/autostart.sh @@ -24,7 +24,6 @@ if [ -n "${WAYLAND_DISPLAY}${DISPLAY}" ]; then runifnot waybar import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid' import-gsettings icon-theme 'Mint-X-Grey' - import-gsettings cursor-theme 'Adwaita' xrdb "$XDG_CONFIG_HOME/X11/xresources" fi diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 4824e6f..ed265a6 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -1,5 +1,6 @@ # See https://wiki.hyprland.org/Configuring/Monitors/ #{{{ Monitor config +monitor = eDP-1, 1920x1080@60, 0x0, 1 monitor = , preferred, auto, 1 monitor = HDMI-A-1, 1920x1080@75, 1920x0, 1 monitor = DP-1, 1920x1080@60, 0x0, 1 @@ -46,6 +47,13 @@ debug { } # }}} +$LAPTOP_TP_ENABLED = true +device { + name = synps/2-synaptics-touchpad + enabled = $LAPTOP_TP_ENABLED +} +# }}} + #{{{ Input options # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { @@ -173,6 +181,7 @@ plugin { # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more windowrule = windowdance, ^(oneshot)$ windowrule = windowdance, title:^(UNDERTALE)$ +windowrule = windowdance, title:^(Rhythm Doctor)$ windowrule = fullscreen, ^(Xephyr)$ windowrule = float, title:^(LibreWolf - Choose User Profile)$ windowrule = float, ^(xdg-desktop-portal-gtk) @@ -181,9 +190,27 @@ windowrule = float, ^(Tk)$ windowrule = float, ^(lxqt-policykit-agent)$ windowrulev2 = stayfocused, title:^()$, class:^(steam)$ windowrulev2 = minsize 1 1, title:^()$, class:^(steam)$ +windowrulev2 = stayfocused, title:^(menu)$,class:^(yabridge-host.exe.so)$ +windowrulev2 = minsize 1 1, title:^(menu)$,class:^(yabridge-host.exe.so)$ +windowrulev2 = float, class:^(yabridge-host.exe.so)$, title:^(menu)$ +windowrulev2 = float, floating:0, title:^(menu*) +windowrulev2 = forceinput, title:^(menu*) +windowrulev2 = windowdance, title:^(menu*) +windowrule = workspace 2, title:^(REAPER .*initializing.*)$ windowrulev2 = tile, class:^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$ windowrule = tile, ^(WebApp-Qobuz[0-9]*)$ windowrulev2 = float, title:^(menu)$ +windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ +#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ +#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ +#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ +#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Metronome and pre-roll settings)$ +#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ +#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ +#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(\s*)$ +#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ +#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ +#windowrulev2 = float, floating:0, title:^(menu)$ #windowrulev2 = forceinput, title:^(menu)$ #}}} @@ -224,6 +251,10 @@ bind = $mainMod, O, splitratio, exact 0.69 #MASTER #bind = $mainMod CONTROL, K, moveintogroup, u #}}} +#{{{ Device binds +bind = $mainMod, Backspace, exec, touchpad.sh +#}}} + #{{{ WC binds bind = $mainMod SHIFT, Q, killactive, bind = $mainMod SHIFT, E, exit, diff --git a/nsxiv/exec/key-handler b/nsxiv/exec/key-handler index 9e78004..53099e4 100755 --- a/nsxiv/exec/key-handler +++ b/nsxiv/exec/key-handler @@ -7,7 +7,7 @@ while read file; do cp "$file" ~/Pictures/background.png ;; *) - convert "$file" ~/Pictures/background.png + magick "$file" ~/Pictures/background.png ;; esac t -r hyprpaper diff --git a/vim/vimrc b/vim/vimrc new file mode 100644 index 0000000..6b64279 --- /dev/null +++ b/vim/vimrc @@ -0,0 +1,306 @@ +set runtimepath^=$XDG_CONFIG_HOME/vim +set runtimepath+=$XDG_DATA_HOME/vim +set runtimepath+=$XDG_CONFIG_HOME/vim/after + +set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim +set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after + +let g:netrw_home = $XDG_DATA_HOME."/vim" +call mkdir($XDG_DATA_HOME."/vim/spell", 'p') + +set backupdir=$XDG_STATE_HOME/vim/backup | call mkdir(&backupdir, 'p') +set directory=$XDG_STATE_HOME/vim/swap | call mkdir(&directory, 'p') +set undodir=$XDG_STATE_HOME/vim/undo | call mkdir(&undodir, 'p') +set viewdir=$XDG_STATE_HOME/vim/view | call mkdir(&viewdir, 'p') + +if !has('nvim') | set viminfofile=$XDG_STATE_HOME/vim/viminfo | endif + +" vimplugs {{{ +call plug#begin('~/.config/nvim/plugged') +" colorschemes {{{ +Plug 'tomasiser/vim-code-dark' " codedark color scheme +Plug 'flazz/vim-colorschemes' " meta-color scheme package +Plug 'tomasiser/vim-code-dark' " codedark color scheme +Plug 'flazz/vim-colorschemes' " meta-color scheme package +Plug 'ZachIndigo/vim-preglow' " my old color scheme +" }}} +" language support {{{ +Plug 'axvr/org.vim' " basic org markup language implementation +Plug 'ziglang/zig.vim' " zig programming language +Plug 'jdonaldson/vaxe' " haxe programming language +Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } " latex live preview support +Plug 'waycrate/swhkd-vim' " swhkd syntax highlighting +Plug 'HiPhish/guile.vim' " guile syntax highlighting +" }}} +" utility {{{ +Plug 'preservim/nerdtree' " directory tree interface +Plug 'Xuyuanp/nerdtree-git-plugin' " git status indicator for nerdtree +Plug 'PhilRunninger/nerdtree-visual-selection' " allows visual selection mode in nerdtree +Plug 'tpope/vim-fugitive' " git command interface +Plug 'junegunn/goyo.vim' " simplify the user interface (distraction-free) [BROKEN] +Plug 'junegunn/limelight.vim' " focus on single paragraph of text at a time +Plug 'vim-airline/vim-airline' " powerline the vim bottom bar +Plug 'nathanaelkane/vim-indent-guides' " indent guides for vim +Plug 'mhinz/vim-signify' " use signs to show diffs +Plug 'tpope/vim-endwise' " auto end functions/if statements +Plug 'tpope/vim-surround' " auto close stuff +Plug 'mattn/emmet-vim' " html css easy formating +Plug 'godlygeek/tabular' " Needed for vim-markdown +Plug 'plasticboy/vim-markdown' " Better markdown support +Plug 'ryanoasis/vim-devicons' " dev icons for nerdtree +" }}} +call plug#end() + +" }}} +" nvim options {{{ + +"" nvimrc: +"" General + +set showmatch " Highlight matching brace + +set number +set relativenumber + +colorscheme 256-grayvim + +set hlsearch " Highlight all search results +set smartcase " Enable smart-case search +set incsearch " Searches for strings incrementally + +set expandtab " Use spaces instead of tabs +set shiftwidth=2 " Number of auto-indent spaces +set smartindent " Enable smart-indent +set smarttab " Enable smart-tabs +set softtabstop=2 " Number of spaces per Tab + +"" Advanced +set ruler " Show row and column ruler information +set undolevels=1000 " Number of undo levels +set backspace=indent,eol,start " Backspace behaviour +filetype plugin indent on + +"" GUI Config +set guifont=mononoki\ Nerd\ Font\ Mono:h12 + +"hi Normal guibg=NONE ctermbg=NONE +"hi NonText guibg=NONE ctermbg=NONE +"set background=dark + +set foldmethod=marker + +set conceallevel=2 + +" set leader key + +let mapleader="'" + +" emmet {{{ +let g:user_emmet_leader_key='<C-a>' +" }}} + +" zig config {{{ +let g:zig_fmt_autosave = 1 +" }}} + +" latex live preview {{{ +let g:livepreview_previewer = 'zathura' +let g:livepreview_use_biber = 1 +let g:livepreview_cursorhold_recompile = 0 +" }}} + +" vim-markdown {{{ +let g:vim_markdown_folding_disabled = 1 +let g:vim_markdown_folding_level = 3 +let g:vim_markdown_toc_autofit = 1 +let g:vim_markdown_emphasis_multiline = 0 +let g:tex_conceal = "" +let g:vim_markdown_math = 1 +let g:vim_markdown_conceal_code_blocks = 1 +let g:vim_markdown_fenced_languages = ['c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini'] +let g:vim_markdown_follow_anchor = 1 +let g:vim_markdown_math = 1 +let g:vim_markdown_frontmatter = 1 +let g:vim_markdown_toml_frontmatter = 1 +let g:vim_markdown_strikethrough = 1 +let g:vim_markdown_no_extensions_in_markdown = 1 +let g:vim_markdown_autowrite = 1 +let g:vim_markdown_auto_insert_bullets = 0 +let g:vim_markdown_new_list_item_indent = 0 +let g:vim_markdown_edit_url_in = 'tab' +" }}} + +" NERDTree config {{{ +let g:NERDTreeGitStatusUseNerdFonts = 1 " use nerd fonts +let g:NERDTreeGitStatusShowClean = 1 " default: 0 +let g:NERDTreeDirArrowExpandable = '>' +let g:NERDTreeDirArrowCollapsible = '<' +let g:NERDTreeMapToggleHidden = 'z' +" }}} + +" Goyo config {{{ +let g:goyo_width = '90%' +let g:goyo_height = '100%' +" }}} + +" limelight config {{{ +let g:limelight_conceal_ctermfg = 'gray' +let g:limelight_conceal_guifg = 'gray' +" }}} + +" devicon config {{{ +let g:airline_powerline_fonts = 1 +let g:webdevicons_enable_nerdtree = 1 +" }}} + +" vim-indent-guides config {{{ +let g:indent_guides_enable_on_vim_startup = 0 +" }}} + +" vim-signify config {{{ +set updatetime=100 +" }}} + +" }}} +" Functions {{{ +" Goyo functions {{{ +function! s:goyo_enter() + if executable('tmux') && strlen($TMUX) + silent !tmux set status off + silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z + endif + set noshowmode + set noshowcmd + set scrolloff=999 + Limelight + NERDTreeClose +endfunction +function! s:goyo_leave() + if executable('tmux') && strlen('$TMUX') + silent !tmux set status on + silent !tmux list-panes -F '\#F' | grep -q Z && tmux resize-pane -Z + endif + set showmode + set showcmd + set scrolloff=5 + Limelight! + NERDTree +endfunction +" }}} +" }}} +" Autocommands {{{ +" Goyo autocommands {{{ +autocmd! User GoyoEnter nested call <SID>goyo_enter() +autocmd! User GoyoLeave nested call <SID>goyo_leave() +" }}} +" NERDTree autocmds {{{ +autocmd StdinReadPre * let s:std_in=1 +autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | wincmd p | endif +autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | + \ execute 'NERDTree' argv()[0] | wincmd p | enew | execute 'cd '.argv()[0] | endif +autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif +autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif +"autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 | + "\ let buf=bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer;.buf | endif +autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif +" }}} +" custom augroup {{{ +augroup custom + autocmd! + au BufEnter *.tex :LLPStartPreview + au BufEnter *.md :set textwidth=80 + au BufEnter *.ms :set textwidth=80 + "au BufEnter *.c :colo DevC++ + "au BufEnter *.h :colo DevC++ + "au BufEnter *.cc :colo DevC++ + "au BufEnter *.hh :colo DevC++ + "au BufEnter *.cpp :colo DevC++ + "au BufEnter *.hpp :colo DevC++ + au BufWritePost init.vim :source % + au BufWritePost *.tex :make + au BufWritePost *sxhkdrc* :!pkill -USR1 -x sxhkd + au BufWritePost .Xresources :!xrdb ~/.Xresources + au BufWritePost .gitignore :!git add .gitignore +augroup end +" }}} +" }}} +" keybindings {{{ + +" direction keys + +inoremap <Down> <C-o>gj +inoremap <Up> <C-o>gk +inoremap <Home> <C-o>g<Home> +inoremap <End> <C-o>g<End> +vnoremap <Down> <C-o>gj +vnoremap <Up> <C-o>gk +vnoremap <Home> <C-o>g<Home> +vnoremap <End> <C-o>g<End> +nnoremap <Down> gj +nnoremap <Up> gk + +" clear search highlights +nnoremap <leader>/ :noh<CR> + +" toggles +nnoremap <leader>tn :set number!<CR> +nnoremap <leader>tr :set relativenumber!<CR> +nnoremap <leader>tt :NERDTreeToggle<CR> + +" tabs +nnoremap <leader>th :tabprevious<CR> +nnoremap <leader>tl :tabnext<CR> +nnoremap <leader>tk :tabnew<CR> +nnoremap <leader>tj :tabclose<CR> + +" splits +nnoremap <leader>wh :vertical resize -1<CR> +nnoremap <leader>wj :resize -1<CR> +nnoremap <leader>wk :resize +1<CR> +nnoremap <leader>wl :vertical resize +1<CR> + +" config +nnoremap <leader>en :e ~/.config/nvim/init.vim<CR> +nnoremap <leader>ec :source %<CR> + +" write as root +nnoremap ZW :w !pkexec tee % >/dev/null + +" Goyo +nnoremap <leader>G :Goyo<CR> + +" windows +nnoremap <C-h> <C-w>h +nnoremap <C-j> <C-w>j +nnoremap <C-k> <C-w>k +nnoremap <C-l> <C-w>l +vnoremap <C-h> <C-w>h +vnoremap <C-j> <C-w>j +vnoremap <C-k> <C-w>k +vnoremap <C-l> <C-w>l + +" files +" these may go away soon +nnoremap <leader>xx :q<CR> +nnoremap <leader>x! :q!<CR> +" these are the new standard +nnoremap <leader>qq :q<CR> +nnoremap <leader>q! :q!<CR> +nnoremap <leader>wq :wq<CR> +nnoremap <leader>ww :w<CR> +nnoremap <leader>ee :e + +" escape for term windows +tnoremap <Esc> <C-\><C-n> + +" vim-plug +nnoremap <leader>pi :PlugInstall<CR> +nnoremap <leader>pu :PlugUpdate<CR> +nnoremap <leader>pU :PlugUpgrade<CR> +nnoremap <leader>pc :PlugClean<CR> + +" fugitive +nnoremap <leader>gp :G pull<CR> +nnoremap <leader>gd :G diff %<CR> + +" }}} |