| # Shell configuration options |
| |
| # Copyright (c) 2014-2015 Wind River Systems, Inc. |
| # Copyright (c) 2016 Intel Corporation |
| # Copyright (c) 2018 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menuconfig SHELL |
| bool "Shell" |
| imply LOG_RUNTIME_FILTERING |
| select POLL |
| |
| if SHELL |
| |
| module = SHELL |
| module-str = Shell |
| source "subsys/logging/Kconfig.template.log_config" |
| source "subsys/shell/backends/Kconfig.backends" |
| |
| config SHELL_MINIMAL |
| bool "Default config to reduce flash and memory requirements" |
| help |
| This is a meta-configuration option to significantly reduce the flash |
| and memory requirements of the shell. Enabling it will choose Kconfig |
| defaults which favor reduced flash or memory requirements over extra |
| features. |
| |
| config SHELL_THREAD_PRIORITY_OVERRIDE |
| bool "Override default shell thread priority" |
| help |
| Option to change the default value of shell thread priority. |
| |
| if SHELL_THREAD_PRIORITY_OVERRIDE |
| config SHELL_THREAD_PRIORITY |
| int "Shell thread priority" |
| default 0 |
| help |
| Set thread priority of the shell |
| endif |
| |
| config SHELL_STACK_SIZE |
| int "Shell thread stack size" |
| default 3168 if OPENTHREAD_SHELL |
| default 3072 if 64BIT |
| default 2048 if MULTITHREADING |
| default 0 if !MULTITHREADING |
| help |
| Stack size for thread created for each instance. |
| |
| config SHELL_BACKSPACE_MODE_DELETE |
| bool "Default escape code for backspace is DELETE (0x7F)" |
| default y |
| help |
| Terminals have different escape code settings for backspace button. |
| Some terminals send code: 0x08 (backspace) other 0x7F (delete). When |
| this option is set shell will expect 0x7F for backspace key. |
| |
| config SHELL_PROMPT_CHANGE |
| bool "Allow prompt change in runtime" |
| default y if !SHELL_MINIMAL |
| help |
| Allow for the modification of the shell prompt at runtime. |
| Enabling this will allocate additional RAM memory where |
| the string of the prompt will be stored. |
| |
| config SHELL_PROMPT_BUFF_SIZE |
| int "Shell prompt buffer size" |
| depends on SHELL_PROMPT_CHANGE |
| range 2 40 |
| default 10 if SHELL_MINIMAL |
| default 20 |
| help |
| Maximum prompt size in bytes. One byte is reserved for the string |
| terminator character. |
| |
| config SHELL_CMD_BUFF_SIZE |
| int "Shell command buffer size" |
| default 128 if SHELL_MINIMAL |
| default 256 |
| help |
| Maximum command size in bytes. One byte is reserved for the string |
| terminator character. |
| |
| config SHELL_PRINTF_BUFF_SIZE |
| int "Shell print buffer size" |
| default 30 |
| help |
| Maximum text buffer size for fprintf function. |
| It is working like stdio buffering in Linux systems |
| to limit number of peripheral access calls. |
| |
| config SHELL_DEFAULT_TERMINAL_WIDTH |
| int "Default terminal width" |
| range 1 $(UINT16_MAX) |
| default 80 |
| help |
| Default terminal width is used to break lines. |
| |
| config SHELL_DEFAULT_TERMINAL_HEIGHT |
| int "Default terminal height" |
| default 24 |
| |
| config SHELL_ARGC_MAX |
| int "Maximum arguments in shell command" |
| range 3 $(UINT8_MAX) |
| default 20 |
| help |
| Maximum number of arguments that can build a command. |
| |
| config SHELL_TAB |
| bool "The Tab button support in shell" |
| default y if !SHELL_MINIMAL && !SHELL_BACKEND_RTT |
| help |
| Enable using the Tab button in the shell. The button |
| can be used for prompting commands, or for autocompletion. |
| This feature has high impact on flash usage. |
| |
| config SHELL_TAB_AUTOCOMPLETION |
| bool "Commands autocompletion with the Tab button" |
| depends on SHELL_TAB |
| default y if !SHELL_MINIMAL |
| help |
| Enable commands and subcommands autocompletion with the Tab |
| key. This function can be deactivated to save some flash. |
| |
| config SHELL_ASCII_FILTER |
| bool "Filter incoming ASCII characters" |
| default y |
| help |
| Shell will not collect characters that are not in |
| ASCII range: <0, 127>. As a result filtered characters will not be |
| printed on the terminal and passed to the command handler. |
| |
| config SHELL_WILDCARD |
| bool "Wildcard support in shell" |
| select POSIX_C_LIB_EXT |
| default y if !SHELL_MINIMAL |
| help |
| Enables using wildcards: * and ? in the shell. |
| |
| config SHELL_MSG_CMD_NOT_FOUND |
| bool "': command not found' message in the shell" |
| default y |
| help |
| If enabled, the shell prints out this message. |
| |
| config SHELL_MSG_SPECIFY_SUBCOMMAND |
| bool "'Please specify a subcommand.' message in the shell" |
| default y |
| help |
| If enabled, the shell prints out this message. |
| |
| config SHELL_ECHO_STATUS |
| bool "Echo on shell" |
| default y |
| help |
| If enabled shell prints back every input byte. |
| |
| config SHELL_START_OBSCURED |
| bool "Display asterisk when echoing" |
| help |
| If enabled, don't echo actual character, but echo * instead. |
| This is used for login prompts. |
| |
| config SHELL_VT100_COMMANDS |
| bool "VT100 commands in shell" |
| default y if !SHELL_BACKEND_RTT |
| help |
| Enables VT100 commands in shell (e.g. cursor position, clear screen etc.). |
| |
| config SHELL_VT100_COLORS |
| bool "Colors in shell" |
| depends on SHELL_VT100_COMMANDS |
| default y if !SHELL_MINIMAL |
| help |
| If enabled VT100 colors are used in shell (e.g. print errors in red). |
| |
| config SHELL_GETOPT |
| bool "Threadsafe getopt support in shell" |
| select POSIX_C_LIB_EXT |
| help |
| This config creates a separate getopt_state for the shell instance. |
| It ensures that using getopt with shell is thread safe. |
| When more threads are using getopt please call getopt_state_get to |
| get getopt state of the shell thread. |
| |
| config SHELL_METAKEYS |
| bool "Metakeys" |
| default y if !SHELL_MINIMAL |
| help |
| Enables shell meta keys: Ctrl+a, Ctrl+b, Ctrl+c, Ctrl+d, Ctrl+e, |
| Ctrl+f, Ctrl+k, Ctrl+l, Ctrl+u, Ctrl+w, Alt+b, Alt+f |
| Meta keys will not be active when shell echo is set to off. |
| |
| config SHELL_HELP |
| bool "Help message" |
| default y if !SHELL_MINIMAL |
| help |
| Enables shell functions for printing formatted help message. |
| |
| config SHELL_HELP_OPT_PARSE |
| bool "Parse -h and --help options" |
| depends on SHELL_HELP |
| depends on !SHELL_GETOPT |
| default y |
| help |
| Shell parses command to find '-h' or '--help' string. If the shell |
| finds the string, it will automatically print a help message |
| for a command. |
| |
| config SHELL_HELP_ON_WRONG_ARGUMENT_COUNT |
| bool "Printing help on wrong argument count" |
| depends on SHELL_HELP |
| default y if !SHELL_MINIMAL |
| |
| config SHELL_HISTORY |
| bool "History in shell" |
| default y if !SHELL_MINIMAL |
| select RING_BUFFER |
| help |
| Enable commands history. History can be accessed using up and down |
| arrows or Ctrl+n and Ctrl+p meta keys. |
| |
| config SHELL_HISTORY_BUFFER |
| int "History buffer in bytes" |
| default 128 if SHELL_MINIMAL |
| default 512 |
| depends on SHELL_HISTORY |
| help |
| Number of bytes dedicated for storing executed commands. |
| |
| config SHELL_STATS |
| bool "Shell statistics" |
| default y if !SHELL_MINIMAL |
| |
| config SHELL_CMDS |
| bool "Built-in commands" |
| default y if !SHELL_MINIMAL |
| help |
| Enable built-in commands like 'clear', 'history', etc. |
| |
| config SHELL_CMDS_RESIZE |
| bool "Resize command" |
| depends on SHELL_CMDS |
| depends on SHELL_VT100_COMMANDS |
| default y if !SHELL_MINIMAL |
| help |
| By default shell assumes width of a terminal screen set to 80 |
| characters. Each time terminal screen width is changed resize command |
| must be called to ensure correct text display on the terminal screen. |
| The resize command can be turned off to save code memory (~0,5k). |
| |
| config SHELL_CMDS_SELECT |
| bool "Select command" |
| depends on SHELL_CMDS |
| help |
| This option enables select command. It can be used to set new root |
| command. Exit to main command tree is with alt+r. |
| |
| config SHELL_CMD_ROOT |
| string "Set a root command at init" |
| help |
| This option sets a root command at shell init, |
| and when exiting to main command tree with alt+r. |
| |
| config SHELL_LOG_BACKEND |
| bool "Shell log backend" |
| depends on LOG && !LOG_MODE_MINIMAL |
| select MPSC_PBUF |
| select LOG_OUTPUT |
| default y if LOG |
| help |
| When enabled, backend will use the shell for logging. |
| This option is enabled by default. |
| Disabling this option disables log output to all shell backends. |
| Disabling log output to a specific shell backend can be achieved |
| using the shell backend's LOG_LEVEL option |
| (e.g. CONFIG_SHELL_TELNET_INIT_LOG_LEVEL_NONE=y). |
| |
| config SHELL_LOG_BACKEND_CUSTOM |
| bool "Use custom backend implementation" |
| help |
| When enabled, standard implementation of shell log backend is not included. |
| It allows to provide custom implementation of multiplexing logging messages |
| with shell data. |
| |
| config SHELL_LOG_FORMAT_TIMESTAMP |
| bool "Format timestamp" |
| default y |
| depends on SHELL_LOG_BACKEND |
| help |
| Enable timestamp formatting. |
| |
| config SHELL_AUTOSTART |
| bool "Auto-start shell at boot" |
| default y |
| help |
| If enabled, shell will be automatically started. |
| |
| config SHELL_CMDS_RETURN_VALUE |
| bool "Retval command" |
| depends on SHELL_CMDS |
| default y |
| help |
| This option enables the retval command. It is used to retrieve |
| the return value from the most recently executed command. |
| |
| config SHELL_CUSTOM_HEADER |
| bool "Include Custom Shell Header" |
| help |
| When enabled, a custom application provided header, named |
| "zephyr_custom_shell.h", is included at the end of shell.h. This enables |
| extension of the shell APIs at the macro level. Please use cautiously! |
| The internal shell API may change in future releases. |
| |
| source "subsys/shell/modules/Kconfig" |
| |
| endif # SHELL |