X-Git-Url: https://git.alrj.org/?p=zsh.d.git;a=blobdiff_plain;f=S61_konsoletabs;h=1185d79a8023ff6cbbd6a8cde9d660c37a75090c;hp=e93f3897413b389b5a0064051c6e935dc6f71b8a;hb=HEAD;hpb=d1c121b2e39d2d070aac21cc954be065662c2616 diff --git a/S61_konsoletabs b/S61_konsoletabs index e93f389..1185d79 100644 --- a/S61_konsoletabs +++ b/S61_konsoletabs @@ -1,25 +1,18 @@ -#! /usr/binn/zsh +#! /usr/bin/zsh # Change konsole tab to current path konsole-rename-path () { if [ -n "$KONSOLE_DCOP_SESSION" -o -n "$KONSOLE_DBUS_SESSION" ] then local DIR - DIR=${PWD/#${HOME}/\~} - SDIR="${DIR[-28,-1]}" - if [[ "$SDIR" != "$DIR" ]] - then - SDIR="...${DIR[-25,-1]}" - else - SDIR="$DIR" - fi + DIR=`print -P "%28<...<%~"` if [ -n "$KONSOLE_DCOP_SESSION" ] then - dcop ${KONSOLE_DCOP_SESSION} renameSession "$SDIR" + dcop ${KONSOLE_DCOP_SESSION} renameSession "$DIR" elif [ -n "$KONSOLE_DBUS_SESSION" ] then - qdbus org.kde.konsole ${KONSOLE_DBUS_SESSION} setTitle 0 "$SDIR" > /dev/null - qdbus org.kde.konsole ${KONSOLE_DBUS_SESSION} setTitle 1 "$SDIR" > /dev/null + qdbus ${KONSOLE_DBUS_SERVICE} ${KONSOLE_DBUS_SESSION} setTitle 0 "$DIR" > /dev/null 2>&1 + qdbus ${KONSOLE_DBUS_SERVICE} ${KONSOLE_DBUS_SESSION} setTitle 1 "$DIR" > /dev/null 2>&1 fi fi } @@ -32,21 +25,16 @@ konsole-rename-cmd () { # Yes, this is a dirty hack if [[ "$1" != \ cd\ \"* && "$1" != \ precmd* ]] then - local TXT - TXT="${1[0,33]}" - if [[ "$1" != "$TXT" ]] - then - TXT="${1[0,30]}..." - else - TXT="$1" - fi + local CMD + CMD=`print -P "%30>...>$1"` + if [ -n "$KONSOLE_DCOP_SESSION" ] then - dcop ${KONSOLE_DCOP_SESSION} renameSession "$TXT" + dcop ${KONSOLE_DCOP_SESSION} renameSession "$CMD" elif [ -n "$KONSOLE_DBUS_SESSION" ] then - qdbus org.kde.konsole ${KONSOLE_DBUS_SESSION} setTitle 0 "$TXT" > /dev/null - qdbus org.kde.konsole ${KONSOLE_DBUS_SESSION} setTitle 1 "$TXT" > /dev/null + qdbus ${KONSOLE_DBUS_SERVICE} ${KONSOLE_DBUS_SESSION} setTitle 0 "$CMD" > /dev/null 2>&1 + qdbus ${KONSOLE_DBUS_SERVICE} ${KONSOLE_DBUS_SESSION} setTitle 1 "$CMD" > /dev/null 2>&1 fi fi fi