From anton.vidovic at gmx.de Sat Nov 20 18:58:34 2021 From: anton.vidovic at gmx.de (Anton Vidovic) Date: Sat, 20 Nov 2021 19:58:34 +0100 Subject: First post Message-ID: Welcome to the croatoan mailing list. Croatoan is a set of Lisp bindings to the ncurses terminal library and a set of TUI widgets built on top of ncurses. * https://github.com/McParen/croatoan * https://www.cliki.net/croatoan Discussion of other terminal-related Lisp topics, libraries and applications is welcome. Anton From ilmu at rishi.is Sat Dec 25 20:08:55 2021 From: ilmu at rishi.is (ilmu) Date: Sat, 25 Dec 2021 20:08:55 +0000 Subject: Writing a tutorial Message-ID: Hi there, I was playing along with [a cl-charms tutorial](http://turtleware.eu/posts/cl-charms-crash-course.html) so that I could put together a small program I have in mind, the design is pretty clear on paper and shouldn't be too hard to implement. The template I came up with as a base to work from looks like this: git.sr.ht/~ilmu/sbcl-tala Apparently I am now setting up async input handling with some threads.. and then I found croatoan, now I didn't yet change (which as you can see from the code will not be a big change :^) but I see that the project is under active development and looks like it will save me a lot of time! I am pretty committed to the lisp (and my project) so I'd like to be a good citizen and produce a tutorial on croatoan in parallel with the program itself. This will not have a predictable timeline... but you can track my progress in that repo. Normally I'd lurk but I'm emailing the list just to be polite and say I appreciate the project (whether or not anything comes of my work). Kind regards, - Ilmu -------------- next part -------------- An HTML attachment was scrubbed... URL: From cage-dev at twistfold.it Sun Dec 26 14:52:29 2021 From: cage-dev at twistfold.it (cage) Date: Sun, 26 Dec 2021 15:52:29 +0100 Subject: Writing a tutorial In-Reply-To: References: Message-ID: On Sat, Dec 25, 2021 at 08:08:55PM +0000, ilmu wrote: > Hi there, Hi! > I was playing along with [a cl-charms > tutorial](http://turtleware.eu/posts/cl-charms-crash-course.html) so > that I could put together a small program I have in mind, the design > is pretty clear on paper and shouldn't be too hard to implement. Would you share with us the goal of your program? > > The template I came up with as a base to work from looks like this: git.sr.ht/~ilmu/sbcl-tala > > Apparently I am now setting up async input handling with some threads.. Be careful that ncurses and concurrent programming are difficult to integrate, i resorted using a big priority queue protected by lock/mutex to deal with multi-threading. > and then I found croatoan, now I didn't yet change (which as you can > see from the code will not be a big change :^) but I see that the > project is under active development Yes, all merit goes to Mcparen! > and looks like it will save me a lot of time! I am pretty committed > to the lisp (and my project) so I'd like to be a good citizen and > produce a tutorial on croatoan in parallel with the program itself. This would be great, in my opinion! > This will not have a predictable timeline... but you can track my > progress in that repo. Normally I'd lurk but I'm emailing the list > just to be polite and say I appreciate the project (whether or not > anything comes of my work). I can see there is a guix package definition too, nice! :) Bye! C. From hobo at SDF.ORG Mon Dec 27 16:29:22 2021 From: hobo at SDF.ORG (hobo at SDF.ORG) Date: Mon, 27 Dec 2021 16:29:22 +0000 (UTC) Subject: How do I clear a textarea instance? Message-ID: <8212de51-2b73-4f1b-7f6-fa573845ef43@SDF.ORG> Salutations, I currently have a textarea instance external to a form, and when a user cancels or accepts the edit I want to clear the textarea - clear the window, clear the buffer, reset the input-pointer. However, it looks like the clear method only clears the window and nothing else. How do I go about clearing the buffer, resetting the input pointer, and moving the cursor back to the beginning of the textarea? Thank you in advance, Lance hobo at sdf.org SDF Public Access UNIX System - https://sdf.org From ilmu at rishi.is Sun Dec 26 17:33:45 2021 From: ilmu at rishi.is (ilmu) Date: Sun, 26 Dec 2021 17:33:45 +0000 Subject: Writing a tutorial In-Reply-To: References: Message-ID: > Would you share with us the goal of your program? It's supposed to be an internet browser (in stark opposition to a web browser) and a metaprogramming language but there is very gradual path that leads there and I guess my first step is to write something like `less` with the added feature of being able to highlight text. I'm going to explain my roadmap at ELS2022 (if they accept my paper) and I'm currently trying to write it, I attached the pages I got so far to this email since they cover the `less` part. I'll also attach a couple of papers that are motivating the design. Ciao, ilmu -------------- next part -------------- A non-text attachment was scrubbed... Name: Datalisp Technical Report - draft.pdf Type: application/pdf Size: 598363 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: structural-diffing.pdf Type: application/pdf Size: 342794 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: removing-confusion.pdf Type: application/pdf Size: 646770 bytes Desc: not available URL: From anton.vidovic at gmx.de Tue Dec 28 13:44:30 2021 From: anton.vidovic at gmx.de (Anton Vidovic) Date: Tue, 28 Dec 2021 14:44:30 +0100 Subject: Aw: How do I clear a textarea instance? In-Reply-To: <8212de51-2b73-4f1b-7f6-fa573845ef43@SDF.ORG> References: <8212de51-2b73-4f1b-7f6-fa573845ef43@SDF.ORG> Message-ID: Hello Lance, > However, it looks like the clear method only clears the window and > nothing else. I checked, this is correct. > How do I go about clearing the buffer, resetting the input pointer, > and moving the cursor back to the beginning of the textarea? The textarea is unfortunately not finished yet, so there is missing functionality. A general editing widget requires somewhat more effort than a simple one line input field. What you are looking for is the textarea equivalent of "reset-field", which doesn't exist yet. Implementing reset as a generic function similar to clear makes most sense, so I will try to make that in the next few days. In the meantime, you can set the pointers and the internal positions to 0. Anton From anton.vidovic at gmx.de Tue Dec 28 14:35:01 2021 From: anton.vidovic at gmx.de (Anton Vidovic) Date: Tue, 28 Dec 2021 15:35:01 +0100 Subject: Aw: Writing a tutorial In-Reply-To: References: Message-ID: Hello ilmu, thanks for your interest in the library, I hope it is useful so far, despite the rough edges. ;) > Apparently I am now setting up async input handling with some > threads.. and then I found croatoan, now I didn't yet change (which > as you can see from the code will not be a big change :^) The croatoan library started a few years ago while cl-charms was abandoned by its initial author, so as an excercise to learn CFFI, I reimplemented the ncurses bindings. While using the low-level library, it became necessary to abstract away as much of the underlying C functions, pointers and memory handling as possible, so here we are. > but I see that the project is under active development and looks > like it will save me a lot of time! I hope so. It is active, but it will take a while to piece together a comprehensive object hierarchy. > I'd like to be a good citizen and produce a tutorial on croatoan in > parallel with the program itself. That would be great! Writing useful docs is on my long-term TODO list, but writing missing code seemed always more important. Do not hesitate to ask if something is unclear or point out pieces that are inconsistent or missing functionality that should be there. If it is any help, consider the documentation for guile-ncurses, which I took as a template when I started writing the docs. https://www.gnu.org/software/guile-ncurses/manual/html_node/index.html > Normally I'd lurk but I'm emailing the list just to be polite and > say I appreciate the project Thanks! Your input will certainly contribute to making it more accessible to others. Anton