changeset 2492:c945fdb34ce3 vim73

Disallow setting 'ambiwidth' to "double" when 'listchars' or 'fillchars' contains a character that would become double width.
author Bram Moolenaar <bram@vim.org>
date Wed, 04 Aug 2010 20:55:44 +0200
parents 904cd1c26a1e
children 892c7366db35
files runtime/doc/options.txt src/option.c
diffstat 2 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.3e.  Last change: 2010 Aug 01
+*options.txt*	For Vim version 7.3e.  Last change: 2010 Aug 04
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -665,6 +665,9 @@ A jump table for the options with a shor
 	"single":	Use the same width as characters in US-ASCII.  This is
 			expected by most users.
 	"double":	Use twice the width of ASCII characters.
+							*E834* *E835*
+	The value "double" cannot be used if 'listchars' or 'fillchars'
+	contains a character that would be double width.
 
 	There are a number of CJK fonts for which the width of glyphs for
 	those characters are solely based on how many octets they take in
--- a/src/option.c
+++ b/src/option.c
@@ -5745,6 +5745,12 @@ did_set_string_option(opt_idx, varp, new
     {
 	if (check_opt_strings(p_ambw, p_ambw_values, FALSE) != OK)
 	    errmsg = e_invarg;
+	else if (set_chars_option(&p_lcs) != NULL)
+	    errmsg = (char_u *)_("E834: Conflicts with value of 'listchars'");
+# if defined(FEAT_WINDOWS) || defined(FEAT_FOLDING)
+	else if (set_chars_option(&p_fcs) != NULL)
+	    errmsg = (char_u *)_("E835: Conflicts with value of 'fillchars'");
+# endif
     }
 #endif