Emacs C++ 函数声明的模式缩进

发布于 2024-10-24 04:17:07 字数 312 浏览 4 评论 0原文

我公司的编码标准已经改变,函数声明

void foo( int a, float* b);

现在必须写成:

void
foo(int    a,
    float* b);

其中变量的类型和变量的名称都必须垂直对齐。

我正在使用 emacs 23.2 和 c++ 模式。

此模式排列每个变量类型,但不允许我缩进变量名称以匹配。

是否有内置设置允许这样做?

如果没有,我需要关闭什么才能允许我自由缩进变量名称?

The coding standards at my company have changed such that the function declaration

void foo( int a, float* b);

must now be written as:

void
foo(int    a,
    float* b);

Where both the type of the variable and the name of the variable must be vertically aligned.

I'm using emacs 23.2 with c++-mode.

This mode lines up each variable type but won't let me indent the variable names to match.

Is there a build in setting to allow this?

If there isn't, what do I need to turn off to allow me to freely indent my variable names?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你另情深 2024-10-31 04:17:07

也许您想要的是Mitab-to-tab-stop)。

这会将光标移动到下一个制表位。制表位可以通过变量 tab-stop-list 配置,默认为每八列一次。请注意,这将插入空格或实际制表符,具体取决于局部变量 indent-tabs-mode。 (注意不要将其与 tab-width 混淆,后者会影响实际 TAB 字符的显示方式。)

这并不总是使参数名称位于尽可能低的列中,例如,您最终可能会得到

void
foo(int     a,
    float*  b);   // two spaces there

但请注意,这在某种程度上更易于维护——当添加具有较长类型名称的新参数时,您不一定需要修复其余部分,只有在跨越选项卡列时才需要修复。

Perhaps what you want is M-i (tab-to-tab-stop).

This will move the cursor to the next tab stop. The tab stops may be configured by the variable tab-stop-list, which defaults to every eight columns. Note this will either insert spaces or actual TAB characters depending on the local variable indent-tabs-mode. (Be careful to not confuse this with tab-width, which influences how actual TAB characters are displayed.)

This will not always make the param names in the lowest possible column, e.g., you may end up with

void
foo(int     a,
    float*  b);   // two spaces there

but note that this is somewhat more maintainable-- when adding a new param with a longer type name you won't necessarily have to go fix up the rest, you'll only have to if you cross a tab column.

野却迷人 2024-10-31 04:17:07

选择带有参数的行,然后Mxalign

Select the lines with the arguments then M-x align

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文