V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ReputationZh
V2EX  ›  Visual Studio Code

VSC 可以不可以设定某一段代码不参与格式化?右键格式化代码的时候会使整个文件格式化。

  •  
  •   ReputationZh · 2020-09-04 16:16:27 +08:00 · 3482 次点击
    这是一个创建于 1301 天前的主题,其中的信息可能已经有所发展或是发生改变。
    举个栗子:
    写一个比较大框架的结构体,空格对齐后,此时格式化代码,会将所有的缩进删掉,使代码阅读观感降低。

    所以,有没有办法设定某一段代码不参与全文格式化呢?
    10 条回复    2020-09-04 20:03:52 +08:00
    onfuns
        1
    onfuns  
       2020-09-04 16:27:54 +08:00
    如果用的是 prettier 插件,可以在代码上面一行加注释 //prettier-ignore 可以使下面的代码块不被格式化
    ReputationZh
        2
    ReputationZh  
    OP
       2020-09-04 16:32:38 +08:00
    @onfuns prettier 可以格式化 C 语言吗?
    onfuns
        3
    onfuns  
       2020-09-04 16:40:37 +08:00
    @ReputationZh 可以啊,vscode 内置的好像就是 prettier 插件
    ReputationZh
        4
    ReputationZh  
    OP
       2020-09-04 17:09:20 +08:00
    @onfuns 刚才去看了一下,prettier 只对前端语言支持的比较好,C 语言用的是 clang-format,好像没有这项功能唉。
    flowfire
        5
    flowfire  
       2020-09-04 17:58:29 +08:00
    可以选中一段代码,然后右键格式化。
    如果你说的是按照规则固定格式化某段代码,那估计得改配置
    zhongrs232
        6
    zhongrs232  
       2020-09-04 19:07:47 +08:00
    clang-format 也可以禁止某段代码格式化,格式是:
    // clang-format off
    // 不需要格式化的代码
    // clang-format on
    crclz
        8
    crclz  
       2020-09-04 19:18:34 +08:00
    把不需要格式化的结构体分离到另一个文件
    GeruzoniAnsasu
        9
    GeruzoniAnsasu  
       2020-09-04 19:48:44 +08:00 via Android
    我记得 clang format 有选项控制是否对齐结构体的等号
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3066 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 14:35 · PVG 22:35 · LAX 07:35 · JFK 10:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.