如果您可以简单地引用特定的行或范围,是否会使讨论代码更容易?或者我错了吗?

评论

哦,GW-Basic的美好时光。 ;-)

我同意了这个要求。如果正确实施,则行号不应像其他注释所建议的那样使复制代码变得困难。我敢肯定,您已经看到很多其他具有复制安全行号的站点。谷歌搜索“代码显示行号博客”给出了akomaenablog.blogspot.com/2009/05/…这是相当安全的

此请求可能与新的codereview.SE网站更相关。

您如何要求?

@BenV:不同意。因此,问题需要我们将编译器消息或异常跟踪链接到代码中的特定行大约一半的时间。因为行号从不匹配,所以很糟糕。提供自编号的代码块将帮助询问者解释所涉及的行

10 PRINT“发送代码给我” 20 GOTO 10-您的错误在第20行,容易得多!

有人问有关他需要的功能的问题。然后另一位告诉他认为这是不必要的。然后问题所有者将此答案标记为已接受答案。这是我在StackOverflow上看到的最有趣的问题/响应。我认为这是对那些将此问题标记为有用/收藏夹的人的不尊重。

@Rancs修复了该问题

@Rancs-我认为接受答案并不是对那些将此标记为有用/收藏夹的人的不尊重。这仅表示OP已接受此功能无用/可行。如果他们不同意,这些人可以投票否决。例如。看到这个答案

我找到了一个用户脚本:)

#1 楼

尚未提及的一个非常重要的缺点是,编辑帖子可能会使先前版本中引用特定行号的所有现有答案和注释无效。代码块的编辑程度可能比问题的任何其他部分都要多,因为人们通常一开始发布的代码不足以回答问题。我认为,不知道可以信任多少行号的困惑常常会超过行号最初的便利性。

评论


非常。好。点。专业的标记将赢得胜利...

–sehe
2011年7月4日在13:57

这不是一个很好的论据,我看到必须首先计数的编辑才能检测到它使行号引用无效。

–狼
2014年3月7日在8:01

我们“只是”需要一个用于行号的标签,因此在行前加前缀会正确地重新编号所有引用。 BASIC在上个世纪的某个地方获得了这种能力。

–MSalters-恢复莫妮卡
2014年4月15日在13:26

@Karl,您指出的问题可以通过参考行号(也称为标记)来解决。

–起搏器
2014年6月17日在16:24



@Wolf您应该拒绝这些编辑(或者在某些情况下可以批准和改善),并重新措辞,以使其不依赖于行号。不要浪费时间。

– jpmc26
2015年10月6日在21:01



任何编辑都会使现有响应无效。

–大卫·霍瓦斯(DávidHorváth)
16年4月30日在15:07

+1:我来这里是为了投票给没有行号的任何原因,然后阅读并发现这是很合理的。

– trichoplax
16年5月29日在1:29

+1史诗般的答案!很好点!

– clickbait
18年6月27日在4:20

正如@DávidHorváth所指出的那样,任何编辑都可以使任何答案无效,从而造成相同的“混乱”。因此,几乎没有人反对什么是非常方便的功能。

–约翰
20年8月22日在12:26

#2 楼

到目前为止,尚未有人要求这样做是有原因的。将要发布在网站上的大多数代码都是简短的代码段,其中只有相关的部分是要发布的。时间长一点的东西通常会在相关部分中添加注释,以解释发生了什么事情。我们是程序员,我认为就足够了。允许行可能会鼓励使用更大的代码块,而我认为这并不是我们要鼓励的行为。

话虽如此,我并不是真的反对这一点,只是根本不认为它是必需的。

评论


我同意大多数代码段都很简短,但是即使那样,它们也可以从行号中受益。我对此答案的评论可能会受益于行号。此外,去诺尔斯!

–万岁帮助
2011年6月10日下午2:26

好点。但是,与更具针对性的“此行标记”功能相比,行编号的实现容易得多。这是关于权衡的问题。行号为我们提供了至少成本最低的大多数功能

–sehe
2011年7月4日在13:57

不启用代码块上的行号,而是在配置文件配置中选择查看行号,或者允许该选项显示超过特定信誉,该怎么办?

–knownasilya
2012年12月5日在20:57

我看到很多问题说:我在第行出现编译错误。这是为什么?。对于此类问题,行号将非常有帮助。

– Ivaylo Strandjev
2013年6月27日10:47

@izomorphius:这个人不应该像以前那样粘贴整个脚本,因此行号不应该有用。这就是为什么我们不想要行号的原因,因此人们不会放下他们的100页PHP脚本并要求我们查看第59行。

– Paolo Bergantino
13年6月27日在13:19

@PaoloBergantino是的,但事实是这样,它们用行号描述了错误。

– Ivaylo Strandjev
2013年6月27日13:21

@izomorphius:因此,与其纠正行为,不如启用它们?

– Paolo Bergantino
2013年6月27日13:23

从帖子内容中引用代码可以替换为代码中注释的巧妙使用,但是帖子下的注释又如何呢?那我如何问关于X行的进一步问题(或给出解释)?

– j_kubik
13年15月15日在2:30

#3 楼

我通常会在特定行中添加内联注释:不要误会我的意思-在某些情况下行号会有用-但它们很少见,我认为优先级更高。特别是,IIRC的语法荧光笔是Prettify而不是本垒打的-不会阻止Jeff和团队输入行号,但这意味着直到将其放回主树之前,他们必须维护自己的分支,可能不会很有趣。

评论


我认为当其他人在对问题或答案的评论中引用特定的代码行时,这将(更)有用。

– Jonik
09年7月19日在19:04

@Jonik:是的,但是我认为代码通常在没有行号的情况下更容易阅读。我想,理想情况下,阅读帖子时应该可以切换。

–乔恩·斯基特(Jon Skeet)
09年7月19日在20:05

也是。可切换的行号可以解决这一问题,但同时也增加了不必要的复杂性……也许应该将它们的样式设置为尽可能不引人注意(小字体,灰色等)。无论如何,正如其他人所说,我们当然也可以继续没有他们的生活。

– Jonik
09年7月20日在16:39

#4 楼

我认为,这是一个好主意(如果将其实现为可选)。也许添加到当前的格式指令中;类似的东西:

 <!-- language:lang-c ln:true -->

 or as a new indicator:
 <!-- language:lang-c -->
 <!-- ln:true/yes/false/no/etc... -->


评论


这是否取决于对它添加到Google Pretify的支持?

–agf
2011年11月4日,11:55

读者最好激活它。

–狼
2014年7月7日在9:08



+可选参数,从哪一行开始开始操作,因为这将使粘贴相关代码的简短代码片段时保留行号为null。

– Erbureth说恢复莫妮卡
2014年3月28日在8:07

#5 楼

虽然这可能很方便地描述一小段代码正在逐行执行的操作,但我担心它可能使人们能够粘贴大量代码并说诸如“我在213行上出现段错误”之类的内容。并期望其他用户仔细研究代码以进行识别。换句话说,大多数情况下,您认为您需要行号,因此可能包含太多代码。

评论


提出如此差劲的问题的人将获得下票

–克里斯·斯特拉顿(Chris Stratton)
2012年6月22日12:34

@Kyle,在许多情况下,行号比较合适(尤其是在CodeReview.SE上)。见sivers.org/punish

–起搏器
2014年6月17日下午16:21

#6 楼

如果行号确实有问题(IMO没问题),那么类似调试器的断点呢?不是一个完整的解决方案,但至少非常“直观”。

 <!-- language: lang-java -->

<!-- break color:red -->
    @Override
    public int add(int num1, int num2) {
<!-- break:"here" color:yellow -->
        return num1 + num2;
    }
 


结果:



#7 楼

我认为代码中的行号会很有用。我的问题越来越多地得到某种回应,即“向我们显示更多代码,使我们有更多上下文”。代码。

评论


提供带有“需要大量代码”示例的网址

–杰夫·阿特伍德
09年12月23日在21:34

正如我说的,向我们展示更多代码是“有效的”。一些答案需要更多代码。我通常不喜欢发布更多内容,但是有时人们会陷入“为什么要按照您说的方式做”的态度。这通常需要更多代码来解释原因。虽然这不是一个完美的例子(我不想在圣诞节周末仔细研究所有问题),但这里有一个例子需要我添加代码,因为人们在质疑我为什么要以自己的方式做事。 stackoverflow.com/revisions/1868414/列表

– Vaccano
09-12-27 at 23:12

这是今天的另一个:stackoverflow.com/questions/1972128/…

– Vaccano
09年12月29日在0:18

这是几分钟前的另一个:stackoverflow.com/questions/1976669/…

– Vaccano
09年12月29日在20:58

这是另一个答案,要求您提供有关代码的更多详细信息:stackoverflow.com/questions/2119586/…

– Vaccano
2010-1-22在21:59

这是另一个仅显示约15行代码引起误解的地方。如果添加更多行比较容易,那么将会得到更好的答案:stackoverflow.com/questions/2151361/…

– Vaccano
2010-1-28的3:58

我绝对是第二位。有时需要> 20行代码。行号是一个很好的选择。

– Pekka
2010-4-1 18:48

@Jeff,这是另一个。我忘记了我一直坚持的统计,直到我得到了更明确的统计:stackoverflow.com/questions/2633853/c-constructor-question

– Vaccano
2010-4-13 23:47



@Jeff,我对“难以持续讨论”的示例更感兴趣。起初我有同样的想法,并试图寻找以下情况:缺少行号导致答案措词不便,但却找不到。相反,缺少行号似乎增加了引用相关行的趋势,这通过显示而不是告诉来增加清晰度。我认为人们喜欢行号的概念,因为当有人坐在您旁边大声谈论您的代码时,它们会提供很大帮助,但这不会转变为书面交流。

–卡尔·比勒费尔特(Karl Bielefeldt)
2011年2月3日23:26

我只能想像杰夫(Jeff)发表第一条评论时的双narrow ---

– bobobobo
2012年6月24日在1:41

#8 楼

SyntaxHighlighter是基于Javascript的解决方案。



编辑:添加了一些PNG爱。

评论


SyntaxHighlighter.js要求您指定语言-如果没有明确指定画笔,它将无法正常工作。键入时不会实时更新(下次写答案时请检查-如果停止键入大约一秒钟左右,Prettify会踢进来)。它也很繁重,并且需要一些繁重的工作才能集成到现有系统中。总而言之,不。

–易江
10-10-8在15:10

@Yi Jiang不错的评论

– abel
10-10-8在15:36

#9 楼

我找到了一个有用的用户脚本:SO-代码行号

单击右上角的#L符号时,脚本会切换代码框的行号。 (它指向mdev.me,因此可能需要调整脚本阻止)

评论


很棒的推荐!我一点都不偏见... :)

–SmokeyPHP
2014年8月8日15:58

// @match *://stackoverflow.com/questions/*

– Smart Manoj
19年6月23日在4:21

#10 楼

没有行号的真正原因是因为尚未编写。

除非开发人员认为此功能相当重要,否则他们不会实现。

因此,由于此处发布的代码通常是简短的摘录,因此行号不是很重要。

#11 楼

我不确定行号,但是能够复制到剪贴板会非常有用,或者在具有文本区域的新窗口中打开。

#12 楼

自动行号的另一个缺点是,它们不一定会与源代码中的实际行号匹配。 ),但有时仅发布较大源文件的相关部分是有意义的。错误消息中的行号可能引用原始来源中的第123行,在发布的代码段中可能会被标记为第7行。关于发布问题的人,这不会发生。

#13 楼

我对代码段中的行号并不需要太多。

但是,有时候,尤其是在处理某些Web服务问题时,我真的希望他们发布完整的WSDL,所有XML模式,发送和接收的实际XML,甚至可能是重现问题所需的所有代码。

我希望他们不要粘贴该内联代码(即使他们确实学会了使用“代码示例”按钮)。为此,有一种我喜欢的格式,尽管它应该增加在一行描述中折叠代码块的功能。有关示例,请参见http://forums.asp.net/t/1447256.aspx#3297127。

#14 楼

因为似乎没有人写出足够聪明的编号/断点系统:-)

我的意思是,人们使用GreaseMonkey来启用任何文本编辑器的基本功能,而我今天才开始计数线。

显然,BASIC不是一个好主意,但是标记单个文本行(最好使用当前行号作为默认名称)的“简单”选项不仅会澄清甚至很多小片段,但也允许自动调整和编辑后更正。队列,因为我知道,它可以节省其他人的许多可能的混乱。

它将是语言独立的,不像任何jsfiddle / RUN方法。

评论


假设我会喜欢实现这样的事情。除了通用汽车,人们将如何提出和建议/提供这种功能?

– Xan-Kun Clark-Davis
18年2月23日在16:01