Selecionar texto no Terminal do Windows

É simples selecionar texto no Terminal do Windows, mas há muitos recursos adicionais nesse espaço que o tornam ainda melhor.

Suporte ao mouse

Clique com o botão esquerdo e arraste o mouse para criar uma seleção. Clicar duas vezes expande a seleção por palavra, enquanto clicar três vezes expande a seleção por linha.

Ao manter a tecla Alt pressionada, você criará uma seleção de bloco (em vez de uma seleção de linha). As seleções de bloco criam uma região retangular que não encapsula até o fim da linha.

Ao manter a tecla Shift pressionada, você expandirá explicitamente a seleção para um ponto específico no terminal sem a necessidade de clicar e arrastar.

Depois de fazer uma seleção, você terá algumas opções. Um único clique à esquerda limpará sua seleção. Se você realmente quiser usá-la, clique com o botão direito do mouse para copiar o texto selecionado em sua área de transferência e limpar a seleção. Se clicar com o botão direito do mouse novamente, o conteúdo da área de transferência será colado no terminal.

Observação

O Terminal do Windows dá suporte à entrada do mouse em aplicativos WSL (Subsistema do Windows para Linux), bem como aplicativos do Windows que usam entrada do VT (terminal virtual). Isso significa que aplicativos como tmux e Midnight Commander reconhecerão quando você selecionar itens na janela do Terminal. Se um aplicativo estiver no modo de mouse, você poderá manter Shift pressionado para fazer uma seleção em vez de enviar a entrada VT.

Suporte de teclado

É possível criar uma seleção usando as ações selectAll ou markMode. A ação selectAll seleciona todo o texto no buffer. A ação markMode alterna um modo especial em que uma seleção é criada na posição do cursor no terminal. Quando estiver no modo de marca, será possível usar as seguintes associações de tecla não configuráveis para mover o cursor:

Associação de tecla Result
Teclas de direção Mover por caractere na direção especificada
CTRL+Seta para a esquerda Mover para o início da palavra anterior ou existente
CTRL+Seta para a direita Mover para o fim da próxima palavra ou da palavra existente
Início Mover o cursor para o início da linha
End Mover o cursor para o fim da lista
Pgup Mover o cursor para cima por uma página (visor)
Pgdn Mover o cursor para baixo por uma página (visor)
Ctrl+Home Mover o cursor para o início do buffer
Ctrl+End Mover o cursor para o fim do buffer
Enter Copiar a seleção ativa

Quando estiver no modo de marcação, você pode usar Tab ou Shift+Tab para navegar até o próximo hiperlink ou hiperlink anterior no buffer. O Terminal do Windows pode detectar hiperlinks automaticamente se experimental.detectUrls estiver habilitado.

Independentemente de estar no modo de marca, você pode expandir uma seleção existente usando as seguintes associações de tecla não configuráveis:

Associação de tecla Result
Shift + teclas de direção Expandir por caractere na direção especificada
Ctrl+Shift+Seta para a Esquerda Expandir para o início da palavra anterior ou existente
Ctrl+Shift+Seta para a Direita Expandir para o fim da próxima palavra ou da palavra existente
Shift+Home Expandir o cursor para o início da linha
Shift+End Expandir o cursor para o fim da linha
Shift+Pgup Expandir o cursor para cima por uma página (visor)
Shift+Pgdn Expandir o cursor para baixo por uma página (visor)
Ctrl+Shift+Home Expandir o cursor para o início do buffer
Ctrl+Shift+End Expandir o cursor para o fim do buffer

Use a ação toggleBlockSelection para transformar a seleção existente em uma seleção de bloco.

Qualquer seleção criada ou modificada pelo teclado também exibe marcadores de seleção para indicar qual final da seleção está sendo movido ativamente. É possível usar a ação switchSelectionEndpoint para começar a mover a outra extremidade da seleção.

Depois de fazer uma seleção, você terá algumas opções. É possível usar a tecla ESC para limpar a seleção. Como alternativa, a maioria das entradas de tecla limpa a seleção e passa o evento de tecla diretamente para o shell subjacente. Se você realmente quiser usar o texto selecionado, poderá usar a ação copy para copiá-lo em sua área de transferência.

Copiar o texto selecionado

Conforme mencionado acima, o texto selecionado pode ser copiado com um clique com o botão direito do mouse ou a ação copy. No entanto, há várias configurações relacionadas à cópia de texto que você pode personalizar:

  • Copiar o texto formatado
    • É possível usar a configuração copyFormatting global para também copiar a formatação do texto selecionado para a área de transferência. Isso permite que você copie as informações de fonte do terminal, como cor de primeiro plano, cor da tela de fundo e fonte.
    • Se você quiser limitar a cópia da formatação para determinadas associações de tecla (ou comandos), poderá modificar o parâmetro copyFormatting em uma ação copy.
  • Copiar sem descartar a seleção de texto
    • Copie o texto sem descartar a seleção de texto definindo o parâmetro dismissSelection na ação copy como false.
  • Copiar como uma única linha
    • É possível copiar texto como uma única linha usando o parâmetro singleLine na ação copy.
  • Remover o espaço em branco à direita de seleções de bloco
    • É possível remover o espaço em branco à direita de uma seleção de blocos usando a configuração trimBlockSelection global.

Você também pode usar a configuração copyOnSelect global para que o texto recém-selecionado seja copiado automaticamente em sua área de transferência. Com essa configuração habilitada, se uma seleção estiver presente, clique com o botão direito do mouse nas cópias do terminal e cole o texto selecionado nele.

Observação

Se copyOnSelect estiver habilitado, modificar a seleção usando o teclado não copiará automaticamente o texto recém-selecionado. Será necessário copiar manualmente o texto usando a ação copy ou clicando com o botão direito do mouse no terminal.

Personalizar a aparência das seleções

Os esquemas de cores permitem personalizar a cor da seleção usando a propriedade selectionBackground em um esquema de cores. Como alternativa, você pode substituir a cor da seleção para um perfil específico usando a configuração de perfil selectionBackground.

Personalizar delimitadores de palavras

Conforme mencionado acima, clicar duas vezes e usar Ctrl+Shift + teclas de direção (ou Ctrl + teclas de direção no modo de marca) permite a navegação por palavra. No entanto, as palavras podem ser separadas por mais do que apenas espaço em branco. É possível personalizar esses limites de palavras usando a configuração wordDelimiters global.