Запитання з тегом «elisp»

для запитань про Emacs Lisp як про мову, порівняно з іншими мовами, зокрема, порівняно з іншими Lisp діалектами. Тобто, це питання * про саму мову *. * НЕ ВИКОРИСТОВУЙТЕ * для запитань щодо * використання * Emacs Lisp. Emacs Lisp - це сценарій та мова програмування, на якій створений редактор Emacs.

4
Переваги налаштування змінних за допомогою setq замість custom.el?
Я бачу, що багато людей (автори розширень та інші) наводять приклади конфігурації з setq: (setq foo 'bar) Ці параметри часто визначається з defcustom, що робить їх доступними для настройки через custom.el. Я зазвичай використовую їх custom.elдля встановлення. Чи є якась перевага використання setqзамість цього або два способи приблизно еквівалентні?

6
Чи можна використовувати org-режим для структурування мого .emacs або іншого файлу конфігурації .el?
Мій .emacsфайл конфігурації стає все більшим і більшим, і я хотів би отримати кращий огляд та структурування, додавши заголовки, підзаголовки та зможу приховати або показати їх, як я можу робити з Emacs org-mode. Я помітив, що я можу активувати org-modeтакож у .emacsбуфері і що можна додавати заголовки і згортати їх. …

3
Як зберегти макрос клавіатури як функцію Lisp?
Дуже часто мені потрібно виконувати набір кроків, що вимагають декількох натискань клавіш. Для того ж сеансу ці кроки можна записати в макрос клавіатури. Прикладом є збереження часто виконуваних операцій пошуку / заміни як макросу клавіатури. Але цей макрос втрачається, коли я кидаю emacs. Як я можу зберегти часто використовуваний макрос …

2
Чому у Elisp немає просторів імен?
Питання: Чому у Elisp немає просторів імен, і як ми могли їх отримати? У Elisp немає просторів імен, крім глобальних, що призвело до конвенції кодування префіксації всіх глобальних функцій, змінних та констант унікальним префіксом. Окрім фактора роздратування, це також вражає мене проблемою закипання, що дається 1) постійно зростаючою кількістю великих …
40 elisp 

9
Як я можу почати вивчати Emacs Lisp?
Фон: Я здебільшого користувач vi та переходжу на Emacs. Минулі основи і тепер використовуйте його для написання коду на C та деяких Python, які також планують зробити перетворення R. Я писав (звичайний) LISP протягом двох десятиліть тому, коли я навчався в середній школі, але зараз сильно провалився (можу написати привіт, …

5
Як замінити елемент аліста?
У мене це є за замовчуванням у моїх auto-mode-alist: ("\\.js\\'" . javascript-mode) (навіть з emacs -Q). Я хотів би замінити js2-modeна javascript-mode. Звичайно, я міг би скористатися assq-delete-allі add-to-listзнову, але мені цікаво, чи немає кращого способу. Редагувати: явно не хочу використовувати налаштування, я віддаю перевагу самому майструвати init.el.

3
Чому "пускають" швидше за допомогою лексичного обсягу?
Читаючи вихідний код для dolistмакросу, я наткнувся на наступний коментар. ;; Це не є надійним тестом, але це не має значення, тому що обидві семантики є прийнятними, одне трохи швидше при динамічному оцінюванні, а інше трохи швидше (і має більш чітку семантику) з лексичним визначенням . Який посилався на цей …

3
Як знати, коли або коли не використовувати єдину цитату перед назвами змінних?
У мене є наступне: (setq some-variable "less") Мене бентежить, чому мені доводиться використовувати одну цитату, boundpа не з якою bound-and-true-p. Приклад 1: (when (boundp 'some-variable) (message "some-variable is %s" some-variable)) Результат: "деяка змінна менше" Приклад 2a: (when (bound-and-true-p some-variable) ;; Note that using single-quote causes error (message "some-variable is %s" …
31 elisp  quote 

4
Коли різко цитувати лямбдаський вираз?
Питання: Коли, якщо коли - небудь, є корисним гострим процитувати lambda, і коли, якщо коли - небудь, ми повинні НЕ гострими процитувати lambda? Люди використовують lambdas трьома способами: звичайний: (lambda (x) x) цитується: '(lambda (x) x) різко цитується: #'(lambda (x) x) Цей потік SO обговорює три типи, цей потік SO …
30 elisp  functions 


3
Коли я повинен використовувати автозавантаження замість вимагати?
Як я розумію require, використовується для завантаження великих фрагментів коду (щось на зразок модулів), хоча він також може завантажувати окремі функції. Автозавантаження з іншого боку, лише реєструє функції та відзначає завантаження на час виконання. Нещодавно я читав статтю, яка виступає за використання autoloadвиключно. Це краще, autoloadніж робити require? Які типові …

1
Як я можу використовувати надвисоку?
У мого конфігурації повно порад, і я постійно чую про новий блискучий мінімалістичний nadvice.elпакет. Я шукав посібники, і читав джерело , але відкрито визнаю: я все ще не маю уявлення, як насправді ним користуватися. Хтось тут може вказати мені на путівник чи розповісти, як почати переносити поради в старому стилі?

2
exec-шлях та $ PATH
Я бачив приклади в Інтернеті, де люди додають шляхи до шляху за замовчуванням у Emacs за допомогою: (add-to-list 'exec-path "/usr/local/bin/") Я новачок у Елісп, і, думаю, я розумію, що робить твердження вище, але у мене є кілька питань: У якому порядку Emacs здійснює пошук через контури виконання? Наприклад, чи враховує …
28 elisp  path 

3
Яка різниця між натисканням та доповненням до списку?
Я виявив, що різні пакунки в інструкціях по установці використовують або push або доповнення до списку (наприклад, додавання каталогу до load-path), і мені було цікаво, в чому різниця і в чому полягатиме випадок використання для кожного.
28 elisp 

2
Необов’язкові параметри за замовчуванням
Emacs Lisp не має синтаксичної підтримки для ненульових стандартних параметрів необов'язкових параметрів. Яка рекомендована ідіома для подання цих параметрів? Щоб уточнити мою думку, ось один із надто явних способів цього зробити. (defun command (a &optional supplied-b) (let ((b (or supplied-b default-b))) (command-body a b))) Що, якщо що, є рекомендованим стилем?
26 elisp 

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