V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cnbatch
V2EX  ›  程序员

有哪些格式工具可以单独设置 switch 的 case 缩进?已知 clang-format 现时无法做到

  •  
  •   cnbatch · Jul 23, 2025 · 1319 views
    This topic created in 282 days ago, the information mentioned may be changed or developed.

    我的代码源文件目前的缩进宽度是 4 个空格,然而对于 switch 块内的 case 标签就有点尴尬了:

    • 要么 case 标签不缩进,与 switch 关键字同一竖列
    • 要么 case 标签缩进 4 个空格,与普通代码同一竖列
    • 要么 case 标签缩进完,接下来的普通代码再缩进,然而这样很难看

    case 只需要缩进两个空格就够了,或者说,缩进宽度是“全局”宽度的一半

    有没有单独的工具可以单独设置 case 的缩进,同时又不影响其他位置的缩进?

    2 replies    2025-07-23 18:23:43 +08:00
    KylinYou
        1
    KylinYou  
       Jul 23, 2025 via iPhone
    astyle
    WorseIsBetter
        2
    WorseIsBetter  
       Jul 23, 2025
    如果你用 vim/neovim 的话,可以 :set cinoptions=:2
    目前我就是这么配置的。

    也可以根据情况控制其他标签,比如 jump label ,或者 C++ 的 access specifier 的缩进。
    参考: https://neovim.io/doc/user/indent.html#cino-%3A
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2458 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 02:40 · PVG 10:40 · LAX 19:40 · JFK 22:40
    ♥ Do have faith in what you're doing.