Aprendendo OCaml com emacs no Windows
fevereiro 14, 2015 Deixe um comentário
No post anterior falei do livro de Andrei Formiga sobre a linguagem OCaml. Se você comprou, vai descobrir que uma das principais ferramentas para quem está começando a estudar OCaml é um REPL decente (Read-Evaluate-Print Loop). Infelizmente a melhor ferramenta de REPL para OCaml, a utop, não está disponível para Windows e o REPL que vem no OCaml é limitado e deixa muito a desejar.
Como sou usuário Windows, a melhor alternativa que encontrei até o momento foi utilizar o emacs. Sei que também existe uma solução para eclipse, mas por questões pessoais escolhi tentar primeiro o emacs. Adicionando um pequeno módulo, ele pode servir de interface para o REPL do OCaml e também, utilizando algumas teclas de atalho, compilar e executar sua aplicação.
Os passos mágicos para configuração do emacs podem ser encontrados aqui nessa página, mas vou tentar passar as dicas para quem está no Windows. Afinal de contas, essa é a razão desse post existir. É bom aproveitar a oportunidade para dizer que esse post não tem nenhuma pretensão de ensinar a usar o emacs. Também estou partindo do princípio que você já tem o OCaml instalado e configurado no path do seu computador.
Instalando o emacs
Minha instalação do emacs não passa de uma versão pré-compilada, baixada e descompactada numa pasta qualquer. No meu caso: C:\Apps\emacs-24.3\. Após descompactar os arquivos, coloquei o caminho para a pasta bin do emacs no PATH do Windows. Depois disso, basta executar a partir do comando runemacs.exe. Você pode abrir usando emacs.exe, mas aí ele vai exibir o terminal de console junto com a IDE.
Adicionando o módulo OCaml ao emacs
Baixe os arquivos .ml que darão suporte ao novo módulo através desse endereço: emacs-ocaml-mode.zip. Depois de baixado, descompacte o arquivo na pasta site-lisp. No meu caso, o caminho de destino é C:\Apps\emacs-24.3\site-lisp. O próximo passo é adicionar as instruções que informam ao emacs como carregar o módulo sempre que alguma arquivo com a extensão .ml estiver aberto. Para isso, vamos precisar editar o arquivo de inialização .emacs no Windows. Minha pouca experiência mostrou que a melhor forma de fazer isso é através do próprio emacs.
Com o emacs aberto, digite a sequência ctrl+x ctrl+f e o caminho ~/.emacs conforme ilustrado na figura abaixo.
Digite o conteúdo que está na imagem ou copie e cole daqui. Salve o arquivo (ctrl+x ctrl+s) e corra para o abraço.
Fazendo uso do módulo
Isso já é suficiente para você ter pelo menos o syntax highlight. Mas o módulo oferece muito mais que isso e a melhor forma de ver todas as funcionalidades que ele oferece é através do comando ctrl+h m.
Seguem alguns comandos que achei uteis até agora:
ctrl+c ctrl+e | Roda o comando que o cursor está utilizando o REPL que vem no OCaml. Ele também já move o cursor para o próximo comando. |
ctrl+c ctrl+s | Abre o REPL do OCaml dentro do emacs. |
ctrl+c ctrl+c | Exibe o comando para compilar o arquivo atual. Geralmente eu altero para ficar no formato: ocamlc -o executavel.exe codigofonte.ml |
ctrl+x 1 | Não é um comando do módulo, mas serve para fechar o terminar do OCaml e exibir apenas o arquivo fonte. |
alt+! | Também não é do módulo mas server para abrir o prompt para executar algum arquivo. Por exemplo: a aplicação recem compilada. |