Emacs

Q & A для тех, кто использует, расширяет или разрабатывает Emacs

6
Как получить буферы (не только файлы), чтобы соблюдать auto-mode-alist?
Q: как я могу получить новые буферы для соответствия отображению auto-mode-alist? При поиске файла Emacs сравнивает расширение файла с тем, auto-mode-alistчтобы определить, какой основной режим использовать для буфера файла. Есть ли способ использовать информацию auto-mode-alistдля определения режима для буфера, с которым (пока) не связан файл? То есть: если я открою …

4
Различия между установкой основных клавиш режима с помощью ловушки и добавлением их на карту режимов
Предположим, что я скачал основной режим под названием magical-mode, и у него есть своя магическая раскладка magical-mode-map. Этот режим также обеспечивает ловушку, magical-mode-hookкоторая запускается каждый раз, когда magical-modeстановится основным режимом буфера. Теперь я хочу изменить свой файл инициализации, добавив несколько пользовательских привязок клавиш для использования в этом режиме. Кажется, что …

1
Как контролировать, в каком окне отображается буфер?
Вопрос: как я могу контролировать, какое окно org-deadlineиспользуется для отображения календаря? org-deadlineвременно устанавливает calendarбуфер в окне при установке крайнего срока, а затем снова закрывает его после завершения. Когда есть только одно окно, оно открывает новое окно внизу существующего фрейма. Когда имеется несколько окон, он выбирает одно - я полагаю, что-то …
13 org-mode  window 

2
Безопасный способ `enable-local-variable`?
Я унаследовал свой файл .emacs от друга около 18 лет назад. Посередине находится зловещий комментарий, предупреждающий о последствиях безопасности для этой enable-local-variablesфункции: ;; Date: Wed, 7 Dec 1994 11:57:50 -0600 ;; From: blob@syl.dl.nec.com (David Blob) ;; Subject: Self-extracting emacs elisp code ;; ;; With all this talk about self extracting …

7
Зло: сопоставить сочетания клавиш в Vim?
Я пытаюсь заставить Зло функционировать evil-jump-to-tag, C-]вести себя как привязка Emacs M-.. Нормальное поведение подходит для просмотра файлов тегов, но я хочу, чтобы оно работало также для Slime slime-edit-definition, Elisps elisp-slime-nav-find-elisp-thing-at-point, Clojures cider-jump-to-varи т. Д. Эти основные режимы и многие другие связывают некоторый эквивалент перехода к определению с привязкой клавиш …
13 keymap  evil 

1
Почему я не могу привязать свою функцию к клавише или вызвать ее с помощью Mx?
Я написал функцию и хочу вызвать ее через Mx и связать ее с ключом. Это моя функция: (defun my-function () (message "This is a great function")) Если я пытаюсь вызвать его M-x my-function, я получаю ошибку: [no match]в мини-буфере. Если я пытаюсь связать его с клавишей (или щелчком мыши): (global-set-key …

2
Можно ли отключить или включить проверку синтаксиса для режима js2?
У меня есть настройки по умолчанию js2-mode. Это обеспечивает хорошую подсветку и проверку синтаксиса, но сейчас я работаю над проектом с другим набором стилей (в частности, этот новый проект не использует точки с запятой). Это приводит к тому, что каждая строка кода подчеркивается js2-modeпредупреждением:missing ; after statement Есть ли способ …

3
Могут ли результаты org-babel выводиться как комментарии к коду?
В блогах, учебниках и т. Д. Действительно часто результаты кода отображаются в виде комментариев, например: (+ 1 1) ;=> 2 Есть ли способ автоматически отображать такие результаты, используя функцию Babel в Org-Mode? В частности, я хотел бы иметь возможность указать заголовок, такой: #+begin_src scheme <some headers> (+ 1 1) (/ …

1
Получить временную шкалу времени в орг-режиме
В попытке выяснить, как я трачу свое время, я начал записывать свое время, потраченное на различные задачи, с помощью org-clock-inи org-clock-out. Я часто нахожу себя редактирующим записи часов вручную, например, когда я понимаю, что я должен был синхронизироваться 20 минут назад. Так есть ли способ увидеть а) какие часы работают …

4
Как отменить выделение символа, выделенного с помощью highlight-symbol-at-point
highlight-symbol-at-point действительно полезно, однако я не мог найти простой способ отменить выделение символов. В настоящее время мне приходится звонить unhighlight-regexpповторно для каждого выделенного символа. Есть ли лучший способ: отменить выделение всех выделенных символов в буфере Выделить символ в точке?

2
Есть ли способ заставить режим Org игнорировать блоки src при экспорте в html?
У меня есть документ org с разбросанными исходными блоками, которые я бы хотел исключить при экспорте файла в html. Есть ли переменная или опция, которую я могу установить, которая будет игнорировать блоки src? Я попытался использовать noexport, как показано ниже, но код все еще появляется в результирующем HTML. #+BEGIN_SRC json …

7
Какие пакеты доступны для модального редактирования?
Какие пакеты доступны для модального редактирования в Emacs? Что вы используете и почему? Давайте попробуем опубликовать один пакет за ответ. Предлагаю упомянуть преимущества и недостатки каждой упаковки. Вот мое определение модального редактирования (я не смог найти отдельную статью в Википедии): Модальное редактирование - стиль редактирования текста, когда пользователь периодически переключается …

2
Как вы обновляете определение второстепенного режима по мере его разработки?
Я начал кодировать второстепенный режим, чтобы обеспечить некоторые сочетания клавиш. Моя первая попытка была опечатка: (define-minor-mode borked-mode "A mode defined with a broken key binding" nil nil '(([b] . 'previous-line))) Я намеревался использовать bключ и сразу понял, что должен был использовать "b"вместо [b]. Поэтому я переопределил второстепенный режим: (define-minor-mode borked-mode …
13 minor-mode 


9
Как редактировать elisp, не теряясь в скобках
Я изменяю некоторый код elisp из linum.el: (custom-set-variables '(linum-format 'dynamic)) (defadvice linum-update-window (around linum-dynamic activate) (let* ((w (length (number-to-string (+ (count-lines (point-min) (point-max)) 1)))) (linum-format (concat " %" (number-to-string w) "d "))) ad-do-it)) Я смог исправить ошибку, когда отступ был один за другим, изменив (count-lines (point-min) (point-max))на (+ (count-lines (point-min) …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.