Копирование выделенного текста перестало работать в терминале.

Вопрос или проблема

У меня есть странный эффект на одном рабочем месте: внезапно система не позволяет мне копировать текст из терминала, чтобы вставить его в другое место просто путем выбора.

Я все еще могу вставлять в терминал текст, который выбрал в других окнах. Проблема ограничивается копированием путем выбора из терминала.

Также я знаю о сочетаниях клавиш ctrl+shift+v ctrl+shift+c. Они прекрасно работают, так же как и копирование и вставка парой щелчков мыши после выбора текста и затем нажатия “Копировать” или “Вставить” в меню. Однако я хочу вернуть таинственно ушедшую возможность копирования текста из терминала путем выбора…

Спасибо за любые предложения!

Возможно, это звучит странно, но я уже сталкивался с чем-то подобным на своем рабочем ноутбуке ранее. Это обычно происходит, когда у меня открыто много приложений, которые находятся друг над другом в том же окне, что и мой терминал. Даже если текст выделен в терминале, в буфере обмена ничего не оказывается, как если бы одно из других окон таинственно было между вашей мышью и окном терминала. Что помогло мне, так это минимизировать все приложения сразу, покачав мышью. Извините за не очень научный ответ.

Это случилось и у меня с Konsole.

Исследование /var/log/syslog показало следующее сообщение каждый раз, когда я пытался скопировать:
“QXcbClipboard::setMimeData: Cannot set X11 selection owner”

Следуя этому сообщению, кажется, что проблема была сообщена/исправлена:
https://bugreports.qt.io/browse/QTBUG-65145
https://codereview.qt-project.org/c/qt/qtbase/+/254187

Эта проблема совпала с моим случаем, так как моя система работала уже 50 дней, прежде чем проблема возникла!

Судя по журналу изменений, это исправление было включено в выпуск QT 5.12.6.

Похоже, что Ubuntu 20.04.2 содержит версию 5.12.8 на данный момент, так что должна включать исправление.

Сейчас 2021 год, и эта ошибка в Konsole все еще существует, я использую Debian 10, Konsole 18.04.0, собранный против KDE 5.54.0, Qt 5.11.3 + xcb.

Вы можете временно обойти ее, дав вашему профилю новое имя, удалив все другие профили и повторно выбрав ‘Переключить профиль’ в контекстном меню Konsole, затем выбрав ваш только что сохраненный профиль.

Однако она случайно возвращается, и я также видел, что случайно создаются новые профили (Профиль 1, Профиль 2, Профиль 3).

Судя по тому, что я наблюдал, пока у вас есть ‘Профиль по умолчанию’ как имя, когда вы открываете Настройки – > Редактировать текущий профиль, параметры не сохраняются случайным образом.

Перейдите в настройки терминала и создайте новый профиль и попробуйте выбрать текст в нем.
возможно, профиль сделал настройку, о которой вы не знаете

или попробуйте изменить вашу оболочку, иногда проблема в оболочке

sudo apt update
sudo apt install -y zsh
sudo apt install -y fish
sudo chsh
# 'Напишите здесь имя оболочки'

Выполните эти команды, чтобы изменить вашу оболочку

Для решения этой проблемы проверьте настройки терминала на наличие любых параметров, связанных с буфером обмена, или убедитесь, что установлены xclip или xsel, так как они обрабатывают операции с буфером обмена в некоторых Linux-средах. Вы также можете попробовать перезагрузить терминал или сбросить его настройки. Если проблема сохраняется, проверьте, не повлияли ли на поведение буфера обмена какие-либо недавние обновления или изменения в системе.

.

Ответ или решение

Теория:

Проблемы с копированием текста из терминала встречаются достаточно часто среди пользователей Unix-подобных систем. Эти проблемы могут иметь различные причины, включая неисправности в настройках терминала, проблемы со связью между GUI и сервером X Window, а также возможные баги в самом программном обеспечении терминала.

Во многих терминалах, таких как GNOME Terminal или Konsole, есть возможность копирования текста через выделение. Обычно это действие осуществляется путем простого выделения текста, что автоматически помещает его в буфер обмена. Однако, когда эта функция перестает работать, это может серьезно повлиять на рабочий процесс.

Пример:

В приведенном примере пользователь сообщает, что больше не может копировать текст из терминала путем простого выделения. При этом остальные функции копирования и вставки, такие как сочетания клавиш Ctrl+Shift+C и Ctrl+Shift+V, работают корректно. Также отмечается, что это поведение может быть связано с другими открытыми окнами, перекрывающими терминал, или с ошибками, описанными в зависимостях и конфигурациях, таких как Qt или KDE.

Один из пользователей обнаружил логирование ошибки "QXcbClipboard::setMimeData: Cannot set X11 selection owner", что указывает на проблемы с передачей данных на уровень X11. Это также может быть связано с устаревшей версией программного обеспечения, как отмечено в репортах об ошибках в Qt.

Другой пользователь предложил временное решение: создать новый профиль терминала и использовать его, либо проверить существующие профили на наличие ошибок в настройках. Также существуют рекомендации по проверке и обновлению системных библиотеки xclip или xsel, управляющих буфером обмена.

Применение:

  1. Проверка и обновление программного обеспечения:

    • Убедитесь, что система и приложения обновлены до последних стабильных версий. Ваша проблема может быть устранена в более поздних версиях терминала или зависимых библиотек.
    • Исследования показывают, что проблемы с копированием в Konsole могут быть связаны с зависимостями в Qt и KDE. Убедитесь, что используемые версии содержат исправления известных ошибок.
  2. Проверка настроек терминала:

    • Проверьте настройки профиля терминала. Часто можно восстановить нужную функциональность, создав новый профиль и удалив предыдущие.
    • Обратите внимание на специфические настройки, касающиеся опций буфера обмена. Возможно, они были изменены.
  3. Изменение и тестирование оболочки:

    • Попробуйте сменить используемую оболочку с bash на zsh или fish. Возможно, проблема заключается в используемой оболочке.
    • Установка новой оболочки:
      sudo apt update
      sudo apt install -y zsh
      sudo apt install -y fish
      sudo chsh
  4. Диагностика X11 и GUI:

    • Проверьте файлы системных логов (например, /var/log/syslog) на наличие ошибок, связанных с X11. Это может дать подсказки о корнях проблемы.
    • Убедитесь, что нет наложения окон или других GUI-элементов поверх терминала, благодаря которым действия мыши могли бы быть некорректно зафиксированы.
  5. Использование сторонних утилит:

    • Установите и убедитесь в корректной работе xclip или xsel — сторонние утилиты, которые могут помочь в управлении буфером обмена.
  6. Перезапуск и сброс настроек:

    • Попробуйте перезапустить терминал или сбросить его настройки до значений по умолчанию. Это может устранить временные сбои в работе.

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

Следуя этим рекомендациям, вы сможете вернуться к полноценному использованию функции копирования текста в вашем терминале.

Оцените материал
Добавить комментарий

Капча загружается...