Kartik K. Agaram 7fbcc0f8e5 | ||
---|---|---|
assets | ||
LICENSE.txt | ||
README.md | ||
array.lua | ||
edit.lua | ||
font_height.lua | ||
json.lua | ||
loc.lua | ||
main.lua | ||
move.lua | ||
my_string.lua | ||
my_table.lua | ||
my_utf8.lua | ||
prose.lua | ||
rects.lua | ||
subtle_color.lua | ||
utils.lua |
README.md
A viewer for plain text with color markup
Current syntax:
- Inline styling using
<...|...>
syntax, where you can currently specifyfg
(foreground color) orbg
(background color). For example,<heat|fg=1,0,0>
. Colors are triples of 3 numbers between 0 and 1, separated by commas. Use spaces only to separate fg and bg, thus:<heat|fg=1,0,0 bg=0,0,1>
.
Getting started
Install LÖVE. It's just a 5MB download, open-source and extremely well-behaved.
To run from the terminal, pass this directory to LÖVE, optionally with a file path to edit.
Alternatively, turn it into a .love file you can double-click on:
$ zip -r /tmp/highlight.love *.lua
By default, highlight.love reads/writes the file lines.txt
in
a directory relative to this app.
To open a different file, drop it on the highlight.love window.
Keyboard shortcuts
While editing text:
ctrl+f
to find patterns within a filectrl+c
to copy,ctrl+x
to cut,ctrl+v
to pastectrl+z
to undo,ctrl+y
to redoctrl+=
to zoom in,ctrl+-
to zoom out,ctrl+0
to reset zoomalt+right
/alt+left
to jump to the next/previous word, respectively- mouse drag or
shift
+ movement to select text,ctrl+a
to select all
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.
-
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.
-
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. Its immediate upstream is notebook.love, a notebook UI that first implemented the markup syntax for styling. Updates to it can be downloaded from the following mirrors:
Further forks are encouraged. If you show me your fork, I'll link to it here.
Feedback
Most appreciated. Messages, PRs, patches, forks, it's all good.