Які хороші інструменти для розробки пакунків Emacs? [зачинено]


17

У нас вже є питання щодо інструментів, корисних спеціально для тестування , а як насправді писати код? Які пакунки ви вважаєте, що прискорюють ваш розвиток? Які посібники ви використовуєте для швидкої та легкої навігації та розуміння своїх проектів?


3
Це питання дуже широке та відкрите. Багато пакетів, які ви вказали у своїй відповіді, можуть застосовуватися до будь-якої розробки коду. Також ця відповідь може містити основний підмножина пакетів, перелічених у диспетчері пакунків. Якщо ви віддаєте перевагу multiple-cursors, хто - то може віддати перевагу visual-regexpабо фг / виведи / Grep з командного рядка або з Emacs або Emacs вбудовані query-replaceабо query-replace-regexpабо що - то інше. Аналогічні аргументи можна зробити для кожного пакету. Натомість гарним питанням було б запитання, як зробити щось конкретне в «розробці пакету».
Каушал Моді

@kaushalmodi Це CW, тому частково я мав намір бути відкритим. Задавати конкретні запитання може бути кращим способом вирішити це, але це питання все ще існуватиме як сукупність цих питань. Я намагався зосередити це питання спеціально на інструментах, які допомагають при розробці файлів lisps та emacs multiple-cursors- наприклад, вони корисні скрізь, але, можливо, є й інші пакети, які поважають явний показник Lisp. Напевно macrostepі ielmне застосовуються ніде більше. Вигадайте це на мета, можливо?
Шон Аллред

@kaushalmodi: хороші моменти, але чи не тому це зараз вікі спільноти? Імовірно, ми могли б відредагувати відповідь на спеціальні пакети, що стосуються програм elisp та загальних програм.
Дан

Добре мати вікі спільноти, але я думаю, що це легко перетвориться на "Які улюблені пакунки?" CW. Візьмемо ще один загальний аспект у вашій відповіді: Навігація .. Швидкісна панель, снаряд, перекриття, організація, г / с / етаги, neotree, панелі вкладок, ido, штурвал та штурвал, ibuffer тощо
Kaushal Modi

@kaushalmodi ido, helm, ibuffer, tabbarЯ не думаю , що -б відповідні записи. Немає нічого, що насправді полегшує розробку еліпса . Вони, безумовно, фантастичні пакети, але (на мій досвід), вони не мають нічого додати для розвитку Elisp . etags- поки я не знайомий з цим, звучить так, як це було б доречно. Можливо, інший CW підходить для цих інших пакетів (тому що вони дійсно заслуговують на згадку), але я боюся, що ваші побоювання з цього питання неодмінно будуть реалізовані в цьому.
Шон Алред

Відповіді:


21

Авторська

  • edebug: Покрокова налагодження коду Elisp.
  • checkdoc: Дізнайтеся про помилки стилю у своїх коментарях та документах.
  • elint: Лінтер для Emacs Lisp.
  • paredit: Маніпулювати кодом lisp як дерева замість ліній. Ніколи не мають незбалансованих дужок.
  • lispy: vi-like альтернатива / суперсет paredit. Додатково включає ярлики для контурів, звуження, едубуг, едіфф, семантичний, ас-стрибковий режим, множинні курсори, сидр, шлам та гейзер.
  • multiple-cursors: Одночасно редагуйте кілька подібних виразів. Інші речі, корисні для рефакторингу коду.
  • erefactor: Рефакторинг коду.
  • redshank: Ще одна бібліотека рефакторингу (розроблена для Common Lisp, але добре працює з Emacs Lisp).
  • macrostep: Інтерактивне розширення макросів в буфері.
  • yasnippet: Фрагменти коду для швидкого розгортання повторюваних ідіом (приклади тут )

Навігація

  • speedbar: Швидка панель - це прекрасний спосіб орієнтуватися по вашому проекту. Він розпізнає "теги" як defuns і defvars (тощо) і надає видимі закладки як контур.
  • outlined-elisp-mode: Колекція налаштувань outlineдругорядного режиму для буферів Elisp.
  • elisp-slime-nav: Миттєвий перехід до функції та визначення змінних за допомогою M-..

Профілювання

  • elp: Інтерактивний інтерфейс для Emacs Lisp Profiler, корисний для вивчення того, що саме у вашій профільованій функції повільно та як вона взаємодіє з рештою Emacs.

Управління

  • names: Надає макрос для створення просторів імен

Контроль версій

  • Gitта його передній край Emacs Magit: мабуть, найкраща система управління версіями та дуже добре продумана фронтальна версія Emacs.

Різне

  • ielm: інтерактивна REPL

Будь ласка, продовжте цей список за допомогою ваших улюблених інструментів, якщо ви вважаєте, що вони дуже корисні.
Шон Аллред

Я перерахував тут
clemera
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.