Sublime Text 2: Jump to Method /Definition / Declaration
Uma das únicas coisas que ainda me impediam totalmente de migrar para o Sublime Text 2 era a possibilidade de clicar em um método e ele ir para a definição igual a IDE's como NetBeans, Eclipse etc... depois de algumas pesquisas descobri que era possível utilizando o plugin SublimeCodeIntel, mas por algum motivo não funcionava no Ubuntu... pesquisando mais um pouco veio a solução e está aqui pra você
Primeiramente deve-se instalar o o SublimeCodeIntel ( utilizando o Package Control plugin pra facilitar seu trabalho )
Feito isso vamos configura-lo, dependendo da linguagem que você for usar, edite o arquivo ~/.codeintel/config adicionando a localização da sua linguagem, exemplos:
{ "PHP": { "php": '/usr/bin/php', "phpExtraPaths": [], "phpConfigFile": 'php.ini' }, "JavaScript": { "javascriptExtraPaths": [] }, "Perl": { "perl": "/usr/bin/perl", "perlExtraPaths": [] }, "Ruby": { "ruby": "/usr/bin/ruby", "rubyExtraPaths": [] }, "Python": { "python": '/usr/bin/python', "pythonExtraPaths": [] }, "Python3": { "python": '/usr/bin/python3', "pythonExtraPaths": [] } }
Agora você irá precisar compilar o plugin para que suas alterações sejam ativadas:
para isso precisará intalar alguns pacotes, como estamos no Ubuntu faça o seguinte:
$ sudo apt-get install g++ $ sudo apt-get install python-dev
Feito isso vamos compilar nosso CodeIntel, vá para o diretório :
/home/luiz/.config/sublime-text-2/Packages/SublimeCodeIntel/src
$ chmod +x build.sh $ ./build.sh
No meu caso, ainda tive um problema de codificação no SublimeCodeIntel, solução pra isso? Edite o arquivo :
.config/sublime-text-2/Packages/SublimeCodeIntel/SublimeCodeIntel.py
com o seguinte código:
[geshi]
import sys import os code = sys.getdefaultencoding() if code != 'utf8': reload(sys) sys.setdefaultencoding('utf8')[/geshi]
Outra coisa é que o atalho do SublimeCodeIntel (alt+click) já é utilizado pelo Ubuntu para mover janelas, então para modificar isso teremos que alterar essa tecla de atalho, eu utilizo a mesma sequência do Netbeans (Ctrl+Click), façam o seguinte. altere o arquivo
.config/sublime-text-2/Packages/SublimeCodeIntel/Default\ \(Linux\).sublime-mousemap
de
[ { "button": "button1", "modifiers": ["alt"], "command": "goto_python_definition", "press_command": "drag_select" } ]
para
[ { "button": "button1", "modifiers": ["ctrl"], "command": "goto_python_definition", "press_command": "drag_select" } ]
Reinicie o Sublime e seja feliz :D