summaryrefslogtreecommitdiffstatshomepage
path: root/wsl/.config/zsh
diff options
context:
space:
mode:
authorToby Vincent <tobyv13@gmail.com>2023-02-11 16:24:14 -0600
committerToby Vincent <tobyv13@gmail.com>2023-02-11 16:24:14 -0600
commit17fa2c0a74f0129c622f38879dac9f7d2e3a4aa0 (patch)
tree90f3bd4ddadaf982b0dfb8665ae04bf6982b3c8a /wsl/.config/zsh
parent63393e63d474b9197d484edaa2d82c02aa865aa1 (diff)
feat: split `.zshrc` to individual files
split `$XDG_CONFIG_HOME/zsh/.zshrc` up into `$XDG_CONFIG_HOME/zsh/.zshrc.d/*`. This allows for better management and prioritization between different tool's env. Similar to what was done to `.profile` in e712243 (feat: split `.profile` to individual files, 2023-02-10).
Diffstat (limited to 'wsl/.config/zsh')
-rw-r--r--wsl/.config/zsh/.zshrc.d/60-wsl.zsh59
1 files changed, 59 insertions, 0 deletions
diff --git a/wsl/.config/zsh/.zshrc.d/60-wsl.zsh b/wsl/.config/zsh/.zshrc.d/60-wsl.zsh
new file mode 100644
index 0000000..22cd17d
--- /dev/null
+++ b/wsl/.config/zsh/.zshrc.d/60-wsl.zsh
@@ -0,0 +1,59 @@
+#!/bin/sh
+
+alias wsl='/mnt/c/Windows/system32/wsl.exe'
+alias powershell='/mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe'
+alias pwsh='/mnt/c/Program Files/PowerShell/7/pwsh.exe'
+alias winget='/mnt/c/Users/tobyv/AppData/Local/Microsoft/WindowsApps/winget.exe'
+alias scoop='/mnt/c/Users/tobyv/scoop/shims/scoop'
+
+zvm_vi_yank () {
+ zvm_yank
+ printf %s "${CUTBUFFER}" | win32yank.exe -i
+ zvm_exit_visual_mode
+}
+
+zvm_vi_put_after () {
+ local head= foot=
+ local content=$(win32yank.exe -o)
+ local offset=1
+ if [[ ${content: -1} == $'\n' ]]
+ then
+ local pos=${CURSOR}
+ for ((; $pos<$#BUFFER; pos++)) do
+ if [[ ${BUFFER:$pos:1} == $'\n' ]]
+ then
+ pos=$pos+1
+ break
+ fi
+ done
+ if zvm_is_empty_line
+ then
+ head=${BUFFER:0:$pos}
+ foot=${BUFFER:$pos}
+ else
+ head=${BUFFER:0:$pos}
+ foot=${BUFFER:$pos}
+ if [[ $pos == $#BUFFER ]]
+ then
+ content=$'\n'${content:0:-1}
+ pos=$pos+1
+ fi
+ fi
+ offset=0
+ BUFFER="${head}${content}${foot}"
+ CURSOR=$pos
+ else
+ if zvm_is_empty_line
+ then
+ head="${BUFFER:0:$((CURSOR-1))}"
+ foot="${BUFFER:$CURSOR}"
+ else
+ head="${BUFFER:0:$CURSOR}"
+ foot="${BUFFER:$((CURSOR+1))}"
+ fi
+ BUFFER="${head}${BUFFER:$CURSOR:1}${content}${foot}"
+ CURSOR=$CURSOR+$#content
+ fi
+ zvm_highlight clear
+ zvm_highlight custom $(($#head+$offset)) $(($#head+$#content+$offset))
+}