Emacs Lisp: оцените переменную в alist

Мой "очень расширяемый редактор", предпочтительный, является энергией. Запущенное использование vi 10 лет назад, в 17 лет, и я действительно не оглянулся назад. Мне нравится избегать моей мыши как можно больше.

я редко работаю на скомпилированных языках в эти дни, таким образом, единственная вещь, я чувствую, что отсутствую в IDE, завершение синтаксиса. Постоянно переключение на браузер для поиска порядка аргументов различным функциям PHP становится немного утомительным.

пз: Я не хочу запускать vi/Emacs войну здесь. Я подозреваю, что Emacs и vi [m] пользователи имеют больше общего друг с другом, чем любая группа имеет с IDErs.

26
задан Laurynas Biveinis 2 November 2009 в 22:50
поделиться

2 ответа

Попробуйте следующее:

(setq my-frame-width 100)
(setq my-frame-height 50)
(add-to-list 'default-frame-alist `(width . ,my-frame-width))
(add-to-list 'default-frame-alist `(height . ,my-frame-height))

Использование обратных кавычек вместо кавычек позволяет использовать принудительную оценку параметра.

См. Справочное руководство по Elisp. Введите Cx info, найдите справочное руководство elisp, а затем найдите в нем обратную цитату.

34
ответ дан 28 November 2019 в 07:12
поделиться

В качестве альтернативы оператору обратной кавычки в ответе mch , вы можете использовать функцию cons . Эта функция построит cons-ячейку с первым аргументом в качестве автомобиля и вторым аргументом в качестве cdr. Обозначение пунктирной пары в вашем коде является сокращением для этого. Итак, мы могли бы переписать ваш код следующим образом:

(setq my-frame-width 100)
(setq my-frame-height 50)
(add-to-list 'default-frame-alist (cons 'width my-frame-width))
(add-to-list 'default-frame-alist (cons 'height my-frame-height))

Таким образом, вы можете заключить в кавычки символы, которые должны отображаться буквально (например, ширина и высота), и оценить символы, значения которых вам нужны (например, my-frame-width и my-frame-height). Я предпочитаю этот метод, потому что он более простой. Однако это, безусловно, вопрос мнения. Вот еще информация о минусах и список для дальнейшего использования.

13
ответ дан 28 November 2019 в 07:12
поделиться