emacs ERC命令仅在文件存在时才有条件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了emacs ERC命令仅在文件存在时才有条件相关的知识,希望对你有一定的参考价值。

我的emacs init文件中有以下内容:

(if (file-readable-p "~/.ercpass") (load "~/.ercpass"))

(setq erc-nickserv-passwords
                `((freenode     (("jacob" . ,freenode-nickone-pass)))))

只有当~/.ercpass(其内容为(setq freenode-nickone-pass "mypassword"))可读时,我才想要加载文件并使用ERC密码。如果文件存在,一切正常。但如果它不存在,第二行会抛出一个错误:

Symbol's value as variable is void: freenode-nickone-pass

如何使第二行也取决于~/.ercpass是否可读?

答案
(if (file-readable-p "~/.ercpass")
    (progn
      (load "~/.ercpass")
      (setq erc-nickserv-passwords
            `((freenode     (("jacob" . ,freenode-nickone-pass)))))))

以上是关于emacs ERC命令仅在文件存在时才有条件的主要内容,如果未能解决你的问题,请参考以下文章

用于 IRC 的 Emacs ERC 自动 Nickserv 识别

为啥 rewrite_rule 仅在文件夹存在时才有效?

仅当目录或文件不存在时才重写规则

仅在满足某些条件时才调用 Safari Content Blocker 扩展?

如何编写查询以仅在满足条件时才显示值?

mongo 仅在每个元素都符合条件时才查找