#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#

menu "Editors"

config BUSYBOX_AWK
	bool "awk"
	default y
	help
	  Awk is used as a pattern scanning and processing language. This is
	  the BusyBox implementation of that programming language.

config BUSYBOX_FEATURE_AWK_LIBM
	bool "Enable math functions (requires libm)"
	default y
	depends on BUSYBOX_AWK
	help
	  Enable math functions of the Awk programming language.
	  NOTE: This will require libm to be present for linking.

config BUSYBOX_CMP
	bool "cmp"
	default n
	help
	  cmp is used to compare two files and returns the result
	  to standard output.

config BUSYBOX_DIFF
	bool "diff"
	default y
	help
	  diff compares two files or directories and outputs the
	  differences between them in a form that can be given to
	  the patch command.

config BUSYBOX_FEATURE_DIFF_BINARY
	bool "Enable checks for binary files"
	default y
	depends on BUSYBOX_DIFF
	help
	  This option enables support for checking for binary files
	  before a comparison is carried out.

config BUSYBOX_FEATURE_DIFF_DIR
	bool "Enable directory support"
	default y
	depends on BUSYBOX_DIFF
	help
	  This option enables support for directory and subdirectory
	  comparison.

config BUSYBOX_FEATURE_DIFF_MINIMAL
	bool "Enable -d option to find smaller sets of changes"
	default n
	depends on BUSYBOX_DIFF
	help
	  Enabling this option allows the use of -d to make diff
	  try hard to find the smallest possible set of changes.

config BUSYBOX_ED
	bool "ed"
	default n
	help
	  The original 1970's Unix text editor, from the days of teletypes.
	  Small, simple, evil. Part of SUSv3. If you're not already using
	  this, you don't need it.

config BUSYBOX_PATCH
	bool "patch"
	default n
	help
	  Apply a unified diff formatted patch.

config BUSYBOX_SED
	bool "sed"
	default y
	help
	  sed is used to perform text transformations on a file
	  or input from a pipeline.

config BUSYBOX_VI
	bool "vi"
	default y
	help
	  'vi' is a text editor. More specifically, it is the One True
	  text editor <grin>. It does, however, have a rather steep
	  learning curve. If you are not already comfortable with 'vi'
	  you may wish to use something else.

config BUSYBOX_FEATURE_VI_MAX_LEN
	int "Maximum screen width in vi"
	range 256 16384
	default 4096
	depends on BUSYBOX_VI
	help
	  Contrary to what you may think, this is not eating much.
	  Make it smaller than 4k only if you are very limited on memory.

config BUSYBOX_FEATURE_VI_8BIT
	bool "Allow vi to display 8-bit chars (otherwise shows dots)"
	default y
	depends on BUSYBOX_VI
	help
	  If your terminal can display characters with high bit set,
	  you may want to enable this. Note: vi is not Unicode-capable.
	  If your terminal combines several 8-bit bytes into one character
	  (as in Unicode mode), this will not work properly.

config BUSYBOX_FEATURE_VI_COLON
	bool "Enable \":\" colon commands (no \"ex\" mode)"
	default y
	depends on BUSYBOX_VI
	help
	  Enable a limited set of colon commands for vi. This does not
	  provide an "ex" mode.

config BUSYBOX_FEATURE_VI_YANKMARK
	bool "Enable yank/put commands and mark cmds"
	default y
	depends on BUSYBOX_VI
	help
	  This will enable you to use yank and put, as well as mark in
	  busybox vi.

config BUSYBOX_FEATURE_VI_SEARCH
	bool "Enable search and replace cmds"
	default y
	depends on BUSYBOX_VI
	help
	  Select this if you wish to be able to do search and replace in
	  busybox vi.

config BUSYBOX_FEATURE_VI_USE_SIGNALS
	bool "Catch signals"
	default y
	depends on BUSYBOX_VI
	help
	  Selecting this option will make busybox vi signal aware. This will
	  make busybox vi support SIGWINCH to deal with Window Changes, catch
	  Ctrl-Z and Ctrl-C and alarms.

config BUSYBOX_FEATURE_VI_DOT_CMD
	bool "Remember previous cmd and \".\" cmd"
	default y
	depends on BUSYBOX_VI
	help
	  Make busybox vi remember the last command and be able to repeat it.

config BUSYBOX_FEATURE_VI_READONLY
	bool "Enable -R option and \"view\" mode"
	default y
	depends on BUSYBOX_VI
	help
	  Enable the read-only command line option, which allows the user to
	  open a file in read-only mode.

config BUSYBOX_FEATURE_VI_SETOPTS
	bool "Enable set-able options, ai ic showmatch"
	default y
	depends on BUSYBOX_VI
	help
	  Enable the editor to set some (ai, ic, showmatch) options.

config BUSYBOX_FEATURE_VI_SET
	bool "Support for :set"
	default y
	depends on BUSYBOX_VI
	help
	  Support for ":set".

config BUSYBOX_FEATURE_VI_WIN_RESIZE
	bool "Handle window resize"
	default y
	depends on BUSYBOX_VI
	help
	  Make busybox vi behave nicely with terminals that get resized.

config BUSYBOX_FEATURE_VI_OPTIMIZE_CURSOR
	bool "Optimize cursor movement"
	default y
	depends on BUSYBOX_VI
	help
	  This will make the cursor movement faster, but requires more memory
	  and it makes the applet a tiny bit larger.

config BUSYBOX_FEATURE_ALLOW_EXEC
	bool "Allow vi and awk to execute shell commands"
	default y
	depends on BUSYBOX_VI || BUSYBOX_AWK
	help
	  Enables vi and awk features which allows user to execute
	  shell commands (using system() C call).

endmenu
