9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Shawn Rutledge <lists@ecloud.org>
To: 9fans <9fans@9fans.net>
Subject: Re: [9fans] VCS on Plan9
Date: Thu, 18 Apr 2024 14:48:14 -0700	[thread overview]
Message-ID: <00DCFE18-5213-4A5E-92E2-AB75B15B5A42@ecloud.org> (raw)
In-Reply-To: <CAEoi9W6t636YRSu9nPCbvuFiNVMK=UPi_e4BKRcUyfZZddmCiQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2111 bytes --]

> On Apr 18, 2024, at 1:41 PM, Dan Cross <crossd@gmail.com> wrote:
> 
> Git and Jujitsu are, frankly, superior.

Aha, I had never heard of Jujutsu until now; you mean https://martinvonz.github.io/jj/ right?  Monitoring file changes and treating changes to the working copy as an implicit work-in-progress commit sounds like a good idea, good for filesystem-integrated revision control.  In my usual markdown editor that I use for notes (https://github.com/ec1oud/nettebook) I’m planning to add UI for making git commits.  I suppose prompting for a customized commit message would still be a good idea, but otherwise getting commits automatically without needing to add that as an application feature or remembering to do it on the command line might be a good feature.

Interesting that it's Rust.  Just another reason to eventually have Rust on Plan 9…

For prose purposes (especially auto-wrapped Markdown) it bothers me that git diff mainly does line diffs.  So I’ve been trying to find an efficient algorithm for word diffs.  (Yes there is git diff --word-diff, but for an application to show this graphically, I’m not a big fan of running a separate process for it.  And the output needs parsing anyway.)  It seems a common technique is the facepalm one: turn every space into a newline and then do line diffs.  But there’s another old Bell project: https://github.com/HaikuArchives/Spiff.git  It’s kindof ugly code and with lots of comments about how inefficient it is, but at least it starts by tokenizing and then working with word lists in memory instead of character substitution.  So I’m working on a fork to try to turn it into a library (will see if that’s worthwhile or just leads to a sufficient understanding of the algorithm that I’d rather start over).  But this could also be the sort of thing Jujutsu could improve upon, I suppose.


------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tab2715b0e6f3e0a5-M3ce44eda7af52e08323343b1
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

[-- Attachment #2: Type: text/html, Size: 3859 bytes --]

  parent reply	other threads:[~2024-04-18 21:48 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-18 15:54 certanan via 9fans
2024-04-18 16:02 ` Jacob Moody
2024-04-18 16:05   ` certanan via 9fans
2024-04-18 16:11 ` Paul Lalonde
2024-04-18 20:26   ` Bakul Shah via 9fans
2024-04-18 20:41     ` Dan Cross
2024-04-18 21:00       ` Steve simon
2024-04-18 21:40         ` Dan Cross
2024-04-19  4:09           ` ori
2024-04-19 14:01             ` Dan Cross
2024-04-18 21:48       ` Shawn Rutledge [this message]
2024-04-18 23:17         ` Bakul Shah via 9fans
2024-04-18 23:52           ` Dan Cross
2024-04-19  0:09         ` Jacob Moody
2024-04-18 23:15       ` Bakul Shah via 9fans
2024-04-20  8:30       ` Giacomo Tesio
2024-04-20 19:11         ` Dan Cross
2024-04-18 16:34 ` cinap_lenrek
2024-04-18 16:47   ` Dave Eckhardt
2024-04-19  9:07     ` Edouard Klein
2024-04-19  9:34       ` Stuart Morrow
2024-04-18 20:08 ` Ori Bernstein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=00DCFE18-5213-4A5E-92E2-AB75B15B5A42@ecloud.org \
    --to=lists@ecloud.org \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).