Vamos Programar?
Introdução
Olá, pessoal.
Acredito que ninguém aqui me conheça, mas sou Oneshot, ou Bruno Lopes, um programador por passatempo. Desenvolvi muitos trabalhos para fóruns em geral, principalmente o XTibia, até que levei uma flecha no joelho...
... Brincadeiras a parte, eu gostaria muito de voltar a escrever tutoriais e quem sabe desenvolver novos recursos para a comunidade, depende muito do meu tempo disponível.
Para essa primeira parte do tutorial, eu gostaria de tratar de um assunto que é subestimado por muitos... Não, eu não vou falar de lógica da programação, de Lua, ou de C++... eu vou falar sobre o editor de texto, a principal ferramenta de um programador.
Muitos aqui, provavelmente começam sua vida de scripter utilizando o Notepad++ no Windows, ou talvez um gedit em alguns flavors do Linux, talvez até o vim, se você for muito hardcore
Eu já usei vários editores de texto, e ultimamente tenho recomendado um editor de texto excelente, desenvolvido pela equipe do Github, chamado Atom. Eu poderia muito bem fazer deste tópico, um comparativo entre os editores de texto e até alguns IDEs (ou Integrated Development Environment), mas vou fazer deste, um tutorial para configuração do Atom e espero que vocês gostem.
Atom
Atom, conforme o criador, é um editor de texto totalmente personalizável, você pode editar todos os tipos de configurações dentro dele, mas também se não quiser, não é necessário.
E acho que esse é o diferencial do Atom, existem muitos plugins de excelente qualidade, e você não vai precisar usar ele só para programar Lua, pode usar ele em um monte de sintaxes diferentes e se ele não tiver uma sintaxe, basta baixar um plugin que certamente existirá com a sintaxe, snippets (trechos de código pré-configurados), entre outros.
Você vai baixar o Atom no site deles, http://atom.io/, no momento que escrevo esse artigo/tutorial, estou no Windows 10 (Ao invés do Fedora), então veja abaixo:
Depois de baixar o instalador para sua plataforma (Ele está disponível para Windows, Linux e Mac), basta instalar o aplicativo, conforme os padrões do seu sistema (Next, Next, Next no Windows e por aí vai)
Depois disso o Atom é apresentado da seguinte forma:
Não tão dessa forma... estou com o tema da interface Seti-UI.
Se você for curioso, pode então ler a documentação do Atom, e eu recomendo, pois você vai aprender muito lá, e se tiver noções de programação, já poderá aprender a personalizar seu Atom.
Vamos baixar alguns plugins, para isso você pode ir no menu Packages > Settings View > Install Packages/Themes ou pressionar Ctrl+Shift+P (No caso do Windows), digitar Install e escolher a opção, e eu uso muito essa segunda forma:
No menu que irá abrir, você pode procurar diversos plugins e temas, na página inicial ele mostra os plugins em destaque:
Daqui não tem segredo, pesquise o nome do plugin, ele vai aparecer e então clique em Install, abaixo deixo alguns plugins que eu uso, e nem todos são voltados para Open Tibia.
PluginsOpen Recent - Abre arquivos recentes
Minimap - Mostra um minimapa com todo o código do arquivo
Highlight Selected - Quando você seleciona uma palavra, ele seleciona todas as ocorrências
Pigments - Voltado para Front-End, mostra a cor de um código hexadecimal de um arquivo CSS
Linter* - Uma função muito presente em IDEs, que mostra algum erro no código, como um ';' faltando
Auto-Detect-Indentation - Detecta a indentação de um arquivo e configura a indentação do seu TAB automaticamente)
Atom-Beautify - Um "embelezador" de código
Emmet - Para front-ends preguiçosos.
language-lua - Para adicionar a sintaxe Lua no atom
TemasSeti-UI - Um excelente tema com ícones para cada tipo de arquivo.
Atom-Monokai - Um tema de sintaxe bem parecido com o Sublime.
E tem muitos outros plugins excelentes... No caso do Linter, você precisa baixar o plugin principal, e então o plugin secundário para a linguagem que você pretende utilizar (Não sei se existe um Linter para Lua)
Depois disso, você pode ir na opção Themes e mudar o tema de interface e de sintaxe:
E por último, mudar algumas configurações a seu gosto:
Cada configuração tem sua explicação em inglês.
Esse é o Atom, configurado com os plugins do tutorial, com sintaxe Lua, a linha branca cruzando o arquivo é um separador que delimita 80 caracteres e quebra o código que passar disso, dando mais legibilidade.
E o mais legal é que o Atom tem um modo de identificar funções diferente do Notepad++, então ele identifica até as funções Open Tibia no seu código.
Legal, né?
Conclusão
Bom, é isso aí, esssa foi a primeira parte de uma sequência de tutoriais que pretendo fazer quando tiver tempo livre, afinal não consigo largar o Open Tibia.
Espero que gostem.
Abraços.