/* Bitwise flags so that we can save space (or, more correctly, not
* waste it). */
-#define CASE_SENSITIVE (1<<0)
-#define CONST_UPDATE (1<<1)
-#define NO_HELP (1<<2)
-#define NOFOLLOW_SYMLINKS (1<<3)
-#define SUSPEND (1<<4)
-#define NO_WRAP (1<<5)
-#define AUTOINDENT (1<<6)
-#define VIEW_MODE (1<<7)
-#define USE_MOUSE (1<<8)
-#define USE_REGEXP (1<<9)
-#define TEMP_FILE (1<<10)
-#define CUT_TO_END (1<<11)
-#define BACKWARDS_SEARCH (1<<12)
-#define MULTIBUFFER (1<<13)
-#define SMOOTH_SCROLL (1<<14)
-#define REBIND_DELETE (1<<15)
-#define REBIND_KEYPAD (1<<16)
-#define NO_CONVERT (1<<17)
-#define BACKUP_FILE (1<<18)
-#define NO_COLOR_SYNTAX (1<<19)
-#define PRESERVE (1<<20)
-#define HISTORYLOG (1<<21)
-#define RESTRICTED (1<<22)
-#define SMART_HOME (1<<23)
-#define WHITESPACE_DISPLAY (1<<24)
-#define MORE_SPACE (1<<25)
-#define TABS_TO_SPACES (1<<26)
-#define QUICK_BLANK (1<<27)
-#define WORD_BOUNDS (1<<28)
-#define NO_NEWLINES (1<<29)
-#define BOLD_TEXT (1<<30)
+#define CASE_SENSITIVE (1<<0)
+#define CONST_UPDATE (1<<1)
+#define NO_HELP (1<<2)
+#define NOFOLLOW_SYMLINKS (1<<3)
+#define SUSPEND (1<<4)
+#define NO_WRAP (1<<5)
+#define AUTOINDENT (1<<6)
+#define VIEW_MODE (1<<7)
+#define USE_MOUSE (1<<8)
+#define USE_REGEXP (1<<9)
+#define TEMP_FILE (1<<10)
+#define CUT_TO_END (1<<11)
+#define BACKWARDS_SEARCH (1<<12)
+#define MULTIBUFFER (1<<13)
+#define SMOOTH_SCROLL (1<<14)
+#define REBIND_DELETE (1<<15)
+#define REBIND_KEYPAD (1<<16)
+#define NO_CONVERT (1<<17)
+#define BACKUP_FILE (1<<18)
+#define NO_COLOR_SYNTAX (1<<19)
+#define PRESERVE (1<<20)
+#define HISTORYLOG (1<<21)
+#define RESTRICTED (1<<22)
+#define SMART_HOME (1<<23)
+#define WHITESPACE_DISPLAY (1<<24)
+#define MORE_SPACE (1<<25)
+#define TABS_TO_SPACES (1<<26)
+#define QUICK_BLANK (1<<27)
+#define WORD_BOUNDS (1<<28)
+#define NO_NEWLINES (1<<29)
+#define BOLD_TEXT (1<<30)
/* Control key sequences. Changing these would be very, very bad. */
#define NANO_CONTROL_SPACE 0
* sure you know what you're doing. Assume ERR is defined as -1. */
/* No key at all. */
-#define NANO_NO_KEY -2
+#define NANO_NO_KEY -2
/* Normal keys. */
-#define NANO_XON_KEY NANO_CONTROL_Q
-#define NANO_XOFF_KEY NANO_CONTROL_S
-#define NANO_CANCEL_KEY NANO_CONTROL_C
-#define NANO_EXIT_KEY NANO_CONTROL_X
-#define NANO_EXIT_FKEY KEY_F(2)
-#define NANO_INSERTFILE_KEY NANO_CONTROL_R
-#define NANO_INSERTFILE_FKEY KEY_F(5)
-#define NANO_TOOTHERINSERT_KEY NANO_CONTROL_X
-#define NANO_WRITEOUT_KEY NANO_CONTROL_O
-#define NANO_WRITEOUT_FKEY KEY_F(3)
-#define NANO_GOTOLINE_KEY NANO_CONTROL_7
-#define NANO_GOTOLINE_FKEY KEY_F(13)
-#define NANO_GOTOLINE_ALTKEY NANO_ALT_G
-#define NANO_TOGOTOLINE_KEY NANO_CONTROL_T
-#define NANO_HELP_KEY NANO_CONTROL_G
-#define NANO_HELP_FKEY KEY_F(1)
-#define NANO_WHEREIS_KEY NANO_CONTROL_W
-#define NANO_WHEREIS_FKEY KEY_F(6)
-#define NANO_WHEREIS_NEXT_KEY NANO_ALT_W
-#define NANO_WHEREIS_NEXT_FKEY KEY_F(16)
-#define NANO_TOOTHERWHEREIS_KEY NANO_CONTROL_T
-#define NANO_REGEXP_KEY NANO_ALT_R
-#define NANO_REPLACE_KEY NANO_CONTROL_4
-#define NANO_REPLACE_FKEY KEY_F(14)
-#define NANO_ALT_REPLACE_KEY NANO_ALT_R
-#define NANO_TOOTHERSEARCH_KEY NANO_CONTROL_R
-#define NANO_PREVPAGE_KEY NANO_CONTROL_Y
-#define NANO_PREVPAGE_FKEY KEY_F(7)
-#define NANO_NEXTPAGE_KEY NANO_CONTROL_V
-#define NANO_NEXTPAGE_FKEY KEY_F(8)
-#define NANO_CUT_KEY NANO_CONTROL_K
-#define NANO_CUT_FKEY KEY_F(9)
-#define NANO_COPY_KEY NANO_ALT_CARET
-#define NANO_COPY_ALTKEY NANO_ALT_6
-#define NANO_UNCUT_KEY NANO_CONTROL_U
-#define NANO_UNCUT_FKEY KEY_F(10)
-#define NANO_CURSORPOS_KEY NANO_CONTROL_C
-#define NANO_CURSORPOS_FKEY KEY_F(11)
-#define NANO_SPELL_KEY NANO_CONTROL_T
-#define NANO_SPELL_FKEY KEY_F(12)
-#define NANO_FIRSTLINE_KEY NANO_PREVPAGE_KEY
-#define NANO_FIRSTLINE_FKEY NANO_PREVPAGE_FKEY
-#define NANO_FIRSTLINE_ALTKEY NANO_ALT_BACKSLASH
-#define NANO_FIRSTLINE_ALTKEY2 NANO_ALT_PIPE
-#define NANO_FIRSTFILE_KEY NANO_FIRSTLINE_KEY
-#define NANO_FIRSTFILE_FKEY NANO_FIRSTLINE_FKEY
-#define NANO_FIRSTFILE_ALTKEY NANO_FIRSTLINE_ALTKEY
-#define NANO_FIRSTFILE_ALTKEY2 NANO_FIRSTLINE_ALTKEY2
-#define NANO_LASTLINE_KEY NANO_NEXTPAGE_KEY
-#define NANO_LASTLINE_FKEY NANO_NEXTPAGE_FKEY
-#define NANO_LASTLINE_ALTKEY NANO_ALT_SLASH
-#define NANO_LASTLINE_ALTKEY2 NANO_ALT_QUESTION
-#define NANO_LASTFILE_KEY NANO_LASTLINE_KEY
-#define NANO_LASTFILE_FKEY NANO_LASTLINE_FKEY
-#define NANO_LASTFILE_ALTKEY NANO_LASTLINE_ALTKEY
-#define NANO_LASTFILE_ALTKEY2 NANO_LASTLINE_ALTKEY2
-#define NANO_REFRESH_KEY NANO_CONTROL_L
-#define NANO_JUSTIFY_KEY NANO_CONTROL_J
-#define NANO_JUSTIFY_FKEY KEY_F(4)
-#define NANO_UNJUSTIFY_KEY NANO_UNCUT_KEY
-#define NANO_UNJUSTIFY_FKEY NANO_UNCUT_FKEY
-#define NANO_PREVLINE_KEY NANO_CONTROL_P
-#define NANO_NEXTLINE_KEY NANO_CONTROL_N
-#define NANO_FORWARD_KEY NANO_CONTROL_F
-#define NANO_BACK_KEY NANO_CONTROL_B
-#define NANO_MARK_KEY NANO_CONTROL_6
-#define NANO_MARK_ALTKEY NANO_ALT_A
-#define NANO_MARK_FKEY KEY_F(15)
-#define NANO_HOME_KEY NANO_CONTROL_A
-#define NANO_END_KEY NANO_CONTROL_E
-#define NANO_DELETE_KEY NANO_CONTROL_D
-#define NANO_BACKSPACE_KEY NANO_CONTROL_H
-#define NANO_TAB_KEY NANO_CONTROL_I
-#define NANO_SUSPEND_KEY NANO_CONTROL_Z
-#define NANO_ENTER_KEY NANO_CONTROL_M
-#define NANO_TOFILES_KEY NANO_CONTROL_T
-#define NANO_APPEND_KEY NANO_ALT_A
-#define NANO_PREPEND_KEY NANO_ALT_P
-#define NANO_PREVFILE_KEY NANO_ALT_LCARET
-#define NANO_NEXTFILE_KEY NANO_ALT_RCARET
-#define NANO_PREVFILE_ALTKEY NANO_ALT_COMMA
-#define NANO_NEXTFILE_ALTKEY NANO_ALT_PERIOD
-#define NANO_BRACKET_KEY NANO_ALT_RBRACKET
-#define NANO_BRACKET_ALTKEY NANO_ALT_RCURLYBRACKET
-#define NANO_NEXTWORD_KEY NANO_CONTROL_SPACE
-#define NANO_PREVWORD_KEY NANO_ALT_SPACE
-#define NANO_WORDCOUNT_KEY NANO_ALT_D
-#define NANO_SCROLLUP_KEY NANO_ALT_MINUS
-#define NANO_SCROLLDOWN_KEY NANO_ALT_PLUS
-#define NANO_SCROLLUP_ALTKEY NANO_ALT_UNDERSCORE
-#define NANO_SCROLLDOWN_ALTKEY NANO_ALT_EQUALS
-#define NANO_CUTTILLEND_KEY NANO_CONTROL_X
-#define NANO_CUTTILLEND_ALTKEY NANO_ALT_T
-#define NANO_PARABEGIN_KEY NANO_CONTROL_W
-#define NANO_PARABEGIN_ALTKEY NANO_ALT_LPAREN
-#define NANO_PARABEGIN_ALTKEY2 NANO_ALT_9
-#define NANO_PARAEND_KEY NANO_CONTROL_O
-#define NANO_PARAEND_ALTKEY NANO_ALT_RPAREN
-#define NANO_PARAEND_ALTKEY2 NANO_ALT_0
-#define NANO_FULLJUSTIFY_KEY NANO_CONTROL_U
-#define NANO_FULLJUSTIFY_ALTKEY NANO_ALT_J
-#define NANO_VERBATIM_KEY NANO_ALT_V
+#define NANO_XON_KEY NANO_CONTROL_Q
+#define NANO_XOFF_KEY NANO_CONTROL_S
+#define NANO_CANCEL_KEY NANO_CONTROL_C
+#define NANO_EXIT_KEY NANO_CONTROL_X
+#define NANO_EXIT_FKEY KEY_F(2)
+#define NANO_INSERTFILE_KEY NANO_CONTROL_R
+#define NANO_INSERTFILE_FKEY KEY_F(5)
+#define NANO_TOOTHERINSERT_KEY NANO_CONTROL_X
+#define NANO_WRITEOUT_KEY NANO_CONTROL_O
+#define NANO_WRITEOUT_FKEY KEY_F(3)
+#define NANO_GOTOLINE_KEY NANO_CONTROL_7
+#define NANO_GOTOLINE_FKEY KEY_F(13)
+#define NANO_GOTOLINE_ALTKEY NANO_ALT_G
+#define NANO_TOGOTOLINE_KEY NANO_CONTROL_T
+#define NANO_HELP_KEY NANO_CONTROL_G
+#define NANO_HELP_FKEY KEY_F(1)
+#define NANO_WHEREIS_KEY NANO_CONTROL_W
+#define NANO_WHEREIS_FKEY KEY_F(6)
+#define NANO_WHEREIS_NEXT_KEY NANO_ALT_W
+#define NANO_WHEREIS_NEXT_FKEY KEY_F(16)
+#define NANO_TOOTHERWHEREIS_KEY NANO_CONTROL_T
+#define NANO_REGEXP_KEY NANO_ALT_R
+#define NANO_REPLACE_KEY NANO_CONTROL_4
+#define NANO_REPLACE_FKEY KEY_F(14)
+#define NANO_ALT_REPLACE_KEY NANO_ALT_R
+#define NANO_TOOTHERSEARCH_KEY NANO_CONTROL_R
+#define NANO_PREVPAGE_KEY NANO_CONTROL_Y
+#define NANO_PREVPAGE_FKEY KEY_F(7)
+#define NANO_NEXTPAGE_KEY NANO_CONTROL_V
+#define NANO_NEXTPAGE_FKEY KEY_F(8)
+#define NANO_CUT_KEY NANO_CONTROL_K
+#define NANO_CUT_FKEY KEY_F(9)
+#define NANO_COPY_KEY NANO_ALT_CARET
+#define NANO_COPY_ALTKEY NANO_ALT_6
+#define NANO_UNCUT_KEY NANO_CONTROL_U
+#define NANO_UNCUT_FKEY KEY_F(10)
+#define NANO_CURSORPOS_KEY NANO_CONTROL_C
+#define NANO_CURSORPOS_FKEY KEY_F(11)
+#define NANO_SPELL_KEY NANO_CONTROL_T
+#define NANO_SPELL_FKEY KEY_F(12)
+#define NANO_FIRSTLINE_KEY NANO_PREVPAGE_KEY
+#define NANO_FIRSTLINE_FKEY NANO_PREVPAGE_FKEY
+#define NANO_FIRSTLINE_ALTKEY NANO_ALT_BACKSLASH
+#define NANO_FIRSTLINE_ALTKEY2 NANO_ALT_PIPE
+#define NANO_FIRSTFILE_KEY NANO_FIRSTLINE_KEY
+#define NANO_FIRSTFILE_FKEY NANO_FIRSTLINE_FKEY
+#define NANO_FIRSTFILE_ALTKEY NANO_FIRSTLINE_ALTKEY
+#define NANO_FIRSTFILE_ALTKEY2 NANO_FIRSTLINE_ALTKEY2
+#define NANO_LASTLINE_KEY NANO_NEXTPAGE_KEY
+#define NANO_LASTLINE_FKEY NANO_NEXTPAGE_FKEY
+#define NANO_LASTLINE_ALTKEY NANO_ALT_SLASH
+#define NANO_LASTLINE_ALTKEY2 NANO_ALT_QUESTION
+#define NANO_LASTFILE_KEY NANO_LASTLINE_KEY
+#define NANO_LASTFILE_FKEY NANO_LASTLINE_FKEY
+#define NANO_LASTFILE_ALTKEY NANO_LASTLINE_ALTKEY
+#define NANO_LASTFILE_ALTKEY2 NANO_LASTLINE_ALTKEY2
+#define NANO_REFRESH_KEY NANO_CONTROL_L
+#define NANO_JUSTIFY_KEY NANO_CONTROL_J
+#define NANO_JUSTIFY_FKEY KEY_F(4)
+#define NANO_UNJUSTIFY_KEY NANO_UNCUT_KEY
+#define NANO_UNJUSTIFY_FKEY NANO_UNCUT_FKEY
+#define NANO_PREVLINE_KEY NANO_CONTROL_P
+#define NANO_NEXTLINE_KEY NANO_CONTROL_N
+#define NANO_FORWARD_KEY NANO_CONTROL_F
+#define NANO_BACK_KEY NANO_CONTROL_B
+#define NANO_MARK_KEY NANO_CONTROL_6
+#define NANO_MARK_ALTKEY NANO_ALT_A
+#define NANO_MARK_FKEY KEY_F(15)
+#define NANO_HOME_KEY NANO_CONTROL_A
+#define NANO_END_KEY NANO_CONTROL_E
+#define NANO_DELETE_KEY NANO_CONTROL_D
+#define NANO_BACKSPACE_KEY NANO_CONTROL_H
+#define NANO_TAB_KEY NANO_CONTROL_I
+#define NANO_SUSPEND_KEY NANO_CONTROL_Z
+#define NANO_ENTER_KEY NANO_CONTROL_M
+#define NANO_TOFILES_KEY NANO_CONTROL_T
+#define NANO_APPEND_KEY NANO_ALT_A
+#define NANO_PREPEND_KEY NANO_ALT_P
+#define NANO_PREVFILE_KEY NANO_ALT_LCARET
+#define NANO_NEXTFILE_KEY NANO_ALT_RCARET
+#define NANO_PREVFILE_ALTKEY NANO_ALT_COMMA
+#define NANO_NEXTFILE_ALTKEY NANO_ALT_PERIOD
+#define NANO_BRACKET_KEY NANO_ALT_RBRACKET
+#define NANO_BRACKET_ALTKEY NANO_ALT_RCURLYBRACKET
+#define NANO_NEXTWORD_KEY NANO_CONTROL_SPACE
+#define NANO_PREVWORD_KEY NANO_ALT_SPACE
+#define NANO_WORDCOUNT_KEY NANO_ALT_D
+#define NANO_SCROLLUP_KEY NANO_ALT_MINUS
+#define NANO_SCROLLDOWN_KEY NANO_ALT_PLUS
+#define NANO_SCROLLUP_ALTKEY NANO_ALT_UNDERSCORE
+#define NANO_SCROLLDOWN_ALTKEY NANO_ALT_EQUALS
+#define NANO_CUTTILLEND_KEY NANO_CONTROL_X
+#define NANO_CUTTILLEND_ALTKEY NANO_ALT_T
+#define NANO_PARABEGIN_KEY NANO_CONTROL_W
+#define NANO_PARABEGIN_ALTKEY NANO_ALT_LPAREN
+#define NANO_PARABEGIN_ALTKEY2 NANO_ALT_9
+#define NANO_PARAEND_KEY NANO_CONTROL_O
+#define NANO_PARAEND_ALTKEY NANO_ALT_RPAREN
+#define NANO_PARAEND_ALTKEY2 NANO_ALT_0
+#define NANO_FULLJUSTIFY_KEY NANO_CONTROL_U
+#define NANO_FULLJUSTIFY_ALTKEY NANO_ALT_J
+#define NANO_VERBATIM_KEY NANO_ALT_V
/* Toggles do not exist if NANO_TINY is defined. */
#ifndef NANO_TINY
/* No toggle at all. */
-#define TOGGLE_NO_KEY -2
+#define TOGGLE_NO_KEY -2
/* Normal toggles. */
-#define TOGGLE_NOHELP_KEY NANO_ALT_X
-#define TOGGLE_CONST_KEY NANO_ALT_C
-#define TOGGLE_MORESPACE_KEY NANO_ALT_O
-#define TOGGLE_SMOOTH_KEY NANO_ALT_S
-#define TOGGLE_WHITESPACE_KEY NANO_ALT_P
-#define TOGGLE_SYNTAX_KEY NANO_ALT_Y
-#define TOGGLE_SMARTHOME_KEY NANO_ALT_H
-#define TOGGLE_AUTOINDENT_KEY NANO_ALT_I
-#define TOGGLE_CUTTOEND_KEY NANO_ALT_K
-#define TOGGLE_WRAP_KEY NANO_ALT_L
-#define TOGGLE_TABSTOSPACES_KEY NANO_ALT_Q
-#define TOGGLE_BACKUP_KEY NANO_ALT_B
-#define TOGGLE_MULTIBUFFER_KEY NANO_ALT_F
-#define TOGGLE_MOUSE_KEY NANO_ALT_M
-#define TOGGLE_NOCONVERT_KEY NANO_ALT_N
-#define TOGGLE_SUSPEND_KEY NANO_ALT_Z
-#define TOGGLE_CASE_KEY NANO_ALT_C
-#define TOGGLE_BACKWARDS_KEY NANO_ALT_B
-#define TOGGLE_DOS_KEY NANO_ALT_D
-#define TOGGLE_MAC_KEY NANO_ALT_M
+#define TOGGLE_NOHELP_KEY NANO_ALT_X
+#define TOGGLE_CONST_KEY NANO_ALT_C
+#define TOGGLE_MORESPACE_KEY NANO_ALT_O
+#define TOGGLE_SMOOTH_KEY NANO_ALT_S
+#define TOGGLE_WHITESPACE_KEY NANO_ALT_P
+#define TOGGLE_SYNTAX_KEY NANO_ALT_Y
+#define TOGGLE_SMARTHOME_KEY NANO_ALT_H
+#define TOGGLE_AUTOINDENT_KEY NANO_ALT_I
+#define TOGGLE_CUTTOEND_KEY NANO_ALT_K
+#define TOGGLE_WRAP_KEY NANO_ALT_L
+#define TOGGLE_TABSTOSPACES_KEY NANO_ALT_Q
+#define TOGGLE_BACKUP_KEY NANO_ALT_B
+#define TOGGLE_MULTIBUFFER_KEY NANO_ALT_F
+#define TOGGLE_MOUSE_KEY NANO_ALT_M
+#define TOGGLE_NOCONVERT_KEY NANO_ALT_N
+#define TOGGLE_SUSPEND_KEY NANO_ALT_Z
+#define TOGGLE_CASE_KEY NANO_ALT_C
+#define TOGGLE_BACKWARDS_KEY NANO_ALT_B
+#define TOGGLE_DOS_KEY NANO_ALT_D
+#define TOGGLE_MAC_KEY NANO_ALT_M
#endif /* !NANO_TINY */
#define MAIN_VISIBLE 12