Почему у gitk нет пункта меню «копировать / вставить» в меню «Правка»? - PullRequest
4 голосов
/ 27 марта 2011

На этом форуме показано, что gitk работает с собственными ключами ОС для копирования / вставки, например, в строку идентификатора SHA1: см. невозможно скопировать и вставить в gitk - macosx и Как скопировать текст в gitk

У меня вопрос: почему эта функция не отображается в пункте меню в разделе «Правка»?

Есть ли какая-то блокировка в возможности сделать это?

См. Также эту ссылку для хорошего обзора GITK в ответах:
Руководство по пониманию гитка?

1 Ответ

2 голосов
/ 27 марта 2011

Что касается поддержки копирования / вставки между Tk и другими приложениями, эта вики-страница подводит итог:

Q9. Когда я копирую из приложения Tcl / Tk в OS X, а затем закрываю это приложение, скопированный текст не появляется в общесистемном буфере вставки.
Мне нужно переключить фокус на что-то другое, пока приложение Tk все еще работает, чтобы копирование / вставка между приложениями работала, как ожидалось. Я использую Tcl / Tk 8.10 на Leopard, хотя у меня была та же проблема с 8.7 на Tiger. Есть ли способ обойти это?

A9. SLB: Я не могу ответить специально для OS X, но аналогичная проблема возникает в Windows.
Я исследовал это и обнаружил, что Windows предоставляет два метода для хранения информации в буфере обмена:

  • Вы можете скопировать текст в буфер обмена или
  • Вы можете сохранить в буфере обмена ссылку на приложение, содержащее текст.

Последнее более эффективно, когда объем текста очень велик, но означает, что информация теряется при завершении работы приложения.
Это единственная форма копирования, предлагаемая Tk .
Для ее решения потребуется СОВЕТ для расширения поддержки буфера обмена в Tk.

Так что копировать / вставлять между приложением и приложением Tk сейчас может быть нелегко ...


Оригинальный ответ:

Работая с gitk сегодня весь день, я вижу, что нет никакого «фокуса» даже на левой нижней панели gitk, где отображается разность контента.

т.е. щелчок по этой панели ничего не вызывает для других панелей.

Другими словами, графический интерфейс gitk не отслеживает события щелчка мышью / выбора на этой панели, и в нем применяется только встроенная возможность буфера обмена.

Кажется логичным, что меню 'Edit' не отражает какую-либо запись копирования / вставки, поскольку gitk не отслеживает эти события выбора.
На самом деле «Edit» существует только для редактирования настроек.

...