No Intype, acabei utilizando todos os bundles que haviam disponíveis e foi uma experiencia satisfatória. A questão é que o intype se tornará pago cedo ou tarde, então outra alternativa precisava ser encontrada.
Eis que surge o Sublime Text 2 (http://www.sublimetext.com/). Com versões gratuita e paga, ele supera todos os editores que já trabalhei. Possui vários recursos interessantes, tais como:
- Highlighting para várias linguagens como C, C++, C#, CSS, D, Erlang, HTML, Groovy, Haskell, HTML, Java, JavaScript, LaTeX, Lisp, Lua, Markdown, Matlab, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL, Textile e XML e mais para download
- Modo Full Screen (F11) com recurso Distraction Free (Shift + F11)
- Scroll com o minimap do código
- Auto save, jamais perca algo.
- Vários temas disponíveis, particularmente prefiro o Monokai
- Somente modo texto. Sem frescura.
- Seleção múltipla
- Busca incremental durante a digitação
- Seleção em coluna
- Mantém o case durante o replace
- Busca e substituição por expressão regular
- Auto complete
- Snippets e Pacotes que otimizam o tempo (e viciam) durante o uso.
- e muitos outros.
Os Pacotes e Snippets, merecem uma descrição a parte. Primeiramente instale o Package Control seguindo esse tutorial. Com ele será possível instalar vários pacotes com os mais diversos recursos para melhorar sua produtividade. Alguns interessantes:
- Alignment
- SideBarEnhancements
- JQuery
- HTML5
- e muitos outros disponíveis, basta dar uma olhada no Package Control.
Estou utilizando estes aqui:
O mais interessantes do esquema do
Package Control, é que tudo é feito diretamente pelo Sublime, sem burocracia de download, instalação, etc.
Os Snippets são os mais utilizados, na minha opinião. Da mesma forma que no TextMate, o Sublime completa trechos de códigos pré-configurados após a digitação de um termo (gatilho, vulgo tab trigger) e pressionar a tecla Tab. O mais interessante é que é possível editar e criar novos de uma maneira bem fácil. Basta ir pelo menu Tools >> New Snippet. O exemplo fornecido é muito óbvio, mas vamos a ele:
<snippet> <content><![CDATA[ Hello, ${1:this} is a ${2:snippet}. ]]></content> <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> <!-- <tabTrigger>hello</tabTrigger> --> <!-- Optional: Set a scope to limit where the snippet will trigger --> <!-- <scope>source.python</scope> --> </snippet>
Todos os termos começados com $, seguido de um número são os parâmetros editáveis do bloco inserido pelo Sublime, descrito no content, possuindo navegação através do Tab, de acordo com a ordem numérica. O valor seguido dos ":" são os valores padrões para cada parâmetro inserido. Descomente a linha do tabTrigger e digite o gatilho de sua preferência.
Além da possibilidade de criar novos snippets, é possivel importar todos os bundles do TextMate com uma simples operação de ctrl + c , ctrc + v ( sim, simplesmente colar os arquivos) para a pasta do Sublime. Ele se encarrega de fazer funcionar. Única alteração é que quando copiar os arquivos .tmbundle para o Windows, eles virão como se fosse um pasta com essa extensão. Retire a extensão e salve essas pastas em:
C:\Users\<USUARIO DA MAQUINA>\AppData\Roaming\Sublime Text 2\Packages (Windows)
<USUARIO DA MAQUINA>/Biblioteca/Application Suport/Sublime Text 2/Packages (MAC)
Com isso, será disponibilizado os pacotes no canto inferior direito do Sublime.
Com uma interface amigável, vários recursos fantásticos e leve, o Sublime Text 2 tem se mostrado com o melhor editor que já trabalhei. Disponível para Windows, Linux e Mac, possibilita uma interface única para quem, como eu trabalha em ambientes diferentes.
Lista de Comandos – Mac
Navegar entre os arquivos: Command + P
Layout de 2 colunas: Command + Option + 2
Modo de distração livre: Command + Option + Shift + F
Find: Command + F
Find / Replace: Command + Option + F
Find / Where / Replace: Command + Shift + F
Indentação à esquerda: Command + [ ou Shift + Tab
Indentação à direita: Command + ] ou Tab
Comentário: Command + /
Multi-select: Command pressionado + Clique em várias linhas
Code Folding – Minimiza Bloco: Command + Option + [
Code Folding - Maximiza Bloco: Command + Option + ]
Code Folding – Minimiza Atributos: Command + K + Command + T
Code Folding – Maximiza Atributos: Command + K + Command + 0
Console: Ctrl + `
Menu: Command + Shift + P
Haiku: Ctrl + Option + Enter
Prefixr: Command + Ctrl + X
JSHint: Ctrl + J
JSMinifier: Ctrl + Option + M
Lista de Comandos – Windows/Linux
Navegar entre os arquivos: Ctrl + P
Layout de 2 colunas: Alt + Shift + 2
Modo de distração livre: Shift + F11
Find: Ctrl + F
Find / Replace: Ctrl + H
Find / Where / Replace: Ctrl + Shift + H
Indentação à esquerda: Ctrl + [
Indentação à direita: Ctrl + ]
Comentário: Ctrl + / ou Ctrl+;
Multi-select: Ctrl pressionado + Clique em várias linhas
Code Folding – Minimiza Bloco: Ctrl + Shift + [
Code Folding - Maximiza Bloco: Ctrl + Shift + ]
Code Folding – Minimiza Atributos: Ctrl + K + Ctrl + J
Code Folding – Maximiza Atributos: Ctrl + K + Ctrl + 1
Console: Ctrl + `
Menu: Ctrl + Shift + P
Haiku: Ctrl + Alt + Enter
Prefixr: Ctrl + Alt + X
JSHint: Ctrl + J
JSMinifier: Ctrl + Alt + M
Bônus
Deletar linha: Ctrl + Shift + K (Windows/Mac/Linux)
Duplicar linha – Mac – Command + Shift + D – Windows/Linux – Ctrl + Shift + D
Troca de linhas: Mac – Command + Ctrl + Seta (cima ou baixo) – Windows/Linux – Ctrl + Shift + Seta (cima ou baixo)
E mais
Jade – Syntax Highlight – https://github.com/miksago/jade-tmbundle
Stylus – Syntax Highlight – https://github.com/LearnBoost/stylus
JSHint – https://github.com/uipoet/sublime-jshint
Algumas configurações interessantes para se colocar no Preferences > Settings - User:
{ "bold_folder_labels": true, "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme", "font_face": "Monaco", "font_size": 13, "highlight_line": true, "ignored_packages":["Vintage"], "rulers": [72], "scroll_past_end": true, "shift_tab_unindent": false, "theme": "Soda Dark.sublime-theme", "trim_trailing_white_space_on_save": false, "trim_trailing_white_space_on_save": true, }
Façam download e experimentem. Vale a pena.
Hasta!