您知道在SGML模式下(PSGML),Emacs可以自动缩进XML缓冲区.
C-x-h ;; Select all M-C-\ ;; Indent
但所有的缩进都是2个空格.如何设置自动缩进到4个空格?
我试过(setq-default sgml-indent-step 4)
,但它不起作用.
目前的观点是:
00001 600000
我的期望是
00001 600000
谢谢!
使用
2008-03-26的GNU Emacs 22.2.1(i386-mingw-nt5.1.2600)发布RELEASE
您正在寻找 sgml-basic-offset
编辑:其实,我应该补充一下我是怎么想的.任何人都不应低估自我编辑的编辑提供的权力:
打开一个sgml文档
C-h k tab
说它与一个看变量的函数绑定indent-line-function
.
C-h v indent-line-function
告诉我要看功能 sgml-indent-line
C-h f sgml-indent-line
很少告诉我 真的没什么.但它也提供了实施的地方.
好吧,看看实现,我发现它正在使用sgml-calculate-indent
.这是算法的核心......向下看,你可以找到tag
最后一个元素所在的情况
(+ (current-column) sgml-basic-offset)
快速C-h v sgml-basic-offset
确保我们正在查看应该自定义的一个变量.确实如此.