【问题标题】:symbol's value as variable is void: php-executable符号作为变量的值是无效的:php-executable
【发布时间】:2015-02-22 11:39:32
【问题描述】:

当我尝试通过在 Emacs 中按 C-c C-y 来使用 php-auto-yasnippets 时,我在 minibuffer 上打印了以下警告

symbol's value as variable is void: php-executable

我正在使用带有 php5-cli 的 Ubuntu 14.04。我确实在我的 emacs 配置文件中使用 setq 将变量设置为正确的路径

(add-to-list 'load-path "~/.emacs.d/site-lisp")
(add-to-list 'load-path "~/.emacs.d/elpa/yasnippet-0.8.0")
(require 'php-auto-yasnippets)
(setq php-auto-yasnippet-php-program "~/.emacs.d/site-lisp/Create-PHP-YASnippet.php")

我知道这个问题已经用其他模块解决了,但我不擅长用 lisp 编程来修复 php-auto-yasn-ps 模块。非常感谢任何帮助

【问题讨论】:

    标签: emacs yasnippet


    【解决方案1】:

    看起来php-auto-yasnippets 代码依赖于同一作者编写的php-mode。您可以按照php-mode repository 中提供的说明进行安装,然后在php-auto-yasnippets 软件包之前使用require,如下所示:

    (add-to-list 'load-path "~/.emacs.d/site-lisp")
    (add-to-list 'load-path "~/.emacs.d/elpa/yasnippet-0.8.0")
    (require 'php-mode)
    (require 'php-auto-yasnippets)
    (setq php-auto-yasnippet-php-program "~/.emacs.d/site-lisp/Create-PHP-YASnippet.php")
    

    或者您可以先尝试设置 php-executable 变量,但不确定这是否会解决其他未知的依赖关系:

    (add-to-list 'load-path "~/.emacs.d/site-lisp")
    (add-to-list 'load-path "~/.emacs.d/elpa/yasnippet-0.8.0")
    (setq php-executable "/usr/bin/php")
    (require 'php-auto-yasnippets)
    (setq php-auto-yasnippet-php-program "~/.emacs.d/site-lisp/Create-PHP-YASnippet.php")
    

    【讨论】:

    • 好的,你的第二种方法解决了这个问题。谢谢!
    • @Tetravalente:在这种情况下,请考虑接受对您有帮助的答案,以便将其从未回答的问题列表中删除,以便用户可以将其作为有用的信息。
    猜你喜欢
    • 2014-10-20
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-22
    • 1970-01-01
    相关资源
    最近更新 更多