在Emacs中设置PHP的初始缩进级别?

时间:2009-07-14 17:38:35

标签: php emacs indentation

我通常在初始<?php之后使用一级缩进对我的PHP进行编码,但我在使用php-mode的Emacs中找不到这个设置。

要清楚,这就是Emacs正在做的事情:

<?php
echo "Hello.";

if (something)
    do_something();

这就是我通常编码的方式:

<?php
    echo "Hello.";

    if (something)
        do_something();

Emacs版本23(直接来自CVS),php-mode 1.5.0。

3 个答案:

答案 0 :(得分:2)

我认为找到了解决方案:

(c-set-offset 'topmost-intro 4)
(c-set-offset 'cpp-macro -4)

似乎有效。 topmost-intro设置了所有内容,据我所知cpp-macro只设置<?php代码。

感谢Cheeso的提示让我得到答案。

答案 1 :(得分:1)

我没有php模式,但在c模式下,M-x c-set-offset可以提供帮助。 - 它允许您自定义语法元素的偏移量,并显示当前行使用的元素。

答案 2 :(得分:0)

php-mode来自c-mode,所以我认为你需要的只是:

(setq-default indent-tabs-mode nil)
(setq standard-indent 2)
(setq default-tab-width 2)
(add-hook 'c-mode-common-hook
  #'(lambda ()
    (setq c-basic-offset tab-width)))

如果那不是你的意思,也许你正在寻找tab-stop-list