Append '/' to highlighter group completion candidates
This commit is contained in:
parent
20fe8e0112
commit
39e63cf518
|
@ -633,7 +633,7 @@ const CommandDesc rename_buffer_cmd = {
|
|||
}
|
||||
};
|
||||
|
||||
static constexpr auto highlighter_scopes = { "global", "buffer", "window", "shared" };
|
||||
static constexpr auto highlighter_scopes = { "global/", "buffer/", "window/", "shared/" };
|
||||
|
||||
template<bool add>
|
||||
Completions highlighter_cmd_completer(
|
||||
|
|
|
@ -62,9 +62,9 @@ Completions HighlighterGroup::complete_child(StringView path, ByteCount cursor_p
|
|||
|
||||
auto candidates = complete(
|
||||
path, cursor_pos,
|
||||
m_highlighters | filter([=](const HighlighterMap::Item& hl)
|
||||
{ return not group or hl.value->has_children(); })
|
||||
| transform(std::mem_fn(&HighlighterMap::Item::key)));
|
||||
m_highlighters | filter([=](auto& hl) { return not group or hl.value->has_children(); })
|
||||
| transform([](auto& hl) { return hl.value->has_children() ? hl.key + "/" : hl.key; })
|
||||
| gather<Vector<String>>());
|
||||
|
||||
return { 0, 0, std::move(candidates) };
|
||||
}
|
||||
|
|
|
@ -328,6 +328,15 @@ Init accumulate(Range&& c, Init&& init, BinOp&& op)
|
|||
return std::accumulate(begin(c), end(c), init, op);
|
||||
}
|
||||
|
||||
template<typename Container>
|
||||
auto gather()
|
||||
{
|
||||
return make_view_factory([](auto&& range) {
|
||||
using std::begin; using std::end;
|
||||
return Container(begin(range), end(range));
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif // ranges_hh_INCLUDED
|
||||
|
|
Loading…
Reference in New Issue
Block a user