105 lines
3.7 KiB
Markdown
105 lines
3.7 KiB
Markdown
# Plain text with lines
|
|
|
|
[![0 dependencies!](https://0dependencies.dev/0dependencies.svg)](https://0dependencies.dev)
|
|
|
|
An editor for plain text where you can also seamlessly insert line drawings.
|
|
Designed above all to be easy to understand.
|
|
|
|
http://akkartik.name/lines.html
|
|
|
|
## Getting started
|
|
|
|
Install [LÖVE](https://love2d.org). It's just a 5MB download, open-source and
|
|
extremely well-behaved.
|
|
|
|
To run from the terminal, [pass this directory to LÖVE](https://love2d.org/wiki/Getting_Started#Running_Games),
|
|
optionally with a file path to edit.
|
|
|
|
Alternatively, turn it into a .love file you can double-click on:
|
|
```
|
|
$ zip -r /tmp/lines2.love *.lua
|
|
```
|
|
|
|
By default, lines2.love reads/writes the file `lines.txt` in
|
|
[a directory relative to this app](https://love2d.org/wiki/love.filesystem.getSourceBaseDirectory).
|
|
|
|
To open a different file, drop it on the lines2.love window.
|
|
|
|
## Keyboard shortcuts
|
|
|
|
While editing text:
|
|
* `ctrl+f` to find patterns within a file
|
|
* `ctrl+c` to copy, `ctrl+x` to cut, `ctrl+v` to paste
|
|
* `ctrl+z` to undo, `ctrl+y` to redo
|
|
* `ctrl+=` to zoom in, `ctrl+-` to zoom out, `ctrl+0` to reset zoom
|
|
* `alt+right`/`alt+left` to jump to the next/previous word, respectively
|
|
* mouse drag or `shift` + movement to select text, `ctrl+a` to select all
|
|
|
|
For shortcuts while editing drawings, consult the online help. Either:
|
|
* hover on a drawing and hit `ctrl+h`, or
|
|
* click on a drawing to start a stroke and then press and hold `h` to see your
|
|
options at any point during a stroke.
|
|
|
|
lines2.love has been exclusively tested so far with a US keyboard layout. If
|
|
you use a different layout, please let me know if things worked, or if you
|
|
found anything amiss: http://akkartik.name/contact
|
|
|
|
## Known issues
|
|
|
|
* No support yet for Unicode graphemes spanning multiple codepoints.
|
|
|
|
* No support yet for right-to-left languages.
|
|
|
|
* lines2.love assumes a file always contains at least one line of text. You
|
|
can violate this invariant by editing the file outside lines2.love. Don't do
|
|
that.
|
|
|
|
* If you make the first line a drawing there's currently no way to insert
|
|
lines above it.
|
|
|
|
* Help screen may show up in multiple drawings at a time. That feels a bit
|
|
klunky.
|
|
|
|
* Clicking on a drawing to focus cursor on it adds a point. Orphaned points
|
|
disappears on reload, but still. Klunky. To avoid this you can move the
|
|
cursor using the keyboard, but who can remember that?
|
|
|
|
* No clipping yet for drawings. In particular, circles/squares/rectangles and
|
|
point labels can overflow a drawing.
|
|
|
|
* If you ever see a crash when clicking on the mouse, it might be because a
|
|
mouse press and release need to happen in separate frames. Try pressing and
|
|
releasing more slowly and let me know if that helps or not. This is klunky,
|
|
sorry.
|
|
|
|
* Touchpads can drag the mouse pointer using a light touch or a heavy click.
|
|
On Linux, drags using the light touch get interrupted when a key is pressed.
|
|
You'll have to press down to drag.
|
|
|
|
* Can't scroll while selecting text with mouse.
|
|
|
|
* No scrollbars yet. That stuff is hard.
|
|
|
|
## Mirrors
|
|
|
|
This repo is a fork of [lines.love](http://akkartik.name/lines.html), aiming
|
|
to be more elegant and have fewer bugs. Updates to it can be downloaded from:
|
|
|
|
* https://git.merveilles.town/akkartik/lines2.love
|
|
* https://git.sr.ht/~akkartik/lines2.love
|
|
|
|
## Associated tools
|
|
|
|
* https://codeberg.org/akkartik/lines2md exports files to Markdown and
|
|
(non-editable) SVG.
|
|
* https://git.sr.ht/~akkartik/lines2html.love exports files to html and inline
|
|
SVG.
|
|
* https://codeberg.org/eril/lines2html.love provides the option to export
|
|
just the drawings to a directory. Also provides a CLI, which should be more
|
|
natural for many people.
|
|
|
|
## Feedback
|
|
|
|
[Most appreciated.](http://akkartik.name/contact) Messages, PRs, patches,
|
|
forks, it's all good.
|