Странно, что никто не упомянул о multitail
утилита, которая имеет эту функциональность из поля. Один из примера использования:
Покажите вывод команды ping и если он отображает тайм-аут, отправьте, сообщение всем пользователям в настоящее время входило в систему
multitail -ex timeout "echo timeout | wall" -l "ping 192.168.0.1"
См. также другого примеры multitail
использование.
Короче говоря: Вы не можете с текущей версией Emacs (сверился 23.2), но посмотрите ниже для возможного обходного решения.
Более длинная история: поддержка курсива кодируется в terminfo базе данных как sitm
(введите курсив), и ritm
(выйдите из курсива) возможности (также названный ZH
и ZR
для termcap совместимости); можно проверить, что терминал поддерживает их через:
infocmp $TERM | egrep '(sitm|ritm)'
Если они не присутствуют, то Ваш rxvt-unicode-256color
терминальное описание не предоставляет информацию ncurses библиотеке о возможностях курсива терминала, и Вы могли бы хотеть добавить их, иначе никакое приложение TTY не может использовать курсив.
Однако функция turn_on_face
(в источниках Emacs, файле src/term.c
в строке 1919 - 2012), то, которое управляет дисплеем терминала, не оказывает поддержку для курсива: это проверяет на полужирные/тусклые/мигающие/подчеркивания атрибуты поверхности. На самом деле нет никакого атрибута "курсива", закодированного в struct face
.
Действительно, мой Emacs (версия 23.1 на аккуратной Ubuntu 11.04) шоу выделили курсивом поверхности (которые отображаются правильно в X11), как подчеркнуто в TTY. (Что означает, что, если Вы не заботитесь о подчеркивании, можно просто изменить terminfo описание терминала, чтобы использовать ввести/выйти escape-последовательности курсива вместо ввести/выйти подчеркивания и получить курсив.)
Относительно emacs, который не в состоянии использовать курсив в эмуляторах терминала, которые обеспечивают этот funtionality: Это - emacs ошибка № 9652, который был зафиксирован Chong Yidong 10 июня 2012.
Фиксация не находится ни в какой выпущенной версии emacs хотя, но например в пакете emacs-снимка из emacs.naquadah.org.
Я добавляю этот ответ, потому что другие устарели. Emacs 24.5 правильно отображает курсив в терминалах.
Это emacs 24.5, запущенный в терминале (emacs -nw
). Терминал - uxvrt
, а настройки в моем .Xdefaults
следующие:
URxvt*termName: rxvt-unicode-256color
URxvt.font: xft:DejaVu Sans Mono:size=9
ESC
не вставляет символ ESC. Можно нажатьCtrl+V ESC
для вставки один но Вы редко должны. Например, символ ESC представлен\E
в terminfo источнике; в терминале (с bash/ksh/zsh), попробоватьecho $'\e[3mhello\e[0m'
. – Gilles 'SO- stop being evil' 12.08.2011, 10:19