Selecionando trechos de texto

Seleção Múltipla

A capacidade de selecionar trechos de texto de forma flexível é um dos principais recursos do Sublime Text. A seleção múltipla nos permite manipular texto usando mais de um cursor e mais de uma região selecionada. O uso desse recurso pode nos poupar bastante tempo, eliminando tarefas repetitivas com apenas algumas teclas de atalho. A seguir, veremos em detalhes as funcionalidades de seleção de texto oferecidas pelo editor.

Seleção Simples

Select All (Ctrl+A)
Seleciona todo o conteúdo da aba ativa.
Expand Selection to Line (Ctrl+L)
Seleciona a linha na qual o cursor está posicionado.
Expand Selection to Word (Ctrl+D)
Seleciona a palavra na qual o cursor está posicionado.
Expand Selection to Paragraph
Seleciona o parágrafo no qual o cursor está posicionado.
Expand Selection to Scope (Ctrl+Shift+Espaço)
Seleciona todo o escopo no qual se localiza o cursor no momento. O escopo varia de acordo com a sintaxe do tipo de arquivo que está sendo editado. Por exemplo, quando estamos editando um arquivo de texto puro (plain text) e posicionamos o cursor em um determinado parágrafo, o Sublime Text considera que o cursor está em um escopo chamado text.plain meta.paragraph.text.
Expand Selection to Brackets (Ctrl+Shift+M)

Seleciona todo o conteúdo que está entre chaves, colchetes ou parênteses em relação à posição do cursor. Por exemplo, vamos considerar uma linha como:

d = {a: 1, b: [2.5, 'abc', (1, 2, 3)]}

Se o cursor estiver posicionado entre os parênteses ao executar o comando, a seleção será 1, 2, 3. Caso esteja fora dos parênteses, mas entre os colchetes, será 2.5, 'abc', (1, 2, 3). Por fim, se estiver fora dos colchetes mas entre as chaves, o texto selecionado será a: 1, b: [2.5, 'abc', (1, 2, 3)].

Expand Selection to Indentation (Ctrl+Shift+J)
Seleciona todo o bloco composto pelas linhas que fazem parte do mesmo nível de recuo de texto ou indentação de código-fonte.
Expand Selection to Tag (Ctrl+Shift+A)
Seleciona todo o conteúdo entre duas tags XML – ou formatos derivados, como o HTML – relativas à posição do cursor.

Seleção Múltipla

Split into Lines (Ctrl+Shift+L)
Quando temos uma região selecionada que compreende mais de uma linha, executar este comando faz com que a seleção se divida em várias regiões selecionadas distintas, uma para cada linha. Para cada uma delas é criado um novo cursor, que fica automaticamente posicionado ao final da linha ou da seleção original.
Add Previous Line (Shift+Alt+Cima)
Cria um novo cursor na linha imediatamente anterior à linha na qual o cursor está posicionado, permitindo selecionar texto em múltiplas linhas.
Add Next Line (Shift+Alt+Baixo)
Cria um novo cursor na linha imediatamente posterior à linha na qual o cursor está posicionado, permitindo selecionar texto em múltiplas linhas.
Single Selection (Esc)
Retorna ao modo de seleção simples.

Sobre Rodrigo Amaral

Rodrigo Amaral é o fundador do Sublime Text Dicas. Analista de TI por profissão e desenvolvedor de software por paixão, nas horas vagas dedica-se a colaborar com comunidades de tecnologia com foco em Python e software open source em geral. Sempre que possível, escreve sobre esses e outros assuntos em http://rodrigoamaral.net.

15 Comentários

  1. Horácio Dias

    Valeu cara me ajudou essas dicas, o sublime quebra muito o galho.
    Falou

    Responder

  2. Muito bom esse post! Eu estava precisando editar um arquivo csv e colocar aspas e ; em todas 700 linhas e queria fazer de uma vez e deu certo graças essas dicas de seleção! 😀

    Responder

  3. Gostei do post, tenho uma dica para melhorar o post para os usuários de OSX

    A maioria dos CTRL no Mac é COMMAND com algumas excessões, por exemplo o CTRL+SHIFT+M No OSX é CTRL mesmo e não COMMAND

    Algo legal de notar do COMMAND+D é que se você pressionar uma vez, ele seleciona a palavra atual, porém a partir do momento que você tem qualquer coisa selecionada, você pode usar COMMAND+D para selecionar a próxima ocorrência do que está selecionado atualmente em forma de multi-seleção o que pode ser muito útil para alterar várias linhas com uma determinada classe por exemplo.

    Outra coisa interessante, é que o COMMAND+U é como se fosse um COMMAND+Z só que de seleção de texto, se você foi selecionando individualmente blocos de código e quer voltar só um item que você selecionou e continuar com o resto selecionado, você usa o COMMAND+U. E se você desfez com COMMAND+U ou “desselecionou” uma seleção por acidente e quer “re-seleciona-la” basta usar o COMMAND+SHIFT+U

    Bom, acho que era isso que eu tinha pra agregar para este post 🙂

    Até mais!

    Responder
  4. Elton

    Uso muito no vima seleção por colunas, como fazer isso no st sem usar o mouse?

    Responder

    1. Olá, Elton!

      Entendo que podemos considerar o recurso de seleção múltipla (múltiplos cursores) como um equivalente à funcionalidade de seleção por colunas do vim.

      Para fazer esse tipo de seleção vertical usando o teclado, basta usar Shift+Alt+Cima e Shift+Alt+Baixo (Linux) para adicionar à seleção linhas acima ou abaixo da posição do cursor. Depois é só manter o Shift pressionado e usar as teclas de direção para ampliar ou reduzir horizontalmente a área selecionada.

      Espero que seja útil para o que você precisa.

      Responder
      1. elton

        Muito obrigado Rodrigo, depois da sua dica, eu passei a utilizar o Sublime diretão!

        Mas tenho algumas outras dúvidas. Vou colocar aqui mesmo, se preferir, eu transfiro para outro local ou meio (email).

        1. Como eu faço o Sublime entender que minhas funções são iniciadas por “FUNCTION” e desta forma conseguir ir diretamente para o código/corpo da função? Sei que isso é possível com classes, etc. Mas imagino que de para configurar para qq linguagem/sintaxe.

        2. Quando utilizo a seleção por múltiplos cursores e preciso ‘voltar’ uma linha (ou seja marquei linhas demais e preciso desmarcar a última ou a primeira)

        3. Ainda com a seleção múltipla, como ignoro as linhas em branco?

        Muito obrigado!

        Responder
  5. wendel

    boa noite rodrigo, não consegui habilitar o
    (colum text mode) no meu Sublime Text Dicas não sei se voce
    explicou no qui acima tentei mas não consegui.
    Voce pode me explicar como faço para que funcione ?

    Responder
  6. Jack

    Olá, não consegui fazer isso no Windows.

    Estranho que consigo fazer pelo menu, mas não pelo atalho no teclado.

    Responder
  7. michelle

    Olá. acabo de instalar o sublime text e estou com dúvidas.
    Preciso selecionar de uma linha inteira de texto apenas uma parte, descendo para as linhas de baixo igualmente.
    Não posso postar uma imagem aqui? Ficaria mais fácil.

    Trechos de texto, apenas uma coluna. E não sei como fazer isto.

    Help me?

    Responder

  8. olá. Preciso selecionar um texto (uma parte do texto) e ir descendo nas linhas.
    Poderia explicar caso houvesse uma opção aqui para anexar um arquivo e mando um print.

    Preciso selecionar um trecho do texto, uma coluna e ignorar a parte da direita das mesmas linhas.

    Estou muitooo precisando disto. Se precisar me ajudar, agradeço.
    Acabo e baixar o sublimetext que vi tem com fazer isto, mas não sei como.
    obrigada.
    Michelle

    Responder

  9. Gostei muito do seu post, vou acompanhar o seu blog/site.
    Este tipo de conteúdo tem me ajudado muito no desenvolvimento pessoal.
    Obrigado
    Manuela Silva

    Responder

Deixe um comentário para Rodrigo Amaral Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.