# capture.love Sometimes you just want to capture a stray thought. Seeing unrelated text can make it fly right out of your brain. This app gives you a blank slate every time, and saves what you write somewhere in a single hard-coded directory tree. Once it's saved, use [pensieve.love](https://git.sr.ht/~akkartik/pensieve.love) to browse that directory tree. capture.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. ## Getting started 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. First run: [run from the terminal](https://love2d.org/wiki/Getting_Started#Running_Games) with a directory to write notes to. Later runs: you don't need to provide any arguments. For convenience, turn it into a .love file you can double-click on: ``` $ zip -r /tmp/capture.love *.lua ``` ## 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 * `ctrl+e` to modify the sources 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. capture.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. * Undo/redo may be sluggish in large files. Large files may grow sluggish in other ways. capture.love works well in all circumstances with files under 50KB. * If you kill the process, say by force-quitting because things things get sluggish, you can lose data. * The text cursor will always stay on the screen. This can have some strange implications: * A long series of drawings will get silently skipped when you hit page-down, until a line of text can be showed on screen. * 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. So far this app isn't really designed for drawing-heavy files. For now I'm targeting mostly-text files with a few drawings mixed in. * No clipping yet for drawings. In particular, circles/squares/rectangles and point labels can overflow a drawing. * 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 and Forks 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: * https://git.sr.ht/~akkartik/capture.love * https://tildegit.org/akkartik/capture.love * https://git.merveilles.town/akkartik/capture.love * https://nest.pijul.com/akkartik/capture.love (using the Pijul version control system) Further forks are encouraged. If you show me your fork, I'll link to it here. ## Associated tools * https://git.sr.ht/~akkartik/pensieve.love is the full-scale UI for browsing notes captured using capture.love. * https://codeberg.org/akkartik/lines2md exports lines.love files to Markdown and (non-editable) SVG. * https://git.sr.ht/~akkartik/lines2html.love exports lines.love files to html and inline SVG. ## Feedback [Most appreciated.](http://akkartik.name/contact)