From ff9dd0fce42e1e7dfc8d23123a0ea593aa1bc7ac Mon Sep 17 00:00:00 2001 From: Oliver Schmidt Date: Sat, 21 May 2011 11:48:50 +0200 Subject: [PATCH] Improved shell banner / prompt customization. Working with string-type macros on cmdlines is a pain in the nack so rather go for global string constants activated by simple flag-type macros. --- apps/shell/shell.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/apps/shell/shell.c b/apps/shell/shell.c index 423bc240c..a55624d3e 100644 --- a/apps/shell/shell.c +++ b/apps/shell/shell.c @@ -54,12 +54,18 @@ #include #include -#ifndef SHELL_CONF_PROMPT -#define SHELL_CONF_PROMPT "Contiki> " +#ifdef SHELL_CONF_PROMPT +extern char *shell_prompt_text; +#define SHELL_PROMPT shell_prompt_text +#else +#define SHELL_PROMPT "Contiki> " #endif -#ifndef SHELL_CONF_BANNER -#define SHELL_CONF_BANNER "Contiki command shell" +#ifdef SHELL_CONF_BANNER +extern char *shell_banner_text; +#define SHELL_BANNER shell_banner_text +#else +#define SHELL_BANNER "Contiki command shell" #endif LIST(commands); @@ -438,7 +444,7 @@ PROCESS_THREAD(shell_process, ev, data) PROCESS_PAUSE(); while(1) { - shell_prompt(SHELL_CONF_PROMPT); + shell_prompt(SHELL_PROMPT); PROCESS_WAIT_EVENT_UNTIL(ev == shell_event_input); { @@ -558,9 +564,9 @@ shell_set_time(unsigned long seconds) void shell_start(void) { - shell_output_str(NULL, SHELL_CONF_BANNER, ""); + shell_output_str(NULL, SHELL_BANNER, ""); shell_output_str(NULL, "Type '?' and return for help", ""); - shell_prompt(SHELL_CONF_PROMPT); + shell_prompt(SHELL_PROMPT); } /*---------------------------------------------------------------------------*/ void