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

我恨末尾空格!

  •  
  •   hxndg · Aug 24, 2017 · 4608 views
    This topic created in 3179 days ago, the information mentioned may be changed or developed.

    昨天用 vim 改了一段代码,删除了两个空格。然后 diff 了一下发现 1000 多个修改,我擦了,吓到了。以为是 diff 工具出问题了。 今天换了 vimdiff 可视化看了一眼,原来是源文件末尾空格很多,然后 vim 工具自动删除掉了末尾空格。。。。 我的天哪。

    17 replies    2017-08-25 04:54:01 +08:00
    tausi0661
        1
    tausi0661  
       Aug 24, 2017   ❤️ 1
    diff 工具设置忽略空白符就好了. 你没见过源代码被几代人改过, tab, 4 空格, 2 空格各种缩进 diff 一下满屏红的恐惧呢.

    强迫症选项: 将所有代码文件都格式化一遍. 嗯, 舒服了~~
    we000
        2
    we000  
       Aug 24, 2017   ❤️ 1
    Markdown 这种末尾空格是语法一部分的, 让人很痛苦
    pexcn
        3
    pexcn  
       Aug 24, 2017
    我也恨...
    tamlok
        4
    tamlok  
       Aug 24, 2017 via Android
    有末尾空格的代码一般都不是用 vim 写的吧。。。
    hxndg
        5
    hxndg  
    OP
       Aug 24, 2017
    @tamlok 我感觉这东西实际上属于个人规范的东西
    tamlok
        6
    tamlok  
       Aug 24, 2017 via Android
    @hxndg 其实和编辑器很大关系,比如 vs 你回车自动缩进后,但你不想写了,这个缩进是不会自动被删除的。
    Light3
        7
    Light3  
       Aug 24, 2017
    编辑器的锅吧..vim 能很明显的看见 很多编辑器是看不见的..
    syncher
        8
    syncher  
       Aug 24, 2017 via Android
    @we000 我一般换行代替空格
    ChristopherWu
        9
    ChristopherWu  
       Aug 24, 2017
    我也恨。。。
    cxbig
        10
    cxbig  
       Aug 24, 2017
    末尾空格除了 markdown 文件,一般都是删掉的。
    还有 tab/space 混用等等,我们都有统一的代码规范做清理。
    烂代码总会遇上,习惯就好。
    fityme
        11
    fityme  
       Aug 24, 2017
    破事水。有这时间干点什么不好
    withrock
        12
    withrock  
       Aug 24, 2017
    :%s/ \+$//g
    搞定
    qiqico
        13
    qiqico  
       Aug 24, 2017
    用 .editorconfig 配置,然后强制大家 ide 都装这个插件
    imherer
        14
    imherer  
       Aug 24, 2017
    @tausi0661 我就是这样。 随时都在用 IDE 格式化代码😂
    hxndg
        15
    hxndg  
    OP
       Aug 24, 2017
    @tausi0661 主要是不能都修改了。。。。要是可以格式化就好了
    @qiqico 强制安装这个肯定是不可能的了。。。
    shijingshijing
        16
    shijingshijing  
       Aug 25, 2017
    gg=G
    msg7086
        17
    msg7086  
       Aug 25, 2017
    拿到旧代码,第一个 Commit 是格式化,第二个 Commit 是无损的结构 Refactor,正式动代码从第三个 Commit 开始……
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   6063 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 87ms · UTC 03:14 · PVG 11:14 · LAX 20:14 · JFK 23:14
    ♥ Do have faith in what you're doing.