【问题标题】:Sublime Text 2 - Open CMD prompt at current or project directory (Windows)Sublime Text 2 - 在当前或项目目录中打开 CMD 提示符 (Windows)
【发布时间】:2012-08-19 15:24:11
【问题描述】:

我发现以下 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

【问题讨论】:

  • 我已经更新了详细步骤。如果可行,请尝试并接受答案。:)

标签: windows cmd sublimetext2


【解决方案1】:
  1. 在 Sublime Text 2 中点击菜单 preference > Browser Packages
  2. 在步骤 1 中打开的目录中创建一个文件夹Cmd
  3. 在步骤 2 中创建的 Cmd 文件夹中使用以下代码创建一个名为 cmd.py 的 python 文件。
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 中创建的 Cmd 文件夹中使用以下代码创建一个名为 Context.sublime-menu 的文件。
[
     { "command": "cmd" }
]
  1. 重启 Sublime Text。

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

【讨论】:

  • 您还应该为您正在使用的两个包添加导入:import os, sublime_plugin 在文件的开头。一旦这样做,它对我有用。谢谢
  • 谢谢@TomCaps。说明非常详细。如果您右键单击任何文件中的编辑器区域,您应该能够看到 Cmd 菜单项。
  • 在 Sublime Text 3 中按照上述说明在上下文菜单中放置一个 Cmd 项目,但它始终被禁用。
  • @Phrogz 包名“cmd”应为大写:“CMD”
【解决方案2】:

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

【讨论】:

  • 我还推荐了这个插件用于 sublime text
【解决方案3】:

只是为了扩展 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)
    

【讨论】:

    【解决方案4】:

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

    但我最终使用了

    出于以下原因:

    • Shell Turtulestein 的主要目的是另一个
    • Sublime Terminal 让我可以使用 iTerm 而不是内置终端

    【讨论】:

      【解决方案5】:

      一种非 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"
        }
        

        上面将打开当前文件夹,但如果你想要项目目录,那么这里有很多不同的方法。 注意: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 也会运行该命令。


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

      Build System - Sublime Text 3

      In Sublime Text 3, how to have shortcuts for “Build and Run” and “Build only” separately like it was in Sublime Text 2

      How to Add a Shortcut for Any Command in Sublime Text

      Build Systems – Configuration

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-04
        • 2011-05-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多