From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 30767 invoked from network); 2 Apr 2021 23:21:38 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 2 Apr 2021 23:21:38 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id A55169C9FA; Sat, 3 Apr 2021 09:21:35 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 4B5539C641; Sat, 3 Apr 2021 09:20:41 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="IABYTLih"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 4B40D9C641; Sat, 3 Apr 2021 09:20:38 +1000 (AEST) Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) by minnie.tuhs.org (Postfix) with ESMTPS id CD7D69C63F for ; Sat, 3 Apr 2021 09:20:37 +1000 (AEST) Received: by mail-pl1-f182.google.com with SMTP id h20so3103244plr.4 for ; Fri, 02 Apr 2021 16:20:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=+hAOOIC5IXBQtMIXzoqt7UR6qPRUL0LPzJnEi4/ZBNU=; b=IABYTLihj2gBjaQxA/65S5UKwcNLtSYf5wXd6muT3mCH9IBLyQ02mnRACGynbWdkhj s5qWOMZ8kj0vsBMM5M6w1CjsJZ1gAJQfE+q0CcDETNhVsDyHkE5ESBqQXutVqoAbRYcV 0Yn/WOyBBPDzb0THztRFlAUVGDzUPAW6SO9ZhQ4qoCF1LxGCIQYz1ihEHdCN6jgavcgv HQqeiypBhaCQscqX8XFygFbkKGNnHiBzvTqQqdnrMIAksMzxlk7r1ysl0iS9Plg1rqTI wQy+UTBnaQ3J83demQaMYwx1mJu0xx4gl2O+vxDwJ3rn0mZWaCKg9sur5i9K7582zdP6 XUlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=+hAOOIC5IXBQtMIXzoqt7UR6qPRUL0LPzJnEi4/ZBNU=; b=al+cMZN3aFbABW13we14UbFAfwJBiOM+5TNmhTuAI+/Zmge6XEW/nSQZi/UmJ8ElLz sRklNcalh4hGt0coINYc+KZzg0TsqZBnY0nKe4MTk7BQ/cFQPqApJ7qinEc19UqUrJxR uBZEPPT7KGrLLmkTV5ZtLs+VIw2uqt/OKcdLPB1uUauJwuJKWIikft8xObdSPXoVYpr6 c9h/99ZXCQTdfkpX/0ZP0T/NBMHk3/SZNFmiU2JoBq6BZv8VeGC54dAttd1OiQVaL2xj MlcINT04AVqrOne2v4D31AJ1chByKEkHL9gjW2gV/4Y9EKoNCNY+Z1EORAbQ35egytOC crSQ== X-Gm-Message-State: AOAM5308MMLjVZ5thZ2cfYJQxaVcU80GksNmQBAmU3jgA/dewGlmLy5d QBdkxBmahVzg62cvizlG03yLhklvwjNTSFcEVz8y1446aAA= X-Google-Smtp-Source: ABdhPJz6reBuHaBfp80NOAVQX+HlmnxssTiblLacF9V08tXakrYhSWXxSf1wGw3xOXrCc2Z8pfiW5L8LesimZEzRqig= X-Received: by 2002:a17:90b:1bc1:: with SMTP id oa1mr15346887pjb.45.1617405636712; Fri, 02 Apr 2021 16:20:36 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Adam Thornton Date: Fri, 2 Apr 2021 16:20:25 -0700 Message-ID: To: The Eunuchs Hysterical Society Content-Type: multipart/alternative; boundary="0000000000006f21e105bf059812" Subject: Re: [TUHS] Data structures in Unix editors X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --0000000000006f21e105bf059812 Content-Type: text/plain; charset="UTF-8" 's' from Webb Miller's _A Software Tools Sampler_ is an exhaustively documented sort-of-stripped-down vi. Admittedly it's a little tricky to get your hands on the source document (I got it from interlibrary loan back at the end of the Before Times, and archive.org lets you check it out for a limited time, but there may be a waitlist). It's interesting in that it's not just studying the source to see how it works, but an actual (large) chapter of a book where he steps through the construction of the individual functions and their keybindings. Adam On Fri, Apr 2, 2021 at 3:42 PM Dave Horsfall wrote: > On Thu, 1 Apr 2021, John Cowan wrote: > > [ Me thinking of using BDB for editor data structures ] > > > I'd use SQLite nowadays, because it takes extraordinary care to make > > sure that no data is lost short of disk failure. It is considerably > > more robust than the underlying filesystem, and runs embedded in its > > process. It also means you can readily carry about arbitrary data in > > additional columns; for example, you could make line marks persistent, > > including dot. > > Good point; thanks. I'd forgotten about SQLite... I doubt if I'll be > writing a new editor any time soon though (VI works just fine) but was > planning on incorporating it in a project I'm working on. > > -- Dave --0000000000006f21e105bf059812 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
's' from Webb Miller's _A Software Tools = Sampler_ is an exhaustively documented sort-of-stripped-down vi.=C2=A0 Admi= ttedly it's a little tricky to get your hands on the source document (I= got it from interlibrary loan back at the end of the Before Times, and archive.org lets you check it out for a lim= ited time, but there may be a waitlist).

It's = interesting in that it's not just studying the source to see how it wor= ks, but an actual (large) chapter of a book where he steps through the cons= truction of the individual functions and their keybindings.
<= br>
Adam

On Fri, Apr 2, 2021 at 3:42 PM Dave Horsfall = <dave@horsfall.org> wrote:
On Thu, 1 Apr 202= 1, John Cowan wrote:

[ Me thinking of using BDB for editor data structures ]

> I'd use SQLite nowadays, because it takes extraordinary care to ma= ke
> sure that no data is lost short of disk failure.=C2=A0 It is considera= bly
> more robust than the underlying filesystem, and runs embedded in its <= br> > process.=C2=A0 It also means you can readily carry about arbitrary dat= a in
> additional=C2=A0columns; for example, you could make line marks persis= tent,
> including dot.

Good point; thanks.=C2=A0 I'd forgotten about SQLite...=C2=A0 I doubt i= f I'll be
writing a new editor any time soon though (VI works just fine) but was
planning on incorporating it in a project I'm working on.

-- Dave
--0000000000006f21e105bf059812--