2016-06-23 5 views
0

Я пытаюсь написать режим, в котором есть быстрый ключ для добавления ссылок из запроса в известный api. То, что я хотел бы сделать, это запросить остальные api для чисел и сводки элементов из этого api, выбрать пользователя из списка, используя клавиатуру, где они перечислены рядом с алфавитно-цифровыми клавишами, которые затем заполнят буфер с уценкой специфические для этих ссылок.В какой lib обычно используется (или есть lib) для создания быстрых опций emacs, таких как экспорт Magit и Org?

Я бы хотел представить список так же, как Magit представляет меню справки, когда вы нажимаете ?, и как экспорт org представляет меню экспорта. Что обычно выглядит примерно так:

a Link Option 1 
b Link 2 
c Some other ID 

Есть ли lib, который помогает создавать и управлять такими компонентами пользовательского интерфейса?

ответ

2

hydra довольно прост в использовании:

(defhydra hydra-links (:exit t 
         :columns 1) 
    "sample links" 
    ("a" (message "selected Link Option 1") "Link Option 1") 
    ("b" (message "selected Link 2") "Link 2") 
    ("c" (message "selected Some other ID") "Some other ID")) 
+0

Ницца! Я приму это, как только смогу попробовать. Выглядит многообещающе. – lucidquiet

0

Я думаю Гидра (Або-Або, который ответил) лучший вариант, но есть еще несколько, которые перечислены здесь: http://wikemacs.org/wiki/Discoverability

(старая) библиотека magit была извлечена, чтобы получить find.el: https://github.com/mickeynp/discover.el, но afaik немного устарел (magit развился, эта библиотека нет) и имеет меньше возможностей, чем гидра (гидра может выдержать нажатие клавиши, и это все дело).