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ê.