如何制作emacs';编码模式使用单引号代替双引号

如何制作emacs';编码模式使用单引号代替双引号,emacs,emmet,Emacs,Emmet,我在编写html时使用单引号,但Zencodeding模式的扩展代码使用双引号 我找不到自定义选项,我的ZenCodeding模式来自它看起来像“是硬编码到源代码中的,所以没有直接的方法来自定义它。这很容易做到,所以也许你可以向维护者提交一个功能请求 同时,看起来您需要的是一个修改版的zencoding make html标记,将“\”“的所有实例替换为”。您可以将该函数的自定义版本添加到.emacs中,并在编码后使用钩子加载该函数。类似于以下的操作可能会做到这一点: (defun my-zen

我在编写html时使用单引号,但Zencodeding模式的扩展代码使用双引号

我找不到自定义选项,我的ZenCodeding模式来自它看起来像
是硬编码到源代码中的,所以没有直接的方法来自定义它。这很容易做到,所以也许你可以向维护者提交一个功能请求

同时,看起来您需要的是一个修改版的
zencoding make html标记
,将
“\”“
的所有实例替换为
。您可以将该函数的自定义版本添加到.emacs中,并在编码后使用钩子加载该函数。类似于以下的操作可能会做到这一点:

(defun my-zencoding-hook ()
    (zencoding-mode))
(eval-after-load "zencoding-mode"
    '(defun zencoding-make-html-tag ()
       "Insert your modified version of zencoding-make-html-tag here"
       ...))

(add-hook 'sgml-mode-hook 'my-zencoding-hook)

在zencoding-mode.el的源代码中进行搜索和替换会更容易,但更容易发生意外,因为它可以从您下载到的任何地方运行。无论何时更新您的版本,这都会中断,并且可能会中断其他标记语言的行为,但这很简单。

谢谢,我在原始的
zencoding make html标记中用单引号替换了三个双引号,并在我的init文件中添加了一个自定义挂钩,效果很好。@Tyler我修改了你的答案,在加载后使用
eval
,所以函数覆盖只发生一次,而不是每次运行钩子时都发生。@event\u jr-谢谢。我得调查一下,但这听起来是个好主意。