hpterm устанавливает $TERM=hpterm и использует последовательности:
ESC&f0kдлинаDстрока Устанавливает строку длиной в качестве заголовка окна
ESC&f-1kдлинаDстрока Устанавливает строку длиной в качестве имени иконки
Простая программа на C, вычисляющая длину строки и выводящая ее, выглядит примерно так:
#include int main(int argc, char *argv[]) { printf("\033&f0k%dD%s", strlen(argv[1]), argv[1]); printf("\033&f-1k%dD%s", strlen(argv[1]), argv[1]); return(0); } |
Можно написать простой скрипт, использующий ${#string}
(zsh, bash, ksh) или ${%string}
(tcsh) для вычисления длины строки. Для zsh:
case $TERM in hpterm) str="\e]0;%n@%m: %~\a" precmd () {print -Pn "\e&f0k${#str}D${str}"} precmd () {print -Pn "\e&f-1k${#str}D${str}"} ;; esac |