Terminal
O DR-Terminal inclui o seu próprio emulador VT100/xterm escrito do zero em Kotlin — sem WebView. Suporta xterm-256color, o buffer alternativo (vim/less/nano), área de transferência OSC 52, eventos de foco e mouse tracking (mc, htop).
Teclado e atalhos
| Atalho | Acção |
|---|---|
| Ctrl+C — com texto seleccionado | Copia a selecção para a área de transferência. Sem selecção, o habitual SIGINT vai para o processo remoto. |
| Enter — com texto seleccionado | Atalho alternativo de cópia (útil em teclados sem Ctrl). |
| Clique direito / menu Copiar | Menu de contexto após selecção — sempre disponível. |
| Ctrl+V | Colar. Conteúdo multilinha abre um diálogo de confirmação Paste multi-line. |
| Barra de atalhos | ESC, Tab, Ctrl, setas, F1–F10, Home/End, PgUp/PgDn, Insert — útil em móvel. |
| Tamanho de fonte | Botões A+ / A- (móvel) ou menu da toolbar (desktop) — sem atalho de teclado. |
Seleccionar, copiar, colar
Seleccione texto arrastando com o rato ou o dedo. Ao libertar aparece um menu de contexto com Copiar. Duplo clique selecciona uma palavra, triplo clique uma linha.
OSC 52 permite a programas remotos (tmux, vim, fzf) copiar para a área de transferência do sistema através de uma sequência de escape — bidireccional.
Colar multilinha: quando a área de transferência contém quebras de linha, aparece um diálogo de pré-visualização Paste multi-line — protege contra colar comandos não revistos.
Scrollback e histórico
O buffer de scrollback guarda até 1000 linhas. Roda ou arrasto táctil faz scroll; o cursor sai correctamente da área visível (comportamento xterm), e qualquer selecção desloca-se com o texto.
Limpar histórico (menu do terminal) esvazia o buffer sem fechar a sessão.
No bordo direito do terminal aparece uma barra de deslocação — pode agarrá-la com o rato para percorrer o histórico. A velocidade de deslocação da roda configura-se em Definições → Terminal (linhas por cada toque da roda).
Buffer alternativo (apps em ecrã inteiro)
Programas como vim, less, nano, htop, mc passam para o buffer alternativo — um ecrã separado que desaparece ao sair sem poluir o scrollback principal.
Fonte, tema, realce
- Tamanho de fonte — botões A+/A- na barra do terminal ou menu da toolbar; gama 6–72 pt.
- Tema da UI — claro / escuro / sistema (toda a aplicação, não o terminal).
- Tema do terminal — veja a secção Sidebar → Theme abaixo; o tema é por alias.
- Regras de realce — Definições → Terminal → Realce de output. Adicionar regex + cor, por ex. pintar
ERRORde vermelho.
Histórico de comandos e autocompletar
Cada conexão guardada lembra o seu histórico de comandos (se Guardar histórico estiver activo). Seta para cima recupera comandos anteriores, e o campo de autocompletar sugere do histórico do lado do servidor.
Sidebar (painel direito) — History / Complete / Theme
À direita do terminal (Desktop / tablet) existe um painel dobrável com três separadores. Abre-o com a seta no bordo direito; ajusta a largura arrastando o bordo esquerdo. O estado é por alias — cada conexão guardada lembra o seu separador e largura.
- History — comandos escritos recentemente. Um clique escreve o comando no terminal; o interruptor ao lado decide se é logo executado com Enter.
- Complete — sugestões de autocompletar em tempo real (com base no histórico do servidor). Podem ser silenciadas por alias (ícone de sino).
- Theme — aparência do terminal. Ver secção abaixo.
Theme — temas do terminal (435 esquemas)
O tema é por alias — cada conexão tem o seu próprio fundo, cor do texto e paleta ANSI de 16 cores (os mesmos índices usados por ls --color: standard 0–7 + bright 8–15).
- Catálogo integrado de 435 temas — o campo Search… filtra por nome. Cada linha mostra fundo, cor do texto e uma faixa de 16 swatches. Um clique aplica o tema instantaneamente.
- Custom (this alias) — edição manual de fonte, fundo, cor do texto e dos 16 slots ANSI. Cada slot tem o seu próprio reset (⟲) para o valor padrão; toda a paleta tem um reset separado.
- As pastas azuis em
ls --colorsão ANSI 4 (BLUE) ou 12 (BRIGHT_BLUE) — para alterá-las, escolha outro tema ou edite esses dois swatches.
Os temas provêm da colecção edcet/terminal-themes (MIT). Script de refresh: tools/regenerate-themes.py.