免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: wwwsq
打印 上一主题 下一主题

缩进用tab还是空格 [复制链接]

论坛徽章:
0
61 [报告]
发表于 2011-07-26 13:32 |只看该作者
有些情况下,空格能代替tab,但是tab代替不了空格。

论坛徽章:
0
62 [报告]
发表于 2011-07-27 00:24 |只看该作者
tab的长度在linux下可配置的,不同的文本编辑器都可以配置tab的长度,所以使用tab不提倡,容易遇到移植性问题。

论坛徽章:
0
63 [报告]
发表于 2011-07-27 11:13 |只看该作者
tab的长度在linux下可配置的,不同的文本编辑器都可以配置tab的长度,所以使用tab不提倡,容易遇到移植性问 ...
syphus 发表于 2011-07-27 00:24


linux kernel的代码就是用'\t'来做缩进的。你的理由好像不太对。

论坛徽章:
0
64 [报告]
发表于 2011-08-17 14:32 |只看该作者
用TAB = 8个空格

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
65 [报告]
发表于 2011-08-17 17:54 |只看该作者
linux kernel的代码就是用'\t'来做缩进的。你的理由好像不太对。
wwwsq 发表于 2011-07-27 11:13


tab 显示出来未必就是配置的宽度, 比如 第一个字符是空格, 然后跟一个tab, 显示出来的 (tab宽度 + 空格宽度) == 1个tab的宽度。
由于此类情况的出现, 导致的问题是另一个编辑器如果也配置成相同的tab宽度, 是没有问题的, 但如果配置不同, 则不仅仅是原本缩进4的行变成8的问题了, 很有可能会发现各个代码行缩进不一致, 成锯齿状了。
你总不能要求另一个编辑器也按着写代码的那个编辑器做配置吧

论坛徽章:
0
66 [报告]
发表于 2011-08-17 21:33 |只看该作者
真JB蛋疼, vim 写代码需要按tab吗?
哥的tab 早另作他用了 , imap: <tab> <esc>

论坛徽章:
0
67 [报告]
发表于 2011-08-17 21:43 |只看该作者
本帖最后由 三月廿七 于 2011-08-17 22:11 编辑

基本上不用空格的路过,...

我的观点是只用tab缩进,理由是这样写代码的时候跳转比较快。
//
请问你是怎么跳转代码的?  tab怎么和跳转代码有关系了?,
vim 还没快到眼睛盯着哪一行,光标就跳到哪一行的地步,
想和你学学经验....

1,vim、eclipse、vs、ue之类的编辑器都可以设置tab的宽度,都设置成4应该没问题。
2,用空格做缩进,很容易导致代码对齐错误,比如多缩进一个空格,少缩进一个空格之类的。
//map \ 1g=G, shift+v =, astyle
3,用空格做缩进,当你修改一个函数的时候,你需要按四下箭头才能从行首移动到代码的第一个字母。
//f*, ci{,  -+s, shift+, [{.....
4,用空格做缩进,最后很容易变成缩进一个或者两个空格。
//cindent 不是自动缩进的吗?
5,那些喜欢连续四个空格的人,我不知道他们已经多久没有亲手写过代码了。
//基本上不用空格, CSDN的牛人大多喜欢用这种口吻..


3,用空格做缩进,当你修改一个函数的时候,你需要按四下箭头才能从行首移动到代码的第一个字母。
//一大堆的选择, 你竟然还去按四个格, I 服了 U 哦
发一段代码出来, 看看你说的是个什么情况需要用到tab到第一个字符? 教教你怎么玩vim, 省得你这么痛苦

vs2005+有个模拟vim 的插件 viEmu, 除了map不好用外, 基本的编辑功能和vim相差无几
eclipse、vs、ue 这些编辑器就不用理会了, 和vim根本不在一个级别上,

论坛徽章:
0
68 [报告]
发表于 2011-08-17 22:22 |只看该作者
缩进用制表符有什么好奇怪的么。对齐是另外一回事。
----
The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program.
↑只能呵呵了。
----
(以上无关)参考资料:
http://vim.wikia.com/wiki/Indent_with_tabs,_align_with_spaces

论坛徽章:
0
69 [报告]
发表于 2011-08-17 22:22 |只看该作者
本帖最后由 三月廿七 于 2011-08-17 22:34 编辑
同样用tab, 自动expand成4个空格,
看代码, 第一件事是indent过滤一遍...
用vim的, 删除4个空格可以用ctrl ...
greensnow 发表于 2011-07-18 16:07


ctrl+d 向下翻屏的, 删除四个空格是 4x

论坛徽章:
0
70 [报告]
发表于 2011-08-17 22:27 |只看该作者
创建代码的时候,ide确实可以自动做缩进对齐。

但是改代码的时候,常常就要自己处理这些问题了;而 ...
wwwsq 发表于 2011-07-19 20:50



vim的 gg=G, 确实有点问题, 但是小范围的 '='
indent还是正常的, vs2005+的自动格式化也不会费很多事,
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP