runtime(syntax-tests): Break up non-ASCII over-75-byte-long lines

And anticipate occasional multibyte line wrapping owing to:
> A poorly rendered line may otherwise become wrapped when enough of
> spurious U+FFFD (0xEF 0xBF 0xBD) characters claim more columns than
> are available (75) and then invalidate line correspondence under test.

Observe that for "vim_ex_command.vim" another workaround is
chosen: the long line containing an only multibyte character
near its EOL is conversely made longer by padding and moving
the character to a separate _tail_ part of the wrapped line.
That is, the _head_ part of the line is all ASCII characters
and the wrapped _tail_ part is a mix of various characters
whose total byte count is within bounds.

Other unmodified tracked files of interest:
  java_lambda_expressions.java,
  java_lambda_expressions_signature.java,
  java_numbers.java,
  markdown_conceal.markdown,
  vim9_generic_function_example_set.vim

Also, remove stray U+FFFC (0xEF 0xBF 0xBC) characters.

Related to #16559 and #17704.

Reference:
0fde6aebdd/runtime/syntax/testdir/README.txt (L120-L123)

closes: #17868

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Aliaksei Budavei
2025-08-06 12:50:30 +02:00
committed by Christian Brabandt
parent 3769100a8e
commit af2c8e256a
50 changed files with 106 additions and 100 deletions

View File

@ -13,7 +13,8 @@ int main (void)
// integer character constants,
int c1='a'; printf("'a':\t %#010x\n", c1);
int c2='🍌'; printf("'🍌':\t %#010x\n\n", c2); // implementation-defined
// implementation-defined
int c2='🍌'; printf("'🍌':\t %#010x\n\n", c2);
// multicharacter constant
int c3='ab'; printf("'ab':\t %#010x\n\n", c3); // implementation-defined

View File

@ -41,11 +41,13 @@ int main(void)
printf("0x%02X ", +(unsigned char)s2[n]);
#endif
puts("}");
printf(" u\"a猫🍌\" is a char16_t[%zu] holding { ", sizeof s3 / sizeof *s3);
printf(" u\"a猫🍌\" is a char16_t[%zu] holding { ",
sizeof s3 / sizeof *s3);
for(size_t n = 0; n < sizeof s3 / sizeof *s3; ++n)
printf("0x%04" PRIXLEAST16" ", s3[n]);
puts("}");
printf(" U\"a猫🍌\" is a char32_t[%zu] holding { ", sizeof s4 / sizeof *s4);
printf(" U\"a猫🍌\" is a char32_t[%zu] holding { ",
sizeof s4 / sizeof *s4);
for(size_t n = 0; n < sizeof s4 / sizeof *s4; ++n)
printf("0x%08" PRIXLEAST32" ", s4[n]);
puts("}");

View File

@ -1,4 +1,4 @@
// VIM_TEST_SETUP :highlight link javaConceptKind NonText
// VIM_TEST_SETUP highlight link javaConceptKind NonText

View File

@ -67,8 +67,8 @@ abstract class Indent2MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Indent2$MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Indent4MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Indent4$MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Indent8MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Indent8$MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class StyleMethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -67,8 +67,8 @@ abstract class Style$MethodsTests
protected static final synchronized strictfp void ascii$99_()
{ ascii$98_(); }
@SuppressWarnings("strictfp")
protected static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
@SuppressWarnings("strictfp") protected
static final synchronized strictfp <α, β> Τʬ<α>[] μʭʭ$99_(
java.util.function.Function<β, Τʬ<α>[][]> ƒ)
{
return

View File

@ -22,6 +22,7 @@ c <char-0103> Special notation allowed in RHS - octal
# Vim-script comment characters
\# <char-0x00a3> Line should not match as a Vim9-script comment
" “ Line should not match as a legacy-script comment
# Line should not match as a legacy-script comment
" “
: # Line should not match as a Vim9-script comment

View File

@ -311,7 +311,7 @@ if !isdirectory(&directory) | mkdir(&directory, "p") | endif
# Issue #17766 (valid function call highlighted as error)
module[0].foo()
module[0].substitute()

View File

@ -147,7 +147,7 @@ command! -bang -nargs=* -complete=file Make AsyncRun -program=make @ <args>
command -range=% -nargs=? -bang Tb {
if "<bang>" == "!"
:<line1>,<line2>s/\v"[^"]*"/\=substitute(submatch(0), " ", "•", "g")/ge
:<line1>,<line2>s/\v"[^"]*"/\=substitute(submatch(0), " ", "•", "g")/ge
endif
if "<args>" == ""
:<line1>,<line2>!column -t

View File

@ -29,6 +29,6 @@ delfunction Foo " comment
" Issue https://github.com/vim/vim/pull/17420#issuecomment-2927798687
" (arg named /fu%\[nction]/)
silent! delfunc! func

View File

@ -259,7 +259,7 @@ endfunction
" Issue https://github.com/vim/vim/pull/17420#issuecomment-2927798687
" (function named /s:fu%\[nction]/)
func! s:func(_, func)
return a:func
endfunc

View File

@ -261,7 +261,7 @@ endfunction
" Issue https://github.com/vim/vim/pull/17420#issuecomment-2927798687
" (function named /s:fu%\[nction]/)
func! s:func(_, func)
return a:func
endfunc

View File

@ -21,6 +21,7 @@ c <char-0103> Special notation allowed in RHS - octal
" Vim-script comment characters
# <char-0x00a3> Line should not match as a Vim9-script comment
\" Line should not match as a legacy-script comment
" Line should not match as a legacy-script comment
\" “
: " Line should not match as a legacy-script comment

View File

@ -126,5 +126,6 @@ set langmap+=ЯЧСМИТЬБЮ;ZXCVBNM<>
set langmap+=ФЫВАПРОЛДЖЭЁ;ASDFGHJKL\\:\\"\\|
\ langmap+=ЯЧСМИТЬБЮ;ZXCVBNM<>
set langmap+=ФЫВАПРОЛДЖЭЁ;ASDFGHJKL\\:\\"\\| langmap+=ЯЧСМИТЬБЮ;ZXCVBNM<>
set langmap+=ФЫВАПР;ASDFGH langmap+=ОЛДЖЭЁ;JKL\\:\\"\\|
\ langmap+=ЯЧСМИ;ZXCVB langmap+=ТЬБЮ;NM<>

View File

@ -271,7 +271,7 @@ call module.foo().substitute()
" Issue #17766 (valid function call highlighted as error)
call module[0].foo()
call module[0].substitute()