7 ms·
Ad: An Adaptable Text Editor
- PotatoPancakes 2y ago[flagged]
- deleted 2y ago[deleted]
- AdieuToLogic 2y agoTo paraphrase The Princess Bride[0]: You fell victim to one of the classic blunders - the most famous of which is "never get involved in a land war in Asia" - but only slightly less well-known is this: Sooner or later, wanting to write a program editor has ensnared many a skilled developer, only to find it to be a time vampire when considered anything more than an intellectual exercise. Good luck on your journey. :-) 0 - https://www.imdb.com/title/tt0093779/quotes/?ref_=tt_dyk_qu https://www.imdb.com/title/tt0093779/quotes/?ref_=tt_dyk_qu
- girvo 2y agoIndeed, I was chuckling along as I read the README, as this is remarkably similar to my attempt at the same problem about 14 years ago. Though sminez seems much more skilled and motivated than I am: https://github.com/sminez/penrose https://github.com/sminez/penrose
- chefandy 2y agoI respect the ambition. I thought I was combining chocolate and peanut butter a few times, but after sinking a few days into it, realized I was building a Homer car. All of those projects were driven by my desire for some way of interacting with some common data or whatever rather than solving a unique technical problem, so I now force myself to define a very granular UI spec and start with the front end code, and the profile of the homer car reveals itself way earlier in the process. Popping open the code editor and banging out the scaffolding for a back-end always feels so productive, but if it’s a fundamentally flawed idea, it’s very much the opposite, in reality.
- deleted 2y ago[deleted]
- marssaxman 2y agoI appreciate your joke, but also - it doesn't have to be so bad as that! Of all the everyday tools a developer might choose to reinvent in their own personal style, an editor is likely the easiest to complete. I have written three different code editors over the course of my career, and the last of them I have been using every day for a long time. It is a good feeling, building tools which suit oneself perfectly!
- specialist 2y agoThere was a time when writing your own editor was considered a rite of passage. Kinda like how art students copy master works and noob programmers recreate classic games (pong, space invaders, tetris, pacman, ...). I love it when people share their rewrites, recreations.
- Gualdrapo 2y agoIs it just me, or in the latest few (10?) years there have surged more vi-like alternatives like never before? - Kakoune - Helix - Vis - Ki - Ad - ...
- JadeNB 2y agoI'd never heard of Ki, and it's hard to google. Do you have a reference?
- yjftsjthsd-h 2y agoSounds like a Google problem; https://duckduckgo.com/?t=ffab&q=ki+text+editor&ia=web https://duckduckgo.com/?t=ffab&q=ki+text+editor&ia=web gives https://ki-editor.github.io/ki-editor/ https://ki-editor.github.io/ki-editor/ in the first screen.
- barnabee 2y agohttps://ki-editor.github.io/ki-editor/ https://ki-editor.github.io/ki-editor/ It’s quite a young editor but is conceptually pretty neat! It works on syntax trees as defined by tree sitter, and the tutorial on their site shows off how powerful that is pretty nicely. I also like how it gets by with pretty much just buffers and readline for everything. I’m a bit more wary of all config happening by changing code and recompiling, though. Definitely one I’m watching, though it’s far from being able to tempt me away from Helix at this stage.
- smasher164 2y agoThis is very exciting! I've been longing for an acme-like editor that adapts better to mainstream OSes. Being vim-like is a major plus. I'm gonna try this out!
- ilyagr 2y agoPeople should be aware of two related editors: https://anvil-editor.net/ https://anvil-editor.net/ is more directly inspired by and similar to Acme (but makes no attempt to borrow from Vim). https://github.com/martanne/vis https://github.com/martanne/vis is a minimalist editor that stays close to Vim but adds Sam-style regular extensions and multi-cursor editing (but not Acme-style "execute anything on screen"). For example, you can select all instances of a regex and edit them all at once afterwards interactively.
- ilyagr 2y agoWhich brings me to a question: I'm not entirely clear on the relationship between and capabilities of Sam and Acme. Is the ability of Vis to select all instances of a regex and edit them all at once afterwards interactively (see e.g. https://asciinema.org/a/41361 https://asciinema.org/a/41361) Vis's own idea, or was it part of Acme? Is it part of Ad?
- rob74 2y ago> https://anvil-editor.net/ https://anvil-editor.net/ is more directly inspired by and similar to Acme (but makes no attempt to borrow from Vim). Wow, I didn't think there is still open source software around that isn't hosted on GitHub or another code hosting platform. And the page also makes it very hard to tell if the project is still active, the only date I could find was in the license (2019). I actually had to download the latest version and look inside the archive to see that it's from November 2024...
- ilrwbwrkhv 2y agoIt is active and it works remarkable well as an editor.
- wasted_intel 2y agoYour comment about writing a text editor library is precisely what got me started with amp ~10 years ago, where much of its core functionality was extracted here: https://crates.io/crates/scribe https://crates.io/crates/scribe Good luck with the project! Building a text editor to scratch your own itch is fun.
- cassepipe 2y agoLove amp <3
- teo_zero 2y agoI wonder why every attempt at copying vi's concept, which is reasonable, also ends up copying its keybinding from the 70s. I'm not talking about hjkl, but rather y for yank, p for put, d for delete, u for undo... where today every other software adopts a different vocabulary, namely x for cut, c for copy, v for paste, z for undo, etc.
- mathstuf 2y agoIMO, it's because mnemonics make more sense than QWERTY keyboard placement. Of course, there are exceptions even in Vim (e.g., ^E and ^Y for viewport scrolling), but bindings to value rather than pointer for things make it easier for those with alternate layouts (very few apps use scancode rather than keycodes for bindings, but they are possible such as GNOME's Alt+<key above Tab> for same-app window switching).
- atiedebee 2y agoI think those bindings are fine, what is more problematic to me is the inconsistencies or straight up arbitrary mappings (gg and G come to mind). I feel like kakoune did a great job at improving vims bindings to make more sense.
- deleted 2y ago[deleted]
- tliltocatl 2y agoSpeaking of 70s, my personal showstopper for vi isn't mode switching (actually, quite convenient). It's the cursor being on top of a symbol, rather then between symbols, so you need to mind when to 'i' and when to 'a'. And no, virtual spaces doesn't change much, the whole editing model is built around it.
- cess11 2y agoIt's the terminal that controls the cursor. You can tell vim to change it and have a vertical bar in insert mode and a block otherwise if you want. By default you just get what your terminal does.
- maccard 2y agoI’m an IDE-with-vim-bindings user, and I don’t get the desire for another vim. The value proposition in vim (or vscode or idea) is in the extra functionality on top of the core editing experience. If you give me a different text editing experience, but don’t support the ecosystem of plugins, the value proposition is almost zero. There are basically no methods of text input that will make me more productive than a good debugger, test and project/file explorer integration. One thing that I would love to see is vim like bindings for navigating a semantic representation - navigating a tree sitter representation instead of words and symbols.
- dlisboa 2y agoMany editors pop up with zero ecosystem and become successful anyway. All you need to do is provide a better editor experience in some fashion for there to be a value proposition. Atom, VS Code, helix, zed, etc. none of these had mountains of plugins and integrations initially. Plus building vi-like editors is just a fun exercise a lot of programmers undertake, hence why there are so many. People have to try things to know what is better.
- WhyNotHugo 2y agoNeovim has treesitter-objects, which let you use semantic tokens like these in motions. E.g.: daf = "delete around function", vic = "visual inside class", etc.
- maccard 2y agoThanks, that’s super super interesting. I’m going to play with this over the holidays.
- 0points 2y agoScreenshots, please.
- splitbrain 2y agoI saw the headline and thought HackerNews is now showing ads. But it's an editor called "ad".
- amelius 2y agoThere are ads disguised as articles, but they are usually about Apple products. Often the article is a direct link to the corresponding product web page.