Quais são alguns pacotes internos com um bom código-fonte? [fechadas]

12

Eu estou tentando me familiarizar com o Emacs Lisp, sua sintaxe, estruturas de dados etc.

caisah
fonte
1
Esteja ciente de que os pacotes internos estão cheios de código legado e, portanto, menos adequados para aprender idiomas. Você já pensou em usar pacotes e bibliotecas externas?
Wasamasa
1
Já considerou usando o tutorial emacs (disponível como info? Arquivo Alguns built-in funções são explicadas e detalhadas.
kiddouk
@wasamasa eu vejo, vou olhar para pacotes mais recentes.
caisah 24/09/14
@kiddouk Sim, eu fiz, mas não consigo lidar com o estilo de escrever / explicar.
caisah 24/09/14

Respostas:

12

Posso recomendar o Modo Ruby ruby-mode.ele o Modo Python python.el, para alguns aspectos de sua implementação. O primeiro é uma fonte particularmente excelente para recuo avançado e código de navegação baseado no novo mecanismo SMIE. No entanto, nenhum deles utiliza estruturas de dados de maneira particularmente inteligente ou avançada.

Eu também recomendaria algumas partes do Org Mode 8, por seu design. Notavelmente, a estrutura exportadora da Org 8 mostra como criar uma estrutura genérica, extensível e parecida com um objeto no Emacs Lisp simples. No entanto, eu recomendaria contra a maioria das outras partes da organização, por razões já declaradas nos comentários: É antiga e cheia de práticas legadas e prejudiciais (por exemplo, find-file-noselectpara ler arquivos de maneira não interativa).

Diz-se também que o Gnus tem um bom código, mas, novamente, eu seria cuidadoso em determinar o quão bem mantida é a parte específica do código que você está olhando.

Como o próprio Emacs é muito antigo, e apenas superficialmente mantido em muitos lugares, a qualidade média de seu código é realmente bastante baixa para os padrões modernos. Há muitas coisas herdadas lá. Por exemplo, mesmo em partes principais, como o compilador de bytes, você encontrará “TODO” e “DUNNO” datando de anos, se não décadas. Além disso, como o Emacs é muito lento para receber código e desenvolvedores da comunidade "externa" devido às políticas restritivas estabelecidas pela FSF, a qualidade geral aumenta apenas lentamente.

No geral, é mais provável que você encontre um bom código em pacotes populares de terceiros mantidos por membros da comunidade de alto nível, como Magit, Projectile, etc.

lunaryorn
fonte
2
Oh, entendo, eles mudaram para o último porta-malas.
shosti 24/09/14
3
Aqueles que planejam mergulhar no código dos gnus: Por favor, tome cuidado. Essas são águas profundas e não queremos perder ninguém.
Malabarba 25/09
2
Se você olhar para o Magit, recomendo olhar para o próximo ramo.
tarsius
2
Você tem algo para fazer backup de sua última reivindicação? Eu fortemente esperar o contrário ...
Rasmus
1
O que eu tinha em mente era: "[...] o Emacs é superficialmente [...] mantido em muitos lugares, a qualidade média de seu código é realmente bastante baixa" versus "é mais provável que você encontre um bom código no terceiro popular pacotes de festa ". Mas "Emacs é muito lenta para tomar código e os desenvolvedores do‘fora’" também parece absurdo IMO (você ler a debbugs?) ...
Rasmus
1

Para expressões básicas, consulte simple.el

mpontus
fonte