diff --git a/ChangeLog b/ChangeLog
index 6e10e3c42f3e69af14f5c431bbf5d563eeaeb5dd..6869dfbc295e70e1dcecec014c4feb36ddc4372b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -238,6 +238,10 @@ CVS code -
 	  (DLR)
 	- Don't set current_len until after it's been asserted that both
 	  current and current->data aren't NULL. (DLR)
+  do_toggle()
+	- Properly treat color syntax highlighting as enabled by
+	  default, and only treat wrapping as enabled by default when
+	  DISABLE_WRAPPING isn't defined. (DLR)
   disable_extended_input()
 	- Disable extended output processing as well as extended input
 	  processing, and rename to disable_extended_io(). (DLR)
diff --git a/src/nano.c b/src/nano.c
index b0f51117e2772f975ab06b10078b462d7eaa9145..a495221da0e5cddd8157cc1b8e924347a796e0b1 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -3723,8 +3723,14 @@ void do_toggle(const toggle *which)
 
     enabled = ISSET(which->flag);
 
-    if (which->val == TOGGLE_NOHELP_KEY ||
-	which->val == TOGGLE_WRAP_KEY)
+    if (which->val == TOGGLE_NOHELP_KEY
+#ifndef DISABLE_WRAPPING
+	|| which->val == TOGGLE_WRAP_KEY
+#endif
+#ifdef ENABLE_COLOR
+	|| which->val == TOGGLE_SYNTAX_KEY
+#endif
+	)
 	enabled = !enabled;
 
     statusbar("%s %s", which->desc, enabled ? _("enabled") :