Вопросы с тегом «elisp»

9
Как проверить, посещает ли буфер файл?

Я хотел бы проверить, посещает ли какой-нибудь (скажем, текущий) буфер файл или нет. Я мог бы сказать: (if (buffer-file-name) ...) но это кажется не очень элегантным - меня интересует только логическое значение, а не фактическое имя рассматриваемого буфера. Если бы buffer-file-nameфункция была...

9
Есть ли лучший способ обработки многострочных строк документации в elisp?

Я ненавижу способ, которым elisp (не уверен, что LISP вообще) обрабатывает многострочные строки документов. (defun foo () "This is a multi liner docstring" (do-stuff)) Я действительно хочу, чтобы я мог сделать что-то вроде (defun foo () (eval-when-compile (concat "This is\n" "a multi\n" "line\n"...

9
Временный текст в расположении окна без текста для его настройки или наложения?

Вопрос: как временно отобразить текст в окне в тех местах экрана, где нет текста для его наложения / наложения? Я знаком с основной идеей текстовых свойств и наложений (см. Также эту ветку ), несколько раз использовал их, но ни в коем случае не разбираюсь в них. Мое ограниченное понимание состоит в...

9
Функция для удаления всех комментариев из буфера, не перемещая их, чтобы убить кольцо

Мне нужно иметь возможность удалить все комментарии из буфера из кода elisp. На данный момент я использую: (goto-char (point-min)) (comment-kill (count-lines (point-min) (point-max))) Однако comment-killэто интерактивная функция, и ее основным назначением является удаление одного комментария за...

9
Как определить, является ли текущий символ буквой

Как я могу определить, является ли текущий символ буквой (буквенным символом) (то есть принадлежит ли класс синтаксиса [:alpha:]в понятиях регулярного выражения). Я хотел бы написать простую функцию, как показано ниже: (defun test-letter () (interactive) (if char-after-is-a-letter (message "This is...

9
Глубоко скопировать строку в Elisp?

У меня есть специальная строка. Я хочу сделать его глубокую копию, чтобы добавить больше свойств, сохраняя при этом свойства в исходной строке. Как я могу это сделать (легко)? пример Оцените один за другим: (setq test-str-1 #(";; This `is' a test" 0 3 (fontified nil face...

9
Как переключить статус исходного кода в режиме Org «: eval no»

Я часто ограничиваю или ограничиваю оценку конкретных блоков кода в babel-режиме org, используя :evalаргумент header. Вот пример: #+BEGIN_SRC emacs-lisp :results value scalar :eval no (+ 1 1) #+END_SRC #+RESULTS: : 2 Я переключаю блоки кода между :eval noи :eval n(или :eval noполностью удаляю )...

9
Как определить версию пакета, которая требуется в вашем пакете?

У меня сейчас есть пара пакетов, и в разделе PackageRequires я хотел бы поместить в него все пакеты, которые мне нужны, но кажется, что для этого нужны имя и версия. Где вы определяете номер версии? Например, у меня есть (cl-lib "0.5"), но какой лучший способ определить минимальную версию, которую...

9
Как контролировать, где отображается буфер ключевых слов org todo?

Вопрос : как я могу контролировать, где orgпоявляется буфер ключевых слов todo? Ввод todoключевого слова с помощью C-c C-t( org-todo) открывает новый буфер с параметрами ключевого слова, а затем снова закрывает его после выбора. Все идет нормально. Тем не менее, для этого требуется другое окно, что...

9
Простое использование request.el

Мой неловко простой вопрос заключается в следующем: Почему работает следующий код: (require 'request) (defun geocoder () (request "http://rpc.geocoder.us/service/csv" ;;; **Hardcoded parameter!** :params '(("address" . "1600 Pennsylvania Ave, Washington DC")) :parser 'buffer-string :success...

8
Что такое крюк?

Просто чтобы уточнить ... Например, в этом документе : Хук - это переменная Лиспа, которая содержит список функций, которые должны вызываться по какому-то определенному случаю. (Это называется выполнением ловушки.) Отдельные функции в списке называются функциями ловушки. Например, ловушка...