From d76ca2bc9fa8dbe3d0ff13e4ed644ec71d12ca8c Mon Sep 17 00:00:00 2001
From: Chris Allegretta <chrisa@asty.org>
Date: Sun, 3 Mar 2002 22:52:52 +0000
Subject: [PATCH] Add rcfile support for quotestr and fix strcasestr

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1093 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 nanorc.sample |  4 ++++
 rcfile.c      | 24 ++++++++++++++++++------
 2 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/nanorc.sample b/nanorc.sample
index bde38589..4b1681e9 100644
--- a/nanorc.sample
+++ b/nanorc.sample
@@ -67,6 +67,10 @@
 #
 # set multibuffer
 
+# Use this as the quoting string.  You shouldn't need to change this,
+# but...... default "> "
+# set quotestr "// "
+
 #
 # Color setup
 # Format: color foreground,background "regex" ["regex"...]
diff --git a/rcfile.c b/rcfile.c
index f1fee956..13e0dae8 100644
--- a/rcfile.c
+++ b/rcfile.c
@@ -40,10 +40,8 @@
 #define _(string) (string)
 #endif
 
-#define NUM_RCOPTS 20
-
 /* Static stuff for the nanorc file */
-rcoption rcopts[NUM_RCOPTS] = {
+rcoption rcopts[] = {
     {"regexp", USE_REGEXP},
     {"const", CONSTUPDATE},
     {"autoindent", AUTOINDENT},
@@ -63,7 +61,9 @@ rcoption rcopts[NUM_RCOPTS] = {
     {"multibuffer", MULTIBUFFER},
     {"smooth", SMOOTHSCROLL},
     {"keypad", ALT_KEYPAD},
-    {"noconvert", NO_CONVERT}
+    {"noconvert", NO_CONVERT},
+    {"quotestr", 0},
+    {"", 0}
 };
 
 static int errors = 0;
@@ -147,7 +147,7 @@ int colortoint(char *colorname, int *bright)
     if (colorname == NULL)
 	return -1;
 
-    if (strcasestr(colorname, "bright")) {
+    if (stristr(colorname, "bright")) {
 	*bright = 1;
 	colorname += 6;
     }
@@ -349,7 +349,7 @@ void parse_rcfile(FILE * rcstream)
 	/* We don't care if ptr == NULL, as it should if using proper syntax */
 
 	if (set != 0) {
-	    for (i = 0; i <= NUM_RCOPTS - 1; i++) {
+	    for (i = 0; rcopts[i].name != ""; i++) {
 		if (!strcasecmp(option, rcopts[i].name)) {
 #ifdef DEBUG
 		    fprintf(stderr, _("parse_rcfile: Parsing option %s\n"),
@@ -361,6 +361,9 @@ void parse_rcfile(FILE * rcstream)
 #ifndef DISABLE_WRAPJUSTIFY
 			    !strcasecmp(rcopts[i].name, "fill") ||
 #endif
+#ifndef DISABLE_JUSTIFY
+			    !strcasecmp(rcopts[i].name, "quotestr") ||
+#endif
 #ifndef DISABLE_SPELLER
 			    !strcasecmp(rcopts[i].name, "speller")
 #else
@@ -396,6 +399,15 @@ void parse_rcfile(FILE * rcstream)
 				} else {
 				    tabsize = i;
 				}
+#ifndef DISABLE_JUSTIFY
+			    } else
+				if (!strcasecmp(rcopts[i].name, "quotestr"))
+			    {
+				quotestr = NULL;
+				quotestr =
+				    charalloc(strlen(option) + 1);
+				strcpy(quotestr, option);
+#endif
 			    } else {
 #ifndef DISABLE_SPELLER
 				alt_speller =
-- 
GitLab