Test for multi-byte text formatting. Also test, that 'mps' with multibyte chars works. And test "ra" on multi-byte characters. Also test byteidx() and byteidxcomp() STARTTEST :so mbyte.vim :set encoding=utf-8 ENDTEST Results of test69: STARTTEST /^{/+1 :set tw=2 fo=t gqgqjgqgqo XYZ abc XYZ ENDTEST { XYZ abc XYZ } STARTTEST /^{/+1 :set tw=1 fo=tm gqgqjgqgqjgqgqjgqgqjgqgqo X Xa X a XY X Y ENDTEST { X Xa X a XY X Y } STARTTEST /^{/+1 :set tw=2 fo=tm gqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqo X Xa X a XY X Y aX abX abcX abX c abXY ENDTEST { X Xa X a XY X Y aX abX abcX abX c abXY } STARTTEST /^{/+1 :set ai tw=2 fo=tm gqgqjgqgqo X Xa ENDTEST { X Xa } STARTTEST /^{/+1 :set noai tw=2 fo=tm gqgqjgqgqo X Xa ENDTEST { X Xa } STARTTEST /^{/+1 :set tw=2 fo=cqm comments=n:X gqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqo X Xa XaY XY XYZ X Y X YZ XX XXa XXY ENDTEST { X Xa XaY XY XYZ X Y X YZ XX XXa XXY } STARTTEST /^{/+1 :set tw=2 fo=tm RXa ENDTEST { } STARTTEST /^{/+1 :set mps+=u2018:u2019 d% ENDTEST { ‘ two three ’ four } STARTTEST /^ra test jVjra ENDTEST ra test abba aab STARTTEST :set whichwrap+=h /^x dh :set whichwrap-=h ENDTEST á x STARTTEST /^substitute :let y = substitute('123', '\zs', 'a', 'g') | put =y ENDTEST substitute STARTTEST :g/^STARTTEST/.,/^ENDTEST/d :1;/^Results/,$wq! test.out ENDTEST