Я пытаюсь проверить, доступен ли server-running-p
в моем файле .emacs, прежде чем вызывать его. У меня уже есть следующее:
(if (not (server-running-p))
(server-start))
Но на некоторых компьютерах, где я использую Emacs, вызов (server-running-p)
дает ошибку, потому что указанный вызов недоступен. Поэтому я хочу проверить, доступен ли server-running-p
до его вызова. Я думал, что boundp
выполнит попытку, но вызовет (boundp 'server-running-p)
return nil
, хотя вызов (server-running-p)
завершается успешно. Правильный способ проверки того, что вызов server-running-p
не завершится неудачно... или, по крайней мере, подавить ошибку, если указанный вызов завершился с ошибкой. (И какой странный объект server-running-p
в любом случае boundp
возвращает nil
, но вызов его преуспевает?)
Это относится к Emacs 23.2.1, если это имеет значение.
Собственно нашел ответ. По этой причине вы должны использовать fboundp
вместо boundp
.