Terminal
O DR-Terminal traz seu próprio emulador VT100/xterm escrito do zero em Kotlin — sem WebView. Ele suporta xterm-256color, o buffer alternativo (vim/less/nano), a área de transferência OSC 52, eventos de foco e rastreamento de mouse (mc, htop).
Teclado e atalhos
| Atalho | Ação |
|---|---|
| Ctrl+C — quando há texto selecionado | Copia a seleção para a área de transferência. Sem seleção, o SIGINT normal chega ao processo remoto. |
| Enter — quando há texto selecionado | Atalho de cópia alternativo (útil em teclados sem Ctrl). |
| Clique direito / menu Copiar | Menu de contexto após a seleção — sempre disponível. |
| Ctrl+V | Colar. Conteúdo de várias linhas na área de transferência abre um diálogo de confirmação de colagem multilinha. |
| Shift+Insert | Colar — memória muscular clássica do X11/Windows. Insert sozinho ainda chega ao shell. |
| Shift+Delete | Copia a seleção e a limpa (estilo recortar). |
| Ctrl+F | Abre a barra de busca (veja Buscar na saída). O shell nunca vê a tecla. |
| Ctrl+Shift+S | Abre o seletor de snippets (veja Snippets). Ctrl+S sozinho ainda chega ao shell. |
| Barra de atalhos | esc, ctrl, tab, setas, símbolos comuns de shell, a tecla snip e o alternador ⌨ — úteis no celular. As teclas de função e navegação vivem na camada fn do teclado DevOps e na fileira opcional de teclas F. |
| Tamanho da fonte | Seletor A- / A+ no menu do terminal; faixa de 8–32 pt. |
No macOS, Cmd funciona onde quer que Ctrl esteja listado acima: Cmd+C, Cmd+V, Cmd+F e Cmd+Shift+S se comportam como seus equivalentes com Ctrl.
Teclado DevOps (Android e iOS)
Os teclados do sistema lutam contra você no terminal: a autocorreção estraga sudo -rf, os símbolos de shell ficam duas camadas adiante e layouts não latinos muitas vezes nem têm ASCII. O DR-Terminal traz seu próprio teclado DevOps sempre-ASCII, desenhado pelo app e enviando as teclas direto ao terminal — o IME do sistema nunca as vê.
- Retrato — um dock clássico na parte de baixo da tela.
- Paisagem — modo split: dois grupos no alcance dos polegares nas bordas esquerda e direita, desenhados como vidro translúcido sobre o terminal, então a largura inteira continua mostrando sua sessão.
Camadas: minúsculas, maiúsculas (Shift), números, símbolos de shell (| ~ $ & ' " \ …`) e uma camada fn/nav (F1–F12, setas, Home/End, PgUp/PgDn). Ctrl/Alt/Shift são aderentes: um toque os arma para a próxima tecla, um toque duplo trava. Segure ⌫, setas ou espaço para repetição; um toque longo em teclas com uma pequena marca no canto dá o caractere alternativo.
- A alça (pílula) no topo alterna FULL ↔ MINI — MINI mantém só o essencial (Esc, Tab, Ctrl, setas, ⌫, ↵) para sessões de htop/logs. O modo paisagem lembra o próprio estado e começa em MINI.
- Arraste a alça para mover um grupo; ele gruda na borda mais próxima. Solte um grupo sobre o outro para fundi-los em um único teclado flutuante; a pílula de divisão os separa de novo.
- Deslize para baixo sobre as teclas para esconder o teclado; um botão ⌨ flutuante o traz de volta. A tecla ⌨ muda para o teclado do sistema quando você precisa de acentos ou emojis.
Configurações → Teclado (mobile): Teclado padrão — Auto escolhe o teclado DevOps quando o idioma do sistema é não latino (árabe, hebraico, CJK…), senão o IME do sistema; Layout — Auto/QWERTY/QWERTZ/AZERTY; controles de Opacidade e Tamanho das teclas; Mostrar teclas F — uma fileira F1–F10 sempre visível acima do teclado, útil para fluxos com mc/htop. Todas as preferências do teclado viajam no backup criptografado exportado de um telefone ou tablet.
Selecionar, copiar, colar
Desktop: arraste com o mouse para selecionar. Clique duplo seleciona uma palavra, clique triplo uma linha. Soltar copia pelos atalhos acima; o clique direito abre um menu.
Android e iOS: pressione e segure em qualquer lugar do terminal para iniciar uma seleção, depois arraste para estender e solte para copiar — o texto vai para a área de transferência do sistema. Um toque curto ainda passa direto para o shell; um deslize ainda rola o histórico, então os gestos habituais continuam funcionando.
- Ícone de colar na barra superior do terminal — um toque cola a área de transferência na posição do cursor. Se não houver nada na área de transferência, é exibido um snackbar neutro Nada para colar.
- Selecionar texto no menu do terminal — uma caixa de seleção que mantém o modo de seleção ativo até você desligá-lo, de modo que cada arrasto seleciona em vez de rolar ou passar o toque adiante.
- Pressionar e segurar na linha do prompt (a linha em que o cursor está, e somente quando você não está rolando para dentro do histórico) cola em vez de iniciar uma seleção — natural quando você só quer soltar a área de transferência onde está digitando.
O OSC 52 permite que programas remotos (tmux, vim, fzf) copiem para a área de transferência do seu sistema através de uma sequência de escape — bidirecional.
Colagem multilinha: quando sua área de transferência contém quebras de linha, você vê um diálogo de pré-visualização de colagem multilinha — protege contra colar comandos que você não inspecionou.
Rolagem e histórico
O buffer de rolagem comporta até 1000 linhas. A roda ou o arrasto por toque rola; o cursor sai corretamente da área visível (comportamento do xterm) e qualquer seleção rola junto com o texto.
Limpar histórico fica na aba Histórico da barra lateral e apaga o histórico de comandos salvo daquela conexão — não toca na rolagem exibida na tela.
Uma barra de rolagem aparece na borda direita do terminal (Desktop) — segure-a com o mouse para percorrer o histórico; no Android e iOS a rolagem é por toque. A velocidade de rolagem da roda é configurável em Configurações → Terminal (linhas por clique único da roda).
Buffer alternativo (aplicativos em tela cheia)
Programas como vim, less, nano, htop, mc mudam para o buffer alternativo — uma tela separada que desaparece ao sair sem poluir a rolagem principal.
Buscar na saída
Pressione Ctrl+F (Cmd+F no macOS) para abrir a barra de busca. Ela pesquisa a rolagem ao vivo, destacando cada ocorrência e navegando entre elas. O destaque é uma sobreposição em tempo de renderização — ele nunca injeta nada no fluxo SSH.
Fonte, tema, destaque
- Tamanho da fonte — o seletor A-/A+ no menu do terminal ou o controle deslizante em Configurações → Aparência; faixa de 8–32 pt. A fonte Personalizada na aba Tema da barra lateral permite adicionalmente 6–72 pt por apelido.
- Tema da interface — claro / escuro / sistema (o aplicativo inteiro, não o terminal).
- Tema do terminal — veja a seção Tema abaixo; o tema é por apelido.
- Regras de destaque — Configurações → Terminal → Destaque de saída. Adicione regex + cor, por exemplo, pinte
ERRORde vermelho.
Snippets
Os Snippets são modelos de comando reutilizáveis que você pode disparar em qualquer sessão. Um modelo pode conter marcadores tipados — ping -c {count:int=4} {host:ip} — e executar um snippet desses abre um pequeno diálogo pedindo os valores (marcadores int, ip, bool e enum recebem campos e validação correspondentes). Um snippet sem marcadores é executado imediatamente. Executar imediatamente (enviar Enter) decide se o Enter é enviado por você ou se o comando apenas aparece no prompt para edição.
Maneiras de executar um:
- Ctrl+Shift+S (Cmd+Shift+S no macOS) — um seletor com busca conforme você digita; Enter executa a primeira correspondência.
- Snippets no menu do terminal — o mesmo seletor, sem teclado.
- A aba Snippets na barra lateral do terminal — usados recentemente primeiro, um clique para executar, além de um atalho para o editor.
- A tecla snip fixada na barra de atalhos do celular e no teclado DevOps, cujo modo acoplado também oferece uma camada de blocos de snippets — uma grade amigável ao toque com seus snippets recentes bem à vista.
Cada snippet tem um escopo (Visível para): Todos os hosts, um Grupo ou um único Host. Um filtro opcional de Sistemas (Debian, RHEL, Arch, macOS…) o restringe ainda mais, de modo que snippets de apt só apareçam em hosts detectados como da família Debian — a detecção vem da sonda de login (veja Informações do host abaixo). Mostrar apenas se disponível oculta adicionalmente um snippet quando se confirma que seu comando não existe no host. Sessões sem um host SSH (local, serial, Telnet) veem apenas os snippets globais.
Gerencie os snippets em Configurações → Terminal → Snippets: adicione, edite, duplique e exclua, defina escopo, sistemas e a opção de executar imediatamente. Um catálogo integrado com mais de cem snippets prontos — por sistema (Debian, RHEL, Arch, Alpine, SUSE, BSD, macOS) além de conjuntos de Docker, rede, armazenamento e ferramentas — vem pré-carregado na primeira execução; edite-os ou exclua-os como se fossem seus.
Histórico de comandos e autocompletar
Cada conexão salva lembra seu histórico de comandos (se Salvar histórico estiver ativado). A seta para cima recupera comandos anteriores, e o campo de autocompletar sugere nomes de comandos disponíveis no servidor — completamento ao vivo do shell, distinto do histórico do que você digitou.
Informações do host (sinais vitais ao vivo)
Após o login em uma sessão SSH, o aplicativo sonda discretamente o host — nome do SO, modelo da CPU e número de núcleos — e começa a coletar sinais vitais ao vivo: carga média, memória, swap e uso de disco por ponto de montagem, cada um desenhado com uma barra de uso que fica âmbar acima de 75% e vermelha acima de 90%.
- A aba Host da barra lateral do terminal (a aba mais à esquerda, e a padrão para sessões SSH) mostra tudo de relance.
- As mesmas linhas aparecem no diálogo Informações da conexão.
- Configurações → Terminal → Monitorização de recursos (CPU/RAM/disco) liga ou desliga a coleta globalmente e define o intervalo de atualização (5–300 s). O formulário de conexão pode substituir o intervalo por host, e seu menu Verificação do sistema ao iniciar sessão escolhe com que frequência a sonda completa é executada: cada conexão, uma vez por dia, uma vez por semana ou desativada.
Abas de sessão
Cada sessão — SSH, SFTP, local, serial, Telnet — vive em uma aba. Pressione e segure (celular) ou clique com o botão direito (desktop) em uma aba, ou em um cartão da lista de Sessões ativas, para abrir seu menu: Renomear, Informações da conexão, Reiniciar sessão e Fechar aba. Reiniciar sessão derruba a conexão e reconecta do zero, mantendo a aba — útil após reiniciar um servidor. Quando uma sessão remota cai, o menu do terminal também ganha uma entrada Reconectar que restabelece a conexão no lugar (terminais locais não a oferecem — abra um novo em vez disso).
Barra lateral (painel direito) — Host / Histórico / Completar / Snippets / Tema
À direita do terminal (Desktop / tablet) há um painel recolhível com cinco abas. Abra-o com a seta na borda direita; redimensione arrastando a borda esquerda. O estado é por apelido — cada conexão salva lembra sua aba e largura.
- Host — a aba padrão para sessões SSH: sistema detectado, CPU e sinais vitais ao vivo. Veja Informações do host acima.
- Histórico — comandos digitados recentemente. Clicar digita o comando no terminal; o botão ao lado dele decide se deve enviar automaticamente com Enter. Limpar histórico também fica aqui.
- Completar — sugestões ao vivo de nomes de comandos vindas do completamento do shell do servidor. Pode ser silenciado por apelido (ícone de sino).
- Snippets — seus snippets para este host, usados recentemente primeiro. Veja Snippets acima.
- Tema — aparência do terminal. Veja a seção abaixo.
Tema — temas de terminal (435 esquemas)
O tema é por apelido — cada conexão tem seu próprio fundo, primeiro plano e paleta ANSI de 16 cores (os mesmos índices que o ls --color usa: padrão 0–7 + claros 8–15).
- Catálogo integrado de 435 temas — o campo Buscar… filtra por nome. Cada linha mostra fundo, primeiro plano e uma faixa de 16 amostras. Clicar aplica o tema instantaneamente.
- Personalizado (este apelido) — no desktop, a barra lateral também expõe a edição manual de fonte, fundo, primeiro plano e os 16 slots ANSI. Cada slot tem seu próprio reset (⟲); a paleta inteira tem um reset separado.
- Diretórios em azul no
ls --colorsão ANSI 4 (BLUE) ou 12 (BRIGHT_BLUE) — para alterá-los, escolha outro tema ou edite essas duas amostras.
Android e iOS: toda a barra lateral do desktop é substituída por um único ícone de paleta na barra superior do terminal. Toque nele para uma folha inferior com o mesmo catálogo de 435 temas, pesquisável e com pré-visualizações de amostras ao vivo. Tocar em uma linha aplica o tema e fecha a folha para que você veja o resultado imediatamente; o botão Redefinir no topo descarta quaisquer substituições, fazendo o apelido voltar aos seus padrões.
Os 435 temas integrados vêm da coleção de código aberto edcet/terminal-themes (MIT).