Skip to content
Snippets Groups Projects
Commit f1aad4c0 authored by Malte Bauch's avatar Malte Bauch
Browse files

WIP

parent 142bc63f
No related branches found
No related tags found
1 merge request!284Improve usability and better output formatting for gosndc
...@@ -198,15 +198,36 @@ func cobraCommandCompletion(currCmd *cobra.Command, d prompt.Document, inputFlag ...@@ -198,15 +198,36 @@ func cobraCommandCompletion(currCmd *cobra.Command, d prompt.Document, inputFlag
func completionBasedOnCmd(c *PromptCompleter, cmd *cobra.Command, inputSplit []string, inputFlags []string, d prompt.Document) []prompt.Suggest { func completionBasedOnCmd(c *PromptCompleter, cmd *cobra.Command, inputSplit []string, inputFlags []string, d prompt.Document) []prompt.Suggest {
switch cmd { switch cmd {
case pndUseCmd, pndGetCmd: case pndUseCmd, pndGetCmd:
return cobraCommandCompletion(cmd, d, inputFlags, getPnds()) if len(inputSplit) < 3 || (len(inputSplit) == 3 && d.GetWordBeforeCursor() != "") {
pnds, err := getPnds()
if err != nil {
return []prompt.Suggest{}
}
return cobraCommandCompletion(cmd, d, inputFlags, pnds)
}
case commitCmd: case commitCmd:
return getChangesByType(pnd.ChangeState_CHANGE_STATE_PENDING) if len(inputSplit) < 3 || (len(inputSplit) == 3 && d.GetWordBeforeCursor() != "") {
ch, err := getChangesByType(pnd.ChangeState_CHANGE_STATE_PENDING)
if err != nil {
return []prompt.Suggest{}
}
return ch
}
case confirmCmd: case confirmCmd:
return getChangesByType(pnd.ChangeState_CHANGE_STATE_COMMITTED) if len(inputSplit) < 3 || (len(inputSplit) == 3 && d.GetWordBeforeCursor() != "") {
ch, err := getChangesByType(pnd.ChangeState_CHANGE_STATE_COMMITTED)
if err != nil {
return []prompt.Suggest{}
}
return ch
}
case deviceGetCmd, deviceSetCmd: case deviceGetCmd, deviceSetCmd:
return deviceGetCompletion(c, d, inputSplit) return deviceGetCompletion(c, d, inputSplit)
case deviceShowCmd: case deviceShowCmd:
devices, _ := getDevices() devices, err := getDevices()
if err != nil {
return []prompt.Suggest{}
}
return devices return devices
case deviceCmd: case deviceCmd:
c.currentDeviceSuggestions = nil c.currentDeviceSuggestions = nil
...@@ -214,6 +235,8 @@ func completionBasedOnCmd(c *PromptCompleter, cmd *cobra.Command, inputSplit []s ...@@ -214,6 +235,8 @@ func completionBasedOnCmd(c *PromptCompleter, cmd *cobra.Command, inputSplit []s
default: default:
return cobraCommandCompletion(cmd, d, inputFlags, []prompt.Suggest{}) return cobraCommandCompletion(cmd, d, inputFlags, []prompt.Suggest{})
} }
return []prompt.Suggest{}
} }
var exitCmd = &cobra.Command{ var exitCmd = &cobra.Command{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment