Repository navigation
terminal
O Codis possui um terminal integrado completo com suporte a múltiplos shells e REPLs interativos.
| Método | Ação |
|---|---|
Ctrl+`` `` |
Abre o painel inferior na aba Terminal |
| Menu Terminal → Novo Terminal | Abre um novo terminal adicional (o menu exibe o rótulo "Ctrl+Shift+`", mas não há bind de teclado funcional para essa combinação no código atual) |
| Menu Terminal → Novo Terminal | Cria nova instância |
| Painel inferior → aba Terminal | Clique direto |
O Codis detecta automaticamente os shells disponíveis no sistema e os lista no seletor da barra de status do terminal.
| Shell | Executável |
|---|---|
| PowerShell | powershell.exe |
| PowerShell Core | pwsh.exe |
| CMD | cmd.exe |
| Bash (Git/Cygwin) | bash.exe --login -i |
| WSL (padrão) | wsl.exe |
| BusyBox ash | busybox.exe ash |
| Dash | dash.exe |
| Korn Shell | ksh.exe |
| Tcsh | tcsh.exe |
| Csh | csh.exe |
| Elvish | elvish.exe |
| Nushell | nu.exe |
| Xonsh | xonsh.exe |
| Oil | osh.exe |
| Shell | Executável |
|---|---|
| Bash | bash --norc |
| Zsh | zsh --no-rcs |
| Fish | fish --no-config |
| Dash | dash |
| Korn Shell | ksh |
| Tcsh | tcsh |
| Csh | csh |
| Ash | ash |
| Elvish | elvish |
| Nushell | nu |
| Xonsh | xonsh |
| Oil | osh |
| sh (padrão do sistema) | $SHELL |
| REPL | Condição |
|---|---|
| Python REPL |
python3/python disponível (-i -u) |
| IPython |
ipython disponível |
| BPython |
bpython disponível |
| PTPython |
ptpython disponível |
| Node.js REPL |
node disponível (--interactive) |
| Ruby (irb) |
irb disponível |
| Perl debugger |
perl disponível (perl -de 1) |
| PHP interativo |
php -a disponível |
| Lua REPL |
lua disponível |
| R REPL |
R --quiet disponível |
| Julia REPL |
julia disponível |
| Elixir (iex) |
iex disponível |
| Erlang |
erl disponível |
| Clojure REPL |
clojure disponível |
| Scala REPL |
scala disponível |
| Groovy (groovysh) |
groovysh disponível |
| Tcl |
tclsh disponível |
| Gauche Scheme |
gosh disponível |
| Guile |
guile disponível |
| Racket |
racket -i disponível |
| SWI-Prolog |
swipl disponível |
Se nenhum shell ou REPL estiver disponível, o fallback final é cmd.exe no Windows ou /bin/sh no Linux/macOS.
| Opção | Padrão | Descrição |
|---|---|---|
default_shell |
detectado automaticamente | Shell inicial ao abrir o terminal |
terminal_font_size |
12 |
Tamanho da fonte |
O shell padrão pode ser alterado via Ctrl+, ou clicando no nome do shell na barra de status do terminal.
| Comando | Atalho | Descrição |
|---|---|---|
| Novo Terminal | - (rótulo "Ctrl+Shift+`" no menu, sem bind funcional) | Cria uma nova instância de terminal |
| Limpar Terminal | - | Limpa o buffer de saída do terminal ativo |
| Matar Terminal | - | Encerra o processo do terminal ativo |
| Executar Seleção | - | Envia o texto selecionado no editor para o terminal |
Pressionar F5 executa o arquivo ativo no terminal usando o Code Runner (src/ui/code_runner.py), que suporta 22 linguagens com comando pré-configurado (customizável via Ferramentas → Code Runners):
| Linguagem | Comando |
|---|---|
| Python | <python do Codis> <arquivo> |
| JavaScript | node <arquivo> |
| TypeScript | ts-node <arquivo> |
| Ruby | ruby <arquivo> |
| PHP | php <arquivo> |
| Go | go run <arquivo> |
| Rust |
cargo script <arquivo> (requer cargo-script) |
| Java |
java <nome-sem-extensão> (requer compilação prévia) |
| Kotlin | kotlin <arquivo> |
| Swift | swift <arquivo> |
| Lua | lua <arquivo> |
| Perl | perl <arquivo> |
| Bash | bash <arquivo> |
| PowerShell | powershell -File <arquivo> |
| R | Rscript <arquivo> |
| Julia | julia <arquivo> |
| Dart | dart run <arquivo> |
| Scala | scala <arquivo> |
| Elixir | elixir <arquivo> |
| Haskell | runhaskell <arquivo> |
| C (gcc) | gcc <arquivo> -o <nome> && ./<nome> |
| C++ (g++) | g++ <arquivo> -o <nome> && ./<nome> |
Para outras linguagens sem runner configurado, a barra de status exibe um aviso sugerindo configurar um runner customizado, ou use o terminal diretamente.
Selecione um trecho de código e use Terminal → Executar Seleção para enviar diretamente ao terminal ativo. Se nenhum texto estiver selecionado, envia a linha atual.
Ao abrir um workspace, o terminal é iniciado no diretório raiz do workspace. Se nenhum workspace estiver aberto, o terminal inicia no diretório $HOME.
Ao abrir um workspace após o terminal já estar ativo, o diretório de trabalho é atualizado automaticamente (set_cwd).
Em alguns casos, pode ser preciso confirmar o comando para entrar no diretório (embora nos testes isso só tenha ocorrido algumas vezes em powershell).
O Codis suporta múltiplas instâncias de terminal simultâneas. Cada instância mantém seu próprio processo de shell, histórico e diretório de trabalho.
Navegue entre instâncias usando as abas internas do terminal ou criando novas via Terminal → Novo Terminal.
O Codis possui easter eggs ocultos que podem ser ativados via comandos especiais no terminal. Use o prefixo /codis seguido de um código secreto. Os easter eggs ativam efeitos visuais e animações especiais na interface.
Dica Direta: Konami Code.
Quando o K-UI está ativo, o painel de Terminal pode ser "despluggado" para uma janela flutuante independente:
- Clique com botão direito na aba "Terminal" no painel inferior
- Selecione ⊞ Despluggar 'terminal'
A janela flutuante pode ser movida e redimensionada livremente. Para reancorá-la, clique com botão direito na aba novamente.
Ver K-UI para mais detalhes sobre painéis flutuantes.
Começando
Editando
- Editor
- Inteligência do Editor
- KDocs
- Linting & LSP
- Debug
- Git
- Terminal
- Workspace & Produtividade
- Utilitários de Desenvolvimento
Assistente e conectividade
Ferramentas e extras
- Recursos Avançados
- Recursos Exclusivos
- K-UI
- Sistema & Performance
- Backups, Lixeira & Arquivos
- Painel de Saída
- Acessibilidade
- Editor de Imagens (Paint)
- Utilitários Pessoais
- Incorporar Programas e Preview Web
- DOOM Embutido
Para quem desenvolve
Projeto