Подтвердить что ты не робот

Каковы наиболее важные части ELisp для изучения, если вы хотите программировать Emacs?

Я использую Emacs каждый день, так как это стандартный редактор для Erlang.

Я решил, как свое Резолюция Нового года научиться программировать eLisp. Я решил, что написать книгу о eLisp - лучший способ узнать.

У меня неплохой прогресс: Изучите eLisp для Emacs

Стратегическая структура книги

  • начало/основы
  • более продвинутый eLisp
  • запись второстепенного режима
  • запись основного режима

Я познакомился с основами (т.е. первым из этих 4 баллов), охватывающим:

  • оценка выражений
  • Отладка
  • добавление пунктов меню/панелей инструментов
  • загрузка ваших собственных файлов emacs
  • и т.д.

Если вы пишете книгу о языке программирования, вы обычно начинаете, хорошо зная язык, но я этого не делаю, поэтому моя главная проблема сейчас - проблема полноты:

  • Как узнать, что я рассмотрел все функции, которые должен был освоить программист Emacs?
  • Как обеспечить отсутствие пробелов в содержимом?

Поэтому я подумал, что я обращусь к ним, задав здесь сообщество. Мой вопрос: что не хватает из моей таблицы? (в частности, что должно содержать более расширенный раздел eLisp).

4b9b3361

Ответ 1

Теперь, когда интересный способ изучить язык...

Я думаю, что вы, вероятно, пропустили кучу основ в разделе "Начало/Основы". Если вы еще не прочитали его, я рекомендую прочитать "Введение в программирование в Emacs Lisp" (at gnu.org), который охватывает то, что я ожидаю увидеть в разделе "Основы". Я не буду докучать вырезать/вставлять оглавление.

Насколько известно, когда вы написали полную книгу... Ну, как только вы переписали Emacs Lisp manual в форме "как", вы знаете, что все готово. В качестве альтернативы, если вы написали книгу, которая может быть использована для ответа/интерпретации всех elisp и emacs, то вы, вероятно, получили достойный охват.

Какие дополнительные функции вы могли бы написать? Там совет, связь процесса, текст без ASCII, таблицы синтаксиса, abbrevs, текстовые свойства, байтовая компиляция, отображаемые таблицы, images и еще больше в manual.

Примечание. Правильная заглавная буква elisp - либо все строчные буквы, либо, возможно, прописные буквы E. Документация GNU вообще не использует "elisp" (в основном как имя каталога, все строчные буквы), она предпочитает "Emacs" Lisp ".

Примечание. В текущей версии вашей книги вы относитесь к глобальным переменным отрицательно. Вероятно, стоит прочитать "RMS-документ" , чтобы получить некоторое представление о принимаемых проектных решениях, в частности, глобальные переменные, а также динамическое связывание (последнее, которое вы еще не рассмотрели, что является ключевую (базовую) концепцию, которую вы уже ошибли в своей книге).

Ответ 2

Вместо того, чтобы спрашивать сообщество здесь, почему бы не использовать то, что сообщество уже предлагает? Просмотрите все вопросы с тегами "elisp" и посмотрите, где они соответствуют вашей книге. Обзор того, что люди действительно хотят понять, может быть лучшей информацией, которую вы получите.

Ответ 3

"Я прочитал оба руководства GNU - но они не так полезны, если вы не знаете Lisp/elisp."

Совет. Emacs не очень полезен, если вы не знаете Lisp.

Не правда, конечно, но вы поняли. Это действительно так:

Совет. Emacs гораздо полезнее, если вы знаете Lisp. Не говоря уже о веселее.


Что нужно узнать:

  • символы (это простые объекты, свойства - не только идентификаторы)

  • списки - ячейки cons, структура списка (включая изменение/совместное использование)

  • оценка

  • приложение функции

  • регэкспы

  • text/overlay/string свойства (значения могут быть любыми объектами Lisp)

  • буферы и окна

Ответ 4

Я бы посоветовал вам взглянуть на то, что два справочника Info включены в Emacs Emacs Lisp Intro "Введение в программирование в Emacs Lisp" и Elisp "Справочное руководство Emacs Lisp" уже должно предложить, а затем решить, что вы хотели бы добавлять или делать иначе, чем те.