Provide linkable anchors to line indicators in diff view


It would be of use to be able to link to a specific change of any given diff, especially in the case of a complex diff. For example, in this diff between two versions of the article "Wikipedia" on the English Wikipedia that I selected at random:

the sentence "Also, all pie-charts may be displayed properly in desktop view, but not in mobile view." has been added to the article at what was previously line 449. If I want to direct someone to that particular change, I need to instruct them to either scroll down to the "Line 449" indicator or search for the text in question. This is inefficient.

So, I suggest that every change in the diff (displayed with a "+" or "-" indicator) is accompanied with an anchor link (preferably using an icon of the chain type commonly used online for permanent links). These would be simply calculated as integers starting at 1.

Let's pretend that in the case of the example above, the change I refer to was the 56th in the diff (it wasn't - actually counting what it was would take a long time). An anchor link for that change would generate the following URL:

Version: 1.23.0
Severity: enhancement
See Also:

bzimport added a subscriber: wikibugs-l.
bzimport set Reference to bz61486.
Scott created this task.Via LegacyFeb 18 2014, 1:05 PM
PiRSquared17 added a comment.Via ConduitFeb 23 2014, 5:55 AM

Would this disrupt the UI? Should it be enabled for all users? Would the anchor be to the left, right, above, or below the +/- ?

PiRSquared17 added a comment.Via ConduitFeb 23 2014, 5:56 AM

What if we just make the + and - symbols into links (and add hover text)?

Scott added a comment.Via ConduitFeb 23 2014, 10:43 PM

That could work. I do quite like having a definite visible icon for discoverability, but some people might see that as clutter. If there were, I would suggest that they be slightly lower contrast until mouseover, to reduce visual noise. Would be interesting to hear from design people about this.

PiRSquared17 added a comment.Via ConduitFeb 23 2014, 11:27 PM

This might break links if the diffing algorithm is changed significantly, although I do like this idea in general.

Scott added a comment.Via ConduitFeb 24 2014, 11:57 AM

Rats, that's a really good point. Well, I can think of a way to avoid breakage - if the anchor URL specifies what kind of diff is in use, and that particular diff algorithms are always kept available.

In that case, my example URL from above would look something like the following (pretending that our current diff algo is called "diff1"):

A diff without difftype= would always use the latest algorithm, whatever it may be. Obviously this raises the complexity somewhat; I don't know what the internal policy with regards to diff algorithms is. I would like to imagine that access could still be provided to older ones in the event of changes. Someone who's actually a developer, unlike me, can hopefully shed some light on that.

PiRSquared17 added a comment.Via ConduitFeb 25 2014, 4:01 PM

(re to comment 5)
Sounds like a reasonable idea, but I'm not sure if the devs would like it.

Ricordisamoa added a comment.Via ConduitApr 25 2014, 2:23 PM

Alternative proposal: bug 63707

Aklapper added a comment.Via ConduitAug 16 2014, 10:13 AM

Hi Scott. Thanks for taking the time to report this!
This particular problem has already been reported into our bug tracking system, but please feel free to report any further issues you find.

  • This bug has been marked as a duplicate of bug 2313 ***
Ricordisamoa added a comment.Via ConduitAug 16 2014, 11:57 AM

(In reply to Andre Klapper from comment #9)

AFAIU, bug 2313 and bug 63707 are about linking line indicators to related paragraphs in the content view, while this bug is about anchors to line indicators themselves.

Scott added a comment.Via ConduitAug 18 2014, 11:46 AM

Comment 10 is correct. This bug is not a duplicate of bug 2313, so I'm unsetting that.

gerritbot added a project: Patch-For-Review.Via ConduitJan 16 2015, 11:25 PM
gerritbot added a subscriber: gerritbot.

Change 185569 had a related patch set uploaded (by Nemo bis):
Add linkable anchor #L<N> to (original text) line number in diff


Add Comment

Column Prototype
This is a very early prototype of a persistent column. It is not expected to work yet, and leaving it open will activate other new features which will break things. Press "\" (backslash) on your keyboard to close it now.