Índice da documentação

// Documentação do Singularity

O editor de código

Abre, modifica e guarda os ficheiros dos teus projetos sem sair do Singularity. O editor assenta no CodeMirror 6 e cada ficheiro ocupa um único separador no deck.

Abrir um ficheiro

Clica num ficheiro na vista Code do navegador. O Aperture e os resultados que apontam para uma linha também podem abrir diretamente o ficheiro no sítio certo. A partir de uma comparação Git, o diff abre-se num separador dedicado: a sua cópia de trabalho, à direita, é editável.

Um ficheiro corresponde a um separador file:<caminho> do deck. Se voltares a abrir o mesmo caminho, o Singularity traz para primeiro plano o separador existente em vez de o duplicar. Os separadores e os rascunhos não guardados são restaurados entre sessões.

Um ficheiro TypeScript aberto num separador do editor do Singularity
Um ficheiro aberto no deck, com o seu caminho apresentado na barra superior do editor.

O editor

O CodeMirror 6 fornece realce de sintaxe consoante a extensão, números de linha, dobragem de código, guias de indentação, correspondência e fecho automático de parênteses, bem como o realce das ocorrências de uma palavra. O editor suporta, entre outras, JavaScript e TypeScript, HTML, CSS, JSON, Python, Markdown, Go e Rust.

A seleção múltipla e os cursores múltiplos não estão disponíveis. As funcionalidades que dependem de um servidor de linguagem são descritas separadamente na documentação LSP.

Guardar

Prime Cmd+S no macOS ou Ctrl+S no Windows e no Linux. Uma alteração marca o separador como não guardado; o indicador desaparece depois de uma escrita bem-sucedida. O rascunho também é mantido na sessão enquanto for diferente do conteúdo no disco.

A monitorização do navegador atualiza a árvore quando o disco muda, e o editor deteta que um ficheiro aberto foi eliminado quando a janela volta ao primeiro plano. Em contrapartida, não funde nem recarrega automaticamente o conteúdo de um ficheiro aberto modificado por outro programa: guardar escreve o buffer atual. Verifica a alteração externa antes de substituir o ficheiro.

A barra de estado e o inspetor

A barra por cima do conteúdo mostra o percurso espaço de trabalho › projeto › pastas › ficheiro e, em seguida, os símbolos atuais quando um servidor de linguagem os fornece. O inspetor do editor completa esta informação com a posição linha/coluna do cursor, a linguagem detetada, o número de linhas, o tamanho e a codificação apresentada, atualmente UTF-8.

A codificação é informativa: ainda não existe um seletor para a alterar.

Pesquisar e substituir no ficheiro

Cmd/Ctrl+F abre a pesquisa no ficheiro ativo; Cmd/Ctrl+H abre diretamente a substituição. A barra oferece distinção entre maiúsculas e minúsculas, palavra inteira e expressões regulares, mostra o número de correspondências e permite passar ao resultado anterior ou seguinte.

Este comando limita-se ao ficheiro ativo. Para pesquisar em todo o projeto, usa a pesquisa global; a substituição em vários ficheiros não está disponível.

Editar a partir da revisão

Um ficheiro aberto a partir do separador Review é editável enquanto o run ainda tiver um caminho de worktree registado: as tuas alterações aplicam-se então a essa cópia de trabalho isolada. Sem um caminho de worktree utilizável, o ficheiro é apresentado só de leitura para evitar escrever num local ambíguo.

O fluxo de aprovação, pedido de alterações e rejeição é detalhado em A revisão de código dos runs.

Limitações conhecidas

  • Sem vista dividida do editor, minimapa, blame Git em linha nem percurso de navegação (breadcrumbs) clicável.
  • Sem cursores múltiplos, seleção múltipla com Cmd+clique, sticky scroll nem alternância da quebra de linha pelo teclado.
  • Sem paleta Cmd/Ctrl+P dedicada aos ficheiros; usa o Aperture, o navegador ou a pesquisa global.
  • Os ficheiros com mais de 5 MB são lidos por blocos e permanecem só de leitura.
  • Sem seleção de codificação, substituição em vários ficheiros nem resolução de conflitos com uma alteração externa.