1 ;;; Copyright (c) 2016 Cisco and/or its affiliates.
2 ;;; Licensed under the Apache License, Version 2.0 (the "License");
3 ;;; you may not use this file except in compliance with the License.
4 ;;; You may obtain a copy of the License at:
6 ;;; http://www.apache.org/licenses/LICENSE-2.0
8 ;;; Unless required by applicable law or agreed to in writing, software
9 ;;; distributed under the License is distributed on an "AS IS" BASIS,
10 ;;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 ;;; See the License for the specific language governing permissions and
12 ;;; limitations under the License.
14 ;;; cli-cmd-skel.el - cli command skeleton
18 (define-skeleton skel-cli-cmd
19 "Insert a CLI command "
21 '(setq cmd-name (skeleton-read "Command Name: "))
22 '(setq path (skeleton-read "Path: "))
26 " cmd-name "_command_fn (vlib_main_t * vm,
27 unformat_input_t * input,
28 vlib_cli_command_t * cmd)
30 while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) {
31 if (unformat (input, \"whatever %d\", &whatever))
34 return clib_error_return (0, \"unknown input `%U'\",
35 format_unformat_error, input);
40 VLIB_CLI_COMMAND (" cmd-name "_command, static) = {
42 .short_help = \"" path "\",
43 .function = " cmd-name "_command_fn,