aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/main.c b/main.c
index 4b5d2ea..0097e3f 100644
--- a/main.c
+++ b/main.c
@@ -2147,8 +2147,8 @@ static const char *complete_word(Vis *vis, const char *keys, const Arg *arg) {
Buffer cmd;
buffer_init(&cmd);
char *prefix = get_completion_prefix(vis);
- if (prefix && buffer_printf(&cmd, "tr \" ;:$<>#?{}()[],.'\" '\n' | "
- " grep '^%s.' | sort | uniq | " VIS_MENU " | sed 's/%s//' | tr -d '\n'", prefix, prefix)) {
+ if (prefix && buffer_printf(&cmd, "tr -cs '[:alnum:]_' '\n' | grep '^%s.' | sort -u | " VIS_MENU
+ " | sed 's/^%s//' | tr -d '\n'", prefix, prefix)) {
Filerange all = text_range_new(0, text_size(txt));
insert_dialog_selection(vis, &all, (const char*[]){ buffer_content0(&cmd), NULL });
}
@@ -2161,8 +2161,8 @@ static const char *complete_filename(Vis *vis, const char *keys, const Arg *arg)
Buffer cmd;
buffer_init(&cmd);
char *prefix = get_completion_prefix(vis);
- if (prefix && buffer_printf(&cmd, "ls | grep '^%s' | sort | " VIS_MENU
- " | sed 's/%s//' | tr -d '\n'", prefix, prefix)) {
+ if (prefix && buffer_printf(&cmd, "ls -1 | grep '^%s.' | sort | " VIS_MENU
+ " | sed 's/^%s//' | tr -d '\n'", prefix, prefix)) {
Filerange empty = text_range_new(0, 0);
insert_dialog_selection(vis, &empty, (const char*[]){ buffer_content0(&cmd), NULL });
}