Emacs

Питання та відповіді для тих, хто використовує, розширює або розвиває Emacs

1
підсвічування синтаксису у вихідних блоках
Я думав, що в org-режимі виділено вихідні блоки з відповідним режимом. Так, наприклад: #+BEGIN_SRC clojure (defn plus [a b] (+ a b)) #+END_SRC Це відображатиметься із виділенням синтаксису, якого можна було б очікувати, якщо у буфері Clojure. Чомусь моя установка просто показує приклад вище в одному монотонному кольорі сірого кольору.

2
Перетворіть список або структуру даних у документ org
Я пишу пакунок, який завантажує список списків, вмісту та деяких інших властивостей, які мають відображатися користувачеві. На даний момент org-modeбуфер здається хорошим способом відображення цих заголовків. Нижче наводиться приклад того, як цей список може бути структурований. Це просто ілюстративно, я можу легко перетворити його в будь-яку іншу структуру за необхідності. …
15 org-mode 

1
Як створити динамічне регулярне вираження за допомогою rx?
Я хочу використовувати rxдля створення регулярних виразів зі значеннями часу виконання. В даний час я роблю це: (setq strings '("foo" "bar" "baz")) (eval `(rx symbol-start (or ,@strings) symbol-end)) Однак я вважаю за краще уникати використання eval. Я знайшов rx-to-string, але незрозуміло, яку ФОРМУ я повинен написати: ;; error: Unknown rx …

2
Чи може функція або макрос вказати попередження компілятора байт?
Я пишу функцію, яка, в принципі, бере довільну кількість аргументів. На практиці, однак, вона повинна коли-небудь передавати парну кількість аргументів, і це призведе до небажаних результатів в іншому випадку. Ось фіктивний приклад для контексту: (defun my-caller (&rest args) (while args (call-other-function (pop args) (pop args)))) Коли файл elisp компілюється в …

1
Як використовувати SLIME як проксі між загальною програмою Lisp та Emacs Lisp?
Я намагаюся зробити наступне: У мене є програма, написана на Common Lisp, з якою я хочу мати змогу спілкуватися з Emacs. Програма стосується розбору природних мов, тому мені потрібно отримати доступ до Emacs - вміст буфера та мінімальний попередній синтаксичний розбір, необхідний для створення повідомлень для надсилання до програми Common …

1
Отримайте вміст буфера
Так buffer-stringотримується вміст поточного буфера. Але це не дозволяє вказувати інші буфери. Як я можу обійти це? Чи потрібно мені щось на зразок, save-window-excursionщоб воно працювало?

2
Чи є пакет або режим автоматичного вирівнювання для Emacs?
Бувають випадки, коли я редагую файли (наприклад, Маріонеткові маніфести), коли я хочу вирівняти вміст буфера на ходу. Наприклад, я знаю, що я можу використовувати align-regexpабо alignвирівняти такий код, якщо я вибрав: # M-x align-regexp "=>" will line everything up nicely file { "/etc/foo": ensure => present, mode => "0666", source …
15 align 

2
Shift + Up не розпізнається Emacs у терміналі
Дуже часто використовую Shift+, Up/Downщоб вибрати регіон у Emacs. Він прекрасно працює в режимі GUI, але коли emacsвикликається -nwопцією, я можу вибрати рядки лише з Shift+ Down. Shift+ UpЧи не працює, я отримую повідомлення про помилку в мінібуфер: <select> is undefined Як я можу вирішити це питання?

2
Доступне складання коду в бахромі Emacs
Я хотів би налаштувати мою бахрому Emacs для відображення розділів складання коду. Наприклад, BBEdit на Mac показав би таке при редагуванні файлу JSON: Самі позначки є діючими: натискання на позначку розширить або згорнуть відповідний розділ коду. Якщо документ не має режиму, який підтримує складання коду, бахрома не відображається. Чи можливо …

2
Як я можу перевірити та використовувати регулярний вираз Perl інтерактивно?
Скажіть, у мене буфер з текстом. Я хотів би перевірити регулярний вираз (в ідеалі тип Perl) проти мого буфера і Emacs виділити відповідність на ньому. Наприклад, такий регекс ( узятий із Вікіпедії ): (?<=\.) {2,}(?=[A-Z]) відповідатиме наступному тексту: Цей регулярний вираз, зокрема, відповідає щонайменше двом пробілам, що виникають після періоду …



2
Як я можу встановити локальну змінну каталогів щодо розташування файлу .dir-locals.el?
Я часто опиняюся в ситуації, коли мені кажуть ставити відносні шляхи як локальну змінну каталогів. Наприклад, cmake-ide 's cmake-ide-project-dirі cmake-ide-build-dir. Звичайно, це не дуже портативно. Тож замість .dir-locals.el: ((nil . ((cmake-ide-project-dir . "/home/user/code/project")))) Я хочу щось подібне ((nil . ((cmake-ide-project-dir . directory-of-current-dir-locals-file)))) Як я можу визначити таку змінну directory-of-current-dir-locals-file? І …

3
Переміщення за допомогою відступу
Я хочу переходити між рядками файлу на основі відступу. Файл структурований за допомогою відступу: рядок, який є більш відрізним, ніж попередній рядок, є дочірньою частиною попереднього рядка; рядок, який має такий самий відступ, як і попередній рядок, є його побратимом. Я в основному шукаю три команди: Перейдіть до наступного рядка, …

2
Magit надзвичайно повільно в Windows. Як оптимізувати?
Я змушений використовувати Windows 10 для проекту. Так, я вважаю за краще використовувати GNU / Linux. Щоб зберегти розум, я намагався розглядати Windows як завантажувач Emacs :) На жаль, Magit (одна з моїх улюблених частин Emacs, яка також компенсує відсутність хорошого командного рядка в Windows) нестерпно повільний. У мене є …

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