Это - зарегистрированное поведение:
down-line-or-search
Спустите строку в буфере, или если уже в нижней строке, ищите вперед в истории для строки, начинающейся с первого слова в буфере.
Кажется, нет существующего виджета, который делает точно, что Вы хотите, таким образом, необходимо будет сделать собственное. Вот то, как определить виджет, который ведет себя как up-line-or-search
, но с помощью начала строки (до курсора), а не первое слово как строка поиска. Едва ли протестированный, особенно не на многострочном входе.
up-line-or-search-prefix () {
local CURSOR_before_search=$CURSOR
zle up-line-or-search "$LBUFFER"
CURSOR=$CURSOR_before_search
}
zle -N up-line-or-search-prefix
Альтернативный подход должен использовать history-beginning-search-backward
, но только назовите его, если курсор находится на первой строке. Непротестированный.
up-line-or-history-beginning-search () {
if [[ -n $PREBUFFER ]]; then
zle up-line-or-history
else
zle history-beginning-search-backward
fi
}
zle -N up-line-or-history-beginning-search
Я не попробовал его сам, но я думаю, что Вы могли бы искать xpra. Необходимо будет войти в систему X-сервера локально для использования его, но необходимо смочь настроить его так локальный X-сервер имеет отдельную рабочую область, которая соединяется с и зеркально отражает xpra рабочую область, размещенную удаленно.
http://jkwarren.info/blogs/index.php/2009/09/09/favorite-new-toy-xpra
Я полагаю, что простой X передач будут слишком медленными для того, что Вы хотите сделать, таким образом, необходимо будет выбрать между другими протоколами как VNC (thereis много реализаций), RDP (rdesktop) или NX. Я рекомендовал бы NX, поскольку он основан X, очень быстр и даже обеспечивает звуковую и передачу файлов. FreeNX легко установить и поскольку он основан X (просто сжатый и sshed во время передачи), необходимо смочь интегрироваться, он как Вы хочет к Вашей машине локали.