about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--edit.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/edit.c b/edit.c
index 16fa910..fe79e76 100644
--- a/edit.c
+++ b/edit.c
@@ -20,6 +20,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <wchar.h>
+#include <wctype.h>
 
 #include "chat.h"
 
@@ -150,11 +151,11 @@ void edit(size_t id, enum Edit op, wchar_t ch) {
 		break; case EditNext: if (pos < len) pos++;
 		break; case EditPrevWord: {
 			if (pos) pos--;
-			while (pos && buf[pos - 1] != L' ') pos--;
+			while (pos && !iswspace(buf[pos - 1])) pos--;
 		}
 		break; case EditNextWord: {
 			if (pos < len) pos++;
-			while (pos < len && buf[pos] != L' ') pos++;
+			while (pos < len && !iswspace(buf[pos])) pos++;
 		}
 
 		break; case EditDeleteHead: delete(0, pos); pos = 0;
@@ -164,14 +165,14 @@ void edit(size_t id, enum Edit op, wchar_t ch) {
 		break; case EditDeletePrevWord: {
 			if (!pos) break;
 			size_t word = pos - 1;
-			while (word && buf[word - 1] != L' ') word--;
+			while (word && !iswspace(buf[word - 1])) 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++;
+			while (word < len && !iswspace(buf[word])) word++;
 			delete(pos, word - pos);
 		}
 		break; case EditPaste: {
'>Implement non-blocking line-buffered readingJune McEnroe 2020-08-15Generate tags fileJune McEnroe 2020-08-15Just use CLOCK_MONOTONIC and clean up includesJune McEnroe CLOCK_MONOTONIC exists everywhere. 2020-08-15Reap childrenJune McEnroe 2020-08-14Implement serviceSignal, serviceStop, serviceRestartJune McEnroe 2020-08-14Reset restartInterval and restartDeadline on startJune McEnroe 2020-08-14Switch to timespec for timeoutsJune McEnroe Can be passed to ppoll(2) directly. 2020-08-14Implement serviceStartJune McEnroe 2020-08-14Flesh out Service structJune McEnroe 2020-08-14Build environment for servicesJune McEnroe 2020-08-14Implement spawntab parsingJune McEnroe 2020-08-14Open syslog, daemonize, write PIDJune McEnroe 2020-08-14Implement user and group lookupJune McEnroe 2020-08-14Add install targetJune McEnroe 2020-08-14Add spawnd skeletonJune McEnroe