summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-08-08 21:48:30 -0400
committerJune McEnroe <june@causal.agency>2018-08-08 21:48:30 -0400
commitc024147504a4a1b3a6b1e40f5120bc57248f0531 (patch)
treee9bb173b3ba02dfd7ec27bade7f852cf95a9fb1d
parentUse blank line as unread marker (diff)
downloadcatgirl-c024147504a4a1b3a6b1e40f5120bc57248f0531.tar.gz
catgirl-c024147504a4a1b3a6b1e40f5120bc57248f0531.zip
Add commands to tab complete
-rw-r--r--chat.c3
-rw-r--r--chat.h2
-rw-r--r--edit.c2
-rw-r--r--input.c6
4 files changed, 11 insertions, 2 deletions
diff --git a/chat.c b/chat.c
index 697e39a..4d3f505 100644
--- a/chat.c
+++ b/chat.c
@@ -75,8 +75,9 @@ int main(int argc, char *argv[]) {
 	if (!chat.nick) chat.nick = prompt("Name: ");
 	chat.user = strdup(chat.nick);
 
-	signal(SIGINT, sigint);
+	inputTab();
 
+	signal(SIGINT, sigint);
 	uiInit();
 	uiLog(L"Traveling...");
 	uiDraw();
diff --git a/chat.h b/chat.h
index 9507f12..3ded5db 100644
--- a/chat.h
+++ b/chat.h
@@ -73,6 +73,8 @@ const wchar_t *editTail(void);
 bool edit(bool meta, bool ctrl, wchar_t ch);
 
 void handle(char *line);
+
+void inputTab(void);
 void input(char *line);
 
 void tabTouch(const char *word);
diff --git a/edit.c b/edit.c
index 9073f92..6b044cb 100644
--- a/edit.c
+++ b/edit.c
@@ -126,7 +126,7 @@ static void complete(void) {
 	free(wcs);
 
 	size_t pos = line.tab - line.buf;
-	if (!pos) {
+	if (!pos && line.tab[0] != L'/') {
 		insert(L':');
 	} else if (pos >= 2) {
 		if (line.buf[pos - 2] == L':' || line.buf[pos - 2] == L',') {
diff --git a/input.c b/input.c
index e4c4672..0ac64f5 100644
--- a/input.c
+++ b/input.c
@@ -99,3 +99,9 @@ void input(char *input) {
 	}
 	uiFmt("%s isn't a recognized command", command);
 }
+
+void inputTab(void) {
+	for (size_t i = 0; i < COMMANDS_LEN; ++i) {
+		tabTouch(COMMANDS[i].command);
+	}
+}
e McEnroe 2019-12-21Revert "Add first working version of imbox"June McEnroe Moved to <https://git.causal.agency/imbox>. This reverts commit 6aa7f2f6bf47fa9df9c749ce665171fa30800937. 2019-12-21Add first working version of imboxJune McEnroe 2019-12-20Respect mailmap in gl pretty formatJune McEnroe 2019-12-20Set LANG in cgit filtersJune McEnroe ttpre needs to know about UTF-8 too so it can bold/italic non-ASCII chars. 2019-12-20Source .editrc before applying -v or -eJune McEnroe Otherwise a bind -v in .editrc will take precedence and overwrite the ^I binding for sh-complete. 2019-12-20Disable signing commitsJune McEnroe Why did I ever turn this on? This gets me nothing but inconvenience. RIP to all the wasted bytes in my git repos. 2019-12-19Ignore about-filterJune McEnroe 2019-12-19Fix matching make tags with no sourcesJune McEnroe 2019-12-19Avoid matching := assignments as tagsJune McEnroe 2019-12-18Hide line numbers when rendering mdocJune McEnroe Hack: output an extra <td> after rendering mdoc so that line numbers can be hidden based on there being three. This required splitting source-filter and about-filter since on about pages there is no table. 2019-12-18Customize cgit CSSJune McEnroe 2019-12-18Use :target rather than :focus pseudo-classJune McEnroe :target persists after you click on something else. 2019-12-18Copy cgit auxiliary binaries properlyJune McEnroe 2019-12-18Add git.causal.agency cgit configJune McEnroe 2019-12-18Bail from hi if input is binaryJune McEnroe NULs in the input cause an infinite loop in htmlEscape, not to mention regexes obviously not working, etc. 2019-12-16Post "cgit setup"June McEnroe