Использование функции вставки из менеджера буфера обмена при переименовании файла в файл с помощью файлового менеджера
Я использую KDE Plasma 5.12.7 на Kubuntu 18.04 (подробности о конфигурации моей системы см. Ниже).
Мне бы хотелось, чтобы менеджер буфера обмена и менеджер файлов позволили бы мне переименовывать файлы, где бы я создавал одно новое имя файла, комбинируя несколько элементов из истории буфера обмена. Я хотел бы иметь возможность сделать это в файловом менеджере (пока он находится в режиме "переименования") с помощью глобальных ярлыков, которые напрямую вставляют отдельные элементы из истории буфера обмена в пустое имя файла. (Под "пустым именем файла" я имею в виду то, что вы получаете, когда в файловом менеджере вы щелкаете файл правой кнопкой мыши и выбираете "переименовать". Это встроенное переименование; во всех файловых менеджерах, которые я пробовал, это только для пакетного режима. переименование нескольких файлов, которое открывается диалоговое окно переименования. Я редко пакетное переименование файлов, поэтому здесь важен встроенный процесс.)
Это возникает, когда я пытаюсь переименовать загруженную статью в нечто вроде, например, "Смит и Уильямс. Новый алгоритм умножения матриц J Num Math 45 897-903 2004.pdf". Мне обычно приходится копировать фамилию каждого автора отдельно, каждую строку заголовка (если она длинную) отдельно и т. Д., Чтобы все эти вещи стали элементами в истории буфера обмена.
Другими словами, я хотел бы следующую функциональность:
- Скопируйте не менее 10 элементов в историю буфера обмена, например, элемент 0 - "Смит", элемент 1 - "Уильямс", пункт 2 - "Новый алгоритм умножения матриц", пункт 3 - "J", пункт 4 - "Num" пункт 5 - "Математика", пункт 6 - "45" и т. д.
- Я должен быть в состоянии вставить эти предметы через глобальные ярлыки. Например, meta+shift+1 вставка "Смит", meta+shift+2 вставка "Уильямс" и т. Д.
- Я должен быть в состоянии использовать эти ярлыки при переименовании файла в файловом менеджере. Так, например, в Dolphin я бы выделил файл, который я хочу переименовать, нажмите клавишу f2 (которая вызывает функцию "переименовать"), удалите старое имя файла, а затем переименуйте файл в "Смит и Уильямс". Новый алгоритм умножения матриц J Num Math 45 897-903 2004.pdf', нажав meta+shift+1, затем набрав' и ', затем meta+shift+2, затем напечатав' ' (т.е. просто обычное пространство), затем meta+shift+3 и т. Д.
Я должен упомянуть, что на какое-то время я смог использовать эту функцию в Windows 7, используя стандартный файловый менеджер Explorer и менеджер буфера обмена под названием Ditto.
Под kubuntu+KDE Plasma единственным менеджером буфера обмена, который мне удалось найти, который в принципе допускает что-то подобное этой функции, является CopyQ. Я написал новые команды с соответствующими глобальными ярлыками, которые выглядят так:
первый глобальный ярлык, meta+shift+1, выполняет
copyq:
выберите (0)
вставить()
второй глобальный ярлык, meta+shift+1, выполняет
copyq:
выберите (1)
вставить()
и так далее.
Это работает, как и ожидалось, в текстовых редакторах, например, Кейт.
Однако, это не работает, когда я пытаюсь переименовать файл в Dolphin. Вместо этого происходит то, что при нажатии глобального ярлыка Dolphin выходит из режима переименования и... на самом деле, неясно, что он делает дальше. Иногда он оставляет имя файла без изменений, иногда запрашивает "Имя файла для содержимого буфера обмена". Иногда он, по-видимому, просто удаляет файл, который я пытался переименовать (не перемещая его в корзину, что немного мешает).
Я попытался использовать два других файловых менеджера, Krusader и Konqueror, но они также не поддерживали эту функциональность в сочетании с CopyQ. Проблема та же, что и с Dolphin: когда я пытаюсь использовать глобальный ярлык, они просто выходят из режима переименования имени файла и оставляют старое имя файла без изменений.
Еще один менеджер буфера обмена, который приближается к тому, что я хочу, это Klipper. Одна из проблем с Klipper заключается в том, что, похоже, не существует глобальных ярлыков для прямого доступа к элементам в истории буфера обмена. Вместо этого я смог сделать следующее: в системных настройках-> рабочее пространство-> ярлыки-> глобальные ярлыки-> плазма я назначил ярлыки для "Следующий элемент истории" и "Предыдущий элемент истории". Я могу использовать их для циклического перемещения по буферу обмена и использовать ctrl+v (или иногда среднюю кнопку), как обычно, чтобы вставить их.
Это не совсем то, что я хочу, но я мог бы принять это, если бы это работало для целей переименования файлов. Однако, опять же, хотя этот вид циклического перемещения по истории буфера обмена плюс ctrl + v прекрасно работает в текстовых редакторах, он не работает в файловых менеджерах: как только глобальный ярлык нажат, файловый менеджер выходит из функции переименования.
Это правда, что я мог бы использовать эти два менеджера буфера обмена в командной строке (то есть в Konsole). Я действительно могу использовать команду cp, а затем создать новое имя файла в командной строке, используя глобальные ярлыки, которые работают внутри Konsole. Но я хочу быть в состоянии сделать это в файловом менеджере.
Что бы это ни стоило, такая же проблема возникает, если я пытаюсь вставить, например, из texpander: в момент нажатия его глобальной горячей клавиши файловый менеджер выходит из режима переименования.
Теперь, если откроется окно переименования, то я обычно могу вставить в него из менеджеров буфера обмена и texpander. Но такое окно открывается, только если я пытаюсь переименовать несколько файлов, что я делаю редко.
У кого-нибудь есть идеи о том, как я мог бы использовать описанную мной функциональность? Нет ли способа использовать глобальные ярлыки в функции встроенного переименования файлового менеджера?
Я много гуглил, но ничего не нашел.
Вот версии различных компонентов моей системы:
Кубунту 18.04
KDE Plasma Версия 5.12.7
Рамки KDE: 5.44.0
Qt: 5.9.5
версия ядра: 4.18.0-17-generic
компьютер: Dell Precision M4800 (64-разрядный компьютер)
1 ответ
Оказывается, простое решение: отключить встроенное переименование (в Dolphin: Control->Configure Dolphin...->General->Behavior-> снимите флажок "Переименовать inline").
Теперь переименование выполняется в диалоговом окне, и я могу использовать глобальные ярлыки для вставки из менеджеров буфера обмена.
Я все еще хотел бы знать, почему мы не можем сделать это встроенным, но это, возможно, должно быть отправлено как отдельный вопрос.