2022-08-11 17:29:00 +00:00
|
|
|
In progress. Manage a directory tree containing plain-text notes (with [some
|
2023-03-02 17:37:56 +00:00
|
|
|
line drawings](http://akkartik.name/lines.html)). Notes/files connect to each
|
|
|
|
other using [symmetric cross-links](https://merveilles.town/@akkartik/108766067153506592)
|
2023-03-02 17:39:22 +00:00
|
|
|
which are saved outside the plain-text in a corresponding .json file.
|
2022-06-07 01:33:44 +00:00
|
|
|
|
2022-09-10 07:21:28 +00:00
|
|
|
Some features:
|
|
|
|
- Multiple views into an independent repo of plain text notes (with [some line
|
|
|
|
drawings](http://akkartik.name/lines.html)).
|
|
|
|
- Notes can have arbitrary named relationships (links) to each other,
|
|
|
|
resulting in a graph.
|
|
|
|
- The primary visual metaphor is an infinite 2D surface of fixed-width,
|
|
|
|
non-overlapping, notes that can be operated on with an extensible set of
|
|
|
|
commands.
|
|
|
|
- Commands usually (but not always) create new columns of notes. Each column
|
|
|
|
is an independent visualization of a subset of notes.
|
2023-08-02 21:27:34 +00:00
|
|
|
- Find on surface.
|
|
|
|
- Search all notes on disk in reverse-chronological order.
|
2022-09-10 07:21:28 +00:00
|
|
|
- Notes can contain hyperlinks in [[wikiwords]] to other notes. Hyperlinks
|
|
|
|
can't contain spaces. Clicking on a hyperlink opens the target in a new
|
|
|
|
column.
|
|
|
|
- A few other things. Explore the command menu and palette along the top.
|
|
|
|
|
|
|
|
Some videos to help visualize these bullets (albeit with outdated UI):
|
|
|
|
* https://archive.org/details/akkartik-pensieve-2022-07-27 (4.5 minutes)
|
|
|
|
* https://merveilles.town/@akkartik/108766067153506592 (30 seconds)
|
2023-08-02 21:27:34 +00:00
|
|
|
* https://archive.org/details/akkartik-pensieve-2022-08-29 (3 minutes)
|
2022-09-10 07:21:28 +00:00
|
|
|
|
2022-08-12 05:42:27 +00:00
|
|
|
pensieve.love is a compatible fork of [lines.love](http://akkartik.name/lines.html),
|
|
|
|
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.
|
|
|
|
|
2023-01-25 02:46:40 +00:00
|
|
|
## Getting started
|
2022-06-07 01:33:44 +00:00
|
|
|
|
2023-01-25 02:46:40 +00:00
|
|
|
Install [LÖVE](https://love2d.org). It's just a 5MB download, open-source and
|
|
|
|
extremely well-behaved. I'll assume below that you can invoke it using the
|
|
|
|
`love` command, but that might vary depending on your OS.
|
2022-08-11 16:33:05 +00:00
|
|
|
|
2023-09-08 21:16:50 +00:00
|
|
|
The first time you run pensieve.love, do so from a terminal and pass in the
|
|
|
|
directory where you want to store your notes.
|
2022-08-11 16:33:05 +00:00
|
|
|
|
2023-09-08 21:16:50 +00:00
|
|
|
(The repo contains a 'data.sample/' directory for trying out with.)
|
2022-08-11 16:33:05 +00:00
|
|
|
|
2023-09-08 21:16:50 +00:00
|
|
|
From here on out, restarting pensieve.love will open the same directory.
|
|
|
|
Run again from a terminal if you ever want to switch to a new directory.
|
2022-08-11 16:33:05 +00:00
|
|
|
|
2022-06-07 01:33:44 +00:00
|
|
|
## 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
|
2022-06-17 17:28:25 +00:00
|
|
|
* `alt+right`/`alt+left` to jump to the next/previous word, respectively
|
2022-11-19 08:11:39 +00:00
|
|
|
* mouse drag or `shift` + movement to select text, `ctrl+a` to select all
|
2023-09-11 04:54:52 +00:00
|
|
|
* `ctrl+w` to modify the sources
|
2022-06-07 01:33:44 +00:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
2023-09-11 04:54:52 +00:00
|
|
|
pensieve.love has been exclusively tested so far with a US keyboard layout. If
|
2022-06-07 20:48:59 +00:00
|
|
|
you use a different layout, please let me know if things worked, or if you
|
2022-06-09 19:16:03 +00:00
|
|
|
found anything amiss: http://akkartik.name/contact
|
2022-06-07 20:48:59 +00:00
|
|
|
|
2022-05-30 00:03:01 +00:00
|
|
|
## Known issues
|
2022-05-21 17:36:27 +00:00
|
|
|
|
2022-05-18 05:05:00 +00:00
|
|
|
* No support yet for Unicode graphemes spanning multiple codepoints.
|
2022-05-21 17:36:27 +00:00
|
|
|
|
2022-07-08 21:16:48 +00:00
|
|
|
* No support yet for right-to-left languages.
|
|
|
|
|
2022-08-13 16:07:00 +00:00
|
|
|
* Editing a note larger than 50KB grows sluggish (particularly during
|
|
|
|
undo/redo) even when maximized.
|
2022-06-05 17:26:35 +00:00
|
|
|
|
2022-06-10 21:19:27 +00:00
|
|
|
* If you kill the process, say by force-quitting because things things get
|
|
|
|
sluggish, you can lose data.
|
|
|
|
|
2022-09-07 04:58:46 +00:00
|
|
|
* Searching is slow. There's no index yet. Searching happens in the same
|
|
|
|
thread as UI updates, so UI may go unresponsive with really large notes. I
|
|
|
|
haven't observed this in practice.
|
|
|
|
|
2022-08-13 16:07:00 +00:00
|
|
|
* Pressing keys while editing will try to always keep the text cursor on
|
|
|
|
screen. This can have some strange implications:
|
2022-05-21 17:36:27 +00:00
|
|
|
|
2022-05-19 01:19:27 +00: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 05:56:55 +00: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 17:36:27 +00:00
|
|
|
|
2022-05-20 05:56:55 +00:00
|
|
|
So far this app isn't really designed for drawing-heavy files. For now I'm
|
2022-05-19 01:19:27 +00:00
|
|
|
targeting mostly-text files with a few drawings mixed in.
|
2022-05-21 17:36:27 +00:00
|
|
|
|
2022-06-16 03:57:14 +00:00
|
|
|
* No clipping yet for drawings. In particular, circles/squares/rectangles and
|
|
|
|
point labels can overflow a drawing.
|
2022-05-30 00:03:01 +00: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 20:32:42 +00:00
|
|
|
|
|
|
|
* Can't scroll while selecting text with mouse.
|
|
|
|
|
|
|
|
* No scrollbars yet. That stuff is hard.
|
2022-06-07 01:33:44 +00:00
|
|
|
|
2022-08-12 05:42:27 +00:00
|
|
|
## Mirrors and Forks
|
|
|
|
|
2023-01-19 05:05:58 +00:00
|
|
|
This repo is a fork of [lines.love](http://akkartik.name/lines.html), an
|
|
|
|
editor for plain text where you can also seamlessly insert line drawings.
|
|
|
|
Updates to it can be downloaded from:
|
2022-08-12 05:42:27 +00:00
|
|
|
|
|
|
|
* https://git.sr.ht/~akkartik/pensieve.love
|
2024-01-31 07:33:25 +00:00
|
|
|
* https://tildegit.org/akkartik/pensieve.love
|
2024-03-11 04:32:09 +00:00
|
|
|
* https://git.merveilles.town/akkartik/pensieve.love
|
2023-06-26 05:30:58 +00:00
|
|
|
* https://nest.pijul.com/akkartik/pensieve.love (using the Pijul version control system)
|
2022-08-12 05:42:27 +00:00
|
|
|
|
|
|
|
Further forks are encouraged. If you show me your fork, I'll link to it here.
|
|
|
|
|
|
|
|
## Associated tools
|
|
|
|
|
|
|
|
* https://git.sr.ht/~akkartik/capture.love provides a blank-slate UI into the
|
|
|
|
same notes directory as pensieve.love.
|
|
|
|
* https://codeberg.org/akkartik/lines2md exports lines.love files to Markdown
|
|
|
|
and (non-editable) SVG.
|
2023-03-21 07:10:20 +00:00
|
|
|
* https://git.sr.ht/~akkartik/lines2html.love exports lines.love files to html
|
|
|
|
and inline SVG.
|
2022-08-12 05:42:27 +00:00
|
|
|
|
2022-06-07 01:33:44 +00:00
|
|
|
## Feedback
|
|
|
|
|
|
|
|
[Most appreciated.](http://akkartik.name/contact)
|
2022-08-11 18:12:59 +00:00
|
|
|
|
|
|
|
In particular, pensieve.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.
|