为了账号安全,请及时绑定邮箱和手机立即绑定

emacs里面hook的问题

emacs里面hook的问题

慕桂英546537 2019-03-29 11:00:16
我在init.el里面写了一句:(add-hook'latex-mode-hook(lambda()(require'setup-latex)))然后setup-latex.el里面写了一些设置:(add-hook'LaTeX-mode-hook'auto-fill-mode)(add-hook'LaTeX-mode-hook'LaTeX-math-mode)(add-hook'LaTeX-mode-hook'flyspell-mode)(add-hook'LaTeX-mode-hook'turn-on-reftex)...问题就是:第一次打开.tex文件的时候setup-latex.el里面那些配置没有生效,要关闭文件再重新打开文件(即第二次及以后打开文件)才会生效。我的理解就是,add-hook的时候如果对应的mode应该打开了的话这些hook就不会生效了?要下次打开这个mode才有效?当然,如果把setup-latex.el里面的配置直接复制到init.el代替里面的lambda当然是没有问题的。但我不想emacs启动的时候就eval这些配置。另外,我想问一下latex-mode和LaTeX-mode,latex-mode-hook和LaTeX-mode-hook是什么关系。Emacs新手,求帮助!
查看完整描述

2 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

不要用你那个在.emacs里面用(load"setup-latex")
                            
查看完整回答
反对 回复 2019-03-29
?
SMILET

TA贡献1796条经验 获得超4个赞

在setup-latex.el的末尾加上:
(provide'setup-latex)
因为你想require的东西先要provide。欲取先予嘛。
另外,LaTex-mode是latex-mode的别名。C-hfRETLaTex-mode看LaTex-mode的帮助,
可以看到
LaTeX-modeisanaliasfor`latex-mode'in`tex-mode.el'.
                            
查看完整回答
反对 回复 2019-03-29
  • 2 回答
  • 0 关注
  • 536 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信