summaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
authorfilip <“filip.rabiega@gmail.com”>2026-01-21 11:26:01 +0100
committerfilip <“filip.rabiega@gmail.com”>2026-01-21 11:26:01 +0100
commit7c1058edb5da4eb145e57e66d78328beb9697085 (patch)
tree6995d3cb88220aec3b13e8a44fbcb5db2b246df9 /.config
parent9fd1f06f2a10d3d0e120dd5a45ad8cc3dceb6d84 (diff)
downloaddotfiles-7c1058edb5da4eb145e57e66d78328beb9697085.tar.gz
dotfiles-7c1058edb5da4eb145e57e66d78328beb9697085.tar.bz2
dotfiles-7c1058edb5da4eb145e57e66d78328beb9697085.zip
lotsa changes too lazy to list then
Diffstat (limited to '.config')
-rw-r--r--.config/lf/lfrc4
-rw-r--r--.config/nvim/init.lua157
-rw-r--r--.config/shell/aliasrc21
-rw-r--r--.config/shell/envvarrc101
-rw-r--r--.config/via/shortcuts18
-rw-r--r--.config/x11/xinitrc6
-rw-r--r--.config/x11/xprofile12
7 files changed, 283 insertions, 36 deletions
diff --git a/.config/lf/lfrc b/.config/lf/lfrc
index 6225861..916e754 100644
--- a/.config/lf/lfrc
+++ b/.config/lf/lfrc
@@ -34,7 +34,7 @@ cmd open ${{
image/x-xcf) setsid -f gimp $f >/dev/null 2>&1 ;;
image/svg+xml) display -- $f ;;
image/*) rotdir $f | grep -i "\.\(png\|jpg\|jpeg\|gif\|webp\|avif\|tif\|ico\)\(_large\)*$" |
- setsid -f nsxiv -aio 2>/dev/null | while read -r file; do
+ setsid -f sxiv -aio 2>/dev/null | while read -r file; do
[ -z "$file" ] && continue
lf -remote "send select \"$file\""
lf -remote "send toggle"
@@ -185,5 +185,5 @@ map U $printf "%s" "$fx" | xclip -selection clipboard
map u $printf "%s" "$fx" | sed 's/.*\///' | xclip -selection clipboard
map . $printf "%s" "$fx" | sed -E 's/^.+\[/https:\/\/www.youtube.com\/watch?v=/' | sed -E 's/\]\..+//' | xclip -selection clipboard
map <gt> $printf "%s" "$fx" | sed -E 's/^.+\[/https:\/\/piped.video\/watch?v=/' | sed -E 's/\]\..+//' | xclip -selection clipboard
-map T $nsxiv -t "$(pwd)" # opens thumbnail mode
+map T $sxiv -t "$(pwd)" # opens thumbnail mode
map <c-l> unselect
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
new file mode 100644
index 0000000..289e1cd
--- /dev/null
+++ b/.config/nvim/init.lua
@@ -0,0 +1,157 @@
+------------------------------------------------------------
+-- General settings
+------------------------------------------------------------
+vim.opt.number = true
+vim.opt.relativenumber = true
+vim.opt.title = true
+vim.opt.background = "dark"
+vim.opt.laststatus = 2
+vim.opt.showmode = true
+vim.opt.showcmd = false
+vim.opt.ruler = true
+
+------------------------------------------------------------
+-- Search and highlighting
+------------------------------------------------------------
+vim.opt.hlsearch = false
+vim.opt.ignorecase = true
+vim.opt.smartcase = true
+vim.opt.incsearch = true
+vim.opt.wildignore = { "*.o", "*.obj", "*.bak", "*.exe" }
+
+------------------------------------------------------------
+-- Indentation and formatting
+------------------------------------------------------------
+vim.opt.autoindent = true
+vim.opt.cindent = true
+vim.opt.smartindent = true
+vim.opt.wrap = false
+vim.opt.scrolloff = 5
+vim.opt.completeopt = { "menuone", "noinsert" }
+
+------------------------------------------------------------
+-- Clipboard and mouse
+------------------------------------------------------------
+vim.opt.clipboard:append("unnamedplus")
+vim.opt.mouse = "a"
+
+------------------------------------------------------------
+-- Session and history
+------------------------------------------------------------
+vim.opt.shada = "'100,<50,s10,h"
+vim.opt.shadafile = vim.fn.expand("~/.local/state/nvim/shada/main.shada")
+
+------------------------------------------------------------
+-- Miscellaneous
+------------------------------------------------------------
+vim.opt.spelllang = { "en", "pl" }
+vim.cmd("colorscheme pablo")
+vim.cmd("syntax on")
+
+-- Transparent background
+vim.api.nvim_set_hl(0, "Normal", { bg = "none" })
+vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" })
+
+------------------------------------------------------------
+-- Autocommands
+------------------------------------------------------------
+local augroup = vim.api.nvim_create_augroup("UserAutocmds", { clear = true })
+
+-- Reload any .lua file on save
+vim.api.nvim_create_autocmd("BufWritePost", {
+ group = augroup,
+ pattern = vim.fn.stdpath("config") .. "/**/*.lua",
+ callback = function()
+ vim.cmd("source %")
+ vim.notify("Lua config reloaded", vim.log.levels.INFO)
+ end,
+})
+
+-- Remove trailing whitespace & final newlines, keep cursor
+vim.api.nvim_create_autocmd("BufWritePre", {
+ group = augroup,
+ pattern = "*",
+ callback = function()
+ local pos = vim.fn.getpos(".")
+ vim.cmd([[%s/\s\+$//e]])
+ vim.cmd([[%s/\n\+\%$//e]])
+ vim.fn.setpos(".", pos)
+ end,
+})
+
+vim.api.nvim_create_autocmd("BufWritePost", {
+ pattern = "*.tex",
+ callback = function()
+ -- Run tex-fmt on the current file
+ vim.cmd("silent !tex-fmt %")
+ -- Reload the buffer to reflect formatting changes
+ vim.cmd("edit!")
+ end,
+})
+
+------------------------------------------------------------
+-- Key mappings
+------------------------------------------------------------
+local map = vim.keymap.set
+local opts = { noremap = true, silent = true }
+
+vim.g.mapleader = "\\"
+
+map("n", "<BS>", "dBx", { noremap = true })
+map("n", "s", "o<Esc>kzz", { noremap = true })
+map("n", "S", ":%s//g<Left><Left>", { noremap = true })
+map("n", "Y", "y$", { noremap = true })
+map("n", "-", "ddp", { noremap = true })
+map("n", "_", "ddkP", { noremap = true })
+map("n", "<C-J>", '"+yy', { noremap = true })
+map("n", "<C-C>", '"+yW', { noremap = true })
+map("n", "<C-K>", '"+p', { noremap = true })
+map("n", "<space>", "i <esc>", { noremap = true })
+map("v", "<C-J>", '"+y', { noremap = true })
+
+------------------------------------------------------------
+-- Tabs & indentation
+------------------------------------------------------------
+vim.opt.tabstop = 4
+vim.opt.shiftwidth = 4
+vim.opt.expandtab = true
+
+------------------------------------------------------------
+-- Filetype-specific mappings
+------------------------------------------------------------
+vim.api.nvim_create_autocmd("FileType", {
+ group = augroup,
+ pattern = "python",
+ command = "map <F5> :w<CR>:!python3 %<CR>",
+})
+
+------------------------------------------------------------
+-- lazy.nvim
+------------------------------------------------------------
+require("config.lazy")
+
+
+------------------------------------------------------------
+-- luasnip
+------------------------------------------------------------
+require("luasnip").config.set_config({ -- Setting LuaSnip config
+
+ -- Enable autotriggered snippets
+ enable_autosnippets = true,
+
+ -- Use Tab (or some other key if you prefer) to trigger visual selection
+ store_selection_keys = "<Tab>",
+})
+
+vim.cmd[[
+" Use Tab to expand and jump through snippets
+imap <silent><expr> <Tab> luasnip#expand_or_jumpable() ? '<Plug>luasnip-expand-or-jump' : '<Tab>'
+smap <silent><expr> <Tab> luasnip#jumpable(1) ? '<Plug>luasnip-jump-next' : '<Tab>'
+
+" Use Shift-Tab to jump backwards through snippets
+imap <silent><expr> <S-Tab> luasnip#jumpable(-1) ? '<Plug>luasnip-jump-prev' : '<S-Tab>'
+smap <silent><expr> <S-Tab> luasnip#jumpable(-1) ? '<Plug>luasnip-jump-prev' : '<S-Tab>'
+]]
+
+-- Load snippets from fiadra/chadsnips
+require("luasnip.loaders.from_vscode").lazy_load()
diff --git a/.config/shell/aliasrc b/.config/shell/aliasrc
index abcb471..2168058 100644
--- a/.config/shell/aliasrc
+++ b/.config/shell/aliasrc
@@ -1,10 +1,9 @@
#!/bin/sh
+# Filip's aliasrc
# Use $XINITRC variable if file exists.
[ -f "$XINITRC" ] && alias startx="startx \$XINITRC"
-[ -f "$MBSYNCRC" ] && alias mbsync="mbsync -c \$MBSYNCRC"
-
# sudo not required for some system commands
sudo_cmds="mount umount sv apt apt-get aptitude dpkg su shutdown poweroff reboot cryptsetup"
for command in $sudo_cmds; do
@@ -23,6 +22,8 @@ alias \
rsync="rsync -vrPlu" \
pstree="pstree -np" \
less="less -XER" \
+ ls="lsn" \
+ vim="nvim" \
# Colorize commands when possible.
alias \
@@ -33,15 +34,14 @@ alias \
fgrep="fgrep --color=auto" \
grep="grep --color=auto" \
ip="ip -color=auto" \
- ls="lsn" \
vdir="vdir --color=auto" \
# Making stuff easy to customize and source automatically
alias \
- vrc='vim "$HOME/.config/vim/.vimrc"' \
- zal='vim "$ZDOTDIR/aliasrc" && source "$ZDOTDIR/aliasrc"' \
- zen='vim "$ZDOTDIR/envvarrc" && source "$ZDOTDIR/envvarrc"' \
- zrc='vim "$ZDOTDIR/.zshrc" && source "$ZDOTDIR/.zshrc"' \
+ vrc='$EDITOR "$HOME/.config/nvim/init.lua"' \
+ zal='$EDITOR "$ZDOTDIR/aliasrc" && source "$ZDOTDIR/aliasrc"' \
+ zen='$EDITOR "$ZDOTDIR/envvarrc" && source "$ZDOTDIR/envvarrc"' \
+ zrc='$EDITOR "$ZDOTDIR/.zshrc" && source "$ZDOTDIR/.zshrc"' \
# Aliases for connecting to server
alias \
@@ -51,9 +51,7 @@ alias \
# Making stuff shorter
alias \
..="cd .." \
- b="buku --suggest" \
bat="batcat" \
- bd="buku-dmenu" \
copy="xsel -ib" \
fd="fdfind" \
ipy="ipython3" \
@@ -68,5 +66,6 @@ alias \
# Git aliases
alias \
dotfiles="/usr/bin/git --git-dir=\$HOME/.dotfiles --work-tree=\$HOME" \
-
-# Limbo
+ ga="git add" \
+ gc="git commit" \
+ gp="git push" \
diff --git a/.config/shell/envvarrc b/.config/shell/envvarrc
index 794557a..5357f95 100644
--- a/.config/shell/envvarrc
+++ b/.config/shell/envvarrc
@@ -1,36 +1,93 @@
#!/bin/sh
-# This little script sets my environment variables.
+# Filip's envvarrc
+# This litte script sets my environment variables.
+
# Primary programs
export BROWSER="librewolf"
-export EDITOR="vim"
+export EDITOR="nvim"
export IMAGE_VIEWER="feh"
export MANPAGER="vim -M +MANPAGER -"
-export SHELL="/usr/bin/zsh"
export TERMINAL="st"
+export SHELL="zsh"
-# PATH and scripts directory
-export SCRIPTS="$HOME/.scripts"
-export PATH="$SCRIPTS:$HOME/.cargo/bin:$HOME/.local/bin:$PATH"
-# Other stuff
+# XDG base directories
+export XDG_CACHE_HOME="$HOME/.cache"
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
-export XDG_CACHE_HOME="$HOME/.cache"
+
+
+# PATH and scripts
+export SCRIPTS="$HOME/.scripts"
+
+for dir in \
+ "$SCRIPTS" \
+ "$HOME/langs/R" \
+ "$HOME/.cargo/bin" \
+ "$HOME/.local/bin"
+do
+ [ -d "$dir" ] && PATH="$dir:$PATH"
+done
+
+export PATH
+
+
+# Shell / config locations
+export ZDOTDIR="$XDG_CONFIG_HOME/shell"
+export ZSHDIR="$ZDOTDIR"
+export ALIASRC="$ZDOTDIR/aliasrc"
+export ENVVARRC="$ZDOTDIR/envvarrc"
+
+
+# X / input
export XINITRC="$XDG_CONFIG_HOME/x11/xinitrc"
-export ALIASRC="$HOME/.config/shell/aliasrc"
-export ZSHDIR="$HOME/.config/shell"
-export ENVVARRC="$HOME/.config/shell/envvarrc"
-export CONDARC="$HOME/.config/conda/.condarc"
-export _CONDA_ROOT="$HOME/.local/opt/miniconda3"
-export GOPATH="$HOME/langs/go"
-export IPYTHONDIR="$HOME/.config/ipython"
-export OBSIDIAN_HOME="$HOME/.cache/obsidian"
-export STARDICT_DATA_DIR="$HOME/.local/share/stardict"
-export R_HISTFILE="$HOME/langs/R/.Rhistory"
-export R_HOME="$HOME/langs/R"
+export XINPUTRC="$XDG_CONFIG_HOME/x11/xinputrc"
+
+
+# Language runtimes & tools
+# R
+export R_HOME="/usr/lib/R"
export R_LIBS_USER="$HOME/langs/R"
export R_PROFILE="$HOME/langs/R/.Rprofile"
-export MYVIMRC="$HOME/.config/vim/.vimrc"
-export VIMINFO="$HOME/.config/vim/.viminfo"
-export VIMINIT="source $MYVIMRC"
+export R_HISTFILE="$HOME/langs/R/.Rhistory"
+
+# Go
+export GOPATH="$HOME/langs/go"
+
+# Python / Conda
+export _CONDA_ROOT="$HOME/.local/opt/miniconda3"
+export IPYTHONDIR="$XDG_CONFIG_HOME/ipython"
+
+# Ren'Py
+export RENPY_USER="$HOME/langs/python/renpy"
+
+
+# Neovim
+export NVIMPLUGINS="$XDG_CONFIG_HOME/nvim/lua/plugins"
+export NVIMSNIPPETS="$XDG_CONFIG_HOME/nvim/lua/snips"
+
+
+# CLI / TUI tools
+export TIGRC_USER="$XDG_CONFIG_HOME/tig/tigrc"
+export STARSHIP_CONFIG="$XDG_CONFIG_HOME/starship/starship.toml"
+export STARSHIP_CACHE="$XDG_CACHE_HOME/starship/cache"
+export SUDO_ASKPASS="askpass"
+
+
+# Applications & data
+export PASSWORD_STORE_DIR="$XDG_DATA_HOME/password-store"
+export STARDICT_DATA_DIR="$XDG_DATA_HOME/stardict"
+export OBSIDIAN_HOME="$XDG_CACHE_HOME/obsidian"
+
+
+# Locale
+export LANG="en_US.UTF-8"
+export LC_ALL="en_US.UTF-8"
+export LC_CTYPE="UTF-8"
+
+
+# TEMPORARY
+export TRANSITLAND_API_KEY="Wj10MMRSKE4PJTNgtGLB5bK5cXd0Pyyr"
+export DUFFEL_API_TOKEN="duffel_test_I5aqDofO6D445pIQRsOZlU9leLCjSqfiQ7_B0G4SRxb"
+export GEOAPIFY_API_KEY="29df0878ddb04c6aaca758653f692eed"
diff --git a/.config/via/shortcuts b/.config/via/shortcuts
index 4f09b54..e00609d 100644
--- a/.config/via/shortcuts
+++ b/.config/via/shortcuts
@@ -3,5 +3,21 @@
/home/filipek/.config/shell/envvarc
/home/filipek/.config/shell/aliasrc
/home/filipek/.config/vim/.vimrc
-todo
zathura
+librewolf
+firefox
+deploy
+dpass
+dtrans
+dz
+mansplain
+mounter
+notesplain
+remaps
+slp
+sysact
+testcam
+todo
+tutorialvids
+wrocwttr
+anki
diff --git a/.config/x11/xinitrc b/.config/x11/xinitrc
new file mode 100644
index 0000000..59df04a
--- /dev/null
+++ b/.config/x11/xinitrc
@@ -0,0 +1,6 @@
+#!/bin/sh
+# xinitrc runs automatically when you run startx.
+
+[ -f /home/filipek/.config/x11/xprofile ] && . /home/filipek/.config/x11/xprofile
+[ -f /home/filipek/.config/x11/xinputrc ] && . /home/filipek/.config/x11/xinputrc
+exec dwm
diff --git a/.config/x11/xprofile b/.config/x11/xprofile
new file mode 100644
index 0000000..aa66e07
--- /dev/null
+++ b/.config/x11/xprofile
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Filip's xprofile.
+
+# Autostart stuff on reboot
+autostart="remaps slstatus xcompmgr xhidecursor"
+
+for program in $autostart; do
+ pidof -sx "$program" || "$program" &
+done >/dev/null 2>&1
+
+# Set wallpaper
+xwallpaper --stretch "$HOME"/pix/wallpaper.jpg