Hi Xiangping,
Take this YANG model from the ConfD example examples.confd/cli/climods
container arp3 {
config false;
tailf:callpoint jarp_data;
list arpe {
key "ip ifname";
max-elements 1024;
leaf ip {
type inet:ip-address;
}
leaf ifname {
type string;
}
leaf hwaddr {
tailf:cli-suppress-show-path;
type string;
mandatory true;
}
leaf permanent {
tailf:cli-suppress-show-match;
type boolean;
mandatory true;
}
leaf published {
type boolean;
mandatory true;
}
}
}
CLI:
# show arp3 arpe <TAB PRESSED>
Possible completions:
10.0.0.1 10.0.0.2 192.168.0.2 | <cr>
Possible match completions:
published
Only the “published” leaf is shown as “Possible match completions” since the “tailf:cli-suppress-show-match” and “tailf:cli-suppress-show-path” extensions are used with the “hwaddr” and “permanent” leafs.
You describe your use case as being more advanced, and so I believe you need to use for example the clispec completionpoint. See ConfD UG 16.13.1. Customizing CLI completion and examples.confd/cli/completions for more details.
Regards