better directory vs file completion

This commit is contained in:
sawka 2022-08-11 10:21:45 -07:00
parent 81c564aca9
commit adca87e9db
2 changed files with 12 additions and 9 deletions

View File

@ -480,9 +480,9 @@ func makeInfoFromComps(compType string, comps []string, hasMore bool) sstore.Upd
sort.Strings(comps)
update := sstore.InfoUpdate{
Info: &sstore.InfoMsgType{
InfoTitle: fmt.Sprintf("%s completions", compType),
InfoStrings: comps,
InfoStringsMore: hasMore,
InfoTitle: fmt.Sprintf("%s completions", compType),
InfoComps: comps,
InfoCompsMore: hasMore,
},
}
return update
@ -508,6 +508,9 @@ func longestPrefix(root string, comps []string) string {
if len(comps) == 1 {
comp := comps[0]
if len(comp) >= len(root) && strings.HasPrefix(comp, root) {
if strings.HasSuffix(comp, "/") {
return comps[0]
}
return comps[0] + " "
}
}

View File

@ -75,12 +75,12 @@ func (LineUpdate) UpdateType() string {
}
type InfoMsgType struct {
InfoTitle string `json:"infotitle"`
InfoError string `json:"infoerror,omitempty"`
InfoMsg string `json:"infomsg,omitempty"`
InfoStrings []string `json:"infostrings"`
InfoStringsMore bool `json:"infostringsmore"`
TimeoutMs int64 `json:"timeoutms,omitempty"`
InfoTitle string `json:"infotitle"`
InfoError string `json:"infoerror,omitempty"`
InfoMsg string `json:"infomsg,omitempty"`
InfoComps []string `json:"infocomps"`
InfoCompsMore bool `json:"infocompssmore"`
TimeoutMs int64 `json:"timeoutms,omitempty"`
}
type CmdLineType struct {