如何在Windows上下文菜单中正确添加Sublime Text?

问题描述 投票:0回答:1

我想在上下文菜单中添加使用Sublime Text打开文件夹的功能,因为它在VS Code中是默认设置,所以我尝试了以下脚本:

@echo off
SET st3Path=C:\Program Files\Sublime Text 3\sublime_text.exe

rem add it for folders
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3"         /t REG_SZ /v "" /d "Open with Sublime Text 3"   /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3"         /t REG_EXPAND_SZ /v "Icon" /d "%st3Path%,0" /f
@reg add "HKEY_CLASSES_ROOT\Folder\shell\Open with Sublime Text 3\command" /t REG_SZ /v "" /d "%st3Path% \"%%1\"" /f
pause

这有效,但是每次我打开一个文件夹时,所有以前的文件夹也会在单独的窗口中打开。我可以以某种方式解决它吗?

windows batch-file sublimetext3
1个回答
0
投票

您应使用subl.exe而非sublime_text.exe来执行此操作; subl用于与Sublime的运行实例进行交互(如果尚未运行,则将其启动),而sublime_text是应用程序本身。

但是,尽管如此,您的问题也与此设置(某种程度上)有关,如此处所示,默认情况下它是打开的:

    // Exiting the application with hot_exit enabled will cause it to close
    // immediately without prompting. Unsaved modifications and open files will
    // be preserved and restored when next starting.
    //
    // Closing a window with an associated project will also close the window
    // without prompting, preserving unsaved changes in the workspace file
    // alongside the project.
    "hot_exit": true,

启用此功能后,您可以随时退出Sublime,并保存它的会话(包括未保存的文件更改,选择状态等),然后将其还原以恢复到原来的状态。

因此,如果您先前在打开窗口的同时退出了Sublime,那么当您在Sublime上方执行操作时,将还原其会话(和所有其他窗口),然后创建新的会话。

关闭该设置可以阻止这种情况的发生,因此,每次启动Sublime时,它都是“干净”状态,没有还原的窗口或状态。但是,这也意味着退出Sublime时,需要确保保存更改,否则工作将丢失。

© www.soinside.com 2019 - 2024. All rights reserved.