diff options
author | bptato <nincsnevem662@gmail.com> | 2024-11-23 23:25:19 +0100 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-11-24 00:01:44 +0100 |
commit | 65505fa55a6e199e89ab033aeb0cf293defa03cf (patch) | |
tree | cadbff6c027fd3313b220350971ae148abba9292 /src | |
parent | 2138e8eb0f57bc78bfc336f8c5cd8092f61f0700 (diff) | |
download | chawan-65505fa55a6e199e89ab033aeb0cf293defa03cf.tar.gz |
pager, select: implement more functions
not quite happy with this design but for now let's just try to make it work well
Diffstat (limited to 'src')
-rw-r--r-- | src/local/pager.nim | 3 | ||||
-rw-r--r-- | src/local/select.nim | 20 |
2 files changed, 18 insertions, 5 deletions
diff --git a/src/local/pager.nim b/src/local/pager.nim index eec61715..e9927b4f 100644 --- a/src/local/pager.nim +++ b/src/local/pager.nim @@ -2258,7 +2258,8 @@ const MenuMap = [ ("Save source (sS)", "buffer.saveSource"), ("Reload (U)", "pager.reloadBuffer"), ("Save link (s<Enter>)", "buffer.saveLink"), - ("View image (I)", "buffer.viewImage") + ("View image (I)", "buffer.viewImage"), + ("Linkify URLs (:)", "buffer.markURL") ] proc menuFinish(opaque: RootRef; select: Select; sr: SubmitResult) = diff --git a/src/local/select.nim b/src/local/select.nim index bf4d5500..9a1c550d 100644 --- a/src/local/select.nim +++ b/src/local/select.nim @@ -94,11 +94,23 @@ proc scrollUp(select: Select; n = 1) {.jsfunc.} = select.cursorUp(select.fromy - tfy) select.queueDraw() -proc cursorPrevLink(select: Select) {.jsfunc.} = - select.cursorUp() +proc cursorPrevLink(select: Select; n = 1) {.jsfunc.} = + select.cursorUp(n) -proc cursorNextLink(select: Select) {.jsfunc.} = - select.cursorDown() +proc cursorNextLink(select: Select; n = 1) {.jsfunc.} = + select.cursorDown(n) + +proc cursorLinkNavUp(select: Select; n = 1) {.jsfunc.} = + select.cursorUp(n) + +proc cursorLinkNavDown(select: Select; n = 1) {.jsfunc.} = + select.cursorDown(n) + +proc cursorNthLink(select: Select; n = 1) {.jsfunc.} = + select.setCursorY(n - 1) + +proc cursorRevNthLink(select: Select; n = 1) {.jsfunc.} = + select.setCursorY(select.options.len - n) proc gotoLine(select: Select; n: int) {.jsfunc.} = select.setCursorY(n + 1) |