diff options
author | Alan Pearce | 2021-04-13 13:51:43 +0200 |
---|---|---|
committer | Alan Pearce | 2021-04-13 13:51:43 +0200 |
commit | 4e3bd398ca7a1d6625bb51f05921d3b1324e811f (patch) | |
tree | 21979847a6e59c405ac76e44e2b7551a3c22465a | |
parent | 533ae2186750c603f560301997f02e8328f5ad38 (diff) | |
download | nixfiles-4e3bd398ca7a1d6625bb51f05921d3b1324e811f.tar.lz nixfiles-4e3bd398ca7a1d6625bb51f05921d3b1324e811f.tar.zst nixfiles-4e3bd398ca7a1d6625bb51f05921d3b1324e811f.zip |
zsh: set/re-set terminal title from ssh/mosh on Darwin
-rw-r--r-- | user/settings/zsh.nix | 6 | ||||
-rw-r--r-- | user/zsh/zshrc.darwin | 26 |
2 files changed, 31 insertions, 1 deletions
diff --git a/user/settings/zsh.nix b/user/settings/zsh.nix index ca13f4d0..b7232041 100644 --- a/user/settings/zsh.nix +++ b/user/settings/zsh.nix @@ -237,7 +237,11 @@ in source ${pkgs.fzf}/share/fzf/key-bindings.zsh source ${pkgs.fzf}/share/fzf/completion.zsh - '' + builtins.readFile ../zsh/zshrc; + '' + builtins.readFile ../zsh/zshrc + ( + if stdenv.isDarwin + then builtins.readFile ../zsh/zshrc.darwin + else "" + ); }; home.file."${zshrc}".onChange = diff --git a/user/zsh/zshrc.darwin b/user/zsh/zshrc.darwin new file mode 100644 index 00000000..1b702022 --- /dev/null +++ b/user/zsh/zshrc.darwin @@ -0,0 +1,26 @@ +set_title () { + print -Pn "\e]0;$1\7\n" +} +ssh () { + local arg server retval + for arg + do + if [[ "${arg#-}" == "$arg" ]] + then + server=$arg + break + fi + done + set_title "file://${server}/" + command ssh "$@" + retval=$? + set_title + return $retval +} +mosh () { + command mosh "$@" + retval=$? + set_title + return $retval +} + |