refactor config
This commit is contained in:
commit
4f0e213f4a
155 changed files with 13983 additions and 0 deletions
144
config/zsh/completions/_alacritty
Normal file
144
config/zsh/completions/_alacritty
Normal file
|
|
@ -0,0 +1,144 @@
|
|||
#compdef alacritty
|
||||
|
||||
autoload -U is-at-least
|
||||
|
||||
_alacritty() {
|
||||
typeset -A opt_args
|
||||
typeset -a _arguments_options
|
||||
local ret=1
|
||||
|
||||
if is-at-least 5.2; then
|
||||
_arguments_options=(-s -S -C)
|
||||
else
|
||||
_arguments_options=(-s -C)
|
||||
fi
|
||||
|
||||
local context curcontext="$curcontext" state line
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'--embed=[X11 window ID to embed Alacritty within (decimal or hexadecimal with "0x" prefix)]:EMBED: ' \
|
||||
'--config-file=[Specify alternative configuration file \[default: $XDG_CONFIG_HOME/alacritty/alacritty.yml\]]:CONFIG_FILE:_files' \
|
||||
'--socket=[Path for IPC socket creation]:SOCKET:_files' \
|
||||
'*-o+[Override configuration file options \[example: cursor.style=Beam\]]:OPTION: ' \
|
||||
'*--option=[Override configuration file options \[example: cursor.style=Beam\]]:OPTION: ' \
|
||||
'--working-directory=[Start the shell in the specified working directory]:WORKING_DIRECTORY:_files' \
|
||||
'*-e+[Command and args to execute (must be last argument)]:COMMAND: ' \
|
||||
'*--command=[Command and args to execute (must be last argument)]:COMMAND: ' \
|
||||
'-t+[Defines the window title \[default: Alacritty\]]:TITLE: ' \
|
||||
'--title=[Defines the window title \[default: Alacritty\]]:TITLE: ' \
|
||||
'--class=[Defines window class/app_id on X11/Wayland \[default: Alacritty\]]:instance> | <instance>,<general: ' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'-V[Print version information]' \
|
||||
'--version[Print version information]' \
|
||||
'--print-events[Print all events to stdout]' \
|
||||
'--ref-test[Generates ref test]' \
|
||||
'(-v)*-q[Reduces the level of verbosity (the min level is -qq)]' \
|
||||
'(-q)*-v[Increases the level of verbosity (the max level is -vvv)]' \
|
||||
'--hold[Remain open after child process exit]' \
|
||||
":: :_alacritty_commands" \
|
||||
"*::: :->alacritty" \
|
||||
&& ret=0
|
||||
case $state in
|
||||
(alacritty)
|
||||
words=($line[1] "${words[@]}")
|
||||
(( CURRENT += 1 ))
|
||||
curcontext="${curcontext%:*:*}:alacritty-command-$line[1]:"
|
||||
case $line[1] in
|
||||
(msg)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-s+[IPC socket connection path override]:SOCKET:_files' \
|
||||
'--socket=[IPC socket connection path override]:SOCKET:_files' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
":: :_alacritty__msg_commands" \
|
||||
"*::: :->msg" \
|
||||
&& ret=0
|
||||
|
||||
case $state in
|
||||
(msg)
|
||||
words=($line[1] "${words[@]}")
|
||||
(( CURRENT += 1 ))
|
||||
curcontext="${curcontext%:*:*}:alacritty-msg-command-$line[1]:"
|
||||
case $line[1] in
|
||||
(create-window)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'--working-directory=[Start the shell in the specified working directory]:WORKING_DIRECTORY:_files' \
|
||||
'*-e+[Command and args to execute (must be last argument)]:COMMAND: ' \
|
||||
'*--command=[Command and args to execute (must be last argument)]:COMMAND: ' \
|
||||
'-t+[Defines the window title \[default: Alacritty\]]:TITLE: ' \
|
||||
'--title=[Defines the window title \[default: Alacritty\]]:TITLE: ' \
|
||||
'--class=[Defines window class/app_id on X11/Wayland \[default: Alacritty\]]:instance> | <instance>,<general: ' \
|
||||
'--hold[Remain open after child process exit]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(config)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-w+[Window ID for the new config]:WINDOW_ID: ' \
|
||||
'--window-id=[Window ID for the new config]:WINDOW_ID: ' \
|
||||
'()-r[Clear all runtime configuration changes]' \
|
||||
'()--reset[Clear all runtime configuration changes]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'*::options -- Configuration file options \[example\: cursor.style=Beam\]:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(help)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'*::subcommand -- The subcommand whose help message to display:' \
|
||||
&& ret=0
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
(help)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'*::subcommand -- The subcommand whose help message to display:' \
|
||||
&& ret=0
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
(( $+functions[_alacritty_commands] )) ||
|
||||
_alacritty_commands() {
|
||||
local commands; commands=(
|
||||
'msg:Send a message to the Alacritty socket' \
|
||||
'help:Print this message or the help of the given subcommand(s)' \
|
||||
)
|
||||
_describe -t commands 'alacritty commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_alacritty__msg__config_commands] )) ||
|
||||
_alacritty__msg__config_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'alacritty msg config commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_alacritty__msg__create-window_commands] )) ||
|
||||
_alacritty__msg__create-window_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'alacritty msg create-window commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_alacritty__help_commands] )) ||
|
||||
_alacritty__help_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'alacritty help commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_alacritty__msg__help_commands] )) ||
|
||||
_alacritty__msg__help_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'alacritty msg help commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_alacritty__msg_commands] )) ||
|
||||
_alacritty__msg_commands() {
|
||||
local commands; commands=(
|
||||
'create-window:Create a new window in the same Alacritty process' \
|
||||
'config:Update the Alacritty configuration' \
|
||||
'help:Print this message or the help of the given subcommand(s)' \
|
||||
)
|
||||
_describe -t commands 'alacritty msg commands' commands "$@"
|
||||
}
|
||||
|
||||
_alacritty "$@"
|
||||
447
config/zsh/completions/_cargo
Normal file
447
config/zsh/completions/_cargo
Normal file
|
|
@ -0,0 +1,447 @@
|
|||
#compdef cargo
|
||||
|
||||
autoload -U regexp-replace
|
||||
|
||||
_cargo() {
|
||||
local curcontext="$curcontext" ret=1
|
||||
local -a command_scope_spec common parallel features msgfmt triple target registry
|
||||
local -a state line state_descr # These are set by _arguments
|
||||
typeset -A opt_args
|
||||
|
||||
common=(
|
||||
'(-q --quiet)*'{-v,--verbose}'[use verbose output]'
|
||||
'(-q --quiet -v --verbose)'{-q,--quiet}'[no output printed to stdout]'
|
||||
'-Z+[pass unstable (nightly-only) flags to cargo]: :_cargo_unstable_flags'
|
||||
'--frozen[require that Cargo.lock and cache are up-to-date]'
|
||||
'--locked[require that Cargo.lock is up-to-date]'
|
||||
'--color=[specify colorization option]:coloring:(auto always never)'
|
||||
'(- 1 *)'{-h,--help}'[show help message]'
|
||||
)
|
||||
|
||||
# leading items in parentheses are an exclusion list for the arguments following that arg
|
||||
# See: http://zsh.sourceforge.net/Doc/Release/Completion-System.html#Completion-Functions
|
||||
# - => exclude all other options
|
||||
# 1 => exclude positional arg 1
|
||||
# * => exclude all other args
|
||||
# +blah => exclude +blah
|
||||
_arguments -s -S -C $common \
|
||||
'(- 1 *)--list[list installed commands]' \
|
||||
'(- 1 *)--explain=[provide a detailed explanation of an error message]:error code' \
|
||||
'(- 1 *)'{-V,--version}'[show version information]' \
|
||||
'(+beta +nightly)+stable[use the stable toolchain]' \
|
||||
'(+stable +nightly)+beta[use the beta toolchain]' \
|
||||
'(+stable +beta)+nightly[use the nightly toolchain]' \
|
||||
'1: :_cargo_cmds' \
|
||||
'*:: :->args'
|
||||
|
||||
# These flags are mutually exclusive specifiers for the scope of a command; as
|
||||
# they are used in multiple places without change, they are expanded into the
|
||||
# appropriate command's `_arguments` where appropriate.
|
||||
command_scope_spec=(
|
||||
'(--bin --example --test --lib)--bench=[specify benchmark name]: :_cargo_benchmark_names'
|
||||
'(--bench --bin --test --lib)--example=[specify example name]:example name:_cargo_example_names'
|
||||
'(--bench --example --test --lib)--bin=[specify binary name]:binary name'
|
||||
'(--bench --bin --example --test)--lib=[specify library name]:library name'
|
||||
'(--bench --bin --example --lib)--test=[specify test name]:test name'
|
||||
)
|
||||
|
||||
parallel=(
|
||||
'(-j --jobs)'{-j+,--jobs=}'[specify number of parallel jobs]:jobs [# of CPUs]'
|
||||
'--keep-going[do not abort build on first error]'
|
||||
)
|
||||
|
||||
features=(
|
||||
'(--all-features)'{-F+,--features=}'[specify features to activate]:feature'
|
||||
'(--features -F)--all-features[activate all available features]'
|
||||
"--no-default-features[don't build the default features]"
|
||||
)
|
||||
|
||||
msgfmt='--message-format=[specify error format]:error format [human]:(human json short)'
|
||||
triple='--target=[specify target triple]:target triple:_cargo_target_triple'
|
||||
target='--target-dir=[specify directory for all generated artifacts]:directory:_directories'
|
||||
manifest='--manifest-path=[specify path to manifest]:path:_directories'
|
||||
registry='--registry=[specify registry to use]:registry'
|
||||
|
||||
case $state in
|
||||
args)
|
||||
curcontext="${curcontext%:*}-${words[1]}:"
|
||||
case ${words[1]} in
|
||||
add)
|
||||
_arguments -s -A "^--" $common $manifest $registry \
|
||||
{-F+,--features=}'[specify features to activate]:feature' \
|
||||
"--default-features[enable the default features]" \
|
||||
"--no-default-features[don't enable the default features]" \
|
||||
"--optional[mark the dependency as optional]" \
|
||||
"--no-optional[mark the dependency as required]" \
|
||||
"--dev[add as a dev dependency]" \
|
||||
"--build[add as a build dependency]" \
|
||||
"--target=[add as a dependency to the given target platform]" \
|
||||
"--rename=[rename the dependency]" \
|
||||
"--dry-run[don't actually write the manifest]" \
|
||||
'--branch=[branch to use when adding from git]:branch' \
|
||||
'--git=[specify URL from which to add the crate]:url:_urls' \
|
||||
'--path=[local filesystem path to crate to add]: :_directories' \
|
||||
'--rev=[specific commit to use when adding from git]:commit' \
|
||||
'--tag=[tag to use when adding from git]:tag' \
|
||||
'1: :_guard "^-*" "crate name"' \
|
||||
'*:args:_default'
|
||||
;;
|
||||
bench)
|
||||
_arguments -s -A "^--" $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
"${command_scope_spec[@]}" \
|
||||
'--all-targets[benchmark all targets]' \
|
||||
"--no-run[compile but don't run]" \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to run benchmarks for]:package:_cargo_package_names' \
|
||||
'--exclude=[exclude packages from the benchmark]:spec' \
|
||||
'--no-fail-fast[run all benchmarks regardless of failure]' \
|
||||
'1: :_guard "^-*" "bench name"' \
|
||||
'*:args:_default'
|
||||
;;
|
||||
|
||||
build | b)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--all-targets[equivalent to specifying --lib --bins --tests --benches --examples]' \
|
||||
"${command_scope_spec[@]}" \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to build]:package:_cargo_package_names' \
|
||||
'--release[build in release mode]' \
|
||||
'--build-plan[output the build plan in JSON]' \
|
||||
;;
|
||||
|
||||
check | c)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--all-targets[equivalent to specifying --lib --bins --tests --benches --examples]' \
|
||||
"${command_scope_spec[@]}" \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to check]:package:_cargo_package_names' \
|
||||
'--release[check in release mode]' \
|
||||
;;
|
||||
|
||||
clean)
|
||||
_arguments -s -S $common $triple $target $manifest \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to clean]:package:_cargo_package_names' \
|
||||
'--release[clean release artifacts]' \
|
||||
'--doc[clean just the documentation directory]'
|
||||
;;
|
||||
|
||||
doc | d)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--no-deps[do not build docs for dependencies]' \
|
||||
'--document-private-items[include non-public items in the documentation]' \
|
||||
'--open[open docs in browser after the build]' \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to document]:package:_cargo_package_names' \
|
||||
'--release[build artifacts in release mode, with optimizations]' \
|
||||
;;
|
||||
|
||||
fetch)
|
||||
_arguments -s -S $common $triple $manifest
|
||||
;;
|
||||
|
||||
fix)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
"${command_scope_spec[@]}" \
|
||||
'--broken-code[fix code even if it already has compiler errors]' \
|
||||
'--edition[fix in preparation for the next edition]' \
|
||||
'--edition-idioms[fix warnings to migrate to the idioms of an edition]' \
|
||||
'--allow-no-vcs[fix code even if a VCS was not detected]' \
|
||||
'--allow-dirty[fix code even if the working directory is dirty]' \
|
||||
'--allow-staged[fix code even if the working directory has staged changes]'
|
||||
;;
|
||||
|
||||
generate-lockfile)
|
||||
_arguments -s -S $common $manifest
|
||||
;;
|
||||
|
||||
help)
|
||||
_cargo_cmds
|
||||
;;
|
||||
|
||||
init)
|
||||
_arguments -s -S $common $registry \
|
||||
'--lib[use library template]' \
|
||||
'--edition=[specify edition to set for the crate generated]:edition:(2015 2018 2021)' \
|
||||
'--vcs=[initialize a new repo with a given VCS]:vcs:(git hg pijul fossil none)' \
|
||||
'--name=[set the resulting package name]:name' \
|
||||
'1:path:_directories'
|
||||
;;
|
||||
|
||||
install)
|
||||
_arguments -s -S $common $parallel $features $triple $registry \
|
||||
'(-f --force)'{-f,--force}'[force overwriting of existing crates or binaries]' \
|
||||
'--bin=[only install the specified binary]:binary' \
|
||||
'--branch=[branch to use when installing from git]:branch' \
|
||||
'--debug[Build in debug mode (with the "dev" profile) instead of release mode]' \
|
||||
'--example=[install the specified example instead of binaries]:example:_cargo_example_names' \
|
||||
'--git=[specify URL from which to install the crate]:url:_urls' \
|
||||
'--path=[local filesystem path to crate to install]: :_directories' \
|
||||
'--rev=[specific commit to use when installing from git]:commit' \
|
||||
'--root=[directory to install packages into]: :_directories' \
|
||||
'--tag=[tag to use when installing from git]:tag' \
|
||||
'--version=[version to install from crates.io]:version' \
|
||||
'--list[list all installed packages and their versions]' \
|
||||
'*: :_guard "^-*" "crate"'
|
||||
;;
|
||||
|
||||
locate-project)
|
||||
_arguments -s -S $common $manifest \
|
||||
'--message-format=[specify output representation]:output representation [json]:(json plain)' \
|
||||
'--workspace[locate Cargo.toml of the workspace root]'
|
||||
;;
|
||||
|
||||
login)
|
||||
_arguments -s -S $common $registry \
|
||||
'*: :_guard "^-*" "token"'
|
||||
;;
|
||||
|
||||
metadata)
|
||||
_arguments -s -S $common $features $manifest \
|
||||
"--no-deps[output information only about the root package and don't fetch dependencies]" \
|
||||
'--format-version=[specify format version]:version [1]:(1)'
|
||||
;;
|
||||
|
||||
new)
|
||||
_arguments -s -S $common $registry \
|
||||
'--lib[use library template]' \
|
||||
'--vcs:initialize a new repo with a given VCS:(git hg none)' \
|
||||
'--name=[set the resulting package name]'
|
||||
;;
|
||||
|
||||
owner)
|
||||
_arguments -s -S $common $registry \
|
||||
'(-a --add)'{-a,--add}'[specify name of a user or team to invite as an owner]:name' \
|
||||
'--index=[specify registry index]:index' \
|
||||
'(-l --list)'{-l,--list}'[list owners of a crate]' \
|
||||
'(-r --remove)'{-r,--remove}'[specify name of a user or team to remove as an owner]:name' \
|
||||
'--token=[specify API token to use when authenticating]:token' \
|
||||
'*: :_guard "^-*" "crate"'
|
||||
;;
|
||||
|
||||
package)
|
||||
_arguments -s -S $common $parallel $features $triple $target $manifest \
|
||||
'(-l --list)'{-l,--list}'[print files included in a package without making one]' \
|
||||
'--no-metadata[ignore warnings about a lack of human-usable metadata]' \
|
||||
'--allow-dirty[allow dirty working directories to be packaged]' \
|
||||
"--no-verify[don't build to verify contents]"
|
||||
;;
|
||||
|
||||
pkgid)
|
||||
_arguments -s -S $common $manifest \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to get ID specifier for]:package:_cargo_package_names' \
|
||||
'*: :_guard "^-*" "spec"'
|
||||
;;
|
||||
|
||||
publish)
|
||||
_arguments -s -S $common $parallel $features $triple $target $manifest $registry \
|
||||
'--index=[specify registry index]:index' \
|
||||
'--allow-dirty[allow dirty working directories to be packaged]' \
|
||||
"--no-verify[don't verify the contents by building them]" \
|
||||
'--token=[specify token to use when uploading]:token' \
|
||||
'--dry-run[perform all checks without uploading]'
|
||||
;;
|
||||
|
||||
read-manifest)
|
||||
_arguments -s -S $common $manifest
|
||||
;;
|
||||
|
||||
run | r)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--example=[name of the bin target]:name:_cargo_example_names' \
|
||||
'--bin=[name of the bin target]:name' \
|
||||
'(-p --package)'{-p+,--package=}'[specify package with the target to run]:package:_cargo_package_names' \
|
||||
'--release[build in release mode]' \
|
||||
'*: :_default'
|
||||
;;
|
||||
|
||||
rustc)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to build]:package:_cargo_package_names' \
|
||||
'--profile=[specify profile to build the selected target for]:profile' \
|
||||
'--release[build artifacts in release mode, with optimizations]' \
|
||||
"${command_scope_spec[@]}" \
|
||||
'*: : _dispatch rustc rustc -default-'
|
||||
;;
|
||||
|
||||
rustdoc)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--document-private-items[include non-public items in the documentation]' \
|
||||
'--open[open the docs in a browser after the operation]' \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to document]:package:_cargo_package_names' \
|
||||
'--release[build artifacts in release mode, with optimizations]' \
|
||||
"${command_scope_spec[@]}" \
|
||||
'*: : _dispatch rustdoc rustdoc -default-'
|
||||
;;
|
||||
|
||||
search)
|
||||
_arguments -s -S $common $registry \
|
||||
'--index=[specify registry index]:index' \
|
||||
'--limit=[limit the number of results]:results [10]' \
|
||||
'*: :_guard "^-*" "query"'
|
||||
;;
|
||||
|
||||
test | t)
|
||||
_arguments -s -S $common $parallel $features $msgfmt $triple $target $manifest \
|
||||
'--test=[test name]: :_cargo_test_names' \
|
||||
'--no-fail-fast[run all tests regardless of failure]' \
|
||||
'--no-run[compile but do not run]' \
|
||||
'(-p --package)'{-p+,--package=}'[package to run tests for]:package:_cargo_package_names' \
|
||||
'--all[test all packages in the workspace]' \
|
||||
'--release[build artifacts in release mode, with optimizations]' \
|
||||
'1: :_cargo_test_names' \
|
||||
'(--doc --bin --example --test --bench)--lib[only test library]' \
|
||||
'(--lib --bin --example --test --bench)--doc[only test documentation]' \
|
||||
'(--lib --doc --example --test --bench)--bin=[binary name]' \
|
||||
'(--lib --doc --bin --test --bench)--example=[example name]:_cargo_example_names' \
|
||||
'(--lib --doc --bin --example --bench)--test=[test name]' \
|
||||
'(--lib --doc --bin --example --test)--bench=[benchmark name]' \
|
||||
'*: :_default'
|
||||
;;
|
||||
|
||||
tree)
|
||||
_arguments -s -S $common $features $triple $manifest \
|
||||
'(-p --package)'{-p+,--package=}'[package to use as the root]:package:_cargo_package_names' \
|
||||
'(-i --invert)'{-i+,--invert=}'[invert the tree for the given package]:package:_cargo_package_names' \
|
||||
'--prefix=[line prefix]:prefix:(depth indent none)' \
|
||||
'--no-dedupe[repeat shared dependencies]' \
|
||||
'(-d --duplicates)'{-d,--duplicates}'[packages with multiple versions]' \
|
||||
'--charset=[utf8 or ascii]:charset:(utf8 ascii)' \
|
||||
'(-f --format)'{-f,--format=}'[format string]:format' \
|
||||
'(-e --edges)'{-e,--edges=}'[edge kinds]:kind:(features normal build dev all no-dev no-build no-normal)' \
|
||||
;;
|
||||
|
||||
uninstall)
|
||||
_arguments -s -S $common \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to uninstall]:package:_cargo_package_names' \
|
||||
'--bin=[only uninstall the specified binary]:name' \
|
||||
'--root=[directory to uninstall packages from]: :_files -/' \
|
||||
'*:crate:_cargo_installed_crates -F line'
|
||||
;;
|
||||
|
||||
update)
|
||||
_arguments -s -S $common $manifest \
|
||||
'--aggressive=[force dependency update]' \
|
||||
"--dry-run[don't actually write the lockfile]" \
|
||||
'(-p --package)'{-p+,--package=}'[specify package to update]:package:_cargo_package_names' \
|
||||
'--precise=[update single dependency to precise release]:release'
|
||||
;;
|
||||
|
||||
verify-project)
|
||||
_arguments -s -S $common $manifest
|
||||
;;
|
||||
|
||||
version)
|
||||
_arguments -s -S $common
|
||||
;;
|
||||
|
||||
yank)
|
||||
_arguments -s -S $common $registry \
|
||||
'--version=[specify yank version]:version' \
|
||||
'--undo[undo a yank, putting a version back into the index]' \
|
||||
'--index=[specify registry index to yank from]:registry index' \
|
||||
'--token=[specify API token to use when authenticating]:token' \
|
||||
'*: :_guard "^-*" "crate"'
|
||||
;;
|
||||
*)
|
||||
# allow plugins to define their own functions
|
||||
if ! _call_function ret _cargo-${words[1]}; then
|
||||
# fallback on default completion for unknown commands
|
||||
_default && ret=0
|
||||
fi
|
||||
(( ! ret ))
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
_cargo_unstable_flags() {
|
||||
local flags
|
||||
flags=( help ${${${(M)${(f)"$(_call_program flags cargo -Z help)"}:#*--*}/ #-- #/:}##*-Z } )
|
||||
_describe -t flags 'unstable flag' flags
|
||||
}
|
||||
|
||||
_cargo_installed_crates() {
|
||||
local expl
|
||||
_description crates expl 'crate'
|
||||
compadd "$@" "$expl[@]" - ${${${(f)"$(cargo install --list)"}:# *}%% *}
|
||||
}
|
||||
|
||||
_cargo_cmds() {
|
||||
local -a commands
|
||||
# This uses Parameter Expansion Flags, which are a built-in Zsh feature.
|
||||
# See more: http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion-Flags
|
||||
# and http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion
|
||||
#
|
||||
# # How this work?
|
||||
#
|
||||
# First it splits the result of `cargo --list` at newline, then it removes the first line.
|
||||
# Then it removes indentation (4 whitespaces) before each items. (Note the x## pattern [1]).
|
||||
# Then it replaces those spaces between item and description with a `:`
|
||||
#
|
||||
# [1]: https://github.com/zsh-users/zsh-completions/blob/master/zsh-completions-howto.org#patterns
|
||||
commands=( ${${${(M)"${(f)$(_call_program commands cargo --list)}":# *}/ ##/}/ ##/:} )
|
||||
_describe -t commands 'command' commands
|
||||
}
|
||||
|
||||
_cargo_target_triple() {
|
||||
local -a targets
|
||||
targets=( ${(f)"$(rustc --print target-list)"} )
|
||||
_describe 'target triple' targets
|
||||
}
|
||||
|
||||
#FIXME: Disabled until fixed
|
||||
#gets package names from the manifest file
|
||||
_cargo_package_names() {
|
||||
_message -e packages package
|
||||
}
|
||||
|
||||
# Extracts the values of "name" from the array given in $1 and shows them as
|
||||
# command line options for completion
|
||||
_cargo_names_from_array() {
|
||||
local manifest=$(cargo locate-project --message-format plain)
|
||||
if [[ -z $manifest ]]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
local last_line
|
||||
local -a names;
|
||||
local in_block=false
|
||||
local block_name=$1
|
||||
names=()
|
||||
while read -r line; do
|
||||
if [[ $last_line == "[[$block_name]]" ]]; then
|
||||
in_block=true
|
||||
else
|
||||
if [[ $last_line =~ '\s*\[\[.*' ]]; then
|
||||
in_block=false
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $in_block == true ]]; then
|
||||
if [[ $line =~ '\s*name\s*=' ]]; then
|
||||
regexp-replace line '^\s*name\s*=\s*|"' ''
|
||||
names+=( "$line" )
|
||||
fi
|
||||
fi
|
||||
|
||||
last_line=$line
|
||||
done < "$manifest"
|
||||
_describe "$block_name" names
|
||||
|
||||
}
|
||||
|
||||
#Gets the test names from the manifest file
|
||||
_cargo_test_names() {
|
||||
_cargo_names_from_array "test"
|
||||
}
|
||||
|
||||
#Gets the bench names from the manifest file
|
||||
_cargo_benchmark_names() {
|
||||
_cargo_names_from_array "bench"
|
||||
}
|
||||
|
||||
_cargo_example_names() {
|
||||
if [[ -d examples ]]; then
|
||||
local -a files=(${(@f)$(echo examples/*.rs(:t:r))})
|
||||
_values 'example' "${files[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
_cargo
|
||||
20
config/zsh/completions/_cht
Normal file
20
config/zsh/completions/_cht
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
#compdef cht.sh
|
||||
__CHTSH_LANGS=($(curl -s cheat.sh/:list))
|
||||
_arguments -C \
|
||||
'--help[show this help message and exit]: :->noargs' \
|
||||
'--shell[enter shell repl]: :->noargs' \
|
||||
'1:Cheat Sheet:->lang' \
|
||||
'*::: :->noargs' && return 0
|
||||
|
||||
if [[ CURRENT -ge 1 ]]; then
|
||||
case $state in
|
||||
noargs)
|
||||
_message "nothing to complete";;
|
||||
lang)
|
||||
compadd -X "Cheat Sheets" ${__CHTSH_LANGS[@]};;
|
||||
*)
|
||||
_message "Unknown state, error in autocomplete";;
|
||||
esac
|
||||
|
||||
return
|
||||
fi
|
||||
86
config/zsh/completions/_lsd
Normal file
86
config/zsh/completions/_lsd
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
#compdef lsd
|
||||
|
||||
autoload -U is-at-least
|
||||
|
||||
_lsd() {
|
||||
typeset -A opt_args
|
||||
typeset -a _arguments_options
|
||||
local ret=1
|
||||
|
||||
if is-at-least 5.2; then
|
||||
_arguments_options=(-s -S -C)
|
||||
else
|
||||
_arguments_options=(-s -C)
|
||||
fi
|
||||
|
||||
local context curcontext="$curcontext" state line
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'*--color=[When to use terminal colours]: :(always auto never)' \
|
||||
'*--icon=[When to print the icons]: :(always auto never)' \
|
||||
'*--icon-theme=[Whether to use fancy or unicode icons]: :(fancy unicode)' \
|
||||
'--config-file=[Provide a custom lsd configuration file]:config-file: ' \
|
||||
'*--depth=[Stop recursing into directories after reaching specified depth]:num: ' \
|
||||
'*--permission=[How to display permissions]: :(rwx octal)' \
|
||||
'*--size=[How to display size]: :(default short bytes)' \
|
||||
'*--date=[How to display date \[possible values: date, relative, +date-time-format\]]: : ' \
|
||||
'*--sort=[sort by WORD instead of name]:WORD:(size time version extension none)' \
|
||||
'*--group-dirs=[Sort the directories then the files]: :(none first last)' \
|
||||
'*--blocks=[Specify the blocks that will be displayed and in what order]: :(permission user group context size date name inode links)' \
|
||||
'*-I+[Do not display files/directories with names matching the glob pattern(s). More than one can be specified by repeating the argument]:pattern: ' \
|
||||
'*--ignore-glob=[Do not display files/directories with names matching the glob pattern(s). More than one can be specified by repeating the argument]:pattern: ' \
|
||||
'*--hyperlink=[Attach hyperlink to filenames]: :(always auto never)' \
|
||||
'--help[Print help information]' \
|
||||
'-V[Print version information]' \
|
||||
'--version[Print version information]' \
|
||||
'*-a[Do not ignore entries starting with .]' \
|
||||
'*--all[Do not ignore entries starting with .]' \
|
||||
'*-A[Do not list implied . and ..]' \
|
||||
'*--almost-all[Do not list implied . and ..]' \
|
||||
'*-F[Append indicator (one of */=>@|) at the end of the file names]' \
|
||||
'*--classify[Append indicator (one of */=>@|) at the end of the file names]' \
|
||||
'*-l[Display extended file metadata as a table]' \
|
||||
'*--long[Display extended file metadata as a table]' \
|
||||
'--ignore-config[Ignore the configuration file]' \
|
||||
'*-1[Display one entry per line]' \
|
||||
'*--oneline[Display one entry per line]' \
|
||||
'(--tree)*-R[Recurse into directories]' \
|
||||
'(--tree)*--recursive[Recurse into directories]' \
|
||||
'*-h[For ls compatibility purposes ONLY, currently set by default]' \
|
||||
'*--human-readable[For ls compatibility purposes ONLY, currently set by default]' \
|
||||
'(-R --recursive)*--tree[Recurse into directories and present the result as a tree]' \
|
||||
'(--depth -R --recursive)-d[Display directories themselves, and not their contents (recursively when used with --tree)]' \
|
||||
'(--depth -R --recursive)--directory-only[Display directories themselves, and not their contents (recursively when used with --tree)]' \
|
||||
'*--total-size[Display the total size of directories]' \
|
||||
'*-t[Sort by time modified]' \
|
||||
'*--timesort[Sort by time modified]' \
|
||||
'*-S[Sort by size]' \
|
||||
'*--sizesort[Sort by size]' \
|
||||
'*-X[Sort by file extension]' \
|
||||
'*--extensionsort[Sort by file extension]' \
|
||||
'*-v[Natural sort of (version) numbers within text]' \
|
||||
'*--versionsort[Natural sort of (version) numbers within text]' \
|
||||
'*-U[Do not sort. List entries in directory order]' \
|
||||
'*--no-sort[Do not sort. List entries in directory order]' \
|
||||
'*-r[Reverse the order of the sort]' \
|
||||
'*--reverse[Reverse the order of the sort]' \
|
||||
'--group-directories-first[Groups the directories at the top before the files. Same as --group-dirs=first]' \
|
||||
'--classic[Enable classic mode (display output similar to ls)]' \
|
||||
'*--no-symlink[Do not display symlink target]' \
|
||||
'*-i[Display the index number of each file]' \
|
||||
'*--inode[Display the index number of each file]' \
|
||||
'*-L[When showing file information for a symbolic link, show information for the file the link references rather than for the link itself]' \
|
||||
'*--dereference[When showing file information for a symbolic link, show information for the file the link references rather than for the link itself]' \
|
||||
'-Z[Print security context (label) of each file]' \
|
||||
'--context[Print security context (label) of each file]' \
|
||||
'--header[Display block headers]' \
|
||||
'*::FILE:_files' \
|
||||
&& ret=0
|
||||
}
|
||||
|
||||
(( $+functions[_lsd_commands] )) ||
|
||||
_lsd_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'lsd commands' commands "$@"
|
||||
}
|
||||
|
||||
_lsd "$@"
|
||||
440
config/zsh/completions/_starship
Normal file
440
config/zsh/completions/_starship
Normal file
|
|
@ -0,0 +1,440 @@
|
|||
#compdef starship
|
||||
|
||||
autoload -U is-at-least
|
||||
|
||||
_starship() {
|
||||
typeset -A opt_args
|
||||
typeset -a _arguments_options
|
||||
local ret=1
|
||||
|
||||
if is-at-least 5.2; then
|
||||
_arguments_options=(-s -S -C)
|
||||
else
|
||||
_arguments_options=(-s -C)
|
||||
fi
|
||||
|
||||
local context curcontext="$curcontext" state line
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'-V[Print version information]' \
|
||||
'--version[Print version information]' \
|
||||
":: :_starship_commands" \
|
||||
"*::: :->starship" \
|
||||
&& ret=0
|
||||
case $state in
|
||||
(starship)
|
||||
words=($line[1] "${words[@]}")
|
||||
(( CURRENT += 1 ))
|
||||
curcontext="${curcontext%:*:*}:starship-command-$line[1]:"
|
||||
case $line[1] in
|
||||
(bug-report)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(completions)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
':shell:(bash elvish fish powershell zsh)' \
|
||||
&& ret=0
|
||||
;;
|
||||
(config)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'::name -- Configuration key to edit:' \
|
||||
'::value -- Value to place into that key:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(explain)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
||||
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'-p+[The path that the prompt should render for]:PATH:_files' \
|
||||
'--path=[The path that the prompt should render for]:PATH:_files' \
|
||||
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'-j+[The number of currently running jobs]:JOBS: ' \
|
||||
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(init)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'--print-full-init[]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
':shell:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(module)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
||||
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'-p+[The path that the prompt should render for]:PATH:_files' \
|
||||
'--path=[The path that the prompt should render for]:PATH:_files' \
|
||||
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'-j+[The number of currently running jobs]:JOBS: ' \
|
||||
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
||||
'-l[List out all supported modules]' \
|
||||
'--list[List out all supported modules]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'::name -- The name of the module to be printed:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(preset)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-l[List out all preset names]' \
|
||||
'--list[List out all preset names]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'::name -- The name of preset to be printed:(bracketed-segments nerd-font-symbols no-empty-icons no-nerd-font no-runtime-versions pastel-powerline plain-text-symbols pure-preset tokyo-night)' \
|
||||
&& ret=0
|
||||
;;
|
||||
(print-config)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-d[Print the default instead of the computed config]' \
|
||||
'--default[Print the default instead of the computed config]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
'*::name -- Configuration keys to print:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(prompt)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
||||
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'-p+[The path that the prompt should render for]:PATH:_files' \
|
||||
'--path=[The path that the prompt should render for]:PATH:_files' \
|
||||
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'-j+[The number of currently running jobs]:JOBS: ' \
|
||||
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
||||
'--right[Print the right prompt (instead of the standard left prompt)]' \
|
||||
'(--right)--continuation[Print the continuation prompt (instead of the standard left prompt)]' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(session)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(time)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(timings)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
||||
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
||||
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
||||
'-p+[The path that the prompt should render for]:PATH:_files' \
|
||||
'--path=[The path that the prompt should render for]:PATH:_files' \
|
||||
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
||||
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
||||
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
||||
'-j+[The number of currently running jobs]:JOBS: ' \
|
||||
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
&& ret=0
|
||||
;;
|
||||
(toggle)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
'-h[Print help information]' \
|
||||
'--help[Print help information]' \
|
||||
':name -- The name of the module to be toggled:' \
|
||||
'::value -- The key of the config to be toggled:' \
|
||||
&& ret=0
|
||||
;;
|
||||
(help)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
":: :_starship__help_commands" \
|
||||
"*::: :->help" \
|
||||
&& ret=0
|
||||
|
||||
case $state in
|
||||
(help)
|
||||
words=($line[1] "${words[@]}")
|
||||
(( CURRENT += 1 ))
|
||||
curcontext="${curcontext%:*:*}:starship-help-command-$line[1]:"
|
||||
case $line[1] in
|
||||
(bug-report)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(completions)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(config)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(explain)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(init)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(module)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(preset)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(print-config)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(prompt)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(session)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(time)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(timings)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(toggle)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
(help)
|
||||
_arguments "${_arguments_options[@]}" \
|
||||
&& ret=0
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
(( $+functions[_starship_commands] )) ||
|
||||
_starship_commands() {
|
||||
local commands; commands=(
|
||||
'bug-report:Create a pre-populated GitHub issue with information about your configuration' \
|
||||
'completions:Generate starship shell completions for your shell to stdout' \
|
||||
'config:Edit the starship configuration' \
|
||||
'explain:Explains the currently showing modules' \
|
||||
'init:Prints the shell function used to execute starship' \
|
||||
'module:Prints a specific prompt module' \
|
||||
'preset:Prints a preset config' \
|
||||
'print-config:Prints the computed starship configuration' \
|
||||
'prompt:Prints the full starship prompt' \
|
||||
'session:Generate random session key' \
|
||||
'time:Prints time in milliseconds' \
|
||||
'timings:Prints timings of all active modules' \
|
||||
'toggle:Toggle a given starship module' \
|
||||
'help:Print this message or the help of the given subcommand(s)' \
|
||||
)
|
||||
_describe -t commands 'starship commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__bug-report_commands] )) ||
|
||||
_starship__bug-report_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship bug-report commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__bug-report_commands] )) ||
|
||||
_starship__help__bug-report_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help bug-report commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__completions_commands] )) ||
|
||||
_starship__completions_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship completions commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__completions_commands] )) ||
|
||||
_starship__help__completions_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help completions commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__config_commands] )) ||
|
||||
_starship__config_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship config commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__config_commands] )) ||
|
||||
_starship__help__config_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help config commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__explain_commands] )) ||
|
||||
_starship__explain_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship explain commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__explain_commands] )) ||
|
||||
_starship__help__explain_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help explain commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help_commands] )) ||
|
||||
_starship__help_commands() {
|
||||
local commands; commands=(
|
||||
'bug-report:Create a pre-populated GitHub issue with information about your configuration' \
|
||||
'completions:Generate starship shell completions for your shell to stdout' \
|
||||
'config:Edit the starship configuration' \
|
||||
'explain:Explains the currently showing modules' \
|
||||
'init:Prints the shell function used to execute starship' \
|
||||
'module:Prints a specific prompt module' \
|
||||
'preset:Prints a preset config' \
|
||||
'print-config:Prints the computed starship configuration' \
|
||||
'prompt:Prints the full starship prompt' \
|
||||
'session:Generate random session key' \
|
||||
'time:Prints time in milliseconds' \
|
||||
'timings:Prints timings of all active modules' \
|
||||
'toggle:Toggle a given starship module' \
|
||||
'help:Print this message or the help of the given subcommand(s)' \
|
||||
)
|
||||
_describe -t commands 'starship help commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__help_commands] )) ||
|
||||
_starship__help__help_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help help commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__init_commands] )) ||
|
||||
_starship__help__init_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help init commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__init_commands] )) ||
|
||||
_starship__init_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship init commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__module_commands] )) ||
|
||||
_starship__help__module_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help module commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__module_commands] )) ||
|
||||
_starship__module_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship module commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__preset_commands] )) ||
|
||||
_starship__help__preset_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help preset commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__preset_commands] )) ||
|
||||
_starship__preset_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship preset commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__print-config_commands] )) ||
|
||||
_starship__help__print-config_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help print-config commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__print-config_commands] )) ||
|
||||
_starship__print-config_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship print-config commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__prompt_commands] )) ||
|
||||
_starship__help__prompt_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help prompt commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__prompt_commands] )) ||
|
||||
_starship__prompt_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship prompt commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__session_commands] )) ||
|
||||
_starship__help__session_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help session commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__session_commands] )) ||
|
||||
_starship__session_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship session commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__time_commands] )) ||
|
||||
_starship__help__time_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help time commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__time_commands] )) ||
|
||||
_starship__time_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship time commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__timings_commands] )) ||
|
||||
_starship__help__timings_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help timings commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__timings_commands] )) ||
|
||||
_starship__timings_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship timings commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__help__toggle_commands] )) ||
|
||||
_starship__help__toggle_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship help toggle commands' commands "$@"
|
||||
}
|
||||
(( $+functions[_starship__toggle_commands] )) ||
|
||||
_starship__toggle_commands() {
|
||||
local commands; commands=()
|
||||
_describe -t commands 'starship toggle commands' commands "$@"
|
||||
}
|
||||
|
||||
_starship "$@"
|
||||
47
config/zsh/completions/_tldr
Normal file
47
config/zsh/completions/_tldr
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#compdef tldr
|
||||
|
||||
_applications() {
|
||||
local -a commands
|
||||
commands=(${(uonzf)"$(tldr --list 2>/dev/null)"//:/\\:})
|
||||
_describe -t commands 'command' commands
|
||||
}
|
||||
|
||||
_tealdeer() {
|
||||
local I="-h --help -v --version"
|
||||
integer ret=1
|
||||
local -a args
|
||||
|
||||
args+=(
|
||||
"($I -l --list)"{-l,--list}"[List all commands in the cache]"
|
||||
"($I -f --render)"{-f,--render}"[Render a specific markdown file]:file:_files"
|
||||
"($I -p --platform)"{-p,--platform}'[Override the operating system]:platform:((
|
||||
linux
|
||||
macos
|
||||
sunos
|
||||
windows
|
||||
android
|
||||
))'
|
||||
"($I -L --language)"{-L,--language}"[Override the language settings]:lang"
|
||||
"($I -u --update)"{-u,--update}"[Update the local cache]"
|
||||
"($I)--no-auto-update[If auto update is configured, disable it for this run]"
|
||||
"($I -c --clear-cache)"{-c,--clear-cache}"[Clear the local cache]"
|
||||
"($I)--pager[Use a pager to page output]"
|
||||
"($I -r --raw)"{-r,--raw}"[Display the raw markdown instead of rendering it]"
|
||||
"($I -q --quiet)"{-q,--quiet}"[Suppress informational messages]"
|
||||
"($I)--show-paths[Show file and directory paths used by tealdeer]"
|
||||
"($I)--seed-config[Create a basic config]"
|
||||
"($I)--color[Controls when to use color]:when:((
|
||||
always
|
||||
auto
|
||||
never
|
||||
))"
|
||||
'(- *)'{-h,--help}'[Display help]'
|
||||
'(- *)'{-v,--version}'[Show version information]'
|
||||
'1: :_applications'
|
||||
)
|
||||
|
||||
_arguments $args[@] && ret=0
|
||||
return ret
|
||||
}
|
||||
|
||||
_tealdeer
|
||||
51
config/zsh/config/aliases.zsh
Normal file
51
config/zsh/config/aliases.zsh
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
#--------------------------------------------------------------------#
|
||||
# Aliases #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
#fix obvious typo's
|
||||
alias pdw="pwd"
|
||||
|
||||
#search content with ripgrep
|
||||
alias rg="rg --sort path"
|
||||
|
||||
# prompt and do verbose
|
||||
alias \
|
||||
cp='cp -iv' \
|
||||
mv='mv -iv' \
|
||||
rm='rm -iv' \
|
||||
md='mkdir -pv';
|
||||
|
||||
# Exa for listing
|
||||
alias \
|
||||
ls='exa -lh --color=always --icons --git ' \
|
||||
la='exa -alh --color=always --icons --git ' \
|
||||
ld='exa -la --no-permissions --no-filesize --no-time --no-time --no-user'
|
||||
|
||||
# Pacman
|
||||
alias \
|
||||
pkgu="paru -Syu --removemake --cleanafter --sudoloop --color always" \
|
||||
pkgi="paru --skipreview --removemake --cleanafter --sudoloop --color always --needed" \
|
||||
pkgr="paru -R" \
|
||||
cleanup='sudo pacman -Rns $(pacman -Qtdq)' \
|
||||
pkglast="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -25 | nl"
|
||||
|
||||
|
||||
alias \
|
||||
reload='exec $SHELL -l' \
|
||||
|
||||
# Query Stuff
|
||||
alias \
|
||||
ip='ip -human -color -brief addr' \
|
||||
df='df -h'
|
||||
|
||||
## Lofi
|
||||
lofi_url="https://youtu.be/jfKfPfyJRdk"
|
||||
alias \
|
||||
lofi='celluloid "$lofi_url"& ; disown %1' \
|
||||
lofi-bg='ts lofi -d "mpv --no-video $lofi_url"'
|
||||
|
||||
#--------------------------------------------------------------------#
|
||||
# Global #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
alias -g NULL='> /dev/null 2>&1'
|
||||
41
config/zsh/config/colors.zsh
Normal file
41
config/zsh/config/colors.zsh
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
define_colors() {
|
||||
if command -v tput > /dev/null 2>&1; then
|
||||
# colors
|
||||
BLK="$(tput setaf 0)"
|
||||
RED="$(tput setaf 1)"
|
||||
GRN="$(tput setaf 2)"
|
||||
YLW="$(tput setaf 3)"
|
||||
BLU="$(tput setaf 4)"
|
||||
MGN="$(tput setaf 5)"
|
||||
CYN="$(tput setaf 6)"
|
||||
WHT="$(tput setaf 7)"
|
||||
# formatting
|
||||
RST="$(tput sgr0)" # reset all formatting
|
||||
BLD="$(tput bold)" # makes the text bold
|
||||
DIM="$(tput dim)" # makes the text dim
|
||||
SUL="$(tput smul)" # set underline
|
||||
RUL="$(tput rmul)" # remove underline
|
||||
REV="$(tput rev)" # reverses fg and bg colors
|
||||
SHL="$(tput smso)" # start standout mode (set highlight)
|
||||
EHL="$(tput rmso)" # end standout mode(remove highlight)
|
||||
else
|
||||
BLK="\033[0;30m"
|
||||
RED="\033[0;31m"
|
||||
GRN="\033[0;32m"
|
||||
YLW="\033[0;33m"
|
||||
BLU="\033[0;34m"
|
||||
MGN="\033[0;35m"
|
||||
CYN="\033[0;36m"
|
||||
WHT="\033[0;37m"
|
||||
|
||||
RST="\033[0m"
|
||||
BLD="\033[1m"
|
||||
DIM="\033[2m"
|
||||
SUL="\033[4m"
|
||||
RUL="\033[24m"
|
||||
REV="\033[7m"
|
||||
SHL="\033[7m"
|
||||
EHL="\033[27m"
|
||||
fi
|
||||
}
|
||||
|
||||
55
config/zsh/config/functions.zsh
Normal file
55
config/zsh/config/functions.zsh
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# SSH tunnel
|
||||
ssh-tunnel() {
|
||||
|
||||
local_port=$1 && shift
|
||||
remote_port=$1 && shift
|
||||
server=$1 && shift
|
||||
|
||||
echo "Starting SSH Tunnel for $server"
|
||||
|
||||
ssh -N -L "$local_port":localhost:"$remote_port" "$server"
|
||||
}
|
||||
|
||||
# quick wordpress in docker
|
||||
dwps() {
|
||||
image_name="wordpress-development"
|
||||
container_build_path="$HOME/Private-repos/docker-development-services/wordpress"
|
||||
original_path="$PWD"
|
||||
|
||||
if [[ "$(docker images -q $image_name 2> /dev/null)" == "" ]] ; then
|
||||
cd "$container_build_path"
|
||||
docker build --tag "$image_name" .
|
||||
cd "$original_path"
|
||||
fi
|
||||
|
||||
docker run -d --rm -p 3000:80 --user 1000:1000 -v "$PWD":/var/www/html --name "$image_name" "$image_name"
|
||||
}
|
||||
|
||||
## Create python venv
|
||||
pvenv() {
|
||||
[[ -n $VIRTAUL_ENV ]] && echo "Virtual enviroment already sourced" && return
|
||||
|
||||
dir=${1:-venv}
|
||||
|
||||
[[ ! -d $dir ]] && echo "Creating virtual enviroment..." && python -m venv $dir
|
||||
|
||||
source "$dir/bin/activate"
|
||||
}
|
||||
|
||||
# tm - create new tmux session, or switch to existing one. Works from within tmux too. (@bag-man)
|
||||
# `tm` will allow you to select your tmux session via fzf.
|
||||
# `tm irc` will attach to the irc session (if it exists), else it will create it.
|
||||
|
||||
tm() {
|
||||
[[ -n "$TMUX" ]] && change="switch-client" || change="attach-session"
|
||||
if [ $1 ]; then
|
||||
tmux $change -t "$1" 2>/dev/null || (tmux new-session -d -s $1 && tmux $change -t "$1"); return
|
||||
fi
|
||||
session=$(tmux list-sessions -F "#{session_name}" 2>/dev/null | fzf --select-1 --exit-0) && tmux $change -t "$session" || echo "No sessions found."
|
||||
}
|
||||
|
||||
# Print bottlenecks
|
||||
profzsh() {
|
||||
shell=${1-$SHELL}
|
||||
ZPROF=true $shell -i -c exit
|
||||
}
|
||||
46
config/zsh/config/oh-my-zsh.zsh
Normal file
46
config/zsh/config/oh-my-zsh.zsh
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
omz_install_custom() {
|
||||
set -e
|
||||
local type=$1
|
||||
local omz_dir="${ZSH:-$HOME/.local/share/oh-my-zsh}"
|
||||
local custom_dir="${ZSH_CUSTOM:-$omz_dir/custom}/${type}s"
|
||||
local repos=("${@:2}")
|
||||
|
||||
if [[ ! -d "$omz_dir" ]]; then
|
||||
echo "${BLU}Installing ${BLD}[Oh My Zsh]${RST} ..."
|
||||
git clone https://github.com/ohmyzsh/ohmyzsh.git $omz_dir
|
||||
fi
|
||||
|
||||
for repo in "${repos[@]}"; do
|
||||
local name=${repo##*/}
|
||||
local dir="$custom_dir/$name"
|
||||
if [[ ! -d "$dir" ]]; then
|
||||
echo "${GRN}Installing ${BLD}${YLW}$name${RST} ${BLU}${type}...${RST}"
|
||||
git clone --depth=1 "https://github.com/$repo" "$dir"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Usage install_omz_cutom <type> <reponame>
|
||||
omz_install_custom plugin \
|
||||
"marlonrichert/zsh-autocomplete" \
|
||||
"hlissner/zsh-autopair" \
|
||||
"zsh-users/zsh-autosuggestions" \
|
||||
"zsh-users/zsh-completions" \
|
||||
"zsh-users/zsh-syntax-highlighting"
|
||||
|
||||
# omz_install_custom theme "romkatv/powerlevel10k"
|
||||
|
||||
omz_update_custom_plugins() {
|
||||
omz update && echo ""
|
||||
printf "${BLU}%s${RST}\n\n" "Updating custom plugins..."
|
||||
find "${ZSH_CUSTOM:-$ZSH/custom}" -type d -name ".git" | while read LINE; do
|
||||
plugin=${LINE:h}
|
||||
pushd -q "${plugin}"
|
||||
if git pull --rebase; then
|
||||
printf "%s${RST}\n" ${YLW}${BLD}"${plugin:t}${RST} ${GRN}has been updated and/or is at the current version.${RST}"
|
||||
else
|
||||
printf "%s${RST}\n" "${RED}There was an error updating ${RST}${YLW}${BLD}${plugin:t}.${RST}${RED} Try again later or figure out what went wrong..."
|
||||
fi
|
||||
popd -q
|
||||
done
|
||||
}
|
||||
39
config/zsh/config/options.zsh
Normal file
39
config/zsh/config/options.zsh
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
HISTFILE=~/.histfile
|
||||
HISTSIZE=1000
|
||||
SAVEHIST=1000
|
||||
setopt BANG_HIST
|
||||
setopt EXTENDED_HISTORY
|
||||
setopt HIST_EXPIRE_DUPS_FIRST
|
||||
setopt HIST_IGNORE_DUPS
|
||||
setopt HIST_FIND_NO_DUPS
|
||||
setopt HIST_IGNORE_ALL_DUPS
|
||||
setopt HIST_IGNORE_SPACE
|
||||
setopt HIST_SAVE_NO_DUPS
|
||||
setopt HIST_VERIFY
|
||||
setopt SHARE_HISTORY
|
||||
|
||||
# Navigation
|
||||
setopt AUTO_CD
|
||||
setopt AUTO_PUSHD
|
||||
setopt CDABLE_VARS
|
||||
setopt PUSHD_IGNORE_DUPS
|
||||
setopt PUSHD_SILENT
|
||||
|
||||
# Completion
|
||||
setopt AUTO_LIST # Automatically list choices on ambiguous completion.
|
||||
# setopt CORRECT # Turn on spelling correction for command.
|
||||
setopt COMPLETE_IN_WORD # Complete from both ends of a word.
|
||||
setopt GLOB_COMPLETE # Show autocompletion menu with globs
|
||||
setopt MENU_COMPLETE # Automatically highlight first element of completion menu
|
||||
|
||||
zstyle ':completion:*:descriptions' format '%U%B%d%b%u'
|
||||
zstyle ':completion:*:warnings' format '%F{cyan}%BSorry, no matches for: %d%b%f'
|
||||
zstyle ':completion:*' rehash true
|
||||
zstyle ':completion:*' use-cache on
|
||||
|
||||
setopt autocd beep extendedglob notify
|
||||
|
||||
zstyle ':completion:*' group-name ''
|
||||
zstyle :compinstall filename '/home/aleidk/.zshrc'
|
||||
|
||||
setopt GLOB_DOTS
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
# Catppuccin Frappe Theme (for zsh-syntax-highlighting)
|
||||
#
|
||||
# Paste this files contents inside your ~/.zshrc before you activate zsh-syntax-highlighting
|
||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
|
||||
typeset -gA ZSH_HIGHLIGHT_STYLES
|
||||
|
||||
# Main highlighter styling: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
|
||||
#
|
||||
## General
|
||||
### Diffs
|
||||
### Markup
|
||||
## Classes
|
||||
## Comments
|
||||
ZSH_HIGHLIGHT_STYLES[comment]='fg=#626880'
|
||||
## Constants
|
||||
## Entitites
|
||||
## Functions/methods
|
||||
ZSH_HIGHLIGHT_STYLES[alias]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[function]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[command]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[precommand]='fg=#a6d189,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#ef9f76,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#ef9f76'
|
||||
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#ef9f76'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#ca9ee6'
|
||||
## Keywords
|
||||
## Built ins
|
||||
ZSH_HIGHLIGHT_STYLES[builtin]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#a6d189'
|
||||
ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#a6d189'
|
||||
## Punctuation
|
||||
ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#e78284'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#e78284'
|
||||
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#e78284'
|
||||
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#e78284'
|
||||
## Serializable / Configuration Languages
|
||||
## Storage
|
||||
## Strings
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#e5c890'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#e5c890'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#e5c890'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#ea999c'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#e5c890'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#ea999c'
|
||||
ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#e5c890'
|
||||
## Variables
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#ea999c'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[assign]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#c6d0f5'
|
||||
## No category relevant in spec
|
||||
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#ea999c'
|
||||
ZSH_HIGHLIGHT_STYLES[path]='fg=#c6d0f5,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#e78284,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#c6d0f5,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#e78284,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[globbing]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#ca9ee6'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution-unquoted]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[process-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[arithmetic-expansion]='fg=?'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#ea999c'
|
||||
ZSH_HIGHLIGHT_STYLES[redirection]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[arg0]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[default]='fg=#c6d0f5'
|
||||
ZSH_HIGHLIGHT_STYLES[cursor]='fg=#c6d0f5'
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
# Catppuccin Latte Theme (for zsh-syntax-highlighting)
|
||||
#
|
||||
# Paste this files contents inside your ~/.zshrc before you activate zsh-syntax-highlighting
|
||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
|
||||
typeset -gA ZSH_HIGHLIGHT_STYLES
|
||||
|
||||
# Main highlighter styling: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
|
||||
#
|
||||
## General
|
||||
### Diffs
|
||||
### Markup
|
||||
## Classes
|
||||
## Comments
|
||||
ZSH_HIGHLIGHT_STYLES[comment]='fg=#acb0be'
|
||||
## Constants
|
||||
## Entitites
|
||||
## Functions/methods
|
||||
ZSH_HIGHLIGHT_STYLES[alias]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[function]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[command]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[precommand]='fg=#40a02b,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#fe640b,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#fe640b'
|
||||
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#fe640b'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#8839ef'
|
||||
## Keywords
|
||||
## Built ins
|
||||
ZSH_HIGHLIGHT_STYLES[builtin]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#40a02b'
|
||||
ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#40a02b'
|
||||
## Punctuation
|
||||
ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#d20f39'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#d20f39'
|
||||
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#d20f39'
|
||||
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#d20f39'
|
||||
## Serializable / Configuration Languages
|
||||
## Storage
|
||||
## Strings
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#df8e1d'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#df8e1d'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#df8e1d'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#df8e1d'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#df8e1d'
|
||||
## Variables
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[assign]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#4c4f69'
|
||||
## No category relevant in spec
|
||||
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[path]='fg=#4c4f69,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#d20f39,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#4c4f69,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#d20f39,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[globbing]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#8839ef'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution-unquoted]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[process-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[arithmetic-expansion]='fg=?'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[redirection]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[arg0]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[default]='fg=#4c4f69'
|
||||
ZSH_HIGHLIGHT_STYLES[cursor]='fg=#4c4f69'
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
# Catppuccin Macchiato Theme (for zsh-syntax-highlighting)
|
||||
#
|
||||
# Paste this files contents inside your ~/.zshrc before you activate zsh-syntax-highlighting
|
||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
|
||||
typeset -gA ZSH_HIGHLIGHT_STYLES
|
||||
|
||||
# Main highlighter styling: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
|
||||
#
|
||||
## General
|
||||
### Diffs
|
||||
### Markup
|
||||
## Classes
|
||||
## Comments
|
||||
ZSH_HIGHLIGHT_STYLES[comment]='fg=#5b6078'
|
||||
## Constants
|
||||
## Entitites
|
||||
## Functions/methods
|
||||
ZSH_HIGHLIGHT_STYLES[alias]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[function]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[command]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[precommand]='fg=#a6da95,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#f5a97f,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#f5a97f'
|
||||
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#f5a97f'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#c6a0f6'
|
||||
## Keywords
|
||||
## Built ins
|
||||
ZSH_HIGHLIGHT_STYLES[builtin]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#a6da95'
|
||||
ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#a6da95'
|
||||
## Punctuation
|
||||
ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#ed8796'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#ed8796'
|
||||
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#ed8796'
|
||||
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#ed8796'
|
||||
## Serializable / Configuration Languages
|
||||
## Storage
|
||||
## Strings
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#eed49f'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#eed49f'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#eed49f'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#ee99a0'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#eed49f'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#ee99a0'
|
||||
ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#eed49f'
|
||||
## Variables
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#ee99a0'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[assign]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#cad3f5'
|
||||
## No category relevant in spec
|
||||
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#ee99a0'
|
||||
ZSH_HIGHLIGHT_STYLES[path]='fg=#cad3f5,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#ed8796,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#cad3f5,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#ed8796,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[globbing]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#c6a0f6'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution-unquoted]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[process-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[arithmetic-expansion]='fg=?'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#ee99a0'
|
||||
ZSH_HIGHLIGHT_STYLES[redirection]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[arg0]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[default]='fg=#cad3f5'
|
||||
ZSH_HIGHLIGHT_STYLES[cursor]='fg=#cad3f5'
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
# Catppuccin Mocha Theme (for zsh-syntax-highlighting)
|
||||
#
|
||||
# Paste this files contents inside your ~/.zshrc before you activate zsh-syntax-highlighting
|
||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
|
||||
typeset -gA ZSH_HIGHLIGHT_STYLES
|
||||
|
||||
# Main highlighter styling: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
|
||||
#
|
||||
## General
|
||||
### Diffs
|
||||
### Markup
|
||||
## Classes
|
||||
## Comments
|
||||
ZSH_HIGHLIGHT_STYLES[comment]='fg=#585b70'
|
||||
## Constants
|
||||
## Entitites
|
||||
## Functions/methods
|
||||
ZSH_HIGHLIGHT_STYLES[alias]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[function]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[command]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[precommand]='fg=#a6e3a1,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#fab387,italic'
|
||||
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#fab387'
|
||||
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#fab387'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#cba6f7'
|
||||
## Keywords
|
||||
## Built ins
|
||||
ZSH_HIGHLIGHT_STYLES[builtin]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#a6e3a1'
|
||||
ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#a6e3a1'
|
||||
## Punctuation
|
||||
ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#f38ba8'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#f38ba8'
|
||||
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#f38ba8'
|
||||
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#f38ba8'
|
||||
## Serializable / Configuration Languages
|
||||
## Storage
|
||||
## Strings
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#f9e2af'
|
||||
ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#f9e2af'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#f9e2af'
|
||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#f9e2af'
|
||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#f9e2af'
|
||||
## Variables
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[assign]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#cdd6f4'
|
||||
## No category relevant in spec
|
||||
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[path]='fg=#cdd6f4,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#f38ba8,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#cdd6f4,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#f38ba8,underline'
|
||||
ZSH_HIGHLIGHT_STYLES[globbing]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#cba6f7'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[command-substitution-unquoted]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[process-substitution]='fg=?'
|
||||
#ZSH_HIGHLIGHT_STYLES[arithmetic-expansion]='fg=?'
|
||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#e64553'
|
||||
ZSH_HIGHLIGHT_STYLES[redirection]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[arg0]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[default]='fg=#cdd6f4'
|
||||
ZSH_HIGHLIGHT_STYLES[cursor]='fg=#cdd6f4'
|
||||
38
config/zsh/zprofile
Executable file
38
config/zsh/zprofile
Executable file
|
|
@ -0,0 +1,38 @@
|
|||
#!/usr/bin/zsh
|
||||
|
||||
update_path() {
|
||||
export PATH="$PATH:$1"
|
||||
}
|
||||
|
||||
# Set manually
|
||||
export DOTS="$HOME/Repos/Private/dots"
|
||||
export EDITOR=nvim
|
||||
export VISUAL="$EDITOR"
|
||||
export QT_STYLE_OVERRIDE=kvantum
|
||||
|
||||
# Dev Stuff
|
||||
export PYENV_ROOT="$HOME/.pyenv"
|
||||
export NPM_PACKAGES="$HOME/.npm-packages"
|
||||
export NODE_PATH="$NPM_PACKAGES/lib/node_modules${NODE_PATH:+:$NODE_PATH}"
|
||||
export PNPM_HOME="$HOME/.local/share/pnpm"
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
|
||||
# Unset manpath so we can inherit from /etc/manpath via the `manpath`
|
||||
# command
|
||||
unset MANPATH # delete if you already modified MANPATH elsewhere in your config
|
||||
export MANPATH="$NPM_PACKAGES/share/man:$(manpath)"
|
||||
|
||||
# PATH
|
||||
update_path "/usr/local/bin"
|
||||
update_path "$HOME/.local/bin"
|
||||
update_path "$HOME/.cargo/bin/"
|
||||
update_path "$HOME/.spicetify"
|
||||
update_path "$HOME/Repos/Private/scripts"
|
||||
update_path "$HOME/bin"
|
||||
update_path "$NPM_PACKAGES/bin"
|
||||
update_path "$PNPM_HOME"
|
||||
update_path "$PYENV_ROOT/bin"
|
||||
|
||||
. "$HOME/.cargo/env"
|
||||
|
||||
eval "$(pyenv init --path)"
|
||||
115
config/zsh/zshrc
Executable file
115
config/zsh/zshrc
Executable file
|
|
@ -0,0 +1,115 @@
|
|||
# Start mesuring bottlenecks
|
||||
if [[ "$ZPROF" = true ]]; then
|
||||
zmodload zsh/zprof
|
||||
fi
|
||||
|
||||
## Stuff I don't know what they're for
|
||||
# autoload -Uz compinit
|
||||
# compinit
|
||||
|
||||
#--------------------------------------------------------------------#
|
||||
# ZSH Config #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
# this should before placed before `"$ZSH/oh-my-zsh.sh"`
|
||||
# Color scheme for syntax highlighting
|
||||
source ~/.config/zsh/themes/catppuccin_macchiato-zsh-syntax-highlighting.zsh
|
||||
|
||||
fpath+=${ZSH_CUSTOM:-${ZSH:-$XDG_DATA_HOME/oh-my-zsh}/custom}/plugins/zsh-completions/src
|
||||
fpath+=${XDG_CONFIG_HOME:-$DOTS/config}/zsh/completions
|
||||
|
||||
# set VIM keybindings
|
||||
bindkey -v
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
export ZSH="$HOME/.local/share/oh-my-zsh"
|
||||
|
||||
ZSH_THEME="gozilla"
|
||||
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
HYPHEN_INSENSITIVE="true"
|
||||
|
||||
DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Read Git repos much faster.
|
||||
DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# search if exist an alias for the executed command
|
||||
ZSH_ALIAS_FINDER_AUTOMATIC=true
|
||||
|
||||
#--------------------------------------------------------------------#
|
||||
# Plugin Config #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
# Lazy load nvm, increasy startup time a lot.
|
||||
zstyle ':omz:plugins:nvm' lazy true
|
||||
|
||||
# VI_MODE_RESET_PROMPT_ON_MODE_CHANGE=true
|
||||
# VI_MODE_SET_CURSOR=true
|
||||
|
||||
ZSHZ_TILDE=1
|
||||
|
||||
plugins=(
|
||||
nvm
|
||||
alias-finder
|
||||
archlinux
|
||||
bgnotify
|
||||
colored-man-pages
|
||||
cp # alias to use rsync to copy files
|
||||
docker
|
||||
docker-compose
|
||||
fd
|
||||
fzf
|
||||
git
|
||||
git-prompt
|
||||
npm
|
||||
ripgrep
|
||||
rsync
|
||||
safe-paste # don't run code when pasting
|
||||
systemd
|
||||
tmux
|
||||
# vi-mode
|
||||
yarn
|
||||
z
|
||||
zsh-autocomplete
|
||||
zsh-autopair
|
||||
zsh-autosuggestions
|
||||
zsh-completions
|
||||
zsh-syntax-highlighting
|
||||
zsh-interactive-cd
|
||||
)
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
[[ $- != *i* ]] && return
|
||||
|
||||
export HISTCONTROL=ignoreboth:erasedups
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
#--------------------------------------------------------------------#
|
||||
# Start Stuff #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
# File directory that are needed to source
|
||||
files=(
|
||||
# zsh
|
||||
$DOTS/config/zsh/**/*.zsh
|
||||
)
|
||||
|
||||
for file in $files; do
|
||||
if [[ -f $file ]]; then
|
||||
emulate -L zsh
|
||||
source $file
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
if [[ "$ZPROF" = true ]]; then
|
||||
zprof
|
||||
fi
|
||||
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
Loading…
Add table
Add a link
Reference in a new issue