Emacs

Org-Mode Parte 2 - executar código

Org-Mode Parte 2 - executar código
Quando você deseja aprender e ensinar código, pode ser útil escrever o código em um documento. Isso também é útil para o estágio de planejamento de um projeto. Você pode pensar que acabou de colocar comentários no código, mas isso pode ser problemático, pois os comentários precisam mostrar como esse código funciona. No documento, você pode colocar ideias de projeto, planejamento e ideias abstratas que não pertencem ao comentário do código. O documento também pode conter resultados da execução, o que é poderoso para tirar conclusões, mas não tem lugar no código final.

Código em Emacs

Muitos desenvolvedores usam Emacs para desenvolver software, é um editor de código poderoso. Na verdade, muitos o consideram um IDE, quando configurado corretamente. Mas os documentos geralmente são separados do código. Se você quiser demonstrar o código ou planejar um novo projeto, você pode usar trechos de código. Para mostrar como você acredita que precisa funcionar, você pode escrever esse documento. Uma maneira poderosa de fazer isso é criar um documento organizacional. Para adicionar código ao seu documento, você precisa adicionar um bloco de código. Um bloco de código é um conjunto padrão de código que você pode ver abaixo.

# + begin_src javascript
const app, BrowserWindow = require ('electron')
const path = require ('path')
# + end_src

O resultado pode ir para o documento.

Este exemplo não cria uma saída, a maneira mais simples de obter uma saída é usar o shell. Quando você deseja executar um comando e mostrar os resultados, você precisa adicionar um parâmetro de cabeçalho.

# + begin_src shell: exporta ambos
uname -a
# + end_src
uname -a
Linux mats-Ubuntu 5.0.0-20-genérico # 21-Ubuntu SMP seg, 24 de junho 09:32:09
UTC 2019 x86_64 x86_64 x86_64 GNU / Linux

O resultado é adicionado pelo Emacs no bloco abaixo do código em execução. Se você deseja resultados mais avançados ou deseja combinar blocos, será necessário nomear o bloco de código-fonte. Adicione a tag opcional # + NAME:. Esta tag funciona para tabelas e também para código.

tabela 1.3.1:

x y z
0 1 4
1 3 6
2 4 8

Com o módulo calc, você pode colocar dados e ter os resultados exibidos no documento.

# + begin_src calc: var x = 5: var y = 2: exporta ambos
2 + a * x ** y
# + end_src

Primeiro, o código é exibido, na forma que você especificar. Logo abaixo, os resultados são mostrados.

2 + a * x ** y
25 a + 2

Este é um exemplo muito simples, com suporte para LaTeX você pode obter qualquer fórmula que desejar com o resultado em um documento muito bem formatado. UMA

\ begin equation
x = \ sqrt b
\ end equação

Se você produzir gráficos com seu código, poderá exibi-los dentro do documento. Abaixo, você pode ver um código muito simples que usa o gnuplot para plotar o resultado de x2.

f (x) = x ** 2
plot f (x)

Para que isso funcione, você precisa ter o gnuplot instalado em seu sistema. Esses recursos são todos chamados a partir do sistema e apresentados no Emacs. O mesmo vale para todas as linguagens de programação que o Emacs suporta.

Nem todo código é compatível, pronto para uso

Por uma questão de eficiência, nem todos os idiomas suportados estão ativos em uma instalação vanilla do Emacs. Para ter certeza de que ele está ativo, você pode adicionar código à sua configuração emacs, init.el é o arquivo padrão.

'(org-babel-load-languages
(citar
((Pitão . t)
(emacs-lisp . t)
(Concha . t)
(js . t)
(sqlite . t)
(calc . t))))

O código acima habilita seis idiomas, definindo-os como 't'. o 't' é a maneira comum em Lisp de dizer a verdade. Você também pode escolher definir este valor com o método 'M-x personalizar variável'. Ao fazer isso, você precisa digitar o nome da variável ou grupo. Neste caso, a variável é 'org-babel-load-languages'. Quando você chega à página, pode ver o que é compatível e ativar o que deseja.

Adicionando um idioma

Se o seu idioma não estiver na lista, você pode procurar por idioma em https: // orgmode.org / worg / org-contrib / babel / languages.Atualmente.html A lista de idiomas suportados já é longa e está crescendo a cada dia. Observe aqui, o suporte para um idioma é necessário apenas para a avaliação. Visualização, exportação e emaranhamento são suportados sem ele. Na página da web mencionada, você também contribuiu com idiomas que exigem um pouco mais de trabalho para instalar. Se você ainda não consegue ver seu idioma, há um modelo para adicioná-lo você mesmo. Isso requer algumas habilidades de programação lisp, mas se você olhar para as outras linguagens você deve ser capaz de adicioná-lo mesmo com pouca experiência.

Conclusão

Este artigo apenas arranhou a superfície do que você pode fazer com o modo org. Mais recursos estão disponíveis e chamar o Emacs de editor simples é um péssimo serviço.

OpenTTD vs Simutrans
Criar sua própria simulação de transporte pode ser divertido, relaxante e extremamente atraente. É por isso que você precisa ter certeza de experiment...
Tutorial OpenTTD
OpenTTD é um dos jogos de simulação de negócios mais populares que existem. Neste jogo, você precisa criar um maravilhoso negócio de transporte. No en...
SuperTuxKart para Linux
SuperTuxKart é um ótimo título projetado para trazer a você a experiência Mario Kart gratuitamente em seu sistema Linux. É bastante desafiador e diver...