summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-10-27 13:00:37 -0400
committerJune McEnroe <june@causal.agency>2020-10-27 13:00:37 -0400
commit57c06dc485f31734718bf17b7f65f5cf3305e28f (patch)
treeb5eee92cc57aac1612f510e62959316a4a3da8b0
parentUse SendEnv for cd host:path (diff)
downloadsrc-57c06dc485f31734718bf17b7f65f5cf3305e28f.tar.gz
src-57c06dc485f31734718bf17b7f65f5cf3305e28f.zip
Allow cd host: to cd to same path over ssh
Diffstat (limited to '')
-rw-r--r--home/.shrc5
1 files changed, 4 insertions, 1 deletions
diff --git a/home/.shrc b/home/.shrc
index 2c3b4740..3013ac79 100644
--- a/home/.shrc
+++ b/home/.shrc
@@ -18,10 +18,13 @@ alias private='eval "$(gpg -d ~/.private)"'
 type doas >/dev/null 2>&1 && alias sudo=doas
 
 cd() {
+	local path
 	if [ $# -eq 0 ]; then
 		builtin cd
 	elif [ "${1%%:*}" != "$1" ]; then
-		SSH_CD=${1#*:} ssh -o SendEnv=SSH_CD "${1%%:*}"
+		path=${1#*:}
+		[ -n "${path}" ] || path=${PWD#${HOME}/}
+		SSH_CD=$path ssh -o SendEnv=SSH_CD "${1%%:*}"
 	elif [ -e "$1" -a ! -d "$1" ]; then
 		builtin cd "${1%/*}" && $EDITOR "${1##*/}"
 	else
mit/service.c?h=1.3&id=f39d916e3a35527eb0d886506ac6fc70fa639070&follow=1'>Just use CLOCK_MONOTONIC and clean up includesJune McEnroe CLOCK_MONOTONIC exists everywhere. 2020-08-15Reap childrenJune McEnroe 2020-08-14Implement serviceSignal, serviceStop, serviceRestartJune McEnroe 2020-08-14Reset restartInterval and restartDeadline on startJune McEnroe 2020-08-14Switch to timespec for timeoutsJune McEnroe Can be passed to ppoll(2) directly. 2020-08-14Implement serviceStartJune McEnroe 2020-08-14Flesh out Service structJune McEnroe 2020-08-14Build environment for servicesJune McEnroe 2020-08-14Implement spawntab parsingJune McEnroe 2020-08-14Open syslog, daemonize, write PIDJune McEnroe 2020-08-14Implement user and group lookupJune McEnroe 2020-08-14Add install targetJune McEnroe 2020-08-14Add spawnd skeletonJune McEnroe