Se você estiver procurando principalmente compilar e executar programas Java, um sistema de criação (Veja referência completa aqui ) é o que você está procurando. No menu Preferences
, selecione Browse Packages...
, navegue até a pasta Packages/Java
e abra o arquivo JavaC.sublime-build
:
{
"cmd": ["javac", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
Isso pressupõe que javac
esteja no PATH
usado pelo Sublime, talvez seja necessário editá-lo para se ajustar à configuração do seu sistema. Você pode executar esse sistema de compilação salvando primeiro o arquivo .java
, selecionando Tools -> Build System -> JavaC
ou Tools -> Build System -> Automatic
e pressionando Ctrl B ( ⌘ B no Mac).
Para executar o arquivo .class
resultante, modifique JavaC.sublime-build
para o seguinte:
{
"cmd": ["javac", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"working_dir": "${project_path:${file_path}}",
"variants": [
{
"name": "Run",
"cmd": ["java", "$file_name"],
"shell": true,
"env": {"CLASSPATH": "/path/to/jar/files:/path/to/more/jars"}
}
]
}
Você pode então usar a tecla Ctrl Deslocar B ( ⌘ Deslocar < kbd> B no Mac) combinação de teclado para executar a variante Run
do sistema de compilação. A linha "working_dir": "${project_path:${file_path}}"
executa a compilação a partir do diretório que contém o arquivo .sublime-project
, se você não tiver um, o diretório padrão que contém sua .java
source é o padrão. "shell": true
executa o "cmd"
por meio do shell, seja cmd.exe
, bash
ou o que você escolher. Caso contrário, apenas sai através do console do Sublime. O dicionário "env"
permite que você adicione pares chave: valor de variáveis de ambiente que você pode querer definir apenas para a sessão de construção. Pode estar na seção "Variants"
ou na principal, dependendo das suas necessidades.
Para muitos detalhes, confira os dois links que forneci no começo - juntos eles contêm uma tonelada de informações e alguns exemplos úteis de sistemas de compilação. Você também pode navegar pelas subpastas do diretório Packages
e verificar os arquivos .sublime-build
que encontrar para obter ideias - seus nomes estão listados em Tools -> Build System
(ou seja, o sistema de compilação "Python" é encontrado em Packages/Python/Python.sublime-build
). / p>
Em resposta à sua pergunta original, o Sublime não é arquitetado para suportar um emulador de terminal completo. Embora você possa executar comandos arbitrários usando o subprocess.Popen()
do Python, eu prefiro usar o fantástico SublimeREPL
(disponível através do Controlo de pacotes ) junto com IPython
. Há um monte de dependências , mas easy_install ipython[all]
deve cuidar da maior parte disso para você , como seria a instalação através de um gerenciador de pacotes como MacPorts
, yum
, apt-get
, etc. Para o Windows, os binários pré-compilados estão disponíveis em Pacotes de Extensão Python para o repositório do Windows , que inclui links para todas as dependências necessárias e opcionais. Verifique se você está usando a instalação do python python.org .
Uma vez que você tenha o Python e o IPython instalados no seu sistema e no PATH
do Sublime, e o SublimeREPL instalado, vá para Tools -> SublimeREPL -> Python -> Python - IPython
e você deverá estar pronto e funcionando momentaneamente. Para executar um comando shell, simplesmente prefixe-o com !
- por exemplo:
In [1]: !ls
listará o conteúdo do diretório de trabalho atual, enquanto
In [2]: files = !ls
atribuirá esses nomes a uma variável. Esteja ciente, no entanto, que comandos como !cd ..
não irão realmente alterar o diretório de trabalho atual, você precisará executar:
In [3]: import os
In [4]: os.chdir('..')
para fazer isso. A documentação para as funções de arquivos e diretórios do módulo os
é muito útil aqui (altere o 2
na URL para um 3
se você estiver usando o Python 3) - o que traz outro ponto strong desse sistema: Você pode ter várias versões do Python em seu sistema e não depender a versão simplificada do 2.6 que acompanha o Sublime Text 2. Salve o seguinte em Packages/User/SublimeREPL/config/Python/Main.sublime-menu
e personalize para o seu gosto:
[
{
"id": "tools",
"children":
[{
"caption": "SublimeREPL",
"mnemonic": "r",
"id": "SublimeREPL",
"children":
[
{
"caption": "Python",
"id": "Python",
"children":[
{
"command": "repl_open",
"caption": "Python 3",
"id": "repl_python3",
"mnemonic": "p",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["/opt/local/bin/python3", "-i", "-u"],
"cwd": "/Users/YourNameHere/Development/python",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python3",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
},
{
"command": "repl_open",
"caption": "IPython 3",
"id": "repl_ipython3",
"mnemonic": "p",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["/opt/local/bin/ipython", "-i", "--pylab=osx", "--colors=NoColor"],
"cwd": "/Users/YourNameHere/Development/python",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "Ipython",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
}
]
}
]
}]
}
]
Agora você pode ter opções de menu personalizadas que sobreviverão a SublimeREPL
de upgrades do Package Control e executará REPLs com diferentes opções, diretórios de trabalho, o que você tem.
Espero que algumas delas sejam de alguma utilidade para você, por favor, deixe-me saber como isso funciona para você.