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

Есть ли способ, которым я могу достичь этой функциональности?

2 ответа2

2

Это должно быть относительно легко сделать с помощью скрипта AutoHotkey (фантастический, зрелый язык автоматизации с открытым исходным кодом).

Приведенный ниже фрагмент кода является частью гораздо большего сценария, который активируется при каждом входе в систему. Каждый раз, когда я нажимаю комбинацию клавиш CTRL+SHIFT+e, он сохраняет текущее содержимое буфера обмена Windows в переменную перед открытием выбранного файла в Notepad++, а затем записывает предыдущее значение буфера обмена (переменная "clipback") обратно в буфер обмена Windows. Чтобы открыть его, необходимо скопировать путь к выбранному файлу, поэтому без этой функции любой контент буфера обмена будет перекрываться каждый раз, когда я использую этот ярлык для открытия файла в Notepad++.

С помощью этого сценария я могу щелкнуть файл любого типа в любом окне (рабочий стол, окно проводника, диалоговое окно "Открытие файла" и т.д.), А затем нажать комбинацию клавиш, чтобы открыть ее в виде текста в Notepad++. Это очень полезно для файлов, ассоциация которых обычно приводит к их открытию в другом приложении.


Редактировать в Блокноте ++
^ + Е ::
clipback =% буфер обмена%
буфер обмена =
SendInput {F2} {Esc} ^ c
ClipWait
Сортировка буфера обмена
run, C:\Program Files\Notepad ++\notepad ++. exe "% буфер обмена%"
run, C:\Program Files\Notepad ++\notepad ++. exe "% буфер обмена%"
run, C:\Program Files\Notepad ++\notepad ++. exe "% буфер обмена%"
буфер обмена =% clipback%
вернуть


С некоторыми изменениями он может переопределить CTRL+C и CTRL+V, сохранив любое текстовое содержимое перед выполнением операции копирования или вырезания файла, а затем восстановив текст после перемещения или копирования файла. Если по какой-то причине вы не хотите оставлять AutoHotKey на своем компьютере, сценарий AutoHotKey можно скомпилировать и добавить в папку «Автозагрузка», чтобы он всегда был активен, когда вам это нужно.

Я годами модифицировал Windows скриптами AHK. Это может сделать довольно удивительные вещи.

0

Это хорошая идея для будущей версии Windows. Вы можете позвонить в службу поддержки клиентов MS и посмотреть, слушают ли они! А пока попробуйте спросить на форуме Autohotkey

А также в то же время,

Одна вещь, которую вы могли бы сделать, - это если программа перехватывает буфер обмена Windows при включении текста, и не помещает его в буфер обмена Windows, а помещает только в свой собственный буфер обмена. Затем, когда вы копируете / вставляете файл, он помещает его в буфер обмена Windows. Тогда это будет близко к тому, что вы хотите. Поскольку одна горячая клавиша вставит текст, другая вставит файл.

Другой возможный способ - если альтернатива буферу обмена Windows достаточно "мощная", то это позволит копировать / вставлять файлы. В этом случае он может сделать это или близко к нему, например, сделать это, но не так просто, как control-v, но довольно эффективно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .