From f3430df949466920e45e171593d95d980cda92ed Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Thu, 23 Aug 2018 14:53:11 -0400 Subject: Implement I, directional insert --- client.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/client.c b/client.c index c7601cd..28ccc4e 100644 --- a/client.c +++ b/client.c @@ -195,6 +195,7 @@ static void clientMap(void) { static struct { enum { MODE_NORMAL, + MODE_DIRECTION, MODE_INSERT, MODE_REPLACE, MODE_DRAW, @@ -331,11 +332,26 @@ static void inputNormal(wchar_t ch) { break; case 'i': insertMode(1, 0); break; case 'a': clientMove(1, 0); insertMode(1, 0); + break; case 'I': input.mode = MODE_DIRECTION; break; case 'r': input.mode = MODE_REPLACE; break; case 'R': input.mode = MODE_DRAW; input.draw = 0; } } +static void inputDirection(wchar_t ch) { + switch (ch) { + break; case ESC: input.mode = MODE_NORMAL; + break; case 'h': insertMode(-1, 0); + break; case 'l': insertMode( 1, 0); + break; case 'k': insertMode( 0, -1); + break; case 'j': insertMode( 0, 1); + break; case 'y': insertMode(-1, -1); + break; case 'u': insertMode( 1, -1); + break; case 'b': insertMode(-1, 1); + break; case 'n': insertMode( 1, 1); + } +} + static void inputInsert(wchar_t ch) { switch (ch) { break; case ESC: { @@ -391,10 +407,11 @@ static void readInput(void) { return; } switch (input.mode) { - break; case MODE_NORMAL: inputNormal(ch); - break; case MODE_INSERT: inputInsert(ch); - break; case MODE_REPLACE: inputReplace(ch); - break; case MODE_DRAW: inputDraw(ch); + break; case MODE_NORMAL: inputNormal(ch); + break; case MODE_DIRECTION: inputDirection(ch); + break; case MODE_INSERT: inputInsert(ch); + break; case MODE_REPLACE: inputReplace(ch); + break; case MODE_DRAW: inputDraw(ch); } } -- cgit 1.4.1 /option>
path: root/bin/cash/mktokens (unfollow)
Commit message (Collapse)Author
2019-02-07Add Todo class and parent syntax constraintJune McEnroe782fff8a78b7f265432603351281ad2988bb40&follow=1'>ui-summary: enable arbitrary paths below repo.readmeLars Hjemli
2009-08-09cgit.c: allow repo.*-filter options to unset the current defaultLars Hjemli
2009-08-09Add support for repo.commit-filter and repo.source-filterLars Hjemli
2009-08-08Expose file extension in tree lists as class to allow nicer tree stylingMartin Szulecki
2009-08-08Introduce noplainemail option to hide email adresses from spambotsMartin Szulecki
2009-07-31ui-commit: add support for 'commit-filter' optionLars Hjemli
2009-07-31ui-tree: add support for source-filter optionLars Hjemli
2009-07-31ui-snapshot: use cgit_{open|close}_filter() to execute compressorsLars Hjemli
2009-07-31Add generic filter/plugin infrastructureLars Hjemli
2009-07-25Add support for mime type registration and lookupLars Hjemli
2009-07-25cgit.h: keep config flags sortedLars Hjemli
2009-07-25cgitrc.5.txt: document 'embedded' and 'noheader'Lars Hjemli
2009-07-25Add support for 'noheader' optionLars Hjemli
2009-07-25cgitrc.5.txt: document 'head-include'Lars Hjemli
2009-07-25ui-blob: return 'application/octet-stream' for binary blobsLars Hjemli
2009-07-25ui-plain: Return 'application/octet-stream' for binary files.Remko Tronçon
2009-06-11use cgit_httpscheme() for atom feedDiego Ongaro
2009-06-11add cgit_httpscheme() -> http:// or https://Diego Ongaro
2009-06-07Return http statuscode 404 on unknown branchLars Hjemli
2009-06-07Add head-include configuration option.Mark Lodato
2009-03-15CGIT 0.8.2.1Lars Hjemli
2009-03-15Fix doc-related glitches in Makefile and .gitignoreLars Hjemli
2009-03-15ui-snapshot: avoid segfault when no filename is specifiedLars Hjemli
2009-03-15fix segfault when displaying empty blobsEric Wong
2009-02-19Add support for HEAD requestsLars Hjemli
2009-02-19Add support for ETag in 'plain' viewLars Hjemli
2009-02-12ui-tree: escape ascii-text properly in hexdump viewLars Hjemli
2009-02-12Makefile: add doc-related targetsLars Hjemli