config BASIC bool if !BASIC && !BASIC config ADVANCED tristate "advanced prompt 1" if y || (BASIC && BASIC) select SELECTED_1 if BASIC && DUMMY select SELECTED_2 if !(DUMMY || BASIC) imply IMPLIED_1 if BASIC || DUMMY imply IMPLIED_2 if !(DUMMY && BASIC) default y if BASIC && !BASIC default n if BASIC = DUMMY && X < Y && X <= Y && X > Y && X >= Y config ADVANCED tristate "advanced prompt 2" config STRING string default "foo" default "bar" if BAR default STRING2 if BAZ config STRING2 string default "baz" endif config SELECTED_1 config SELECTED_2 config SELECTING_1 select ADVANCED if BASIC config SELECTING_2 select ADVANCED if !BASIC config IMPLYING_1 imply ADVANCED if DUMMY config IMPLYING_2 imply ADVANCED if !DUMMY config INT int default 7 config HAS_RANGES int "ranged" range 1 2 if !DUMMY range INT INT if DUMMY range 123 456 choice bool "choice" config CHOICE_ITEM_1 bool "A" config CHOICE_ITEM_2 bool "B" config CHOICE_ITEM_3 bool "C" endchoice menu "simple menu" endmenu if !DUMMY menu "advanced menu" depends on !BASIC visible if !DUMMY endmenu endif comment "simple comment" if !DUMMY comment "advanced comment" depends on !BASIC endif config NO_HELP bool config EMPTY_HELP bool help config DUMMY config S bool help help for S choice C bool help help for C config A bool "A" config B bool "B" endchoice comment "a comment" menu "a menu" endmenu config HELP_TERMINATED_BY_COMMENT bool help a b c # config TRICKY_HELP bool help a b c d e f g h i