在这里完成emacs新手。
我在 Ubuntu 上使用 emacs 23.1.1 和emacs starter kit。我主要在 lua 模式下工作(安装时package-install lua-mode)。
我需要调整缩进的工作方式,使其符合我的编码指南。
指导方针是:
- 制表符到空格;
- 每个缩进两个空格;
- 每行最多 80 个字符,没有尾随空格。
例子:
本地 foo = 函数()
print("你好,世界!")
结尾
如果我不尝试与它的自动缩进抗争,我会从 emacs 得到什么:
本地 foo = 函数()
打印(“你好,世界”)
结尾
更新:
(这属于评论,但由于它需要额外的格式,我必须把它放在这里。)
如果我尝试 Thomas 的解决方案,我会得到:
本地 foo = 函数()
打印(“你好,世界”)
结尾
请注意,它使用制表符和四个空格end缩进。不太行...
更新 2:
这件事也以错误的方式缩进:
本地酒吧 = foo(
“一”,
“二”,
baz(), -- 注意三个空格
“现状”
)
它应该是:
本地酒吧 = foo(
“一”,
“二”,
巴兹(),
“现状”
)
更新 3:
缩进错误的第三种情况:
本地酒吧 = foo(
“一”,
“二”
)
local t = 5 -- 此行不应缩进,
-- 还要注意 local 和 t 之间的选项卡。
更新 4:
这是我从 Thomas 的当前版本中得到的:
本地 foo = 函数()
打印(“你好,世界”)
结尾
local bar = 5 -- Emacs 把 \t 放在 5 之前
local zzz = foo( -- Emacs 把 \t 放在 foo 之前
"one", -- 在此处按 TAB 两次
“二”,
三(),
“四”
)
除非明确指出,我没有对缩进做任何事情,只输入代码并RETURN在每一行的末尾按下。我实际上没有输入任何评论。
它应该如下所示:
本地 foo = 函数()
打印(“你好,世界”)
结尾
当地酒吧 = 5
本地 zzz = foo(
“一”,
“二”,
三(),
“四”
)
更新 5:
还有一种错误的缩进情况:
本地富=
{
酒吧(); -- 在这里按了一个 TAB,但右括号杀死了它
巴兹;
}
应该:
本地富=
{
酒吧();
巴兹;
}
更新 6:
为了完整起见,这是我使用当前 Git HEAD 的 lua-mode得到的,没有 Thomas 的配置调整:
本地 foo = 函数()
print("你好,世界!")
结尾
当地酒吧 = 5
本地 foo = bar(
酒吧,
巴兹(),
现状(),
啊啊啊
)
本地 t =
{
“一”,
二(),
}
带调音:
本地 foo = 函数()
print("你好,世界!")
结尾
当地酒吧 = 5
本地 foo = bar(
酒吧,
巴兹(),
现状(),
啊啊啊
)
本地 t =
{
“一”,
二(),
}
为了符合我的编码指南,它应该如下所示:
本地 foo = 函数()
print("你好,世界!")
结尾
当地酒吧 = 5
本地 foo = bar(
酒吧,
巴兹(),
现状(),
啊啊啊
)
本地 t =
{
“一”,
二(),
}