aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRatakor <ratakor@disroot.org>2023-08-30 11:07:59 +0200
committerRatakor <ratakor@disroot.org>2023-08-30 11:07:59 +0200
commitf00bf4796a8cc516e1d8d57e8f063c14aea970f8 (patch)
tree5668909aef59142a49ee5bd7e9f141b6a3437694
parenta573fb7319cba87f7a348471c085d81de144e33f (diff)
Update, more info in commit message
Update aliasrc and packages. Add a better fix in sxrc for wireplumber or internet being too slow for sb. Add video selection option to dmenurecord with slop. Add st patch to plumber. Add zls config. Remove speedtest (use poop or perf instead). Remove .clang-format.
-rw-r--r--.clang-format212
-rwxr-xr-x.local/bin/aurinstall2
-rwxr-xr-x.local/bin/dmenurecord89
-rwxr-xr-x.local/bin/editor2
-rwxr-xr-x.local/bin/manpager2
-rwxr-xr-x.local/bin/music2
-rwxr-xr-x.local/bin/musiccmd2
-rwxr-xr-x.local/bin/plumber9
-rwxr-xr-x.local/bin/speedtest9
-rw-r--r--.local/etc/nvim/basics.vim6
-rw-r--r--.local/etc/nvim/init.vim3
-rw-r--r--.local/etc/nvim/lsp.vim3
-rw-r--r--.local/etc/picom.conf1
-rwxr-xr-x.local/etc/sx/sxrc3
-rw-r--r--.local/etc/zls.json3
-rw-r--r--.local/etc/zsh/.zshrc3
-rw-r--r--.local/etc/zsh/aliasrc40
-rw-r--r--.local/share/packages8
18 files changed, 122 insertions, 277 deletions
diff --git a/.clang-format b/.clang-format
deleted file mode 100644
index df8b4e8..0000000
--- a/.clang-format
+++ /dev/null
@@ -1,212 +0,0 @@
-Language: Cpp
-AccessModifierOffset: 0 # -2
-AlignAfterOpenBracket: Align
-AlignArrayOfStructures: None
-AlignConsecutiveAssignments:
- Enabled: false
- AcrossEmptyLines: false
- AcrossComments: false
- AlignCompound: false
- PadOperators: true
-AlignConsecutiveBitFields:
- Enabled: true # false
- AcrossEmptyLines: false
- AcrossComments: false
- AlignCompound: false
- PadOperators: false
-AlignConsecutiveDeclarations:
- Enabled: false
- AcrossEmptyLines: false
- AcrossComments: false
- AlignCompound: false
- PadOperators: false
-AlignConsecutiveMacros:
- Enabled: true
- AcrossEmptyLines: true
- AcrossComments: true
- AlignCompound: false
- PadOperators: false
-AlignEscapedNewlines: Right
-AlignOperands: Align
-AlignTrailingComments: true
-AllowAllArgumentsOnNextLine: true
-AllowAllParametersOfDeclarationOnNextLine: true
-AllowShortEnumsOnASingleLine: true
-AllowShortBlocksOnASingleLine: Never
-AllowShortCaseLabelsOnASingleLine: false
-AllowShortFunctionsOnASingleLine: None
-AllowShortLambdasOnASingleLine: None # All
-AllowShortIfStatementsOnASingleLine: Never
-AllowShortLoopsOnASingleLine: false
-AlwaysBreakAfterDefinitionReturnType: None
-AlwaysBreakAfterReturnType: TopLevelDefinitions # None
-AlwaysBreakBeforeMultilineStrings: false
-AlwaysBreakTemplateDeclarations: Yes # MultiLine
-AttributeMacros:
- - __capability
-BinPackArguments: true
-BinPackParameters: true
-BraceWrapping:
- AfterCaseLabel: false
- AfterClass: false
- AfterControlStatement: Never
- AfterEnum: false
- AfterFunction: true # false
- AfterNamespace: false
- AfterObjCDeclaration: false
- AfterStruct: false
- AfterUnion: false
- AfterExternBlock: false
- BeforeCatch: false
- BeforeElse: false
- BeforeLambdaBody: false
- BeforeWhile: false
- IndentBraces: false
- SplitEmptyFunction: true
- SplitEmptyRecord: true
- SplitEmptyNamespace: true
-BreakBeforeBinaryOperators: None
-BreakBeforeConceptDeclarations: Always
-BreakBeforeBraces: WebKit # Attach
-BreakBeforeInheritanceComma: false
-BreakInheritanceList: AfterComma # BeforeColon
-BreakBeforeTernaryOperators: false # true
-BreakConstructorInitializersBeforeComma: false
-BreakConstructorInitializers: AfterColon # BeforeColon
-BreakAfterJavaFieldAnnotations: false
-BreakStringLiterals: true
-ColumnLimit: 79 # 80
-CommentPragmas: '' # '^ IWYU pragma:'
-QualifierAlignment: Left # Leave
-CompactNamespaces: false
-ConstructorInitializerIndentWidth: 8
-ContinuationIndentWidth: 8
-Cpp11BracedListStyle: false # true
-DeriveLineEnding: false # true
-DerivePointerAlignment: false
-DisableFormat: false
-EmptyLineAfterAccessModifier: Never
-EmptyLineBeforeAccessModifier: Never # LogicalBlock
-ExperimentalAutoDetectBinPacking: false
-PackConstructorInitializers: Never # BinPack
-BasedOnStyle: ''
-ConstructorInitializerAllOnOneLineOrOnePerLine: false
-AllowAllConstructorInitializersOnNextLine: true
-FixNamespaceComments: true
-ForEachMacros:
- - foreach
- - Q_FOREACH
- - BOOST_FOREACH
-IfMacros:
- - KJ_IF_MAYBE
-IncludeBlocks: Preserve
-IncludeCategories:
- - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
- Priority: 2
- SortPriority: 0
- CaseSensitive: false
- - Regex: '^(<|"(gtest|gmock|isl|json)/)'
- Priority: 3
- SortPriority: 0
- CaseSensitive: false
- - Regex: '.*'
- Priority: 1
- SortPriority: 0
- CaseSensitive: false
-IncludeIsMainRegex: '' # '(Test)?$'
-IncludeIsMainSourceRegex: ''
-IndentAccessModifiers: false
-IndentCaseLabels: false
-IndentCaseBlocks: false
-IndentGotoLabels: false
-IndentPPDirectives: BeforeHash # None
-IndentExternBlock: NoIndent # AfterExternBlock
-IndentRequiresClause: false # true
-IndentWidth: 8
-IndentWrappedFunctionNames: false
-InsertBraces: true # false
-InsertTrailingCommas: None
-JavaScriptQuotes: Double # Leave
-JavaScriptWrapImports: true
-KeepEmptyLinesAtTheStartOfBlocks: false # true
-LambdaBodyIndentation: Signature
-MacroBlockBegin: ''
-MacroBlockEnd: ''
-MaxEmptyLinesToKeep: 1
-NamespaceIndentation: All # None
-ObjCBinPackProtocolList: Never # Auto
-ObjCBlockIndentWidth: 8
-ObjCBreakBeforeNestedBlockParam: true
-ObjCSpaceAfterProperty: true # false
-ObjCSpaceBeforeProtocolList: true
-PenaltyBreakAssignment: 2
-PenaltyBreakBeforeFirstCallParameter: 19
-PenaltyBreakComment: 300
-PenaltyBreakFirstLessLess: 120
-PenaltyBreakOpenParenthesis: 0
-PenaltyBreakString: 1000
-PenaltyBreakTemplateDeclaration: 10
-PenaltyExcessCharacter: 1000000
-PenaltyReturnTypeOnItsOwnLine: 60
-PenaltyIndentedWhitespace: 0
-PointerAlignment: Right
-PPIndentWidth: 0 # -1
-ReferenceAlignment: Pointer
-ReflowComments: true
-RemoveBracesLLVM: false
-RequiresClausePosition: OwnLine
-SeparateDefinitionBlocks: Always # Leave
-ShortNamespaceLines: 0 # 1
-SortIncludes: CaseSensitive
-SortJavaStaticImport: Before
-SortUsingDeclarations: true
-SpaceAfterCStyleCast: false
-SpaceAfterLogicalNot: false
-SpaceAfterTemplateKeyword: false # true
-SpaceBeforeAssignmentOperators: true
-SpaceBeforeCaseColon: false
-SpaceBeforeCpp11BracedList: true # false
-SpaceBeforeCtorInitializerColon: true
-SpaceBeforeInheritanceColon: true
-SpaceBeforeParens: ControlStatements
-SpaceBeforeParensOptions:
- AfterControlStatements: true
- AfterForeachMacros: true
- AfterFunctionDefinitionName: false
- AfterFunctionDeclarationName: false
- AfterIfMacros: true
- AfterOverloadedOperator: false
- AfterRequiresInClause: false
- AfterRequiresInExpression: false
- BeforeNonEmptyParentheses: false
-SpaceAroundPointerQualifiers: Before # Default
-SpaceBeforeRangeBasedForLoopColon: true
-SpaceInEmptyBlock: false
-SpaceInEmptyParentheses: false
-SpacesBeforeTrailingComments: 4 # 1
-SpacesInAngles: Never
-SpacesInConditionalStatement: false
-SpacesInContainerLiterals: true
-SpacesInCStyleCastParentheses: false
-SpacesInLineCommentPrefix:
- Minimum: 1
- Maximum: 1 # -1
-SpacesInParentheses: false
-SpacesInSquareBrackets: false
-SpaceBeforeSquareBrackets: false
-BitFieldColonSpacing: Both
-Standard: Auto # Latest
-StatementAttributeLikeMacros:
- - Q_EMIT
-StatementMacros:
- - Q_UNUSED
- - QT_REQUIRE_VERSION
-TabWidth: 8
-UseCRLF: false
-UseTab: AlignWithSpaces # Never
-WhitespaceSensitiveMacros:
- - STRINGIZE
- - PP_STRINGIZE
- - BOOST_PP_STRINGIZE
- - NS_SWIFT_NAME
- - CF_SWIFT_NAME
diff --git a/.local/bin/aurinstall b/.local/bin/aurinstall
index e1e2e0f..b5e0514 100755
--- a/.local/bin/aurinstall
+++ b/.local/bin/aurinstall
@@ -35,7 +35,7 @@ main() {
packages=$(pacman -Qqm)
CONFIRM=0 ;;
*)
- return 0;
+ return 1;
esac
elif [ "$1" = "--noconfirm" ]; then
CONFIRM=0
diff --git a/.local/bin/dmenurecord b/.local/bin/dmenurecord
index bfde165..845c2a1 100755
--- a/.local/bin/dmenurecord
+++ b/.local/bin/dmenurecord
@@ -1,6 +1,6 @@
#!/bin/sh
# dmenu for recordings with ffmpeg
-# dependencies: pipewire-pulse/pulseaudio, ffmpeg, dmenu
+# dependencies: pipewire-pulse/pulseaudio, ffmpeg, dmenu, slop
# Original: https://github.com/whoisYoges/record-with-ffmpeg
set -e
@@ -10,6 +10,7 @@ audiodir="$videodir"
title="$(date +ffmpeg-"%Y-%m-%d-%H-%M-%S")"
recordingresolution="$(xrandr | sed -n 's/\s*\([0-9]\+x[0-9]\+\).*\*.*/\1/p')"
outputresolution="$recordingresolution"
+display="$DISPLAY"
fps="30"
crf="22" # 18
codecvideo="libx264"
@@ -49,7 +50,7 @@ internalAudioAndMicrophone() {
videoWithoutAudio() {
ffmpeg \
- -f x11grab -r "$fps" -s "$recordingresolution" -i "$DISPLAY" \
+ -f x11grab -r "$fps" -s "$recordingresolution" -i "$display" \
-vcodec "$codecvideo" -preset "$preset" -crf "$crf" \
-pix_fmt yuv420p -s "$outputresolution" "$title.$videoext"
}
@@ -57,7 +58,7 @@ videoWithoutAudio() {
videoWithInternalAudio() {
ffmpeg \
-f pulse -ac "$monitoraudiochannel" -ar "$monitoraudiofrequency" -i "$monitoraudioinput" \
- -f x11grab -r "$fps" -s "$recordingresolution" -i "$DISPLAY" \
+ -f x11grab -r "$fps" -s "$recordingresolution" -i "$display" \
-vcodec "$codecvideo" -preset "$preset" -crf "$crf" \
-acodec "$codecaudio" -ar "$outputaudiofrequency" -q:a 1 \
-pix_fmt yuv420p -s "$outputresolution" "$title.$videoext"
@@ -66,7 +67,7 @@ videoWithInternalAudio() {
videoWithMicrophone() {
ffmpeg \
-f pulse -ac "$microphoneaudiochannel" -ar "$microphoneaudiofrequency" -i "$microphoneaudioinput" \
- -f x11grab -r "$fps" -s "$recordingresolution" -i "$DISPLAY" \
+ -f x11grab -r "$fps" -s "$recordingresolution" -i "$display" \
-vcodec "$codecvideo" -preset "$preset" -crf "$crf" \
-acodec "$codecaudio" -ar "$outputaudiofrequency" -q:a 1 \
-pix_fmt yuv420p -s "$outputresolution" "$title.$videoext"
@@ -77,38 +78,76 @@ videoWithMicrophoneAndInternalAudio() {
-f pulse -ac "$monitoraudiochannel" -ar "$monitoraudiofrequency" -i "$monitoraudioinput" \
-f pulse -ac "$microphoneaudiochannel" -ar "$microphoneaudiofrequency" -i "$microphoneaudioinput" \
-filter_complex amix=inputs=2 \
- -f x11grab -r "$fps" -s "$recordingresolution" -i "$DISPLAY" \
+ -f x11grab -r "$fps" -s "$recordingresolution" -i "$display" \
-vcodec "$codecvideo" -preset "$preset" -crf "$crf" \
-acodec "$codecaudio" -ar "$outputaudiofrequency" -q:a 1 \
-pix_fmt yuv420p -s "$outputresolution" "$title.$videoext"
}
+audio() {
+ choice=${1:-$(printf "Quit
+1 Internal audio
+2 Microphone
+3 Both" | dmenu -i -p "Audio")}
+
+ case $choice in
+ Quit) return 0 ;;
+ 1*) cd "$audiodir" && internalAudioOnly ;;
+ 2*) cd "$audiodir" && microphoneOnly ;;
+ 3*) cd "$audiodir" && internalAudioAndMicrophone ;;
+ *) return 1 ;;
+ esac
+}
+
+video() {
+ choice=${1:-$(printf "Quit
+1 Without audio
+2 With internal audio
+3 With mic
+4 With both" | dmenu -i -p "Video")}
+
+ case $choice in
+ Quit) return 0 ;;
+ 1*) cd "$videodir" && videoWithoutAudio ;;
+ 2*) cd "$videodir" && videoWithInternalAudio ;;
+ 3*) cd "$videodir" && videoWithMicrophone ;;
+ 4*) cd "$videodir" && videoWithMicrophoneAndInternalAudio ;;
+ *) return 1 ;;
+ esac
+}
+
+setSelectionVal() {
+ X=$1 Y=$2 W=$3 H=$4
+ [ $((W % 2)) -eq 1 ] && W=$((W + 1))
+ [ $((H % 2)) -eq 1 ] && H=$((H + 1))
+ recordingresolution="$W"x"$H"
+ outputresolution="$recordingresolution"
+ display="$display"+"$X","$Y"
+}
+
+videosel() {
+ slop=$(slop -q -f "%x %y %w %h") || return 1
+ # shellcheck disable=SC2086
+ setSelectionVal $slop
+ video "$1"
+}
+
main() {
[ ! -d "$audiodir" ] && mkdir -p "$audiodir"
[ ! -d "$videodir" ] && mkdir -p "$videodir"
- choice="${1:-$(printf "Quit\n1 InternalAudioOnly\n2 MicrophoneOnly
-3 InternalAudioAndMic\n4 VideoWithoutAudio\n5 VideoWithInternalAudio
-6 VideoWithMic\n7 VideoWithBothMicAndInternalAudio" | dmenu -i -p "screencast")}"
+ choice=${1:-$(printf "Quit
+1 Audio
+2 Video
+3 Video Selection" | dmenu -i -p "Mode")}
case $choice in
- 1*)
- cd "$audiodir" && internalAudioOnly ;;
- 2*)
- cd "$audiodir" && microphoneOnly ;;
- 3*)
- cd "$audiodir" && internalAudioAndMicrophone ;;
- 4*)
- cd "$videodir" && videoWithoutAudio ;;
- 5*)
- cd "$videodir" && videoWithInternalAudio ;;
- 6*)
- cd "$videodir" && videoWithMicrophone ;;
- 7*)
- cd "$videodir" && videoWithMicrophoneAndInternalAudio ;;
- *)
- return 1 ;;
+ Quit) return 0 ;;
+ 1*) audio "$2" ;;
+ 2*) video "$2" ;;
+ 3*) videosel "$2" ;;
+ *) return 1 ;;
esac
}
-main "$1"
+main "$@"
diff --git a/.local/bin/editor b/.local/bin/editor
index ff75b72..0e83232 100755
--- a/.local/bin/editor
+++ b/.local/bin/editor
@@ -2,5 +2,5 @@
# this is for changing neovim's theme on the fly with themeswap
SOCKET="/tmp/nvim.$(base32 < /dev/urandom | head -c 5).pipe"
-trap 'rm -f $SOCKET' INT QUIT TERM EXIT
+trap 'rm -f $SOCKET' INT QUIT TERM EXIT HUP
nvim --listen "$SOCKET" "$@"
diff --git a/.local/bin/manpager b/.local/bin/manpager
index e899598..d1a13f6 100755
--- a/.local/bin/manpager
+++ b/.local/bin/manpager
@@ -1,2 +1,2 @@
#!/bin/sh
-col -bx < "$1" | bat -l man -p --paging=auto
+col -bx < "$1" | bat -l man -p
diff --git a/.local/bin/music b/.local/bin/music
index 5456eaf..282feda 100755
--- a/.local/bin/music
+++ b/.local/bin/music
@@ -10,7 +10,7 @@ if [ "$1" = "--shuffle" ]; then
shift
fi
-MUSIC="${1:-$MUSICDIR/$(ls "$MUSICDIR" | cut -c 1-80 | dmenu -i -p "Play ")}"
+MUSIC="${1:-$MUSICDIR/$(ls "$MUSICDIR" | cut -c 1-50 | dmenu -i -p "Play ")}"
SCRIPT="${XDG_CONFIG_HOME:-$HOME/.config}/mpv/music/local.lua"
if [ "$MUSIC" = "$MUSICDIR/urls" ]; then
diff --git a/.local/bin/musiccmd b/.local/bin/musiccmd
index 6c6e0d4..bfecc20 100755
--- a/.local/bin/musiccmd
+++ b/.local/bin/musiccmd
@@ -77,7 +77,7 @@ main() {
kill -34 $(pidof sb)
herbe "Error: There is no music playing"\
"Do you want to play some ?" && music
- return 1
+ return
fi
cmd="${1:-$(printf '⏯️pause/play\n⏭️next\n⏮️prev\n📢volume\n🔳stop
diff --git a/.local/bin/plumber b/.local/bin/plumber
index c29b8e4..b6931a1 100755
--- a/.local/bin/plumber
+++ b/.local/bin/plumber
@@ -7,6 +7,7 @@
# - xclip or xsel
# - (optional) herbe and dmenusearch web
# - (optional) dmenu_path
+# - (optional) st with plumber patch
# shellcheck disable=SC2086
# default programs
@@ -137,6 +138,7 @@ Options:
-l|--link [link] | Open the link
-f|--file [file] | Open the file or the folder
-s|--sel | Use the selection buffer instead, Plan9's way
+ -t|--term | To be used only when invoking through a patched st
-h|--help │ Print this help message
Config:
@@ -180,6 +182,13 @@ main() {
fi
checksel "$sel" ;;
+ -t|--term)
+ #if [ "$(ps -o comm= $PPID)" != "st" ]; then
+ # printf '\033[31mError:\033[m --term option used outside of st\n' >&2
+ # usage
+ # return 1
+ #fi
+ [ -n "$2" ] && checksel "$2" ;;
-h|--help)
usage
return 0 ;;
diff --git a/.local/bin/speedtest b/.local/bin/speedtest
deleted file mode 100755
index 51d68e1..0000000
--- a/.local/bin/speedtest
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-# usage: time speedtest cmd
-
-i=0
-while [ $i -lt 1000 ]; do
- "$@"
- i=$((i+1))
-done
-printf '%d op\n' "$i"
diff --git a/.local/etc/nvim/basics.vim b/.local/etc/nvim/basics.vim
index 296b7cb..c5f96d5 100644
--- a/.local/etc/nvim/basics.vim
+++ b/.local/etc/nvim/basics.vim
@@ -10,7 +10,7 @@ aunmenu PopUp
set number
set relativenumber
-set colorcolumn=80
+set colorcolumn=80,100
"set textwidth=79
set title
set termguicolors
@@ -23,12 +23,14 @@ set nofoldenable
autocmd FileType * setl fo-=ro fo+=tc
cabbrev Q q
+cabbrev W w
iabbrev reutnr return
iabbrev TOOD TODO
nnoremap <silent> <C-L> :nohls<C-R>=has('diff')?'<Bar>dif':''<CR><CR><C-L>
+"nnoremap <C-P> :autocmd! BufWritePost *.c<CR>
nnoremap <C-d> <C-d>zz
-nnoremap <c-u> <c-u>zz
+nnoremap <C-u> <C-u>zz
nnoremap ZQ :q<CR>
" Language specific
diff --git a/.local/etc/nvim/init.vim b/.local/etc/nvim/init.vim
index 4cc6ceb..3e1525f 100644
--- a/.local/etc/nvim/init.vim
+++ b/.local/etc/nvim/init.vim
@@ -10,8 +10,6 @@ call plug#begin(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/plugged"
" Appearance
Plug 'Mofiqul/dracula.nvim' " dracula theme
Plug 'ellisonleao/gruvbox.nvim' " gruvbox theme
-"Plug 'catppuccin/nvim', { 'as': 'catppuccin' } " catppuccin theme
-"Plug 'neanias/everforest-nvim' " everforest theme
Plug 'mhinz/vim-startify' " start screen
Plug 'nvim-lualine/lualine.nvim' " bottom bar
Plug 'kyazdani42/nvim-web-devicons' " fancy icons
@@ -78,6 +76,7 @@ lua << EOF
require("debugprint").setup()
EOF
+let g:zig_fmt_autosave = 0 " too slow
let g:startify_custom_header = [
\" ▄▄▄ ▄▄▄· ▄▄▄▄▄ ▄▄▄· ▄ •▄ ▄▄▄ ",
\" ▀▄ █·▐█ ▀█ •██ ▐█ ▀█ █▌▄▌▪▪ ▀▄ █·",
diff --git a/.local/etc/nvim/lsp.vim b/.local/etc/nvim/lsp.vim
index e61e0a0..e0f63e2 100644
--- a/.local/etc/nvim/lsp.vim
+++ b/.local/etc/nvim/lsp.vim
@@ -2,6 +2,9 @@ set updatetime=1000
set signcolumn=yes
let g:completion_enable_auto_popup = 1
+" auto-format on write
+"autocmd BufWritePre * lua vim.lsp.buf.format()
+
lua << EOF
local lsp_capabilities = require('cmp_nvim_lsp').default_capabilities()
local lsp_attach = function(client, bufnr)
diff --git a/.local/etc/picom.conf b/.local/etc/picom.conf
index 22c2826..1faead9 100644
--- a/.local/etc/picom.conf
+++ b/.local/etc/picom.conf
@@ -6,5 +6,4 @@ fade-exclude = ["class_g !*= 'dmenu'"];
opacity-rule = [
"90:name *= 'Chromium'",
"90:class_g = 'herbe'"
-
];
diff --git a/.local/etc/sx/sxrc b/.local/etc/sx/sxrc
index cd6ed8d..e2c0df2 100755
--- a/.local/etc/sx/sxrc
+++ b/.local/etc/sx/sxrc
@@ -18,6 +18,7 @@ sxhkd &
pipewire &
xbanish &
redshift &
-sleep 1; sb &
+sb &
+sh -c "sleep 3; kill -10 $(pidof sb)" &
exec dwm
diff --git a/.local/etc/zls.json b/.local/etc/zls.json
new file mode 100644
index 0000000..190af9c
--- /dev/null
+++ b/.local/etc/zls.json
@@ -0,0 +1,3 @@
+{
+ "warn_style": true
+}
diff --git a/.local/etc/zsh/.zshrc b/.local/etc/zsh/.zshrc
index 15e29cf..96d638f 100644
--- a/.local/etc/zsh/.zshrc
+++ b/.local/etc/zsh/.zshrc
@@ -13,7 +13,8 @@ autoload -U colors && colors # Load colors
setopt AUTOCD # Automatically cd into typed directory.
stty stop undef # Disable ctrl-s to freeze terminal.
setopt RM_STAR_SILENT # disable double verification with rm -I *
-bindkey -v # vi mode
+setopt VI
+setopt IGNOREEOF
export KEYTIMEOUT=1
# Prompt
diff --git a/.local/etc/zsh/aliasrc b/.local/etc/zsh/aliasrc
index 8e31881..4aa58f8 100644
--- a/.local/etc/zsh/aliasrc
+++ b/.local/etc/zsh/aliasrc
@@ -9,18 +9,18 @@ done; unset command
# edit config files and stuff
alias cf="cd $XDG_CONFIG_HOME"
alias cfv="cd $XDG_CONFIG_HOME/nvim"
-alias cfz="v $ZDOTDIR/.zshrc"
-alias cfe="v $ZDOTDIR/.zshenv"
-alias cfa="v $ZDOTDIR/aliasrc"
-alias cfx="v $XDG_CONFIG_HOME/sx/sxrc"
-alias cfn="v $XDG_CONFIG_HOME/newsboat/config"
-alias cfu="v $XDG_CONFIG_HOME/newsboat/urls"
-alias cfq="v $XDG_CONFIG_HOME/quand/config"
-alias cfh="v $XDG_CONFIG_HOME/sxhkd/sxhkdrc"
-alias cfsb="v $XDG_CONFIG_HOME/sb/config"
-alias cfc="v $XDG_CONFIG_HOME/crontab"
+alias cfz="$EDITOR $ZDOTDIR/.zshrc"
+alias cfe="$EDITOR $ZDOTDIR/.zshenv"
+alias cfa="$EDITOR $ZDOTDIR/aliasrc"
+alias cfx="$EDITOR $XDG_CONFIG_HOME/sx/sxrc"
+alias cfn="$EDITOR $XDG_CONFIG_HOME/newsboat/config"
+alias cfu="$EDITOR $XDG_CONFIG_HOME/newsboat/urls"
+alias cfq="$EDITOR $XDG_CONFIG_HOME/quand/config"
+alias cfh="$EDITOR $XDG_CONFIG_HOME/sxhkd/sxhkdrc"
+alias cfsb="$EDITOR $XDG_CONFIG_HOME/sb/config"
+alias cfc="$EDITOR $XDG_CONFIG_HOME/crontab"
alias dt="cd $XDG_DATA_HOME"
-alias pkg="v $XDG_DATA_HOME/packages"
+alias pkg="$EDITOR $XDG_DATA_HOME/packages"
alias d="cd $XDG_DOWNLOAD_DIR"
alias D="cd $XDG_DOCUMENTS_DIR"
alias mm="cd $XDG_MUSIC_DIR"
@@ -37,10 +37,11 @@ alias cac="cd $XDG_CACHE_HOME"
# shorter name and basic stuff changed
[ -x "$(command -v nvim)" ] && alias vimdiff="nvim -d"
-alias v="$EDITOR"
-alias vim="$EDITOR"
-alias suvi="$ROOTCMD $EDITOR"
+alias e="$EDITOR"
+alias v="bat --style=numbers,changes --tabs 8"
+alias se="$ROOTCMD $EDITOR"
alias cc="$CC"
+alias "$ROOTCMD"="$ROOTCMD " # run root commands with aliases
alias lf="lfub"
alias :q="exit"
alias :Q="exit"
@@ -61,6 +62,9 @@ alias tmp='cd $(mktemp -d)'
alias p="plumber"
alias mount="$ROOTCMD mount -o nosuid,nodev,noexec"
alias gb="go build"
+alias zb="zig build"
+alias cb="cargo build"
+alias g="grep"
# verbosity and colors
alias rm="rm -vI"
@@ -68,7 +72,7 @@ alias rmdir="rmdir -v"
alias cp="cp -riv"
alias mv="mv -iv"
alias mkdir="mkdir -pv"
-alias grep="grep --color=auto"
+alias grep="grep -RI --color=auto --exclude-dir=.git"
alias diff="diff --color=auto"
alias ip="ip --color=auto"
alias ls="ls --color=auto --group-directories-first"
@@ -82,20 +86,22 @@ alias duf="duf -hide special"
alias fd="fd -HI"
# git
-alias g="git"
+alias G="gitui"
alias gs="git status"
alias ga="git add"
alias gc="git commit"
alias gca="git commit -a"
alias gcv="git commit -v"
alias gcm="git commit -m"
-alias gp="git push --follow-tags" # --tags
+alias gam="git commit --amend"
+alias gp="git push --follow-tags"
alias gpl="git pull"
alias gr="git restore"
alias grs="gr --staged"
alias gd="git diff"
alias gac="ga . && gc"
alias gacv="ga . && gcv"
+alias gcp="gc && gp"
alias gacp="ga . && gc && gp"
alias gacpv="ga . && gcv && gp"
diff --git a/.local/share/packages b/.local/share/packages
index 6cb4ef3..84a39c1 100644
--- a/.local/share/packages
+++ b/.local/share/packages
@@ -48,6 +48,7 @@ htop-vim # process viewer (htop) with vim keybinds
openssh-dotlocal # openssh but ~/.ssh to ~/.local/etc/ssh
herbe # notifications
gomuks # matrix client
+poop # Performance Optimizer Observation Platform
## terminal
zsh # user shell
@@ -65,7 +66,7 @@ ytfzf # search youtube video without a browser
dust # du replacement
duf # df replacement
fd # find replacement
-gitui # tui for git (good if you don't remember what change you made)
+gitui=0.22.1 # tui for git
## dev
#texlive # LaTeX (big package)
@@ -77,7 +78,7 @@ tcc # tiny c compiler
mingw-w64-gcc # windows cc
musl # another libc
libbsd
-zig
+zig # NOTE: use zig-dev-bin from AUR instead
pypy3 # JIT python interpreter
zls # zig lsp
gopls # go lsp
@@ -91,6 +92,7 @@ vscode-html-languageserver
astyle # C formatter
shellcheck
cmake # use zig or make please
+gdb
## sound
rtkit
@@ -150,3 +152,5 @@ python-axolotl # gajim dependency
python-gnupg # gajim dependency
git-lfs
xdo # window manipulation
+zsh-completions
+slop