Усі згадані вами gtk+
програми - це додатки, тому відповісти на це питання досить просто. Тому що ... У всіх gtk+
додатках ( крім одного ) Shift+ Insertвставки CLIPBOARD - тобто еквівалентні Ctrl+ V. Ярлик кодується в gtkentry.c
рядку (рядок 2022) та gtktextview.c
(рядок 1506):
gtk_binding_entry_add_signal (binding_set, GDK_KEY_Insert, GDK_SHIFT_MASK,
"paste-clipboard", 0);
Це також задокументовано у Довідковому посібнику GTK + 3 у розділі GtkEntry
:
The “paste-clipboard” signal
void
user_function (GtkEntry *entry,
gpointer user_data)
The ::paste-clipboard signal is a keybinding signal which gets emitted
to paste the contents of the clipboard into the text view.
The default bindings for this signal are Ctrl-v and Shift-Insert.
Наскільки мені відомо, це було зроблено для узгодження з іншими DE (див KDE
. Qt
Ключові прив’язки QTextEdit Class
) та Windows OS 1 . Єдиним винятком є . Після тривалих дебатів розробники вирішили (на узгодження з іншими терміналами), що в , + слід вставити з PRIMARY і + + слід вставити з CLIPBOARD (хоча у вас є варіанти налаштувати деякі ярлики).
gnome-terminal
gnome-terminal
ShiftInsertCtrlShiftV
Щодо того, як вставити вибір за допомогою комбінації клавіш ... прямого шляху немає.
Найпростіший спосіб - призначити ярлик для запущеного сценарію xdotool click 2
(імітує натискання середньої кнопки миші). Хоча це працює (і він повинен працювати з усіма або більшістю DE та наборів інструментів), він працює лише в тому випадку, якщо курсор миші насправді знаходиться над полем для введення тексту, інакше він не працює.
Ще один порівняно простий спосіб - через доступність Gnome, якщо він доступний у вашій системі. Для цього також потрібна наявність нумерації. Перейдіть до Universal Access
>> Pointing & Clicking
та увімкніть Mouse Keys
. Переконайтесь, що NumLock
вимкнено. Потім ви можете використовувати клавіші numpad для переміщення курсору та клацання. Щоб імітувати середню кнопку миші, натисніть (і відпустіть) *(зірочку), а потім натисніть 5(ось короткий посібник ). Це рішення, здається, завжди працює в gtk+
оточенні. Мінусом є те, що для цього потрібна Gnome Accessibility
і нумпад. Крім того, ви не можете налаштувати ярлик.
Цікаве рішення було запропоновано щодо gnome-bugzilla (помилка 643391) . (Оновлення 2018: випуск тепер переміщено сюди .) Для цього потрібно виправити деякі вихідні файли та встановити параметри конфігурації у ~/.config/gtk-3.0/gtk.css
(або ~/.gtkrc-2.0
для gtk+
2 додатків). Я не пробував це особисто, але відгуки позитивні.
В ідеалі, ви будете виправляти вихідні файли та визначати "paste-selection"
сигнал, а потім прив'язувати Shift+ Insertдо, "paste-selection"
а не "paste-clipboard"
. Код Енді (додається до звіту про помилки, пов'язаний вище) може послужити керівництвом щодо того, як це зробити. Навіть тоді це вплине лише на gtk+
додатки (я не KDE/Qt
хлопець, тому я не маю уявлення, як змінити Qt
поведінку програм).
1: (не кажучи вже про CUA IBM)