Usando Lisp em Emacs

Usando Lisp em Emacs
A rápida progressão da tecnologia permitiu que várias ferramentas de programação se tornassem proeminentes e se destacassem. Os editores de texto estão incluídos nessas ferramentas devido ao desenvolvimento maciço do negócio de tecnologia. Sua natureza leve, juntamente com sua flexibilidade para editar e construir arquivos e forte desempenho pronta para a caixa, tornou os editores de texto muito apreciados entre a comunidade. As vantagens fornecidas pelos editores de texto geralmente levam os desenvolvedores a favorecer essas ferramentas em relação a outras ferramentas semelhantes, como o IDE. Os editores de texto estão na vanguarda do trabalho realizado pelos desenvolvedores, por isso é importante usar um editor que fornece uma variedade de recursos de acordo com suas necessidades.

O EMACS é um exemplo de editor de texto que, devido à sua versatilidade e natureza personalizável, ganhou o nome entre si entre a comunidade de desenvolvedores. Como um dos editores de texto mais antigos do mercado, o Emacs é conhecido por sua estabilidade e consistência.

O que torna o Emacs especial é que não é apenas um editor de texto, mas sim uma máquina de pleno direito. Os emacs podem ser configurados como uma concha, um cliente de email, um organizador e muito mais. A complexidade dos emacs surge do intérprete Lisp em sua essência, o que, por sua vez, permite que os usuários o personalizem com ainda mais funcionalidades usando a linguagem LISP.

Este artigo abrange como usar o LISP através de vários métodos para configurar e personalizar o Emacs.

Noções básicas de Lisp

Antes de ver como o LISP pode ser usado para configurar o Emacs, é importante o primeiro a ver alguns dos princípios básicos da linguagem lisp para entender melhor esse recurso.

No LISP, os programas são compostos de expressões simbólicas, encurtadas para S-EXPS. Essas expressões podem consistir apenas em qualquer uma das variáveis ​​ou incluem outras funções.

Uma função é notada envolvendo o texto dentro de um parêntese. Por exemplo, para chamar a função de adição, a seguinte sintaxe é usada:

(+ 2 2)

A declaração acima diz “Adicione 2 a 2.”S-EXPS aninhados parecerá algo assim:

(+ 2 (+ 1 1))

Você também pode armazenar valores dentro de uma variável usando o comando setQ:

(SetQ My-Name "John")

Funções podem ser definidas usando o Defun palavra -chave. Por exemplo, uma função que calcula o quadrado de um número é escrita da seguinte forma:

(Defun Square (x)
(* x x))
(quadrado 2)

Você pode avaliar funções definidas usando as chaves Ctrl + x seguido pela Ctrl + e. Isso produzirá uma saída dentro do mini-buffer. Por exemplo, a função quadrada terá a seguinte saída:

Nota: você deve avaliar o segmento DeFun e o segmento quadrado.

Que cobre o básico. As seções a seguir mostrarão como configurar o Emacs usando o LISP.

Arquivo de inicialização

Quando o EMACS começa, o primeiro arquivo processado é o arquivo de inicialização, ou o arquivo init, que contém comandos escritos no LISP que permitem aos usuários configurar o Emacs. Para abrir o arquivo de inicialização, pressione Ctrl + x, seguido pela Ctrl + f, e depois digite ~/.Emacs. Dentro desta expressão, você pode inserir código adicional para personalizar o Emacs.

1) Adicionando suporte para pacotes

O LISP pode ser usado para adicionar suporte em EMACs para pacotes de diferentes fontes. Melpa é uma das fontes das quais os usuários podem instalar essas extensões. Para adicionar Melpa ao EMACS, adicione as seguintes linhas ao arquivo init:

(requer 'pacote)
(add-to-list 'Package-Archives
'("Melpa" . "http: // melpa.org/pacotes/") t)
(Pacote Inicialize)
(Contents de refrescamento de pacote)

Este código adiciona o arquivo MELPA à lista de repositórios de pacotes, dá permissão aos EMACs para usar esses pacotes, inicializa esses pacotes e refresca o conteúdo das alterações que ocorrem. Se você abrir sua lista de pacotes batendo Alt + x e entre pacote de pacote, Você pode ver os pacotes instalados no arquivo Melpa.


-

2) Mudança do tema dos emacs

Inicialmente, quando você carrega emacs, você receberá uma tela recebendo você em EMACS e oferecendo várias opções, como o tutorial do EMACS.

No entanto, esta página não parece tão ótima. O LISP permite que você mude o tema dos Emacs e a página de inicialização de acordo com suas preferências. Os usuários podem carregar vários tipos de temas, alterar o tamanho das fontes e até adicionar balas de linha.

Por exemplo, digamos que você deseja substituir a página de inicialização no buffer de arranhões, carregar o tema do material e adicionar balas de linha. Isso pode ser feito adicionando as seguintes linhas ao arquivo init:

(SetQ Inibit-Startup-Message T)
(Material de carga "t)
(modo global-lina T)

Conforme definido acima, a sintaxe setQ torna a inibição de message true, que remove a página inicial inicial. O tema de carga carrega o tema do material. A sintaxe do modo global-lina é simplesmente uma função que está definida para ser verdadeira e é executada para produzir números de linha. É assim que os emacs devem ser depois de inserir os comandos acima:

3) Ligue os atalhos às principais ligações

Lisp também pode ser usado para vincular comandos ou atalhos às chaves. Isso permite que os usuários personalizem o EMACs de acordo com suas preferências, além de executar funções personalizadas feitas pelo usuário com apenas um clique.

Suponha que você definiu uma função que simplesmente produz um personagem de barra de barragem e deseja atribuir isso às chaves Ctrl + x seguido pela Ctrl + o. Isso pode ser feito adicionando as seguintes linhas ao arquivo de inicialização:

(DEFUN INSERT_BACKSLASH ()
(interativo)
(insira "\"))
(Chave Global-Set (KBD ""C-X C-O"")
'insert_backshash)

Aqui, a função insert_backslash é definida, feita interativa (isso permite que a função seja chamada de significado interativamente com a ligação de chave), e a saída é uma barra de barra. Em seguida, você pode vincular a função com as chaves dadas acima usando a palavra-chave global-set-key.

Por que usar lisp?

Lisp é parte integrante dos emacs, pois permite que os emacs tenham mais poder e funcionalidade. O LISP oferece uma oportunidade para os usuários personalizarem o Emacs e transformá -lo em algo que corresponda aos seus interesses e necessidades. Lisp é o que torna os emacs verdadeiramente poderosos e únicos em comparação com outros editores de texto.

"