Salve salve galera, tudo bem? Então, para começar com o blog resolvi falar um pouco sobre algo que acompanha os programadores diariamente: IDE de desenvolvimento.
Pois bem, já utilizei várias: netbeans, aptana, komodo, vim, phpstorm e atualmente migrei para o sublime. Gostava bastante do PHPStorm, porém o que me chateava muito nele era o consumo de memória e a lentidão certos momentos para tarefas simples. Resolvi então dar uma chance ao sublime, e desde então estou com ele. Resolvi então fazer um post para compartilhar minha configuração do sublime e também os plugins que estou utilizando para auxiliar no desenvolvimento com PHP e Laravel.
Nota: estou utilizando o sublime-text 3 Nota 2: grande parte da minha configuração foi baseada em um arquivo do Matt Staufer(@stauffermatt) que pode ser visto nesse link: https://mattstauffer.co/blog/sublime-text-3-for-php-developers
O primeiro plugin que se deve instalar no sublime 3 é o package control. Ele nos permite instalar facilmente outros plugins. A instalação é muito simples e rápida: após iniciar o sublime devemos ir até o menu view > show console
, que irá abrir o console do sublime na parte inferior da tela. Feito isso basta copiar e colar o código disponível em: https://packagecontrol.io/installation. O sublime ficará congelado por alguns instantes e após isso o plugin estará instalado. Reiniciando o sublime podemos acessar o Package Control através do atalho ctrl+shift+p
e digitando Package Control.
Para instalar um plugin basta apenas ir até a opção Package Control: Install Package
. O package control irá procurar automaticamente no github pelo pacote e irá instalar para nós o plugin escolhido.
https://github.com/equinusocio/material-theme
Tema é realmente algo muito pessoal, já testei vários temas e atualmente estou com o Materialize. Ele é inspirado no Material Design da google e me agrada muito bem, consigo trabalhar nele por horas sem que isso me incomode a visão.
https://github.com/skuroda/Sublime-AdvancedNewFile
Utilizo o Advanced New File para facilitar a criação de arquivos. Após instalado basta pressionar super+n
e posso digitar o nome do arquivo. Ele também completa automaticamente o nome de arquivos e pastas pressionando a tecla tab
.
https://github.com/sergeche/emmet-sublime
O amigo de todas as horas para edição de HTML. Emmet (antigamente conhecido como Zencodig) facilita (e muito!) o trabalho de criação do HTML. Com ele é possível digitar div.row>div.col-md-3.user-login#user-form>form>input.form-control
e apertar tab
, e isso ser automaticamente transformado em:
<div class="row">
<div class="col-md-3 user-login" id="user-form">
<form action="">
<input type="text" class="form-control">
</form>
</div>
</div>
Pode parecer estranho no ínicio, mas acredite, isso auxilia muito no dia-a-dia.
https://github.com/jisaacks/GitGutter
O GitGutter adiciona pequenos sinais ao lado dos números das linhas, indicando quais linhas foram modificadas no arquivo.
https://github.com/erichard/SublimePHPCompanion
Este plugin nos ajudará na tarefa de importação automática de classes. O plugin não vem com nenhum atalho definido, mas é muito simples definir, basta seguir este link: https://github.com/erichard/SublimePHPCompanion/blob/master/messages/1.0.0.txt.
https://github.com/spadgos/sublime-jsdocs
DocBlockr nos ajudará no processo de criação de DocBlocks. Basta digitar /**
sobre a definição da função e pressionar tab
. Isso irá expandir o bloco de documentação e podemos navegar com o tab
pelos placeholders já definidos.
https://github.com/SublimeLinter/SublimeLinter-php
Este plugin irá nos informar sobre erros de sintaxe nos arquivos PHP. Para que ele funcione é necessário instalar também o pacote Sublime Linter*.
https://github.com/titoBouzout/SideBarEnhancements
Este plugin irá adicionar várias novas funcionalidades à sidebar do sublime, como renomear, abrir com, duplicar e outras.
https://github.com/jdc0589/CaseConversion
Este plugin nos auxilia na tarefa de converter strings entre os diversos padrões: camel case, snake case, etc. Após instalado basta posicionar o cursor sobre a string desejada e pressionar os atalhos:
- Converter para snake_case:
ctrl+alt+c,ctrl+alt+s
- Converter para camelCase:
ctrl+alt+c,ctrl+alt+c
- Converter para PastalCase:
ctrl+alt+c,ctrl+alt+p
- Converter para dot.case:
ctrl+alt+c,ctrl+alt+d
- Converter para dash-case:
ctrl+alt+c,ctrl+alt+h
Sei que parece ser difícil lembrar os atalhos assim, mas depois que você os decora eles auxiliam muito no dia-a-dia.
Gosto de ter meus arquivos de configuração sempre versionados usando Gists. Isso me ajuda a facilmente instalar eles em várias máquinas (atualmente tenho o notebook e o PC do trabalho), me poupando um precioso tempo e também me deixando mais tranquilo caso precise reinstalar o sistema operacional da minha máquina. Minha atual configuração do sublime pode ser vista aqui: [colocar aqui configuração]
Bom galera, esta é minha atual configuração do sublime e também os plugins/tema que estou utilizando. Realmente a inteligência do PHPStorm não pode ser comparada, pois os recursos de busca, integração com Git, auto-completamento de código dele são muito superiores, porém acredito que o custo (de memória) é um pouco alto. Caso você esteja procurando uma alternativa mais leve e versátil para desenvolvimento PHP (assim como eu estava), aconselho fortemente a testar o Sublime 3.
Tem algum plugin que acha que pode ser útil, alguma configuração diferente para o sublime que acha que é muito boa? Deixe seu comentário logo abaixo para que possamos manter contato!
Um forte abraço a todos e até o próximo artigo.