J'ai créé une fonction dans VIM nommée OpenCMD (), utilisée pour ouvrir une ligne de commande ou un terminal dans VIM (et cd dans le chemin du fichier actuel)
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()
Maintenant, je veux ouvrir la ligne de commande et cd dans le chemin du fichier actuel dans Sublime (sublime 3 beta). La fonction est identique à la OpenCMD()
.
Et j'ai cherché une question dans le flux de recouvrement: Sublime Text 2 - Ouvrez l'invite CMD dans le répertoire actuel ou du projet (Windows)
J'ai fait ce que le premier gars a répondu (Créer cmd, cmd.py et Context.sublime-menu). Mais cela ne peut pas fonctionner, l'opération cmd est toujours désactivée.
Y a-t-il un moyen de l'obtenir? Merci d'avance!
La réponse à propos de Sublime Text 2 - Ouvrez l’invite CMD dans le répertoire actuel ou du projet (Windows) est presque correcte.
Un seul pas (pour moi) doit être changé: le nom du fichier doit être majuscule . Utilisez CMD
au lieu de cmd
.
%APPDATA%\Sublime Text 3\Packages
ou cliquez simplement sur Préférences -> Paquets du navigateur .. in sublime-text-3 Beta CMD
( Majuscule ). Le chemin deCMDdevrait être %APPDATA%\Sublime Text 3\Packages\CMD
. cmd.py
( minuscule ), collez le contexte comme ci-dessous: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
. Ajouter un contexte comme ci-dessous:[
{ "command": "cmd" }
]
Bien entendu, si vous souhaitez ouvrir ligne de commande par commande (par 'cmd' par exemple), vous pouvez ajouter le contexte suivant dans Par défaut (Windows) .sublime-keymap fichier. :
{ "keys": ["c", "m", "d"], "command": "cmd"}
Vous pouvez l'ouvrir depuis Préférences -> Reliure clavier - Utilisateur
Merci beaucoup @Marslo! Mais, je pense que nous pouvons améliorer un peu le plugin ... (je suis sur st3 beta, window 8)
import os
import sublime_plugin
class CmdCommand(sublime_plugin.TextCommand):
def run(self, edit):
os.system("cd " + self.view.file_name() + " & start cmd")
Vous pouvez installer Terminal package dans Sublime Text 3 en procédant comme suit.
Maintenant, lorsque vous cliquez avec le bouton droit sur un fichier ou un dossier, vous verrez Open Terminal Here option
Pour Windows, je remplace la commande par:
command= "cmd /K cd "+current_directory