Xterm*selectToClipboard не работает при установке в Xresources
У меня проблема с моим Xterm, и я не могу понять, что не так:
Мне нужно включить опцию *selectToClipboard
в моем Xterm, чтобы иметь возможность копировать текст в терминале.
Для этого я сначала попытался "вручную" запустить xterm с помощью следующей команды: xterm -xrm 'xterm*selectToClipboard: true'
которые работают очень хорошо.
Затем, чтобы включить опцию каждый раз при запуске xterm, я поставил следующую строку xterm*selectToClipboard: true
в моем ~/.Xresources
и я использовал команду xrdb -merge ~/.Xresources
обновить настройки, но это не работает: Xterm запускается, но опция не включена, и я не могу скопировать текст из терминала, тогда как все остальные опции в Xresources
включены и работают нормально.
Кто-нибудь имеет представление о том, что может вызвать эту проблему?
2 ответа
Короткий ответ: просто нужно добавить строку ниже в вашем /etc/X11/app-defaults/XTerm
файл
*selectToClipboard: true
Длинный ответ: Если вы посмотрите справочные страницы xterm(1):
man xterm
FILES
The actual pathnames given may differ on your system.
...
/etc/X11/app-defaults/XTerm
the xterm default application resources.
/etc/X11/app-defaults/XTerm-color
the xterm color application resources. If your display supports color, use this
*customization: -color
in your .Xdefaults file to automatically use this resource file rather than /etc/X11/app-defaults/XTerm. If you do not do this, xterm uses its compiled-in default resource settings for colors.
...
Я не нашел ссылки на файл конфигурации пользователя для установки значений по умолчанию для приложения XTerm, кроме XTerm-color
так что я не думаю, что он существует.
X ресурсы чувствительны к регистру. Руководство Xterm документирует это как
selectToClipboard (класс SelectToClipboard)
Сообщает xterm, использовать ли PRIMARY или CLIPBOARD для токенов SELECT в механизме выбора. Действие set-select может изменить это во время выполнения, позволяя пользователю работать с программами, которые обрабатывают только один из этих механизмов. По умолчанию установлено значение "false", что говорит о необходимости использования PRIMARY.
Эта функция была добавлена в xterm в патче № 209 (2006). Это не дополнительная функция. Итак (при условии, что вы ввели командную строку, как указано), есть несколько возможностей для проверки:
вы могли бы использовать более старую версию xterm. Чтобы проверить это, запустите
xterm -v
-v
Опция версии xterm будет печатать однострочное сообщение, показывающее уровень патча вместе с конфигурацией, для которой он был скомпилирован, например,
XTerm(261)
Эту функцию можно установить / сбросить с помощью escape-последовательности, как указано в XTerm Control Sequence:
CSI? Pm h DEC Private Mode Set (DECSET).... Ps = 1 0 4 1 -> Использовать выбор CLIPBOARD. (Это включает ресурс selectToClipboard).
Ваша инициализация оболочки может иметь что-то, что отправляет эту последовательность.
xrdb -query
это один из способов проверить настройки ресурса, но это не является непогрешимым. Лучшим инструментом будет appres
например,
appres XTerm
appres UXTerm
в зависимости от того, запущен ли xterm с / без UXTerm
настройки приложения по умолчанию. В отличие от xrdb
, appres
показывает настройки ресурса после учета файлов "app-defaults". (Он не видит ресурсы, применяемые только к экземпляру xterm, такому как -xrm
опция).
В tmux есть функция, которая может мешать выборам (будь то основной или буфер обмена). Это называется set-clipboard
и комментируется здесь: