aretext
bim
aretext | bim | |
---|---|---|
3 | 1 | |
240 | 275 | |
0.4% | - | |
8.3 | 5.9 | |
about 2 months ago | 4 months ago | |
Go | C | |
GNU General Public License v3.0 only | ISC License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
aretext
-
Incremental Parsing in Go
Look at the current Makefile:
https://github.com/aretext/aretext/blob/main/Makefile
Build is literally a `go build ...` and install is `go install`. Adding any other language to the mix would make this a polyglot project and not be "equally easy to set up". The other question is, do both parsers exist? In this write-up they point to tree-sitter as a possibility which is a JS program that produces C code. This would be viable, but here's the author's take:
> I considered integrating tree-sitter, an incremental parsing library with parsers for many existing languages. However, running JavaScript to generate parsers and linking to a C library would have greatly complicated the build process. Today, aretext can be built on almost any platform using a single go install command. I’ve had users install aretext on ARM laptops, FreeBSD servers, Chromebooks, and Android phones. To maintain portability, I wanted a pure Go implementation.
So this wasn't some casual decision, but something they at least considered long enough to describe here.
And the parsing library itself is only around 1200 lines total (comments, blanks, and code). The parsers for each language add a lot more, of course, but should be roughly equivalent given the same library and interface. I imagine that if this project really takes off and performance becomes a real problem they can do the rewrite at that point. Right now, the code works, seems to work fast enough for its author and primary users, and it's trivial to install on any platform supported by Go. So yes, it would have been a premature optimization to complicate the build process, probably reduce the number of supported platforms (or greatly increase the effort to support the same number of platforms), just to have a slightly faster parser.
- aretext - Minimalist text editor with vim-compatible key bindings.
bim
-
Announcing: PonyOS 8
As for my development environment, for the last several years, I have done all of my programming in my own editor, which I built for the OS but use on Linux as well as my "daily driver". It also uses Kuroko for syntax highlighting scripts and as a general command and configuration language. The OS is generally built with gcc/binutils, though I've done clang builds in the past. The build system is mostly Make, with a bit of magic from Kuroko to automatically track dependencies for userspace applications.
What are some alternatives?
Squircle-CE - 👨💻 Squircle CE is a fast and free multi-language code editor for Android
dte - A small, configurable console text editor (mirrored from https://gitlab.com/craigbarnes/dte)
scc - Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go
texterm - A very minimal & simple text editor written in C with only Standard C Library.
mangadesk - Terminal client for MangaDex 📖
yace - Yet another CLI editor, a simple command-line-interface text editor written in C
ntfy - Send push notifications to your phone or desktop using PUT/POST
Teditor - A simple text/code editor
tut - TUI for Mastodon with vim inspired keys
led - led - line-oriented text editor
orbiton - Configuration-free text editor and IDE limited to VT100. Suitable for writing git commit messages, editing Markdown, config files, source code, viewing man pages and for quick edit-compile cycles when programming. Has syntax highlighting, jump-to-error, rainbow parentheses, macros, tab completion, cut/paste portals and a simple gdb front-end.
tedditor - A gtk based simple text editor I'm writing for a school project.