so much changed

This commit is contained in:
frosty 2024-05-26 09:45:18 -04:00
parent 69800c80a5
commit 932e4ed99e
41 changed files with 451 additions and 104 deletions

2
.gitignore vendored
View file

@ -1,2 +1,2 @@
.config/gtk-3.0/bookmarks
*.lock
*lock*

3
.gitmodules vendored
View file

@ -10,3 +10,6 @@
[submodule "zsh/.local/share/zsh/plugins/zsh-syntax-highlighting"]
path = zsh/.local/share/zsh/plugins/zsh-syntax-highlighting
url = https://github.com/zsh-users/zsh-syntax-highlighting
[submodule "zsh/.local/share/zsh/plugins/zsh-abbr"]
path = zsh/.local/share/zsh/plugins/zsh-abbr
url = https://github.com/olets/zsh-abbr

52
bin/.local/bin/capture Executable file
View file

@ -0,0 +1,52 @@
#!/bin/sh
OUTPUT="$HOME/videos/recordings/$(date +%F_%H-%M-%S)"
SELECTION=""
die() {
printf '%s: %s\n' "${0##*/}" "$1"
exit 1
}
while getopts :sg opt; do
case "$opt" in
s) SELECTION=1 ;;
g) GIF=1 ;;
*) die "invalid option: -$OPTARG" ;;
esac
done
shift $((OPTIND - 1))
[ -z "$GIF" ] && OUTPUT="$OUTPUT.gif" || OUTPUT="$OUTPUT.mkv"
coords=$(mktemp)
if [ -n "$SELECTION" ]; then
slop -f "%x %y %w %h" >"$coords" || exit 0
read -r x y w h <"$coords"
else
x=0
y=0
xwininfo -root | awk '/Width:/{width = $2}; /Height:/{height = $2}; END {print width, height}' >"$coords"
read -r w h <"$coords"
fi
recording=$(mktemp -u XXXXXX.mkv)
ffmpeg -f x11grab -s "$w"x"$h" -i :0.0+"$x","$y" -r 30 -preset ultrafast "$recording" >/dev/null 2>&1
if [ -z "$GIF" ]; then
mv "$recording" "$OUTPUT"
notify-send "${0##*/}" "Recording complete"
else
notify-send "${0##*/}" "Recording complete, encoding to GIF..."
ffmpeg -y -i "$recording" -vf palettegen /tmp/palette.png >/dev/null 2>&1
ffmpeg -i "$recording" -i /tmp/palette.png -filter_complex paletteuse "$OUTPUT" >/dev/null 2>&1
notify-send "${0##*/}" "Encoding complete"
fi
printf '%s\n' "$OUTPUT"
rm -f "$coords"
rm -f "$recording"

29
bin/.local/bin/memory_top_usage Executable file
View file

@ -0,0 +1,29 @@
#!/usr/bin/env python3
import subprocess
MAX_COMMAND_LENGTH = 35
ps_output = subprocess.check_output(["ps", "-eo", "size,command", "--sort=-size"]).decode()
lines = ps_output.strip().split("\n")[1:]
processes = {}
for line in lines:
size, command = line.strip().split(None, 1)
command = command.split("-")[0].strip()
processes[command] = processes.get(command, 0) + int(size)
sorted_processes = sorted(processes.items(), key=lambda x: x[1], reverse=True)
for command, memory in sorted_processes[:10]:
if memory >= 1024 * 1024:
memory_display = memory / (1024 * 1024)
memory_unit = "GB"
elif memory >= 1024:
memory_display = memory / 1024
memory_unit = "MB"
else:
memory_display = memory
memory_unit = "KB"
print(f"{memory_display:>6.2f} {memory_unit:<4} {(command[:MAX_COMMAND_LENGTH-3] + "...") if len(command) > MAX_COMMAND_LENGTH else command}")

15
bin/.local/bin/qutebrowser Executable file
View file

@ -0,0 +1,15 @@
#!/bin/sh
# initial idea: Florian Bruhin (The-Compiler)
# author: Thore Bödecker (foxxx0)
_url="$1"
_qb_version='1.0.4'
_proto_version=1
_ipc_socket="${XDG_RUNTIME_DIR}/qutebrowser/ipc-$(echo -n "$USER" | md5sum | cut -d' ' -f1)"
_qute_bin="/usr/bin/qutebrowser"
printf '{"args": ["%s"], "target_arg": null, "version": "%s", "protocol_version": %d, "cwd": "%s"}\n' \
"${_url}" \
"${_qb_version}" \
"${_proto_version}" \
"${PWD}" | socat -lf /dev/null - UNIX-CONNECT:"${_ipc_socket}" || "$_qute_bin" "$@" &

View file

@ -0,0 +1,2 @@
#!/bin/sh
xrandr --output eDP-1 --mode 1600x900 --pos 0x180 --rotate normal --output DP-1 --off --output HDMI-1 --off --output HDMI-2 --primary --mode 1920x1080 --pos 1600x0 --rotate normal

24
bin/.local/bin/shortcuts Executable file
View file

@ -0,0 +1,24 @@
#!/bin/sh
# Bookmark files
BM_DIRS="${XDG_CONFIG_HOME:-$HOME/.config}/bm-dirs"
BM_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/bm-files"
# Output files
SHELL_SHORTCUTS="${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcuts"
rm "$SHELL_SHORTCUTS" 2>/dev/null
{
sed '/^\s*$/d;/^\s*#/d' "$BM_DIRS" |
while read -r name value; do
printf "alias %s='cd %s'\n" "$name" "$value"
done
sed '/^\s*$/d;/^\s*#/d' "$BM_FILES" |
while read -r name value; do
printf "alias %s='%s %s'\n" "$name" "$EDITOR" "$value"
done
} >>"$SHELL_SHORTCUTS"
printf '\n# vim: ft=sh\n' >>"$SHELL_SHORTCUTS"

View file

@ -1,5 +1,20 @@
#!/bin/sh
read -r value < /sys/class/power_supply/BAT1/capacity
BATTERY="BAT1"
printf '[BAT %s%%]\n' "$value"
get_status_icon() {
case "$1" in
"Full" | "Charging") printf ' \n' ;;
"Discharging" | "Not charging") printf ' \n' ;;
"Unknown" | *) exit 1 ;;
esac
}
read -r value </sys/class/power_supply/$BATTERY/capacity
read -r status </sys/class/power_supply/$BATTERY/status
icon=$(get_status_icon "$status")
[ "$icon" = " " ] && [ "$value" -le 25 ] && icon=" "
printf '%s %s%%\n' "$icon" "$value"

View file

@ -0,0 +1,6 @@
#!/bin/sh
value=$(top -b -n 1 | awk '/%Cpu\(s\)/{print int($2)}')
icon=" "
printf '%s %s%%\n' "$icon" "$value"

View file

@ -1,5 +1,6 @@
#!/bin/sh
value=$(date '+%b %-d %Y %-I:%M %p')
icon=" "
printf '[%s]\n' "$value"
printf '%s %s\n' "$icon" "$value"

View file

@ -0,0 +1,21 @@
#!/bin/sh
DEFAULT_LOCATION="/"
get_location_icon() {
case "$1" in
"/home"*) printf ' \n' ;;
"/mnt"*) printf ' \n' ;;
"/") printf ' \n' ;;
*) printf ' \n' ;;
esac
}
location=${1:-$DEFAULT_LOCATION}
[ -d "$location" ] || exit 1
value=$(df -h "$location" | awk ' /[0-9]/ {print $3"/"$2}')
icon=$(get_location_icon "$location")
printf "%s %s\n" "$icon" "$value"

View file

@ -1,5 +1,6 @@
#!/bin/sh
value=$(free -h | awk '/Mem/ {printf "%s/%s\n", $3, $2}' | sed 's/Gi/G/g; s/Mi/M/g')
value=$(free -h | awk '/Mem/ {gsub(/Gi/, "G", $3); gsub(/Mi/, "M", $3); print $3"/"$2}')
icon=" "
printf '[MEM %s]\n' "$value"
printf ' %s %s\n' "$icon" "$value"

View file

@ -0,0 +1,18 @@
#!/bin/sh
get_local_ip() {
if ! local_ip=$(ip route get 1); then
printf 'Offline\n'
return
fi
local_ip=${local_ip#* via * dev * src }
local_ip=${local_ip% uid *}
printf '%s\n' "$local_ip"
}
value=$(get_local_ip)
icon=" "
printf '%s %s\n' "$icon" "$value"

View file

@ -1,5 +1,6 @@
#!/bin/sh
value=$(uptime -p | sed 's/ day[s]*\b/d/g; s/ hour[s]*\b/h/g; s/ minute[s]*\b/m/g; s/up //; s/,//g')
icon=" "
printf '[%s]\n' "$value"
printf '%s %s\n' "$icon" "$value"

View file

@ -0,0 +1,6 @@
#!/bin/sh
value=$(whoami)
icon=" "
printf '%s %s\n' "$icon" "$value"

View file

@ -1,21 +1,31 @@
#!/bin/sh
value=$(wpctl get-volume @DEFAULT_AUDIO_SINK@)
AUDIO_SINK="@DEFAULT_AUDIO_SINK@"
get_volume_icon() {
case "$1" in
[6-9][0-9] | 100) printf ' \n' ;;
[3-5][0-9]) printf ' \n' ;;
[0-2][0-9]) printf ' \n' ;;
*) exit 1 ;;
esac
}
value=$(wpctl get-volume "$AUDIO_SINK")
value=${value##Volume: }
value=${value%%.*}${value##*.}
case "$value" in
*MUTED*)
muted=1
*MUTED*)
icon=" "
value=${value%% \[MUTED\]}
;;
esac
value=${value#0}
value=${value#0}
value=$((value))
if [ -z "$muted" ]; then
printf '[VOL %s%%]\n' "$value"
else
printf '[VOL %s%% M]\n' "$value"
fi
[ -z "$icon" ] && icon=$(get_volume_icon "$value")
printf '%s %s%%\n' "$icon" "$value"

View file

@ -1,9 +0,0 @@
#!/bin/sh
if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/X11/xprofile" ]; then
. "${XDG_CONFIG_HOME:-$HOME/.config}/X11/xprofile"
elif [ -f "$HOME/.xprofile" ]; then
. "$HOME/.xprofile"
fi
exec dbus-run-session dwm

View file

@ -4,7 +4,7 @@ xrandr --dpi 96
[ -f "$XDG_DATA_HOME/screenlayout" ] && . "$XDG_DATA_HOME/screenlayout"
[ -f "$XDG_DATA_HOME/wallpaper" ] && xwallpaper --zoom "$XDG_DATA_HOME/wallpaper"
[ -f "$XDG_CONFIG_HOME/X11/xresources" ] && xrdb -merge "$XDG_CONFIG_HOME/X11/xresources"
[ -f "$HOME/.Xresources" ] && xrdb -merge "$HOME/.Xresources"
if xinput | grep "SOAI USB GAMING Mouse" >/dev/null 2>&1; then
xinput set-prop "SOAI USB Gaming Mouse" "libinput Accel Profile Enabled" 0 1 0
@ -12,8 +12,15 @@ if xinput | grep "SOAI USB GAMING Mouse" >/dev/null 2>&1; then
fi
if xinput | grep " USB OPTICAL MOUSE" >/dev/null 2>&1; then
xinput set-prop " USB OPTICAL MOUSE" "libinput Accel Profile Enabled" 0 1 0
xinput set-prop " USB OPTICAL MOUSE" "libinput Accel Speed" 0
xinput set-prop " USB OPTICAL MOUSE" "libinput Accel Speed" 0.3
fi
pipewire &
wireplumber &
pipewire-pulse &
picom &
dunst &
udiskie &
dwmblocks &
runsvdir "$HOME/.runit/runsvdir" &
exec dbus-launch --exit-with-session dwm

View file

@ -1,16 +1,20 @@
[General]
autoCloseIdleDaemon=false
buttons=@Variant(\0\0\0\x7f\0\0\0\vQList<int>\0\0\0\0\x5\0\0\0\0\0\0\0\x3\0\0\0\x4\0\0\0\x12\0\0\0\xf)
checkForUpdates=false
contrastOpacity=178
contrastUiColor=#1a1a1a
copyPathAfterSave=false
disabledTrayIcon=false
disabledTrayIcon=true
drawColor=#ffffff
drawThickness=15
saveAfterCopy=true
savePath=/home/frosty/pictures/screenshots
showDesktopNotification=false
showHelp=false
showMagnifier=false
showSidePanelButton=false
showStartupLaunchMessage=false
squareMagnifier=false
uiColor=#aaaaaa
userColors=#ff0000, #000000, #ffffff

View file

@ -1,10 +1,28 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Fira Sans</family>
<family>Noto Color Emoji</family>
<family>Symbols Nerd Font</family>
</prefer>
</alias>
<alias>
<family>sans</family>
<prefer>
<family>Fira Sans</family>
<family>Noto Color Emoji</family>
<family>Symbols Nerd Font</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Sans Mono</family>
<family>JetBrainsMono Nerd Font</family>
<family>Noto Color Emoji</family>
<family>Symbols Nerd Font</family>
</prefer>
</alias>
</fontconfig>

View file

@ -1,7 +1,11 @@
# DO NOT EDIT! This file will be overwritten by LXAppearance.
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
include "/home/frosty/.gtkrc-2.0.mine"
gtk-theme-name="Adwaita-dark"
gtk-icon-theme-name="elementary"
gtk-font-name="Cantarell 11"
gtk-cursor-theme-name="elementary"
gtk-cursor-theme-name="Adwaita"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
@ -12,5 +16,3 @@ gtk-enable-input-feedback-sounds=0
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"
# vim: ft=dosini

View file

@ -2,7 +2,7 @@
gtk-theme-name=Adwaita-dark
gtk-icon-theme-name=elementary
gtk-font-name=Cantarell 11
gtk-cursor-theme-name=elementary
gtk-cursor-theme-name=Adwaita
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR

View file

@ -1,6 +1,6 @@
[Desktop Entry]
Type=Application
Name=NXM Scheme Handler
Exec=newvegas wine /mnt/storage/Software/ModOrganizer2/nxmhandler.exe %u
Exec=proton-nv wine /mnt/storage/Software/ModOrganizer2/nxmhandler.exe %u
StartupNotify=false
MimeType=x-scheme-handler/nxm

View file

@ -1,24 +1,4 @@
local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim'
if not (vim.uv or vim.loop).fs_stat(lazypath) then
vim.fn.system({
'git',
'clone',
'--filter=blob:none',
'https://github.com/folke/lazy.nvim.git',
'--branch=stable',
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require('lazy').setup('plugins')
vim.api.nvim_create_autocmd('BufWritePre', {
callback = function()
vim.lsp.buf.format { async = false }
end
})
vim.opt.expandtab = true
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
require 'options'
require 'lazy_init'
require 'keymaps'
require 'autocmds'

View file

@ -0,0 +1,11 @@
vim.api.nvim_create_autocmd({ 'FocusLost' }, {
callback = function()
if vim.bo.modified
and not vim.bo.readonly
and vim.fn.expand('%') ~= ''
and vim.bo.buftype == ''
then
vim.api.nvim_command('silent update')
end
end
})

View file

@ -0,0 +1,34 @@
local telescope = require('telescope.builtin')
-- Format file
vim.keymap.set('n', '<leader>e', vim.lsp.buf.format)
-- Write file
vim.keymap.set('n', '<leader>W', ':w<CR>')
-- Toggle status
vim.keymap.set('n', '<leader>os', function()
if vim.opt.laststatus == 3 then
vim.opt.laststatus = 0
else
vim.opt.laststatus = 3
end
end)
-- Telescope find files
vim.keymap.set('n', '<leader>ff', telescope.find_files)
-- Telescope live grep
vim.keymap.set('n', '<leader>fg', telescope.live_grep)
-- Neotree toggle sidebar
vim.keymap.set('n', '<leader>nt', '<Cmd>Neotree right toggle<CR>')
-- Neotree toggle file menu
vim.keymap.set('n', '<leader>nr', '<Cmd>Neotree current toggle<CR>')
vim.keymap.set('n', '<leader>q', '<Cmd>close<CR>')
vim.keymap.set('n', '<leader>Q', '<Cmd>quit<CR>')
vim.keymap.set('n', '<leader>bd', '<Cmd>bn<CR>bd<CR>')
vim.keymap.set('n', '<leader>bD', '<Cmd>bd!<CR>')

View file

@ -0,0 +1,16 @@
local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim'
if not (vim.uv or vim.loop).fs_stat(lazypath) then
vim.fn.system({
'git',
'clone',
'--filter=blob:none',
'https://github.com/folke/lazy.nvim.git',
'--branch=stable',
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require('lazy').setup('plugins')

View file

@ -0,0 +1,22 @@
local g = {
mapleader = ' ',
neovide_scroll_animation_length = 0,
neovide_cursor_animation_length = 0
}
local o = {
expandtab = true,
softtabstop = 4,
shiftwidth = 4,
termguicolors = true,
background = 'dark',
guifont = 'monospace:h10'
}
for name, value in pairs(o) do
vim.o[name] = value
end
for name, value in pairs(g) do
vim.g[name] = value
end

View file

@ -3,6 +3,9 @@ local servers = {
lua_ls = {
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
},
format = {
defaultConfig = {
quote_style = 'single'
@ -17,7 +20,7 @@ local servers = {
-- Shell
bashls = {
filetypes = { 'sh', 'zsh', }
filetypes = { 'sh', 'zsh' }
},
-- Go

View file

@ -0,0 +1,8 @@
return {
'nvim-neo-tree/neo-tree.nvim',
dependencies = {
'nvim-lua/plenary.nvim',
'MunifTanjim/nui.nvim',
}
}

View file

@ -1,4 +1,20 @@
return {
{
'ellisonleao/gruvbox.nvim',
lazy = false,
priority = 1000,
config = function()
require('gruvbox').setup({ contrast = 'hard' })
-- Set color scheme
vim.cmd('colorscheme gruvbox')
-- Remove background to allow transparency
vim.api.nvim_set_hl(0, 'Normal', { bg = 'none' })
vim.api.nvim_set_hl(0, 'NormalFloat', { bg = 'none' })
end
},
{
'nvim-treesitter/nvim-treesitter',
build = ':TSUpdate',
@ -6,9 +22,7 @@ return {
},
{
'f-person/git-blame.nvim',
opts = {
highlight_group = 'NonText'
}
'nvim-telescope/telescope.nvim',
dependencies = { 'nvim-lua/plenary.nvim' }
}
}

View file

@ -19,7 +19,7 @@
</placement>
<theme>
<name>frostalicious</name>
<name>icecubes</name>
<titleLayout>CDIML</titleLayout>
<keepBorder>yes</keepBorder>
<animateIconify>no</animateIconify>

@ -1 +1 @@
Subproject commit f474f12a230a70b07adc1b601af146ec30186ac0
Subproject commit 14229e4aa741cf13e25b459ed383de40edc565e4

View file

@ -6,16 +6,16 @@
shadow = false
# The blur radius for shadows, in pixels.
shadow-radius = 18
shadow-radius = 10
# The opacity of shadows. (0.0 - 1.0)
shadow-opacity = 0.15
shadow-opacity = 0.35
# The left offset for shadows, in pixels.
shadow-offset-x = -7
shadow-offset-x = -6
# The top offset for shadows, in pixels.
shadow-offset-y = -7
shadow-offset-y = -6
# Hex string color value of shadow.
shadow-color = "#030303"
@ -52,7 +52,7 @@ no-fading-destroyed-argb = true
inactive-opacity = 1
# Opacity of window titlebars and borders. (0.1 - 1.0)
frame-opacity = 1
frame-opacity = 0.75
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
inactive-opacity-override = false
@ -61,7 +61,7 @@ inactive-opacity-override = false
active-opacity = 1.0
# Dim inactive windows. (0.0 - 1.0)
inactive-dim = 0.05
inactive-dim = 0.08
# Specify a list of conditions of windows that should never be considered focused.
focus-exclude = [
@ -82,8 +82,7 @@ corner-radius = 0
# Parameters for background blurring, see the *BLUR* section for more information.
blur-method = "dual_kawase"
blur-size = 1
blur-strength = 2
blur-strength = 3
# Specify the blur convolution kernel.
blur-kern = "3x3box"

View file

@ -1,14 +1,5 @@
super + {F1,F2,F3,F4}
{thunar,qutebrowser,spotify,thunderbird}
super + {F9,F10,F11,F12}
{pavucontrol,connman-gtk,wallpaper view,screenlayout}
super + {_,shift +} p
{j4-dmenu-desktop --dmenu='dmenu -F -g 2 -c -l 8 -bw 1',dmenu_run -F -g 2 -c -l 8 -bw 1}
super + Return
st
{thunar,firefox,thunderbird,spotify}
super + control + F9
wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
@ -17,5 +8,14 @@ super + control + {F10,F11}
wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; \
wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%{-,+}
super + control + F12
run-i3lock
super + p
dmenu_run
super + Return
st
{_, shift +} Print
flameshot {gui,full}

View file

@ -7,6 +7,8 @@
"workbench.startupEditor": "none",
"editor.minimap.enabled": false,
"workbench.editor.editorActionsLocation": "hidden",
"workbench.colorTheme": "Default Dark+",
"editor.fontSize": 13
"editor.fontSize": 13,
"security.workspace.trust.untrustedFiles": "open",
"security.workspace.trust.enabled": false,
"editor.fontLigatures": true
}

32
xresources/.Xresources Normal file
View file

@ -0,0 +1,32 @@
!! dwm
dwm.font: monospace:pixelsize=12
dwm.dmenufont: monospace:pixelsize=12
!! st
!! st.color0: #282828
!! st.color1: #cc241d
!! st.color2: #98971a
!! st.color3: #d79921
!! st.color4: #458588
!! st.color5: #b16286
!! st.color6: #689d6a
!! st.color7: #a89984
!! st.color8: #928374
!! st.color9: #fb4934
!! st.color10: #b8bb26
!! st.color11: #fabd2f
!! st.color12: #83a598
!! st.color13: #d3869b
!! st.color14: #8ec07c
!! st.color15: #1d2021
!! st.background: #282828
!! st.foreground: #ebdbb2
!! st.cursorColor: #ebdbb2
!! nsxiv
Nsxiv.window.background: #111111
Nsxiv.window.foreground: #bbbbbb
Nsxiv.mark.foreground: #bbbbbb
Nsxiv.bar.background: #bbbbbb
Nsxiv.bar.foreground: #111111
Nsxiv.bar.font: monospace:pixelsize=12

View file

@ -1,6 +0,0 @@
Nsxiv.window.background: #111111
Nsxiv.window.foreground: #bbbbbb
Nsxiv.mark.foreground: #bbbbbb
Nsxiv.bar.background: #bbbbbb
Nsxiv.bar.foreground: #111111
Nsxiv.bar.font: monospace:pixelsize=12

@ -0,0 +1 @@
Subproject commit 6b2752bfdb13bcb5e1eedbcc14c217bf78eb9f85

View file

@ -1,2 +1,5 @@
# shellcheck disable=SC1091
[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/environment" ] && . "${XDG_CONFIG_HOME:-$HOME/.config}/shell/environment"
[ ! -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc" ] && shortcuts
[ -z "$DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ] && exec startx

View file

@ -4,22 +4,24 @@ setopt histverify
setopt correct
setopt histreduceblanks
HISTSIZE=999999999
SAVEHIST=$HISTSIZE
HISTFILE="$XDG_CACHE_HOME/zsh/history"
PS1='%F{blue}%~ %(?.%F{green}.%F{red})%#%f '
# shellcheck disable=SC1091
[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliases" ] && . "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliases"
[ -f "$XDG_CONFIG_HOME/shell/aliases" ] && . "$XDG_CONFIG_HOME/shell/aliases"
[ -f "$XDG_CONFIG_HOME/shell/shortcuts" ] && . "$XDG_CONFIG_HOME/shell/shortcuts"
if [ -d "${XDG_CONFIG_HOME:-$HOME/.config}/shell/functions" ]; then
for func in "${XDG_CONFIG_HOME:-$HOME/.config}"/shell/functions/*; do
# shellcheck disable=SC1090
if [ -d "$XDG_CONFIG_HOME/shell/functions" ]; then
for func in "$XDG_CONFIG_HOME"/shell/functions/*; do
. "$func"
done
unset func
fi
if [ -d "${XDG_DATA_HOME:-$HOME/.local/share}/zsh/plugins" ]; then
for plug in "${XDG_DATA_HOME:-$HOME/.local/share}"/zsh/plugins/*/*.plugin.zsh; do
# shellcheck disable=SC1090
if [ -d "$XDG_DATA_HOME/zsh/plugins" ]; then
for plug in "$XDG_DATA_HOME"/zsh/plugins/*/*.plugin.zsh; do
. "$plug"
done
unset plug