view src/testdir/test_listchars.vim @ 15492:126cdab63a83 v8.1.0754

patch 8.1.0754: preferred column is lost when setting 'cursorcolumn' commit https://github.com/vim/vim/commit/177ab9e0262b1b3a6120bea655864ead487210e5 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jan 15 21:12:57 2019 +0100 patch 8.1.0754: preferred column is lost when setting 'cursorcolumn' Problem: Preferred column is lost when setting 'cursorcolumn'. Solution: Change option flag to P_RWINONLY. (Takayuki Kurosawa, closes #3806)
author Bram Moolenaar <Bram@vim.org>
date Tue, 15 Jan 2019 21:15:05 +0100
parents 90aaa974594e
children bc17a9d37810
line wrap: on
line source

" Tests for 'listchars' display with 'list' and :list

source view_util.vim

func Test_listchars()
  enew!
  set ff=unix
  set list

  set listchars+=tab:>-,space:.,trail:<
  call append(0, [
	      \ '	aa	',
	      \ '  bb	  ',
	      \ '   cccc	 ',
	      \ 'dd        ee  	',
	      \ ' '
	      \ ])
  let expected = [
	      \ '>-------aa>-----$',
	      \ '..bb>---<<$',
	      \ '...cccc><$',
	      \ 'dd........ee<<>-$',
	      \ '<$'
	      \ ]
  redraw!
  for i in range(1, 5)
    call cursor(i, 1)
    call assert_equal([expected[i - 1]], ScreenLines(i, virtcol('$')))
  endfor

  set listchars-=trail:<
  let expected = [
	      \ '>-------aa>-----$',
	      \ '..bb>---..$',
	      \ '...cccc>.$',
	      \ 'dd........ee..>-$',
	      \ '.$'
	      \ ]
  redraw!
  for i in range(1, 5)
    call cursor(i, 1)
    call assert_equal([expected[i - 1]], ScreenLines(i, virtcol('$')))
  endfor

  set listchars+=trail:<
  set nolist
  normal ggdG
  call append(0, [
	      \ '  fff	  ',
	      \ '	gg	',
	      \ '     h	',
	      \ 'iii    	  ',
	      \ ])
  let l = split(execute("%list"), "\n")
  call assert_equal([
	      \ '..fff>--<<$',
	      \ '>-------gg>-----$',
	      \ '.....h>-$',
	      \ 'iii<<<<><<$', '$'], l)

  enew!
  set listchars& ff&
endfunc