•  desabrochar luz

Emacs

Por que o emacs e minha lista de desejos pessoais do emacs.

O que é emacs?

UMA máquina virtual ou intérprete para o emacs linguagem de programação lisp ... mais ou menos. A linguagem de programação emacs lisp (elisp) é de propósito geral, mas tem suporte de primeira classe para o editor de texto real que a executa. Os tipos primitivos são focados na edição de texto, no entanto, você pode escrever o que quiser com desempenho decente (recentemente graças ao compilação jit ) porque é um descendente ceceio de MACLISP e um irmão de ceceio comum . No entanto emacs lisp não tem um padrão, e a especificação é equivalente à implementação mais popular, que é GNU Emacs.

Por que emacs?

Com a frase "Emacs é um sistema operacional", as pessoas querem dizer que você pode usá-lo para fazer qualquer coisa para a qual usaria um computador. Ele fica aquém de ser um sistema operacional literal, uma vez que o kernel (normalmente o Linux) ainda é o responsável pelo hardware.[1] No entanto, pode ser facilmente chamado de ambiente de área de trabalho, pois fornece um ambiente de trabalho. Ele oferece a capacidade de escrever código interativo rápido para fazer interface com qualquer aplicativo, pode ser tão sujo quanto scripts de shell ou bem planejado para fornecer APIs estáveis. Na verdade, muitas funcionalidades do emacs são fornecidas por pacotes.[2] Outros editores podem ser tão extensíveis quanto o emacs? Não por que? Porque outros editores usam um modelo de usuário diferente, em que o usuário deve ser restrito por ser considerado um "convidado" do ambiente de execução que está oferecendo um "serviço" ao usuário. Este não é o caso do emacs, onde o ambiente e o usuário tornam-se um e o mesmo. No emacs, você tem acesso a tudo e pode modificar quase todas as coisas pelos mesmos meios que essas coisas foram criadas, também conhecido como elisp.

Vale a pena?

Os benefícios se acumulam, é um investimento, e como qualquer investimento, você deve esperar ganhos proporcionais ao quanto você investe, portanto, você tem que gastar algum tempo aprendendo e praticando como usá-lo.

Minha lista de desejos GNU emacs

Emacs é um sistema operacional muito bom, mas um editor de texto ruim.

...Ou algo nesse sentido. A implementação do GNU Emacs, assim como o emacs, tem suas raízes nos anos oitenta, e muitas partes de seu núcleo mostram sua idade ...

[7]não pode por causa da velocidade, mas a velocidade é importante apenas a curto prazo, e sem considerar a compilação jit
[6]O argumento para animações mais avançadas pode ser controverso, já que muitas pessoas são da opinião de que coisas como transições, desfoque, texturas, sombras, etc. não agregam valor a uma GUI ... mas sim. Mas defender animações é para outro post, aqui posso apenas dizer que a aplicação cuidadosa e cuidadosa de propriedades mais avançadas pode fazer uma grande diferença na usabilidade e produtividade também (não é só estilo!).
[5] emacs-ng usa webrender, que permite o desenho baseado em gpu, uma vez que funciona de forma semelhante a um motor de jogo, ele preenche partes dos meus desejos, mas não sei como o backend do webrender se conecta aos internos do emacs; se seus esforços forem semelhantes ao backend [pgtk], ele ainda ficaria um pouco aquém.
[1]É divertido, no entanto, pensar sobre um futuro onde GNU HURD (o kernel) pode ser conectado ao emacs para falar com um lisp mais próximo do bare metal
[2]Ainda há, no entanto, um volume de 200 mil linhas de código C que implementa funcionalidades básicas
[4]Como o emacs exibe as coisas como um "servidor" ao falar com outro servidor, ele envia uma "atualização" completa da janela, o que pode causar oscilações em alguns casos.
[3] Browsh é capaz de exibir páginas da web dentro do terminal, o site rico é "reduzido" para suportar a interface do terminal, este é um caso de "primeiro gráfico, segundo terminal"

Tags de postagem: