35

我发现以下 Sublime 命令非常有用,因为它会在当前文件的位置打开一个资源管理器窗口:

{ "keys": ["ctrl+alt+o"], "command": "open_dir", "args": {"dir": "$file_path", "file": "$file_name"} },

我想要的是一个类似的命令,它会打开一个 cmd 窗口。理想情况下在根项目文件夹中,但当前文件目录也可以。

已阅读以下问题,但不太清楚如何在 sublime 插件/命令中使用它: BAT file to open CMD in current directory

4

5 回答 5

60
  1. 在 Sublime Text 2 中单击菜单preference> 。Browser Packages
  2. 在步骤 1 中打开的目录中创建一个文件夹Cmd
  3. 在步骤 2 中创建cmd.py的文件夹中创建一个使用以下代码命名的 python 文件。Cmd
import os, sublime_plugin
class CmdCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        file_name=self.view.file_name()
        path=file_name.split("\\")
        current_driver=path[0]
        path.pop()
        current_directory="\\".join(path)
        command= "cd "+current_directory+" & "+current_driver+" & start cmd"
        os.system(command)
  1. 在步骤 2 中创建Context.sublime-menu的文件夹中创建一个使用以下代码命名的文件。Cmd
[
     { "command": "cmd" }
]
  1. 重新启动崇高文本。

现在您可以在右键单击上下文菜单中的当前目录中打开 Cmd 提示符。

于 2012-08-29T10:01:48.050 回答
18

Shell Turtlestein 包也有一个命令。
安装该软件包后,您可以键入CTRL+ SHIFT+ ALT+ C
(或Mac 上的CMD+ SHIFT+ ALT+ C)以在当前文件的文件夹中打开 cmd/terminal。

于 2013-01-09T10:23:31.153 回答
4

只是为了扩展 TomCaps 的答案,您还可以通过将第 3 步更改为:

  1. 在步骤 2 中创建的 cmd 文件夹中使用以下代码创建一个名为 cmd.py 的 python 文件。

    import os, sublime, sublime_plugin
    class CmdCommand(sublime_plugin.TextCommand):
        def run(self, edit):
            file_name=sublime.active_window().project_file_name()
            path=file_name.split("\\")
            current_driver=path[0]
            path.pop()
            current_directory="\\".join(path)
            command= "cd "+current_directory+" & "+current_driver+" & start cmd"
            os.system(command)
    
于 2015-02-12T11:55:54.543 回答
4

我一直在寻找同样的东西,除了在 Mac OS X 上。我也试过

但我最终使用了

原因如下:

  • Shell Turtulestein 的主要目的是另一个
  • Sublime Terminal 让我使用 iTerm 而不是内置终端
于 2015-05-27T11:08:58.190 回答
1

一种非python方法。

  1. 转到Menu> Preferences> Browser Packages
  2. 打开user目录。
  3. 创建一个新文件cmdRunFromDIR.sublime-build并在 Sublime Text 中打开。
  4. 粘贴以下...

    {
    "cmd": ["C:\\\\Windows\\System32\\cmd.exe", "/C START &"],
    "working_dir": "$file_path"
    }
    

    上面将打开当前文件夹,但如果你想要项目目录,那么这里有很多不同的方法。 注意:之后将传递可以更改为以下任何内容的内容&。我看不到任何有关此的文档。这只是代表我的反复试验,如果您考虑一下,这是有道理的。因此,如果您尝试传递to 将得到一个如果路径中有任何空格。START$file_path variable"cmd": ["C:\\\\Windows\\System32\\cmd.exe", "/C START & $file_path"]ERROR

    $file_path  The directory of the current file, e.g., C:\Files.
    $file   The full path to the current file, e.g., C:\Files\Chapter1.txt.
    $file_name  The name portion of the current file, e.g., Chapter1.txt.
    $file_extension The extension portion of the current file, e.g., txt.
    $file_base_name The name-only portion of the current file, e.g., Document.
    $folder The path to the first folder opened in the current project.
    $project    The full path to the current project file.
    $project_path   The directory of the current project file.
    $project_name   The name portion of the current project file.
    $project_extension  The extension portion of the current project file.
    $project_base_name  The name-only portion of the current project file.
    $packages   The full path to the Packages folder.
    
  5. 对于键盘快捷键,转到Menu> Preferences>Key Bindings并粘贴以下代码。这个快捷方式是CTRL+C, D

        { "keys": ["alt+c,alt+d"], "command": "build", "args": { "file": "{packages}/User/cmdRunFromDIR.sublime-build" } }
    
  6. ,如果它不是该文件中的最后一行,则在该行的末尾添加。

  7. 不需要重新启动 Sublime Text。

  8. 您也可以通过Menu> Tools> Build System>访问它cmdRunFromDIR
    完成此操作后,CTRL+B还将运行该命令。


有用的链接: 请参阅下面的第一个链接,了解如何.bat直接从 Sublime Text 运行文件。对上面代码的修改很少。

构建系统 - Sublime Text 3

在 Sublime Text 3 中,如何像在 Sublime Text 2 中一样分别设置“构建和运行”和“仅构建”的快捷方式

如何在 Sublime Text 中为任何命令添加快捷方式

构建系统 - 配置

于 2019-05-15T20:40:47.703 回答