V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
alexkuang
V2EX  ›  程序员

tab 键你们一般转成几个空格?

  •  
  •   alexkuang ·
    alexkuang0 · 2021-01-22 21:52:15 +08:00 · 4488 次点击
    这是一个创建于 1434 天前的主题,其中的信息可能已经有所发展或是发生改变。

    2 个我觉得太短,4 个我觉得太长(之前一直用 4 个) 我决定从下一个 repo 开始用 3 个空格 不用空格的请退出聊天

    第 1 条附言  ·  2021-01-25 22:29:15 +08:00
    不谈规范和协作,你们觉得单从视觉上几个空格比较合适?
    45 条回复    2023-08-16 14:38:47 +08:00
    YouLMAO
        1
    YouLMAO  
       2021-01-22 21:53:39 +08:00 via Android
    4 个,你不兼容 Apache 代码,除非你全部自己开发
    fiveelementgid
        2
    fiveelementgid  
       2021-01-22 21:54:12 +08:00 via Android
    用的是标准四格,有请楼下 python 老哥出来发言
    jdhao
        3
    jdhao  
       2021-01-22 21:55:32 +08:00 via Android
    四个空格一般,toml, yaml 等少数文件类型设置为 2 个空格。奇数空格你是认真的吗
    sasalemma
        4
    sasalemma  
       2021-01-22 21:59:12 +08:00
    python 的话,用 3 个你就统统都 3 个就是,只是希望下个接收脚本的人知道是 3 个,但会逼死强迫症。
    codehz
        5
    codehz  
       2021-01-22 22:00:39 +08:00 via Android
    用斐波那契数列做缩进(
    还有用质数
    vscode 有插件做
    alexkuang
        6
    alexkuang  
    OP
       2021-01-22 22:03:44 +08:00
    @YouLMAO #1 我的意思就是自己的 repo,自己看着舒服。话说一般那些项目要遵循 apache ?
    alexkuang
        7
    alexkuang  
    OP
       2021-01-22 22:04:42 +08:00
    我是前端,代码风格估计比较随意。看很多人用 2 格,有个 youtuber 还说 4-space cult ( 4 空格异教徒)
    weichengwu
        8
    weichengwu  
       2021-01-22 22:04:51 +08:00
    两格
    DOLLOR
        9
    DOLLOR  
       2021-01-22 22:05:42 +08:00
    直接用 tab 。
    想多长自己在设置里调。
    alexkuang
        10
    alexkuang  
    OP
       2021-01-22 22:06:14 +08:00
    @jdhao #3 哈哈不知道,自己的 repo 自己看着舒服而已。话说奇数空格有什么缺陷吗
    alexkuang
        11
    alexkuang  
    OP
       2021-01-22 22:07:47 +08:00
    @sasalemma #4 嗯,我写 python 一般都直接遵循 pep8
    alexkuang
        12
    alexkuang  
    OP
       2021-01-22 22:08:05 +08:00
    @DOLLOR #9 不用空格的请退出聊天 /doge
    lmoon
        13
    lmoon  
       2021-01-22 22:12:13 +08:00 via Android
    我喜欢两个空格
    CatBoy
        14
    CatBoy  
       2021-01-22 22:13:22 +08:00
    @DOLLOR #9 不用空格的请退出聊天 /doge
    boris93
        15
    boris93  
       2021-01-22 22:33:02 +08:00 via Android
    遵循 Google 代码风格
    一级缩进 2 个,2 级以后 4 个
    3 个是异教徒,不接受反驳
    AllenHua
        16
    AllenHua  
       2021-01-22 22:41:09 +08:00
    最近喜欢直接敲 四个 space 🐶️
    alexkuang
        17
    alexkuang  
    OP
       2021-01-22 22:50:54 +08:00
    @codehz #5 那真滴牛
    rainman777
        18
    rainman777  
       2021-01-22 23:21:27 +08:00   ❤️ 2
    kernel 的代码用 8 个~ 他给的理由我竟然无法反驳 XD

    https://www.kernel.org/doc/html/v4.10/process/coding-style.html#indentation
    fpure
        19
    fpure  
       2021-01-22 23:24:50 +08:00
    或者两个空格或者四个空格,vscode 可以根据当前文档的已有格式识别,不用我主动设置
    thedrwu
        20
    thedrwu  
       2021-01-22 23:51:10 +08:00 via Android
    手动的 5 个,自动的 6 个,你猜是什么语言
    Jaosn
        21
    Jaosn  
       2021-01-23 00:08:05 +08:00
    就我喜欢两个吗?
    alexkuang
        22
    alexkuang  
    OP
       2021-01-23 02:46:19 +08:00
    @thedrwu #20 知识盲区了,大佬
    littlewing
        23
    littlewing  
       2021-01-23 03:23:58 +08:00   ❤️ 1
    4 个或者 2 个,别搞 3 个这么特立独行的事情
    hello2060
        24
    hello2060  
       2021-01-23 05:28:35 +08:00 via iPhone
    @jdhao 我在澳洲的第一家公司。C++桌面程序,成了 20 多年了,老板还在写 code 做 review 。3 格缩进!
    no1xsyzy
        25
    no1xsyzy  
       2021-01-23 11:53:07 +08:00
    @rainman777 这个理由是 C 专属,不能 nest function……
    ——
    Python 有官方推荐 4 个
    HTML/JS/CSS 还在用的时候就用 2 个,现在 await async 的话大概能少用点缩进估计会转 4 个。
    Lisp 基本上没有缩进只有对齐,何时缩进、缩进多少基本就按 DrRacket 默认。
    Arthur5
        26
    Arthur5  
       2021-01-23 15:52:36 +08:00
    非 4 格的都是异端,统统用 tab 键点着烧死
    nameme
        27
    nameme  
       2021-01-23 20:14:34 +08:00
    8 个~
    rodrick
        28
    rodrick  
       2021-01-23 22:23:38 +08:00
    前端,我用 2 个,习惯了很舒服
    l4ever
        29
    l4ever  
       2021-01-24 08:20:05 +08:00 via iPhone
    我写 python 的啊
    jzmws
        30
    jzmws  
       2021-01-24 09:33:34 +08:00   ❤️ 1
    四个 ,然后写好用 ide 做个格式化代码
    tubowen
        31
    tubowen  
       2021-01-24 15:42:54 +08:00
    3 个这也太特立独行了吧
    polyang
        32
    polyang  
       2021-01-25 00:50:04 +08:00
    四个,每次看别人用两个都看着难受
    myCupOfTea
        33
    myCupOfTea  
       2021-01-25 09:36:43 +08:00
    前端 2 个
    后端 4 个
    feelinglucky
        34
    feelinglucky  
       2021-01-25 10:22:09 +08:00
    还在争论这个,editorconfig 了解下
    jiangshanmeta
        35
    jiangshanmeta  
       2021-01-25 10:39:48 +08:00
    4 个

    目测我是前端圈的异端了
    ptrees
        36
    ptrees  
       2021-01-25 10:58:21 +08:00
    尽量用 2 个,4 个的话层级一多代码偏移得太厉害
    Ricciardo
        37
    Ricciardo  
       2021-01-25 12:34:27 +08:00
    2 4 8 都用过
    co1mugx
        38
    co1mugx  
       2021-01-25 13:05:18 +08:00 via Android
    2 格,但基本上会参考语言定的风格。所以很多都是 4,还有某个语言用 Tab…
    Shook
        39
    Shook  
       2021-01-25 15:36:06 +08:00
    2,但是看语言,godot 不用大括号,用两格有点区分不了代码。
    leonChen00
        40
    leonChen00  
       2021-01-25 16:31:37 +08:00
    接手过 3 个空格的代码,差点没被折磨死 :)
    cco
        41
    cco  
       2021-01-25 17:56:27 +08:00
    4 个,如果你用 google style 就是 2 个。
    alexkuang
        42
    alexkuang  
    OP
       2021-01-25 22:29:29 +08:00
    不谈规范和协作,你们觉得单从视觉上几个空格比较合适?
    wc7086
        43
    wc7086  
       2022-05-04 16:36:38 +08:00
    @rainman777
    > kernel 的代码用 8 个
    kernel 要求用 tab 缩进(Outside of comments, documentation and except in Kconfig, spaces are never used for indentation, and the above example is deliberately broken.),想占多少个空格直接编辑器设定 tab 长度就好了。if 太长的时候换行之后可能会混用四空格对齐,例如 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/m68k/amiga/platform.c?h=v5.18-rc5#n72
    wc7086
        44
    wc7086  
       2022-05-04 16:47:14 +08:00
    @alexkuang 给 kernel 做 code review 的大佬都觉得八字符最合适,https://www.kernel.org/doc/html/v4.10/process/coding-style.html#indentation
    ovoie
        45
    ovoie  
       2023-08-16 14:38:47 +08:00
    实际体验中,
    2 个空格:区分度太低了,不仅累眼睛,还累手。
    **4 个空格**:用起来很舒服,大部分缩进深度都合适。
    8 个空格:缩紧层级浅的时候很棒,但是大部分代码都做不到这么浅的缩紧。

    如果没有强制要求,推荐四个空格。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3254 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 00:17 · PVG 08:17 · LAX 16:17 · JFK 19:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.