3

Итак, я перетащил несколько файлов на блокнот ++. Файлы пришли из разных каталогов и были выбраны с использованием разных критериев.

Итак, у меня есть много файлов, открытых в Notepad++. Теперь мне нужно иметь список всех открытых файлов в другом файле.

Прямо сейчас, мой единственный вариант - это написать сценарий решений, которые в первую очередь помогут мне выбрать файлы. Что, вероятно, является лучшим в долгосрочной перспективе, но мне интересно, есть ли быстрый в Notepad++. Какой-то плагин магии или что-то еще.

Предложение другого бесплатного редактора, который имеет эту функцию, также является хорошим вариантом (не то, что я собираюсь отказаться от notepad++, не дай Бог)

3 ответа3

4

File > Save Session создаст файл, который содержит довольно много информации о том, что вы делали. В нем будет список всех открытых файлов. Вам нужно будет немного разобрать, чтобы получить только имена файлов.

3

Да, установить менеджер плагинов Python Script Plugin .

После установки консоли Python переключите консоль Python.

Введите это в консоли:

notepad.getFiles()

чтобы вернуть все открытые файлы в виде списка:

[('C:\\Users\\ahmed\\Desktop\\1999.txt', 32818504, 0, 0), ('D:\\WORKSPACE\\imza\\e-mail.html', 32721752, 1, 0), ('new  1', 32721944, 0, 1)]

Приведенный ниже код представляет собой однократную команду для получения имен файлов и подходит для командной строки Python Script. Вы можете расширить его с помощью постоянных скриптов Python.

fileNames = [n[0] for n in notepad.getFiles()]

Как выгрузить этот fileNames в существующий файл или новый созданный файл

Текущий файл: вставьте этот код и дважды нажмите Enter.

for f in fileNames: editor.appendText(f + '\n')

Новый файл Вставьте этот код.

notepad.new() ; for f in fileNames: editor.appendText(f + '\n')

Также возможен дамп во внешний файл, этот фрагмент из http://npppythonscript.sourceforge.net/ легко понять, даже если вы не знакомы с Python:

externalFile='_log.log'; console.run('cmd /c ls > "%s"' % externalFile, editor) 

Документация

Полная документация доступна в http://npppythonscript.sourceforge.net/docs/latest/ с учебником по Python Primer .

1

В Windows, если вы создаете папку на рабочем столе (и т.д.), Называемую "рабочим набором" (или чем-то еще), вы можете перетащить ярлык к файлу (файлам) в эту папку вместо перетаскивания их в notepad++.

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

Вы также можете щелкнуть правой кнопкой мыши по ярлыку в проводнике и «открыть с помощью> notepad++», но при этом откроется только один файл, а не группа из них, которую вы могли выбрать.

Обратите внимание, что если вы используете "отправить в", вместо "открыть с помощью" он откроет сам ярлык, который является двоичным файлом, а не тем, что вы хотите.


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


Опять же для окон, если вы пишете сценарий выбора файла, вы можете использовать VBS для создания ярлыков:

 set objWSHShell = CreateObject("WScript.Shell")

' command line arguments
' TODO: error checking
sShortcut = objWSHShell.ExpandEnvironmentStrings(WScript.Arguments.Item(0))
sTargetPath = objWSHShell.ExpandEnvironmentStrings(WScript.Arguments.Item(1))

set objSC = objWSHShell.CreateShortcut(sShortcut) 

objSC.TargetPath = sTargetPath

objSC.Save

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

cscript create_shortcut.vbs %1 %2

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