У деяких налаштуваннях Linux за замовчуванням Shift+ Insertвиконуватиме an X-selection-paste
. Як ви зазначали, це виразно відрізняється від X-clipboard-paste
команди, прив'язка до якої часто змінюється залежно від застосування. Якщо це не працює, спробуйте кілька інших клавіш:
Ctrl+V
Ctrl+ Shift+V
Ctrl+ Shift+Insert
Не йти? У вашому середовищі робочого столу чи в Менеджері вікон їх, мабуть, не налаштовано, і це складно, оскільки - навіть під знаменем одного DE чи WM - кожен набір інструментів (наприклад, GTK, Qt, тощо) може мати різні прив’язки за замовчуванням. Деякі програми (наприклад gvim
) навіть мають власні внутрішні регістри копій, які не обов'язково синхронізуються з графічним середовищем, в якому вони запущені. Щоб доповнити це, навіть коли програма використовує систему X-буфера обміну, X має на вибір кілька систем. Два найосновніших - це буфер вибору, у якому завжди є те, що було вибрано останнє (крім випадків, коли його немає), - і буфер для копіювання - для чого зазвичай потрібно спеціально скопіювати. Щоб зробити явну копію в останню систему, ви можете спробувати будь-яку з них на розмір:
Ctrl+C
Shift+ Ctrl+C
Ctrl+Insert
Якщо жодне з цього не магічно працює для вас, ви можете піти двома шляхами.
Для цього є додаток! ™ Використовуйте одну з різних програм менеджера буфера обміну, щоб вирішити це за вас. Найбільш популярні здається Parcellite і Glippy , але ви можете перевірити інші варіанти тут . Дивіться також це питання про досвідчених менеджерів буфера обміну
Зломіть самі.
Тож скажемо, що ви хочете зламати його.
Окрім написання власного коду та натискання на X api, хакерські інструменти для роботи - це декілька невеликих утиліт командного рядка, які дають вам вікно на розум X. Просто невелике вікно ви пам’ятаєте про вас, весь погляд занадто страшний. .
Перший інструмент - це xsel
. Цей маленький роботодавець в будь-який момент часу випхне все, що є в буфері вибору X.
Тепер вам потрібно це включити у свою програму. Для цього є два варіанти. Одне з xdotool
них дозволяє імітувати надсилання подій у систему введення Xorg. Ви можете використовувати його тип типу, як, xdotool type foo_bar
щоб імітувати введення курсору "foo_bar". У поєднанні ви отримуєте щось подібне:
$ xdotool type $(xsel)
Інший - xvkbd
це пересилання подій клавіатури з нижчої підсистеми. Ви можете передавати клавіші на STDIN. У поєднанні з цим xsel
ви отримуєте щось подібне:
$ xsel | xvkbd -xsendevent -file -
Чудово. Тепер для цієї клавіатури для запуску цього матеріалу. Якщо ви запускаєте Gnome-2, ви можете додати спеціальний ярлик у System -> Preferences -> Комбінації клавіш . Якщо ви використовуєте інший DE або WM, цей перемір залишається за читачем.
Останнє зауваження полягає в тому, що при прив’язуванні команд до комбінацій клавіш часто потрібно мати лише одну команду, а не дві команди, з'єднані з трубою, як ми використовуємо вище. Ви можете досягти цього, викликавши вашу команду piped як аргумент командного рядка до нової оболонки на зразок цієї:
sh -c 'xsel | xvkbd -xsendevent -file -'
sh -c 'xdotool type "$(xsel)"'