view src/testdir/test_substitute.vim @ 10678:c647f01d6dbd v8.0.0229

patch 8.0.0229: local 'formatprg' option value leaks commit https://github.com/vim/vim/commit/24a2d416ec261829ff7fd29f7b66739c96dd6513 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jan 24 17:48:36 2017 +0100 patch 8.0.0229: local 'formatprg' option value leaks Problem: When freeing a buffer the local value of the 'formatprg' option is not cleared. Solution: Add missing change.
author Christian Brabandt <cb@256bit.org>
date Tue, 24 Jan 2017 18:00:05 +0100
parents c104f09ae2f4
children fbed07965b6a
line wrap: on
line source

" Tests for multi-line regexps with ":s".

function! Test_multiline_subst()
  enew!
  call append(0, ["1 aa",
	      \ "bb",
	      \ "cc",
	      \ "2 dd",
	      \ "ee",
	      \ "3 ef",
	      \ "gh",
	      \ "4 ij",
	      \ "5 a8",
	      \ "8b c9",
	      \ "9d",
	      \ "6 e7",
	      \ "77f",
	      \ "xxxxx"])

  1
  " test if replacing a line break works with a back reference
  /^1/,/^2/s/\n\(.\)/ \1/
  " test if inserting a line break works with a back reference
  /^3/,/^4/s/\(.\)$/\r\1/
  " test if replacing a line break with another line break works
  /^5/,/^6/s/\(\_d\{3}\)/x\1x/
  call assert_equal('1 aa bb cc 2 dd ee', getline(1))
  call assert_equal('3 e', getline(2))
  call assert_equal('f', getline(3))
  call assert_equal('g', getline(4))
  call assert_equal('h', getline(5))
  call assert_equal('4 i', getline(6))
  call assert_equal('j', getline(7))
  call assert_equal('5 ax8', getline(8))
  call assert_equal('8xb cx9', getline(9))
  call assert_equal('9xd', getline(10))
  call assert_equal('6 ex7', getline(11))
  call assert_equal('7x7f', getline(12))
  call assert_equal('xxxxx', getline(13))
  enew!
endfunction