as working (thanks Vladimir!) and taking 4k.
-Erik
// Only relevant if BB_SH is enabled.
#define BB_FEATURE_SH_APPLETS_ALWAYS_WIN
//
-// Enable tab completion in the shell (not yet
-// working very well -- so don't turn this on)
-// Only relevant if BB_SH is enabled.
-#define BB_FEATURE_SH_TAB_COMPLETION
+// Enable tab completion in the shell. This is now working quite nicely.
+// This feature adds a bit over 4k. Only relevant if BB_SH is enabled.
+//#define BB_FEATURE_SH_TAB_COMPLETION
//
// Enable a simpler shell prompt of the form "path #"
// instead of the default "[username@hostname path]#"
#define BB_FEATURE_SH_SIMPLE_PROMPT
//
// Attempts to match usernames in a ~-prefixed path
-//#define BB_FEATURE_USERNAME_COMPLETION
+//#define BB_FEATURE_SH_USERNAME_COMPLETION
//
//Turn on extra fbset options
//#define BB_FEATURE_FBSET_FANCY
#else
-#define BB_FEATURE_SH_COMMAND_EDITING
-#define BB_FEATURE_SH_TAB_COMPLETION
-#define BB_FEATURE_USERNAME_COMPLETION
-#define BB_FEATURE_NONPRINTABLE_INVERSE_PUT
-#define BB_FEATURE_BASH_STYLE_PROMT
-#define BB_FEATURE_CLEAN_UP
+//#define BB_FEATURE_NONPRINTABLE_INVERSE_PUT
+//#define BB_FEATURE_BASH_STYLE_PROMT
#define TRUE 1
#define FALSE 0
#ifdef BB_FEATURE_SH_COMMAND_EDITING
#ifndef BB_FEATURE_SH_TAB_COMPLETION
-#undef BB_FEATURE_USERNAME_COMPLETION
+#undef BB_FEATURE_SH_USERNAME_COMPLETION
#endif
-#if defined(BB_FEATURE_USERNAME_COMPLETION) || defined(BB_FEATURE_BASH_STYLE_PROMT)
+#if defined(BB_FEATURE_SH_USERNAME_COMPLETION) || defined(BB_FEATURE_BASH_STYLE_PROMT)
#define BB_FEATURE_GETUSERNAME_AND_HOMEDIR
#endif
return FALSE;
}
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
static char **username_tab_completion(char *ud, int *num_matches)
{
return (matches);
}
}
-#endif /* BB_FEATURE_USERNAME_COMPLETION */
+#endif /* BB_FEATURE_SH_USERNAME_COMPLETION */
enum {
FIND_EXE_ONLY = 0,
strcpy(dirbuf, command);
/* set dir only */
dirbuf[(pfind - command) + 1] = 0;
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
if (dirbuf[0] == '~') /* ~/... or ~user/... */
username_tab_completion(dirbuf, 0);
#endif
/* Free up any memory already allocated */
input_tab(0);
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
/* If the word starts with `~' and there is no slash in the word,
* then try completing this word as a username. */
#else
-#define BB_FEATURE_SH_COMMAND_EDITING
-#define BB_FEATURE_SH_TAB_COMPLETION
-#define BB_FEATURE_USERNAME_COMPLETION
-#define BB_FEATURE_NONPRINTABLE_INVERSE_PUT
-#define BB_FEATURE_BASH_STYLE_PROMT
-#define BB_FEATURE_CLEAN_UP
+//#define BB_FEATURE_NONPRINTABLE_INVERSE_PUT
+//#define BB_FEATURE_BASH_STYLE_PROMT
#define TRUE 1
#define FALSE 0
#ifdef BB_FEATURE_SH_COMMAND_EDITING
#ifndef BB_FEATURE_SH_TAB_COMPLETION
-#undef BB_FEATURE_USERNAME_COMPLETION
+#undef BB_FEATURE_SH_USERNAME_COMPLETION
#endif
-#if defined(BB_FEATURE_USERNAME_COMPLETION) || defined(BB_FEATURE_BASH_STYLE_PROMT)
+#if defined(BB_FEATURE_SH_USERNAME_COMPLETION) || defined(BB_FEATURE_BASH_STYLE_PROMT)
#define BB_FEATURE_GETUSERNAME_AND_HOMEDIR
#endif
return FALSE;
}
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
static char **username_tab_completion(char *ud, int *num_matches)
{
return (matches);
}
}
-#endif /* BB_FEATURE_USERNAME_COMPLETION */
+#endif /* BB_FEATURE_SH_USERNAME_COMPLETION */
enum {
FIND_EXE_ONLY = 0,
strcpy(dirbuf, command);
/* set dir only */
dirbuf[(pfind - command) + 1] = 0;
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
if (dirbuf[0] == '~') /* ~/... or ~user/... */
username_tab_completion(dirbuf, 0);
#endif
/* Free up any memory already allocated */
input_tab(0);
-#ifdef BB_FEATURE_USERNAME_COMPLETION
+#ifdef BB_FEATURE_SH_USERNAME_COMPLETION
/* If the word starts with `~' and there is no slash in the word,
* then try completing this word as a username. */