lite
ewig
lite | ewig | |
---|---|---|
30 | 3 | |
7,284 | 517 | |
- | - | |
0.0 | 0.0 | |
8 months ago | over 1 year ago | |
Lua | C++ | |
MIT License | GNU General Public License v3.0 only |
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.
lite
-
TextAdept
Another small, minimalist Lua-based text editor is Lite[1], and it's much less "light" cousin Lite-XL[2]
1: https://github.com/rxi/lite
2: https://github.com/lite-xl/lite-xl
-
A Love Letter to Tinkerable Software
Playing with browser developer tools and always seeing obfuscated JavaScript makes me sad. I'm not a web developer, but I suspect the security gained is low enough to fall within the author's "unnecessary constraints."
On the other hand, there are projects like https://github.com/rxi/lite
-
Leveraging Rust and the GPU to render user interfaces at 120 FPS
Beyond the rendering which as noted is nothing that hasn't been done before (in general) the inherent OT/multi user + tree sitter functionality is something that entices me.
I'm surprised nobody pointed out lite/litexl here either it's rendering of ui is very similar (although fonts are via a texture; like a game would) and doesn't focus overly on the GPU but optimises those paths like games circa directx9/opengl 1.3
https://github.com/rxi/lite/blob/master/src/renderer.h
-
Minimal Cross-Platform Graphics
> is using pure software rendering (on top of SDL) in a rather naïve fashion
https://github.com/rxi/lite/blob/master/src/rencache.c#L4
I think you'll find that they found the naive approach was sufficiently poor, performance wise, that additional optimizations had to be applied on-top.
> But for quick hacking / porting old demos / writing emulators and also text based UI it can be fast enough.
/shrug
If you want to use it, use it. It's 'good enough'...
> if you vastly lower your expectations
- Lite: A lightweight text editor written in Lua
-
Looking for an IDE with the following characteristics
How about lite https://github.com/rxi/lite
-
Now that Atom has been discontinued - where to next?
You have options: - Sublime Text - VsCodium - Lite - https://github.com/rxi/lite
- 4coder editor is now fully open source
-
Lapce
I like the single lapce.exe and loads reasonably fast.
But this is in a pre pre-alpha stage, so many bugs it's far too early for public feedback. It loads reasonably fast except chrome stats in top left then jerks towards the center. The start page says to bring up the command palette which I was unable to navigate via keyboard.
The open file dialog takes an eternity to load the first time, the path is in a text box that's not editable. Focusing a text file gives an Insert cursor which is in text mode, there's a noticable slow delay before writing the first character, text selection is non existent so lacks basic text editing features.
There is a built-in terminal however there's only a single tab.
The only thing that gives it potential is that the folder/file browsing is super quick even with a node_modules folder so it might be built on efficient rendering that can be improved.
Even for such a basic editor it's 38mb download. For a far smaller + more complete editor checkout Lite:
https://github.com/rxi/lite
ewig
-
Text Editor Data Structures
You might be interested in ewig and immer by Juan Pedro Bolivar Puente:
https://github.com/arximboldi/ewig
https://github.com/arximboldi/immer
See the author instantly opening a ~1GB text file with async loading, paging through, copying/pasting, and undoing/redoing in their prototype “ewig” text editor about 27 minutes into their talk here:
https://m.youtube.com/watch?v=sPhpelUfu8Q
It’s backed by a “vector of vectors” data structure called a relaxed radix balanced tree:
https://infoscience.epfl.ch/record/169879/files/RMTrees.pdf
That original paper has seen lots of attention and attempts at performance improvements, such as:
https://hypirion.com/musings/thesis
https://github.com/hyPiRion/c-rrb
-
Ask HN: How to learn about text editor architectures and implementations?
Ewig is an interesting implementation using immutable data structures. https://github.com/arximboldi/ewig Very proof of concept, tries to be a little vi like. Might be worth checking out.
-
Build Your Own Text Editor
For another approach: I built a didactic text editor to teach "value oriented design" and immutable data-structures in C++:
https://github.com/arximboldi/ewig
It's design is covered in these talks:
- Postmodern immutable data structures: https://www.youtube.com/watch?v=sPhpelUfu8Q
- The most valuable values: https://www.youtube.com/watch?v=_oBx_NbLghY
What are some alternatives?
lite-xl - A lightweight text editor written in Lua
immer - Postmodern immutable and persistent data structures for C++ — value semantics at scale
doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]
double-conversion - A fast Haskell library for converting between double precision floating point numbers and text strings. It is implemented as a binding to the V8-derived C++ double-conversion library.
Visual Studio Code - Visual Studio Code
Adria-DX11 - Graphics engine written in C++ using DirectX11
Apache NetBeans - Apache NetBeans
bee - (Archived, Incomplete) Text editor written in Bash 3
theia - Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.
kilo - A text editor in less than 1000 LOC with syntax highlight and search.
LSP-pyright - Python support for Sublime's LSP plugin provided through microsoft/pyright.
TinyMCE - The world's #1 JavaScript library for rich text editing. Available for React, Vue and Angular