因此,我将多个文件拖放到 notepad++ 上。这些文件来自不同的目录,并使用不同的标准进行选择。
因此,我在 Notepad++ 中打开了许多文件。现在我需要在另一个文件中列出所有打开的文件。
现在,我唯一的选择是编写脚本,用于指导我首先选择文件。从长远来看,这可能是最好的选择,但我想知道 Notepad++ 中是否有一个快速的脚本。一些插件魔法或其他什么。
建议使用另一个具有此功能的免费编辑器也是一个不错的选择(我不会放弃 notepad++,但愿不会)
答案1
是的,安装Python 脚本插件插件管理器。
安装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 脚本命令行。您可以使用持久 Python 脚本对其进行扩展。
fileNames = [n[0] for n in notepad.getFiles()]
如何将此文件名转储到现有文件或新创建的文件中
当前文件:粘贴此代码并按两次 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 入门教程。
答案2
File > Save Session
将创建一个文件,其中包含大量有关您正在做的事情的信息。它将列出所有打开的文件。您必须进行一些解析才能获得文件名。
答案3
在 Windows 中,如果您在桌面(等)上创建一个名为“工作集”(或其他名称)的文件夹,您可以将文件的快捷方式拖到此文件夹中,而不是将它们拖到 notepad++。
然后,您可以使用文件 > 打开对话框正常打开它们:记事本将打开快捷方式目标。这样,您可以通过一次操作打开多个文件。
您也可以右键单击资源管理器中的快捷方式并“使用 > notepad++ 打开”,但这只会打开单个文件而不是您可能选择的一组文件。
请注意,如果您使用“发送到”而不是“打开方式”,它将打开快捷方式本身,这是一个二进制文件,而不是您想要的。
您还可以在“文件菜单”下保存“会话”。这将创建一个 xml 文件,其中包含当前打开的文件以及视口设置等。您可以重新加载会话,也可以打开并解析会话文件以提取文件名。
同样对于 Windows,如果您正在编写文件选择脚本,则可以使用 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
答案4
从“文档列表”面板中,选择所需的文件(使用 CTRL 添加多个),右键单击,选择名称或路径,将其粘贴到您想要的任何位置。