summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2024-06-06 07:59:15 -0500
committerzachir <zachir@librem.one>2024-06-06 07:59:15 -0500
commit04cb03f85f093eb1ba33398708862e9a2e9e17b3 (patch)
treeadd614a52ad5ba16f72ce3338c6914277fda709f
parentda3f4eb9282cd74be36d026970fbed3c74123acc (diff)
parent9e9e304d75a35f982874d1be0fa1a1c23523f4d4 (diff)
Merge branch 'master' into cla
-rw-r--r--.gitignore5
-rwxr-xr-xautostart.sh1
-rw-r--r--hypr/hyprland.conf31
-rwxr-xr-xnsxiv/exec/key-handler2
-rw-r--r--vim/vimrc306
5 files changed, 342 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 522e3d0..aa9c29a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -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>
+
+" }}}