Parte 2 do modo de organização - Código de execução

Parte 2 do modo de organização - Código de execução
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 você 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 idéias de projeto, planejamento e idéias abstratas que não pertencem aos comentários do código. O documento também pode conter os resultados da execução, que é poderosa para tirar conclusões, mas não tem lugar no código final.

Código em Emacs

Muitos desenvolvedores usam o Emacs para desenvolver software, é um poderoso editor de código. De fato, muitos consideram isso um IDE, quando configurado corretamente. Mas os documentos geralmente são separados do código. Se você deseja demonstrar 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 um documento assim. Uma maneira poderosa de fazer isso é criar um documento org. 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 = requer ('Electron')
const caminho = requer ('caminho')
#+end_src

O resultado pode ir para o documento.

Este exemplo não cria uma saída, a maneira mais simples de obter saída é usar 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 Generic #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 em bloco abaixo do código de execução. Se você deseja resultados mais avançados ou combinar blocos, precisará nomear seu bloco de código -fonte. Adicione o #+nome opcional: tag. Esta tag funciona para tabelas, bem como 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, no formulário que você especifica. Diretamente abaixo, os resultados são mostrados.

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

Este é um exemplo muito simples, com suporte para látex, você pode obter qualquer fórmula desejada com o resultado em um documento muito bem formatado. A

\ Begin equação
x = \ sqrt b
\ end equação

Se você produzir gráficos com seu código, poderá exibi -lo 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
Lote F (x)

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

Nem todo código é suportado, fora da caixa

Por uma questão de eficiência, nem todos os idiomas suportados estão ativos em uma instalação de baunilha do EMACS. Para garantir que você tenha ativo, você pode adicionar código à sua configuração do EMACS, init.El é o arquivo padrão.

'(Org-Babel-Carga-Languages
(citar
((Pitão . t)
(Emacs-Lisp . t)
(concha . t)
(JS . t)
(Sqlite . t)
(Calc . t))))

O código acima permite seis idiomas, configurando -os para 'T'. O 'T' é a maneira comum em Lisp para dizer verdadeiro. Você também pode optar por definir esse valor com o método 'M-X Personalize-Variable'. Quando você faz isso, você precisa digitar o nome da variável, ou grupo. Nesse caso, a variável é 'Languages ​​de Org-Babel-Carga'. Quando você vem à página, você pode ver o que é suportado e ativar os que deseja.

Adicionando um idioma

Se o seu idioma não estiver na lista, você pode procurar a linguagem em https: // orgmode.org/worg/org-contrrib/babel/idiomas 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. Visualizar, exportar e emaranhar é suportado 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. Isso requer algumas habilidades de programação Lisp, mas se você olhar para os outros idiomas, poderá adicioná -lo mesmo com uma pequena experiência.

Conclusão

Este artigo apenas arranhou a superfície do que você pode fazer com o modo de organização. Mais recursos estão disponíveis e chamando o Emacs de um editor simples está fazendo um desserviço a si mesmo.