我在VIM中创建了一个名为OpenCMD()的函数,用于在VIM中打开命令行或终端(在当前文件路径中使用cd)
func! OpenCMD()
if has('win32')
let com = '!cmd /c start cd '. expand('%:p:h')
else
let com = '!/usr/bin/gnome-terminal --working-directory=' . expand('%:p:h')
endif
silent execute com
endfunc
nmap cmd :call OpenCMD()
现在,我想在Sublime(sublime 3 beta)的当前文件路径中打开命令行和cd。该函数与OpenCMD()
。
我在stackover流程中搜索了一个问题:Sublime Text 2 - Open CMD prompt at current or project directory (Windows)
我做了第一个回答的人(创建cmd,cmd.py和Context.sublime-menu)。但是它无法工作,cmd操作总是被禁用。
有什么方法可以得到它吗?提前谢谢!
答案 0 :(得分:29)
关于Sublime Text 2 - Open CMD prompt at current or project directory (Windows)的答案几乎是正确的。
只需要更改一个步骤(对我而言),文件名应为大写。使用CMD
代替cmd
。
%APPDATA%\Sublime Text 3\Packages
或只需点击
偏好设置 - > sublime-text-3 Beta CMD
的文件夹(大写)。 CMD 的路径应为%APPDATA%\Sublime Text 3\Packages\CMD
。 cmd.py
(小写)的文件,粘贴上下文如下: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)
Context.sublime-menu
的文件(再次)。添加上下文如下:[
{ "command": "cmd" }
]
原因是,如果您想通过命令打开命令行(例如'cmd'),您可以将以下上下文添加到默认(Windows).sublime-keymap < / strong>文件。 :
{ "keys": ["c", "m", "d"], "command": "cmd"}
您可以从偏好设置 - &gt;打开它键绑定 - 用户
答案 1 :(得分:3)
您可以按照以下步骤在Sublime文本3中安装 Terminal 软件包。
现在,当您右键单击文件或文件夹时,您会看到在此处打开终端选项
答案 2 :(得分:2)
非常感谢@Marslo!但是,我认为我们可以稍微改进插件......(我在st3 beta,第8窗口)
import os
import sublime_plugin
class CmdCommand(sublime_plugin.TextCommand):
def run(self, edit):
os.system("cd " + self.view.file_name() + " & start cmd")
答案 3 :(得分:1)
对于Windows,我将命令替换为:
command= "cmd /K cd "+current_directory
答案 4 :(得分:0)