Análise do TextMate 2

Atenção! Essa postagem foi escrita há mais de 2 anos. Na informática tudo evolui muito rápido e algumas informações podem estar desatualizadas. Embora o conteúdo possa continuar relevante, lembre-se de levar em conta a data de publicação enquanto estiver lendo. Caso tenha sugestões para atualizá-la, não deixe de comentar!

TextMate 2

Fala, meu povo! Faz tempo que não dou as caras por aqui, certo? Pois é… Mas hoje estou aqui para trazer boas novas!

O TextMate agora é software livre!

Sempre fui um fã do TextMate (apesar dele ser cult) e já tinha perdido as esperanças de que a versão 2 saísse, por isso estava dando uma chance pro SublimeText, mas agora com esse lançamento, definitivamente deixei ele de lado. A maior desvantagem que eu vejo no TM2 em relação ao Sublime é o fato de só rodar em Mac e, segundo os desenvolvedores, não haver nenhuma versão planejada para Linux (apesar de não ser impossível). Pois bem, nas próximas linhas vou relatar as primeiras impressões que tive com a versão aberta do TextMate 2.

Primeiras impressões

À primeira vista é possível perceber que poucas coisas mudaram. O número da linha agora recebe um destaque, não existe mais o logotipo do editor dentro da aplicação e agora há suporte à tela cheia.

Navegador de Projeto

Deus existe! Finalmente o editor tem um navegador de arquivos decente (desde a versão 1.5.10).

Agora os diretórios são organizados da maneira que devem ser (segundo a minha humilde opinião). Na primeira versão do editor era tudo organizado em ordem alfabética e não importava se era arquivo ou diretório. Agora na segunda versão os diretórios ficam antes e os arquivos depois.

Também foram adicionadas algumas opções interessantes. Existe um navegador de diretórios que lembra muito o do Gedit:

Também foram adicionados alguns botões de acesso rápido como: Home, Computer, SmartFolders e Favorites.

Outra coisa interessante é que agora o navegador responde aos comandos do Finder como: ⌥⌘N (novo arquivo), ⇧⌘N (novo diretório) ⌘⌫ (apagar arquivo/diretório) e por aí vai…

Vale a pena comentar também que agora é possível fazer distinção entre selecionarabrir um arquivo. Ao clicar no nome do arquivo ele será apenas selecionado. Para abri-lo você deve clicar no ícone do mesmo.

Manipulando arquivos

Agora eu quase chorei! A manipulação de arquivos ficou excelente! Veja por que:

Existe uma nova funcionalidade que permite, em apenas uma ação, salvar múltiplos arquivos com mesmos nomes ou extensões.

Por exemplo, se eu quiser criar os arquivos index.php config.php, só preciso colocar os nomes entre chaves: {index,config}.php.

Também é possível fazer isso com as extensões e até juntar os dois. Caso eu mande salvar o arquivo com o nome de {index,config}.{php,html} terei então quatro arquivos: index.php, index.html, config.php e config.html.

Outra coisa que ficou sensacional foi a habilidade de recortar arquivos. Já que a Apple não tem a capacidade de implementar isso no Finder, pelo menos dentro do TextMate 2 você vai poder fazer isso! Apenas selecione o arquivo a ser recortado e utilize ⌘X e cole com ⌘V. Simples! :D

Foi implementado o atalho ⌘X que permite que você recorte arquivos.

Editando o código

Algo sutil que eu percebi e que achei muito bacana é o fato do collapse code manter os dois brackets (na primeira versão só o bracket de abertura ficava visível).

A ênfase que é dada no bracket relacionado foi melhorada. Na primeira versão apenas o bracket inicial era indicado. Agora se você passa pelo inicial ele realça o final e vice-versa. O modo de realce também foi alterado para o clássico amarelinho do OSX.

Foi implementado um sistema de Multiple Carets. Como é um assunto bastante longo e foge do foco da minha análise, deixo um link para o blog oficial onde está bem explicadinho.

A seleção de nomes de variáveis via duplo-clique agora atinge também o sinal $. Na primeira versão era selecionado apenas o nome da variável e não o símbolo.

A opção de colar do histórico foi melhorada, permitindo que blocos maiores de código sejam visualizados. O atalho é ⌃⌥⌘V. Você também pode utilizar o ⌃⌥⌘F e utilizar o histórico de pesquisa.

A janela de busca recebeu uma repaginada total.

Opções novas como palavras completas e ignorar espaços em branco reduzem as vezes que você precisa utilizar expressões regulares para encontrar certo padrão. Também é possível escolher onde procurar: documento atual, seleção, arquivos abertos, diretório do projeto, outro diretório, etc.

Sistema de Pacotes

O TextMate 2 brindou-nos com um incrível sistema de pacotes. Agora tudo no editor é um pacote: ferramentas de compilação, suporte das linguagens, temas, ferramentas de testes, suporte a ferramentas de versionamento e outras parafernalhas.

Para saber mais sobre os Bundles (instalação, conversão de temas, etc) você pode ler esse post no blog oficial.

Configuração

Seguindo as novas tendências, a configuração mais aprofundada do editor é feita através de um arquivo de texto (chamado .tm_properties). O que ficou bacana é que você pode ter uma configuração global (na sua home) e configurações específica por projeto e até por diretório!

Para saber mais sobre como configurar o seu TextMate através deste arquivo, dê uma lida no blog oficial neste artigo.

Nesta página você pode encontrar mais explicações sobre os parâmetros, pode ler aqui. Também sugiro que dê uma olhada neste exemplo bem completo e comentado de um arquivo funcional.

Performance

O desempenho em relação à primeira versão do editor foi visivelmente melhorado. Algo que melhorou muito foi a maneira como o editor lida com arquivos que possuem linhas realmente MUITO longas, como scripts minificados. Enquanto a primeira versão apanhava na simples rolagem do código para os lados, nessa nova eu consegui ir até o final do código e inclusive editá-lo! Alguns pequenos errinhos na hora de clicar, como por exemplo o fato de clicar em uma letra e o cursor ir parar algumas letras depois, mas nada que não possa ser resolvido com as setas do teclado. Realmente ficou muito bom!

Por que usar?

Os diversos anos entre o lançamento de uma versão 1.x e a publicação dos fontes na internet fizeram com que o TextMate saísse um pouco dos holofotes, dando espaço a outros editores também muito bons. Sempre vou recomendar esse programa por dois motivos: é de excelente qualidade e é de graça. Isso sem mencionar o fato de que é leve (ou seja, não é em Java) e não precisa criar um monte de lixo para gerenciar um projeto. :)

Obtendo o TextMate 2

Gostou do TextMate 2? Maravilha!

Agora você deve estar se perguntando: “onde vou conseguir o TextMate 2?”. Eu tenho a resposta: no GitHub!

O link para o TextMate 2 é https://github.com/textmate/textmate.

Ali existem todas as instruções para você compilar na sua máquina. Você precisa clonar o projeto para a sua máquina (e não apenas baixar o zip) e só depois compilar.

Se não quiser compilar, você pode baixar um build pronto, clicando no link Downloads e selecionando o pacote mais recente.

Meu TextMate 2 não está colorindo o código! O que eu faço?

Tive o prazer de conversar com o Allan (programador do TextMate) e ele me informou desse macetezinho: caso o editor não esteja colorindo o código (mesmo após instalar os pacotes), feche o programa, apague o diretório ~/Library/Application Support/TextMate/Managed e tudo acontecerá magicamente. Apenas inicie o editor novamente e voilá!

E agora?

Para quem for desbravar o TM2, sugiro que comece a frequentar esse tumblr: Textmate 2 Tips. Existem muitas dicas e macetezinhos bacanas ali pra aprender!

Também é possível ler o FAQ do TextMate 2. Tem muita coisa explicada nos pormenores.

Espero que tenham gostado da análise que fiz, com muito carinho, para os amigos! :)

Comentem o que acharam e deixem também suas contribuições!

Um abraço a todos e fiquem com Deus.
Rafael Jaques

P.S.: Estou preparando novidades!