summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author2025-02-26 12:23:16 +0300
committer2025-02-26 12:23:16 +0300
commit4bff3778850399b08b7bddb06db877e4604ffcf4 (patch)
treee2df48a12aa06f266e375f81f67dc2c9c69a63d9
parentfix gitconfig (diff)
downloaddotfiles-4bff3778850399b08b7bddb06db877e4604ffcf4.tar.gz
dotfiles-4bff3778850399b08b7bddb06db877e4604ffcf4.tar.bz2
dotfiles-4bff3778850399b08b7bddb06db877e4604ffcf4.tar.xz
dotfiles-4bff3778850399b08b7bddb06db877e4604ffcf4.zip
Обновление gitconfig
Diffstat (limited to '')
-rw-r--r--git/config75
-rw-r--r--nvim/lua/keymaps.lua2
-rw-r--r--zsh/comp/cobra.zsh-completion177
-rw-r--r--zsh/comp/goldwarden.zsh-completion212
-rw-r--r--zsh/comp/hugo.zsh-completion212
-rw-r--r--zsh/comp/pass.zsh-completion144
-rw-r--r--zsh/comp/vgo.zsh-completion212
-rw-r--r--zsh/p10k.zsh445
-rw-r--r--zsh/zshrc404
9 files changed, 1431 insertions, 452 deletions
diff --git a/git/config b/git/config
index 20c3ed0..e671bf9 100644
--- a/git/config
+++ b/git/config
@@ -10,12 +10,19 @@
[http]
sslVerify = false
+[column]
+ ui = auto
+
[commit]
gpgsign = true
verbose = true
[branch]
autosetuprebase = always
+ sort = -committerdate
+
+[tag]
+ sort = version:refname
[help]
autocorrect = 1
@@ -38,6 +45,8 @@
[rebase]
autoStash = true
+ autoSquash = true
+ updateRefs = true
[pull]
rebase = true
@@ -46,41 +55,23 @@
[fetch]
prune = true
pruneTags = true
+ all = true
output = full
+[push]
+ default = simple
+ autoSetupRemote = true
+ followTags = true
+
+[merge]
+ conflictstyle = zdiff3
+
[core]
preloadindex = true
excludesFile = ~/.gitignore
trustctime = false
commitGraph = true
-[color]
- ui = auto
-
-[color "diff"]
- meta = yellow bold
- commit = green bold
- frag = magenta bold
- old = red bold
- new = green bold
- whitespace = red reverse
-
-[color "diff-highlight"]
- oldNormal = red bold
- oldHighlight = red bold 52
- newNormal = green bold
- newHighlight = green bold 22
-
-[color "branch"]
- current = yellow reverse
- local = yellow
- remote = green
-
-[color "status"]
- added = yellow
- changed = green
- untracked = cyan
-
[diff]
indentHeuristic = true
algorithm = histogram
@@ -91,6 +82,7 @@
[rerere]
enabled = true
+ autoupdate = true
[pager]
color = true
@@ -128,5 +120,34 @@
[include]
path = .gitconfig.local
+
[gpg]
format = ssh
+
+[color]
+ ui = auto
+
+[color "diff"]
+ meta = yellow bold
+ commit = green bold
+ frag = magenta bold
+ old = red bold
+ new = green bold
+ whitespace = red reverse
+
+[color "diff-highlight"]
+ oldNormal = red bold
+ oldHighlight = red bold 52
+ newNormal = green bold
+ newHighlight = green bold 22
+
+[color "branch"]
+ current = yellow reverse
+ local = yellow
+ remote = green
+
+[color "status"]
+ added = yellow
+ changed = green
+ untracked = cyan
+
diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua
index 78f06fe..3dda8eb 100644
--- a/nvim/lua/keymaps.lua
+++ b/nvim/lua/keymaps.lua
@@ -1,7 +1,7 @@
local map = vim.api.nvim_set_keymap
local opts = {noremap = true, silent = true}
-vim.g.mapleader = " "
+vim.g.mapleader = "\\"
-- Tree
map('n', '<C-h>', ':NvimTreeToggle<CR>', opts)
diff --git a/zsh/comp/cobra.zsh-completion b/zsh/comp/cobra.zsh-completion
new file mode 100644
index 0000000..e106534
--- /dev/null
+++ b/zsh/comp/cobra.zsh-completion
@@ -0,0 +1,177 @@
+#compdef _cobra-cli cobra-cli
+
+# zsh completion for cobra-cli -*- shell-script -*-
+
+__cobra-cli_debug()
+{
+ local file="$BASH_COMP_DEBUG_FILE"
+ if [[ -n ${file} ]]; then
+ echo "$*" >> "${file}"
+ fi
+}
+
+_cobra-cli()
+{
+ local shellCompDirectiveError=1
+ local shellCompDirectiveNoSpace=2
+ local shellCompDirectiveNoFileComp=4
+ local shellCompDirectiveFilterFileExt=8
+ local shellCompDirectiveFilterDirs=16
+
+ local lastParam lastChar flagPrefix requestComp out directive comp lastComp noSpace
+ local -a completions
+
+ __cobra-cli_debug "\n========= starting completion logic =========="
+ __cobra-cli_debug "CURRENT: ${CURRENT}, words[*]: ${words[*]}"
+
+ # The user could have moved the cursor backwards on the command-line.
+ # We need to trigger completion from the $CURRENT location, so we need
+ # to truncate the command-line ($words) up to the $CURRENT location.
+ # (We cannot use $CURSOR as its value does not work when a command is an alias.)
+ words=("${=words[1,CURRENT]}")
+ __cobra-cli_debug "Truncated words[*]: ${words[*]},"
+
+ lastParam=${words[-1]}
+ lastChar=${lastParam[-1]}
+ __cobra-cli_debug "lastParam: ${lastParam}, lastChar: ${lastChar}"
+
+ # For zsh, when completing a flag with an = (e.g., cobra-cli -n=<TAB>)
+ # completions must be prefixed with the flag
+ setopt local_options BASH_REMATCH
+ if [[ "${lastParam}" =~ '-.*=' ]]; then
+ # We are dealing with a flag with an =
+ flagPrefix="-P ${BASH_REMATCH}"
+ fi
+
+ # Prepare the command to obtain completions
+ requestComp="${words[1]} __complete ${words[2,-1]}"
+ if [ "${lastChar}" = "" ]; then
+ # If the last parameter is complete (there is a space following it)
+ # We add an extra empty parameter so we can indicate this to the go completion code.
+ __cobra-cli_debug "Adding extra empty parameter"
+ requestComp="${requestComp} \"\""
+ fi
+
+ __cobra-cli_debug "About to call: eval ${requestComp}"
+
+ # Use eval to handle any environment variables and such
+ out=$(eval ${requestComp} 2>/dev/null)
+ __cobra-cli_debug "completion output: ${out}"
+
+ # Extract the directive integer following a : from the last line
+ local lastLine
+ while IFS='\n' read -r line; do
+ lastLine=${line}
+ done < <(printf "%s\n" "${out[@]}")
+ __cobra-cli_debug "last line: ${lastLine}"
+
+ if [ "${lastLine[1]}" = : ]; then
+ directive=${lastLine[2,-1]}
+ # Remove the directive including the : and the newline
+ local suffix
+ (( suffix=${#lastLine}+2))
+ out=${out[1,-$suffix]}
+ else
+ # There is no directive specified. Leave $out as is.
+ __cobra-cli_debug "No directive found. Setting do default"
+ directive=0
+ fi
+
+ __cobra-cli_debug "directive: ${directive}"
+ __cobra-cli_debug "completions: ${out}"
+ __cobra-cli_debug "flagPrefix: ${flagPrefix}"
+
+ if [ $((directive & shellCompDirectiveError)) -ne 0 ]; then
+ __cobra-cli_debug "Completion received error. Ignoring completions."
+ return
+ fi
+
+ while IFS='\n' read -r comp; do
+ if [ -n "$comp" ]; then
+ # If requested, completions are returned with a description.
+ # The description is preceded by a TAB character.
+ # For zsh's _describe, we need to use a : instead of a TAB.
+ # We first need to escape any : as part of the completion itself.
+ comp=${comp//:/\\:}
+
+ local tab=$(printf '\t')
+ comp=${comp//$tab/:}
+
+ __cobra-cli_debug "Adding completion: ${comp}"
+ completions+=${comp}
+ lastComp=$comp
+ fi
+ done < <(printf "%s\n" "${out[@]}")
+
+ if [ $((directive & shellCompDirectiveNoSpace)) -ne 0 ]; then
+ __cobra-cli_debug "Activating nospace."
+ noSpace="-S ''"
+ fi
+
+ if [ $((directive & shellCompDirectiveFilterFileExt)) -ne 0 ]; then
+ # File extension filtering
+ local filteringCmd
+ filteringCmd='_files'
+ for filter in ${completions[@]}; do
+ if [ ${filter[1]} != '*' ]; then
+ # zsh requires a glob pattern to do file filtering
+ filter="\*.$filter"
+ fi
+ filteringCmd+=" -g $filter"
+ done
+ filteringCmd+=" ${flagPrefix}"
+
+ __cobra-cli_debug "File filtering command: $filteringCmd"
+ _arguments '*:filename:'"$filteringCmd"
+ elif [ $((directive & shellCompDirectiveFilterDirs)) -ne 0 ]; then
+ # File completion for directories only
+ local subdir
+ subdir="${completions[1]}"
+ if [ -n "$subdir" ]; then
+ __cobra-cli_debug "Listing directories in $subdir"
+ pushd "${subdir}" >/dev/null 2>&1
+ else
+ __cobra-cli_debug "Listing directories in ."
+ fi
+
+ local result
+ _arguments '*:dirname:_files -/'" ${flagPrefix}"
+ result=$?
+ if [ -n "$subdir" ]; then
+ popd >/dev/null 2>&1
+ fi
+ return $result
+ else
+ __cobra-cli_debug "Calling _describe"
+ if eval _describe "completions" completions $flagPrefix $noSpace; then
+ __cobra-cli_debug "_describe found some completions"
+
+ # Return the success of having called _describe
+ return 0
+ else
+ __cobra-cli_debug "_describe did not find completions."
+ __cobra-cli_debug "Checking if we should do file completion."
+ if [ $((directive & shellCompDirectiveNoFileComp)) -ne 0 ]; then
+ __cobra-cli_debug "deactivating file completion"
+
+ # We must return an error code here to let zsh know that there were no
+ # completions found by _describe; this is what will trigger other
+ # matching algorithms to attempt to find completions.
+ # For example zsh can match letters in the middle of words.
+ return 1
+ else
+ # Perform file completion
+ __cobra-cli_debug "Activating file completion"
+
+ # We must return the result of this command, so it must be the
+ # last command, or else we must store its result to return it.
+ _arguments '*:filename:_files'" ${flagPrefix}"
+ fi
+ fi
+ fi
+}
+
+# don't run the completion function when being source-ed or eval-ed
+if [ "$funcstack[1]" = "_cobra-cli" ]; then
+ _cobra-cli
+fi
diff --git a/zsh/comp/goldwarden.zsh-completion b/zsh/comp/goldwarden.zsh-completion
new file mode 100644
index 0000000..8957b37
--- /dev/null
+++ b/zsh/comp/goldwarden.zsh-completion
@@ -0,0 +1,212 @@
+#compdef goldwarden
+compdef _goldwarden goldwarden
+
+# zsh completion for goldwarden -*- shell-script -*-
+
+__goldwarden_debug()
+{
+ local file="$BASH_COMP_DEBUG_FILE"
+ if [[ -n ${file} ]]; then
+ echo "$*" >> "${file}"
+ fi
+}
+
+_goldwarden()
+{
+ local shellCompDirectiveError=1
+ local shellCompDirectiveNoSpace=2
+ local shellCompDirectiveNoFileComp=4
+ local shellCompDirectiveFilterFileExt=8
+ local shellCompDirectiveFilterDirs=16
+ local shellCompDirectiveKeepOrder=32
+
+ local lastParam lastChar flagPrefix requestComp out directive comp lastComp noSpace keepOrder
+ local -a completions
+
+ __goldwarden_debug "\n========= starting completion logic =========="
+ __goldwarden_debug "CURRENT: ${CURRENT}, words[*]: ${words[*]}"
+
+ # The user could have moved the cursor backwards on the command-line.
+ # We need to trigger completion from the $CURRENT location, so we need
+ # to truncate the command-line ($words) up to the $CURRENT location.
+ # (We cannot use $CURSOR as its value does not work when a command is an alias.)
+ words=("${=words[1,CURRENT]}")
+ __goldwarden_debug "Truncated words[*]: ${words[*]},"
+
+ lastParam=${words[-1]}
+ lastChar=${lastParam[-1]}
+ __goldwarden_debug "lastParam: ${lastParam}, lastChar: ${lastChar}"
+
+ # For zsh, when completing a flag with an = (e.g., goldwarden -n=<TAB>)
+ # completions must be prefixed with the flag
+ setopt local_options BASH_REMATCH
+ if [[ "${lastParam}" =~ '-.*=' ]]; then
+ # We are dealing with a flag with an =
+ flagPrefix="-P ${BASH_REMATCH}"
+ fi
+
+ # Prepare the command to obtain completions
+ requestComp="${words[1]} __complete ${words[2,-1]}"
+ if [ "${lastChar}" = "" ]; then
+ # If the last parameter is complete (there is a space following it)
+ # We add an extra empty parameter so we can indicate this to the go completion code.
+ __goldwarden_debug "Adding extra empty parameter"
+ requestComp="${requestComp} \"\""
+ fi
+
+ __goldwarden_debug "About to call: eval ${requestComp}"
+
+ # Use eval to handle any environment variables and such
+ out=$(eval ${requestComp} 2>/dev/null)
+ __goldwarden_debug "completion output: ${out}"
+
+ # Extract the directive integer following a : from the last line
+ local lastLine
+ while IFS='\n' read -r line; do
+ lastLine=${line}
+ done < <(printf "%s\n" "${out[@]}")
+ __goldwarden_debug "last line: ${lastLine}"
+
+ if [ "${lastLine[1]}" = : ]; then
+ directive=${lastLine[2,-1]}
+ # Remove the directive including the : and the newline
+ local suffix
+ (( suffix=${#lastLine}+2))
+ out=${out[1,-$suffix]}
+ else
+ # There is no directive specified. Leave $out as is.
+ __goldwarden_debug "No directive found. Setting do default"
+ directive=0
+ fi
+
+ __goldwarden_debug "directive: ${directive}"
+ __goldwarden_debug "completions: ${out}"
+ __goldwarden_debug "flagPrefix: ${flagPrefix}"
+
+ if [ $((directive & shellCompDirectiveError)) -ne 0 ]; then
+ __goldwarden_debug "Completion received error. Ignoring completions."
+ return
+ fi
+
+ local activeHelpMarker="_activeHelp_ "
+ local endIndex=${#activeHelpMarker}
+ local startIndex=$((${#activeHelpMarker}+1))
+ local hasActiveHelp=0
+ while IFS='\n' read -r comp; do
+ # Check if this is an activeHelp statement (i.e., prefixed with $activeHelpMarker)
+ if [ "${comp[1,$endIndex]}" = "$activeHelpMarker" ];then
+ __goldwarden_debug "ActiveHelp found: $comp"
+ comp="${comp[$startIndex,-1]}"
+ if [ -n "$comp" ]; then
+ compadd -x "${comp}"
+ __goldwarden_debug "ActiveHelp will need delimiter"
+ hasActiveHelp=1
+ fi
+
+ continue
+ fi
+
+ if [ -n "$comp" ]; then
+ # If requested, completions are returned with a description.
+ # The description is preceded by a TAB character.
+ # For zsh's _describe, we need to use a : instead of a TAB.
+ # We first need to escape any : as part of the completion itself.
+ comp=${comp//:/\\:}
+
+ local tab="$(printf '\t')"
+ comp=${comp//$tab/:}
+
+ __goldwarden_debug "Adding completion: ${comp}"
+ completions+=${comp}
+ lastComp=$comp
+ fi
+ done < <(printf "%s\n" "${out[@]}")
+
+ # Add a delimiter after the activeHelp statements, but only if:
+ # - there are completions following the activeHelp statements, or
+ # - file completion will be performed (so there will be choices after the activeHelp)
+ if [ $hasActiveHelp -eq 1 ]; then
+ if [ ${#completions} -ne 0 ] || [ $((directive & shellCompDirectiveNoFileComp)) -eq 0 ]; then
+ __goldwarden_debug "Adding activeHelp delimiter"
+ compadd -x "--"
+ hasActiveHelp=0
+ fi
+ fi
+
+ if [ $((directive & shellCompDirectiveNoSpace)) -ne 0 ]; then
+ __goldwarden_debug "Activating nospace."
+ noSpace="-S ''"
+ fi
+
+ if [ $((directive & shellCompDirectiveKeepOrder)) -ne 0 ]; then
+ __goldwarden_debug "Activating keep order."
+ keepOrder="-V"
+ fi
+
+ if [ $((directive & shellCompDirectiveFilterFileExt)) -ne 0 ]; then
+ # File extension filtering
+ local filteringCmd
+ filteringCmd='_files'
+ for filter in ${completions[@]}; do
+ if [ ${filter[1]} != '*' ]; then
+ # zsh requires a glob pattern to do file filtering
+ filter="\*.$filter"
+ fi
+ filteringCmd+=" -g $filter"
+ done
+ filteringCmd+=" ${flagPrefix}"
+
+ __goldwarden_debug "File filtering command: $filteringCmd"
+ _arguments '*:filename:'"$filteringCmd"
+ elif [ $((directive & shellCompDirectiveFilterDirs)) -ne 0 ]; then
+ # File completion for directories only
+ local subdir
+ subdir="${completions[1]}"
+ if [ -n "$subdir" ]; then
+ __goldwarden_debug "Listing directories in $subdir"
+ pushd "${subdir}" >/dev/null 2>&1
+ else
+ __goldwarden_debug "Listing directories in ."
+ fi
+
+ local result
+ _arguments '*:dirname:_files -/'" ${flagPrefix}"
+ result=$?
+ if [ -n "$subdir" ]; then
+ popd >/dev/null 2>&1
+ fi
+ return $result
+ else
+ __goldwarden_debug "Calling _describe"
+ if eval _describe $keepOrder "completions" completions $flagPrefix $noSpace; then
+ __goldwarden_debug "_describe found some completions"
+
+ # Return the success of having called _describe
+ return 0
+ else
+ __goldwarden_debug "_describe did not find completions."
+ __goldwarden_debug "Checking if we should do file completion."
+ if [ $((directive & shellCompDirectiveNoFileComp)) -ne 0 ]; then
+ __goldwarden_debug "deactivating file completion"
+
+ # We must return an error code here to let zsh know that there were no
+ # completions found by _describe; this is what will trigger other
+ # matching algorithms to attempt to find completions.
+ # For example zsh can match letters in the middle of words.
+ return 1
+ else
+ # Perform file completion
+ __goldwarden_debug "Activating file completion"
+
+ # We must return the result of this command, so it must be the
+ # last command, or else we must store its result to return it.
+ _arguments '*:filename:_files'" ${flagPrefix}"
+ fi
+ fi
+ fi
+}
+
+# don't run the completion function when being source-ed or eval-ed
+if [ "$funcstack[1]" = "_goldwarden" ]; then
+ _goldwarden
+fi
diff --git a/zsh/comp/hugo.zsh-completion b/zsh/comp/hugo.zsh-completion
new file mode 100644
index 0000000..a361f2a
--- /dev/null
+++ b/zsh/comp/hugo.zsh-completion
@@ -0,0 +1,212 @@
+#compdef hugo
+compdef _hugo hugo
+
+# zsh completion for hugo -*- shell-script -*-
+
+__hugo_debug()
+{
+ local file="$BASH_COMP_DEBUG_FILE"
+ if [[ -n ${file} ]]; then
+ echo "$*" >> "${file}"
+ fi
+}
+
+_hugo()
+{
+ local shellCompDirectiveError=1
+ local shellCompDirectiveNoSpace=2
+ local shellCompDirectiveNoFileComp=4
+ local shellCompDirectiveFilterFileExt=8
+ local shellCompDirectiveFilterDirs=16
+ local shellCompDirectiveKeepOrder=32
+
+ local lastParam lastChar flagPrefix requestComp out directive comp lastComp noSpace keepOrder
+ local -a completions
+
+ __hugo_debug "\n========= starting completion logic =========="
+ __hugo_debug "CURRENT: ${CURRENT}, words[*]: ${words[*]}"
+
+ # The user could have moved the cursor backwards on the command-line.
+ # We need to trigger completion from the $CURRENT location, so we need
+ # to truncate the command-line ($words) up to the $CURRENT location.
+ # (We cannot use $CURSOR as its value does not work when a command is an alias.)
+ words=("${=words[1,CURRENT]}")
+ __hugo_debug "Truncated words[*]: ${words[*]},"
+
+ lastParam=${words[-1]}
+ lastChar=${lastParam[-1]}
+ __hugo_debug "lastParam: ${lastParam}, lastChar: ${lastChar}"
+
+ # For zsh, when completing a flag with an = (e.g., hugo -n=<TAB>)
+ # completions must be prefixed with the flag
+ setopt local_options BASH_REMATCH
+ if [[ "${lastParam}" =~ '-.*=' ]]; then
+ # We are dealing with a flag with an =
+ flagPrefix="-P ${BASH_REMATCH}"
+ fi
+
+ # Prepare the command to obtain completions
+ requestComp="${words[1]} __complete ${words[2,-1]}"
+ if [ "${lastChar}" = "" ]; then
+ # If the last parameter is complete (there is a space following it)
+ # We add an extra empty parameter so we can indicate this to the go completion code.
+ __hugo_debug "Adding extra empty parameter"
+ requestComp="${requestComp} \"\""
+ fi
+
+ __hugo_debug "About to call: eval ${requestComp}"
+
+ # Use eval to handle any environment variables and such
+ out=$(eval ${requestComp} 2>/dev/null)
+ __hugo_debug "completion output: ${out}"
+
+ # Extract the directive integer following a : from the last line
+ local lastLine
+ while IFS='\n' read -r line; do
+ lastLine=${line}
+ done < <(printf "%s\n" "${out[@]}")
+ __hugo_debug "last line: ${lastLine}"
+
+ if [ "${lastLine[1]}" = : ]; then
+ directive=${lastLine[2,-1]}
+ # Remove the directive including the : and the newline
+ local suffix
+ (( suffix=${#lastLine}+2))
+ out=${out[1,-$suffix]}
+ else
+ # There is no directive specified. Leave $out as is.
+ __hugo_debug "No directive found. Setting do default"
+ directive=0
+ fi
+
+ __hugo_debug "directive: ${directive}"
+ __hugo_debug "completions: ${out}"
+ __hugo_debug "flagPrefix: ${flagPrefix}"
+
+ if [ $((directive & shellCompDirectiveError)) -ne 0 ]; then
+ __hugo_debug "Completion received error. Ignoring completions."
+ return
+ fi
+
+ local activeHelpMarker="_activeHelp_ "
+ local endIndex=${#activeHelpMarker}
+ local startIndex=$((${#activeHelpMarker}+1))
+ local hasActiveHelp=0
+ while IFS='\n' read -r comp; do
+ # Check if this is an activeHelp statement (i.e., prefixed with $activeHelpMarker)
+ if [ "${comp[1,$endIndex]}" = "$activeHelpMarker" ];then
+ __hugo_debug "ActiveHelp found: $comp"
+ comp="${comp[$startIndex,-1]}"
+ if [ -n "$comp" ]; then
+ compadd -x "${comp}"
+ __hugo_debug "ActiveHelp will need delimiter"
+ hasActiveHelp=1
+ fi
+
+ continue
+ fi
+
+ if [ -n "$comp" ]; then
+ # If requested, completions are returned with a description.
+ # The description is preceded by a TAB character.
+ # For zsh's _describe, we need to use a : instead of a TAB.
+ # We first need to escape any : as part of the completion itself.
+ comp=${comp//:/\\:}
+
+ local tab="$(printf '\t')"
+ comp=${comp//$tab/:}
+
+ __hugo_debug "Adding completion: ${comp}"
+ completions+=${comp}
+ lastComp=$comp
+ fi
+ done < <(printf "%s\n" "${out[@]}")
+
+ # Add a delimiter after the activeHelp statements, but only if:
+ # - there are completions following the activeHelp statements, or
+ # - file completion will be performed (so there will be choices after the activeHelp)
+ if [ $hasActiveHelp -eq 1 ]; then
+ if [ ${#completions} -ne 0 ] || [ $((directive & shellCompDirectiveNoFileComp)) -eq 0 ]; then
+ __hugo_debug "Adding activeHelp delimiter"
+ compadd -x "--"
+ hasActiveHelp=0
+ fi
+ fi
+
+ if [ $((directive & shellCompDirectiveNoSpace)) -ne 0 ]; then
+ __hugo_debug "Activating nospace."
+ noSpace="-S ''"
+ fi
+
+ if [ $((directive & shellCompDirectiveKeepOrder)) -ne 0 ]; then
+ __hugo_debug "Activating keep order."
+ keepOrder="-V"
+ fi
+
+ if [ $((directive & shellCompDirectiveFilterFileExt)) -ne 0 ]; then
+ # File extension filtering
+ local filteringCmd
+ filteringCmd='_files'
+ for filter in ${completions[@]}; do
+ if [ ${filter[1]} != '*' ]; then
+ # zsh requires a glob pattern to do file filtering
+ filter="\*.$filter"
+ fi
+ filteringCmd+=" -g $filter"
+ done
+ filteringCmd+=" ${flagPrefix}"
+
+ __hugo_debug "File filtering command: $filteringCmd"
+ _arguments '*:filename:'"$filteringCmd"
+ elif [ $((directive & shellCompDirectiveFilterDirs)) -ne 0 ]; then
+ # File completion for directories only
+ local subdir
+ subdir="${completions[1]}"
+ if [ -n "$subdir" ]; then
+ __hugo_debug "Listing directories in $subdir"
+ pushd "${subdir}" >/dev/null 2>&1
+ else
+ __hugo_debug "Listing directories in ."
+ fi
+
+ local result
+ _arguments '*:dirname:_files -/'" ${flagPrefix}"
+ result=$?
+ if [ -n "$subdir" ]; then
+ popd >/dev/null 2>&1
+ fi
+ return $result
+ else
+ __hugo_debug "Calling _describe"
+ if eval _describe $keepOrder "completions" completions $flagPrefix $noSpace; then
+ __hugo_debug "_describe found some completions"
+
+ # Return the success of having called _describe
+ return 0
+ else
+ __hugo_debug "_describe did not find completions."
+ __hugo_debug "Checking if we should do file completion."
+ if [ $((directive & shellCompDirectiveNoFileComp)) -ne 0 ]; then
+ __hugo_debug "deactivating file completion"
+
+ # We must return an error code here to let zsh know that there were no
+ # completions found by _describe; this is what will trigger other
+ # matching algorithms to attempt to find completions.
+ # For example zsh can match letters in the middle of words.
+ return 1
+ else
+ # Perform file completion
+ __hugo_debug "Activating file completion"
+
+ # We must return the result of this command, so it must be the
+ # last command, or else we must store its result to return it.
+ _arguments '*:filename:_files'" ${flagPrefix}"
+ fi
+ fi
+ fi
+}
+
+# don't run the completion function when being source-ed or eval-ed
+if [ "$funcstack[1]" = "_hugo" ]; then
+ _hugo
+fi
diff --git a/zsh/comp/pass.zsh-completion b/zsh/comp/pass.zsh-completion
new file mode 100644
index 0000000..d911e12
--- /dev/null
+++ b/zsh/comp/pass.zsh-completion
@@ -0,0 +1,144 @@
+#compdef pass
+#autoload
+
+# Copyright (C) 2012 - 2014:
+# Johan Venant <jvenant@invicem.pro>
+# Brian Mattern <rephorm@rephorm.com>
+# Jason A. Donenfeld <Jason@zx2c4.com>.
+# All Rights Reserved.
+# This file is licensed under the GPLv2+. Please see COPYING for more information.
+
+
+# If you use multiple repositories, you can configure completion like this:
+#
+# compdef _pass workpass
+# zstyle ':completion::complete:workpass::' prefix "$HOME/work/pass"
+# workpass() {
+# PASSWORD_STORE_DIR=$HOME/work/pass pass $@
+# }
+
+
+_pass () {
+ local cmd
+ if (( CURRENT > 2)); then
+ cmd=${words[2]}
+ # Set the context for the subcommand.
+ curcontext="${curcontext%:*:*}:pass-$cmd"
+ # Narrow the range of words we are looking at to exclude `pass'
+ (( CURRENT-- ))
+ shift words
+ # Run the completion for the subcommand
+ case "${cmd}" in
+ init)
+ _arguments : \
+ "-p[gpg-id will only be applied to this subfolder]" \
+ "--path[gpg-id will only be applied to this subfolder]"
+ _pass_complete_keys
+ ;;
+ ls|list|edit)
+ _pass_complete_entries_with_subdirs
+ ;;
+ insert)
+ _arguments : \
+ "-e[echo password to console]" \
+ "--echo[echo password to console]" \
+ "-m[multiline]" \
+ "--multiline[multiline]"
+ _pass_complete_entries_with_subdirs
+ ;;
+ generate)
+ _arguments : \
+ "-n[don't include symbols in password]" \
+ "--no-symbols[don't include symbols in password]" \
+ "-c[copy password to the clipboard]" \
+ "--clip[copy password to the clipboard]" \
+ "-f[force overwrite]" \
+ "--force[force overwrite]" \
+ "-i[replace first line]" \
+ "--in-place[replace first line]"
+ _pass_complete_entries_with_subdirs
+ ;;
+ cp|copy|mv|rename)
+ _arguments : \
+ "-f[force rename]" \
+ "--force[force rename]"
+ _pass_complete_entries_with_subdirs
+ ;;
+ rm)
+ _arguments : \
+ "-f[force deletion]" \
+ "--force[force deletion]" \
+ "-r[recursively delete]" \
+ "--recursive[recursively delete]"
+ _pass_complete_entries_with_subdirs
+ ;;
+ git)
+ local -a subcommands
+ subcommands=(
+ "init:Initialize git repository"
+ "push:Push to remote repository"
+ "pull:Pull from remote repository"
+ "config:Show git config"
+ "log:Show git log"
+ "reflog:Show git reflog"
+ )
+ _describe -t commands 'pass git' subcommands
+ ;;
+ show|*)
+ _pass_cmd_show
+ ;;
+ esac
+ else
+ local -a subcommands
+ subcommands=(
+ "init:Initialize new password storage"
+ "ls:List passwords"
+ "find:Find password files or directories based on pattern"
+ "grep:Search inside decrypted password files for matching pattern"
+ "show:Decrypt and print a password"
+ "insert:Insert a new password"
+ "generate:Generate a new password using pwgen"
+ "edit:Edit a password with \$EDITOR"
+ "mv:Rename the password"
+ "cp:Copy the password"
+ "rm:Remove the password"
+ "git:Call git on the password store"
+ "version:Output version information"
+ "help:Output help message"
+ )
+ _describe -t commands 'pass' subcommands
+ _arguments : \
+ "--version[Output version information]" \
+ "--help[Output help message]"
+ _pass_cmd_show
+ fi
+}
+
+_pass_cmd_show () {
+ _arguments : \
+ "-c[put it on the clipboard]" \
+ "--clip[put it on the clipboard]"
+ _pass_complete_entries
+}
+_pass_complete_entries_helper () {
+ local IFS=$'\n'
+ local prefix
+ zstyle -s ":completion:${curcontext}:" prefix prefix || prefix="${PASSWORD_STORE_DIR:-$HOME/.password-store}"
+ _values -C 'passwords' ${$(find -L "$prefix" \( -name .git -o -name .gpg-id \) -prune -o $@ -print 2>/dev/null | sed -e "s#${prefix}/\{0,1\}##" -e 's#\.gpg##' -e 's#\\#\\\\#g' -e 's#:#\\:#g' | sort):-""}
+}
+
+_pass_complete_entries_with_subdirs () {
+ _pass_complete_entries_helper
+}
+
+_pass_complete_entries () {
+ _pass_complete_entries_helper -type f
+}
+
+_pass_complete_keys () {
+ local IFS=$'\n'
+ # Extract names and email addresses from gpg --list-keys
+ _values 'gpg keys' $(gpg2 --list-secret-keys --with-colons | cut -d : -f 10 | sort -u | sed '/^$/d')
+}
+
+_pass
diff --git a/zsh/comp/vgo.zsh-completion b/zsh/comp/vgo.zsh-completion
new file mode 100644
index 0000000..452705d
--- /dev/null
+++ b/zsh/comp/vgo.zsh-completion
@@ -0,0 +1,212 @@
+#compdef vgo
+compdef _vgo vgo
+
+# zsh completion for vgo -*- shell-script -*-
+
+__vgo_debug()
+{
+ local file="$BASH_COMP_DEBUG_FILE"
+ if [[ -n ${file} ]]; then
+ echo "$*" >> "${file}"
+ fi
+}
+
+_vgo()
+{
+ local shellCompDirectiveError=1
+ local shellCompDirectiveNoSpace=2
+ local shellCompDirectiveNoFileComp=4
+ local shellCompDirectiveFilterFileExt=8
+ local shellCompDirectiveFilterDirs=16
+ local shellCompDirectiveKeepOrder=32
+
+ local lastParam lastChar flagPrefix requestComp out directive comp lastComp noSpace keepOrder
+ local -a completions
+
+ __vgo_debug "\n========= starting completion logic =========="
+ __vgo_debug "CURRENT: ${CURRENT}, words[*]: ${words[*]}"
+
+ # The user could have moved the cursor backwards on the command-line.
+ # We need to trigger completion from the $CURRENT location, so we need
+ # to truncate the command-line ($words) up to the $CURRENT location.
+ # (We cannot use $CURSOR as its value does not work when a command is an alias.)
+ words=("${=words[1,CURRENT]}")
+ __vgo_debug "Truncated words[*]: ${words[*]},"
+
+ lastParam=${words[-1]}
+ lastChar=${lastParam[-1]}
+ __vgo_debug "lastParam: ${lastParam}, lastChar: ${lastChar}"
+
+ # For zsh, when completing a flag with an = (e.g., vgo -n=<TAB>)
+ # completions must be prefixed with the flag
+ setopt local_options BASH_REMATCH
+ if [[ "${lastParam}" =~ '-.*=' ]]; then
+ # We are dealing with a flag with an =
+ flagPrefix="-P ${BASH_REMATCH}"
+ fi
+
+ # Prepare the command to obtain completions
+ requestComp="${words[1]} __complete ${words[2,-1]}"
+ if [ "${lastChar}" = "" ]; then
+ # If the last parameter is complete (there is a space following it)
+ # We add an extra empty parameter so we can indicate this to the go completion code.
+ __vgo_debug "Adding extra empty parameter"
+ requestComp="${requestComp} \"\""
+ fi
+
+ __vgo_debug "About to call: eval ${requestComp}"
+
+ # Use eval to handle any environment variables and such
+ out=$(eval ${requestComp} 2>/dev/null)
+ __vgo_debug "completion output: ${out}"
+
+ # Extract the directive integer following a : from the last line
+ local lastLine
+ while IFS='\n' read -r line; do
+ lastLine=${line}
+ done < <(printf "%s\n" "${out[@]}")
+ __vgo_debug "last line: ${lastLine}"
+
+ if [ "${lastLine[1]}" = : ]; then
+ directive=${lastLine[2,-1]}
+ # Remove the directive including the : and the newline
+ local suffix
+ (( suffix=${#lastLine}+2))
+ out=${out[1,-$suffix]}
+ else
+ # There is no directive specified. Leave $out as is.
+ __vgo_debug "No directive found. Setting do default"
+ directive=0
+ fi
+
+ __vgo_debug "directive: ${directive}"
+ __vgo_debug "completions: ${out}"
+ __vgo_debug "flagPrefix: ${flagPrefix}"
+
+ if [ $((directive & shellCompDirectiveError)) -ne 0 ]; then
+ __vgo_debug "Completion received error. Ignoring completions."
+ return
+ fi
+
+ local activeHelpMarker="_activeHelp_ "
+ local endIndex=${#activeHelpMarker}
+ local startIndex=$((${#activeHelpMarker}+1))
+ local hasActiveHelp=0
+ while IFS='\n' read -r comp; do
+ # Check if this is an activeHelp statement (i.e., prefixed with $activeHelpMarker)
+ if [ "${comp[1,$endIndex]}" = "$activeHelpMarker" ];then
+ __vgo_debug "ActiveHelp found: $comp"
+ comp="${comp[$startIndex,-1]}"
+ if [ -n "$comp" ]; then
+ compadd -x "${comp}"
+ __vgo_debug "ActiveHelp will need delimiter"
+ hasActiveHelp=1
+ fi
+
+ continue
+ fi
+
+ if [ -n "$comp" ]; then
+ # If requested, completions are returned with a description.
+ # The description is preceded by a TAB character.
+ # For zsh's _describe, we need to use a : instead of a TAB.
+ # We first need to escape any : as part of the completion itself.
+ comp=${comp//:/\\:}
+
+ local tab="$(printf '\t')"
+ comp=${comp//$tab/:}
+
+ __vgo_debug "Adding completion: ${comp}"
+ completions+=${comp}
+ lastComp=$comp
+ fi
+ done < <(printf "%s\n" "${out[@]}")
+
+ # Add a delimiter after the activeHelp statements, but only if:
+ # - there are completions following the activeHelp statements, or
+ # - file completion will be performed (so there will be choices after the activeHelp)
+ if [ $hasActiveHelp -eq 1 ]; then
+ if [ ${#completions} -ne 0 ] || [ $((directive & shellCompDirectiveNoFileComp)) -eq 0 ]; then
+ __vgo_debug "Adding activeHelp delimiter"
+ compadd -x "--"
+ hasActiveHelp=0
+ fi
+ fi
+
+ if [ $((directive & shellCompDirectiveNoSpace)) -ne 0 ]; then
+ __vgo_debug "Activating nospace."
+ noSpace="-S ''"
+ fi
+
+ if [ $((directive & shellCompDirectiveKeepOrder)) -ne 0 ]; then
+ __vgo_debug "Activating keep order."
+ keepOrder="-V"
+ fi
+
+ if [ $((directive & shellCompDirectiveFilterFileExt)) -ne 0 ]; then
+ # File extension filtering
+ local filteringCmd
+ filteringCmd='_files'
+ for filter in ${completions[@]}; do
+ if [ ${filter[1]} != '*' ]; then
+ # zsh requires a glob pattern to do file filtering
+ filter="\*.$filter"
+ fi
+ filteringCmd+=" -g $filter"
+ done
+ filteringCmd+=" ${flagPrefix}"
+
+ __vgo_debug "File filtering command: $filteringCmd"
+ _arguments '*:filename:'"$filteringCmd"
+ elif [ $((directive & shellCompDirectiveFilterDirs)) -ne 0 ]; then
+ # File completion for directories only
+ local subdir
+ subdir="${completions[1]}"
+ if [ -n "$subdir" ]; then
+ __vgo_debug "Listing directories in $subdir"
+ pushd "${subdir}" >/dev/null 2>&1
+ else
+ __vgo_debug "Listing directories in ."
+ fi
+
+ local result
+ _arguments '*:dirname:_files -/'" ${flagPrefix}"
+ result=$?
+ if [ -n "$subdir" ]; then
+ popd >/dev/null 2>&1
+ fi
+ return $result
+ else
+ __vgo_debug "Calling _describe"
+ if eval _describe $keepOrder "completions" completions $flagPrefix $noSpace; then
+ __vgo_debug "_describe found some completions"
+
+ # Return the success of having called _describe
+ return 0
+ else
+ __vgo_debug "_describe did not find completions."
+ __vgo_debug "Checking if we should do file completion."
+ if [ $((directive & shellCompDirectiveNoFileComp)) -ne 0 ]; then
+ __vgo_debug "deactivating file completion"
+
+ # We must return an error code here to let zsh know that there were no
+ # completions found by _describe; this is what will trigger other
+ # matching algorithms to attempt to find completions.
+ # For example zsh can match letters in the middle of words.
+ return 1
+ else
+ # Perform file completion
+ __vgo_debug "Activating file completion"
+
+ # We must return the result of this command, so it must be the
+ # last command, or else we must store its result to return it.
+ _arguments '*:filename:_files'" ${flagPrefix}"
+ fi
+ fi
+ fi
+}
+
+# don't run the completion function when being source-ed or eval-ed
+if [ "$funcstack[1]" = "_vgo" ]; then
+ _vgo
+fi
diff --git a/zsh/p10k.zsh b/zsh/p10k.zsh
index 6072431..821676d 100644
--- a/zsh/p10k.zsh
+++ b/zsh/p10k.zsh
@@ -1,10 +1,10 @@
-# Generated by Powerlevel10k configuration wizard on 2024-08-08 at 20:10 MSK.
-# Based on romkatv/powerlevel10k/config/p10k-lean.zsh, checksum 04242.
-# Wizard options: powerline, unicode, lean, 24h time, 1 line, compact, concise,
+# Generated by Powerlevel10k configuration wizard on 2025-01-02 at 23:41 MSK.
+# Based on romkatv/powerlevel10k/config/p10k-lean-8colors.zsh, checksum 16269.
+# Wizard options: ascii, lean_8colors, 24h time, 1 line, compact, concise,
# transient_prompt, instant_prompt=verbose.
# Type `p10k configure` to generate another config.
#
-# Config for Powerlevel10k with lean prompt style. Type `p10k configure` to generate
+# Config for Powerlevel10k with 8-color lean prompt style. Type `p10k configure` to generate
# your own config based on it.
#
# Tip: Looking for a nice color? Here's a one-liner to print colormap.
@@ -32,7 +32,6 @@
typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
# os_icon # os identifier
dir # current directory
- vcs # git status
prompt_char # prompt symbol
)
@@ -44,15 +43,15 @@
status # exit code of the last command
command_execution_time # duration of the last command
background_jobs # presence of background jobs
- direnv # direnv status (https://direnv.net/)
- asdf # asdf version manager (https://github.com/asdf-vm/asdf)
- virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html)
- anaconda # conda environment (https://conda.io/)
- pyenv # python environment (https://github.com/pyenv/pyenv)
- goenv # go environment (https://github.com/syndbg/goenv)
- nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
- nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
- nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
+ #direnv # direnv status (https://direnv.net/)
+ #asdf # asdf version manager (https://github.com/asdf-vm/asdf)
+ #virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html)
+ #anaconda # conda environment (https://conda.io/)
+ #pyenv # python environment (https://github.com/pyenv/pyenv)
+ #goenv # go environment (https://github.com/syndbg/goenv)
+ #nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
+ #nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
+ #nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
# node_version # node.js version
# go_version # go version (https://golang.org)
# rust_version # rustc version (https://www.rust-lang.org)
@@ -61,47 +60,47 @@
# laravel_version # laravel php framework version (https://laravel.com/)
# java_version # java version (https://www.java.com/)
# package # name@version from package.json (https://docs.npmjs.com/files/package.json)
- rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
- rvm # ruby version from rvm (https://rvm.io)
- fvm # flutter version management (https://github.com/leoafarias/fvm)
- luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
- jenv # java version from jenv (https://github.com/jenv/jenv)
- plenv # perl version from plenv (https://github.com/tokuhirom/plenv)
- perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew)
- phpenv # php version from phpenv (https://github.com/phpenv/phpenv)
- scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv)
- haskell_stack # haskell version from stack (https://haskellstack.org/)
- kubecontext # current kubernetes context (https://kubernetes.io/)
- terraform # terraform workspace (https://www.terraform.io)
+ #rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
+ #rvm # ruby version from rvm (https://rvm.io)
+ #fvm # flutter version management (https://github.com/leoafarias/fvm)
+ #luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
+ #jenv # java version from jenv (https://github.com/jenv/jenv)
+ #plenv # perl version from plenv (https://github.com/tokuhirom/plenv)
+ #perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew)
+ #phpenv # php version from phpenv (https://github.com/phpenv/phpenv)
+ #scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv)
+ #haskell_stack # haskell version from stack (https://haskellstack.org/)
+ #kubecontext # current kubernetes context (https://kubernetes.io/)
+ #terraform # terraform workspace (https://www.terraform.io)
# terraform_version # terraform version (https://www.terraform.io)
- aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
- aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/)
- azure # azure account name (https://docs.microsoft.com/en-us/cli/azure)
- gcloud # google cloud cli account and project (https://cloud.google.com/)
- google_app_cred # google application credentials (https://cloud.google.com/docs/authentication/production)
- toolbox # toolbox name (https://github.com/containers/toolbox)
- context # user@hostname
- nordvpn # nordvpn connection status, linux only (https://nordvpn.com/)
- ranger # ranger shell (https://github.com/ranger/ranger)
- yazi # yazi shell (https://github.com/sxyazi/yazi)
- nnn # nnn shell (https://github.com/jarun/nnn)
- lf # lf shell (https://github.com/gokcehan/lf)
- xplr # xplr shell (https://github.com/sayanarijit/xplr)
- vim_shell # vim shell indicator (:sh)
- midnight_commander # midnight commander shell (https://midnight-commander.org/)
- nix_shell # nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html)
- chezmoi_shell # chezmoi shell (https://www.chezmoi.io/)
+ #aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
+ #aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/)
+ #azure # azure account name (https://docs.microsoft.com/en-us/cli/azure)
+ #gcloud # google cloud cli account and project (https://cloud.google.com/)
+ #google_app_cred # google application credentials (https://cloud.google.com/docs/authentication/production)
+ #toolbox # toolbox name (https://github.com/containers/toolbox)
+ #context # user@hostname
+ #nordvpn # nordvpn connection status, linux only (https://nordvpn.com/)
+ #ranger # ranger shell (https://github.com/ranger/ranger)
+ #yazi # yazi shell (https://github.com/sxyazi/yazi)
+ #nnn # nnn shell (https://github.com/jarun/nnn)
+ #lf # lf shell (https://github.com/gokcehan/lf)
+ #xplr # xplr shell (https://github.com/sayanarijit/xplr)
+ #vim_shell # vim shell indicator (:sh)
+ #midnight_commander # midnight commander shell (https://midnight-commander.org/)
+ #nix_shell # nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html)
+ #chezmoi_shell # chezmoi shell (https://www.chezmoi.io/)
# vpn_ip # virtual private network indicator
# load # CPU load
# disk_usage # disk usage
# ram # free RAM
# swap # used swap
todo # todo items (https://github.com/todotxt/todo.txt-cli)
- timewarrior # timewarrior tracking status (https://timewarrior.net/)
- taskwarrior # taskwarrior task count (https://taskwarrior.org/)
- per_directory_history # Oh My Zsh per-directory-history local/global indicator
+ #timewarrior # timewarrior tracking status (https://timewarrior.net/)
+ #taskwarrior # taskwarrior task count (https://taskwarrior.org/)
+ #per_directory_history # Oh My Zsh per-directory-history local/global indicator
# cpu_arch # CPU architecture
- time # current time
+ #time # current time
# ip # ip address and bandwidth usage for a specified network interface
# public_ip # public IP address
# proxy # system-wide http/https/ftp proxy
@@ -111,7 +110,7 @@
)
# Defines character set used by powerlevel10k. It's best to let `p10k configure` set it for you.
- typeset -g POWERLEVEL9K_MODE=powerline
+ typeset -g POWERLEVEL9K_MODE=ascii
# When set to `moderate`, some icons will have an extra space after them. This is meant to avoid
# icon overlap when using non-monospace fonts. When set to `none`, spaces are not added.
typeset -g POWERLEVEL9K_ICON_PADDING=none
@@ -157,10 +156,10 @@
# probably want to set POWERLEVEL9K_PROMPT_ADD_NEWLINE=false above and
# POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' ' below.
typeset -g POWERLEVEL9K_SHOW_RULER=false
- typeset -g POWERLEVEL9K_RULER_CHAR='─' # reasonable alternative: '·'
- typeset -g POWERLEVEL9K_RULER_FOREGROUND=242
+ typeset -g POWERLEVEL9K_RULER_CHAR='-' # reasonable alternative: '·'
+ typeset -g POWERLEVEL9K_RULER_FOREGROUND=7
- # Filler between left and right prompt on the first prompt line. You can set it to '·' or '─'
+ # Filler between left and right prompt on the first prompt line. You can set it to '·' or '-'
# to make it easier to see the alignment between left and right prompt and to separate prompt
# from command output. It serves the same purpose as ruler (see above) without increasing
# the number of prompt lines. You'll probably want to set POWERLEVEL9K_SHOW_RULER=false
@@ -169,7 +168,7 @@
typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' '
if [[ $POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR != ' ' ]]; then
# The color of the filler.
- typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND=242
+ typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND=7
# Add a space between the end of left prompt and the filler.
typeset -g POWERLEVEL9K_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL=' '
# Add a space between the filler and the start of right prompt.
@@ -188,17 +187,17 @@
################################[ prompt_char: prompt symbol ]################################
# Green prompt symbol if the last command succeeded.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=76
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=2
# Red prompt symbol if the last command failed.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=196
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=1
# Default prompt symbol.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯'
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='>'
# Prompt symbol in command vi mode.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮'
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='<'
# Prompt symbol in visual vi mode.
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='V'
# Prompt symbol in overwrite vi mode.
- typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIOWR_CONTENT_EXPANSION='▶'
+ typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIOWR_CONTENT_EXPANSION='^'
typeset -g POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=true
# No line terminator if prompt_char is the last segment.
typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL=''
@@ -207,19 +206,19 @@
##################################[ dir: current directory ]##################################
# Default current directory color.
- typeset -g POWERLEVEL9K_DIR_FOREGROUND=31
+ typeset -g POWERLEVEL9K_DIR_FOREGROUND=4
# If directory is too long, shorten some of its segments to the shortest possible unique
# prefix. The shortened directory can be tab-completed to the original.
typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_unique
# Replace removed segment suffixes with this symbol.
typeset -g POWERLEVEL9K_SHORTEN_DELIMITER=
# Color of the shortened directory segments.
- typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=103
+ typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=4
# Color of the anchor directory segments. Anchor segments are never shortened. The first
# segment is always an anchor.
- typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=39
- # Display anchor directory segments in bold.
- typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=true
+ typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=4
+ # Set to true to display anchor directory segments in bold.
+ typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=false
# Don't shorten directories that contain any of these files. They are anchors.
local anchor_files=(
.bzr
@@ -283,7 +282,7 @@
# The default icon shown next to non-writable and non-existent directories when
# POWERLEVEL9K_DIR_SHOW_WRITABLE is set to v3.
- typeset -g POWERLEVEL9K_LOCK_ICON='∅'
+ # typeset -g POWERLEVEL9K_LOCK_ICON='⭐'
# POWERLEVEL9K_DIR_CLASSES allows you to specify custom icons and colors for different
# directories. It must be an array with 3 * N elements. Each triplet consists of:
@@ -314,21 +313,21 @@
#
# # Styling for WORK.
# typeset -g POWERLEVEL9K_DIR_WORK_VISUAL_IDENTIFIER_EXPANSION='⭐'
- # typeset -g POWERLEVEL9K_DIR_WORK_FOREGROUND=31
- # typeset -g POWERLEVEL9K_DIR_WORK_SHORTENED_FOREGROUND=103
- # typeset -g POWERLEVEL9K_DIR_WORK_ANCHOR_FOREGROUND=39
+ # typeset -g POWERLEVEL9K_DIR_WORK_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_SHORTENED_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_ANCHOR_FOREGROUND=4
#
# # Styling for WORK_NOT_WRITABLE.
# typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐'
- # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND=31
- # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_SHORTENED_FOREGROUND=103
- # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_ANCHOR_FOREGROUND=39
+ # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_SHORTENED_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_ANCHOR_FOREGROUND=4#
#
- # # Styling for WORK_NON_EXISTENT.
+ # Styling for WORK_NON_EXISTENT.
# typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_VISUAL_IDENTIFIER_EXPANSION='⭐'
- # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_FOREGROUND=31
- # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_SHORTENED_FOREGROUND=103
- # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_ANCHOR_FOREGROUND=39
+ # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_SHORTENED_FOREGROUND=4
+ # typeset -g POWERLEVEL9K_DIR_WORK_NON_EXISTENT_ANCHOR_FOREGROUND=4
#
# If a styling parameter isn't explicitly defined for some class, it falls back to the classless
# parameter. For example, if POWERLEVEL9K_DIR_WORK_NOT_WRITABLE_FOREGROUND is not set, it falls
@@ -349,7 +348,7 @@
# Formatter for Git status.
#
- # Example output: master wip ⇣42⇡42 *42 merge ~42 +42 !42 ?42.
+ # Example output: master wip <42>42 *42 merge ~42 +42 !42 ?42.
#
# You can edit the function to customize how Git status looks.
#
@@ -367,18 +366,18 @@
if (( $1 )); then
# Styling for up-to-date Git status.
- local meta='%f' # default foreground
- local clean='%76F' # green foreground
- local modified='%178F' # yellow foreground
- local untracked='%39F' # blue foreground
- local conflicted='%196F' # red foreground
+ local meta='%f' # default foreground
+ local clean='%2F' # green foreground
+ local modified='%3F' # yellow foreground
+ local untracked='%4F' # blue foreground
+ local conflicted='%1F' # red foreground
else
# Styling for incomplete and stale Git status.
- local meta='%244F' # grey foreground
- local clean='%244F' # grey foreground
- local modified='%244F' # grey foreground
- local untracked='%244F' # grey foreground
- local conflicted='%244F' # grey foreground
+ local meta='%f' # default foreground
+ local clean='%f' # default foreground
+ local modified='%f' # default foreground
+ local untracked='%f' # default foreground
+ local conflicted='%f' # default foreground
fi
local res
@@ -386,9 +385,9 @@
if [[ -n $VCS_STATUS_LOCAL_BRANCH ]]; then
local branch=${(V)VCS_STATUS_LOCAL_BRANCH}
# If local branch name is at most 32 characters long, show it in full.
- # Otherwise show the first 12 … the last 12.
+ # Otherwise show the first 12 .. the last 12.
# Tip: To always show local branch name in full without truncation, delete the next line.
- (( $#branch > 32 )) && branch[13,-13]="…" # <-- this line
+ (( $#branch > 32 )) && branch[13,-13]=".." # <-- this line
res+="${clean}${(g::)POWERLEVEL9K_VCS_BRANCH_ICON}${branch//\%/%%}"
fi
@@ -399,9 +398,9 @@
]]; then
local tag=${(V)VCS_STATUS_TAG}
# If tag name is at most 32 characters long, show it in full.
- # Otherwise show the first 12 … the last 12.
+ # Otherwise show the first 12 .. the last 12.
# Tip: To always show tag name in full without truncation, delete the next line.
- (( $#tag > 32 )) && tag[13,-13]="…" # <-- this line
+ (( $#tag > 32 )) && tag[13,-13]=".." # <-- this line
res+="${meta}#${clean}${tag//\%/%%}"
fi
@@ -421,21 +420,21 @@
fi
if (( VCS_STATUS_COMMITS_AHEAD || VCS_STATUS_COMMITS_BEHIND )); then
- # ⇣42 if behind the remote.
- (( VCS_STATUS_COMMITS_BEHIND )) && res+=" ${clean}⇣${VCS_STATUS_COMMITS_BEHIND}"
- # ⇡42 if ahead of the remote; no leading space if also behind the remote: ⇣42⇡42.
+ # <42 if behind the remote.
+ (( VCS_STATUS_COMMITS_BEHIND )) && res+=" ${clean}<${VCS_STATUS_COMMITS_BEHIND}"
+ # >42 if ahead of the remote; no leading space if also behind the remote: <42>42.
(( VCS_STATUS_COMMITS_AHEAD && !VCS_STATUS_COMMITS_BEHIND )) && res+=" "
- (( VCS_STATUS_COMMITS_AHEAD )) && res+="${clean}⇡${VCS_STATUS_COMMITS_AHEAD}"
+ (( VCS_STATUS_COMMITS_AHEAD )) && res+="${clean}>${VCS_STATUS_COMMITS_AHEAD}"
elif [[ -n $VCS_STATUS_REMOTE_BRANCH ]]; then
# Tip: Uncomment the next line to display '=' if up to date with the remote.
# res+=" ${clean}="
fi
- # ⇠42 if behind the push remote.
- (( VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" ${clean}⇠${VCS_STATUS_PUSH_COMMITS_BEHIND}"
+ # <-42 if behind the push remote.
+ (( VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" ${clean}<-${VCS_STATUS_PUSH_COMMITS_BEHIND}"
(( VCS_STATUS_PUSH_COMMITS_AHEAD && !VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" "
- # ⇢42 if ahead of the push remote; no leading space if also behind: ⇠42⇢42.
- (( VCS_STATUS_PUSH_COMMITS_AHEAD )) && res+="${clean}⇢${VCS_STATUS_PUSH_COMMITS_AHEAD}"
+ # ->42 if ahead of the push remote; no leading space if also behind: <-42->42.
+ (( VCS_STATUS_PUSH_COMMITS_AHEAD )) && res+="${clean}->${VCS_STATUS_PUSH_COMMITS_AHEAD}"
# *42 if have stashes.
(( VCS_STATUS_STASHES )) && res+=" ${clean}*${VCS_STATUS_STASHES}"
# 'merge' if the repo is in an unusual state.
@@ -450,12 +449,12 @@
# See POWERLEVEL9K_VCS_UNTRACKED_ICON above if you want to use a different icon.
# Remove the next line if you don't want to see untracked files at all.
(( VCS_STATUS_NUM_UNTRACKED )) && res+=" ${untracked}${(g::)POWERLEVEL9K_VCS_UNTRACKED_ICON}${VCS_STATUS_NUM_UNTRACKED}"
- # "─" if the number of unstaged files is unknown. This can happen due to
+ # "-" if the number of unstaged files is unknown. This can happen due to
# POWERLEVEL9K_VCS_MAX_INDEX_SIZE_DIRTY (see below) being set to a non-negative number lower
# than the number of files in the Git index, or due to bash.showDirtyState being set to false
# in the repository config. The number of staged and untracked files may also be unknown
# in this case.
- (( VCS_STATUS_HAS_UNSTAGED == -1 )) && res+=" ${modified}─"
+ (( VCS_STATUS_HAS_UNSTAGED == -1 )) && res+=" ${modified}-"
typeset -g my_git_format=$res
}
@@ -484,8 +483,8 @@
typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED,CONFLICTED,COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=-1
# Icon color.
- typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_COLOR=76
- typeset -g POWERLEVEL9K_VCS_LOADING_VISUAL_IDENTIFIER_COLOR=244
+ typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_COLOR=2
+ typeset -g POWERLEVEL9K_VCS_LOADING_VISUAL_IDENTIFIER_COLOR=
# Custom icon.
typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_EXPANSION=
# Custom prefix.
@@ -498,9 +497,9 @@
# These settings are used for repositories other than Git or when gitstatusd fails and
# Powerlevel10k has to fall back to using vcs_info.
- typeset -g POWERLEVEL9K_VCS_CLEAN_FOREGROUND=76
- typeset -g POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND=76
- typeset -g POWERLEVEL9K_VCS_MODIFIED_FOREGROUND=178
+ typeset -g POWERLEVEL9K_VCS_CLEAN_FOREGROUND=2
+ typeset -g POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND=2
+ typeset -g POWERLEVEL9K_VCS_MODIFIED_FOREGROUND=3
##########################[ status: exit code of the last command ]###########################
# Enable OK_PIPE, ERROR_PIPE and ERROR_SIGNAL status states to allow us to enable, disable and
@@ -510,33 +509,33 @@
# Status on success. No content, just an icon. No need to show it if prompt_char is enabled as
# it will signify success by turning green.
typeset -g POWERLEVEL9K_STATUS_OK=false
- typeset -g POWERLEVEL9K_STATUS_OK_FOREGROUND=70
- typeset -g POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_EXPANSION='✔'
+ typeset -g POWERLEVEL9K_STATUS_OK_FOREGROUND=2
+ typeset -g POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_EXPANSION='ok'
# Status when some part of a pipe command fails but the overall exit status is zero. It may look
# like this: 1|0.
typeset -g POWERLEVEL9K_STATUS_OK_PIPE=true
- typeset -g POWERLEVEL9K_STATUS_OK_PIPE_FOREGROUND=70
- typeset -g POWERLEVEL9K_STATUS_OK_PIPE_VISUAL_IDENTIFIER_EXPANSION='✔'
+ typeset -g POWERLEVEL9K_STATUS_OK_PIPE_FOREGROUND=2
+ typeset -g POWERLEVEL9K_STATUS_OK_PIPE_VISUAL_IDENTIFIER_EXPANSION='ok'
# Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as
# it will signify error by turning red.
typeset -g POWERLEVEL9K_STATUS_ERROR=false
- typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=160
- typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='✘'
+ typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=1
+ typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='err'
# Status when the last command was terminated by a signal.
typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL=true
- typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_FOREGROUND=160
+ typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_FOREGROUND=1
# Use terse signal names: "INT" instead of "SIGINT(2)".
typeset -g POWERLEVEL9K_STATUS_VERBOSE_SIGNAME=false
- typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_VISUAL_IDENTIFIER_EXPANSION='✘'
+ typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_VISUAL_IDENTIFIER_EXPANSION=
# Status when some part of a pipe command fails and the overall exit status is also non-zero.
# It may look like this: 1|0.
typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE=true
- typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_FOREGROUND=160
- typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_VISUAL_IDENTIFIER_EXPANSION='✘'
+ typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_FOREGROUND=1
+ typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_VISUAL_IDENTIFIER_EXPANSION='err'
###################[ command_execution_time: duration of the last command ]###################
# Show duration of the last command if takes at least this many seconds.
@@ -544,7 +543,7 @@
# Show this many fractional digits. Zero means round to seconds.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0
# Execution time color.
- typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=101
+ typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=3
# Duration format: 1d 2h 3m 4s.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s'
# Custom icon.
@@ -556,20 +555,20 @@
# Don't show the number of background jobs.
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VERBOSE=false
# Background jobs color.
- typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=70
+ typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=1
# Custom icon.
- typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='≡'
+ # typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='⭐'
#######################[ direnv: direnv status (https://direnv.net/) ]########################
# Direnv color.
- typeset -g POWERLEVEL9K_DIRENV_FOREGROUND=178
+ typeset -g POWERLEVEL9K_DIRENV_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_DIRENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
###############[ asdf: asdf version manager (https://github.com/asdf-vm/asdf) ]###############
# Default asdf color. Only used to display tools for which there is no color override (see below).
# Tip: Override this parameter for ${TOOL} with POWERLEVEL9K_ASDF_${TOOL}_FOREGROUND.
- typeset -g POWERLEVEL9K_ASDF_FOREGROUND=66
+ typeset -g POWERLEVEL9K_ASDF_FOREGROUND=6
# There are four parameters that can be used to hide asdf tools. Each parameter describes
# conditions under which a tool gets hidden. Parameters can hide tools but not unhide them. If at
@@ -627,139 +626,139 @@
typeset -g POWERLEVEL9K_ASDF_SHOW_ON_UPGLOB=
# Ruby version from asdf.
- typeset -g POWERLEVEL9K_ASDF_RUBY_FOREGROUND=168
+ typeset -g POWERLEVEL9K_ASDF_RUBY_FOREGROUND=1
# typeset -g POWERLEVEL9K_ASDF_RUBY_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_RUBY_SHOW_ON_UPGLOB='*.foo|*.bar'
# Python version from asdf.
- typeset -g POWERLEVEL9K_ASDF_PYTHON_FOREGROUND=37
+ typeset -g POWERLEVEL9K_ASDF_PYTHON_FOREGROUND=6
# typeset -g POWERLEVEL9K_ASDF_PYTHON_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_PYTHON_SHOW_ON_UPGLOB='*.foo|*.bar'
# Go version from asdf.
- typeset -g POWERLEVEL9K_ASDF_GOLANG_FOREGROUND=37
+ typeset -g POWERLEVEL9K_ASDF_GOLANG_FOREGROUND=6
# typeset -g POWERLEVEL9K_ASDF_GOLANG_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_GOLANG_SHOW_ON_UPGLOB='*.foo|*.bar'
# Node.js version from asdf.
- typeset -g POWERLEVEL9K_ASDF_NODEJS_FOREGROUND=70
+ typeset -g POWERLEVEL9K_ASDF_NODEJS_FOREGROUND=2
# typeset -g POWERLEVEL9K_ASDF_NODEJS_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_NODEJS_SHOW_ON_UPGLOB='*.foo|*.bar'
# Rust version from asdf.
- typeset -g POWERLEVEL9K_ASDF_RUST_FOREGROUND=37
+ typeset -g POWERLEVEL9K_ASDF_RUST_FOREGROUND=4
# typeset -g POWERLEVEL9K_ASDF_RUST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_RUST_SHOW_ON_UPGLOB='*.foo|*.bar'
# .NET Core version from asdf.
- typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_FOREGROUND=134
+ typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_FOREGROUND=5
# typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_VISUAL_IDENTIFIER_EXPANSION='⭐'
- # typeset -g POWERLEVEL9K_ASDF_DOTNET_SHOW_ON_UPGLOB='*.foo|*.bar'
+ # typeset -g POWERLEVEL9K_ASDF_DOTNET_CORE_SHOW_ON_UPGLOB='*.foo|*.bar'
# Flutter version from asdf.
- typeset -g POWERLEVEL9K_ASDF_FLUTTER_FOREGROUND=38
+ typeset -g POWERLEVEL9K_ASDF_FLUTTER_FOREGROUND=4
# typeset -g POWERLEVEL9K_ASDF_FLUTTER_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_FLUTTER_SHOW_ON_UPGLOB='*.foo|*.bar'
# Lua version from asdf.
- typeset -g POWERLEVEL9K_ASDF_LUA_FOREGROUND=32
+ typeset -g POWERLEVEL9K_ASDF_LUA_FOREGROUND=4
# typeset -g POWERLEVEL9K_ASDF_LUA_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_LUA_SHOW_ON_UPGLOB='*.foo|*.bar'
# Java version from asdf.
- typeset -g POWERLEVEL9K_ASDF_JAVA_FOREGROUND=32
+ typeset -g POWERLEVEL9K_ASDF_JAVA_FOREGROUND=4
# typeset -g POWERLEVEL9K_ASDF_JAVA_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_JAVA_SHOW_ON_UPGLOB='*.foo|*.bar'
# Perl version from asdf.
- typeset -g POWERLEVEL9K_ASDF_PERL_FOREGROUND=67
+ typeset -g POWERLEVEL9K_ASDF_PERL_FOREGROUND=6
# typeset -g POWERLEVEL9K_ASDF_PERL_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_PERL_SHOW_ON_UPGLOB='*.foo|*.bar'
# Erlang version from asdf.
- typeset -g POWERLEVEL9K_ASDF_ERLANG_FOREGROUND=125
+ typeset -g POWERLEVEL9K_ASDF_ERLANG_FOREGROUND=1
# typeset -g POWERLEVEL9K_ASDF_ERLANG_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_ERLANG_SHOW_ON_UPGLOB='*.foo|*.bar'
# Elixir version from asdf.
- typeset -g POWERLEVEL9K_ASDF_ELIXIR_FOREGROUND=129
+ typeset -g POWERLEVEL9K_ASDF_ELIXIR_FOREGROUND=5
# typeset -g POWERLEVEL9K_ASDF_ELIXIR_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_ELIXIR_SHOW_ON_UPGLOB='*.foo|*.bar'
# Postgres version from asdf.
- typeset -g POWERLEVEL9K_ASDF_POSTGRES_FOREGROUND=31
+ typeset -g POWERLEVEL9K_ASDF_POSTGRES_FOREGROUND=6
# typeset -g POWERLEVEL9K_ASDF_POSTGRES_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_POSTGRES_SHOW_ON_UPGLOB='*.foo|*.bar'
# PHP version from asdf.
- typeset -g POWERLEVEL9K_ASDF_PHP_FOREGROUND=99
+ typeset -g POWERLEVEL9K_ASDF_PHP_FOREGROUND=5
# typeset -g POWERLEVEL9K_ASDF_PHP_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_PHP_SHOW_ON_UPGLOB='*.foo|*.bar'
# Haskell version from asdf.
- typeset -g POWERLEVEL9K_ASDF_HASKELL_FOREGROUND=172
+ typeset -g POWERLEVEL9K_ASDF_HASKELL_FOREGROUND=3
# typeset -g POWERLEVEL9K_ASDF_HASKELL_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_HASKELL_SHOW_ON_UPGLOB='*.foo|*.bar'
# Julia version from asdf.
- typeset -g POWERLEVEL9K_ASDF_JULIA_FOREGROUND=70
+ typeset -g POWERLEVEL9K_ASDF_JULIA_FOREGROUND=2
# typeset -g POWERLEVEL9K_ASDF_JULIA_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_ASDF_JULIA_SHOW_ON_UPGLOB='*.foo|*.bar'
##########[ nordvpn: nordvpn connection status, linux only (https://nordvpn.com/) ]###########
# NordVPN connection indicator color.
- typeset -g POWERLEVEL9K_NORDVPN_FOREGROUND=39
+ typeset -g POWERLEVEL9K_NORDVPN_FOREGROUND=6
# Hide NordVPN connection indicator when not connected.
typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_CONTENT_EXPANSION=
typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_VISUAL_IDENTIFIER_EXPANSION=
# Custom icon.
- typeset -g POWERLEVEL9K_NORDVPN_VISUAL_IDENTIFIER_EXPANSION='nord'
+ # typeset -g POWERLEVEL9K_NORDVPN_VISUAL_IDENTIFIER_EXPANSION='⭐'
#################[ ranger: ranger shell (https://github.com/ranger/ranger) ]##################
# Ranger shell color.
- typeset -g POWERLEVEL9K_RANGER_FOREGROUND=178
+ typeset -g POWERLEVEL9K_RANGER_FOREGROUND=3
# Custom icon.
- typeset -g POWERLEVEL9K_RANGER_VISUAL_IDENTIFIER_EXPANSION='▲'
-
+ # typeset -g POWERLEVEL9K_RANGER_VISUAL_IDENTIFIER_EXPANSION='⭐'
+
####################[ yazi: yazi shell (https://github.com/sxyazi/yazi) ]#####################
# Yazi shell color.
- typeset -g POWERLEVEL9K_YAZI_FOREGROUND=178
+ typeset -g POWERLEVEL9K_YAZI_FOREGROUND=3
# Custom icon.
- typeset -g POWERLEVEL9K_YAZI_VISUAL_IDENTIFIER_EXPANSION='▲'
+ # typeset -g POWERLEVEL9K_YAZI_VISUAL_IDENTIFIER_EXPANSION='⭐'
######################[ nnn: nnn shell (https://github.com/jarun/nnn) ]#######################
# Nnn shell color.
- typeset -g POWERLEVEL9K_NNN_FOREGROUND=72
+ typeset -g POWERLEVEL9K_NNN_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_NNN_VISUAL_IDENTIFIER_EXPANSION='⭐'
######################[ lf: lf shell (https://github.com/gokcehan/lf) ]#######################
# lf shell color.
- typeset -g POWERLEVEL9K_LF_FOREGROUND=72
+ typeset -g POWERLEVEL9K_LF_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_LF_VISUAL_IDENTIFIER_EXPANSION='⭐'
##################[ xplr: xplr shell (https://github.com/sayanarijit/xplr) ]##################
# xplr shell color.
- typeset -g POWERLEVEL9K_XPLR_FOREGROUND=72
+ typeset -g POWERLEVEL9K_XPLR_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_XPLR_VISUAL_IDENTIFIER_EXPANSION='⭐'
###########################[ vim_shell: vim shell indicator (:sh) ]###########################
# Vim shell indicator color.
- typeset -g POWERLEVEL9K_VIM_SHELL_FOREGROUND=34
+ typeset -g POWERLEVEL9K_VIM_SHELL_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_VIM_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐'
######[ midnight_commander: midnight commander shell (https://midnight-commander.org/) ]######
# Midnight Commander shell color.
- typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_FOREGROUND=178
+ typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_MIDNIGHT_COMMANDER_VISUAL_IDENTIFIER_EXPANSION='⭐'
#[ nix_shell: nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html) ]##
# Nix shell color.
- typeset -g POWERLEVEL9K_NIX_SHELL_FOREGROUND=74
+ typeset -g POWERLEVEL9K_NIX_SHELL_FOREGROUND=4
# Display the icon of nix_shell if PATH contains a subdirectory of /nix/store.
# typeset -g POWERLEVEL9K_NIX_SHELL_INFER_FROM_PATH=false
@@ -772,15 +771,15 @@
##################[ chezmoi_shell: chezmoi shell (https://www.chezmoi.io/) ]##################
# chezmoi shell color.
- typeset -g POWERLEVEL9K_CHEZMOI_SHELL_FOREGROUND=33
+ typeset -g POWERLEVEL9K_CHEZMOI_SHELL_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_CHEZMOI_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐'
##################################[ disk_usage: disk usage ]##################################
# Colors for different levels of disk usage.
- typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_FOREGROUND=35
- typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_FOREGROUND=220
- typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_FOREGROUND=160
+ typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_FOREGROUND=2
+ typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_FOREGROUND=3
+ typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_FOREGROUND=1
# Thresholds for different levels of disk usage (percentage points).
typeset -g POWERLEVEL9K_DISK_USAGE_WARNING_LEVEL=90
typeset -g POWERLEVEL9K_DISK_USAGE_CRITICAL_LEVEL=95
@@ -791,13 +790,13 @@
######################################[ ram: free RAM ]#######################################
# RAM color.
- typeset -g POWERLEVEL9K_RAM_FOREGROUND=66
+ typeset -g POWERLEVEL9K_RAM_FOREGROUND=2
# Custom icon.
# typeset -g POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_EXPANSION='⭐'
#####################################[ swap: used swap ]######################################
# Swap color.
- typeset -g POWERLEVEL9K_SWAP_FOREGROUND=96
+ typeset -g POWERLEVEL9K_SWAP_FOREGROUND=3
# Custom icon.
# typeset -g POWERLEVEL9K_SWAP_VISUAL_IDENTIFIER_EXPANSION='⭐'
@@ -805,17 +804,17 @@
# Show average CPU load over this many last minutes. Valid values are 1, 5 and 15.
typeset -g POWERLEVEL9K_LOAD_WHICH=5
# Load color when load is under 50%.
- typeset -g POWERLEVEL9K_LOAD_NORMAL_FOREGROUND=66
+ typeset -g POWERLEVEL9K_LOAD_NORMAL_FOREGROUND=2
# Load color when load is between 50% and 70%.
- typeset -g POWERLEVEL9K_LOAD_WARNING_FOREGROUND=178
+ typeset -g POWERLEVEL9K_LOAD_WARNING_FOREGROUND=3
# Load color when load is over 70%.
- typeset -g POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND=166
+ typeset -g POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND=1
# Custom icon.
# typeset -g POWERLEVEL9K_LOAD_VISUAL_IDENTIFIER_EXPANSION='⭐'
################[ todo: todo items (https://github.com/todotxt/todo.txt-cli) ]################
# Todo color.
- typeset -g POWERLEVEL9K_TODO_FOREGROUND=110
+ typeset -g POWERLEVEL9K_TODO_FOREGROUND=4
# Hide todo when the total number of tasks is zero.
typeset -g POWERLEVEL9K_TODO_HIDE_ZERO_TOTAL=true
# Hide todo when the number of tasks after filtering is zero.
@@ -839,19 +838,19 @@
###########[ timewarrior: timewarrior tracking status (https://timewarrior.net/) ]############
# Timewarrior color.
- typeset -g POWERLEVEL9K_TIMEWARRIOR_FOREGROUND=110
- # If the tracked task is longer than 24 characters, truncate and append "…".
+ typeset -g POWERLEVEL9K_TIMEWARRIOR_FOREGROUND=4
+ # If the tracked task is longer than 24 characters, truncate and append "..".
# Tip: To always display tasks without truncation, delete the following parameter.
# Tip: To hide task names and display just the icon when time tracking is enabled, set the
# value of the following parameter to "".
- typeset -g POWERLEVEL9K_TIMEWARRIOR_CONTENT_EXPANSION='${P9K_CONTENT:0:24}${${P9K_CONTENT:24}:+…}'
+ typeset -g POWERLEVEL9K_TIMEWARRIOR_CONTENT_EXPANSION='${P9K_CONTENT:0:24}${${P9K_CONTENT:24}:+..}'
# Custom icon.
# typeset -g POWERLEVEL9K_TIMEWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐'
##############[ taskwarrior: taskwarrior task count (https://taskwarrior.org/) ]##############
# Taskwarrior color.
- typeset -g POWERLEVEL9K_TASKWARRIOR_FOREGROUND=74
+ typeset -g POWERLEVEL9K_TASKWARRIOR_FOREGROUND=6
# Taskwarrior segment format. The following parameters are available within the expansion.
#
@@ -871,8 +870,8 @@
######[ per_directory_history: Oh My Zsh per-directory-history local/global indicator ]#######
# Color when using local/global history.
- typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_FOREGROUND=135
- typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_FOREGROUND=130
+ typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_FOREGROUND=5
+ typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_FOREGROUND=3
# Tip: Uncomment the next two lines to hide "local"/"global" text and leave just the icon.
# typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_CONTENT_EXPANSION=''
@@ -884,7 +883,7 @@
################################[ cpu_arch: CPU architecture ]################################
# CPU architecture color.
- typeset -g POWERLEVEL9K_CPU_ARCH_FOREGROUND=172
+ typeset -g POWERLEVEL9K_CPU_ARCH_FOREGROUND=3
# Hide the segment when on a specific CPU architecture.
# typeset -g POWERLEVEL9K_CPU_ARCH_X86_64_CONTENT_EXPANSION=
@@ -895,11 +894,11 @@
##################################[ context: user@hostname ]##################################
# Context color when running with privileges.
- typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=178
+ typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=1
# Context color in SSH without privileges.
- typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=180
+ typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=7
# Default context color (no privileges, no SSH).
- typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=180
+ typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=7
# Context format when running with privileges: bold user@hostname.
typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE='%B%n@%m'
@@ -919,7 +918,7 @@
###[ virtualenv: python virtual environment (https://docs.python.org/3/library/venv.html) ]###
# Python virtual environment color.
- typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=37
+ typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=6
# Don't show Python version next to the virtual environment name.
typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false
# If set to "false", won't show virtualenv if pyenv is already shown.
@@ -932,7 +931,7 @@
#####################[ anaconda: conda environment (https://conda.io/) ]######################
# Anaconda environment color.
- typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=37
+ typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=6
# Anaconda segment format. The following parameters are available within the expansion.
#
@@ -965,7 +964,7 @@
################[ pyenv: python environment (https://github.com/pyenv/pyenv) ]################
# Pyenv color.
- typeset -g POWERLEVEL9K_PYENV_FOREGROUND=37
+ typeset -g POWERLEVEL9K_PYENV_FOREGROUND=6
# Hide python version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_PYENV_SOURCES=(shell local global)
# If set to false, hide python version if it's the same as global:
@@ -991,7 +990,7 @@
################[ goenv: go environment (https://github.com/syndbg/goenv) ]################
# Goenv color.
- typeset -g POWERLEVEL9K_GOENV_FOREGROUND=37
+ typeset -g POWERLEVEL9K_GOENV_FOREGROUND=6
# Hide go version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_GOENV_SOURCES=(shell local global)
# If set to false, hide go version if it's the same as global:
@@ -1004,7 +1003,7 @@
##########[ nodenv: node.js version from nodenv (https://github.com/nodenv/nodenv) ]##########
# Nodenv color.
- typeset -g POWERLEVEL9K_NODENV_FOREGROUND=70
+ typeset -g POWERLEVEL9K_NODENV_FOREGROUND=2
# Hide node version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_NODENV_SOURCES=(shell local global)
# If set to false, hide node version if it's the same as global:
@@ -1017,7 +1016,7 @@
##############[ nvm: node.js version from nvm (https://github.com/nvm-sh/nvm) ]###############
# Nvm color.
- typeset -g POWERLEVEL9K_NVM_FOREGROUND=70
+ typeset -g POWERLEVEL9K_NVM_FOREGROUND=2
# If set to false, hide node version if it's the same as default:
# $(nvm version current) == $(nvm version default).
typeset -g POWERLEVEL9K_NVM_PROMPT_ALWAYS_SHOW=false
@@ -1028,7 +1027,7 @@
############[ nodeenv: node.js environment (https://github.com/ekalinin/nodeenv) ]############
# Nodeenv color.
- typeset -g POWERLEVEL9K_NODEENV_FOREGROUND=70
+ typeset -g POWERLEVEL9K_NODEENV_FOREGROUND=2
# Don't show Node version next to the environment name.
typeset -g POWERLEVEL9K_NODEENV_SHOW_NODE_VERSION=false
# Separate environment name from Node version only with a space.
@@ -1038,7 +1037,7 @@
##############################[ node_version: node.js version ]###############################
# Node version color.
- typeset -g POWERLEVEL9K_NODE_VERSION_FOREGROUND=70
+ typeset -g POWERLEVEL9K_NODE_VERSION_FOREGROUND=2
# Show node version only when in a directory tree containing package.json.
typeset -g POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY=true
# Custom icon.
@@ -1046,7 +1045,7 @@
#######################[ go_version: go version (https://golang.org) ]########################
# Go version color.
- typeset -g POWERLEVEL9K_GO_VERSION_FOREGROUND=37
+ typeset -g POWERLEVEL9K_GO_VERSION_FOREGROUND=6
# Show go version only when in a go project subdirectory.
typeset -g POWERLEVEL9K_GO_VERSION_PROJECT_ONLY=true
# Custom icon.
@@ -1054,7 +1053,7 @@
#################[ rust_version: rustc version (https://www.rust-lang.org) ]##################
# Rust version color.
- typeset -g POWERLEVEL9K_RUST_VERSION_FOREGROUND=37
+ typeset -g POWERLEVEL9K_RUST_VERSION_FOREGROUND=4
# Show rust version only when in a rust project subdirectory.
typeset -g POWERLEVEL9K_RUST_VERSION_PROJECT_ONLY=true
# Custom icon.
@@ -1062,7 +1061,7 @@
###############[ dotnet_version: .NET version (https://dotnet.microsoft.com) ]################
# .NET version color.
- typeset -g POWERLEVEL9K_DOTNET_VERSION_FOREGROUND=134
+ typeset -g POWERLEVEL9K_DOTNET_VERSION_FOREGROUND=5
# Show .NET version only when in a .NET project subdirectory.
typeset -g POWERLEVEL9K_DOTNET_VERSION_PROJECT_ONLY=true
# Custom icon.
@@ -1070,7 +1069,7 @@
#####################[ php_version: php version (https://www.php.net/) ]######################
# PHP version color.
- typeset -g POWERLEVEL9K_PHP_VERSION_FOREGROUND=99
+ typeset -g POWERLEVEL9K_PHP_VERSION_FOREGROUND=5
# Show PHP version only when in a PHP project subdirectory.
typeset -g POWERLEVEL9K_PHP_VERSION_PROJECT_ONLY=true
# Custom icon.
@@ -1078,13 +1077,13 @@
##########[ laravel_version: laravel php framework version (https://laravel.com/) ]###########
# Laravel version color.
- typeset -g POWERLEVEL9K_LARAVEL_VERSION_FOREGROUND=161
+ typeset -g POWERLEVEL9K_LARAVEL_VERSION_FOREGROUND=1
# Custom icon.
# typeset -g POWERLEVEL9K_LARAVEL_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐'
####################[ java_version: java version (https://www.java.com/) ]####################
# Java version color.
- typeset -g POWERLEVEL9K_JAVA_VERSION_FOREGROUND=32
+ typeset -g POWERLEVEL9K_JAVA_VERSION_FOREGROUND=4
# Show java version only when in a java project subdirectory.
typeset -g POWERLEVEL9K_JAVA_VERSION_PROJECT_ONLY=true
# Show brief version.
@@ -1094,7 +1093,7 @@
###[ package: name@version from package.json (https://docs.npmjs.com/files/package.json) ]####
# Package color.
- typeset -g POWERLEVEL9K_PACKAGE_FOREGROUND=117
+ typeset -g POWERLEVEL9K_PACKAGE_FOREGROUND=6
# Package format. The following parameters are available within the expansion.
#
# - P9K_PACKAGE_NAME The value of `name` field in package.json.
@@ -1106,7 +1105,7 @@
#############[ rbenv: ruby version from rbenv (https://github.com/rbenv/rbenv) ]##############
# Rbenv color.
- typeset -g POWERLEVEL9K_RBENV_FOREGROUND=168
+ typeset -g POWERLEVEL9K_RBENV_FOREGROUND=1
# Hide ruby version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_RBENV_SOURCES=(shell local global)
# If set to false, hide ruby version if it's the same as global:
@@ -1119,7 +1118,7 @@
#######################[ rvm: ruby version from rvm (https://rvm.io) ]########################
# Rvm color.
- typeset -g POWERLEVEL9K_RVM_FOREGROUND=168
+ typeset -g POWERLEVEL9K_RVM_FOREGROUND=1
# Don't show @gemset at the end.
typeset -g POWERLEVEL9K_RVM_SHOW_GEMSET=false
# Don't show ruby- at the front.
@@ -1129,13 +1128,13 @@
###########[ fvm: flutter version management (https://github.com/leoafarias/fvm) ]############
# Fvm color.
- typeset -g POWERLEVEL9K_FVM_FOREGROUND=38
+ typeset -g POWERLEVEL9K_FVM_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_FVM_VISUAL_IDENTIFIER_EXPANSION='⭐'
##########[ luaenv: lua version from luaenv (https://github.com/cehoffman/luaenv) ]###########
# Lua color.
- typeset -g POWERLEVEL9K_LUAENV_FOREGROUND=32
+ typeset -g POWERLEVEL9K_LUAENV_FOREGROUND=4
# Hide lua version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_LUAENV_SOURCES=(shell local global)
# If set to false, hide lua version if it's the same as global:
@@ -1148,7 +1147,7 @@
###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################
# Java color.
- typeset -g POWERLEVEL9K_JENV_FOREGROUND=32
+ typeset -g POWERLEVEL9K_JENV_FOREGROUND=4
# Hide java version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global)
# If set to false, hide java version if it's the same as global:
@@ -1161,7 +1160,7 @@
###########[ plenv: perl version from plenv (https://github.com/tokuhirom/plenv) ]############
# Perl color.
- typeset -g POWERLEVEL9K_PLENV_FOREGROUND=67
+ typeset -g POWERLEVEL9K_PLENV_FOREGROUND=6
# Hide perl version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_PLENV_SOURCES=(shell local global)
# If set to false, hide perl version if it's the same as global:
@@ -1184,7 +1183,7 @@
############[ phpenv: php version from phpenv (https://github.com/phpenv/phpenv) ]############
# PHP color.
- typeset -g POWERLEVEL9K_PHPENV_FOREGROUND=99
+ typeset -g POWERLEVEL9K_PHPENV_FOREGROUND=5
# Hide php version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_PHPENV_SOURCES=(shell local global)
# If set to false, hide php version if it's the same as global:
@@ -1197,7 +1196,7 @@
#######[ scalaenv: scala version from scalaenv (https://github.com/scalaenv/scalaenv) ]#######
# Scala color.
- typeset -g POWERLEVEL9K_SCALAENV_FOREGROUND=160
+ typeset -g POWERLEVEL9K_SCALAENV_FOREGROUND=1
# Hide scala version if it doesn't come from one of these sources.
typeset -g POWERLEVEL9K_SCALAENV_SOURCES=(shell local global)
# If set to false, hide scala version if it's the same as global:
@@ -1210,7 +1209,7 @@
##########[ haskell_stack: haskell version from stack (https://haskellstack.org/) ]###########
# Haskell color.
- typeset -g POWERLEVEL9K_HASKELL_STACK_FOREGROUND=172
+ typeset -g POWERLEVEL9K_HASKELL_STACK_FOREGROUND=3
# Hide haskell version if it doesn't come from one of these sources.
#
# shell: version is set by STACK_YAML
@@ -1250,15 +1249,15 @@
#
# You can define different colors, icons and content expansions for different classes:
#
- # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_FOREGROUND=28
+ # typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_FOREGROUND=3
# typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=(
# '*prod*' PROD # These values are examples that are unlikely
# '*test*' TEST # to match your needs. Customize them as needed.
'*' DEFAULT)
- typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_FOREGROUND=134
- typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='○'
+ typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_FOREGROUND=5
+ # typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐'
# Use POWERLEVEL9K_KUBECONTEXT_CONTENT_EXPANSION to specify the content displayed by kubecontext
# segment. Parameter expansions are very flexible and fast, too. See reference:
@@ -1332,19 +1331,19 @@
#
# You can define different colors, icons and content expansions for different classes:
#
- # typeset -g POWERLEVEL9K_TERRAFORM_TEST_FOREGROUND=28
+ # typeset -g POWERLEVEL9K_TERRAFORM_TEST_FOREGROUND=2
# typeset -g POWERLEVEL9K_TERRAFORM_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_TERRAFORM_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
typeset -g POWERLEVEL9K_TERRAFORM_CLASSES=(
# '*prod*' PROD # These values are examples that are unlikely
# '*test*' TEST # to match your needs. Customize them as needed.
'*' OTHER)
- typeset -g POWERLEVEL9K_TERRAFORM_OTHER_FOREGROUND=38
+ typeset -g POWERLEVEL9K_TERRAFORM_OTHER_FOREGROUND=4
# typeset -g POWERLEVEL9K_TERRAFORM_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐'
#############[ terraform_version: terraform version (https://www.terraform.io) ]##############
# Terraform version color.
- typeset -g POWERLEVEL9K_TERRAFORM_VERSION_FOREGROUND=38
+ typeset -g POWERLEVEL9K_TERRAFORM_VERSION_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_TERRAFORM_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐'
@@ -1373,14 +1372,14 @@
#
# You can define different colors, icons and content expansions for different classes:
#
- # typeset -g POWERLEVEL9K_AWS_TEST_FOREGROUND=28
+ # typeset -g POWERLEVEL9K_AWS_TEST_FOREGROUND=2
# typeset -g POWERLEVEL9K_AWS_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_AWS_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
typeset -g POWERLEVEL9K_AWS_CLASSES=(
# '*prod*' PROD # These values are examples that are unlikely
# '*test*' TEST # to match your needs. Customize them as needed.
'*' DEFAULT)
- typeset -g POWERLEVEL9K_AWS_DEFAULT_FOREGROUND=208
+ typeset -g POWERLEVEL9K_AWS_DEFAULT_FOREGROUND=3
# typeset -g POWERLEVEL9K_AWS_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐'
# AWS segment format. The following parameters are available within the expansion.
@@ -1391,9 +1390,9 @@
#[ aws_eb_env: aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/) ]#
# AWS Elastic Beanstalk environment color.
- typeset -g POWERLEVEL9K_AWS_EB_ENV_FOREGROUND=70
+ typeset -g POWERLEVEL9K_AWS_EB_ENV_FOREGROUND=2
# Custom icon.
- typeset -g POWERLEVEL9K_AWS_EB_ENV_VISUAL_IDENTIFIER_EXPANSION='eb'
+ # typeset -g POWERLEVEL9K_AWS_EB_ENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
##########[ azure: azure account name (https://docs.microsoft.com/en-us/cli/azure) ]##########
# Show azure only when the command you are typing invokes one of these tools.
@@ -1420,7 +1419,7 @@
#
# You can define different colors, icons and content expansions for different classes:
#
- # typeset -g POWERLEVEL9K_AZURE_TEST_FOREGROUND=28
+ # typeset -g POWERLEVEL9K_AZURE_TEST_FOREGROUND=2
# typeset -g POWERLEVEL9K_AZURE_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_AZURE_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
typeset -g POWERLEVEL9K_AZURE_CLASSES=(
@@ -1429,7 +1428,7 @@
'*' OTHER)
# Azure account name color.
- typeset -g POWERLEVEL9K_AZURE_OTHER_FOREGROUND=32
+ typeset -g POWERLEVEL9K_AZURE_OTHER_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_AZURE_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐'
@@ -1437,8 +1436,8 @@
# Show gcloud only when the command you are typing invokes one of these tools.
# Tip: Remove the next line to always show gcloud.
typeset -g POWERLEVEL9K_GCLOUD_SHOW_ON_COMMAND='gcloud|gcs|gsutil'
- # Google cloud color.
- typeset -g POWERLEVEL9K_GCLOUD_FOREGROUND=32
+ # Google cloud color.
+ typeset -g POWERLEVEL9K_GCLOUD_FOREGROUND=4
# Google cloud format. Change the value of POWERLEVEL9K_GCLOUD_PARTIAL_CONTENT_EXPANSION and/or
# POWERLEVEL9K_GCLOUD_COMPLETE_CONTENT_EXPANSION if the default is too verbose or not informative
@@ -1502,14 +1501,14 @@
#
# You can define different colors, icons and content expansions for different classes:
#
- # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_FOREGROUND=28
+ # typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_FOREGROUND=3
# typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_TEST_CONTENT_EXPANSION='$P9K_GOOGLE_APP_CRED_PROJECT_ID'
typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_CLASSES=(
# '*:*prod*:*' PROD # These values are examples that are unlikely
# '*:*test*:*' TEST # to match your needs. Customize them as needed.
'*' DEFAULT)
- typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_FOREGROUND=32
+ typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_FOREGROUND=5
# typeset -g POWERLEVEL9K_GOOGLE_APP_CRED_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐'
# Use POWERLEVEL9K_GOOGLE_APP_CRED_CONTENT_EXPANSION to specify the content displayed by
@@ -1530,7 +1529,7 @@
##############[ toolbox: toolbox name (https://github.com/containers/toolbox) ]###############
# Toolbox color.
- typeset -g POWERLEVEL9K_TOOLBOX_FOREGROUND=178
+ typeset -g POWERLEVEL9K_TOOLBOX_FOREGROUND=3
# Don't display the name of the toolbox if it matches fedora-toolbox-*.
typeset -g POWERLEVEL9K_TOOLBOX_CONTENT_EXPANSION='${P9K_TOOLBOX_NAME:#fedora-toolbox-*}'
# Custom icon.
@@ -1540,13 +1539,13 @@
###############################[ public_ip: public IP address ]###############################
# Public IP color.
- typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=94
+ typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=6
# Custom icon.
# typeset -g POWERLEVEL9K_PUBLIC_IP_VISUAL_IDENTIFIER_EXPANSION='⭐'
########################[ vpn_ip: virtual private network indicator ]#########################
# VPN IP color.
- typeset -g POWERLEVEL9K_VPN_IP_FOREGROUND=81
+ typeset -g POWERLEVEL9K_VPN_IP_FOREGROUND=3
# When on VPN, show just an icon without the IP address.
# Tip: To display the private IP address when on VPN, remove the next line.
typeset -g POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION=
@@ -1562,7 +1561,7 @@
###########[ ip: ip address and bandwidth usage for a specified network interface ]###########
# IP color.
- typeset -g POWERLEVEL9K_IP_FOREGROUND=38
+ typeset -g POWERLEVEL9K_IP_FOREGROUND=4
# The following parameters are accessible within the expansion:
#
# Parameter | Meaning
@@ -1575,7 +1574,7 @@
# P9K_IP_TX_BYTES_DELTA | number of bytes sent since last prompt
# P9K_IP_RX_RATE | receive rate (since last prompt)
# P9K_IP_TX_RATE | send rate (since last prompt)
- typeset -g POWERLEVEL9K_IP_CONTENT_EXPANSION='$P9K_IP_IP${P9K_IP_RX_RATE:+ %70F⇣$P9K_IP_RX_RATE}${P9K_IP_TX_RATE:+ %215F⇡$P9K_IP_TX_RATE}'
+ typeset -g POWERLEVEL9K_IP_CONTENT_EXPANSION='$P9K_IP_IP${P9K_IP_RX_RATE:+ %2F<$P9K_IP_RX_RATE}${P9K_IP_TX_RATE:+ %3F>$P9K_IP_TX_RATE}'
# Show information for the first network interface whose name matches this regular expression.
# Run `ifconfig` or `ip -4 a show` to see the names of all network interfaces.
typeset -g POWERLEVEL9K_IP_INTERFACE='[ew].*'
@@ -1584,33 +1583,33 @@
#########################[ proxy: system-wide http/https/ftp proxy ]##########################
# Proxy color.
- typeset -g POWERLEVEL9K_PROXY_FOREGROUND=68
+ typeset -g POWERLEVEL9K_PROXY_FOREGROUND=2
# Custom icon.
# typeset -g POWERLEVEL9K_PROXY_VISUAL_IDENTIFIER_EXPANSION='⭐'
################################[ battery: internal battery ]#################################
# Show battery in red when it's below this level and not connected to power supply.
typeset -g POWERLEVEL9K_BATTERY_LOW_THRESHOLD=20
- typeset -g POWERLEVEL9K_BATTERY_LOW_FOREGROUND=160
+ typeset -g POWERLEVEL9K_BATTERY_LOW_FOREGROUND=1
# Show battery in green when it's charging or fully charged.
- typeset -g POWERLEVEL9K_BATTERY_{CHARGING,CHARGED}_FOREGROUND=70
+ typeset -g POWERLEVEL9K_BATTERY_{CHARGING,CHARGED}_FOREGROUND=2
# Show battery in yellow when it's discharging.
- typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=178
+ typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=3
# Battery pictograms going from low to high level of charge.
- typeset -g POWERLEVEL9K_BATTERY_STAGES=('%K{232}▁' '%K{232}▂' '%K{232}▃' '%K{232}▄' '%K{232}▅' '%K{232}▆' '%K{232}▇' '%K{232}█')
+ typeset -g POWERLEVEL9K_BATTERY_STAGES=('battery')
# Don't show the remaining time to charge/discharge.
typeset -g POWERLEVEL9K_BATTERY_VERBOSE=false
#####################################[ wifi: wifi speed ]#####################################
# WiFi color.
- typeset -g POWERLEVEL9K_WIFI_FOREGROUND=68
+ typeset -g POWERLEVEL9K_WIFI_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_WIFI_VISUAL_IDENTIFIER_EXPANSION='⭐'
# Use different colors and icons depending on signal strength ($P9K_WIFI_BARS).
#
# # Wifi colors and icons for different signal strength levels (low to high).
- # typeset -g my_wifi_fg=(68 68 68 68 68) # <-- change these values
+ # typeset -g my_wifi_fg=(4 4 4 4 4) # <-- change these values
# typeset -g my_wifi_icon=('WiFi' 'WiFi' 'WiFi' 'WiFi' 'WiFi') # <-- change these values
#
# typeset -g POWERLEVEL9K_WIFI_CONTENT_EXPANSION='%F{${my_wifi_fg[P9K_WIFI_BARS+1]}}$P9K_WIFI_LAST_TX_RATE Mbps'
@@ -1629,7 +1628,7 @@
####################################[ time: current time ]####################################
# Current time color.
- typeset -g POWERLEVEL9K_TIME_FOREGROUND=66
+ typeset -g POWERLEVEL9K_TIME_FOREGROUND=6
# Format for the current time: 09:51:02. See `man 3 strftime`.
typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M:%S}'
# If set to true, time will update when you hit enter. This way prompts for the past
@@ -1643,11 +1642,11 @@
# Example of a user-defined prompt segment. Function prompt_example will be called on every
# prompt if `example` prompt segment is added to POWERLEVEL9K_LEFT_PROMPT_ELEMENTS or
- # POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS. It displays an icon and orange text greeting the user.
+ # POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS. It displays an icon and green text greeting the user.
#
# Type `p10k help segment` for documentation and a more sophisticated example.
function prompt_example() {
- p10k segment -f 208 -i '⭐' -t 'hello, %n'
+ p10k segment -f 2 -i '*' -t 'hello, %n'
}
# User-defined prompt segments may optionally provide an instant_prompt_* function. Its job
diff --git a/zsh/zshrc b/zsh/zshrc
index 9f50418..8e68416 100644
--- a/zsh/zshrc
+++ b/zsh/zshrc
@@ -1,13 +1,13 @@
source ~/.config/zsh/antigen.zsh
if command -v git >/dev/null && [ ! -d ~/.config/zsh/powerlevel10k ]; then
- echo "info: installing p10k"
- git clone --depth 1 --single-branch https://github.com/romkatv/powerlevel10k.git ~/.config/zsh/powerlevel10k
+ echo "info: installing p10k"
+ git clone --depth 1 --single-branch https://github.com/romkatv/powerlevel10k.git ~/.config/zsh/powerlevel10k
fi
source ~/.config/zsh/powerlevel10k/powerlevel10k.zsh-theme
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
- source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
+ source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
source ~/.config/zsh/powerlevel10k/powerlevel10k.zsh-theme
@@ -23,16 +23,18 @@ antigen apply
# Exports
-# export GOROOT=$HOME/work/go
-export GOPATH=$HOME/go
-export GOPROXY=https://proxy.neonxp.ru
+#export GOPROXY=https://proxy.neonxp.ru
export EDITOR="nvim"
#export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock
-export PATH=$PATH:$GOPATH/bin
+export PATH=$PATH:~/.local/bin:~/go/bin
+export GOBIN=~/go/bin
export GPG_TTY=$(tty)
export LS_OPTIONS='--color=auto'
eval "$(dircolors -b)"
+fpath+="~/.config/zsh/comp"
+
+
# Aliases
alias ls='ls $LS_OPTIONS -F'
alias l='ls $LS_OPTIONS -F'
@@ -40,19 +42,19 @@ alias j="sudo journalctl"
alias s='sudo'
alias sctl="sudo systemctl"
alias ll="ls -AFhl"
-alias cp="cp -i" # Confirm before overwriting something
+alias cp="cp -i" # Confirm before overwriting something
alias gitpush="git add . && git commit --amend --no-edit && git push -f"
alias k="kubectl"
alias yu="ssh-add -e /usr/lib/x86_64-linux-gnu/libykcs11.so; ssh-add -s /usr/lib/x86_64-linux-gnu/libykcs11.so"
alias m="micro"
alias n="nvim"
-alias cp="cp -i" # confirm before overwriting something
-alias df="df -h" # human-readable sizes
-alias free="free -m" # show sizes in MB
+alias cp="cp -i" # confirm before overwriting something
+alias df="df -h" # human-readable sizes
+alias free="free -m" # show sizes in MB
alias np="nano -w PKGBUILD"
alias gitu='git add . && git commit && git push'
alias g=git
-
+alias nsh='wl-paste | curl -d @- https://nixshare.ru/upload 2>/dev/null | wl-copy'
[[ ! -f `which exa` ]] || alias ls="exa" && alias ll="exa -l"
@@ -60,27 +62,27 @@ alias g=git
function tk() { mkdir -p $1; cd $1; }
function alert() {
- notify-send --expire-time=30000 $1 $2 && nohup play ~/.local/share/alarm.wav &
+ notify-send --expire-time=30000 $1 $2 && nohup play ~/.local/share/alarm.wav &
}
## Options section
-setopt correct # Auto correct mistakes
-setopt extendedglob # Extended globbing. Allows using regular expressions with *
-setopt nocaseglob # Case insensitive globbing
-setopt rcexpandparam # Array expension with parameters
-setopt nocheckjobs # Don"t warn about running processes when exiting
-setopt numericglobsort # Sort filenames numerically when it makes sense
-setopt nobeep # No beep
-setopt appendhistory # Immediately append history instead of overwriting
-setopt histignorealldups # If a new command is a duplicate, remove the older one
-setopt autocd # if only directory path is entered, cd there.
-setopt inc_append_history # save commands are added to the history immediately, otherwise only when shell exits.
-setopt histignorespace # Don"t save commands that start with space
+setopt correct # Auto correct mistakes
+setopt extendedglob # Extended globbing. Allows using regular expressions with *
+setopt nocaseglob # Case insensitive globbing
+setopt rcexpandparam # Array expension with parameters
+setopt nocheckjobs # Don"t warn about running processes when exiting
+setopt numericglobsort # Sort filenames numerically when it makes sense
+setopt nobeep # No beep
+setopt appendhistory # Immediately append history instead of overwriting
+setopt histignorealldups # If a new command is a duplicate, remove the older one
+setopt autocd # if only directory path is entered, cd there.
+setopt inc_append_history # save commands are added to the history immediately, otherwise only when shell exits.
+setopt histignorespace # Don"t save commands that start with space
zstyle ':completion:*' matcher-list 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' # Case insensitive tab completion
-zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
-zstyle ':completion:*' rehash true # automatically find new executables in path
-zstyle ':completion:*' menu select # Highlight menu selection
+zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
+zstyle ':completion:*' rehash true # automatically find new executables in path
+zstyle ':completion:*' menu select # Highlight menu selection
# Speed up completions
zstyle ':completion:*' accept-exact '*(N)'
zstyle ':completion:*' use-cache on
@@ -89,11 +91,11 @@ zstyle ':completion:*' cache-path ~/.zsh/cache
zstyle ":completion:*:processes" command "ps -ax"
zstyle ":completion:*:*:kill:*:processes" list-colors "=(#b) #([0-9]#)*=0=01;32"
zstyle ":completion:*:*:kill:*" menu yes select
-zstyle ":completion:*:kill:*" force-list always
+zstyle ":completion:*:kill:*" force-list always
zstyle ":completion:*:processes-names" command "ps -e -o comm="
zstyle ":completion:*:*:killall:*" menu yes select
-zstyle ":completion:*:killall:*" force-list always
+zstyle ":completion:*:killall:*" force-list always
HISTFILE=~/.zsh_history
HISTSIZE=100000
@@ -131,56 +133,56 @@ bindkey "^[[A" history-substring-search-up
bindkey "^[[B" history-substring-search-down
bindkey -e
-bindkey "^[[7~" beginning-of-line # Home key
-bindkey "^[[H" beginning-of-line # Home key
+bindkey "^[[7~" beginning-of-line # Home key
+bindkey "^[[H" beginning-of-line # Home key
if [[ "${terminfo[khome]}" != "" ]]; then
- bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line
+ bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line
fi
-bindkey "^[[8~" end-of-line # End key
-bindkey "^[[F" end-of-line # End key
+bindkey "^[[8~" end-of-line # End key
+bindkey "^[[F" end-of-line # End key
if [[ "${terminfo[kend]}" != "" ]]; then
- bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line
+ bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line
fi
-bindkey "^[[2~" overwrite-mode # Insert key
-bindkey "^[[3~" delete-char # Delete key
-bindkey "^[[C" forward-char # Right key
-bindkey "^[[D" backward-char # Left key
-bindkey "^[[5~" history-beginning-search-backward # Page up key
-bindkey "^[[6~" history-beginning-search-forward # Page down key
+bindkey "^[[2~" overwrite-mode # Insert key
+bindkey "^[[3~" delete-char # Delete key
+bindkey "^[[C" forward-char # Right key
+bindkey "^[[D" backward-char # Left key
+bindkey "^[[5~" history-beginning-search-backward # Page up key
+bindkey "^[[6~" history-beginning-search-forward # Page down key
# Navigate words with ctrl+arrow keys
-bindkey "^[Oc" forward-word #
-bindkey "^[Od" backward-word #
-bindkey "^[[1;5D" backward-word #
-bindkey "^[[1;5C" forward-word #
-bindkey "^H" backward-kill-word # delete previous word with ctrl+backspace
-bindkey "^[[Z" undo # Shift+tab undo last action
+bindkey "^[Oc" forward-word #
+bindkey "^[Od" backward-word #
+bindkey "^[[1;5D" backward-word #
+bindkey "^[[1;5C" forward-word #
+bindkey "^H" backward-kill-word # delete previous word with ctrl+backspace
+bindkey "^[[Z" undo # Shift+tab undo last action
# ctrl + space accept suggestion
bindkey "^ " autosuggest-accept
dotenv() {
- if [ $# -eq 0 ]; then
- [ -f .env.gpg ] && set -- .env.gpg "$@"
- [ -f .env ] && set -- .env "$@"
- fi
-
- set -a
- while [ $# -gt 0 ]; do
- echo "dotenv: Loading $1"
- case "$1" in
- *.gpg)
- eval "$(gpg --quiet --decrypt --yes "$1")"
- ;;
- */*)
- . "$1"
- ;;
- *)
- . "./$1"
- esac
- shift
- done
- set +a
+ if [ $# -eq 0 ]; then
+ [ -f .env.gpg ] && set -- .env.gpg "$@"
+ [ -f .env ] && set -- .env "$@"
+ fi
+
+ set -a
+ while [ $# -gt 0 ]; do
+ echo "dotenv: Loading $1"
+ case "$1" in
+ *.gpg)
+ eval "$(gpg --quiet --decrypt --yes "$1")"
+ ;;
+ */*)
+ . "$1"
+ ;;
+ *)
+ . "./$1"
+ esac
+ shift
+ done
+ set +a
}
# Set terminal window and tab/icon title
@@ -191,33 +193,33 @@ dotenv() {
# Fully supports screen and probably most modern xterm and rxvt
# (In screen, only short_tab_title is used)
function title {
- emulate -L zsh
- setopt prompt_subst
-
- [[ "$EMACS" == *term* ]] && return
-
- # if $2 is unset use $1 as default
- # if it is set and empty, leave it as is
- : ${2=$1}
-
- case "$TERM" in
- xterm*|putty*|rxvt*|konsole*|ansi|mlterm*|alacritty|kitty|wezterm|st*)
- print -Pn "\e]2;${2:q}\a" # set window name
- print -Pn "\e]1;${1:q}\a" # set tab name
- ;;
- screen*|tmux*)
- print -Pn "\ek${1:q}\e\\" # set screen hardstatus
- ;;
- *)
- # Try to use terminfo to set the title
- # If the feature is available set title
- if [[ -n "$terminfo[fsl]" ]] && [[ -n "$terminfo[tsl]" ]]; then
- echoti tsl
- print -Pn "$1"
- echoti fsl
- fi
- ;;
- esac
+ emulate -L zsh
+ setopt prompt_subst
+
+ [[ "$EMACS" == *term* ]] && return
+
+ # if $2 is unset use $1 as default
+ # if it is set and empty, leave it as is
+ : ${2=$1}
+
+ case "$TERM" in
+ xterm*|putty*|rxvt*|konsole*|ansi|mlterm*|alacritty|kitty|wezterm|st*)
+ print -Pn "\e]2;${2:q}\a" # set window name
+ print -Pn "\e]1;${1:q}\a" # set tab name
+ ;;
+ screen*|tmux*)
+ print -Pn "\ek${1:q}\e\\" # set screen hardstatus
+ ;;
+ *)
+ # Try to use terminfo to set the title
+ # If the feature is available set title
+ if [[ -n "$terminfo[fsl]" ]] && [[ -n "$terminfo[tsl]" ]]; then
+ echoti tsl
+ print -Pn "$1"
+ echoti fsl
+ fi
+ ;;
+ esac
}
ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<" #15 char left truncated PWD
@@ -225,58 +227,58 @@ ZSH_THEME_TERM_TITLE_IDLE="%n@%m:%~"
# Runs before showing the prompt
function mzc_termsupport_precmd {
- [[ "${DISABLE_AUTO_TITLE:-}" == true ]] && return
- title $ZSH_THEME_TERM_TAB_TITLE_IDLE $ZSH_THEME_TERM_TITLE_IDLE
+ [[ "${DISABLE_AUTO_TITLE:-}" == true ]] && return
+ title $ZSH_THEME_TERM_TAB_TITLE_IDLE $ZSH_THEME_TERM_TITLE_IDLE
}
# Runs before executing the command
function mzc_termsupport_preexec {
- [[ "${DISABLE_AUTO_TITLE:-}" == true ]] && return
-
- emulate -L zsh
-
- # split command into array of arguments
- local -a cmdargs
- cmdargs=("${(z)2}")
- # if running fg, extract the command from the job description
- if [[ "${cmdargs[1]}" = fg ]]; then
- # get the job id from the first argument passed to the fg command
- local job_id jobspec="${cmdargs[2]#%}"
- # logic based on jobs arguments:
- # http://zsh.sourceforge.net/Doc/Release/Jobs-_0026-Signals.html#Jobs
- # https://www.zsh.org/mla/users/2007/msg00704.html
- case "$jobspec" in
- <->) # %number argument:
- # use the same <number> passed as an argument
- job_id=${jobspec} ;;
- ""|%|+) # empty, %% or %+ argument:
- # use the current job, which appears with a + in $jobstates:
- # suspended:+:5071=suspended (tty output)
- job_id=${(k)jobstates[(r)*:+:*]} ;;
- -) # %- argument:
- # use the previous job, which appears with a - in $jobstates:
- # suspended:-:6493=suspended (signal)
- job_id=${(k)jobstates[(r)*:-:*]} ;;
- [?]*) # %?string argument:
- # use $jobtexts to match for a job whose command *contains* <string>
- job_id=${(k)jobtexts[(r)*${(Q)jobspec}*]} ;;
- *) # %string argument:
- # use $jobtexts to match for a job whose command *starts with* <string>
- job_id=${(k)jobtexts[(r)${(Q)jobspec}*]} ;;
- esac
-
- # override preexec function arguments with job command
- if [[ -n "${jobtexts[$job_id]}" ]]; then
- 1="${jobtexts[$job_id]}"
- 2="${jobtexts[$job_id]}"
- fi
- fi
-
- # cmd name only, or if this is sudo or ssh, the next cmd
- local CMD=${1[(wr)^(*=*|sudo|ssh|mosh|rake|-*)]:gs/%/%%}
- local LINE="${2:gs/%/%%}"
-
- title '$CMD' '%100>...>$LINE%<<'
+ [[ "${DISABLE_AUTO_TITLE:-}" == true ]] && return
+
+ emulate -L zsh
+
+ # split command into array of arguments
+ local -a cmdargs
+ cmdargs=("${(z)2}")
+ # if running fg, extract the command from the job description
+ if [[ "${cmdargs[1]}" = fg ]]; then
+ # get the job id from the first argument passed to the fg command
+ local job_id jobspec="${cmdargs[2]#%}"
+ # logic based on jobs arguments:
+ # http://zsh.sourceforge.net/Doc/Release/Jobs-_0026-Signals.html#Jobs
+ # https://www.zsh.org/mla/users/2007/msg00704.html
+ case "$jobspec" in
+ <->) # %number argument:
+ # use the same <number> passed as an argument
+ job_id=${jobspec} ;;
+ ""|%|+) # empty, %% or %+ argument:
+ # use the current job, which appears with a + in $jobstates:
+ # suspended:+:5071=suspended (tty output)
+ job_id=${(k)jobstates[(r)*:+:*]} ;;
+ -) # %- argument:
+ # use the previous job, which appears with a - in $jobstates:
+ # suspended:-:6493=suspended (signal)
+ job_id=${(k)jobstates[(r)*:-:*]} ;;
+ [?]*) # %?string argument:
+ # use $jobtexts to match for a job whose command *contains* <string>
+ job_id=${(k)jobtexts[(r)*${(Q)jobspec}*]} ;;
+ *) # %string argument:
+ # use $jobtexts to match for a job whose command *starts with* <string>
+ job_id=${(k)jobtexts[(r)${(Q)jobspec}*]} ;;
+ esac
+
+ # override preexec function arguments with job command
+ if [[ -n "${jobtexts[$job_id]}" ]]; then
+ 1="${jobtexts[$job_id]}"
+ 2="${jobtexts[$job_id]}"
+ fi
+ fi
+
+ # cmd name only, or if this is sudo or ssh, the next cmd
+ local CMD=${1[(wr)^(*=*|sudo|ssh|mosh|rake|-*)]:gs/%/%%}
+ local LINE="${2:gs/%/%%}"
+
+ title '$CMD' '%100>...>$LINE%<<'
}
# URL-encode a string
@@ -296,60 +298,60 @@ function mzc_termsupport_preexec {
# Returns nonzero if encoding failed.
#
# Usage:
-# zsh_urlencode [-r] [-m] [-P] <string> [<string> ...]
+# zsh_urlencode [-r] [-m] [-P] <string> [<string> ...]
#
-# -r causes reserved characters (;/?:@&=+$,) to be escaped
+# -r causes reserved characters (;/?:@&=+$,) to be escaped
#
-# -m causes "mark" characters (_.!~*''()-) to be escaped
+# -m causes "mark" characters (_.!~*''()-) to be escaped
#
-# -P causes spaces to be encoded as '%20' instead of '+'
+# -P causes spaces to be encoded as '%20' instead of '+'
function zsh_urlencode() {
- emulate -L zsh
- local -a opts
- zparseopts -D -E -a opts r m P
-
- local in_str="$@"
- local url_str=""
- local spaces_as_plus
- if [[ -z $opts[(r)-P] ]]; then spaces_as_plus=1; fi
- local str="$in_str"
-
- # URLs must use UTF-8 encoding; convert str to UTF-8 if required
- local encoding=$langinfo[CODESET]
-
-
- # Use LC_CTYPE=C to process text byte-by-byte
- local i byte ord LC_ALL=C
- export LC_ALL
- local reserved=';/?:@&=+$,'
- local mark='_.!~*''()-'
- local dont_escape="[A-Za-z0-9"
- if [[ -z $opts[(r)-r] ]]; then
- dont_escape+=$reserved
- fi
- # $mark must be last because of the "-"
- if [[ -z $opts[(r)-m] ]]; then
- dont_escape+=$mark
- fi
- dont_escape+="]"
-
- # Implemented to use a single printf call and avoid subshells in the loop,
- # for performance
- local url_str=""
- for (( i = 1; i <= ${#str}; ++i )); do
- byte="$str[i]"
- if [[ "$byte" =~ "$dont_escape" ]]; then
- url_str+="$byte"
- else
- if [[ "$byte" == " " && -n $spaces_as_plus ]]; then
- url_str+="+"
- else
- ord=$(( [##16] #byte ))
- url_str+="%$ord"
- fi
- fi
- done
- echo -E "$url_str"
+ emulate -L zsh
+ local -a opts
+ zparseopts -D -E -a opts r m P
+
+ local in_str="$@"
+ local url_str=""
+ local spaces_as_plus
+ if [[ -z $opts[(r)-P] ]]; then spaces_as_plus=1; fi
+ local str="$in_str"
+
+ # URLs must use UTF-8 encoding; convert str to UTF-8 if required
+ local encoding=$langinfo[CODESET]
+
+
+ # Use LC_CTYPE=C to process text byte-by-byte
+ local i byte ord LC_ALL=C
+ export LC_ALL
+ local reserved=';/?:@&=+$,'
+ local mark='_.!~*''()-'
+ local dont_escape="[A-Za-z0-9"
+ if [[ -z $opts[(r)-r] ]]; then
+ dont_escape+=$reserved
+ fi
+ # $mark must be last because of the "-"
+ if [[ -z $opts[(r)-m] ]]; then
+ dont_escape+=$mark
+ fi
+ dont_escape+="]"
+
+ # Implemented to use a single printf call and avoid subshells in the loop,
+ # for performance
+ local url_str=""
+ for (( i = 1; i <= ${#str}; ++i )); do
+ byte="$str[i]"
+ if [[ "$byte" =~ "$dont_escape" ]]; then
+ url_str+="$byte"
+ else
+ if [[ "$byte" == " " && -n $spaces_as_plus ]]; then
+ url_str+="+"
+ else
+ ord=$(( [##16] #byte ))
+ url_str+="%$ord"
+ fi
+ fi
+ done
+ echo -E "$url_str"
}
# Emits the control sequence to notify many terminal emulators
@@ -358,17 +360,17 @@ function zsh_urlencode() {
# Identifies the directory using a file: URI scheme, including
# the host name to disambiguate local vs. remote paths.
function mzc_termsupport_cwd {
- # Percent-encode the host and path names.
- local URL_HOST URL_PATH
- URL_HOST="$(zsh_urlencode -P $HOST)" || return 1
- URL_PATH="$(zsh_urlencode -P $PWD)" || return 1
+ # Percent-encode the host and path names.
+ local URL_HOST URL_PATH
+ URL_HOST="$(zsh_urlencode -P $HOST)" || return 1
+ URL_PATH="$(zsh_urlencode -P $PWD)" || return 1
- # common control sequence (OSC 7) to set current host and path
- printf "\e]7;%s\a" "file://${URL_HOST}${URL_PATH}"
+ # common control sequence (OSC 7) to set current host and path
+ printf "\e]7;%s\a" "file://${URL_HOST}${URL_PATH}"
}
if [ -f env.sh ]; then
- source ./env.sh
+ source ./env.sh
fi
[[ ! -f ~/.zshrc.local ]] || source ~/.zshrc.local