]> granicus.if.org Git - vim/commitdiff
Disallow setting 'ambiwidth' to "double" when 'listchars' or 'fillchars'
authorBram Moolenaar <Bram@vim.org>
Wed, 4 Aug 2010 18:55:44 +0000 (20:55 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 4 Aug 2010 18:55:44 +0000 (20:55 +0200)
contains a character that would become double width.

runtime/doc/options.txt
src/option.c

index 5f57ed58021be4a060c7133cdb022a60c46cfced..b1539bbe04e807be39bd6ca5bf7a77e0de248eda 100644 (file)
@@ -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 short description can be found at |Q_op|.
        "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
index fc384536a7373df765fe1afb6034d1bc79f3387b..b137fa45303e3548cdb97d19d3dbbd38b97991cf 100644 (file)
@@ -5745,6 +5745,12 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
     {
        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