Mercurial > vim
view src/testdir/test77a.in @ 8761:f8707ec9efe4 v7.4.1669
commit https://github.com/vim/vim/commit/8b877ac38e96424a08a8b8eb713ef4b3cf0064be
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Mar 28 19:16:20 2016 +0200
patch 7.4.1669
Problem: When writing buffer lines to a pipe Vim may block.
Solution: Avoid blocking, write more lines later.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 28 Mar 2016 19:30:05 +0200 |
parents | 47a673b20e49 |
children | e705ea6e855b |
line wrap: on
line source
Inserts 2 million lines with consecutive integers starting from 1 (essentially, the output of GNU's seq 1 2000000), writes them to Xtest and writes its cksum to test.out. We need 2 million lines to trigger a call to mf_hash_grow(). If it would mess up the lines the checksum would differ. cksum is part of POSIX and so should be available on most Unixes. If it isn't available then the test will be skipped. VMS does not have CKSUM but has a built in CHECKSUM - it should be used STARTTEST :so small.vim :if !has("vms") : e! test.ok : w! test.out : qa! :endif :set fileformat=unix undolevels=-1 ggdG :let i = 1 :while i <= 2000000 | call append(i, range(i, i + 99)) | let i += 100 | endwhile ggdd :w! Xtest. :r !@test77a.com Xtest. :s/\s/ /g :set fileformat& :.w! test.out :qa! ENDTEST