summaryrefslogtreecommitdiffstats
path: root/extras/emacs/cli-cmd-skel.el
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2017-04-20 11:42:28 +0200
committerDamjan Marion <dmarion.lists@gmail.com>2017-04-24 14:49:00 +0000
commit757585db71b78c4edf91ba011be419264de43d1a (patch)
treed12a78253ba81a0feab0c40dcae2aefc13438873 /extras/emacs/cli-cmd-skel.el
parent53129423a6f4e43b39f7547424fbaea99e56f7e2 (diff)
Move emacs stuff to extras/
Change-Id: Ibbb7d8500e9064215cf912bd00bdf72a748f8a27 Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'extras/emacs/cli-cmd-skel.el')
-rw-r--r--extras/emacs/cli-cmd-skel.el32
1 files changed, 32 insertions, 0 deletions
diff --git a/extras/emacs/cli-cmd-skel.el b/extras/emacs/cli-cmd-skel.el
new file mode 100644
index 00000000000..cf8658c4233
--- /dev/null
+++ b/extras/emacs/cli-cmd-skel.el
@@ -0,0 +1,32 @@
+;;; cli-cmd-skel.el - cli command skeleton
+
+(require 'skeleton)
+
+(define-skeleton skel-cli-cmd
+"Insert a CLI command "
+nil
+'(setq cmd-name (skeleton-read "Command Name: "))
+'(setq path (skeleton-read "Path: "))
+
+"
+static clib_error_t *
+" cmd-name "_command_fn (vlib_main_t * vm,
+ unformat_input_t * input,
+ vlib_cli_command_t * cmd)
+{
+ while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT) {
+ if (unformat (input, \"whatever %d\", &whatever))
+ ;
+ else
+ return clib_error_return (0, \"unknown input `%U'\",
+ format_unformat_error, input);
+ }
+ return 0;
+}
+
+VLIB_CLI_COMMAND (" cmd-name "_command, static) = {
+ .path = \"" path "\",
+ .short_help = \"" path "\",
+ .function = " cmd-name "_command_fn,
+};
+")