commit be908f6992a03e7826707888750af8788f05e756
parent e5d8f32834d8a0afcc54dc88a2560996590f4c68
Author: David Lawrence Ramsey <pooka109@gmail.com>
Date: Fri, 1 Oct 2004 18:34:30 +0000
for consistency, make do_insertfile() take a parameter to indicate
whether it's in "Execute Command" mode; also add continue and goto to
the "c-file" regexes
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1955 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
4 files changed, 31 insertions(+), 15 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -68,7 +68,9 @@ CVS code -
do_insertfile()
- Readd the NANO_SMALL #ifdef around the start_again: label to
avoid a warning. (DLR)
- - Simplify by reusing variables whereever possible. (DLR)
+ - Simplify by reusing variables whereever possible, and add a
+ parameter execute to indicate whether or not to be in "Execute
+ Command" mode. (DLR)
- global.c:
shortcut_init()
- Remove redundant NANO_SMALL #ifdef. (DLR)
@@ -171,6 +173,7 @@ CVS code -
- nanorc.sample:
- Remove specific references to control key shortcuts other than
XON and XOFF. (DLR)
+ - Add continue and goto to the "c-file" regexes. (DLR)
- doc/man/fr/nano.1, doc/man/fr/nanorc.1:
- Updated manpage translations by Jean-Philippe Guérard.
@@ -256,7 +259,7 @@ GNU nano 1.3.4 - 2004.08.17
- Consolidate some if blocks to remove some redundant code.
(David Benbennick)
- Fix warnings when compiling with ENABLE_NLS undefined and with
- -the fwritable-strings option. (David Benbennick)
+ the fwritable-strings option. (David Benbennick)
- Add various #ifdefs to fix warnings and compilation problems
when compiling with every option manually turned on, including
NANO_SMALL. (David Benbennick)
diff --git a/doc/nanorc.sample b/doc/nanorc.sample
@@ -139,7 +139,7 @@
# syntax "c-file" "\.(c|h)$"
# color red "\<[A-Z_]{2,}\>"
# color green "\<(float|double|char|int|short|long|enum|void|static|const|struct|union|typedef|extern|signed|unsigned|inline)\>"
-# color brightyellow "\<(for|if|while|do|else|case|switch|break)\>"
+# color brightyellow "\<(for|if|while|do|else|case|switch|goto|continue|break)\>"
# color brightcyan "^ *# *(define|undef|include|ifn?def|endif|elif|else|if)"
##
## You will in general want your comments and strings to come last,
diff --git a/src/files.c b/src/files.c
@@ -474,16 +474,19 @@ void load_buffer(const char *name)
load_file();
}
-void do_insertfile(void)
+void do_insertfile(
+#ifndef NANO_SMALL
+ bool execute
+#else
+ void
+#endif
+ )
{
int i;
const char *msg;
char *ans = mallocstrcpy(NULL, "");
/* The last answer the user typed on the statusbar. Saved for if
* they do M-F or cancel the file browser. */
-#ifndef NANO_SMALL
- bool extcmd = FALSE;
-#endif
wrap_reset();
@@ -492,7 +495,7 @@ void do_insertfile(void)
#endif
#ifndef NANO_SMALL
- if (extcmd) {
+ if (execute) {
#ifdef ENABLE_MULTIBUFFER
if (ISSET(MULTIBUFFER))
msg = N_("Command to execute in new buffer [from %s] ");
@@ -513,7 +516,7 @@ void do_insertfile(void)
i = statusq(TRUE,
#ifndef NANO_SMALL
- extcmd ? extcmd_list :
+ execute ? extcmd_list :
#endif
insertfile_list, ans,
#ifndef NANO_SMALL
@@ -553,11 +556,11 @@ void do_insertfile(void)
#ifndef NANO_SMALL
if (i == NANO_TOOTHERINSERT_KEY) {
- extcmd = !extcmd;
+ execute = !execute;
goto start_again;
}
- if (extcmd)
+ if (execute)
execute_command(answer);
else {
#endif
@@ -600,7 +603,11 @@ void do_insertfile_void(void)
statusbar(_("Key illegal in non-multibuffer mode"));
else
#endif
- do_insertfile();
+ do_insertfile(
+#ifndef NANO_SMALL
+ FALSE
+#endif
+ );
display_main_list();
}
@@ -1846,10 +1853,10 @@ int do_writeout(int exiting)
} else
#endif /* !NANO_SMALL */
if (i == NANO_PREPEND_KEY) {
- append = append == 2 ? 0 : 2;
+ append = (append == 2) ? 0 : 2;
continue;
} else if (i == NANO_APPEND_KEY) {
- append = append == 1 ? 0 : 1;
+ append = (append == 1) ? 0 : 1;
continue;
}
diff --git a/src/proto.h b/src/proto.h
@@ -175,7 +175,13 @@ char *get_next_filename(const char *name);
void execute_command(const char *command);
#endif
void load_buffer(const char *name);
-void do_insertfile(void);
+void do_insertfile(
+#ifndef NANO_SMALL
+ bool execute
+#else
+ void
+#endif
+ );
void do_insertfile_void(void);
#ifdef ENABLE_MULTIBUFFER
openfilestruct *make_new_opennode(openfilestruct *prevnode);