Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

Мышка в Линуксе

Дата публикации: 24-06-2026 05:41:45



Объясните, что за хрень с копипастой в Линуксах. А конкретно в Гноме. Коллега вчера пытался скопировать пароль из midnight commander в целевую программу, и оно нихрена не выделялось мышкой, если не нажать shift? Посыл от коллеги был такой: это опять говны гнома, в КДЕ у меня такого не было.



 desktop



Основное содержимое страницы с новостью.

Коллега вчера пытался скопировать пароль из midnight commander в целевую программу, и оно нихрена не выделялось мышкой, если не нажать shift?

И не должно было.

Все эти «возможности» должны быть гомогенно интегрированы в десктопное окружение.

Вот именно что в десктопное, а не работающее через эмулятор терминала.

«Проблема не возможности выделить» связана с конфликтом интересов.

Пример 1.

Запустили mc и правой кнопкой мыши можем выделять файлы.

Почему?

  • mc запустили.
  • mc отправило сообщение эмулятору терминала, что оно хочет использовать мышь.
  • эмулятор терминала переключается в режим перенаправления события нажатия клавиш мыши в stdin mc.
  • mc при завершении работы «отвязывается» от мыши.
  • эмулятор терминала выходит из режима перенаправления события нажатия клавиш мыши в stdin mc.
Пример 2.
  • Открываем любимый терминал.
  • Выполняем: echo -e "\033[?1000h"
  • Нажимаем мышкой в разных местах экрана. И видим «мусор» в строке ввода.
  • Пытаемся что либо выделить. И видим «мусор» в строке ввода.
  • Используем Shift при нажатии на кнопки мыши. Можем выделить и вызвать контекстное меню.
  • Выполняем: echo -e "\033[?1000l"
  • Проверяем что всё вернулось на круги своя.
Итог про мышь

Эмулятор терминала может находится в двух режимах.

  1. Прямой обработке событий мыши.
  2. Перенаправление событий мыши в приложение.

Во втором режиме, если надо что бы события мыши обработал «эмулятор терминал», то используем Shift.

Когда мы хотим «выделить и скопировать текст» в эмуляторе терминала, то чаще это означает: «эй товарищ терминал, у тебя тут сейчас есть состояние тестового вывода, я хочу выделить кусочек и скопировать себе». Т.е. мы взаимодействуем не с приложением а с терминалом.

Через одно графическое окно мы взаимодействуем с двумя программами:

  1. консольное приложение,
  2. эмулятор терминала.

И надо найти компромисс как обрабатывать события от мыши. Например:

  • shift + ЛКМ - обрабатывает эмулятор терминала.
  • ЛКМ - обрабатывается в зависимости от режима эмулятора терминала.
Про буфер обмена.

Тут отдельная песня. Как правило, мы работаем с двумя буферами обмена X11 сессии primary и clipboard. В первый попадает выделение текста, во второй при Ctrl+C.

Взаимодействие с буферами обмена - задача графических приложений. Консольные, как правило, понятия не имеют про X11 сессию, и, следовательно, буферы обмена.

Ещё раз. Буферы обмена - это сущности X11 сессии.

Пример 3.
  • На удалённом сервере ставим vim собранный с поддержкой clipboard: sudo apt install vim-gtk3.
  • Проверяем:
$ for v in /usr/bin/vim\.*;  do echo "$v"; $v --version | grep clipboard;  done
/usr/bin/vim.basic
-clipboard         +keymap            +printer           +vertsplit
+ex_extra          +mouse_netterm     +syntax            -xterm_clipboard
/usr/bin/vim.gtk3
+clipboard         +keymap            +printer           +vertsplit
+ex_extra          +mouse_netterm     +syntax            +xterm_clipboard
/usr/bin/vim.tiny
-clipboard         -keymap            -profile           +vim9script
-eval              -mouse_jsbterm     -syntax            -xterm_clipboard
  • Подключаемся к удалённому серверу как ssh -X user@host
  • Проверяем выделение и копирование через " + y.
  • Проверяем в любом графическом приложении содержимое буфера обмена.

AlexVR ★★★★★
(25.06.26 15:02:15 MSK)
Последнее исправление: AlexVR 25.06.26 15:14:39 MSK (всего исправлений: 1)

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1Gnome-Remote-Desktop не функционирует0724-06-2026
2Отображение иконки на панели задач при запуске программы0524-06-2026
3Непонятно удаление0525-06-2026
4Предложение на Форум2327-06-2026
5Как задавать в скриптах имя вкладки screen?0623-06-2026
6Ноутбучный кулер сбрасывает обороты с thinkpad_acpi0723-06-2026
7Поиск полок для клавиатуры0524-06-2026
8Клавиатура Panteon T24 Pro самопроизвольно переключет раскладку0522-03-2026
9PEdit-CoW и DirtyClone - уязвимости в ядре Linux, позволяющие получить root через изменение страничного кэша0826-06-2026
10Подготовлен Flatpak-пакет с графическим редактором GIMP 0.54, выпущенным в 1996 году0723-06-2026

Классификация: Общество. Схожих патентов: 0. Схожих новостей: 10. Тональность: -5. Информативность: 3. Источник: www.linux.org.ru.