diff --git a/ChangeLog b/ChangeLog
index 5c8d330e2954653513c5206bc3e0d6ae63cbd5db..330106f5fbcebb070dc469abbd09e04e672583cf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,7 @@
 	* nano.spec.in, doc/faq.html, doc/texinfo/nano.texi - Remove
 	vestiges of the obsolete '--enable-all' configure flag.
 	* src/rcfile.c - Fix compilation with --disable-color.
+	* src/rcfile.c - Allow (un)binding keys when colour is disabled.
 
 2014-03-26  Mike Frysinger  <vapier@gentoo.org>.
 	* configure.ac - Clean up most of the --with/--enable flags:
diff --git a/src/rcfile.c b/src/rcfile.c
index c98d781b60456d025cf1ed4b9ef6380559cd9972..2d00871ef7ab02e4452a6196e4fd34e1da193b36 100644
--- a/src/rcfile.c
+++ b/src/rcfile.c
@@ -446,6 +446,7 @@ void parse_magictype(char *ptr)
     }
 #endif /* HAVE_LIBMAGIC */
 }
+#endif /* ENABLE_COLOR */
 
 
 int check_bad_binding(sc *s)
@@ -617,6 +618,7 @@ void parse_unbinding(char *ptr)
 }
 
 
+#ifdef ENABLE_COLOR
 /* Read and parse additional syntax files. */
 void parse_include(char *ptr)
 {
@@ -1094,22 +1096,21 @@ void parse_rcfile(FILE *rcstream
 			endsyntax->desc);
 	    parse_syntax(ptr);
 	}
-	else if (strcasecmp(keyword, "magic") == 0) {
+	else if (strcasecmp(keyword, "magic") == 0)
 	    parse_magictype(ptr);
-	} else if (strcasecmp(keyword, "header") == 0)
+	else if (strcasecmp(keyword, "header") == 0)
 	    parse_headers(ptr);
 	else if (strcasecmp(keyword, "color") == 0)
 	    parse_colors(ptr, FALSE);
 	else if (strcasecmp(keyword, "icolor") == 0)
 	    parse_colors(ptr, TRUE);
+	else if (strcasecmp(keyword, "linter") == 0)
+	    parse_linter(ptr);
+#endif /* ENABLE_COLOR */
 	else if (strcasecmp(keyword, "bind") == 0)
 	    parse_keybinding(ptr);
 	else if (strcasecmp(keyword, "unbind") == 0)
 	    parse_unbinding(ptr);
-	else if (strcasecmp(keyword, "linter") == 0) {
-	    parse_linter(ptr);
-	}
-#endif /* ENABLE_COLOR */
 	else
 	    rcfile_error(N_("Command \"%s\" not understood"), keyword);