Lilly is a TUI text editor built with Rust that aims to offer a modern, performant, and customizable alternative to Vim and Neovim. It prioritizes extensibility through plugins written in Lua, offering a familiar experience for Neovim users. Featuring built-in Language Server Protocol (LSP) support, tree-sitter for syntax highlighting, and asynchronous execution for responsiveness, Lilly seeks to combine the speed and efficiency of a terminal interface with the advanced features of modern GUI editors. The project is actively under development and welcomes contributions.
Shelgon is a Rust framework designed for creating interactive REPL (Read-Eval-Print Loop) shells. It offers a structured approach to building REPLs by providing features like command parsing, history management, autocompletion, and help text generation. Developers can define commands with associated functions, arguments, and descriptions, allowing for easy extensibility and a user-friendly experience. Shelgon aims to simplify the process of building robust and interactive command-line interfaces within Rust applications.
HN users generally praised Shelgon for its clean design and the potential usefulness of a framework for building REPLs in Rust. Several commenters expressed interest in using it for their own projects, highlighting the need for such a tool. One user specifically appreciated the use of async
/await
for asynchronous operations. Some discussion revolved around alternative approaches and existing REPL libraries in Rust, such as rustyline
and repl_rs
, with comparisons to Python's prompt_toolkit
. The project's relative simplicity and focus were seen as positive attributes. A few users suggested minor improvements, like adding command history and tab completion, features the author confirmed were planned or already partially implemented. Overall, the reception was positive, with commenters recognizing the value Shelgon brings to the Rust ecosystem.
Summary of Comments ( 14 )
https://news.ycombinator.com/item?id=43462676
Hacker News users discuss Lilly, a TUI editor and potential Vim/Neovim alternative, focusing on its Lua extensibility and clean slate design. Some express excitement about a modern, scriptable TUI editor, praising its apparent performance and the potential of Lua for customization. Others question its long-term viability given the established competition, and some debate the merits of modal vs. non-modal editing. Several commenters highlight the difficulty of attracting users away from entrenched editors, while others suggest Lilly could find a niche among those seeking a simpler, more easily customized TUI experience. A few express interest in specific features like the integrated file explorer and fuzzy finder. Overall, the comments show cautious optimism tempered by an awareness of the challenges faced by new text editors.
The Hacker News post discussing the TUI editor Lilly and its potential as a Vim/Neovim alternative generated several comments exploring various aspects of the project.
One commenter expressed excitement about the prospect of a modern TUI editor with good defaults and cross-platform compatibility. They specifically mentioned their frustration with configuring Neovim and the inconsistency of its plugins across different operating systems. This commenter saw Lilly as a potential solution to these issues.
Another commenter highlighted the project's use of the Slint UI toolkit, questioning its suitability for a text editor due to potential performance overhead. They raised concerns about input latency and redraw performance compared to more established TUI libraries. A further comment acknowledged the visual appeal of Slint but reiterated the performance concerns, suggesting that a terminal application might be better served by a more lightweight approach.
A different commenter focused on the lack of extensibility in Lilly. They argued that a key strength of Vim and Neovim lies in their powerful plugin ecosystems, allowing users to customize the editor to their exact needs. They expressed skepticism about Lilly's ability to compete in this area, particularly given its early stage of development.
Someone else chimed in with praise for the project's ambition and clean codebase. They emphasized the value of having a modern, well-designed TUI editor alternative to Vim and Neovim. They also pointed out that while performance might be a concern at this stage, it's likely to improve as the project matures.
The developer of Lilly also participated in the discussion, addressing some of the concerns raised by commenters. They acknowledged the performance challenges associated with using Slint and explained their rationale for choosing it, citing its cross-platform capabilities and ease of use. They also expressed openness to exploring alternative UI toolkits in the future if performance issues persist. Additionally, they addressed the question of extensibility, outlining plans to introduce a plugin system down the line. The developer indicated that initial focus is on establishing a solid core editing experience before tackling more advanced features like extensibility.
Finally, a comment highlighted the challenges of building a successful text editor, mentioning the competitive landscape and the high expectations of users. They wished the developer luck and expressed hope that the project would succeed.