Почему я не могу вставить в xterm (XQuartz)?

26

Я на Mac (OS 10.8.2), и я хотел бы начать использовать xterm в качестве терминала по умолчанию, а не Terminal.app. К сожалению, я не могу вставить текст в окно xterm, и это то, что я часто хочу делать. Когда я пытаюсь, он вставляет странные символы, а не то, что я думал в своем буфере обмена. Например, если с помощью трекпада выделите мое имя пользователя в командной строке xterm (gregory), а затем нажмите cmd+ Vдля вставки, <00f6>появится текст . Если текст, который я скопировал, был из веб-браузера, то öпоявляется только (пометка «o»).

Я попытался переключить все параметры в настройках Pasteboard (включить синхронизацию, обновить буфер обмена при смене буфера обмена, обновить буфер обмена при смене буфера обмена, обновить буфер обмена сразу после выбора нового текста), и ни одна из этих настроек, похоже, не имеет никакого эффекта; конечно, никто не позволил мне вставить.

Поведение, которое я хочу, это стандартный cmd+ Cдля копирования и cmd+ Vдля вставки, хотя я мог бы принять альтернативные привязки клавиш.

Может ли кто-нибудь здесь объяснить поведение, которое я наблюдаю, и порекомендовать решение?

Грегори
источник
2
Я не могу ответить на ваш вопрос, но вот два совета: (1) Вы xtermтщательно проверили свою документацию? Я не использовал в xtermтечение нескольких лет, но я помню, что ему нравилось использовать комбинацию щелчка мышью для вставки, а не (что-то) + Vкомбинацию. (2) Вы заметили, что ö('o' umlaut) это U + 00F6 (символ Unicode 00F6)? Наверное, не случайно.
Скотт
2
Похоже, что решение может заключаться в создании файла ~ / .Xmodmap, но, если не считать необходимости делать это без непреднамеренного замешивания, я нашел слово с командой shell pbpaste.
Грегори
Для последней версии OSX (я использую 10.12) работает следующее: stackoverflow.com/a/9525347/1353267
Samveen

Ответы:

32

Вам нужно щелкнуть средней кнопкой мыши, чтобы вставить содержимое OS X Pasteboard (как называют настройки X11). Если у вас нет средней кнопки мыши, включите «Эмулировать трехкнопочную мышь» в настройках X11 под « Вкладка «Ввод», а также «Включить синхронизацию» и «Обновить ПЕРВИЧНЫЙ при изменении Pasteboard» на вкладке «Pasteboard». Затем вы можете вставить то, что скопировали в оставшуюся часть Mac OS X, удерживая Option и нажимая.

Если вы хотите использовать + V, вы можете поместить эту строку в ваш .Xdefaultsфайл:

*VT100.translations: #override  Meta <KeyPress> V:  insert-selection(PRIMARY, CUT_BUFFER0) \n

Затем убедитесь, что «Обновление ОСНОВНОГО при изменении Pasteboard» включено на вкладке «Pasteboard» в настройках X11. Возможно, вам нужно убедиться, что в .Xmodmap (или где-либо еще) ничего не изменилось для соответствующих сопоставлений клавиш. Чтобы применить новые настройки, выйдите и перезапустите X11, либо запустите, xrdb -merge ~/.Xdefaultsа затем откройте новый xterm.

Выбор текста в xterm и нажатие + Cдля копирования должно работать, если вы включили «Включить эквиваленты клавиш в X11» на вкладке «Ввод» и «Обновить разделочную доску при изменении CLIPBOARD» на вкладке «Картон».

Ник Маттео
источник
2
Да, у меня нет средней кнопки мыши на моем
Майкл
1
@ Майкл Тогда иди XQuartz > Preferences > Input > Emulate three button mouse. Или вы можете установить что-то вроде BetterTouchTool, которое является более общим решением.
GDP2
2

у вас есть 3 клавиши мыши? нажмите клавишу колеса, она вставит содержимое буфера обмена в местоположение курсора.

Лоренцо фон Маттерхорн
источник
5
У меня нет мыши, так как я использую MacBook с трекпадом.
Грегори
1
@ Грегори Тогда иди XQuarts > Preferences > Input > Emulate three button mouse. Или вы можете установить что-то вроде BetterTouchTool, которое является более общим решением.
GDP2
0

Попробуйте запустить, xrdb -merge ~/.Xdefaultsкак предложено Кундором. В отличие от перезапуска X11, xrdb потребовал, чтобы я согласился с лицензионным соглашением Xcode на мою новую установку El Capitan OS X 10.11. Как только это было сделано, мой файл .Xdefaults был правильно реализован, и ⌘ + V для вставки в xterm снова работал.

radeachar
источник
0

Если вы получаете доступ к / запускаете это из терминала Mac для подключения к Windows, это то, что заставило его работать хорошо для меня

xfreerdp --no-nla --plugin cliprdr -g 1600x1000 -u "your_user_name" your_server_or_ip 
grepit
источник