diff options
| author | Mike Vink <ivi@vinkies.net> | 2025-03-13 15:59:30 +0100 |
|---|---|---|
| committer | Mike Vink <ivi@vinkies.net> | 2025-03-13 15:59:30 +0100 |
| commit | 54d308571af70ef482e8e8bfce81738379e1f855 (patch) | |
| tree | 6caa50ab17946ff6862c742a60b220f3c483f200 /.local/bin | |
| parent | ea9b11e81210251630553409be1655072d251287 (diff) | |
move to macos
Diffstat (limited to '.local/bin')
| -rwxr-xr-x | .local/bin/cd-kak-buf | 17 | ||||
| -rwxr-xr-x | .local/bin/desktop-open-pipe | 12 | ||||
| -rwxr-xr-x | .local/bin/kc | 2 | ||||
| -rwxr-xr-x | .local/bin/ks | 2 | ||||
| -rwxr-xr-x | .local/bin/pn | 33 | ||||
| -rwxr-xr-x | .local/bin/pnsh-nvim | 41 | ||||
| -rwxr-xr-x | .local/bin/putdotfiles | 5 | ||||
| -rwxr-xr-x | .local/bin/pwd-short | 25 | ||||
| -rwxr-xr-x | .local/bin/vis-clipboard | 10 | ||||
| -rwxr-xr-x | .local/bin/xdg-open | 2 |
10 files changed, 95 insertions, 54 deletions
diff --git a/.local/bin/cd-kak-buf b/.local/bin/cd-kak-buf new file mode 100755 index 0000000..8dcf77a --- /dev/null +++ b/.local/bin/cd-kak-buf @@ -0,0 +1,17 @@ +#!/bin/sh +output=$(mktemp -d -t kak-temp-XXXXXXXX)/fifo +mkfifo "${output}" +echo "echo -to-file ${output} %val{client_list}" | kak -p s + +client_list=$(cat "${output}") +for c in $client_list; do + echo "evaluate-commands -client $c %{ echo -to-file ${output} %val{client_pid} }" | kak -p s + result=$(cat "${output}") + ppid=$(ps -o ppid= $result) + [ $ppid = $PPID ] && { + echo "evaluate-commands -client $c %{ echo -to-file ${output} %val{buffile} }" | kak -p s + result=$(cat "${output}") + echo $(dirname $result) + } +done +rm -r $(dirname ${output}) diff --git a/.local/bin/desktop-open-pipe b/.local/bin/desktop-open-pipe index b739379..adc6678 100755 --- a/.local/bin/desktop-open-pipe +++ b/.local/bin/desktop-open-pipe @@ -1,6 +1,6 @@ -#!/usr/bin/env nu -echo listening for open commands -loop { - let line = nc -l 127.0.0.1 1994 - try { bash -c $"open ($line)" } -} +#!/bin/sh +while true; do + line="$(nc -l 127.0.0.1 1994 </dev/null | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" + echo "$line" + open "$line" +done diff --git a/.local/bin/kc b/.local/bin/kc index 9e6d212..5f74d14 100755 --- a/.local/bin/kc +++ b/.local/bin/kc @@ -1,2 +1,2 @@ #!/bin/sh -kak -c "$@" +exec kak -c "$@" diff --git a/.local/bin/ks b/.local/bin/ks index 71e4621..bb98146 100755 --- a/.local/bin/ks +++ b/.local/bin/ks @@ -1,2 +1,2 @@ #!/bin/sh -kak -e 'daemonize-session' -s "$@" +exec kak -e 'daemonize-session' -s "$@" diff --git a/.local/bin/pn b/.local/bin/pn new file mode 100755 index 0000000..78163aa --- /dev/null +++ b/.local/bin/pn @@ -0,0 +1,33 @@ +#!/bin/sh +args="$( +printf "%q " \ +"--init" \ +"--entrypoint=/usr/local/bin/oksh" \ +"--env=TERM=xterm-ghostty" \ +"--env=EDITOR=vis" \ +"--volume=$TERMINFO/78/xterm-ghostty:/usr/share/terminfo/x/xterm-ghostty" \ +"--env=_ZO_DATA_DIR=/hostfs/.local/share/zoxide" \ +"--volume=/etc/profiles/per-user/ivi/etc/profile.d:/etc/profiles/per-user/ivi/etc/profile.d" \ +"--env=SHELL=/usr/bin/nu" \ +"--env=DISPLAY" \ +"--env=XDG_RUNTIME_DIR" \ +"--volume=$HOME/.ssh/known_hosts:$HOME/.ssh/known_hosts" \ +"--volume=/run/pcscd/pcscd.comm:/run/pcscd/pcscd.comm" \ +"--hostname=$(hostname)" \ +"--env=STARSHIP_CONFIG=/hostfs/.config/starship.toml" \ +"--env=HOME" \ +"--volume=${HOME}:${HOME}" \ +"--workdir=${PWD:-$HOME}" \ +"--volume=${HOME}/.ssh:/root/.ssh" \ +"--volume=${XDG_RUNTIME_DIR:-/var/run}/docker.sock:/var/run/docker.sock" \ +"--net=host" +)" + +pnsh \ + --pnsh-host-bindfs-disabled \ + --pnsh-docker-extra-args="$args" \ + --with-docker \ + --docker-image=okshnew \ + --docker-tag=latest \ + -- -l -c "$*" + diff --git a/.local/bin/pnsh-nvim b/.local/bin/pnsh-nvim deleted file mode 100755 index 8e6f296..0000000 --- a/.local/bin/pnsh-nvim +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env nu -let desktop_open_pipe = $"($env.HOME)/.cache/desktop-open.pipe" -if not ($desktop_open_pipe | path exists) { - mkfifo $desktop_open_pipe - bash -c 'nohup desktop-open-pipe &' -} - -let args = ( -"--init" + -" --entrypoint=/usr/local/bin/oksh" + -" --env=TERM=xterm-ghostty" + -$" --env=EDITOR=vis" + -$" --volume=($env.TERMINFO)/78/xterm-ghostty:/usr/share/terminfo/x/xterm-ghostty" + -" --env=_ZO_DATA_DIR=/hostfs/.local/share/zoxide" + -" --volume=/etc/profiles/per-user/ivi/etc/profile.d:/etc/profiles/per-user/ivi/etc/profile.d" + -" --env=SHELL=/usr/bin/nu" + -" --env=DISPLAY" + -" --env=XDG_RUNTIME_DIR" + -" --volume=/tmp/.X11-unix:/tmp/.X11-unix" + -$" --volume=($env.HOME)/.ssh/known_hosts:($env.HOME)/.ssh/known_hosts" + -" --volume=/run/pcscd/pcscd.comm:/run/pcscd/pcscd.comm" + -$" --hostname=(hostname)" + -" --env=STARSHIP_CONFIG=/hostfs/.config/starship.toml" + -" --env=HOME" + -$" --volume=($env.HOME):($env.HOME)" + -$" --workdir=($env | default $env.HOME PWD | get PWD)" + -# " --volume=/nix/store:/nix/store" + -$" --volume=/nix-config:/nix-config" + -$" --volume=($env.HOME)/.ssh:/root/.ssh" + -$" --volume=($env | default "/var/run" XDG_RUNTIME_DIR | get XDG_RUNTIME_DIR)/docker.sock:/var/run/docker.sock" + -" --net=host" -) - -( -^pnsh - --pnsh-host-bindfs-disabled - --pnsh-docker-extra-args=$"($args)" - --with-docker - --docker-image=okshnew - --docker-tag=latest -) diff --git a/.local/bin/putdotfiles b/.local/bin/putdotfiles index 5c736ff..9b47729 100755 --- a/.local/bin/putdotfiles +++ b/.local/bin/putdotfiles @@ -1,7 +1,8 @@ #!/bin/sh if [ -d "$HOME/.local/src/dotfiles/.git" ]; then - cp -rfT \ - "$HOME/.local/src/dotfiles" \ + cd "$HOME/.local/src/dotfiles" + ls -A | xargs -I xxx cp -rvf \ + "$HOME/.local/src/dotfiles/xxx" \ "$HOME" else putgitrepo \ diff --git a/.local/bin/pwd-short b/.local/bin/pwd-short new file mode 100755 index 0000000..a4a1500 --- /dev/null +++ b/.local/bin/pwd-short @@ -0,0 +1,25 @@ +#!/bin/sh +printf '%s' $( +IFS=/ +parts="$( +for d in $(pwd); do + [ -z "$d" ] && continue + IFS= + echo "$d" | head -c3 + echo +done +)" +len="$(echo "$parts" | wc -l)" +[ $len -gt 3 ] && { + printf '/' + echo "$parts" | tail -r | tail -n+4 | tail -r | paste -sd'/' - +} + +printf '/' +IFS=/ +for d in $(pwd); do + [ -z "$d" ] && continue + IFS= + echo "$d" +done | tail -n3 | paste -sd'/' - +) diff --git a/.local/bin/vis-clipboard b/.local/bin/vis-clipboard index df28f4b..8d26c61 100755 --- a/.local/bin/vis-clipboard +++ b/.local/bin/vis-clipboard @@ -148,11 +148,17 @@ vc_xclip_paste() { } vc_osc_copy() { - osc copy -d /dev/tty + d="/dev/tty" + [ -n "$kak_client_pid" ] && d="/proc/$kak_client_pid/fd/0" + echo "$kak_client_pid" >> ~/logs + echo osc copy -d "$d" >> ~/logs + osc copy -d "$d" } vc_osc_paste() { - osc paste -d /dev/tty + d="/dev/tty" + [ -n "$kak_client_pid" ] && d="/proc/$kak_client_pid/fd/0" + osc paste -d "$d" } vc_mac_copy() { diff --git a/.local/bin/xdg-open b/.local/bin/xdg-open index 4cd0a92..71f0c39 100755 --- a/.local/bin/xdg-open +++ b/.local/bin/xdg-open @@ -1,5 +1,5 @@ #!/bin/bash case "$(file --mime-type $1 | awk '{print $2}')" in text/*|application/json) exec "$EDITOR" "$@" ;; - *) printf '%q ' "$@" | nc 127.0.0.1 1994 ;; + *) printf '%s ' "$@" | nc 127.0.0.1 1994 ;; esac |
