2022-05-30 01:03:01 +01:00
|
|
|
# Plain text with lines
|
|
|
|
|
2022-06-07 02:33:44 +01:00
|
|
|
An editor for plain text where you can also seamlessly insert line drawings.
|
|
|
|
Designed above all to be easy to modify and give you early warning if your
|
|
|
|
modifications break something.
|
|
|
|
|
2022-05-30 01:03:01 +01:00
|
|
|
http://akkartik.name/lines.html
|
|
|
|
|
2022-06-07 02:33:44 +01:00
|
|
|
## Selecting files
|
|
|
|
|
|
|
|
By default, lines.love reads/writes the file `lines.txt` in your default
|
|
|
|
user/home directory (`https://love2d.org/wiki/love.filesystem.getUserDirectory`).
|
|
|
|
|
|
|
|
To open a different file, either pass it in as a commandline argument or drag
|
|
|
|
and drop the file on to the lines.love window.
|
|
|
|
|
|
|
|
```sh
|
|
|
|
$ love . /path/to/file # from this repo directory
|
|
|
|
$ path/to/love path/to/lines.love path/to/file/to/edit # from anywhere
|
|
|
|
```
|
|
|
|
|
|
|
|
## 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
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
2022-05-30 01:03:01 +01:00
|
|
|
## Known issues
|
2022-05-21 18:36:27 +01:00
|
|
|
|
2022-06-03 22:42:08 +01:00
|
|
|
* There's a bug in freehand drawings (C-p mode) that causes them to be
|
|
|
|
highlighted even when the mouse is nowhere near them.
|
|
|
|
|
2022-05-18 06:05:00 +01:00
|
|
|
* No support yet for Unicode graphemes spanning multiple codepoints.
|
2022-05-21 18:36:27 +01:00
|
|
|
|
2022-06-03 01:46:30 +01:00
|
|
|
* Undo/redo can be sluggish in large files. If things get sluggish, killing
|
|
|
|
the process can lose data.
|
2022-06-02 23:45:25 +01:00
|
|
|
|
2022-06-07 01:30:03 +01:00
|
|
|
* Large files may grow sluggish in other ways. Pasting more than a line or two
|
|
|
|
gets slow. I've noticed in 100KB files that closing the window can take a
|
|
|
|
few seconds. And it seems to take longer in proportion to how far down my
|
|
|
|
edits are. The phenomenon persists even if I take out undo history.
|
2022-06-05 18:26:35 +01:00
|
|
|
|
2022-05-19 02:19:27 +01:00
|
|
|
* The text cursor will always stay on the screen. This can have some strange
|
|
|
|
implications:
|
2022-05-21 18:36:27 +01:00
|
|
|
|
2022-05-19 02:19:27 +01:00
|
|
|
* A long series of drawings will get silently skipped when you hit
|
|
|
|
page-down, until a line of text can be showed on screen.
|
2022-05-20 06:56:55 +01:00
|
|
|
* If there's no line of text at the top of the file, you may not be able
|
|
|
|
to scroll back up to the top with page-up.
|
2022-05-21 18:36:27 +01:00
|
|
|
|
2022-05-20 06:56:55 +01:00
|
|
|
So far this app isn't really designed for drawing-heavy files. For now I'm
|
2022-05-19 02:19:27 +01:00
|
|
|
targeting mostly-text files with a few drawings mixed in.
|
2022-05-21 18:36:27 +01:00
|
|
|
|
2022-05-21 22:03:06 +01:00
|
|
|
* No clipping yet for drawings. In particular, circles and point labels can
|
|
|
|
overflow a drawing.
|
|
|
|
|
2022-05-21 18:36:27 +01:00
|
|
|
* Insufficient handling of constraints when moving points. For example, if you
|
|
|
|
draw a manhattan line and then move one of the points, you may not be able
|
|
|
|
to hover on it anymore.
|
|
|
|
|
|
|
|
There's two broad ways to fix this. The first is to relax constraints,
|
|
|
|
switch the manhattan line to not be manhattan. The second is to try to
|
|
|
|
maintain constraints. Either constrain the point to only move along one line
|
|
|
|
(but what if it's connected to two manhattan lines?!), or constrain the
|
|
|
|
other end of the line to move alongside. I'm not sure yet which would be
|
|
|
|
more useful. Getting into constraints would also make the program more
|
|
|
|
complex.
|
|
|
|
|
|
|
|
Bottomline: at the moment moving points connected to manhattan lines,
|
|
|
|
rectangles or squares can break drawings in subtle ways.
|
2022-05-30 01:03:01 +01:00
|
|
|
|
|
|
|
* 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.
|
2022-06-03 21:32:42 +01:00
|
|
|
|
|
|
|
* Can't scroll while selecting text with mouse.
|
|
|
|
|
|
|
|
* No scrollbars yet. That stuff is hard.
|
2022-06-07 02:33:44 +01:00
|
|
|
|
|
|
|
## Mirrors and Forks
|
|
|
|
|
|
|
|
Updates to lines.love can be downloaded from the following mirrors in addition
|
|
|
|
to the website above:
|
|
|
|
* https://github.com/akkartik/lines.love
|
|
|
|
* https://repo.or.cz/lines.love.git
|
|
|
|
* https://codeberg.org/akkartik/lines.love
|
|
|
|
* https://tildegit.org/akkartik/lines.love
|
|
|
|
* https://git.tilde.institute/akkartik/lines.love
|
|
|
|
* https://git.sr.ht/~akkartik/lines.love
|
|
|
|
* https://pagure.io/lines.love
|
|
|
|
|
|
|
|
Forks of Teliva are encouraged. If you show me your fork, I'll link to it
|
|
|
|
here.
|
|
|
|
|
|
|
|
## Feedback
|
|
|
|
|
|
|
|
[Most appreciated.](http://akkartik.name/contact)
|