Still in the early early stages. Can be a little slow going since I’m treating this like a training project to strengthen my Python skills. Typing mechanics are nailed down, basic UI is in place.
Next is to get the functionality working for new-page, save, export, etc… and the correction tape mode.
What about some of the other distraction free editors, like [FocusWriter}(https://gottcode.org/focuswriter/) and Ghost Writer
Your project looks very interesting. I would like to understand how it differs from the other “distraction free” applications that are out there. (Granted, you are saying “minimal” instead of “distraction free”.)
Essentially, it’s a digital typewriter (or as close as I can make it).
That means a few things, but the biggest ones are:
- No cursor. The “paper” moves left to right under a caret (the bottom red triangle) in order to place the next character.
- No word wrap. A “ding” warns you when you’re reaching the right margin and you with do a carriage return, which moves that paper up one line and back to the left margin.
- No backspace. Hitting backspace or delete will move the carriage back however many spaces, but it doesn’t delete what is typed. Instead your new characters are on-top of the old ones, just like a typewriter. If you want to “delete” a word, there’s a “correction tape”, which allows you to retype over the word in “white ink”, effectively erasing it. Or you can simply do what I do on a typewriter, which is go back and cover the error with xxxxx and keep moving forward.
- Related to the above, there is no block selecting of text. For all intents and purposes, what you’ve typed is immutable. Like typing on a piece of paper, once it’s typed, it’s typed. The correction tape gives you a limited ability to correct errors, but trying to do that for an entire paragraph would be a pain in the butt.
- (optional) only your last ten pages are visible. As new pages are added, older ones move into a “done” folder so you can’t fall into a continuous editing cycle instead of making forward progress.
Ahh, I missed the concept that you were simulating the experience of using a typewriter.
How far are you planning to take the concept? Are you going to make people manually set up margins, tab stops, headers, footers, etc?
Nothing that complex with tab stops, etc… At least not yet. The caret is tied to a margin/ruler up top that will allow people to slide the paper back and forth to set both the left margin, and at the same time, when on the right, the “ding” occurs. And that’s about the only option in that regard.
Looks cool! I wrote something along similar lines a couple years ago that might interest you: https://github.com/areldyb/ylinat
That looks great! Mind if I take some lessons from it to make my own better?
Go for it!
(One thing though: I released YLINAT under the GPL-3 license. I’m not a lawyer-guy but I think the way the GPL license works is that if you take actual code from it, then the GPL license will apply if you distribute Karit? Something like that. But ideas/lessons, totally fine.)
Likely won’t need to copy anything directly. But mine is going to be GPL-3 itself when it’s finally done anyway. Thanks.
Sign me up!
Wow, this looks rad.
Nice work, but I’m curious if you checked out Novel Writer (https://novelwriter.io/)?
Yes. Too many features. Not looking for a novel writer. Looking for something that simulates nothing more than putting a piece of paper in a typewriter and hitting the keys.




