about summary refs log tree commit diff
path: root/edit.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-02-09 04:32:32 -0500
committerJune McEnroe <june@causal.agency>2020-02-09 04:32:32 -0500
commit5e637324c9f2b16a602c1b66081390624598c703 (patch)
treed3c12f45ff2ab82cf1a07ac7e8d9d769e4f25bb2 /edit.c
parentRename kill ops (diff)
downloadtest-5e637324c9f2b16a602c1b66081390624598c703.tar.gz
test-5e637324c9f2b16a602c1b66081390624598c703.zip
Add C-w and M-d
Diffstat (limited to 'edit.c')
-rw-r--r--edit.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/edit.c b/edit.c
index 7b20079..47478ec 100644
--- a/edit.c
+++ b/edit.c
@@ -146,10 +146,23 @@ void edit(size_t id, enum Edit op, wchar_t ch) {
 			while (pos < len && buf[pos] != L' ') pos++;
 		}
 
-		break; case EditDeletePrev: if (pos) delete(--pos, 1);
-		break; case EditDeleteNext: delete(pos, 1);
 		break; case EditDeleteHead: delete(0, pos); pos = 0;
 		break; case EditDeleteTail: delete(pos, len - pos);
+		break; case EditDeletePrev: if (pos) delete(--pos, 1);
+		break; case EditDeleteNext: delete(pos, 1);
+		break; case EditDeletePrevWord: {
+			if (!pos) break;
+			size_t word = pos - 1;
+			while (word && buf[word - 1] != L' ') word--;
+			delete(word, pos - word);
+			pos = word;
+		}
+		break; case EditDeleteNextWord: {
+			if (pos == len) break;
+			size_t word = pos + 1;
+			while (word < len && buf[word] != L' ') word++;
+			delete(pos, word - pos);
+		}
 
 		break; case EditInsert: {
 			reserve(pos, 1);
it during buildsLars Hjemli 2007-05-11Added git as a submoduleLars Hjemli 2007-05-09Add support for downloading single blobsLars Hjemli 2007-05-08ui-view: show pathname if specified in querystringLars Hjemli 2007-05-08Update to libgit 1.5.2-rc2Lars Hjemli 2007-02-21Layout updateLars Hjemli 2007-02-08Make snapshot feature configurableLars Hjemli 2007-02-08Add support for snapshotsLars Hjemli 2007-02-05cgit v0.2Lars Hjemli 2007-02-05Add support for prefix and gitsrc arguments to 'make'Lars Hjemli 2007-02-04Update cgitrc templateLars Hjemli 2007-02-04Add support for lightweight tagsLars Hjemli 2007-02-04Read repo-info from /etc/cgitrcLars Hjemli 2007-02-04Do not die if tag has no messageLars Hjemli 2007-02-03Fix search for non-virtual urlsLars Hjemli 2007-01-28Update README with install/config informationLars Hjemli