Raspbian Package Auto-Building

Build log for vim (2:7.4.963-1) on armhf

vim2:7.4.963-1armhf → 2016-01-18 16:23:01

sbuild (Debian sbuild) 0.65.2 (24 Mar 2015) on testbuildd.raspbian.org

╔══════════════════════════════════════════════════════════════════════════════╗
║ vim 2:7.4.963-1 (armhf)                                    18 Jan 2016 15:23 ║
╚══════════════════════════════════════════════════════════════════════════════╝

Package: vim
Version: 2:7.4.963-1
Source Version: 2:7.4.963-1
Distribution: stretch-staging
Machine Architecture: armhf
Host Architecture: armhf
Build Architecture: armhf

I: NOTICE: Log filtering will replace 'build/vim-wblUMy/vim-7.4.963' with '«PKGBUILDDIR»'
I: NOTICE: Log filtering will replace 'build/vim-wblUMy' with '«BUILDDIR»'
I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/stretch-staging-armhf-sbuild-ced8b2ea-9f43-49b2-b083-8e71db4ea547' with '«CHROOT»'

┌──────────────────────────────────────────────────────────────────────────────┐
│ Update chroot                                                                │
└──────────────────────────────────────────────────────────────────────────────┘

Get:1 http://172.17.0.1/private stretch-staging InRelease [11.3 kB]
Get:2 http://172.17.0.1/private stretch-staging/main Sources [8622 kB]
Get:3 http://172.17.0.1/private stretch-staging/main armhf Packages [10.7 MB]
Fetched 19.3 MB in 23s (812 kB/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges

┌──────────────────────────────────────────────────────────────────────────────┐
│ Fetch source files                                                           │
└──────────────────────────────────────────────────────────────────────────────┘


Check APT
─────────

Checking available source versions...

Download source files with APT
──────────────────────────────

Reading package lists...
Building dependency tree...
Reading state information...
NOTICE: 'vim' packaging is maintained in the 'Git' version control system at:
https://anonscm.debian.org/cgit/pkg-vim/vim.git/
Please use:
git clone https://anonscm.debian.org/cgit/pkg-vim/vim.git/
to retrieve the latest (possibly unreleased) updates to the package.
Need to get 12.5 MB of source archives.
Get:1 http://172.17.0.1/private stretch-staging/main vim 2:7.4.963-1 (dsc) [2925 B]
Get:2 http://172.17.0.1/private stretch-staging/main vim 2:7.4.963-1 (tar) [12.3 MB]
Get:3 http://172.17.0.1/private stretch-staging/main vim 2:7.4.963-1 (diff) [166 kB]
Fetched 12.5 MB in 3s (3199 kB/s)
Download complete and in download only mode

Check architectures
───────────────────


Check dependencies
──────────────────

Merged Build-Depends: build-essential, fakeroot
Filtered Build-Depends: build-essential, fakeroot
dpkg-deb: building package 'sbuild-build-depends-core-dummy' in '/«BUILDDIR»/resolver-3aeFVK/apt_archive/sbuild-build-depends-core-dummy.deb'.
OK
Get:1 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ InRelease
Ign:1 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ InRelease
Get:2 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Release [2119 B]
Get:2 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Release [2119 B]
Get:3 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Release.gpg [299 B]
Get:3 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Release.gpg [299 B]
Get:4 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Sources [208 B]
Get:5 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ Packages [528 B]
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

┌──────────────────────────────────────────────────────────────────────────────┐
│ Install core build dependencies (apt-based resolver)                         │
└──────────────────────────────────────────────────────────────────────────────┘

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
0 upgraded, 1 newly installed, 0 to remove and 19 not upgraded.
Need to get 0 B/768 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 file:/«BUILDDIR»/resolver-3aeFVK/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [768 B]
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 12751 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-core-dummy.deb ...
Unpacking sbuild-build-depends-core-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-core-dummy (0.invalid.0) ...
W: No sandbox user '_apt' on the system, can not drop privileges
Merged Build-Depends: libc6-dev | libc-dev, gcc (>= 4:4.9.1), g++ (>= 4:4.9.1), make, dpkg-dev (>= 1.17.11), libacl1-dev, libgpmg1-dev, autoconf, pdf2svg, ghostscript, debhelper (>= 9), libtinfo-dev | libncurses5-dev, libselinux1-dev, dpkg-dev (>= 1.15.1), libgtk2.0-dev, libxaw7-dev, libxt-dev, libxpm-dev, libgnomeui-dev, libperl-dev, tcl-dev, python-dev, ruby, ruby-dev, lua5.2, liblua5.2-dev
Merged Build-Conflicts: autoconf2.13, ruby1.8 (<< 1.8.7.358-8), ruby1.8-dev (<< 1.8.7.358-8)
Filtered Build-Depends: libc6-dev, gcc (>= 4:4.9.1), g++ (>= 4:4.9.1), make, dpkg-dev (>= 1.17.11), libacl1-dev, libgpmg1-dev, autoconf, pdf2svg, ghostscript, debhelper (>= 9), libtinfo-dev, libselinux1-dev, dpkg-dev (>= 1.15.1), libgtk2.0-dev, libxaw7-dev, libxt-dev, libxpm-dev, libgnomeui-dev, libperl-dev, tcl-dev, python-dev, ruby, ruby-dev, lua5.2, liblua5.2-dev
Filtered Build-Conflicts: autoconf2.13, ruby1.8 (<< 1.8.7.358-8), ruby1.8-dev (<< 1.8.7.358-8)
dpkg-deb: building package 'sbuild-build-depends-vim-dummy' in '/«BUILDDIR»/resolver-bqLn07/apt_archive/sbuild-build-depends-vim-dummy.deb'.
OK
Get:1 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ InRelease
Ign:1 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ InRelease
Get:2 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Release [2119 B]
Get:2 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Release [2119 B]
Get:3 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Release.gpg [299 B]
Get:3 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Release.gpg [299 B]
Get:4 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Sources [473 B]
Get:5 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ Packages [711 B]
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

┌──────────────────────────────────────────────────────────────────────────────┐
│ Install vim build dependencies (apt-based resolver)                          │
└──────────────────────────────────────────────────────────────────────────────┘

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  autoconf bsdmainutils ca-certificates dbus dbus-x11 debhelper
  dh-strip-nondeterminism file fontconfig fontconfig-config fonts-dejavu-core
  gconf-service gconf2 gconf2-common gettext gettext-base ghostscript
  gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gconf-2.0 gir1.2-gdkpixbuf-2.0
  gir1.2-glib-2.0 gir1.2-gnomekeyring-1.0 gir1.2-gtk-2.0 gir1.2-pango-1.0
  gnome-mime-data groff-base gsfonts icu-devtools intltool-debian libacl1-dev
  libarchive-zip-perl libart-2.0-2 libart-2.0-dev libasound2 libasound2-data
  libatk1.0-0 libatk1.0-data libatk1.0-dev libattr1-dev libavahi-client-dev
  libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3
  libavahi-glib-dev libavahi-glib1 libbonobo2-0 libbonobo2-common
  libbonobo2-dev libbonoboui2-0 libbonoboui2-common libbonoboui2-dev
  libcairo-gobject2 libcairo-script-interpreter2 libcairo2 libcairo2-dev
  libcanberra-dev libcanberra0 libcap-ng0 libcroco3 libcups2 libcupsfilters1
  libcupsimage2 libdatrie1 libdbus-1-dev libdbus-glib-1-2 libelf1 libexpat1
  libexpat1-dev libffi6 libfile-stripnondeterminism-perl libfontconfig1
  libfontconfig1-dev libfreetype6 libfreetype6-dev libgail-common libgail-dev
  libgail18 libgconf-2-4 libgconf2-dev libgdk-pixbuf2.0-0
  libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgirepository-1.0-1
  libglade2-0 libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev
  libgmp-dev libgmpxx4ldbl libgnome-2-0 libgnome-keyring-common
  libgnome-keyring-dev libgnome-keyring0 libgnome2-common libgnome2-dev
  libgnomecanvas2-0 libgnomecanvas2-common libgnomecanvas2-dev libgnomeui-0
  libgnomeui-common libgnomeui-dev libgnomevfs2-0 libgnomevfs2-common
  libgnomevfs2-dev libgnutls-deb0-28 libgnutls-openssl27 libgnutls28-dev
  libgnutlsxx28 libgpm-dev libgpm2 libgraphite2-3 libgs9 libgs9-common
  libgssapi-krb5-2 libgtk2.0-0 libgtk2.0-common libgtk2.0-dev libharfbuzz-dev
  libharfbuzz-gobject0 libharfbuzz-icu0 libharfbuzz0b libhogweed4 libice-dev
  libice6 libicu-dev libicu55 libidl-2-0 libidl-dev libidn11 libijs-0.35
  libjbig0 libjbig2dec0 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3
  libkrb5support0 liblcms2-2 libldap-2.4-2 libltdl7 liblua5.2-0 liblua5.2-dev
  liblzo2-2 libmagic1 libnettle6 libogg0 libopenjpeg5 liborbit-2-0 liborbit2
  liborbit2-dev libp11-kit-dev libp11-kit0 libpango-1.0-0 libpango1.0-dev
  libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0 libpaper1
  libpcre16-3 libpcre3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libperl-dev
  libperl5.22 libpipeline1 libpixman-1-0 libpixman-1-dev libpng12-dev
  libpoppler-glib8 libpoppler57 libpopt-dev libpopt0 libpthread-stubs0-dev
  libpython-dev libpython-stdlib libpython2.7 libpython2.7-dev
  libpython2.7-minimal libpython2.7-stdlib libreadline-dev libreadline6-dev
  libruby2.2 libsasl2-2 libsasl2-modules-db libselinux1-dev libsepol1-dev
  libsigsegv2 libsm-dev libsm6 libsqlite3-0 libssl1.0.2 libtasn1-6
  libtasn1-6-dev libtcl8.6 libtdb1 libthai-data libthai0 libtiff5
  libtimedate-perl libtinfo-dev libtrio2 libunistring0 libvorbis0a
  libvorbisfile3 libx11-6 libx11-data libx11-dev libxau-dev libxau6 libxaw7
  libxaw7-dev libxcb-render0 libxcb-render0-dev libxcb-shm0 libxcb-shm0-dev
  libxcb1 libxcb1-dev libxcomposite-dev libxcomposite1 libxcursor-dev
  libxcursor1 libxdamage-dev libxdamage1 libxdmcp-dev libxdmcp6 libxext-dev
  libxext6 libxfixes-dev libxfixes3 libxft-dev libxft2 libxi-dev libxi6
  libxinerama-dev libxinerama1 libxml2 libxml2-dev libxml2-utils libxmu-dev
  libxmu-headers libxmu6 libxpm-dev libxpm4 libxrandr-dev libxrandr2
  libxrender-dev libxrender1 libxt-dev libxt6 libyaml-0-2 lua5.2 m4 man-db
  mime-support nettle-dev openssl orbit2 pdf2svg perl perl-base
  perl-modules-5.22 pkg-config po-debconf poppler-data psmisc python
  python-dev python-minimal python2.7 python2.7-dev python2.7-minimal ruby
  ruby-dev ruby-minitest ruby-power-assert ruby-test-unit ruby2.2 ruby2.2-dev
  rubygems-integration shared-mime-info tcl tcl-dev tcl8.6 tcl8.6-dev ucf
  x11-common x11proto-composite-dev x11proto-core-dev x11proto-damage-dev
  x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev
  x11proto-render-dev x11proto-xext-dev x11proto-xinerama-dev
  xorg-sgml-doctools xtrans-dev zlib1g-dev
Suggested packages:
  autoconf-archive gnu-standards autoconf-doc libtool wamerican | wordlist
  whois vacation dh-make gconf-defaults-service gettext-doc autopoint
  libasprintf-dev libgettextpo-dev ghostscript-x groff libasound2-plugins
  alsa-utils libbonobo2-bin libcairo2-doc libcanberra-gtk0 libcanberra-pulse
  cups-common libgail-doc libglib2.0-doc gmp-doc libgmp10-doc libmpfr-dev
  gnome-keyring desktop-base libgnome2-doc libgnomecanvas2-doc
  gnome-icon-theme libgnomeui-doc libgnomevfs2-bin gnutls-bin gnutls-doc
  guile-gnutls gpm krb5-doc krb5-user librsvg2-common gvfs libgtk2.0-doc
  libice-doc icu-doc liblcms2-utils imagemagick libpango1.0-doc readline-doc
  libsm-doc libxaw-doc libxcb-doc libxext-doc libxt-doc less www-browser
  perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl
  libmail-box-perl poppler-utils fonts-japanese-mincho | fonts-ipafont-mincho
  fonts-japanese-gothic | fonts-ipafont-gothic fonts-arphic-ukai
  fonts-arphic-uming fonts-nanum python-doc python-tk python2.7-doc
  binfmt-support ri bundler tcl-doc tcl-tclreadline tcl8.6-doc
Recommended packages:
  automake | automaken curl | wget | lynx-cur libgconf2-doc xdg-user-dirs
  libgnomevfs2-extra fonts-droid hicolor-icon-theme libgtk2.0-bin krb5-locales
  libtool-bin libpaper-utils libsasl2-modules libtasn1-doc libx11-doc xml-core
  netbase rename libmail-sendmail-perl libjs-jquery fonts-lato
The following NEW packages will be installed:
  autoconf bsdmainutils ca-certificates dbus dbus-x11 debhelper
  dh-strip-nondeterminism file fontconfig fontconfig-config fonts-dejavu-core
  gconf-service gconf2 gconf2-common gettext gettext-base ghostscript
  gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gconf-2.0 gir1.2-gdkpixbuf-2.0
  gir1.2-glib-2.0 gir1.2-gnomekeyring-1.0 gir1.2-gtk-2.0 gir1.2-pango-1.0
  gnome-mime-data groff-base gsfonts icu-devtools intltool-debian libacl1-dev
  libarchive-zip-perl libart-2.0-2 libart-2.0-dev libasound2 libasound2-data
  libatk1.0-0 libatk1.0-data libatk1.0-dev libattr1-dev libavahi-client-dev
  libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3
  libavahi-glib-dev libavahi-glib1 libbonobo2-0 libbonobo2-common
  libbonobo2-dev libbonoboui2-0 libbonoboui2-common libbonoboui2-dev
  libcairo-gobject2 libcairo-script-interpreter2 libcairo2 libcairo2-dev
  libcanberra-dev libcanberra0 libcap-ng0 libcroco3 libcups2 libcupsfilters1
  libcupsimage2 libdatrie1 libdbus-1-dev libdbus-glib-1-2 libelf1 libexpat1
  libexpat1-dev libffi6 libfile-stripnondeterminism-perl libfontconfig1
  libfontconfig1-dev libfreetype6 libfreetype6-dev libgail-common libgail-dev
  libgail18 libgconf-2-4 libgconf2-dev libgdk-pixbuf2.0-0
  libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgirepository-1.0-1
  libglade2-0 libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev
  libgmp-dev libgmpxx4ldbl libgnome-2-0 libgnome-keyring-common
  libgnome-keyring-dev libgnome-keyring0 libgnome2-common libgnome2-dev
  libgnomecanvas2-0 libgnomecanvas2-common libgnomecanvas2-dev libgnomeui-0
  libgnomeui-common libgnomeui-dev libgnomevfs2-0 libgnomevfs2-common
  libgnomevfs2-dev libgnutls-deb0-28 libgnutls-openssl27 libgnutls28-dev
  libgnutlsxx28 libgpm-dev libgpm2 libgraphite2-3 libgs9 libgs9-common
  libgssapi-krb5-2 libgtk2.0-0 libgtk2.0-common libgtk2.0-dev libharfbuzz-dev
  libharfbuzz-gobject0 libharfbuzz-icu0 libharfbuzz0b libhogweed4 libice-dev
  libice6 libicu-dev libicu55 libidl-2-0 libidl-dev libidn11 libijs-0.35
  libjbig0 libjbig2dec0 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3
  libkrb5support0 liblcms2-2 libldap-2.4-2 libltdl7 liblua5.2-0 liblua5.2-dev
  liblzo2-2 libmagic1 libnettle6 libogg0 libopenjpeg5 liborbit-2-0 liborbit2
  liborbit2-dev libp11-kit-dev libp11-kit0 libpango-1.0-0 libpango1.0-dev
  libpangocairo-1.0-0 libpangoft2-1.0-0 libpangoxft-1.0-0 libpaper1
  libpcre16-3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libperl-dev libpipeline1
  libpixman-1-0 libpixman-1-dev libpng12-dev libpoppler-glib8 libpoppler57
  libpopt-dev libpopt0 libpthread-stubs0-dev libpython-dev libpython-stdlib
  libpython2.7 libpython2.7-dev libpython2.7-minimal libpython2.7-stdlib
  libreadline-dev libreadline6-dev libruby2.2 libsasl2-2 libsasl2-modules-db
  libselinux1-dev libsepol1-dev libsigsegv2 libsm-dev libsm6 libsqlite3-0
  libssl1.0.2 libtasn1-6 libtasn1-6-dev libtcl8.6 libtdb1 libthai-data
  libthai0 libtiff5 libtimedate-perl libtinfo-dev libtrio2 libunistring0
  libvorbis0a libvorbisfile3 libx11-6 libx11-data libx11-dev libxau-dev
  libxau6 libxaw7 libxaw7-dev libxcb-render0 libxcb-render0-dev libxcb-shm0
  libxcb-shm0-dev libxcb1 libxcb1-dev libxcomposite-dev libxcomposite1
  libxcursor-dev libxcursor1 libxdamage-dev libxdamage1 libxdmcp-dev libxdmcp6
  libxext-dev libxext6 libxfixes-dev libxfixes3 libxft-dev libxft2 libxi-dev
  libxi6 libxinerama-dev libxinerama1 libxml2 libxml2-dev libxml2-utils
  libxmu-dev libxmu-headers libxmu6 libxpm-dev libxpm4 libxrandr-dev
  libxrandr2 libxrender-dev libxrender1 libxt-dev libxt6 libyaml-0-2 lua5.2 m4
  man-db mime-support nettle-dev openssl orbit2 pdf2svg pkg-config po-debconf
  poppler-data psmisc python python-dev python-minimal python2.7 python2.7-dev
  python2.7-minimal ruby ruby-dev ruby-minitest ruby-power-assert
  ruby-test-unit ruby2.2 ruby2.2-dev rubygems-integration
  sbuild-build-depends-vim-dummy shared-mime-info tcl tcl-dev tcl8.6
  tcl8.6-dev ucf x11-common x11proto-composite-dev x11proto-core-dev
  x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev
  x11proto-randr-dev x11proto-render-dev x11proto-xext-dev
  x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev zlib1g-dev
The following packages will be upgraded:
  libpcre3 libperl5.22 perl perl-base perl-modules-5.22
5 upgraded, 299 newly installed, 0 to remove and 14 not upgraded.
Need to get 146 MB/146 MB of archives.
After this operation, 437 MB of additional disk space will be used.
Get:1 file:/«BUILDDIR»/resolver-bqLn07/apt_archive ./ sbuild-build-depends-vim-dummy 0.invalid.0 [952 B]
Get:2 http://172.17.0.1/private stretch-staging/main armhf libperl5.22 armhf 5.22.1-4 [2693 kB]
Get:3 http://172.17.0.1/private stretch-staging/main armhf perl armhf 5.22.1-4 [237 kB]
Get:4 http://172.17.0.1/private stretch-staging/main armhf perl-base armhf 5.22.1-4 [1145 kB]
Get:5 http://172.17.0.1/private stretch-staging/main armhf perl-modules-5.22 all 5.22.1-4 [2695 kB]
Get:6 http://172.17.0.1/private stretch-staging/main armhf libpcre3 armhf 2:8.38-1 [308 kB]
Get:7 http://172.17.0.1/private stretch-staging/main armhf libpopt0 armhf 1.16-10 [46.2 kB]
Get:8 http://172.17.0.1/private stretch-staging/main armhf groff-base armhf 1.22.3-5 [1083 kB]
Get:9 http://172.17.0.1/private stretch-staging/main armhf bsdmainutils armhf 9.0.6 [177 kB]
Get:10 http://172.17.0.1/private stretch-staging/main armhf libpipeline1 armhf 1.4.1-2 [23.7 kB]
Get:11 http://172.17.0.1/private stretch-staging/main armhf man-db armhf 2.7.5-1 [975 kB]
Get:12 http://172.17.0.1/private stretch-staging/main armhf libgpm2 armhf 1.20.4-6.1 [35.1 kB]
Get:13 http://172.17.0.1/private stretch-staging/main armhf libpython2.7-minimal armhf 2.7.11-2 [380 kB]
Get:14 http://172.17.0.1/private stretch-staging/main armhf python2.7-minimal armhf 2.7.11-2 [1081 kB]
Get:15 http://172.17.0.1/private stretch-staging/main armhf python-minimal armhf 2.7.11-1 [40.0 kB]
Get:16 http://172.17.0.1/private stretch-staging/main armhf mime-support all 3.59 [36.4 kB]
Get:17 http://172.17.0.1/private stretch-staging/main armhf libexpat1 armhf 2.1.0-7 [59.8 kB]
Get:18 http://172.17.0.1/private stretch-staging/main armhf libffi6 armhf 3.2.1-4 [18.5 kB]
Get:19 http://172.17.0.1/private stretch-staging/main armhf libsqlite3-0 armhf 3.9.2-1 [404 kB]
Get:20 http://172.17.0.1/private stretch-staging/main armhf libssl1.0.2 armhf 1.0.2e-1 [883 kB]
Get:21 http://172.17.0.1/private stretch-staging/main armhf libpython2.7-stdlib armhf 2.7.11-2 [1836 kB]
Get:22 http://172.17.0.1/private stretch-staging/main armhf python2.7 armhf 2.7.11-2 [266 kB]
Get:23 http://172.17.0.1/private stretch-staging/main armhf libpython-stdlib armhf 2.7.11-1 [19.5 kB]
Get:24 http://172.17.0.1/private stretch-staging/main armhf python armhf 2.7.11-1 [150 kB]
Get:25 http://172.17.0.1/private stretch-staging/main armhf libfreetype6 armhf 2.6.1-0.1 [411 kB]
Get:26 http://172.17.0.1/private stretch-staging/main armhf ucf all 3.0031 [68.9 kB]
Get:27 http://172.17.0.1/private stretch-staging/main armhf fonts-dejavu-core all 2.35-1 [1064 kB]
Get:28 http://172.17.0.1/private stretch-staging/main armhf fontconfig-config all 2.11.0-6.3 [273 kB]
Get:29 http://172.17.0.1/private stretch-staging/main armhf libfontconfig1 armhf 2.11.0-6.3 [311 kB]
Get:30 http://172.17.0.1/private stretch-staging/main armhf fontconfig armhf 2.11.0-6.3 [402 kB]
Get:31 http://172.17.0.1/private stretch-staging/main armhf libart-2.0-2 armhf 2.3.21-2 [63.8 kB]
Get:32 http://172.17.0.1/private stretch-staging/main armhf libbonobo2-common all 2.32.1-3 [243 kB]
Get:33 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-0 armhf 2.46.2-3 [2482 kB]
Get:34 http://172.17.0.1/private stretch-staging/main armhf liborbit-2-0 armhf 1:2.14.19-1+b1 [199 kB]
Get:35 http://172.17.0.1/private stretch-staging/main armhf libicu55 armhf 55.1-7 [7380 kB]
Get:36 http://172.17.0.1/private stretch-staging/main armhf libxml2 armhf 2.9.3+dfsg1-1 [800 kB]
Get:37 http://172.17.0.1/private stretch-staging/main armhf libbonobo2-0 armhf 2.32.1-3 [236 kB]
Get:38 http://172.17.0.1/private stretch-staging/main armhf libdbus-glib-1-2 armhf 0.102-1 [190 kB]
Get:39 http://172.17.0.1/private stretch-staging/main armhf gconf2-common all 3.2.6-3 [1040 kB]
Get:40 http://172.17.0.1/private stretch-staging/main armhf libgconf-2-4 armhf 3.2.6-3 [413 kB]
Get:41 http://172.17.0.1/private stretch-staging/main armhf libatk1.0-data all 2.18.0-1 [183 kB]
Get:42 http://172.17.0.1/private stretch-staging/main armhf libatk1.0-0 armhf 2.18.0-1 [84.4 kB]
Get:43 http://172.17.0.1/private stretch-staging/main armhf libpixman-1-0 armhf 0.33.4-1 [453 kB]
Get:44 http://172.17.0.1/private stretch-staging/main armhf libxau6 armhf 1:1.0.8-1 [19.9 kB]
Get:45 http://172.17.0.1/private stretch-staging/main armhf libxdmcp6 armhf 1:1.1.2-1 [25.0 kB]
Get:46 http://172.17.0.1/private stretch-staging/main armhf libxcb1 armhf 1.10-3+b1 [40.6 kB]
Get:47 http://172.17.0.1/private stretch-staging/main armhf libx11-data all 2:1.6.3-1 [128 kB]
Get:48 http://172.17.0.1/private stretch-staging/main armhf libx11-6 armhf 2:1.6.3-1 [678 kB]
Get:49 http://172.17.0.1/private stretch-staging/main armhf libxcb-render0 armhf 1.10-3+b1 [16.9 kB]
Get:50 http://172.17.0.1/private stretch-staging/main armhf libxcb-shm0 armhf 1.10-3+b1 [11.4 kB]
Get:51 http://172.17.0.1/private stretch-staging/main armhf libxext6 armhf 2:1.3.3-1 [48.1 kB]
Get:52 http://172.17.0.1/private stretch-staging/main armhf libxrender1 armhf 1:0.9.9-2 [28.9 kB]
Get:53 http://172.17.0.1/private stretch-staging/main armhf libcairo2 armhf 1.14.6-1 [688 kB]
Get:54 http://172.17.0.1/private stretch-staging/main armhf libjpeg62-turbo armhf 1:1.4.1-2 [103 kB]
Get:55 http://172.17.0.1/private stretch-staging/main armhf libjbig0 armhf 2.1-3.1 [27.5 kB]
Get:56 http://172.17.0.1/private stretch-staging/main armhf libtiff5 armhf 4.0.6-1 [201 kB]
Get:57 http://172.17.0.1/private stretch-staging/main armhf libgdk-pixbuf2.0-common all 2.32.3-1 [310 kB]
Get:58 http://172.17.0.1/private stretch-staging/main armhf libgdk-pixbuf2.0-0 armhf 2.32.3-1 [145 kB]
Get:59 http://172.17.0.1/private stretch-staging/main armhf libgtk2.0-common all 2.24.29-1 [3188 kB]
Get:60 http://172.17.0.1/private stretch-staging/main armhf libavahi-common-data armhf 0.6.32~rc+dfsg-1 [99.5 kB]
Get:61 http://172.17.0.1/private stretch-staging/main armhf libavahi-common3 armhf 0.6.32~rc+dfsg-1 [48.1 kB]
Get:62 http://172.17.0.1/private stretch-staging/main armhf libavahi-client3 armhf 0.6.32~rc+dfsg-1 [50.7 kB]
Get:63 http://172.17.0.1/private stretch-staging/main armhf libnettle6 armhf 3.1.1-4 [200 kB]
Get:64 http://172.17.0.1/private stretch-staging/main armhf libhogweed4 armhf 3.1.1-4 [126 kB]
Get:65 http://172.17.0.1/private stretch-staging/main armhf libp11-kit0 armhf 0.23.2-3 [93.3 kB]
Get:66 http://172.17.0.1/private stretch-staging/main armhf libtasn1-6 armhf 4.7-3 [44.4 kB]
Get:67 http://172.17.0.1/private stretch-staging/main armhf libgnutls-deb0-28 armhf 3.3.20-1 [649 kB]
Get:68 http://172.17.0.1/private stretch-staging/main armhf libkeyutils1 armhf 1.5.9-8 [11.5 kB]
Get:69 http://172.17.0.1/private stretch-staging/main armhf libkrb5support0 armhf 1.13.2+dfsg-4+b1 [56.5 kB]
Get:70 http://172.17.0.1/private stretch-staging/main armhf libk5crypto3 armhf 1.13.2+dfsg-4+b1 [110 kB]
Get:71 http://172.17.0.1/private stretch-staging/main armhf libkrb5-3 armhf 1.13.2+dfsg-4+b1 [261 kB]
Get:72 http://172.17.0.1/private stretch-staging/main armhf libgssapi-krb5-2 armhf 1.13.2+dfsg-4+b1 [129 kB]
Get:73 http://172.17.0.1/private stretch-staging/main armhf libcups2 armhf 2.1.2-1 [266 kB]
Get:74 http://172.17.0.1/private stretch-staging/main armhf libthai-data all 0.1.24-1 [163 kB]
Get:75 http://172.17.0.1/private stretch-staging/main armhf libdatrie1 armhf 0.2.10-1 [32.2 kB]
Get:76 http://172.17.0.1/private stretch-staging/main armhf libthai0 armhf 0.1.24-1 [46.2 kB]
Get:77 http://172.17.0.1/private stretch-staging/main armhf libpango-1.0-0 armhf 1.38.1-1 [292 kB]
Get:78 http://172.17.0.1/private stretch-staging/main armhf libgraphite2-3 armhf 1.3.4-2 [61.5 kB]
Get:79 http://172.17.0.1/private stretch-staging/main armhf libharfbuzz0b armhf 1.0.1-1+b1 [501 kB]
Get:80 http://172.17.0.1/private stretch-staging/main armhf libpangoft2-1.0-0 armhf 1.38.1-1 [229 kB]
Get:81 http://172.17.0.1/private stretch-staging/main armhf libpangocairo-1.0-0 armhf 1.38.1-1 [218 kB]
Get:82 http://172.17.0.1/private stretch-staging/main armhf libxcomposite1 armhf 1:0.4.4-1 [16.8 kB]
Get:83 http://172.17.0.1/private stretch-staging/main armhf libxfixes3 armhf 1:5.0.1-2+b2 [19.9 kB]
Get:84 http://172.17.0.1/private stretch-staging/main armhf libxcursor1 armhf 1:1.1.14-1+b1 [31.9 kB]
Get:85 http://172.17.0.1/private stretch-staging/main armhf libxdamage1 armhf 1:1.1.4-2+b1 [14.1 kB]
Get:86 http://172.17.0.1/private stretch-staging/main armhf libxi6 armhf 2:1.7.5-1 [75.4 kB]
Get:87 http://172.17.0.1/private stretch-staging/main armhf libxinerama1 armhf 2:1.1.3-1+b1 [16.4 kB]
Get:88 http://172.17.0.1/private stretch-staging/main armhf libxrandr2 armhf 2:1.5.0-1 [33.3 kB]
Get:89 http://172.17.0.1/private stretch-staging/main armhf shared-mime-info armhf 1.5-2 [669 kB]
Get:90 http://172.17.0.1/private stretch-staging/main armhf libgtk2.0-0 armhf 2.24.29-1 [2009 kB]
Get:91 http://172.17.0.1/private stretch-staging/main armhf libglade2-0 armhf 1:2.6.4-2 [76.2 kB]
Get:92 http://172.17.0.1/private stretch-staging/main armhf libsasl2-modules-db armhf 2.1.26.dfsg1-14+b1 [65.8 kB]
Get:93 http://172.17.0.1/private stretch-staging/main armhf libsasl2-2 armhf 2.1.26.dfsg1-14+b1 [97.1 kB]
Get:94 http://172.17.0.1/private stretch-staging/main armhf libldap-2.4-2 armhf 2.4.42+dfsg-2+rpi1+b1 [199 kB]
Get:95 http://172.17.0.1/private stretch-staging/main armhf gconf-service armhf 3.2.6-3 [404 kB]
Get:96 http://172.17.0.1/private stretch-staging/main armhf libasound2-data all 1.0.29-1 [67.1 kB]
Get:97 http://172.17.0.1/private stretch-staging/main armhf libasound2 armhf 1.0.29-1 [324 kB]
Get:98 http://172.17.0.1/private stretch-staging/main armhf libltdl7 armhf 2.4.2-1.11 [42.5 kB]
Get:99 http://172.17.0.1/private stretch-staging/main armhf libtdb1 armhf 1.3.8-1 [36.7 kB]
Get:100 http://172.17.0.1/private stretch-staging/main armhf libogg0 armhf 1.3.2-1 [17.2 kB]
Get:101 http://172.17.0.1/private stretch-staging/main armhf libvorbis0a armhf 1.3.4-3 [81.4 kB]
Get:102 http://172.17.0.1/private stretch-staging/main armhf libvorbisfile3 armhf 1.3.4-3 [22.6 kB]
Get:103 http://172.17.0.1/private stretch-staging/main armhf libcanberra0 armhf 0.30-2.1+b5 [36.0 kB]
Get:104 http://172.17.0.1/private stretch-staging/main armhf libavahi-glib1 armhf 0.6.32~rc+dfsg-1 [36.8 kB]
Get:105 http://172.17.0.1/private stretch-staging/main armhf psmisc armhf 22.21-2.1 [117 kB]
Get:106 http://172.17.0.1/private stretch-staging/main armhf libcap-ng0 armhf 0.7.7-1 [12.4 kB]
Get:107 http://172.17.0.1/private stretch-staging/main armhf dbus armhf 1.10.6-1 [186 kB]
Get:108 http://172.17.0.1/private stretch-staging/main armhf dbus-x11 armhf 1.10.6-1 [83.3 kB]
Get:109 http://172.17.0.1/private stretch-staging/main armhf gconf2 armhf 3.2.6-3 [419 kB]
Get:110 http://172.17.0.1/private stretch-staging/main armhf gnome-mime-data all 2.18.0-1 [725 kB]
Get:111 http://172.17.0.1/private stretch-staging/main armhf libgnomevfs2-common all 1:2.24.4-6.1 [760 kB]
Get:112 http://172.17.0.1/private stretch-staging/main armhf libgnomevfs2-0 armhf 1:2.24.4-6.1 [455 kB]
Get:113 http://172.17.0.1/private stretch-staging/main armhf libgnome2-common all 2.32.1-5 [936 kB]
Get:114 http://172.17.0.1/private stretch-staging/main armhf libgnome-2-0 armhf 2.32.1-5 [463 kB]
Get:115 http://172.17.0.1/private stretch-staging/main armhf libgnome-keyring-common all 3.12.0-1 [59.5 kB]
Get:116 http://172.17.0.1/private stretch-staging/main armhf libgnome-keyring0 armhf 3.12.0-1+b1 [79.9 kB]
Get:117 http://172.17.0.1/private stretch-staging/main armhf libgail18 armhf 2.24.29-1 [547 kB]
Get:118 http://172.17.0.1/private stretch-staging/main armhf libgnomecanvas2-common all 2.30.3-2 [132 kB]
Get:119 http://172.17.0.1/private stretch-staging/main armhf libgnomecanvas2-0 armhf 2.30.3-2 [94.7 kB]
Get:120 http://172.17.0.1/private stretch-staging/main armhf x11-common all 1:7.7+12 [251 kB]
Get:121 http://172.17.0.1/private stretch-staging/main armhf libice6 armhf 2:1.0.9-1+b1 [51.9 kB]
Get:122 http://172.17.0.1/private stretch-staging/main armhf libsm6 armhf 2:1.2.2-1+b1 [31.2 kB]
Get:123 http://172.17.0.1/private stretch-staging/main armhf libbonoboui2-common all 2.24.5-3 [192 kB]
Get:124 http://172.17.0.1/private stretch-staging/main armhf libbonoboui2-0 armhf 2.24.5-3 [181 kB]
Get:125 http://172.17.0.1/private stretch-staging/main armhf libgnomeui-common all 2.24.5-3 [514 kB]
Get:126 http://172.17.0.1/private stretch-staging/main armhf libgnomeui-0 armhf 2.24.5-3 [285 kB]
Get:127 http://172.17.0.1/private stretch-staging/main armhf liblcms2-2 armhf 2.6-3 [113 kB]
Get:128 http://172.17.0.1/private stretch-staging/main armhf liblzo2-2 armhf 2.08-1.2 [47.6 kB]
Get:129 http://172.17.0.1/private stretch-staging/main armhf libpaper1 armhf 1.1.24+nmu4 [21.4 kB]
Get:130 http://172.17.0.1/private stretch-staging/main armhf libpcrecpp0v5 armhf 2:8.38-1 [148 kB]
Get:131 http://172.17.0.1/private stretch-staging/main armhf libsigsegv2 armhf 2.10-4 [28.2 kB]
Get:132 http://172.17.0.1/private stretch-staging/main armhf libtcl8.6 armhf 8.6.4+dfsg-2 [866 kB]
Get:133 http://172.17.0.1/private stretch-staging/main armhf libunistring0 armhf 0.9.3-5.2 [253 kB]
Get:134 http://172.17.0.1/private stretch-staging/main armhf libxft2 armhf 2.3.2-1 [48.3 kB]
Get:135 http://172.17.0.1/private stretch-staging/main armhf libyaml-0-2 armhf 0.1.6-3 [41.5 kB]
Get:136 http://172.17.0.1/private stretch-staging/main armhf poppler-data all 0.4.7-7 [1466 kB]
Get:137 http://172.17.0.1/private stretch-staging/main armhf libtrio2 armhf 1.16+dfsg1-3 [39.0 kB]
Get:138 http://172.17.0.1/private stretch-staging/main armhf libmagic1 armhf 1:5.25-2 [250 kB]
Get:139 http://172.17.0.1/private stretch-staging/main armhf file armhf 1:5.25-2 [61.2 kB]
Get:140 http://172.17.0.1/private stretch-staging/main armhf gettext-base armhf 0.19.7-2 [111 kB]
Get:141 http://172.17.0.1/private stretch-staging/main armhf libgnutls-openssl27 armhf 3.3.20-1 [160 kB]
Get:142 http://172.17.0.1/private stretch-staging/main armhf libidn11 armhf 1.32-3 [110 kB]
Get:143 http://172.17.0.1/private stretch-staging/main armhf libpython2.7 armhf 2.7.11-2 [909 kB]
Get:144 http://172.17.0.1/private stretch-staging/main armhf m4 armhf 1.4.17-5 [239 kB]
Get:145 http://172.17.0.1/private stretch-staging/main armhf autoconf all 2.69-9 [338 kB]
Get:146 http://172.17.0.1/private stretch-staging/main armhf openssl armhf 1.0.2e-1 [662 kB]
Get:147 http://172.17.0.1/private stretch-staging/main armhf ca-certificates all 20160104 [200 kB]
Get:148 http://172.17.0.1/private stretch-staging/main armhf libcroco3 armhf 0.6.11-1 [131 kB]
Get:149 http://172.17.0.1/private stretch-staging/main armhf gettext armhf 0.19.7-2 [1400 kB]
Get:150 http://172.17.0.1/private stretch-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:151 http://172.17.0.1/private stretch-staging/main armhf po-debconf all 1.0.19 [249 kB]
Get:152 http://172.17.0.1/private stretch-staging/main armhf libarchive-zip-perl all 1.56-2 [94.9 kB]
Get:153 http://172.17.0.1/private stretch-staging/main armhf libfile-stripnondeterminism-perl all 0.014-1 [10.6 kB]
Get:154 http://172.17.0.1/private stretch-staging/main armhf libtimedate-perl all 2.3000-2 [42.2 kB]
Get:155 http://172.17.0.1/private stretch-staging/main armhf dh-strip-nondeterminism all 0.014-1 [7472 B]
Get:156 http://172.17.0.1/private stretch-staging/main armhf debhelper all 9.20151225 [830 kB]
Get:157 http://172.17.0.1/private stretch-staging/main armhf libcupsfilters1 armhf 1.4.0-1 [107 kB]
Get:158 http://172.17.0.1/private stretch-staging/main armhf libcupsimage2 armhf 2.1.2-1 [116 kB]
Get:159 http://172.17.0.1/private stretch-staging/main armhf libijs-0.35 armhf 0.35-11 [16.1 kB]
Get:160 http://172.17.0.1/private stretch-staging/main armhf libjbig2dec0 armhf 0.12+20150918-1 [50.7 kB]
Get:161 http://172.17.0.1/private stretch-staging/main armhf libgs9-common all 9.16~dfsg-2 [2983 kB]
Get:162 http://172.17.0.1/private stretch-staging/main armhf libgs9 armhf 9.16~dfsg-2 [1699 kB]
Get:163 http://172.17.0.1/private stretch-staging/main armhf gsfonts all 1:8.11+urwcyr1.0.7~pre44-4.2 [3364 kB]
Get:164 http://172.17.0.1/private stretch-staging/main armhf ghostscript armhf 9.16~dfsg-2 [92.2 kB]
Get:165 http://172.17.0.1/private stretch-staging/main armhf libgirepository-1.0-1 armhf 1.46.0-3 [83.4 kB]
Get:166 http://172.17.0.1/private stretch-staging/main armhf gir1.2-glib-2.0 armhf 1.46.0-3 [143 kB]
Get:167 http://172.17.0.1/private stretch-staging/main armhf gir1.2-atk-1.0 armhf 2.18.0-1 [67.4 kB]
Get:168 http://172.17.0.1/private stretch-staging/main armhf libcairo-gobject2 armhf 1.14.6-1 [332 kB]
Get:169 http://172.17.0.1/private stretch-staging/main armhf gir1.2-freedesktop armhf 1.46.0-3 [22.5 kB]
Get:170 http://172.17.0.1/private stretch-staging/main armhf gir1.2-gconf-2.0 armhf 3.2.6-3 [362 kB]
Get:171 http://172.17.0.1/private stretch-staging/main armhf gir1.2-gdkpixbuf-2.0 armhf 2.32.3-1 [19.2 kB]
Get:172 http://172.17.0.1/private stretch-staging/main armhf gir1.2-gnomekeyring-1.0 armhf 3.12.0-1+b1 [40.4 kB]
Get:173 http://172.17.0.1/private stretch-staging/main armhf libpangoxft-1.0-0 armhf 1.38.1-1 [214 kB]
Get:174 http://172.17.0.1/private stretch-staging/main armhf gir1.2-pango-1.0 armhf 1.38.1-1 [222 kB]
Get:175 http://172.17.0.1/private stretch-staging/main armhf gir1.2-gtk-2.0 armhf 2.24.29-1 [706 kB]
Get:176 http://172.17.0.1/private stretch-staging/main armhf icu-devtools armhf 55.1-7 [163 kB]
Get:177 http://172.17.0.1/private stretch-staging/main armhf pkg-config armhf 0.29-2 [58.8 kB]
Get:178 http://172.17.0.1/private stretch-staging/main armhf libart-2.0-dev armhf 2.3.21-2 [82.0 kB]
Get:179 http://172.17.0.1/private stretch-staging/main armhf libelf1 armhf 0.163-5.1 [162 kB]
Get:180 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-data all 2.46.2-3 [2418 kB]
Get:181 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-bin armhf 2.46.2-3 [1566 kB]
Get:182 http://172.17.0.1/private stretch-staging/main armhf libpcre16-3 armhf 2:8.38-1 [229 kB]
Get:183 http://172.17.0.1/private stretch-staging/main armhf libpcre32-3 armhf 2:8.38-1 [222 kB]
Get:184 http://172.17.0.1/private stretch-staging/main armhf libpcre3-dev armhf 2:8.38-1 [556 kB]
Get:185 http://172.17.0.1/private stretch-staging/main armhf zlib1g-dev armhf 1:1.2.8.dfsg-2+b1 [197 kB]
Get:186 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-dev armhf 2.46.2-3 [2715 kB]
Get:187 http://172.17.0.1/private stretch-staging/main armhf libatk1.0-dev armhf 2.18.0-1 [129 kB]
Get:188 http://172.17.0.1/private stretch-staging/main armhf libavahi-common-dev armhf 0.6.32~rc+dfsg-1 [62.0 kB]
Get:189 http://172.17.0.1/private stretch-staging/main armhf libdbus-1-dev armhf 1.10.6-1 [206 kB]
Get:190 http://172.17.0.1/private stretch-staging/main armhf libavahi-client-dev armhf 0.6.32~rc+dfsg-1 [55.8 kB]
Get:191 http://172.17.0.1/private stretch-staging/main armhf libavahi-glib-dev armhf 0.6.32~rc+dfsg-1 [36.9 kB]
Get:192 http://172.17.0.1/private stretch-staging/main armhf libidl-2-0 armhf 0.8.14-4 [111 kB]
Get:193 http://172.17.0.1/private stretch-staging/main armhf liborbit2 armhf 1:2.14.19-1+b1 [109 kB]
Get:194 http://172.17.0.1/private stretch-staging/main armhf libidl-dev armhf 0.8.14-4 [122 kB]
Get:195 http://172.17.0.1/private stretch-staging/main armhf orbit2 armhf 1:2.14.19-1+b1 [140 kB]
Get:196 http://172.17.0.1/private stretch-staging/main armhf liborbit2-dev armhf 1:2.14.19-1+b1 [309 kB]
Get:197 http://172.17.0.1/private stretch-staging/main armhf libpopt-dev armhf 1.16-10 [47.0 kB]
Get:198 http://172.17.0.1/private stretch-staging/main armhf libbonobo2-dev armhf 2.32.1-3 [581 kB]
Get:199 http://172.17.0.1/private stretch-staging/main armhf xorg-sgml-doctools all 1:1.11-1 [21.9 kB]
Get:200 http://172.17.0.1/private stretch-staging/main armhf x11proto-core-dev all 7.0.27-1 [729 kB]
Get:201 http://172.17.0.1/private stretch-staging/main armhf libxau-dev armhf 1:1.0.8-1 [23.0 kB]
Get:202 http://172.17.0.1/private stretch-staging/main armhf libxdmcp-dev armhf 1:1.1.2-1 [40.3 kB]
Get:203 http://172.17.0.1/private stretch-staging/main armhf x11proto-input-dev all 2.3.1-1 [157 kB]
Get:204 http://172.17.0.1/private stretch-staging/main armhf x11proto-kb-dev all 1.0.7-1 [233 kB]
Get:205 http://172.17.0.1/private stretch-staging/main armhf xtrans-dev all 1.3.5-1 [100 kB]
Get:206 http://172.17.0.1/private stretch-staging/main armhf libpthread-stubs0-dev armhf 0.3-4 [4042 B]
Get:207 http://172.17.0.1/private stretch-staging/main armhf libxcb1-dev armhf 1.10-3+b1 [79.5 kB]
Get:208 http://172.17.0.1/private stretch-staging/main armhf libx11-dev armhf 2:1.6.3-1 [749 kB]
Get:209 http://172.17.0.1/private stretch-staging/main armhf libpng12-dev armhf 1.2.54-1 [233 kB]
Get:210 http://172.17.0.1/private stretch-staging/main armhf libgdk-pixbuf2.0-dev armhf 2.32.3-1 [55.2 kB]
Get:211 http://172.17.0.1/private stretch-staging/main armhf libcairo-script-interpreter2 armhf 1.14.6-1 [360 kB]
Get:212 http://172.17.0.1/private stretch-staging/main armhf libexpat1-dev armhf 2.1.0-7 [114 kB]
Get:213 http://172.17.0.1/private stretch-staging/main armhf libfreetype6-dev armhf 2.6.1-0.1 [941 kB]
Get:214 http://172.17.0.1/private stretch-staging/main armhf libfontconfig1-dev armhf 2.11.0-6.3 [875 kB]
Get:215 http://172.17.0.1/private stretch-staging/main armhf x11proto-render-dev all 2:0.11.1-2 [20.8 kB]
Get:216 http://172.17.0.1/private stretch-staging/main armhf libxrender-dev armhf 1:0.9.9-2 [36.5 kB]
Get:217 http://172.17.0.1/private stretch-staging/main armhf x11proto-xext-dev all 7.3.0-1 [212 kB]
Get:218 http://172.17.0.1/private stretch-staging/main armhf libxext-dev armhf 2:1.3.3-1 [102 kB]
Get:219 http://172.17.0.1/private stretch-staging/main armhf libice-dev armhf 2:1.0.9-1+b1 [59.0 kB]
Get:220 http://172.17.0.1/private stretch-staging/main armhf libsm-dev armhf 2:1.2.2-1+b1 [33.5 kB]
Get:221 http://172.17.0.1/private stretch-staging/main armhf libpixman-1-dev armhf 0.33.4-1 [475 kB]
Get:222 http://172.17.0.1/private stretch-staging/main armhf libxcb-render0-dev armhf 1.10-3+b1 [22.3 kB]
Get:223 http://172.17.0.1/private stretch-staging/main armhf libxcb-shm0-dev armhf 1.10-3+b1 [12.8 kB]
Get:224 http://172.17.0.1/private stretch-staging/main armhf libcairo2-dev armhf 1.14.6-1 [812 kB]
Get:225 http://172.17.0.1/private stretch-staging/main armhf libharfbuzz-icu0 armhf 1.0.1-1+b1 [390 kB]
Get:226 http://172.17.0.1/private stretch-staging/main armhf libharfbuzz-gobject0 armhf 1.0.1-1+b1 [395 kB]
Get:227 http://172.17.0.1/private stretch-staging/main armhf libharfbuzz-dev armhf 1.0.1-1+b1 [548 kB]
Get:228 http://172.17.0.1/private stretch-staging/main armhf libxft-dev armhf 2.3.2-1 [59.1 kB]
Get:229 http://172.17.0.1/private stretch-staging/main armhf libpango1.0-dev armhf 1.38.1-1 [450 kB]
Get:230 http://172.17.0.1/private stretch-staging/main armhf x11proto-xinerama-dev all 1.2.1-2 [4938 B]
Get:231 http://172.17.0.1/private stretch-staging/main armhf libxinerama-dev armhf 2:1.1.3-1+b1 [18.7 kB]
Get:232 http://172.17.0.1/private stretch-staging/main armhf x11proto-fixes-dev all 1:5.0-2 [19.2 kB]
Get:233 http://172.17.0.1/private stretch-staging/main armhf libxfixes-dev armhf 1:5.0.1-2+b2 [21.9 kB]
Get:234 http://172.17.0.1/private stretch-staging/main armhf libxi-dev armhf 2:1.7.5-1 [233 kB]
Get:235 http://172.17.0.1/private stretch-staging/main armhf x11proto-randr-dev all 1.5.0-1 [49.7 kB]
Get:236 http://172.17.0.1/private stretch-staging/main armhf libxrandr-dev armhf 2:1.5.0-1 [41.0 kB]
Get:237 http://172.17.0.1/private stretch-staging/main armhf libxcursor-dev armhf 1:1.1.14-1+b1 [39.5 kB]
Get:238 http://172.17.0.1/private stretch-staging/main armhf x11proto-composite-dev all 1:0.4.2-2 [15.3 kB]
Get:239 http://172.17.0.1/private stretch-staging/main armhf libxcomposite-dev armhf 1:0.4.4-1 [20.5 kB]
Get:240 http://172.17.0.1/private stretch-staging/main armhf x11proto-damage-dev all 1:1.2.1-2 [11.8 kB]
Get:241 http://172.17.0.1/private stretch-staging/main armhf libxdamage-dev armhf 1:1.1.4-2+b1 [13.9 kB]
Get:242 http://172.17.0.1/private stretch-staging/main armhf libxml2-utils armhf 2.9.3+dfsg1-1 [101 kB]
Get:243 http://172.17.0.1/private stretch-staging/main armhf libgtk2.0-dev armhf 2.24.29-1 [2830 kB]
Get:244 http://172.17.0.1/private stretch-staging/main armhf libgail-common armhf 2.24.29-1 [621 kB]
Get:245 http://172.17.0.1/private stretch-staging/main armhf libgail-dev armhf 2.24.29-1 [548 kB]
Get:246 http://172.17.0.1/private stretch-staging/main armhf libgnomecanvas2-dev armhf 2.30.3-2 [114 kB]
Get:247 http://172.17.0.1/private stretch-staging/main armhf libgconf2-dev armhf 3.2.6-3 [433 kB]
Get:248 http://172.17.0.1/private stretch-staging/main armhf libgnutlsxx28 armhf 3.3.20-1 [12.5 kB]
Get:249 http://172.17.0.1/private stretch-staging/main armhf libgmpxx4ldbl armhf 2:6.1.0+dfsg-2 [21.4 kB]
Get:250 http://172.17.0.1/private stretch-staging/main armhf libgmp-dev armhf 2:6.1.0+dfsg-2 [560 kB]
Get:251 http://172.17.0.1/private stretch-staging/main armhf nettle-dev armhf 3.1.1-4 [1022 kB]
Get:252 http://172.17.0.1/private stretch-staging/main armhf libtasn1-6-dev armhf 4.7-3 [87.5 kB]
Get:253 http://172.17.0.1/private stretch-staging/main armhf libp11-kit-dev armhf 0.23.2-3 [64.2 kB]
Get:254 http://172.17.0.1/private stretch-staging/main armhf libgnutls28-dev armhf 3.3.20-1 [597 kB]
Get:255 http://172.17.0.1/private stretch-staging/main armhf libicu-dev armhf 55.1-7 [8339 kB]
Get:256 http://172.17.0.1/private stretch-staging/main armhf libxml2-dev armhf 2.9.3+dfsg1-1 [720 kB]
Get:257 http://172.17.0.1/private stretch-staging/main armhf libsepol1-dev armhf 2.4-2 [247 kB]
Get:258 http://172.17.0.1/private stretch-staging/main armhf libselinux1-dev armhf 2.4-3 [145 kB]
Get:259 http://172.17.0.1/private stretch-staging/main armhf libgnomevfs2-dev armhf 1:2.24.4-6.1 [471 kB]
Get:260 http://172.17.0.1/private stretch-staging/main armhf libcanberra-dev armhf 0.30-2.1+b5 [14.4 kB]
Get:261 http://172.17.0.1/private stretch-staging/main armhf libgnome2-dev armhf 2.32.1-5 [466 kB]
Get:262 http://172.17.0.1/private stretch-staging/main armhf libbonoboui2-dev armhf 2.24.5-3 [334 kB]
Get:263 http://172.17.0.1/private stretch-staging/main armhf libgnome-keyring-dev armhf 3.12.0-1+b1 [84.8 kB]
Get:264 http://172.17.0.1/private stretch-staging/main armhf libgnomeui-dev armhf 2.24.5-3 [337 kB]
Get:265 http://172.17.0.1/private stretch-staging/main armhf libgpm-dev armhf 1.20.4-6.1 [38.1 kB]
Get:266 http://172.17.0.1/private stretch-staging/main armhf liblua5.2-0 armhf 5.2.4-1 [82.9 kB]
Get:267 http://172.17.0.1/private stretch-staging/main armhf libtinfo-dev armhf 6.0+20151024-2 [65.8 kB]
Get:268 http://172.17.0.1/private stretch-staging/main armhf libreadline6-dev armhf 6.3-8+b3 [105 kB]
Get:269 http://172.17.0.1/private stretch-staging/main armhf libreadline-dev armhf 6.3-8+b3 [958 B]
Get:270 http://172.17.0.1/private stretch-staging/main armhf liblua5.2-dev armhf 5.2.4-1 [115 kB]
Get:271 http://172.17.0.1/private stretch-staging/main armhf libperl-dev armhf 5.22.1-4 [2290 kB]
Get:272 http://172.17.0.1/private stretch-staging/main armhf libopenjpeg5 armhf 1:1.5.2-3.1+b4 [93.0 kB]
Get:273 http://172.17.0.1/private stretch-staging/main armhf libpoppler57 armhf 0.38.0-2 [1117 kB]
Get:274 http://172.17.0.1/private stretch-staging/main armhf libpoppler-glib8 armhf 0.38.0-2 [105 kB]
Get:275 http://172.17.0.1/private stretch-staging/main armhf libpython2.7-dev armhf 2.7.11-2 [27.1 MB]
Get:276 http://172.17.0.1/private stretch-staging/main armhf libpython-dev armhf 2.7.11-1 [19.6 kB]
Get:277 http://172.17.0.1/private stretch-staging/main armhf libxt6 armhf 1:1.1.5-1 [155 kB]
Get:278 http://172.17.0.1/private stretch-staging/main armhf libxmu6 armhf 2:1.1.2-2 [52.0 kB]
Get:279 http://172.17.0.1/private stretch-staging/main armhf libxpm4 armhf 1:3.5.11-1+b1 [42.4 kB]
Get:280 http://172.17.0.1/private stretch-staging/main armhf libxaw7 armhf 2:1.0.13-1 [164 kB]
Get:281 http://172.17.0.1/private stretch-staging/main armhf libxt-dev armhf 1:1.1.5-1 [390 kB]
Get:282 http://172.17.0.1/private stretch-staging/main armhf libxmu-headers all 2:1.1.2-2 [51.9 kB]
Get:283 http://172.17.0.1/private stretch-staging/main armhf libxmu-dev armhf 2:1.1.2-2 [56.2 kB]
Get:284 http://172.17.0.1/private stretch-staging/main armhf libxpm-dev armhf 1:3.5.11-1+b1 [96.9 kB]
Get:285 http://172.17.0.1/private stretch-staging/main armhf libxaw7-dev armhf 2:1.0.13-1 [223 kB]
Get:286 http://172.17.0.1/private stretch-staging/main armhf lua5.2 armhf 5.2.4-1 [74.6 kB]
Get:287 http://172.17.0.1/private stretch-staging/main armhf python2.7-dev armhf 2.7.11-2 [279 kB]
Get:288 http://172.17.0.1/private stretch-staging/main armhf python-dev armhf 2.7.11-1 [1138 B]
Get:289 http://172.17.0.1/private stretch-staging/main armhf rubygems-integration all 1.10 [4882 B]
Get:290 http://172.17.0.1/private stretch-staging/main armhf ruby-power-assert all 0.2.6-1 [7384 B]
Get:291 http://172.17.0.1/private stretch-staging/main armhf ruby-test-unit all 3.1.5-1 [68.6 kB]
Get:292 http://172.17.0.1/private stretch-staging/main armhf ruby-minitest all 5.8.3-1 [49.9 kB]
Get:293 http://172.17.0.1/private stretch-staging/main armhf libruby2.2 armhf 2.2.3-2 [2842 kB]
Get:294 http://172.17.0.1/private stretch-staging/main armhf ruby2.2 armhf 2.2.3-2 [218 kB]
Get:295 http://172.17.0.1/private stretch-staging/main armhf ruby all 1:2.2.4 [9798 B]
Get:296 http://172.17.0.1/private stretch-staging/main armhf ruby2.2-dev armhf 2.2.3-2 [990 kB]
Get:297 http://172.17.0.1/private stretch-staging/main armhf ruby-dev all 1:2.2.4 [8592 B]
Get:298 http://172.17.0.1/private stretch-staging/main armhf tcl8.6 armhf 8.6.4+dfsg-2 [122 kB]
Get:299 http://172.17.0.1/private stretch-staging/main armhf tcl armhf 8.6.0+9 [5502 B]
Get:300 http://172.17.0.1/private stretch-staging/main armhf tcl8.6-dev armhf 8.6.4+dfsg-2 [892 kB]
Get:301 http://172.17.0.1/private stretch-staging/main armhf tcl-dev armhf 8.6.0+9 [7986 B]
Get:302 http://172.17.0.1/private stretch-staging/main armhf libattr1-dev armhf 1:2.4.47-2 [38.7 kB]
Get:303 http://172.17.0.1/private stretch-staging/main armhf libacl1-dev armhf 2.2.52-2 [84.1 kB]
Get:304 http://172.17.0.1/private stretch-staging/main armhf pdf2svg armhf 0.2.2-1 [7060 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 146 MB in 46s (3174 kB/s)
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 12751 files and directories currently installed.)
Preparing to unpack .../libperl5.22_5.22.1-4_armhf.deb ...
Unpacking libperl5.22:armhf (5.22.1-4) over (5.22.1-3) ...
Preparing to unpack .../perl_5.22.1-4_armhf.deb ...
Unpacking perl (5.22.1-4) over (5.22.1-3) ...
Preparing to unpack .../perl-base_5.22.1-4_armhf.deb ...
Unpacking perl-base (5.22.1-4) over (5.22.1-3) ...
Setting up perl-base (5.22.1-4) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 12751 files and directories currently installed.)
Preparing to unpack .../perl-modules-5.22_5.22.1-4_all.deb ...
Unpacking perl-modules-5.22 (5.22.1-4) over (5.22.1-3) ...
Preparing to unpack .../libpcre3_2%3a8.38-1_armhf.deb ...
Unpacking libpcre3:armhf (2:8.38-1) over (2:8.35-8) ...
Processing triggers for libc-bin (2.21-6) ...
Setting up libpcre3:armhf (2:8.38-1) ...
Processing triggers for libc-bin (2.21-6) ...
Selecting previously unselected package libpopt0:armhf.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 12751 files and directories currently installed.)
Preparing to unpack .../libpopt0_1.16-10_armhf.deb ...
Unpacking libpopt0:armhf (1.16-10) ...
Selecting previously unselected package groff-base.
Preparing to unpack .../groff-base_1.22.3-5_armhf.deb ...
Unpacking groff-base (1.22.3-5) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../bsdmainutils_9.0.6_armhf.deb ...
Unpacking bsdmainutils (9.0.6) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../libpipeline1_1.4.1-2_armhf.deb ...
Unpacking libpipeline1:armhf (1.4.1-2) ...
Selecting previously unselected package man-db.
Preparing to unpack .../man-db_2.7.5-1_armhf.deb ...
Unpacking man-db (2.7.5-1) ...
Selecting previously unselected package libgpm2:armhf.
Preparing to unpack .../libgpm2_1.20.4-6.1_armhf.deb ...
Unpacking libgpm2:armhf (1.20.4-6.1) ...
Selecting previously unselected package libpython2.7-minimal:armhf.
Preparing to unpack .../libpython2.7-minimal_2.7.11-2_armhf.deb ...
Unpacking libpython2.7-minimal:armhf (2.7.11-2) ...
Selecting previously unselected package python2.7-minimal.
Preparing to unpack .../python2.7-minimal_2.7.11-2_armhf.deb ...
Unpacking python2.7-minimal (2.7.11-2) ...
Selecting previously unselected package python-minimal.
Preparing to unpack .../python-minimal_2.7.11-1_armhf.deb ...
Unpacking python-minimal (2.7.11-1) ...
Selecting previously unselected package mime-support.
Preparing to unpack .../mime-support_3.59_all.deb ...
Unpacking mime-support (3.59) ...
Selecting previously unselected package libexpat1:armhf.
Preparing to unpack .../libexpat1_2.1.0-7_armhf.deb ...
Unpacking libexpat1:armhf (2.1.0-7) ...
Selecting previously unselected package libffi6:armhf.
Preparing to unpack .../libffi6_3.2.1-4_armhf.deb ...
Unpacking libffi6:armhf (3.2.1-4) ...
Selecting previously unselected package libsqlite3-0:armhf.
Preparing to unpack .../libsqlite3-0_3.9.2-1_armhf.deb ...
Unpacking libsqlite3-0:armhf (3.9.2-1) ...
Selecting previously unselected package libssl1.0.2:armhf.
Preparing to unpack .../libssl1.0.2_1.0.2e-1_armhf.deb ...
Unpacking libssl1.0.2:armhf (1.0.2e-1) ...
Selecting previously unselected package libpython2.7-stdlib:armhf.
Preparing to unpack .../libpython2.7-stdlib_2.7.11-2_armhf.deb ...
Unpacking libpython2.7-stdlib:armhf (2.7.11-2) ...
Selecting previously unselected package python2.7.
Preparing to unpack .../python2.7_2.7.11-2_armhf.deb ...
Unpacking python2.7 (2.7.11-2) ...
Selecting previously unselected package libpython-stdlib:armhf.
Preparing to unpack .../libpython-stdlib_2.7.11-1_armhf.deb ...
Unpacking libpython-stdlib:armhf (2.7.11-1) ...
Processing triggers for libc-bin (2.21-6) ...
Setting up libpython2.7-minimal:armhf (2.7.11-2) ...
Setting up python2.7-minimal (2.7.11-2) ...
Setting up python-minimal (2.7.11-1) ...
Selecting previously unselected package python.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 14162 files and directories currently installed.)
Preparing to unpack .../python_2.7.11-1_armhf.deb ...
Unpacking python (2.7.11-1) ...
Selecting previously unselected package libfreetype6:armhf.
Preparing to unpack .../libfreetype6_2.6.1-0.1_armhf.deb ...
Unpacking libfreetype6:armhf (2.6.1-0.1) ...
Selecting previously unselected package ucf.
Preparing to unpack .../archives/ucf_3.0031_all.deb ...
Moving old data out of the way
Unpacking ucf (3.0031) ...
Selecting previously unselected package fonts-dejavu-core.
Preparing to unpack .../fonts-dejavu-core_2.35-1_all.deb ...
Unpacking fonts-dejavu-core (2.35-1) ...
Selecting previously unselected package fontconfig-config.
Preparing to unpack .../fontconfig-config_2.11.0-6.3_all.deb ...
Unpacking fontconfig-config (2.11.0-6.3) ...
Selecting previously unselected package libfontconfig1:armhf.
Preparing to unpack .../libfontconfig1_2.11.0-6.3_armhf.deb ...
Unpacking libfontconfig1:armhf (2.11.0-6.3) ...
Selecting previously unselected package fontconfig.
Preparing to unpack .../fontconfig_2.11.0-6.3_armhf.deb ...
Unpacking fontconfig (2.11.0-6.3) ...
Selecting previously unselected package libart-2.0-2:armhf.
Preparing to unpack .../libart-2.0-2_2.3.21-2_armhf.deb ...
Unpacking libart-2.0-2:armhf (2.3.21-2) ...
Selecting previously unselected package libbonobo2-common.
Preparing to unpack .../libbonobo2-common_2.32.1-3_all.deb ...
Unpacking libbonobo2-common (2.32.1-3) ...
Selecting previously unselected package libglib2.0-0:armhf.
Preparing to unpack .../libglib2.0-0_2.46.2-3_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.46.2-3) ...
Selecting previously unselected package liborbit-2-0:armhf.
Preparing to unpack .../liborbit-2-0_1%3a2.14.19-1+b1_armhf.deb ...
Unpacking liborbit-2-0:armhf (1:2.14.19-1+b1) ...
Selecting previously unselected package libicu55:armhf.
Preparing to unpack .../libicu55_55.1-7_armhf.deb ...
Unpacking libicu55:armhf (55.1-7) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../libxml2_2.9.3+dfsg1-1_armhf.deb ...
Unpacking libxml2:armhf (2.9.3+dfsg1-1) ...
Selecting previously unselected package libbonobo2-0:armhf.
Preparing to unpack .../libbonobo2-0_2.32.1-3_armhf.deb ...
Unpacking libbonobo2-0:armhf (2.32.1-3) ...
Selecting previously unselected package libdbus-glib-1-2:armhf.
Preparing to unpack .../libdbus-glib-1-2_0.102-1_armhf.deb ...
Unpacking libdbus-glib-1-2:armhf (0.102-1) ...
Selecting previously unselected package gconf2-common.
Preparing to unpack .../gconf2-common_3.2.6-3_all.deb ...
Unpacking gconf2-common (3.2.6-3) ...
Selecting previously unselected package libgconf-2-4:armhf.
Preparing to unpack .../libgconf-2-4_3.2.6-3_armhf.deb ...
Unpacking libgconf-2-4:armhf (3.2.6-3) ...
Selecting previously unselected package libatk1.0-data.
Preparing to unpack .../libatk1.0-data_2.18.0-1_all.deb ...
Unpacking libatk1.0-data (2.18.0-1) ...
Selecting previously unselected package libatk1.0-0:armhf.
Preparing to unpack .../libatk1.0-0_2.18.0-1_armhf.deb ...
Unpacking libatk1.0-0:armhf (2.18.0-1) ...
Selecting previously unselected package libpixman-1-0:armhf.
Preparing to unpack .../libpixman-1-0_0.33.4-1_armhf.deb ...
Unpacking libpixman-1-0:armhf (0.33.4-1) ...
Selecting previously unselected package libxau6:armhf.
Preparing to unpack .../libxau6_1%3a1.0.8-1_armhf.deb ...
Unpacking libxau6:armhf (1:1.0.8-1) ...
Selecting previously unselected package libxdmcp6:armhf.
Preparing to unpack .../libxdmcp6_1%3a1.1.2-1_armhf.deb ...
Unpacking libxdmcp6:armhf (1:1.1.2-1) ...
Selecting previously unselected package libxcb1:armhf.
Preparing to unpack .../libxcb1_1.10-3+b1_armhf.deb ...
Unpacking libxcb1:armhf (1.10-3+b1) ...
Selecting previously unselected package libx11-data.
Preparing to unpack .../libx11-data_2%3a1.6.3-1_all.deb ...
Unpacking libx11-data (2:1.6.3-1) ...
Selecting previously unselected package libx11-6:armhf.
Preparing to unpack .../libx11-6_2%3a1.6.3-1_armhf.deb ...
Unpacking libx11-6:armhf (2:1.6.3-1) ...
Selecting previously unselected package libxcb-render0:armhf.
Preparing to unpack .../libxcb-render0_1.10-3+b1_armhf.deb ...
Unpacking libxcb-render0:armhf (1.10-3+b1) ...
Selecting previously unselected package libxcb-shm0:armhf.
Preparing to unpack .../libxcb-shm0_1.10-3+b1_armhf.deb ...
Unpacking libxcb-shm0:armhf (1.10-3+b1) ...
Selecting previously unselected package libxext6:armhf.
Preparing to unpack .../libxext6_2%3a1.3.3-1_armhf.deb ...
Unpacking libxext6:armhf (2:1.3.3-1) ...
Selecting previously unselected package libxrender1:armhf.
Preparing to unpack .../libxrender1_1%3a0.9.9-2_armhf.deb ...
Unpacking libxrender1:armhf (1:0.9.9-2) ...
Selecting previously unselected package libcairo2:armhf.
Preparing to unpack .../libcairo2_1.14.6-1_armhf.deb ...
Unpacking libcairo2:armhf (1.14.6-1) ...
Selecting previously unselected package libjpeg62-turbo:armhf.
Preparing to unpack .../libjpeg62-turbo_1%3a1.4.1-2_armhf.deb ...
Unpacking libjpeg62-turbo:armhf (1:1.4.1-2) ...
Selecting previously unselected package libjbig0:armhf.
Preparing to unpack .../libjbig0_2.1-3.1_armhf.deb ...
Unpacking libjbig0:armhf (2.1-3.1) ...
Selecting previously unselected package libtiff5:armhf.
Preparing to unpack .../libtiff5_4.0.6-1_armhf.deb ...
Unpacking libtiff5:armhf (4.0.6-1) ...
Selecting previously unselected package libgdk-pixbuf2.0-common.
Preparing to unpack .../libgdk-pixbuf2.0-common_2.32.3-1_all.deb ...
Unpacking libgdk-pixbuf2.0-common (2.32.3-1) ...
Selecting previously unselected package libgdk-pixbuf2.0-0:armhf.
Preparing to unpack .../libgdk-pixbuf2.0-0_2.32.3-1_armhf.deb ...
Unpacking libgdk-pixbuf2.0-0:armhf (2.32.3-1) ...
Selecting previously unselected package libgtk2.0-common.
Preparing to unpack .../libgtk2.0-common_2.24.29-1_all.deb ...
Unpacking libgtk2.0-common (2.24.29-1) ...
Selecting previously unselected package libavahi-common-data:armhf.
Preparing to unpack .../libavahi-common-data_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-common-data:armhf (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libavahi-common3:armhf.
Preparing to unpack .../libavahi-common3_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-common3:armhf (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libavahi-client3:armhf.
Preparing to unpack .../libavahi-client3_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-client3:armhf (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libnettle6:armhf.
Preparing to unpack .../libnettle6_3.1.1-4_armhf.deb ...
Unpacking libnettle6:armhf (3.1.1-4) ...
Selecting previously unselected package libhogweed4:armhf.
Preparing to unpack .../libhogweed4_3.1.1-4_armhf.deb ...
Unpacking libhogweed4:armhf (3.1.1-4) ...
Selecting previously unselected package libp11-kit0:armhf.
Preparing to unpack .../libp11-kit0_0.23.2-3_armhf.deb ...
Unpacking libp11-kit0:armhf (0.23.2-3) ...
Selecting previously unselected package libtasn1-6:armhf.
Preparing to unpack .../libtasn1-6_4.7-3_armhf.deb ...
Unpacking libtasn1-6:armhf (4.7-3) ...
Selecting previously unselected package libgnutls-deb0-28:armhf.
Preparing to unpack .../libgnutls-deb0-28_3.3.20-1_armhf.deb ...
Unpacking libgnutls-deb0-28:armhf (3.3.20-1) ...
Selecting previously unselected package libkeyutils1:armhf.
Preparing to unpack .../libkeyutils1_1.5.9-8_armhf.deb ...
Unpacking libkeyutils1:armhf (1.5.9-8) ...
Selecting previously unselected package libkrb5support0:armhf.
Preparing to unpack .../libkrb5support0_1.13.2+dfsg-4+b1_armhf.deb ...
Unpacking libkrb5support0:armhf (1.13.2+dfsg-4+b1) ...
Selecting previously unselected package libk5crypto3:armhf.
Preparing to unpack .../libk5crypto3_1.13.2+dfsg-4+b1_armhf.deb ...
Unpacking libk5crypto3:armhf (1.13.2+dfsg-4+b1) ...
Selecting previously unselected package libkrb5-3:armhf.
Preparing to unpack .../libkrb5-3_1.13.2+dfsg-4+b1_armhf.deb ...
Unpacking libkrb5-3:armhf (1.13.2+dfsg-4+b1) ...
Selecting previously unselected package libgssapi-krb5-2:armhf.
Preparing to unpack .../libgssapi-krb5-2_1.13.2+dfsg-4+b1_armhf.deb ...
Unpacking libgssapi-krb5-2:armhf (1.13.2+dfsg-4+b1) ...
Selecting previously unselected package libcups2:armhf.
Preparing to unpack .../libcups2_2.1.2-1_armhf.deb ...
Unpacking libcups2:armhf (2.1.2-1) ...
Selecting previously unselected package libthai-data.
Preparing to unpack .../libthai-data_0.1.24-1_all.deb ...
Unpacking libthai-data (0.1.24-1) ...
Selecting previously unselected package libdatrie1:armhf.
Preparing to unpack .../libdatrie1_0.2.10-1_armhf.deb ...
Unpacking libdatrie1:armhf (0.2.10-1) ...
Selecting previously unselected package libthai0:armhf.
Preparing to unpack .../libthai0_0.1.24-1_armhf.deb ...
Unpacking libthai0:armhf (0.1.24-1) ...
Selecting previously unselected package libpango-1.0-0:armhf.
Preparing to unpack .../libpango-1.0-0_1.38.1-1_armhf.deb ...
Unpacking libpango-1.0-0:armhf (1.38.1-1) ...
Selecting previously unselected package libgraphite2-3:armhf.
Preparing to unpack .../libgraphite2-3_1.3.4-2_armhf.deb ...
Unpacking libgraphite2-3:armhf (1.3.4-2) ...
Selecting previously unselected package libharfbuzz0b:armhf.
Preparing to unpack .../libharfbuzz0b_1.0.1-1+b1_armhf.deb ...
Unpacking libharfbuzz0b:armhf (1.0.1-1+b1) ...
Selecting previously unselected package libpangoft2-1.0-0:armhf.
Preparing to unpack .../libpangoft2-1.0-0_1.38.1-1_armhf.deb ...
Unpacking libpangoft2-1.0-0:armhf (1.38.1-1) ...
Selecting previously unselected package libpangocairo-1.0-0:armhf.
Preparing to unpack .../libpangocairo-1.0-0_1.38.1-1_armhf.deb ...
Unpacking libpangocairo-1.0-0:armhf (1.38.1-1) ...
Selecting previously unselected package libxcomposite1:armhf.
Preparing to unpack .../libxcomposite1_1%3a0.4.4-1_armhf.deb ...
Unpacking libxcomposite1:armhf (1:0.4.4-1) ...
Selecting previously unselected package libxfixes3:armhf.
Preparing to unpack .../libxfixes3_1%3a5.0.1-2+b2_armhf.deb ...
Unpacking libxfixes3:armhf (1:5.0.1-2+b2) ...
Selecting previously unselected package libxcursor1:armhf.
Preparing to unpack .../libxcursor1_1%3a1.1.14-1+b1_armhf.deb ...
Unpacking libxcursor1:armhf (1:1.1.14-1+b1) ...
Selecting previously unselected package libxdamage1:armhf.
Preparing to unpack .../libxdamage1_1%3a1.1.4-2+b1_armhf.deb ...
Unpacking libxdamage1:armhf (1:1.1.4-2+b1) ...
Selecting previously unselected package libxi6:armhf.
Preparing to unpack .../libxi6_2%3a1.7.5-1_armhf.deb ...
Unpacking libxi6:armhf (2:1.7.5-1) ...
Selecting previously unselected package libxinerama1:armhf.
Preparing to unpack .../libxinerama1_2%3a1.1.3-1+b1_armhf.deb ...
Unpacking libxinerama1:armhf (2:1.1.3-1+b1) ...
Selecting previously unselected package libxrandr2:armhf.
Preparing to unpack .../libxrandr2_2%3a1.5.0-1_armhf.deb ...
Unpacking libxrandr2:armhf (2:1.5.0-1) ...
Selecting previously unselected package shared-mime-info.
Preparing to unpack .../shared-mime-info_1.5-2_armhf.deb ...
Unpacking shared-mime-info (1.5-2) ...
Selecting previously unselected package libgtk2.0-0:armhf.
Preparing to unpack .../libgtk2.0-0_2.24.29-1_armhf.deb ...
Unpacking libgtk2.0-0:armhf (2.24.29-1) ...
Selecting previously unselected package libglade2-0:armhf.
Preparing to unpack .../libglade2-0_1%3a2.6.4-2_armhf.deb ...
Unpacking libglade2-0:armhf (1:2.6.4-2) ...
Selecting previously unselected package libsasl2-modules-db:armhf.
Preparing to unpack .../libsasl2-modules-db_2.1.26.dfsg1-14+b1_armhf.deb ...
Unpacking libsasl2-modules-db:armhf (2.1.26.dfsg1-14+b1) ...
Selecting previously unselected package libsasl2-2:armhf.
Preparing to unpack .../libsasl2-2_2.1.26.dfsg1-14+b1_armhf.deb ...
Unpacking libsasl2-2:armhf (2.1.26.dfsg1-14+b1) ...
Selecting previously unselected package libldap-2.4-2:armhf.
Preparing to unpack .../libldap-2.4-2_2.4.42+dfsg-2+rpi1+b1_armhf.deb ...
Unpacking libldap-2.4-2:armhf (2.4.42+dfsg-2+rpi1+b1) ...
Selecting previously unselected package gconf-service.
Preparing to unpack .../gconf-service_3.2.6-3_armhf.deb ...
Unpacking gconf-service (3.2.6-3) ...
Selecting previously unselected package libasound2-data.
Preparing to unpack .../libasound2-data_1.0.29-1_all.deb ...
Unpacking libasound2-data (1.0.29-1) ...
Selecting previously unselected package libasound2:armhf.
Preparing to unpack .../libasound2_1.0.29-1_armhf.deb ...
Unpacking libasound2:armhf (1.0.29-1) ...
Selecting previously unselected package libltdl7:armhf.
Preparing to unpack .../libltdl7_2.4.2-1.11_armhf.deb ...
Unpacking libltdl7:armhf (2.4.2-1.11) ...
Selecting previously unselected package libtdb1:armhf.
Preparing to unpack .../libtdb1_1.3.8-1_armhf.deb ...
Unpacking libtdb1:armhf (1.3.8-1) ...
Selecting previously unselected package libogg0:armhf.
Preparing to unpack .../libogg0_1.3.2-1_armhf.deb ...
Unpacking libogg0:armhf (1.3.2-1) ...
Selecting previously unselected package libvorbis0a:armhf.
Preparing to unpack .../libvorbis0a_1.3.4-3_armhf.deb ...
Unpacking libvorbis0a:armhf (1.3.4-3) ...
Selecting previously unselected package libvorbisfile3:armhf.
Preparing to unpack .../libvorbisfile3_1.3.4-3_armhf.deb ...
Unpacking libvorbisfile3:armhf (1.3.4-3) ...
Selecting previously unselected package libcanberra0:armhf.
Preparing to unpack .../libcanberra0_0.30-2.1+b5_armhf.deb ...
Unpacking libcanberra0:armhf (0.30-2.1+b5) ...
Selecting previously unselected package libavahi-glib1:armhf.
Preparing to unpack .../libavahi-glib1_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-glib1:armhf (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package psmisc.
Preparing to unpack .../psmisc_22.21-2.1_armhf.deb ...
Unpacking psmisc (22.21-2.1) ...
Selecting previously unselected package libcap-ng0:armhf.
Preparing to unpack .../libcap-ng0_0.7.7-1_armhf.deb ...
Unpacking libcap-ng0:armhf (0.7.7-1) ...
Selecting previously unselected package dbus.
Preparing to unpack .../dbus_1.10.6-1_armhf.deb ...
Unpacking dbus (1.10.6-1) ...
Selecting previously unselected package dbus-x11.
Preparing to unpack .../dbus-x11_1.10.6-1_armhf.deb ...
Unpacking dbus-x11 (1.10.6-1) ...
Selecting previously unselected package gconf2.
Preparing to unpack .../gconf2_3.2.6-3_armhf.deb ...
Unpacking gconf2 (3.2.6-3) ...
Selecting previously unselected package gnome-mime-data.
Preparing to unpack .../gnome-mime-data_2.18.0-1_all.deb ...
Unpacking gnome-mime-data (2.18.0-1) ...
Selecting previously unselected package libgnomevfs2-common.
Preparing to unpack .../libgnomevfs2-common_1%3a2.24.4-6.1_all.deb ...
Unpacking libgnomevfs2-common (1:2.24.4-6.1) ...
Selecting previously unselected package libgnomevfs2-0:armhf.
Preparing to unpack .../libgnomevfs2-0_1%3a2.24.4-6.1_armhf.deb ...
Unpacking libgnomevfs2-0:armhf (1:2.24.4-6.1) ...
Selecting previously unselected package libgnome2-common.
Preparing to unpack .../libgnome2-common_2.32.1-5_all.deb ...
Unpacking libgnome2-common (2.32.1-5) ...
Selecting previously unselected package libgnome-2-0:armhf.
Preparing to unpack .../libgnome-2-0_2.32.1-5_armhf.deb ...
Unpacking libgnome-2-0:armhf (2.32.1-5) ...
Selecting previously unselected package libgnome-keyring-common.
Preparing to unpack .../libgnome-keyring-common_3.12.0-1_all.deb ...
Unpacking libgnome-keyring-common (3.12.0-1) ...
Selecting previously unselected package libgnome-keyring0:armhf.
Preparing to unpack .../libgnome-keyring0_3.12.0-1+b1_armhf.deb ...
Unpacking libgnome-keyring0:armhf (3.12.0-1+b1) ...
Selecting previously unselected package libgail18:armhf.
Preparing to unpack .../libgail18_2.24.29-1_armhf.deb ...
Unpacking libgail18:armhf (2.24.29-1) ...
Selecting previously unselected package libgnomecanvas2-common.
Preparing to unpack .../libgnomecanvas2-common_2.30.3-2_all.deb ...
Unpacking libgnomecanvas2-common (2.30.3-2) ...
Selecting previously unselected package libgnomecanvas2-0:armhf.
Preparing to unpack .../libgnomecanvas2-0_2.30.3-2_armhf.deb ...
Unpacking libgnomecanvas2-0:armhf (2.30.3-2) ...
Selecting previously unselected package x11-common.
Preparing to unpack .../x11-common_1%3a7.7+12_all.deb ...
Unpacking x11-common (1:7.7+12) ...
Selecting previously unselected package libice6:armhf.
Preparing to unpack .../libice6_2%3a1.0.9-1+b1_armhf.deb ...
Unpacking libice6:armhf (2:1.0.9-1+b1) ...
Selecting previously unselected package libsm6:armhf.
Preparing to unpack .../libsm6_2%3a1.2.2-1+b1_armhf.deb ...
Unpacking libsm6:armhf (2:1.2.2-1+b1) ...
Selecting previously unselected package libbonoboui2-common.
Preparing to unpack .../libbonoboui2-common_2.24.5-3_all.deb ...
Unpacking libbonoboui2-common (2.24.5-3) ...
Selecting previously unselected package libbonoboui2-0:armhf.
Preparing to unpack .../libbonoboui2-0_2.24.5-3_armhf.deb ...
Unpacking libbonoboui2-0:armhf (2.24.5-3) ...
Selecting previously unselected package libgnomeui-common.
Preparing to unpack .../libgnomeui-common_2.24.5-3_all.deb ...
Unpacking libgnomeui-common (2.24.5-3) ...
Selecting previously unselected package libgnomeui-0:armhf.
Preparing to unpack .../libgnomeui-0_2.24.5-3_armhf.deb ...
Unpacking libgnomeui-0:armhf (2.24.5-3) ...
Selecting previously unselected package liblcms2-2:armhf.
Preparing to unpack .../liblcms2-2_2.6-3_armhf.deb ...
Unpacking liblcms2-2:armhf (2.6-3) ...
Selecting previously unselected package liblzo2-2:armhf.
Preparing to unpack .../liblzo2-2_2.08-1.2_armhf.deb ...
Unpacking liblzo2-2:armhf (2.08-1.2) ...
Selecting previously unselected package libpaper1:armhf.
Preparing to unpack .../libpaper1_1.1.24+nmu4_armhf.deb ...
Unpacking libpaper1:armhf (1.1.24+nmu4) ...
Selecting previously unselected package libpcrecpp0v5:armhf.
Preparing to unpack .../libpcrecpp0v5_2%3a8.38-1_armhf.deb ...
Unpacking libpcrecpp0v5:armhf (2:8.38-1) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../libsigsegv2_2.10-4_armhf.deb ...
Unpacking libsigsegv2:armhf (2.10-4) ...
Selecting previously unselected package libtcl8.6:armhf.
Preparing to unpack .../libtcl8.6_8.6.4+dfsg-2_armhf.deb ...
Unpacking libtcl8.6:armhf (8.6.4+dfsg-2) ...
Selecting previously unselected package libunistring0:armhf.
Preparing to unpack .../libunistring0_0.9.3-5.2_armhf.deb ...
Unpacking libunistring0:armhf (0.9.3-5.2) ...
Selecting previously unselected package libxft2:armhf.
Preparing to unpack .../libxft2_2.3.2-1_armhf.deb ...
Unpacking libxft2:armhf (2.3.2-1) ...
Selecting previously unselected package libyaml-0-2:armhf.
Preparing to unpack .../libyaml-0-2_0.1.6-3_armhf.deb ...
Unpacking libyaml-0-2:armhf (0.1.6-3) ...
Selecting previously unselected package poppler-data.
Preparing to unpack .../poppler-data_0.4.7-7_all.deb ...
Unpacking poppler-data (0.4.7-7) ...
Selecting previously unselected package libtrio2:armhf.
Preparing to unpack .../libtrio2_1.16+dfsg1-3_armhf.deb ...
Unpacking libtrio2:armhf (1.16+dfsg1-3) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../libmagic1_1%3a5.25-2_armhf.deb ...
Unpacking libmagic1:armhf (1:5.25-2) ...
Selecting previously unselected package file.
Preparing to unpack .../file_1%3a5.25-2_armhf.deb ...
Unpacking file (1:5.25-2) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../gettext-base_0.19.7-2_armhf.deb ...
Unpacking gettext-base (0.19.7-2) ...
Selecting previously unselected package libgnutls-openssl27:armhf.
Preparing to unpack .../libgnutls-openssl27_3.3.20-1_armhf.deb ...
Unpacking libgnutls-openssl27:armhf (3.3.20-1) ...
Selecting previously unselected package libidn11:armhf.
Preparing to unpack .../libidn11_1.32-3_armhf.deb ...
Unpacking libidn11:armhf (1.32-3) ...
Selecting previously unselected package libpython2.7:armhf.
Preparing to unpack .../libpython2.7_2.7.11-2_armhf.deb ...
Unpacking libpython2.7:armhf (2.7.11-2) ...
Selecting previously unselected package m4.
Preparing to unpack .../archives/m4_1.4.17-5_armhf.deb ...
Unpacking m4 (1.4.17-5) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../autoconf_2.69-9_all.deb ...
Unpacking autoconf (2.69-9) ...
Selecting previously unselected package openssl.
Preparing to unpack .../openssl_1.0.2e-1_armhf.deb ...
Unpacking openssl (1.0.2e-1) ...
Selecting previously unselected package ca-certificates.
Preparing to unpack .../ca-certificates_20160104_all.deb ...
Unpacking ca-certificates (20160104) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../libcroco3_0.6.11-1_armhf.deb ...
Unpacking libcroco3:armhf (0.6.11-1) ...
Selecting previously unselected package gettext.
Preparing to unpack .../gettext_0.19.7-2_armhf.deb ...
Unpacking gettext (0.19.7-2) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../intltool-debian_0.35.0+20060710.4_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.4) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../po-debconf_1.0.19_all.deb ...
Unpacking po-debconf (1.0.19) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../libarchive-zip-perl_1.56-2_all.deb ...
Unpacking libarchive-zip-perl (1.56-2) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../libfile-stripnondeterminism-perl_0.014-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (0.014-1) ...
Selecting previously unselected package libtimedate-perl.
Preparing to unpack .../libtimedate-perl_2.3000-2_all.deb ...
Unpacking libtimedate-perl (2.3000-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../dh-strip-nondeterminism_0.014-1_all.deb ...
Unpacking dh-strip-nondeterminism (0.014-1) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../debhelper_9.20151225_all.deb ...
Unpacking debhelper (9.20151225) ...
Selecting previously unselected package libcupsfilters1:armhf.
Preparing to unpack .../libcupsfilters1_1.4.0-1_armhf.deb ...
Unpacking libcupsfilters1:armhf (1.4.0-1) ...
Selecting previously unselected package libcupsimage2:armhf.
Preparing to unpack .../libcupsimage2_2.1.2-1_armhf.deb ...
Unpacking libcupsimage2:armhf (2.1.2-1) ...
Selecting previously unselected package libijs-0.35:armhf.
Preparing to unpack .../libijs-0.35_0.35-11_armhf.deb ...
Unpacking libijs-0.35:armhf (0.35-11) ...
Selecting previously unselected package libjbig2dec0.
Preparing to unpack .../libjbig2dec0_0.12+20150918-1_armhf.deb ...
Unpacking libjbig2dec0 (0.12+20150918-1) ...
Selecting previously unselected package libgs9-common.
Preparing to unpack .../libgs9-common_9.16~dfsg-2_all.deb ...
Unpacking libgs9-common (9.16~dfsg-2) ...
Selecting previously unselected package libgs9.
Preparing to unpack .../libgs9_9.16~dfsg-2_armhf.deb ...
Unpacking libgs9 (9.16~dfsg-2) ...
Selecting previously unselected package gsfonts.
Preparing to unpack .../gsfonts_1%3a8.11+urwcyr1.0.7~pre44-4.2_all.deb ...
Unpacking gsfonts (1:8.11+urwcyr1.0.7~pre44-4.2) ...
Selecting previously unselected package ghostscript.
Preparing to unpack .../ghostscript_9.16~dfsg-2_armhf.deb ...
Unpacking ghostscript (9.16~dfsg-2) ...
Selecting previously unselected package libgirepository-1.0-1:armhf.
Preparing to unpack .../libgirepository-1.0-1_1.46.0-3_armhf.deb ...
Unpacking libgirepository-1.0-1:armhf (1.46.0-3) ...
Selecting previously unselected package gir1.2-glib-2.0:armhf.
Preparing to unpack .../gir1.2-glib-2.0_1.46.0-3_armhf.deb ...
Unpacking gir1.2-glib-2.0:armhf (1.46.0-3) ...
Selecting previously unselected package gir1.2-atk-1.0.
Preparing to unpack .../gir1.2-atk-1.0_2.18.0-1_armhf.deb ...
Unpacking gir1.2-atk-1.0 (2.18.0-1) ...
Selecting previously unselected package libcairo-gobject2:armhf.
Preparing to unpack .../libcairo-gobject2_1.14.6-1_armhf.deb ...
Unpacking libcairo-gobject2:armhf (1.14.6-1) ...
Selecting previously unselected package gir1.2-freedesktop:armhf.
Preparing to unpack .../gir1.2-freedesktop_1.46.0-3_armhf.deb ...
Unpacking gir1.2-freedesktop:armhf (1.46.0-3) ...
Selecting previously unselected package gir1.2-gconf-2.0.
Preparing to unpack .../gir1.2-gconf-2.0_3.2.6-3_armhf.deb ...
Unpacking gir1.2-gconf-2.0 (3.2.6-3) ...
Selecting previously unselected package gir1.2-gdkpixbuf-2.0:armhf.
Preparing to unpack .../gir1.2-gdkpixbuf-2.0_2.32.3-1_armhf.deb ...
Unpacking gir1.2-gdkpixbuf-2.0:armhf (2.32.3-1) ...
Selecting previously unselected package gir1.2-gnomekeyring-1.0.
Preparing to unpack .../gir1.2-gnomekeyring-1.0_3.12.0-1+b1_armhf.deb ...
Unpacking gir1.2-gnomekeyring-1.0 (3.12.0-1+b1) ...
Selecting previously unselected package libpangoxft-1.0-0:armhf.
Preparing to unpack .../libpangoxft-1.0-0_1.38.1-1_armhf.deb ...
Unpacking libpangoxft-1.0-0:armhf (1.38.1-1) ...
Selecting previously unselected package gir1.2-pango-1.0:armhf.
Preparing to unpack .../gir1.2-pango-1.0_1.38.1-1_armhf.deb ...
Unpacking gir1.2-pango-1.0:armhf (1.38.1-1) ...
Selecting previously unselected package gir1.2-gtk-2.0.
Preparing to unpack .../gir1.2-gtk-2.0_2.24.29-1_armhf.deb ...
Unpacking gir1.2-gtk-2.0 (2.24.29-1) ...
Selecting previously unselected package icu-devtools.
Preparing to unpack .../icu-devtools_55.1-7_armhf.deb ...
Unpacking icu-devtools (55.1-7) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../pkg-config_0.29-2_armhf.deb ...
Unpacking pkg-config (0.29-2) ...
Selecting previously unselected package libart-2.0-dev.
Preparing to unpack .../libart-2.0-dev_2.3.21-2_armhf.deb ...
Unpacking libart-2.0-dev (2.3.21-2) ...
Selecting previously unselected package libelf1:armhf.
Preparing to unpack .../libelf1_0.163-5.1_armhf.deb ...
Unpacking libelf1:armhf (0.163-5.1) ...
Selecting previously unselected package libglib2.0-data.
Preparing to unpack .../libglib2.0-data_2.46.2-3_all.deb ...
Unpacking libglib2.0-data (2.46.2-3) ...
Selecting previously unselected package libglib2.0-bin.
Preparing to unpack .../libglib2.0-bin_2.46.2-3_armhf.deb ...
Unpacking libglib2.0-bin (2.46.2-3) ...
Selecting previously unselected package libpcre16-3:armhf.
Preparing to unpack .../libpcre16-3_2%3a8.38-1_armhf.deb ...
Unpacking libpcre16-3:armhf (2:8.38-1) ...
Selecting previously unselected package libpcre32-3:armhf.
Preparing to unpack .../libpcre32-3_2%3a8.38-1_armhf.deb ...
Unpacking libpcre32-3:armhf (2:8.38-1) ...
Selecting previously unselected package libpcre3-dev:armhf.
Preparing to unpack .../libpcre3-dev_2%3a8.38-1_armhf.deb ...
Unpacking libpcre3-dev:armhf (2:8.38-1) ...
Selecting previously unselected package zlib1g-dev:armhf.
Preparing to unpack .../zlib1g-dev_1%3a1.2.8.dfsg-2+b1_armhf.deb ...
Unpacking zlib1g-dev:armhf (1:1.2.8.dfsg-2+b1) ...
Selecting previously unselected package libglib2.0-dev.
Preparing to unpack .../libglib2.0-dev_2.46.2-3_armhf.deb ...
Unpacking libglib2.0-dev (2.46.2-3) ...
Selecting previously unselected package libatk1.0-dev.
Preparing to unpack .../libatk1.0-dev_2.18.0-1_armhf.deb ...
Unpacking libatk1.0-dev (2.18.0-1) ...
Selecting previously unselected package libavahi-common-dev.
Preparing to unpack .../libavahi-common-dev_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-common-dev (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libdbus-1-dev:armhf.
Preparing to unpack .../libdbus-1-dev_1.10.6-1_armhf.deb ...
Unpacking libdbus-1-dev:armhf (1.10.6-1) ...
Selecting previously unselected package libavahi-client-dev.
Preparing to unpack .../libavahi-client-dev_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-client-dev (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libavahi-glib-dev.
Preparing to unpack .../libavahi-glib-dev_0.6.32~rc+dfsg-1_armhf.deb ...
Unpacking libavahi-glib-dev (0.6.32~rc+dfsg-1) ...
Selecting previously unselected package libidl-2-0:armhf.
Preparing to unpack .../libidl-2-0_0.8.14-4_armhf.deb ...
Unpacking libidl-2-0:armhf (0.8.14-4) ...
Selecting previously unselected package liborbit2:armhf.
Preparing to unpack .../liborbit2_1%3a2.14.19-1+b1_armhf.deb ...
Unpacking liborbit2:armhf (1:2.14.19-1+b1) ...
Selecting previously unselected package libidl-dev:armhf.
Preparing to unpack .../libidl-dev_0.8.14-4_armhf.deb ...
Unpacking libidl-dev:armhf (0.8.14-4) ...
Selecting previously unselected package orbit2.
Preparing to unpack .../orbit2_1%3a2.14.19-1+b1_armhf.deb ...
Unpacking orbit2 (1:2.14.19-1+b1) ...
Selecting previously unselected package liborbit2-dev.
Preparing to unpack .../liborbit2-dev_1%3a2.14.19-1+b1_armhf.deb ...
Unpacking liborbit2-dev (1:2.14.19-1+b1) ...
Selecting previously unselected package libpopt-dev:armhf.
Preparing to unpack .../libpopt-dev_1.16-10_armhf.deb ...
Unpacking libpopt-dev:armhf (1.16-10) ...
Selecting previously unselected package libbonobo2-dev:armhf.
Preparing to unpack .../libbonobo2-dev_2.32.1-3_armhf.deb ...
Unpacking libbonobo2-dev:armhf (2.32.1-3) ...
Selecting previously unselected package xorg-sgml-doctools.
Preparing to unpack .../xorg-sgml-doctools_1%3a1.11-1_all.deb ...
Unpacking xorg-sgml-doctools (1:1.11-1) ...
Selecting previously unselected package x11proto-core-dev.
Preparing to unpack .../x11proto-core-dev_7.0.27-1_all.deb ...
Unpacking x11proto-core-dev (7.0.27-1) ...
Selecting previously unselected package libxau-dev:armhf.
Preparing to unpack .../libxau-dev_1%3a1.0.8-1_armhf.deb ...
Unpacking libxau-dev:armhf (1:1.0.8-1) ...
Selecting previously unselected package libxdmcp-dev:armhf.
Preparing to unpack .../libxdmcp-dev_1%3a1.1.2-1_armhf.deb ...
Unpacking libxdmcp-dev:armhf (1:1.1.2-1) ...
Selecting previously unselected package x11proto-input-dev.
Preparing to unpack .../x11proto-input-dev_2.3.1-1_all.deb ...
Unpacking x11proto-input-dev (2.3.1-1) ...
Selecting previously unselected package x11proto-kb-dev.
Preparing to unpack .../x11proto-kb-dev_1.0.7-1_all.deb ...
Unpacking x11proto-kb-dev (1.0.7-1) ...
Selecting previously unselected package xtrans-dev.
Preparing to unpack .../xtrans-dev_1.3.5-1_all.deb ...
Unpacking xtrans-dev (1.3.5-1) ...
Selecting previously unselected package libpthread-stubs0-dev:armhf.
Preparing to unpack .../libpthread-stubs0-dev_0.3-4_armhf.deb ...
Unpacking libpthread-stubs0-dev:armhf (0.3-4) ...
Selecting previously unselected package libxcb1-dev:armhf.
Preparing to unpack .../libxcb1-dev_1.10-3+b1_armhf.deb ...
Unpacking libxcb1-dev:armhf (1.10-3+b1) ...
Selecting previously unselected package libx11-dev:armhf.
Preparing to unpack .../libx11-dev_2%3a1.6.3-1_armhf.deb ...
Unpacking libx11-dev:armhf (2:1.6.3-1) ...
Selecting previously unselected package libpng12-dev:armhf.
Preparing to unpack .../libpng12-dev_1.2.54-1_armhf.deb ...
Unpacking libpng12-dev:armhf (1.2.54-1) ...
Selecting previously unselected package libgdk-pixbuf2.0-dev.
Preparing to unpack .../libgdk-pixbuf2.0-dev_2.32.3-1_armhf.deb ...
Unpacking libgdk-pixbuf2.0-dev (2.32.3-1) ...
Selecting previously unselected package libcairo-script-interpreter2:armhf.
Preparing to unpack .../libcairo-script-interpreter2_1.14.6-1_armhf.deb ...
Unpacking libcairo-script-interpreter2:armhf (1.14.6-1) ...
Selecting previously unselected package libexpat1-dev:armhf.
Preparing to unpack .../libexpat1-dev_2.1.0-7_armhf.deb ...
Unpacking libexpat1-dev:armhf (2.1.0-7) ...
Selecting previously unselected package libfreetype6-dev.
Preparing to unpack .../libfreetype6-dev_2.6.1-0.1_armhf.deb ...
Unpacking libfreetype6-dev (2.6.1-0.1) ...
Selecting previously unselected package libfontconfig1-dev:armhf.
Preparing to unpack .../libfontconfig1-dev_2.11.0-6.3_armhf.deb ...
Unpacking libfontconfig1-dev:armhf (2.11.0-6.3) ...
Selecting previously unselected package x11proto-render-dev.
Preparing to unpack .../x11proto-render-dev_2%3a0.11.1-2_all.deb ...
Unpacking x11proto-render-dev (2:0.11.1-2) ...
Selecting previously unselected package libxrender-dev:armhf.
Preparing to unpack .../libxrender-dev_1%3a0.9.9-2_armhf.deb ...
Unpacking libxrender-dev:armhf (1:0.9.9-2) ...
Selecting previously unselected package x11proto-xext-dev.
Preparing to unpack .../x11proto-xext-dev_7.3.0-1_all.deb ...
Unpacking x11proto-xext-dev (7.3.0-1) ...
Selecting previously unselected package libxext-dev:armhf.
Preparing to unpack .../libxext-dev_2%3a1.3.3-1_armhf.deb ...
Unpacking libxext-dev:armhf (2:1.3.3-1) ...
Selecting previously unselected package libice-dev:armhf.
Preparing to unpack .../libice-dev_2%3a1.0.9-1+b1_armhf.deb ...
Unpacking libice-dev:armhf (2:1.0.9-1+b1) ...
Selecting previously unselected package libsm-dev:armhf.
Preparing to unpack .../libsm-dev_2%3a1.2.2-1+b1_armhf.deb ...
Unpacking libsm-dev:armhf (2:1.2.2-1+b1) ...
Selecting previously unselected package libpixman-1-dev.
Preparing to unpack .../libpixman-1-dev_0.33.4-1_armhf.deb ...
Unpacking libpixman-1-dev (0.33.4-1) ...
Selecting previously unselected package libxcb-render0-dev:armhf.
Preparing to unpack .../libxcb-render0-dev_1.10-3+b1_armhf.deb ...
Unpacking libxcb-render0-dev:armhf (1.10-3+b1) ...
Selecting previously unselected package libxcb-shm0-dev:armhf.
Preparing to unpack .../libxcb-shm0-dev_1.10-3+b1_armhf.deb ...
Unpacking libxcb-shm0-dev:armhf (1.10-3+b1) ...
Selecting previously unselected package libcairo2-dev.
Preparing to unpack .../libcairo2-dev_1.14.6-1_armhf.deb ...
Unpacking libcairo2-dev (1.14.6-1) ...
Selecting previously unselected package libharfbuzz-icu0:armhf.
Preparing to unpack .../libharfbuzz-icu0_1.0.1-1+b1_armhf.deb ...
Unpacking libharfbuzz-icu0:armhf (1.0.1-1+b1) ...
Selecting previously unselected package libharfbuzz-gobject0:armhf.
Preparing to unpack .../libharfbuzz-gobject0_1.0.1-1+b1_armhf.deb ...
Unpacking libharfbuzz-gobject0:armhf (1.0.1-1+b1) ...
Selecting previously unselected package libharfbuzz-dev.
Preparing to unpack .../libharfbuzz-dev_1.0.1-1+b1_armhf.deb ...
Unpacking libharfbuzz-dev (1.0.1-1+b1) ...
Selecting previously unselected package libxft-dev.
Preparing to unpack .../libxft-dev_2.3.2-1_armhf.deb ...
Unpacking libxft-dev (2.3.2-1) ...
Selecting previously unselected package libpango1.0-dev.
Preparing to unpack .../libpango1.0-dev_1.38.1-1_armhf.deb ...
Unpacking libpango1.0-dev (1.38.1-1) ...
Selecting previously unselected package x11proto-xinerama-dev.
Preparing to unpack .../x11proto-xinerama-dev_1.2.1-2_all.deb ...
Unpacking x11proto-xinerama-dev (1.2.1-2) ...
Selecting previously unselected package libxinerama-dev:armhf.
Preparing to unpack .../libxinerama-dev_2%3a1.1.3-1+b1_armhf.deb ...
Unpacking libxinerama-dev:armhf (2:1.1.3-1+b1) ...
Selecting previously unselected package x11proto-fixes-dev.
Preparing to unpack .../x11proto-fixes-dev_1%3a5.0-2_all.deb ...
Unpacking x11proto-fixes-dev (1:5.0-2) ...
Selecting previously unselected package libxfixes-dev:armhf.
Preparing to unpack .../libxfixes-dev_1%3a5.0.1-2+b2_armhf.deb ...
Unpacking libxfixes-dev:armhf (1:5.0.1-2+b2) ...
Selecting previously unselected package libxi-dev.
Preparing to unpack .../libxi-dev_2%3a1.7.5-1_armhf.deb ...
Unpacking libxi-dev (2:1.7.5-1) ...
Selecting previously unselected package x11proto-randr-dev.
Preparing to unpack .../x11proto-randr-dev_1.5.0-1_all.deb ...
Unpacking x11proto-randr-dev (1.5.0-1) ...
Selecting previously unselected package libxrandr-dev:armhf.
Preparing to unpack .../libxrandr-dev_2%3a1.5.0-1_armhf.deb ...
Unpacking libxrandr-dev:armhf (2:1.5.0-1) ...
Selecting previously unselected package libxcursor-dev:armhf.
Preparing to unpack .../libxcursor-dev_1%3a1.1.14-1+b1_armhf.deb ...
Unpacking libxcursor-dev:armhf (1:1.1.14-1+b1) ...
Selecting previously unselected package x11proto-composite-dev.
Preparing to unpack .../x11proto-composite-dev_1%3a0.4.2-2_all.deb ...
Unpacking x11proto-composite-dev (1:0.4.2-2) ...
Selecting previously unselected package libxcomposite-dev.
Preparing to unpack .../libxcomposite-dev_1%3a0.4.4-1_armhf.deb ...
Unpacking libxcomposite-dev (1:0.4.4-1) ...
Selecting previously unselected package x11proto-damage-dev.
Preparing to unpack .../x11proto-damage-dev_1%3a1.2.1-2_all.deb ...
Unpacking x11proto-damage-dev (1:1.2.1-2) ...
Selecting previously unselected package libxdamage-dev:armhf.
Preparing to unpack .../libxdamage-dev_1%3a1.1.4-2+b1_armhf.deb ...
Unpacking libxdamage-dev:armhf (1:1.1.4-2+b1) ...
Selecting previously unselected package libxml2-utils.
Preparing to unpack .../libxml2-utils_2.9.3+dfsg1-1_armhf.deb ...
Unpacking libxml2-utils (2.9.3+dfsg1-1) ...
Selecting previously unselected package libgtk2.0-dev.
Preparing to unpack .../libgtk2.0-dev_2.24.29-1_armhf.deb ...
Unpacking libgtk2.0-dev (2.24.29-1) ...
Selecting previously unselected package libgail-common:armhf.
Preparing to unpack .../libgail-common_2.24.29-1_armhf.deb ...
Unpacking libgail-common:armhf (2.24.29-1) ...
Selecting previously unselected package libgail-dev.
Preparing to unpack .../libgail-dev_2.24.29-1_armhf.deb ...
Unpacking libgail-dev (2.24.29-1) ...
Selecting previously unselected package libgnomecanvas2-dev:armhf.
Preparing to unpack .../libgnomecanvas2-dev_2.30.3-2_armhf.deb ...
Unpacking libgnomecanvas2-dev:armhf (2.30.3-2) ...
Selecting previously unselected package libgconf2-dev.
Preparing to unpack .../libgconf2-dev_3.2.6-3_armhf.deb ...
Unpacking libgconf2-dev (3.2.6-3) ...
Selecting previously unselected package libgnutlsxx28:armhf.
Preparing to unpack .../libgnutlsxx28_3.3.20-1_armhf.deb ...
Unpacking libgnutlsxx28:armhf (3.3.20-1) ...
Selecting previously unselected package libgmpxx4ldbl:armhf.
Preparing to unpack .../libgmpxx4ldbl_2%3a6.1.0+dfsg-2_armhf.deb ...
Unpacking libgmpxx4ldbl:armhf (2:6.1.0+dfsg-2) ...
Selecting previously unselected package libgmp-dev:armhf.
Preparing to unpack .../libgmp-dev_2%3a6.1.0+dfsg-2_armhf.deb ...
Unpacking libgmp-dev:armhf (2:6.1.0+dfsg-2) ...
Selecting previously unselected package nettle-dev.
Preparing to unpack .../nettle-dev_3.1.1-4_armhf.deb ...
Unpacking nettle-dev (3.1.1-4) ...
Selecting previously unselected package libtasn1-6-dev:armhf.
Preparing to unpack .../libtasn1-6-dev_4.7-3_armhf.deb ...
Unpacking libtasn1-6-dev:armhf (4.7-3) ...
Selecting previously unselected package libp11-kit-dev:armhf.
Preparing to unpack .../libp11-kit-dev_0.23.2-3_armhf.deb ...
Unpacking libp11-kit-dev:armhf (0.23.2-3) ...
Selecting previously unselected package libgnutls28-dev:armhf.
Preparing to unpack .../libgnutls28-dev_3.3.20-1_armhf.deb ...
Unpacking libgnutls28-dev:armhf (3.3.20-1) ...
Selecting previously unselected package libicu-dev:armhf.
Preparing to unpack .../libicu-dev_55.1-7_armhf.deb ...
Unpacking libicu-dev:armhf (55.1-7) ...
Selecting previously unselected package libxml2-dev:armhf.
Preparing to unpack .../libxml2-dev_2.9.3+dfsg1-1_armhf.deb ...
Unpacking libxml2-dev:armhf (2.9.3+dfsg1-1) ...
Selecting previously unselected package libsepol1-dev:armhf.
Preparing to unpack .../libsepol1-dev_2.4-2_armhf.deb ...
Unpacking libsepol1-dev:armhf (2.4-2) ...
Selecting previously unselected package libselinux1-dev:armhf.
Preparing to unpack .../libselinux1-dev_2.4-3_armhf.deb ...
Unpacking libselinux1-dev:armhf (2.4-3) ...
Selecting previously unselected package libgnomevfs2-dev:armhf.
Preparing to unpack .../libgnomevfs2-dev_1%3a2.24.4-6.1_armhf.deb ...
Unpacking libgnomevfs2-dev:armhf (1:2.24.4-6.1) ...
Selecting previously unselected package libcanberra-dev:armhf.
Preparing to unpack .../libcanberra-dev_0.30-2.1+b5_armhf.deb ...
Unpacking libcanberra-dev:armhf (0.30-2.1+b5) ...
Selecting previously unselected package libgnome2-dev:armhf.
Preparing to unpack .../libgnome2-dev_2.32.1-5_armhf.deb ...
Unpacking libgnome2-dev:armhf (2.32.1-5) ...
Selecting previously unselected package libbonoboui2-dev:armhf.
Preparing to unpack .../libbonoboui2-dev_2.24.5-3_armhf.deb ...
Unpacking libbonoboui2-dev:armhf (2.24.5-3) ...
Selecting previously unselected package libgnome-keyring-dev.
Preparing to unpack .../libgnome-keyring-dev_3.12.0-1+b1_armhf.deb ...
Unpacking libgnome-keyring-dev (3.12.0-1+b1) ...
Selecting previously unselected package libgnomeui-dev:armhf.
Preparing to unpack .../libgnomeui-dev_2.24.5-3_armhf.deb ...
Unpacking libgnomeui-dev:armhf (2.24.5-3) ...
Selecting previously unselected package libgpm-dev:armhf.
Preparing to unpack .../libgpm-dev_1.20.4-6.1_armhf.deb ...
Unpacking libgpm-dev:armhf (1.20.4-6.1) ...
Selecting previously unselected package liblua5.2-0:armhf.
Preparing to unpack .../liblua5.2-0_5.2.4-1_armhf.deb ...
Unpacking liblua5.2-0:armhf (5.2.4-1) ...
Selecting previously unselected package libtinfo-dev:armhf.
Preparing to unpack .../libtinfo-dev_6.0+20151024-2_armhf.deb ...
Unpacking libtinfo-dev:armhf (6.0+20151024-2) ...
Selecting previously unselected package libreadline6-dev:armhf.
Preparing to unpack .../libreadline6-dev_6.3-8+b3_armhf.deb ...
Unpacking libreadline6-dev:armhf (6.3-8+b3) ...
Selecting previously unselected package libreadline-dev:armhf.
Preparing to unpack .../libreadline-dev_6.3-8+b3_armhf.deb ...
Unpacking libreadline-dev:armhf (6.3-8+b3) ...
Selecting previously unselected package liblua5.2-dev:armhf.
Preparing to unpack .../liblua5.2-dev_5.2.4-1_armhf.deb ...
Unpacking liblua5.2-dev:armhf (5.2.4-1) ...
Selecting previously unselected package libperl-dev.
Preparing to unpack .../libperl-dev_5.22.1-4_armhf.deb ...
Unpacking libperl-dev (5.22.1-4) ...
Selecting previously unselected package libopenjpeg5:armhf.
Preparing to unpack .../libopenjpeg5_1%3a1.5.2-3.1+b4_armhf.deb ...
Unpacking libopenjpeg5:armhf (1:1.5.2-3.1+b4) ...
Selecting previously unselected package libpoppler57:armhf.
Preparing to unpack .../libpoppler57_0.38.0-2_armhf.deb ...
Unpacking libpoppler57:armhf (0.38.0-2) ...
Selecting previously unselected package libpoppler-glib8:armhf.
Preparing to unpack .../libpoppler-glib8_0.38.0-2_armhf.deb ...
Unpacking libpoppler-glib8:armhf (0.38.0-2) ...
Selecting previously unselected package libpython2.7-dev:armhf.
Preparing to unpack .../libpython2.7-dev_2.7.11-2_armhf.deb ...
Unpacking libpython2.7-dev:armhf (2.7.11-2) ...
Selecting previously unselected package libpython-dev:armhf.
Preparing to unpack .../libpython-dev_2.7.11-1_armhf.deb ...
Unpacking libpython-dev:armhf (2.7.11-1) ...
Selecting previously unselected package libxt6:armhf.
Preparing to unpack .../libxt6_1%3a1.1.5-1_armhf.deb ...
Unpacking libxt6:armhf (1:1.1.5-1) ...
Selecting previously unselected package libxmu6:armhf.
Preparing to unpack .../libxmu6_2%3a1.1.2-2_armhf.deb ...
Unpacking libxmu6:armhf (2:1.1.2-2) ...
Selecting previously unselected package libxpm4:armhf.
Preparing to unpack .../libxpm4_1%3a3.5.11-1+b1_armhf.deb ...
Unpacking libxpm4:armhf (1:3.5.11-1+b1) ...
Selecting previously unselected package libxaw7:armhf.
Preparing to unpack .../libxaw7_2%3a1.0.13-1_armhf.deb ...
Unpacking libxaw7:armhf (2:1.0.13-1) ...
Selecting previously unselected package libxt-dev:armhf.
Preparing to unpack .../libxt-dev_1%3a1.1.5-1_armhf.deb ...
Unpacking libxt-dev:armhf (1:1.1.5-1) ...
Selecting previously unselected package libxmu-headers.
Preparing to unpack .../libxmu-headers_2%3a1.1.2-2_all.deb ...
Unpacking libxmu-headers (2:1.1.2-2) ...
Selecting previously unselected package libxmu-dev:armhf.
Preparing to unpack .../libxmu-dev_2%3a1.1.2-2_armhf.deb ...
Unpacking libxmu-dev:armhf (2:1.1.2-2) ...
Selecting previously unselected package libxpm-dev:armhf.
Preparing to unpack .../libxpm-dev_1%3a3.5.11-1+b1_armhf.deb ...
Unpacking libxpm-dev:armhf (1:3.5.11-1+b1) ...
Selecting previously unselected package libxaw7-dev:armhf.
Preparing to unpack .../libxaw7-dev_2%3a1.0.13-1_armhf.deb ...
Unpacking libxaw7-dev:armhf (2:1.0.13-1) ...
Selecting previously unselected package lua5.2.
Preparing to unpack .../lua5.2_5.2.4-1_armhf.deb ...
Unpacking lua5.2 (5.2.4-1) ...
Selecting previously unselected package python2.7-dev.
Preparing to unpack .../python2.7-dev_2.7.11-2_armhf.deb ...
Unpacking python2.7-dev (2.7.11-2) ...
Selecting previously unselected package python-dev.
Preparing to unpack .../python-dev_2.7.11-1_armhf.deb ...
Unpacking python-dev (2.7.11-1) ...
Selecting previously unselected package rubygems-integration.
Preparing to unpack .../rubygems-integration_1.10_all.deb ...
Unpacking rubygems-integration (1.10) ...
Selecting previously unselected package ruby-power-assert.
Preparing to unpack .../ruby-power-assert_0.2.6-1_all.deb ...
Unpacking ruby-power-assert (0.2.6-1) ...
Selecting previously unselected package ruby-test-unit.
Preparing to unpack .../ruby-test-unit_3.1.5-1_all.deb ...
Unpacking ruby-test-unit (3.1.5-1) ...
Selecting previously unselected package ruby-minitest.
Preparing to unpack .../ruby-minitest_5.8.3-1_all.deb ...
Unpacking ruby-minitest (5.8.3-1) ...
Selecting previously unselected package libruby2.2:armhf.
Preparing to unpack .../libruby2.2_2.2.3-2_armhf.deb ...
Unpacking libruby2.2:armhf (2.2.3-2) ...
Selecting previously unselected package ruby2.2.
Preparing to unpack .../ruby2.2_2.2.3-2_armhf.deb ...
Unpacking ruby2.2 (2.2.3-2) ...
Selecting previously unselected package ruby.
Preparing to unpack .../ruby_1%3a2.2.4_all.deb ...
Unpacking ruby (1:2.2.4) ...
Selecting previously unselected package ruby2.2-dev:armhf.
Preparing to unpack .../ruby2.2-dev_2.2.3-2_armhf.deb ...
Unpacking ruby2.2-dev:armhf (2.2.3-2) ...
Selecting previously unselected package ruby-dev.
Preparing to unpack .../ruby-dev_1%3a2.2.4_all.deb ...
Unpacking ruby-dev (1:2.2.4) ...
Selecting previously unselected package tcl8.6.
Preparing to unpack .../tcl8.6_8.6.4+dfsg-2_armhf.deb ...
Unpacking tcl8.6 (8.6.4+dfsg-2) ...
Selecting previously unselected package tcl.
Preparing to unpack .../archives/tcl_8.6.0+9_armhf.deb ...
Unpacking tcl (8.6.0+9) ...
Selecting previously unselected package tcl8.6-dev:armhf.
Preparing to unpack .../tcl8.6-dev_8.6.4+dfsg-2_armhf.deb ...
Unpacking tcl8.6-dev:armhf (8.6.4+dfsg-2) ...
Selecting previously unselected package tcl-dev:armhf.
Preparing to unpack .../tcl-dev_8.6.0+9_armhf.deb ...
Unpacking tcl-dev:armhf (8.6.0+9) ...
Selecting previously unselected package libattr1-dev:armhf.
Preparing to unpack .../libattr1-dev_1%3a2.4.47-2_armhf.deb ...
Unpacking libattr1-dev:armhf (1:2.4.47-2) ...
Selecting previously unselected package libacl1-dev.
Preparing to unpack .../libacl1-dev_2.2.52-2_armhf.deb ...
Unpacking libacl1-dev (2.2.52-2) ...
Selecting previously unselected package pdf2svg.
Preparing to unpack .../pdf2svg_0.2.2-1_armhf.deb ...
Unpacking pdf2svg (0.2.2-1) ...
Selecting previously unselected package sbuild-build-depends-vim-dummy.
Preparing to unpack .../sbuild-build-depends-vim-dummy.deb ...
Unpacking sbuild-build-depends-vim-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.21-6) ...
Processing triggers for systemd (228-2) ...
Setting up perl-modules-5.22 (5.22.1-4) ...
Setting up libperl5.22:armhf (5.22.1-4) ...
Setting up perl (5.22.1-4) ...
Setting up libpopt0:armhf (1.16-10) ...
Setting up groff-base (1.22.3-5) ...
Setting up bsdmainutils (9.0.6) ...
update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode
update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode
Setting up libpipeline1:armhf (1.4.1-2) ...
Setting up man-db (2.7.5-1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libgpm2:armhf (1.20.4-6.1) ...
Setting up mime-support (3.59) ...
Setting up libexpat1:armhf (2.1.0-7) ...
Setting up libffi6:armhf (3.2.1-4) ...
Setting up libsqlite3-0:armhf (3.9.2-1) ...
Setting up libssl1.0.2:armhf (1.0.2e-1) ...
Setting up libpython2.7-stdlib:armhf (2.7.11-2) ...
Setting up python2.7 (2.7.11-2) ...
Setting up libpython-stdlib:armhf (2.7.11-1) ...
Setting up python (2.7.11-1) ...
Setting up libfreetype6:armhf (2.6.1-0.1) ...
Setting up ucf (3.0031) ...
Setting up fonts-dejavu-core (2.35-1) ...
Setting up fontconfig-config (2.11.0-6.3) ...
Setting up libfontconfig1:armhf (2.11.0-6.3) ...
Setting up fontconfig (2.11.0-6.3) ...
Regenerating fonts cache... done.
Setting up libart-2.0-2:armhf (2.3.21-2) ...
Setting up libbonobo2-common (2.32.1-3) ...
Setting up libglib2.0-0:armhf (2.46.2-3) ...
No schema files found: doing nothing.
Setting up liborbit-2-0:armhf (1:2.14.19-1+b1) ...
Setting up libicu55:armhf (55.1-7) ...
Setting up libxml2:armhf (2.9.3+dfsg1-1) ...
Setting up libbonobo2-0:armhf (2.32.1-3) ...
Setting up libdbus-glib-1-2:armhf (0.102-1) ...
Setting up gconf2-common (3.2.6-3) ...

Creating config file /etc/gconf/2/path with new version
Setting up libgconf-2-4:armhf (3.2.6-3) ...
Setting up libatk1.0-data (2.18.0-1) ...
Setting up libatk1.0-0:armhf (2.18.0-1) ...
Setting up libpixman-1-0:armhf (0.33.4-1) ...
Setting up libxau6:armhf (1:1.0.8-1) ...
Setting up libxdmcp6:armhf (1:1.1.2-1) ...
Setting up libxcb1:armhf (1.10-3+b1) ...
Setting up libx11-data (2:1.6.3-1) ...
Setting up libx11-6:armhf (2:1.6.3-1) ...
Setting up libxcb-render0:armhf (1.10-3+b1) ...
Setting up libxcb-shm0:armhf (1.10-3+b1) ...
Setting up libxext6:armhf (2:1.3.3-1) ...
Setting up libxrender1:armhf (1:0.9.9-2) ...
Setting up libcairo2:armhf (1.14.6-1) ...
Setting up libjpeg62-turbo:armhf (1:1.4.1-2) ...
Setting up libjbig0:armhf (2.1-3.1) ...
Setting up libtiff5:armhf (4.0.6-1) ...
Setting up libgdk-pixbuf2.0-common (2.32.3-1) ...
Setting up libgdk-pixbuf2.0-0:armhf (2.32.3-1) ...
Setting up libgtk2.0-common (2.24.29-1) ...
Setting up libavahi-common-data:armhf (0.6.32~rc+dfsg-1) ...
Setting up libavahi-common3:armhf (0.6.32~rc+dfsg-1) ...
Setting up libavahi-client3:armhf (0.6.32~rc+dfsg-1) ...
Setting up libnettle6:armhf (3.1.1-4) ...
Setting up libhogweed4:armhf (3.1.1-4) ...
Setting up libp11-kit0:armhf (0.23.2-3) ...
Setting up libtasn1-6:armhf (4.7-3) ...
Setting up libgnutls-deb0-28:armhf (3.3.20-1) ...
Setting up libkeyutils1:armhf (1.5.9-8) ...
Setting up libkrb5support0:armhf (1.13.2+dfsg-4+b1) ...
Setting up libk5crypto3:armhf (1.13.2+dfsg-4+b1) ...
Setting up libkrb5-3:armhf (1.13.2+dfsg-4+b1) ...
Setting up libgssapi-krb5-2:armhf (1.13.2+dfsg-4+b1) ...
Setting up libcups2:armhf (2.1.2-1) ...
Setting up libthai-data (0.1.24-1) ...
Setting up libdatrie1:armhf (0.2.10-1) ...
Setting up libthai0:armhf (0.1.24-1) ...
Setting up libpango-1.0-0:armhf (1.38.1-1) ...
Setting up libgraphite2-3:armhf (1.3.4-2) ...
Setting up libharfbuzz0b:armhf (1.0.1-1+b1) ...
Setting up libpangoft2-1.0-0:armhf (1.38.1-1) ...
Setting up libpangocairo-1.0-0:armhf (1.38.1-1) ...
Setting up libxcomposite1:armhf (1:0.4.4-1) ...
Setting up libxfixes3:armhf (1:5.0.1-2+b2) ...
Setting up libxcursor1:armhf (1:1.1.14-1+b1) ...
Setting up libxdamage1:armhf (1:1.1.4-2+b1) ...
Setting up libxi6:armhf (2:1.7.5-1) ...
Setting up libxinerama1:armhf (2:1.1.3-1+b1) ...
Setting up libxrandr2:armhf (2:1.5.0-1) ...
Setting up shared-mime-info (1.5-2) ...
Setting up libgtk2.0-0:armhf (2.24.29-1) ...
Setting up libglade2-0:armhf (1:2.6.4-2) ...
Setting up libsasl2-modules-db:armhf (2.1.26.dfsg1-14+b1) ...
Setting up libsasl2-2:armhf (2.1.26.dfsg1-14+b1) ...
Setting up libldap-2.4-2:armhf (2.4.42+dfsg-2+rpi1+b1) ...
Setting up gconf-service (3.2.6-3) ...
Setting up libasound2-data (1.0.29-1) ...
Setting up libasound2:armhf (1.0.29-1) ...
Setting up libltdl7:armhf (2.4.2-1.11) ...
Setting up libtdb1:armhf (1.3.8-1) ...
Setting up libogg0:armhf (1.3.2-1) ...
Setting up libvorbis0a:armhf (1.3.4-3) ...
Setting up libvorbisfile3:armhf (1.3.4-3) ...
Setting up libcanberra0:armhf (0.30-2.1+b5) ...
Setting up libavahi-glib1:armhf (0.6.32~rc+dfsg-1) ...
Setting up psmisc (22.21-2.1) ...
Setting up libcap-ng0:armhf (0.7.7-1) ...
Setting up dbus (1.10.6-1) ...
Running in chroot, ignoring request.
All runlevel operations denied by policy
invoke-rc.d: policy-rc.d denied execution of start.
Setting up dbus-x11 (1.10.6-1) ...
Setting up gconf2 (3.2.6-3) ...
Setting up gnome-mime-data (2.18.0-1) ...
Setting up libgnomevfs2-common (1:2.24.4-6.1) ...
Setting up libgnomevfs2-0:armhf (1:2.24.4-6.1) ...
Setting up libgnome2-common (2.32.1-5) ...
Setting up libgnome-2-0:armhf (2.32.1-5) ...
Setting up libgnome-keyring-common (3.12.0-1) ...
Setting up libgnome-keyring0:armhf (3.12.0-1+b1) ...
Setting up libgail18:armhf (2.24.29-1) ...
Setting up libgnomecanvas2-common (2.30.3-2) ...
Setting up libgnomecanvas2-0:armhf (2.30.3-2) ...
Setting up x11-common (1:7.7+12) ...
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
Running in chroot, ignoring request.
All runlevel operations denied by policy
invoke-rc.d: policy-rc.d denied execution of start.
Setting up libice6:armhf (2:1.0.9-1+b1) ...
Setting up libsm6:armhf (2:1.2.2-1+b1) ...
Setting up libbonoboui2-common (2.24.5-3) ...
Setting up libbonoboui2-0:armhf (2.24.5-3) ...
Setting up libgnomeui-common (2.24.5-3) ...
Setting up libgnomeui-0:armhf (2.24.5-3) ...
Setting up liblcms2-2:armhf (2.6-3) ...
Setting up liblzo2-2:armhf (2.08-1.2) ...
Setting up libpaper1:armhf (1.1.24+nmu4) ...

Creating config file /etc/papersize with new version
Setting up libpcrecpp0v5:armhf (2:8.38-1) ...
Setting up libsigsegv2:armhf (2.10-4) ...
Setting up libtcl8.6:armhf (8.6.4+dfsg-2) ...
Setting up libunistring0:armhf (0.9.3-5.2) ...
Setting up libxft2:armhf (2.3.2-1) ...
Setting up libyaml-0-2:armhf (0.1.6-3) ...
Setting up poppler-data (0.4.7-7) ...
Setting up libtrio2:armhf (1.16+dfsg1-3) ...
Setting up libmagic1:armhf (1:5.25-2) ...
Setting up file (1:5.25-2) ...
Setting up gettext-base (0.19.7-2) ...
Setting up libgnutls-openssl27:armhf (3.3.20-1) ...
Setting up libidn11:armhf (1.32-3) ...
Setting up libpython2.7:armhf (2.7.11-2) ...
Setting up m4 (1.4.17-5) ...
Setting up autoconf (2.69-9) ...
Setting up openssl (1.0.2e-1) ...
Setting up ca-certificates (20160104) ...
Setting up libcroco3:armhf (0.6.11-1) ...
Setting up gettext (0.19.7-2) ...
Setting up intltool-debian (0.35.0+20060710.4) ...
Setting up po-debconf (1.0.19) ...
Setting up libarchive-zip-perl (1.56-2) ...
Setting up libfile-stripnondeterminism-perl (0.014-1) ...
Setting up libtimedate-perl (2.3000-2) ...
Setting up libijs-0.35:armhf (0.35-11) ...
Setting up libjbig2dec0 (0.12+20150918-1) ...
Setting up libgs9-common (9.16~dfsg-2) ...
Setting up gsfonts (1:8.11+urwcyr1.0.7~pre44-4.2) ...
Setting up libgirepository-1.0-1:armhf (1.46.0-3) ...
Setting up gir1.2-glib-2.0:armhf (1.46.0-3) ...
Setting up gir1.2-atk-1.0 (2.18.0-1) ...
Setting up libcairo-gobject2:armhf (1.14.6-1) ...
Setting up gir1.2-freedesktop:armhf (1.46.0-3) ...
Setting up gir1.2-gconf-2.0 (3.2.6-3) ...
Setting up gir1.2-gdkpixbuf-2.0:armhf (2.32.3-1) ...
Setting up gir1.2-gnomekeyring-1.0 (3.12.0-1+b1) ...
Setting up libpangoxft-1.0-0:armhf (1.38.1-1) ...
Setting up gir1.2-pango-1.0:armhf (1.38.1-1) ...
Setting up gir1.2-gtk-2.0 (2.24.29-1) ...
Setting up icu-devtools (55.1-7) ...
Setting up pkg-config (0.29-2) ...
Setting up libart-2.0-dev (2.3.21-2) ...
Setting up libelf1:armhf (0.163-5.1) ...
Setting up libglib2.0-data (2.46.2-3) ...
Setting up libglib2.0-bin (2.46.2-3) ...
Setting up libpcre16-3:armhf (2:8.38-1) ...
Setting up libpcre32-3:armhf (2:8.38-1) ...
Setting up libpcre3-dev:armhf (2:8.38-1) ...
Setting up zlib1g-dev:armhf (1:1.2.8.dfsg-2+b1) ...
Setting up libglib2.0-dev (2.46.2-3) ...
Setting up libatk1.0-dev (2.18.0-1) ...
Setting up libavahi-common-dev (0.6.32~rc+dfsg-1) ...
Setting up libdbus-1-dev:armhf (1.10.6-1) ...
Setting up libavahi-client-dev (0.6.32~rc+dfsg-1) ...
Setting up libavahi-glib-dev (0.6.32~rc+dfsg-1) ...
Setting up libidl-2-0:armhf (0.8.14-4) ...
Setting up liborbit2:armhf (1:2.14.19-1+b1) ...
Setting up libidl-dev:armhf (0.8.14-4) ...
Setting up orbit2 (1:2.14.19-1+b1) ...
Setting up liborbit2-dev (1:2.14.19-1+b1) ...
Setting up libpopt-dev:armhf (1.16-10) ...
Setting up libbonobo2-dev:armhf (2.32.1-3) ...
Setting up xorg-sgml-doctools (1:1.11-1) ...
Setting up x11proto-core-dev (7.0.27-1) ...
Setting up libxau-dev:armhf (1:1.0.8-1) ...
Setting up libxdmcp-dev:armhf (1:1.1.2-1) ...
Setting up x11proto-input-dev (2.3.1-1) ...
Setting up x11proto-kb-dev (1.0.7-1) ...
Setting up xtrans-dev (1.3.5-1) ...
Setting up libpthread-stubs0-dev:armhf (0.3-4) ...
Setting up libxcb1-dev:armhf (1.10-3+b1) ...
Setting up libx11-dev:armhf (2:1.6.3-1) ...
Setting up libpng12-dev:armhf (1.2.54-1) ...
Setting up libgdk-pixbuf2.0-dev (2.32.3-1) ...
Setting up libcairo-script-interpreter2:armhf (1.14.6-1) ...
Setting up libexpat1-dev:armhf (2.1.0-7) ...
Setting up libfreetype6-dev (2.6.1-0.1) ...
Setting up libfontconfig1-dev:armhf (2.11.0-6.3) ...
Setting up x11proto-render-dev (2:0.11.1-2) ...
Setting up libxrender-dev:armhf (1:0.9.9-2) ...
Setting up x11proto-xext-dev (7.3.0-1) ...
Setting up libxext-dev:armhf (2:1.3.3-1) ...
Setting up libice-dev:armhf (2:1.0.9-1+b1) ...
Setting up libsm-dev:armhf (2:1.2.2-1+b1) ...
Setting up libpixman-1-dev (0.33.4-1) ...
Setting up libxcb-render0-dev:armhf (1.10-3+b1) ...
Setting up libxcb-shm0-dev:armhf (1.10-3+b1) ...
Setting up libcairo2-dev (1.14.6-1) ...
Setting up libharfbuzz-icu0:armhf (1.0.1-1+b1) ...
Setting up libharfbuzz-gobject0:armhf (1.0.1-1+b1) ...
Setting up libharfbuzz-dev (1.0.1-1+b1) ...
Setting up libxft-dev (2.3.2-1) ...
Setting up libpango1.0-dev (1.38.1-1) ...
Setting up x11proto-xinerama-dev (1.2.1-2) ...
Setting up libxinerama-dev:armhf (2:1.1.3-1+b1) ...
Setting up x11proto-fixes-dev (1:5.0-2) ...
Setting up libxfixes-dev:armhf (1:5.0.1-2+b2) ...
Setting up libxi-dev (2:1.7.5-1) ...
Setting up x11proto-randr-dev (1.5.0-1) ...
Setting up libxrandr-dev:armhf (2:1.5.0-1) ...
Setting up libxcursor-dev:armhf (1:1.1.14-1+b1) ...
Setting up x11proto-composite-dev (1:0.4.2-2) ...
Setting up libxcomposite-dev (1:0.4.4-1) ...
Setting up x11proto-damage-dev (1:1.2.1-2) ...
Setting up libxdamage-dev:armhf (1:1.1.4-2+b1) ...
Setting up libxml2-utils (2.9.3+dfsg1-1) ...
Setting up libgtk2.0-dev (2.24.29-1) ...
Setting up libgail-common:armhf (2.24.29-1) ...
Setting up libgail-dev (2.24.29-1) ...
Setting up libgnomecanvas2-dev:armhf (2.30.3-2) ...
Setting up libgconf2-dev (3.2.6-3) ...
Setting up libgnutlsxx28:armhf (3.3.20-1) ...
Setting up libgmpxx4ldbl:armhf (2:6.1.0+dfsg-2) ...
Setting up libgmp-dev:armhf (2:6.1.0+dfsg-2) ...
Setting up nettle-dev (3.1.1-4) ...
Setting up libtasn1-6-dev:armhf (4.7-3) ...
Setting up libp11-kit-dev:armhf (0.23.2-3) ...
Setting up libgnutls28-dev:armhf (3.3.20-1) ...
Setting up libicu-dev:armhf (55.1-7) ...
Setting up libxml2-dev:armhf (2.9.3+dfsg1-1) ...
Setting up libsepol1-dev:armhf (2.4-2) ...
Setting up libselinux1-dev:armhf (2.4-3) ...
Setting up libgnomevfs2-dev:armhf (1:2.24.4-6.1) ...
Setting up libcanberra-dev:armhf (0.30-2.1+b5) ...
Setting up libgnome2-dev:armhf (2.32.1-5) ...
Setting up libbonoboui2-dev:armhf (2.24.5-3) ...
Setting up libgnome-keyring-dev (3.12.0-1+b1) ...
Setting up libgnomeui-dev:armhf (2.24.5-3) ...
Setting up libgpm-dev:armhf (1.20.4-6.1) ...
Setting up liblua5.2-0:armhf (5.2.4-1) ...
Setting up libtinfo-dev:armhf (6.0+20151024-2) ...
Setting up libreadline6-dev:armhf (6.3-8+b3) ...
Setting up libreadline-dev:armhf (6.3-8+b3) ...
Setting up liblua5.2-dev:armhf (5.2.4-1) ...
Setting up libperl-dev (5.22.1-4) ...
Setting up libopenjpeg5:armhf (1:1.5.2-3.1+b4) ...
Setting up libpoppler57:armhf (0.38.0-2) ...
Setting up libpoppler-glib8:armhf (0.38.0-2) ...
Setting up libpython2.7-dev:armhf (2.7.11-2) ...
Setting up libpython-dev:armhf (2.7.11-1) ...
Setting up libxt6:armhf (1:1.1.5-1) ...
Setting up libxmu6:armhf (2:1.1.2-2) ...
Setting up libxpm4:armhf (1:3.5.11-1+b1) ...
Setting up libxaw7:armhf (2:1.0.13-1) ...
Setting up libxt-dev:armhf (1:1.1.5-1) ...
Setting up libxmu-headers (2:1.1.2-2) ...
Setting up libxmu-dev:armhf (2:1.1.2-2) ...
Setting up libxpm-dev:armhf (1:3.5.11-1+b1) ...
Setting up libxaw7-dev:armhf (2:1.0.13-1) ...
Setting up lua5.2 (5.2.4-1) ...
update-alternatives: using /usr/bin/lua5.2 to provide /usr/bin/lua (lua-interpreter) in auto mode
update-alternatives: using /usr/bin/luac5.2 to provide /usr/bin/luac (lua-compiler) in auto mode
Setting up python2.7-dev (2.7.11-2) ...
Setting up python-dev (2.7.11-1) ...
Setting up rubygems-integration (1.10) ...
Setting up tcl8.6 (8.6.4+dfsg-2) ...
Setting up tcl (8.6.0+9) ...
Setting up tcl8.6-dev:armhf (8.6.4+dfsg-2) ...
Setting up tcl-dev:armhf (8.6.0+9) ...
Setting up libattr1-dev:armhf (1:2.4.47-2) ...
Setting up libacl1-dev (2.2.52-2) ...
Setting up pdf2svg (0.2.2-1) ...
Setting up debhelper (9.20151225) ...
Setting up libcupsimage2:armhf (2.1.2-1) ...
Setting up libgs9 (9.16~dfsg-2) ...
Setting up ghostscript (9.16~dfsg-2) ...
Setting up ruby2.2 (2.2.3-2) ...
Setting up ruby (1:2.2.4) ...
Setting up dh-strip-nondeterminism (0.014-1) ...
Setting up libcupsfilters1:armhf (1.4.0-1) ...
Setting up ruby-power-assert (0.2.6-1) ...
Setting up ruby-minitest (5.8.3-1) ...
Setting up ruby-test-unit (3.1.5-1) ...
Setting up libruby2.2:armhf (2.2.3-2) ...
Setting up ruby2.2-dev:armhf (2.2.3-2) ...
Setting up ruby-dev (1:2.2.4) ...
Setting up sbuild-build-depends-vim-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.21-6) ...
Processing triggers for systemd (228-2) ...
Processing triggers for ca-certificates (20160104) ...
Updating certificates in /etc/ssl/certs...
173 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
W: No sandbox user '_apt' on the system, can not drop privileges

┌──────────────────────────────────────────────────────────────────────────────┐
│ Build environment                                                            │
└──────────────────────────────────────────────────────────────────────────────┘

Kernel: Linux 3.19.0-trunk-armmp armhf (armv7l)
Toolchain package versions: binutils_2.25.90.20160101-1 dpkg-dev_1.18.4 g++-5_5.3.1-5+rpi1 gcc-5_5.3.1-5+rpi1 libc6-dev_2.21-6 libstdc++-5-dev_5.3.1-5+rpi1 libstdc++6_5.3.1-5+rpi1 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch
Package versions: adduser_3.113+nmu3 apt_1.1.10 autoconf_2.69-9 base-files_9.4+rpi1 base-passwd_3.5.39 bash_4.3-14 binutils_2.25.90.20160101-1 bsdmainutils_9.0.6 bsdutils_1:2.27.1-1 build-essential_11.7 bzip2_1.0.6-8 ca-certificates_20160104 coreutils_8.23-4 cpio_2.11+dfsg-4.1 cpp_4:5.3.1-1+rpi1 cpp-5_5.3.1-5+rpi1 dash_0.5.7-4 dbus_1.10.6-1 dbus-x11_1.10.6-1 debconf_1.5.58 debfoster_2.7-2 debhelper_9.20151225 debianutils_4.5.1 dh-strip-nondeterminism_0.014-1 diffutils_1:3.3-3 dmsetup_2:1.02.114-1 dpkg_1.18.4 dpkg-dev_1.18.4 e2fslibs_1.42.13-1 e2fsprogs_1.42.13-1 fakeroot_1.20.2-1 file_1:5.25-2 findutils_4.4.2-10 fontconfig_2.11.0-6.3 fontconfig-config_2.11.0-6.3 fonts-dejavu-core_2.35-1 g++_4:5.3.1-1+rpi1 g++-5_5.3.1-5+rpi1 gcc_4:5.3.1-1+rpi1 gcc-4.6-base_4.6.4-5+rpi1 gcc-4.7-base_4.7.3-11+rpi1 gcc-4.8-base_4.8.5-3 gcc-4.9-base_4.9.3-10 gcc-5_5.3.1-5+rpi1 gcc-5-base_5.3.1-5+rpi1 gconf-service_3.2.6-3 gconf2_3.2.6-3 gconf2-common_3.2.6-3 gettext_0.19.7-2 gettext-base_0.19.7-2 ghostscript_9.16~dfsg-2 gir1.2-atk-1.0_2.18.0-1 gir1.2-freedesktop_1.46.0-3 gir1.2-gconf-2.0_3.2.6-3 gir1.2-gdkpixbuf-2.0_2.32.3-1 gir1.2-glib-2.0_1.46.0-3 gir1.2-gnomekeyring-1.0_3.12.0-1+b1 gir1.2-gtk-2.0_2.24.29-1 gir1.2-pango-1.0_1.38.1-1 gnome-mime-data_2.18.0-1 gnupg_1.4.20-1 gpgv_1.4.20-1 grep_2.22-1 groff-base_1.22.3-5 gsfonts_1:8.11+urwcyr1.0.7~pre44-4.2 gzip_1.6-4 hostname_3.16 icu-devtools_55.1-7 init_1.24 init-system-helpers_1.24 initramfs-tools_0.120 initscripts_2.88dsf-59.2 insserv_1.14.0-5 intltool-debian_0.35.0+20060710.4 klibc-utils_2.0.4-4+rpi1 kmod_21-1 libacl1_2.2.52-2 libacl1-dev_2.2.52-2 libapparmor1_2.10-2+b3 libapt-pkg4.16_1.0.10.2 libapt-pkg5.0_1.1.10 libarchive-zip-perl_1.56-2 libart-2.0-2_2.3.21-2 libart-2.0-dev_2.3.21-2 libasan2_5.3.1-5+rpi1 libasound2_1.0.29-1 libasound2-data_1.0.29-1 libatk1.0-0_2.18.0-1 libatk1.0-data_2.18.0-1 libatk1.0-dev_2.18.0-1 libatomic1_5.3.1-5+rpi1 libattr1_1:2.4.47-2 libattr1-dev_1:2.4.47-2 libaudit-common_1:2.4.5-1 libaudit1_1:2.4.5-1 libavahi-client-dev_0.6.32~rc+dfsg-1 libavahi-client3_0.6.32~rc+dfsg-1 libavahi-common-data_0.6.32~rc+dfsg-1 libavahi-common-dev_0.6.32~rc+dfsg-1 libavahi-common3_0.6.32~rc+dfsg-1 libavahi-glib-dev_0.6.32~rc+dfsg-1 libavahi-glib1_0.6.32~rc+dfsg-1 libblkid1_2.27.1-1 libbonobo2-0_2.32.1-3 libbonobo2-common_2.32.1-3 libbonobo2-dev_2.32.1-3 libbonoboui2-0_2.24.5-3 libbonoboui2-common_2.24.5-3 libbonoboui2-dev_2.24.5-3 libbz2-1.0_1.0.6-8 libc-bin_2.21-6 libc-dev-bin_2.21-6 libc6_2.21-6 libc6-dev_2.21-6 libcairo-gobject2_1.14.6-1 libcairo-script-interpreter2_1.14.6-1 libcairo2_1.14.6-1 libcairo2-dev_1.14.6-1 libcanberra-dev_0.30-2.1+b5 libcanberra0_0.30-2.1+b5 libcap-ng0_0.7.7-1 libcap2_1:2.24-12 libcap2-bin_1:2.24-12 libcc1-0_5.3.1-5+rpi1 libcomerr2_1.42.13-1 libcroco3_0.6.11-1 libcryptsetup4_2:1.6.6-5 libcups2_2.1.2-1 libcupsfilters1_1.4.0-1 libcupsimage2_2.1.2-1 libdatrie1_0.2.10-1 libdb5.3_5.3.28-11 libdbus-1-3_1.10.6-1 libdbus-1-dev_1.10.6-1 libdbus-glib-1-2_0.102-1 libdebconfclient0_0.201 libdevmapper1.02.1_2:1.02.114-1 libdpkg-perl_1.18.4 libdrm2_2.4.65-3 libelf1_0.163-5.1 libexpat1_2.1.0-7 libexpat1-dev_2.1.0-7 libfakeroot_1.20.2-1 libfdisk1_2.27.1-1 libffi6_3.2.1-4 libfile-stripnondeterminism-perl_0.014-1 libfontconfig1_2.11.0-6.3 libfontconfig1-dev_2.11.0-6.3 libfreetype6_2.6.1-0.1 libfreetype6-dev_2.6.1-0.1 libgail-common_2.24.29-1 libgail-dev_2.24.29-1 libgail18_2.24.29-1 libgc1c2_1:7.4.2-7.3 libgcc-5-dev_5.3.1-5+rpi1 libgcc1_1:5.3.1-5+rpi1 libgconf-2-4_3.2.6-3 libgconf2-dev_3.2.6-3 libgcrypt20_1.6.4-4 libgdbm3_1.8.3-13.1 libgdk-pixbuf2.0-0_2.32.3-1 libgdk-pixbuf2.0-common_2.32.3-1 libgdk-pixbuf2.0-dev_2.32.3-1 libgirepository-1.0-1_1.46.0-3 libglade2-0_1:2.6.4-2 libglib2.0-0_2.46.2-3 libglib2.0-bin_2.46.2-3 libglib2.0-data_2.46.2-3 libglib2.0-dev_2.46.2-3 libgmp-dev_2:6.1.0+dfsg-2 libgmp10_2:6.1.0+dfsg-2 libgmpxx4ldbl_2:6.1.0+dfsg-2 libgnome-2-0_2.32.1-5 libgnome-keyring-common_3.12.0-1 libgnome-keyring-dev_3.12.0-1+b1 libgnome-keyring0_3.12.0-1+b1 libgnome2-common_2.32.1-5 libgnome2-dev_2.32.1-5 libgnomecanvas2-0_2.30.3-2 libgnomecanvas2-common_2.30.3-2 libgnomecanvas2-dev_2.30.3-2 libgnomeui-0_2.24.5-3 libgnomeui-common_2.24.5-3 libgnomeui-dev_2.24.5-3 libgnomevfs2-0_1:2.24.4-6.1 libgnomevfs2-common_1:2.24.4-6.1 libgnomevfs2-dev_1:2.24.4-6.1 libgnutls-deb0-28_3.3.20-1 libgnutls-openssl27_3.3.20-1 libgnutls28-dev_3.3.20-1 libgnutlsxx28_3.3.20-1 libgomp1_5.3.1-5+rpi1 libgpg-error0_1.21-1 libgpm-dev_1.20.4-6.1 libgpm2_1.20.4-6.1 libgraphite2-3_1.3.4-2 libgs9_9.16~dfsg-2 libgs9-common_9.16~dfsg-2 libgssapi-krb5-2_1.13.2+dfsg-4+b1 libgtk2.0-0_2.24.29-1 libgtk2.0-common_2.24.29-1 libgtk2.0-dev_2.24.29-1 libharfbuzz-dev_1.0.1-1+b1 libharfbuzz-gobject0_1.0.1-1+b1 libharfbuzz-icu0_1.0.1-1+b1 libharfbuzz0b_1.0.1-1+b1 libhogweed4_3.1.1-4 libice-dev_2:1.0.9-1+b1 libice6_2:1.0.9-1+b1 libicu-dev_55.1-7 libicu55_55.1-7 libidl-2-0_0.8.14-4 libidl-dev_0.8.14-4 libidn11_1.32-3 libijs-0.35_0.35-11 libisl13_0.14-2 libisl15_0.15-3 libjbig0_2.1-3.1 libjbig2dec0_0.12+20150918-1 libjpeg62-turbo_1:1.4.1-2 libk5crypto3_1.13.2+dfsg-4+b1 libkeyutils1_1.5.9-8 libklibc_2.0.4-4+rpi1 libkmod2_21-1 libkrb5-3_1.13.2+dfsg-4+b1 libkrb5support0_1.13.2+dfsg-4+b1 liblcms2-2_2.6-3 libldap-2.4-2_2.4.42+dfsg-2+rpi1+b1 libltdl7_2.4.2-1.11 liblua5.2-0_5.2.4-1 liblua5.2-dev_5.2.4-1 liblzma5_5.1.1alpha+20120614-2.1 liblzo2-2_2.08-1.2 libmagic1_1:5.25-2 libmount1_2.27.1-1 libmpc3_1.0.3-1 libmpfr4_3.1.3-2 libncurses5_6.0+20151024-2 libncursesw5_6.0+20151024-2 libnettle6_3.1.1-4 libogg0_1.3.2-1 libopenjpeg5_1:1.5.2-3.1+b4 liborbit-2-0_1:2.14.19-1+b1 liborbit2_1:2.14.19-1+b1 liborbit2-dev_1:2.14.19-1+b1 libp11-kit-dev_0.23.2-3 libp11-kit0_0.23.2-3 libpam-modules_1.1.8-3.1 libpam-modules-bin_1.1.8-3.1 libpam-runtime_1.1.8-3.1 libpam0g_1.1.8-3.1 libpango-1.0-0_1.38.1-1 libpango1.0-dev_1.38.1-1 libpangocairo-1.0-0_1.38.1-1 libpangoft2-1.0-0_1.38.1-1 libpangoxft-1.0-0_1.38.1-1 libpaper1_1.1.24+nmu4 libpcre16-3_2:8.38-1 libpcre3_2:8.38-1 libpcre3-dev_2:8.38-1 libpcre32-3_2:8.38-1 libpcrecpp0v5_2:8.38-1 libperl-dev_5.22.1-4 libperl5.22_5.22.1-4 libpipeline1_1.4.1-2 libpixman-1-0_0.33.4-1 libpixman-1-dev_0.33.4-1 libpng12-0_1.2.54-1 libpng12-dev_1.2.54-1 libpoppler-glib8_0.38.0-2 libpoppler57_0.38.0-2 libpopt-dev_1.16-10 libpopt0_1.16-10 libprocps4_2:3.3.10-2 libprocps5_2:3.3.11-3 libpthread-stubs0-dev_0.3-4 libpython-dev_2.7.11-1 libpython-stdlib_2.7.11-1 libpython2.7_2.7.11-2 libpython2.7-dev_2.7.11-2 libpython2.7-minimal_2.7.11-2 libpython2.7-stdlib_2.7.11-2 libreadline-dev_6.3-8+b3 libreadline6_6.3-8+b3 libreadline6-dev_6.3-8+b3 libruby2.2_2.2.3-2 libsasl2-2_2.1.26.dfsg1-14+b1 libsasl2-modules-db_2.1.26.dfsg1-14+b1 libseccomp2_2.2.3-2 libselinux1_2.4-3 libselinux1-dev_2.4-3 libsemanage-common_2.4-3 libsemanage1_2.4-3 libsepol1_2.4-2 libsepol1-dev_2.4-2 libsigsegv2_2.10-4 libsm-dev_2:1.2.2-1+b1 libsm6_2:1.2.2-1+b1 libsmartcols1_2.27.1-1 libsqlite3-0_3.9.2-1 libss2_1.42.13-1 libssl1.0.2_1.0.2e-1 libstdc++-5-dev_5.3.1-5+rpi1 libstdc++6_5.3.1-5+rpi1 libsystemd0_228-2 libtasn1-6_4.7-3 libtasn1-6-dev_4.7-3 libtcl8.6_8.6.4+dfsg-2 libtdb1_1.3.8-1 libtext-charwidth-perl_0.04-7+b6 libtext-iconv-perl_1.7-5+b7 libtext-wrapi18n-perl_0.06-7.1 libthai-data_0.1.24-1 libthai0_0.1.24-1 libtiff5_4.0.6-1 libtimedate-perl_2.3000-2 libtinfo-dev_6.0+20151024-2 libtinfo5_6.0+20151024-2 libtrio2_1.16+dfsg1-3 libubsan0_5.3.1-5+rpi1 libudev1_228-2 libunistring0_0.9.3-5.2 libusb-0.1-4_2:0.1.12-27 libustr-1.0-1_1.0.4-5 libuuid1_2.27.1-1 libvorbis0a_1.3.4-3 libvorbisfile3_1.3.4-3 libx11-6_2:1.6.3-1 libx11-data_2:1.6.3-1 libx11-dev_2:1.6.3-1 libxau-dev_1:1.0.8-1 libxau6_1:1.0.8-1 libxaw7_2:1.0.13-1 libxaw7-dev_2:1.0.13-1 libxcb-render0_1.10-3+b1 libxcb-render0-dev_1.10-3+b1 libxcb-shm0_1.10-3+b1 libxcb-shm0-dev_1.10-3+b1 libxcb1_1.10-3+b1 libxcb1-dev_1.10-3+b1 libxcomposite-dev_1:0.4.4-1 libxcomposite1_1:0.4.4-1 libxcursor-dev_1:1.1.14-1+b1 libxcursor1_1:1.1.14-1+b1 libxdamage-dev_1:1.1.4-2+b1 libxdamage1_1:1.1.4-2+b1 libxdmcp-dev_1:1.1.2-1 libxdmcp6_1:1.1.2-1 libxext-dev_2:1.3.3-1 libxext6_2:1.3.3-1 libxfixes-dev_1:5.0.1-2+b2 libxfixes3_1:5.0.1-2+b2 libxft-dev_2.3.2-1 libxft2_2.3.2-1 libxi-dev_2:1.7.5-1 libxi6_2:1.7.5-1 libxinerama-dev_2:1.1.3-1+b1 libxinerama1_2:1.1.3-1+b1 libxml2_2.9.3+dfsg1-1 libxml2-dev_2.9.3+dfsg1-1 libxml2-utils_2.9.3+dfsg1-1 libxmu-dev_2:1.1.2-2 libxmu-headers_2:1.1.2-2 libxmu6_2:1.1.2-2 libxpm-dev_1:3.5.11-1+b1 libxpm4_1:3.5.11-1+b1 libxrandr-dev_2:1.5.0-1 libxrandr2_2:1.5.0-1 libxrender-dev_1:0.9.9-2 libxrender1_1:0.9.9-2 libxt-dev_1:1.1.5-1 libxt6_1:1.1.5-1 libyaml-0-2_0.1.6-3 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch login_1:4.2-3.1 lsb-base_4.1+Debian13+rpi1+nmu1 lua5.2_5.2.4-1 m4_1.4.17-5 make_4.0-8.2 makedev_2.3.1-93 man-db_2.7.5-1 manpages_3.74-1 mawk_1.3.3-17 mime-support_3.59 mount_2.27.1-1 multiarch-support_2.21-6 nano_2.4.2-1 ncurses-base_6.0+20151024-2 ncurses-bin_6.0+20151024-2 nettle-dev_3.1.1-4 openssl_1.0.2e-1 orbit2_1:2.14.19-1+b1 passwd_1:4.2-3.1 patch_2.7.5-1 pdf2svg_0.2.2-1 perl_5.22.1-4 perl-base_5.22.1-4 perl-modules-5.22_5.22.1-4 pkg-config_0.29-2 po-debconf_1.0.19 poppler-data_0.4.7-7 procps_2:3.3.11-3 psmisc_22.21-2.1 python_2.7.11-1 python-dev_2.7.11-1 python-minimal_2.7.11-1 python2.7_2.7.11-2 python2.7-dev_2.7.11-2 python2.7-minimal_2.7.11-2 raspbian-archive-keyring_20120528.2 readline-common_6.3-8 ruby_1:2.2.4 ruby-dev_1:2.2.4 ruby-minitest_5.8.3-1 ruby-power-assert_0.2.6-1 ruby-test-unit_3.1.5-1 ruby2.2_2.2.3-2 ruby2.2-dev_2.2.3-2 rubygems-integration_1.10 sbuild-build-depends-core-dummy_0.invalid.0 sbuild-build-depends-vim-dummy_0.invalid.0 sed_4.2.2-6.1 sensible-utils_0.0.9 shared-mime-info_1.5-2 startpar_0.59-3 systemd_228-2 systemd-sysv_228-2 sysv-rc_2.88dsf-59.2 sysvinit-utils_2.88dsf-59.2 tar_1.28-2.1 tcl_8.6.0+9 tcl-dev_8.6.0+9 tcl8.6_8.6.4+dfsg-2 tcl8.6-dev_8.6.4+dfsg-2 tzdata_2015g-1 ucf_3.0031 udev_228-2 util-linux_2.27.1-1 x11-common_1:7.7+12 x11proto-composite-dev_1:0.4.2-2 x11proto-core-dev_7.0.27-1 x11proto-damage-dev_1:1.2.1-2 x11proto-fixes-dev_1:5.0-2 x11proto-input-dev_2.3.1-1 x11proto-kb-dev_1.0.7-1 x11proto-randr-dev_1.5.0-1 x11proto-render-dev_2:0.11.1-2 x11proto-xext-dev_7.3.0-1 x11proto-xinerama-dev_1.2.1-2 xorg-sgml-doctools_1:1.11-1 xtrans-dev_1.3.5-1 xz-utils_5.1.1alpha+20120614-2.1 zlib1g_1:1.2.8.dfsg-2+b1 zlib1g-dev_1:1.2.8.dfsg-2+b1

┌──────────────────────────────────────────────────────────────────────────────┐
│ Build                                                                        │
└──────────────────────────────────────────────────────────────────────────────┘


Unpack source
─────────────

gpgv: keyblock resource `/sbuild-nonexistent/.gnupg/trustedkeys.gpg': file open error
gpgv: Signature made Thu Dec 10 12:22:29 2015 UTC using RSA key ID 331BA3DB
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./vim_7.4.963-1.dsc
dpkg-source: info: extracting vim in vim-7.4.963
dpkg-source: info: unpacking vim_7.4.963.orig.tar.gz
dpkg-source: info: unpacking vim_7.4.963-1.debian.tar.xz
dpkg-source: info: applying 0001-Detect-the-rst-filetype-using-the-contents-of-the-fi.patch
dpkg-source: info: applying 0002-Support-sourcing-a-vimrc.tiny-when-Vim-is-invoked-as.patch
dpkg-source: info: applying 0003-Add-recognition-of-more-LaTeX-commands-for-tex-filet.patch
dpkg-source: info: applying 0004-Document-Debian-s-decision-to-disable-modelines-by-d.patch
dpkg-source: info: applying 0005-Update-URL-of-Debian-runtime-files-to-git-repo.patch
dpkg-source: info: applying 0006-Update-Debian-runtime-files-for-the-Ubuntu-releases.patch

Check disc space
────────────────

Sufficient free space for build

User Environment
────────────────

DEB_BUILD_OPTIONS=parallel=4
HOME=/sbuild-nonexistent
LOGNAME=buildd
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SCHROOT_ALIAS_NAME=stretch-staging-armhf-sbuild
SCHROOT_CHROOT_NAME=stretch-staging-armhf-sbuild
SCHROOT_COMMAND=env
SCHROOT_GID=111
SCHROOT_GROUP=buildd
SCHROOT_SESSION_ID=stretch-staging-armhf-sbuild-ced8b2ea-9f43-49b2-b083-8e71db4ea547
SCHROOT_UID=106
SCHROOT_USER=buildd
SHELL=/bin/sh
TERM=linux
USER=buildd

dpkg-buildpackage
─────────────────

dpkg-buildpackage: source package vim
dpkg-buildpackage: source version 2:7.4.963-1
dpkg-buildpackage: source distribution unstable
 dpkg-source --before-build vim-7.4.963
dpkg-buildpackage: host architecture armhf
 fakeroot debian/rules clean
dh_testdir
dh_testdir
dh_testdir
dh_testdir
dh_testroot
dh_testroot
dh_testroot
dh_testroot
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim-tiny.$x ; \
done
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim-gtk.$x ; \
done
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim-gnome.$x ; \
done
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim-athena.$x ; \
done
if [ "vim-tiny" = "vim-tiny" ]; then \
  rm -f debian/tiny/vimrc.tiny; \
fi
if [ "vim-athena" = "vim-tiny" ]; then \
  rm -f debian/tiny/vimrc.tiny; \
fi
if [ "vim-gtk" = "vim-tiny" ]; then \
  rm -f debian/tiny/vimrc.tiny; \
fi
if [ "vim-gnome" = "vim-tiny" ]; then \
  rm -f debian/tiny/vimrc.tiny; \
fi
rm -rf src/vim-athena
rm -rf src/vim-tiny
rm -rf src/vim-gtk
rm -rf src/vim-gnome
dh_testdir
dh_testdir
dh_testroot
dh_testroot
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim-nox.$x ; \
done
for x in install postinst prerm links lintian-overrides ; do \
  rm -f debian/vim.$x ; \
done
if [ "vim-nox" = "vim-tiny" ]; then \
  rm -f debian/tiny/vimrc.tiny; \
fi
[ ! -L src/vim-basic/po ] || /usr/bin/make -C src/vim-basic/po clean
rm -rf src/vim-nox
rm -f debian/vim-common.install debian/vim-common.links debian/vim-gui-common.install debian/vim-gui-common.links debian/vim-runtime.install debian/vim-runtime.links debian/vim-runtime.postrm debian/vim-runtime.preinst debian/runtime/debian.vim
rm -rf src/vim-basic
dh_testdir
dh_testroot
rm -f extract-stamp* build-stamp* install-stamp* configure-stamp* autoconf-stamp
rm -f debian/helpztags.1
rm -rf debian/policy/vim-policy.html
rm -f debian/policy/vim-policy.txt
rm -f debian/tmplogo.*
[ ! -f src/auto/config.cache ] || make distclean
rm -f src/auto/config.mk src/pixmaps src/runtime
[ ! -f debian/configure.dist ] || mv debian/configure.dist src/auto/configure
rm -f src/auto/config.h
rm -f runtime/doc/doctags runtime/doc/tags.ref
rm -f runtime/doc/*.html runtime/doc/*.log
dh_clean
 debian/rules build-arch
cp src/config.mk.dist src/auto/config.mk
dh_testdir
[ -f debian/configure.dist ] || cp src/auto/configure debian/configure.dist
/usr/bin/make -C src autoconf
make[1]: Entering directory '/«PKGBUILDDIR»/src'
if test ! -f configure.save; then mv configure configure.save; fi
autoconf
sed -e 's+>config.log+>auto/config.log+' -e 's+\./config.log+auto/config.log+' configure > auto/configure
chmod 755 auto/configure
mv -f configure.save configure
rm -rf autom4te.cache
rm -f auto/config.status auto/config.cache
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
/usr/bin/make distclean
make[1]: Entering directory '/«PKGBUILDDIR»'
Starting make in the src directory.
If there are problems, cd to the src directory and run make there
cd src && /usr/bin/make distclean
make[2]: Entering directory '/«PKGBUILDDIR»/src'
rm -f auto/config.cache
if test "Xdistclean" != "Xclean" \
	-a "Xdistclean" != "Xdistclean" \
	-a "Xdistclean" != "Xautoconf" \
	-a "Xdistclean" != "Xreconfig"; then \
    GUI_INC_LOC="" GUI_LIB_LOC="" \
	CC="" CPPFLAGS="" CFLAGS="" \
	LDFLAGS=""  srcdir="." \
	./configure    \
	  \
	   \
	   \
	   \
	   \
	   \
	    \
	   \
	  \
	; \
fi
cd testdir; /usr/bin/make -f Makefile clean
rm -f auto/config.status auto/config.cache config.log auto/config.log
rm -f auto/config.h auto/link.log auto/link.sed auto/config.mk
touch auto/config.h
cp config.mk.dist auto/config.mk
make[3]: Entering directory '/«PKGBUILDDIR»/src/testdir'
rm -rf *.out *.failed *.res *.rej *.orig test.log test.out X* viminfo tiny.vim small.vim mbyte.vim mzscheme.vim lua.vim test.ok benchmark.out valgrind.*
make[3]: Leaving directory '/«PKGBUILDDIR»/src/testdir'
if test -d po; then \
	cd po; /usr/bin/make checkclean; \
fi
make[3]: Entering directory '/«PKGBUILDDIR»/src/po'
rm -f *.ck
make[3]: Leaving directory '/«PKGBUILDDIR»/src/po'
rm -f *.o objects/* core vim.core vim vim xxd/*.o
rm -f xxd/xxd auto/osdef.h auto/pathdef.c auto/if_perl.c
rm -f conftest* *~ auto/link.sed
rm -f memfile_test
rm -f runtime pixmaps
rm -rf vim.app
rm -rf mzscheme_base.c
if test -d po; then \
	cd po; /usr/bin/make prefix= clean; \
fi
make[3]: Entering directory '/«PKGBUILDDIR»/src/po'
rm -f *.ck
rm -f core core.* *.old.po *.mo *.pot sjiscorr
make[3]: Leaving directory '/«PKGBUILDDIR»/src/po'
rm -f tags
make[2]: Leaving directory '/«PKGBUILDDIR»/src'
make[1]: Leaving directory '/«PKGBUILDDIR»'
touch autoconf-stamp
dh_testdir
dh_testdir
dh_testdir
dh_testdir
*** DEBIAN *** CONFIGURING VARIANT vim-tiny
*** DEBIAN *** CONFIGURING VARIANT vim-gtk
/usr/bin/make -C src shadow SHADOWDIR=vim-gtk
/usr/bin/make -C src shadow SHADOWDIR=vim-tiny
*** DEBIAN *** CONFIGURING VARIANT vim-gnome
/usr/bin/make -C src shadow SHADOWDIR=vim-gnome
*** DEBIAN *** CONFIGURING VARIANT vim-athena
/usr/bin/make -C src shadow SHADOWDIR=vim-athena
make[1]: Entering directory '/«PKGBUILDDIR»/src'
make[1]: Entering directory '/«PKGBUILDDIR»/src'
ln -s ../runtime .
ln -s ../runtime .
make[1]: Entering directory '/«PKGBUILDDIR»/src'
ln -s ../runtime .
ln: failed to create symbolic link './runtime'ln -s ../pixmaps .
: File exists
make[1]: [runtime] Error 1 (ignored)
ln: Makefile:2465: recipe for target 'runtime' failed
ln -s ../pixmaps .
make[1]: Entering directory '/«PKGBUILDDIR»/src'
ln -s ../pixmaps .
failed to create symbolic link './runtime': File exists
make[1]: [runtime] Error 1 (ignored)
ln: failed to create symbolic link './pixmaps': File exists
ln: failed to create symbolic link './pixmaps': File exists
Makefile:2465: recipe for target 'runtime' failed
ln -s ../pixmaps .
make[1]: [pixmaps] Error 1 (ignored)
make[1]: [pixmaps] Error 1 (ignored)
Makefile:2469: recipe for target 'pixmaps' failed
Makefile:2469: recipe for target 'pixmaps' failed
mkdir vim-tiny
mkdir vim-athena
mkdir vim-gtk
ln: failed to create symbolic link './pixmaps': File exists
make[1]: [pixmaps] Error 1 (ignored)
cd vim-athena; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
cd vim-tiny; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
Makefile:2469: recipe for target 'pixmaps' failed
cd vim-gtk; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
mkdir vim-gnome
cd vim-gnome; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
mkdir vim-gnome/auto
mkdir vim-tiny/auto
mkdir vim-gtk/auto
mkdir vim-athena/auto
cd vim-tiny/auto; ln -s ../../auto/configure .
cd vim-gnome/auto; ln -s ../../auto/configure .
cd vim-gtk/auto; ln -s ../../auto/configure .
cd vim-athena/auto; ln -s ../../auto/configure .
mkdir vim-tiny/po
mkdir vim-gnome/po
mkdir vim-athena/po
cd vim-tiny/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
cd vim-gnome/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
mkdir vim-gtk/po
cd vim-athena/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
cd vim-gtk/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
cd vim-athena; rm -f auto/link.sed
cd vim-gnome; rm -f auto/link.sed
cd vim-gtk; rm -f auto/link.sed
cd vim-tiny; rm -f auto/link.sed
cp Makefile configure vim-gnome
cp Makefile configure vim-athena
cp Makefile configure vim-gtk
cp Makefile configure vim-tiny
rm -f vim-gnome/auto/config.mk vim-gnome/config.mk.dist
rm -f vim-athena/auto/config.mk vim-athena/config.mk.dist
cp config.mk.dist vim-gnome/auto/config.mk
cp config.mk.dist vim-athena/auto/config.mk
rm -f vim-gtk/auto/config.mk vim-gtk/config.mk.dist
rm -f vim-tiny/auto/config.mk vim-tiny/config.mk.dist
cp config.mk.dist vim-gtk/auto/config.mk
cp config.mk.dist vim-tiny/auto/config.mk
cp config.mk.dist vim-gnome
cp config.mk.dist vim-athena
cp config.mk.dist vim-tiny
cp config.mk.dist vim-gtk
mkdir vim-athena/xxd
mkdir vim-gnome/xxd
cd vim-athena/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
mkdir vim-gtk/xxd
mkdir vim-tiny/xxd
cd vim-gnome/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
cd vim-tiny/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
cd vim-gtk/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
if test -d os_mac_rsrc; then \
	cd vim-athena; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
if test -d os_mac_rsrc; then \
	cd vim-gnome; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
if test -d os_mac_rsrc; then \
	cd vim-tiny; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
mkdir vim-gnome/testdir
if test -d os_mac_rsrc; then \
	cd vim-gtk; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
mkdir vim-athena/testdir
cd vim-gnome/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
mkdir vim-tiny/testdir
cd vim-athena/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
mkdir vim-gtk/testdir
cd vim-tiny/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
cd vim-gtk/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-gnome && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --enable-cscope --enable-gpm --enable-selinux --disable-smack --with-features=huge --enable-multibyte --enable-acl --with-x --enable-xim --enable-gui=gnome2 --disable-gtk2-check --enable-gnome-check --disable-motif-check --disable-athena-check --disable-fontset --enable-luainterp --disable-mzschemeinterp --enable-perlinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-arm-linux-gnueabihf --disable-python3interp --enable-rubyinterp --enable-tclinterp --with-tclsh=/usr/bin/tclsh
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-athena && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --enable-cscope --enable-gpm --enable-selinux --disable-smack --with-features=huge --enable-multibyte --enable-acl --with-x --enable-xim --enable-gui=athena --disable-gtk2-check --disable-gnome-check --disable-motif-check --enable-athena-check --enable-fontset --enable-luainterp --disable-mzschemeinterp --enable-perlinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-arm-linux-gnueabihf --disable-python3interp --enable-rubyinterp --enable-tclinterp --with-tclsh=/usr/bin/tclsh
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-gtk && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --enable-cscope --enable-gpm --enable-selinux --disable-smack --with-features=huge --enable-multibyte --enable-acl --with-x --enable-xim  --enable-luainterp --disable-mzschemeinterp --enable-perlinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-arm-linux-gnueabihf --disable-python3interp --enable-rubyinterp --enable-tclinterp --with-tclsh=/usr/bin/tclsh
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-tiny && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --with-features=small --disable-gui --disable-xsmp --disable-xsmp-interact --disable-netbeans --disable-gpm --enable-nls --enable-multibyte --enable-acl --enable-selinux --disable-smack
configure: creating cache auto/config.cache
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
configure: creating cache auto/config.cache
checking whether make sets $(MAKE)... checking whether the C compiler works... yes
checking for gcc... gcc
configure: creating cache auto/config.cache
configure: creating cache auto/config.cache
checking whether make sets $(MAKE)... checking whether make sets $(MAKE)... checking whether the C compiler works... yes
checking for gcc... gcc
yes
checking for gcc... gcc
checking whether the C compiler works... checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... yes
checking for C compiler default output file name... a.out
yes
checking for C compiler default output file name... a.out
checking for suffix of executables... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... checking for suffix of executables... 
checking whether we are cross compiling... 


checking whether we are cross compiling... checking whether we are cross compiling... checking whether we are cross compiling... no
no
checking for suffix of object files... checking for suffix of object files... no
checking for suffix of object files... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... o
checking whether we are using the GNU C compiler... o
checking whether we are using the GNU C compiler... o
checking whether we are using the GNU C compiler... yes
yes
checking whether gcc accepts -g... checking whether gcc accepts -g... yes
checking whether gcc accepts -g... yes
checking whether gcc accepts -g... yes
yes
checking for gcc option to accept ISO C89... checking for gcc option to accept ISO C89... yes
checking for gcc option to accept ISO C89... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... none needed
checking how to run the C preprocessor... none needed
checking how to run the C preprocessor... none needed
checking how to run the C preprocessor... gcc -E
gcc -E
gcc -E
gcc -E
checking for grep that handles long lines and -e... checking for grep that handles long lines and -e... checking for grep that handles long lines and -e... /bin/grep
/bin/grep
checking for egrep... checking for egrep... /bin/grep
checking for egrep... checking for grep that handles long lines and -e... /bin/grep -E
/bin/grep -E
/bin/grep -E
/bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... checking for fgrep... /bin/grep -F
checking for library containing strerror... /bin/grep -F
checking for library containing strerror... checking for fgrep... /bin/grep -F
checking for library containing strerror... checking for fgrep... /bin/grep -F
checking for library containing strerror... none required
checking for gawk... none required
checking for gawk... no
checking for mawk... none required
no
checking for mawk... checking for gawk... mawk
mawk
checking for strip... no
checking for strip... checking for mawk... mawk
strip
strip
checking for ANSI C header files... checking for ANSI C header files... none required
checking for strip... checking for gawk... strip
checking for ANSI C header files... no
checking for mawk... mawk
checking for strip... strip
checking for ANSI C header files... yes
yes
checking for sys/wait.h that is POSIX.1 compatible... checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking --enable-fail-if-missing argument... yes
yes
checking --enable-fail-if-missing argument... yes
yes
checking --enable-fail-if-missing argument... yes
checking for recent clang version... checking for recent clang version... checking for recent clang version... no
configure: checking for buggy tools...
no
yes
checking --enable-fail-if-missing argument... yes
configure: checking for buggy tools...
no
configure: checking for buggy tools...
checking for recent clang version... checking for BeOS... checking for BeOS... no
checking for QNX... no
configure: checking for buggy tools...
no
checking for QNX... no
checking for BeOS... checking for Darwin (Mac OS X)... no
checking for Darwin (Mac OS X)... no
checking for QNX... no
checking for Darwin (Mac OS X)... no
checking AvailabilityMacros.h usability... checking for BeOS... no
checking AvailabilityMacros.h usability... no
checking for QNX... no
no
checking for Darwin (Mac OS X)... checking AvailabilityMacros.h usability... no
checking AvailabilityMacros.h usability... no
checking AvailabilityMacros.h presence... no
checking AvailabilityMacros.h presence... no
checking AvailabilityMacros.h presence... no
checking AvailabilityMacros.h presence... no
checking for AvailabilityMacros.h... no
checking --with-local-dir argument... no
checking --with-vim-name argument... Defaulting to vim
no
checking for AvailabilityMacros.h... no
checking --with-ex-name argument... checking --with-local-dir argument... Defaulting to ex
no
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... checking --with-vim-name argument... pkg-vim-maintainers@lists.alioth.debian.org
Defaulting to vim
checking --with-ex-name argument... Defaulting to ex
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... checking if character set is EBCDIC... pkg-vim-maintainers@lists.alioth.debian.org
no
checking for AvailabilityMacros.h... no
no
checking --with-local-dir argument... checking for AvailabilityMacros.h... no
no
checking --with-vim-name argument... checking if character set is EBCDIC... Defaulting to vim
checking --with-ex-name argument... Defaulting to ex
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... pkg-vim-maintainers@lists.alioth.debian.org
checking --with-local-dir argument... no
checking --with-vim-name argument... Defaulting to vim
checking --with-ex-name argument... checking if character set is EBCDIC... Defaulting to ex
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... pkg-vim-maintainers@lists.alioth.debian.org
checking if character set is EBCDIC... no
checking --disable-smack argument... yes
no
checking --disable-selinux argument... checking --disable-smack argument... no
checking for is_selinux_enabled in -lselinux... yes
checking --disable-selinux argument... no
checking for is_selinux_enabled in -lselinux... no
checking --disable-smack argument... yes
checking --disable-selinux argument... no
checking for is_selinux_enabled in -lselinux... no
checking --disable-smack argument... yes
checking --disable-selinux argument... no
checking for is_selinux_enabled in -lselinux... yes
checking --with-features argument... huge
checking --with-compiledby argument... pkg-vim-maintainers@lists.alioth.debian.org
checking --disable-xsmp argument... yes
no
checking --with-features argument... checking --disable-xsmp-interact argument... no
huge
checking --enable-luainterp argument... yes
checking --with-compiledby argument... pkg-vim-maintainers@lists.alioth.debian.org
checking --disable-xsmp argument... no
checking --disable-xsmp-interact argument... no
checking --enable-luainterp argument... yes
yes
checking --with-features argument... huge
checking --with-lua-prefix argument... no
checking LUA_PREFIX environment var... checking --with-compiledby argument... not set, default to /usr
checking --with-luajit... no
pkg-vim-maintainers@lists.alioth.debian.org
checking for lua... checking --disable-xsmp argument... no
checking --disable-xsmp-interact argument... no
/usr/bin/lua
checking --enable-luainterp argument... checking Lua version... checking --with-lua-prefix argument... no
yes
checking LUA_PREFIX environment var... not set, default to /usr
checking --with-luajit... no
checking for lua... /usr/bin/lua
checking Lua version... checking --with-lua-prefix argument... no
checking LUA_PREFIX environment var... not set, default to /usr
checking --with-luajit... no
checking for lua... /usr/bin/lua
checking Lua version... yes
checking --with-features argument... 5.2
checking if lua.h can be found in /usr/include... no
5.2
checking if lua.h can be found in /usr/include/lua5.2... yes
small
checking if lua.h can be found in /usr/include... no
5.2
checking if link with -L/usr/lib -llua5.2 is sane... checking if lua.h can be found in /usr/include/lua5.2... checking if lua.h can be found in /usr/include... yes
no
checking --with-compiledby argument... checking if lua.h can be found in /usr/include/lua5.2... checking if link with -L/usr/lib -llua5.2 is sane... yes
pkg-vim-maintainers@lists.alioth.debian.org
checking --disable-xsmp argument... yes
checking --enable-luainterp argument... checking if link with -L/usr/lib -llua5.2 is sane... no
checking --enable-mzschemeinterp argument... no
checking --enable-perlinterp argument... no
checking --enable-pythoninterp argument... no
checking --enable-python3interp argument... no
checking --enable-tclinterp argument... no
checking --enable-rubyinterp argument... no
checking --enable-cscope argument... no
checking --enable-workshop argument... no
checking --disable-netbeans argument... yes
checking --enable-sniff argument... no
checking --enable-multibyte argument... yes
checking --enable-hangulinput argument... no
checking --enable-xim argument... defaulting to auto
checking --enable-fontset argument... no
checking for xmkmf... no
checking for X... yes
yes
checking --enable-mzschemeinterp argument... no
checking --enable-mzschemeinterp argument... yes
no
checking --enable-mzschemeinterp argument... checking --enable-perlinterp argument... no
yes
checking --enable-perlinterp argument... yes
checking for perl... /usr/bin/perl
checking Perl version... checking for perl... /usr/bin/perl
checking Perl version... checking --enable-perlinterp argument... yes
checking for perl... /usr/bin/perl
checking Perl version... OK
OK
OK
libraries , headers 
checking for gethostbyname... yes
checking for connect... yes
checking for remove... checking if compile and link flags for Perl are sane... checking if compile and link flags for Perl are sane... checking if compile and link flags for Perl are sane... yes
checking for shmat... yes
checking --enable-pythoninterp argument... yes
yes
checking for python2... /usr/bin/python2
checking Python version... checking --enable-pythoninterp argument... yes
yes
checking for python2... /usr/bin/python2
checking Python version... checking --enable-pythoninterp argument... yes
checking for python2... /usr/bin/python2
checking Python version... 2.7
checking Python is 2.3 or better... yes
checking for IceConnectionNumber in -lICE... 2.7
checking Python is 2.3 or better... 2.7
checking Python is 2.3 or better... yep
checking Python's install prefix... yep
checking Python's install prefix... yep
checking Python's install prefix... /usr
checking Python's execution prefix... /usr
checking Python's execution prefix... /usr
checking Python's execution prefix... /usr
/usr
/usr
checking Python's configuration directory... (cached) /usr/lib/python2.7/config-arm-linux-gnueabihf
yes
checking Python's configuration directory... (cached) /usr/lib/python2.7/config-arm-linux-gnueabihf
/«PKGBUILDDIR»/src/vim-gnome/config-PyMake19334:1531: warning: overriding recipe for target 'Modules/timemodule.o'
/«PKGBUILDDIR»/src/vim-gnome/config-PyMake19334:1490: warning: ignoring old recipe for target 'Modules/timemodule.o'
checking if X11 header files can be found... checking Python's configuration directory... (cached) /usr/lib/python2.7/config-arm-linux-gnueabihf
/«PKGBUILDDIR»/src/vim-athena/config-PyMake19335:1531: warning: overriding recipe for target 'Modules/timemodule.o'
/«PKGBUILDDIR»/src/vim-athena/config-PyMake19335:1490: warning: ignoring old recipe for target 'Modules/timemodule.o'
/«PKGBUILDDIR»/src/vim-gtk/config-PyMake19347:1531: warning: overriding recipe for target 'Modules/timemodule.o'
/«PKGBUILDDIR»/src/vim-gtk/config-PyMake19347:1490: warning: ignoring old recipe for target 'Modules/timemodule.o'
checking if -pthread should be used... checking if -pthread should be used... checking if -pthread should be used... yes
checking for _XdmcpAuthDoIt in -lXdmcp... yes
checking if compile and link flags for Python are sane... yes
checking if compile and link flags for Python are sane... yes
checking if compile and link flags for Python are sane... yes
checking for IceOpenConnection in -lICE... yes
yes
checking --enable-python3interp argument... no
checking --enable-python3interp argument... no
checking if -fPIE can be added for Python... checking if -fPIE can be added for Python... yes
checking --enable-python3interp argument... no
checking if -fPIE can be added for Python... yes
checking for XpmCreatePixmapFromData in -lXpm... yes
yes
checking --enable-tclinterp argument... yes
checking --enable-tclinterp argument... yes
checking --with-tclsh argument... /usr/bin/tclsh
checking for /usr/bin/tclsh... no
checking for tclsh... /usr/bin/tclsh
checking Tcl version... checking --with-tclsh argument... /usr/bin/tclsh
checking for /usr/bin/tclsh... no
checking for tclsh... /usr/bin/tclsh
checking Tcl version... yes
checking --enable-tclinterp argument... yes
checking --with-tclsh argument... /usr/bin/tclsh
checking for /usr/bin/tclsh... no
checking for tclsh... /usr/bin/tclsh
checking Tcl version... 8.6 - OK
8.6 - OK
8.6 - OK
checking for location of Tcl include... /usr/include/tcl8.6/tcl.h
checking for location of tclConfig.sh script... checking for location of Tcl include... /usr/include/tcl8.6/tcl.h
checking for location of tclConfig.sh script... /usr/lib/tclConfig.sh
/usr/lib/tclConfig.sh
checking for location of Tcl include... /usr/include/tcl8.6/tcl.h
checking for location of tclConfig.sh script... yes
checking if X11 header files implicitly declare return values... /usr/lib/tclConfig.sh
checking --enable-rubyinterp argument... yes
checking --with-ruby-command argument... checking --enable-rubyinterp argument... defaulting to ruby
checking for ruby... yes
/usr/bin/ruby
checking Ruby version... checking --with-ruby-command argument... defaulting to ruby
checking for ruby... /usr/bin/ruby
checking Ruby version... checking --enable-rubyinterp argument... yes
no
checking --with-ruby-command argument... defaulting to ruby
checking for ruby... /usr/bin/ruby
checking Ruby version... checking size of wchar_t is 2 bytes... OK
checking Ruby rbconfig... OK
checking Ruby rbconfig... OK
checking Ruby rbconfig... no
checking --enable-gui argument... no GUI support
checking for CYGWIN environment... no
checking whether toupper is broken... RbConfig
checking Ruby header files... RbConfig
checking Ruby header files... RbConfig
checking Ruby header files... no
checking whether __DATE__ and __TIME__ work... /usr/include/ruby-2.2.0
/usr/include/ruby-2.2.0
yes
checking whether __attribute__((unused)) is allowed... /usr/include/ruby-2.2.0
yes
checking elf.h usability... yes
checking elf.h presence... yes
checking for elf.h... yes
checking for main in -lelf... no
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking stdint.h usability... yes
checking stdint.h presence... yes
checking for stdint.h... yes
checking stdlib.h usability... yes
checking stdlib.h presence... checking --enable-cscope argument... yes
checking --enable-workshop argument... no
checking --disable-netbeans argument... no
checking --enable-cscope argument... checking for socket in -lsocket... yes
checking --enable-workshop argument... no
checking --disable-netbeans argument... no
checking for socket in -lsocket... yes
checking for stdlib.h... yes
checking string.h usability... checking --enable-cscope argument... yes
checking --enable-workshop argument... no
checking --disable-netbeans argument... no
checking for socket in -lsocket... no
checking for gethostbyname in -lnsl... no
checking for gethostbyname in -lnsl... no
checking for gethostbyname in -lnsl... yes
checking string.h presence... yes
checking for string.h... yes
checking sys/select.h usability... yes
yes
checking whether compiling netbeans integration is possible... checking whether compiling netbeans integration is possible... yes
checking whether compiling netbeans integration is possible... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/utsname.h usability... yes
checking sys/utsname.h presence... yes
checking for sys/utsname.h... yes
checking termcap.h usability... no
checking termcap.h presence... yes
yes
yes
checking --enable-sniff argument... no
checking --enable-multibyte argument... yes
checking --enable-hangulinput argument... checking --enable-sniff argument... no
no
checking --enable-xim argument... checking --enable-sniff argument... checking --enable-multibyte argument... yes
no
yes
checking --enable-fontset argument... checking --enable-multibyte argument... checking --enable-hangulinput argument... yes
yes
no
checking --enable-xim argument... checking --enable-hangulinput argument... no
yes
checking --enable-xim argument... checking --enable-fontset argument... no
yes
checking --enable-fontset argument... no
no
checking for termcap.h... no
checking for xmkmf... no
checking for xmkmf... checking for X... no
checking for X... checking for xmkmf... no
checking for X... checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sgtty.h usability... libraries , headers 
libraries , headers 
libraries , headers 
yes
checking sgtty.h presence... yes
checking for sgtty.h... yes
checking sys/ioctl.h usability... checking for gethostbyname... checking for gethostbyname... checking for gethostbyname... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/time.h usability... yes
checking for connect... yes
checking for connect... yes
checking for connect... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/types.h usability... yes
checking for remove... yes
checking for remove... yes
checking for remove... yes
checking sys/types.h presence... yes
checking for sys/types.h... yes
checking termio.h usability... yes
checking for shmat... yes
checking for shmat... yes
checking for shmat... yes
checking termio.h presence... yes
checking for IceConnectionNumber in -lICE... yes
checking for IceConnectionNumber in -lICE... yes
checking for IceConnectionNumber in -lICE... yes
checking for termio.h... yes
checking iconv.h usability... yes
checking iconv.h presence... yes
yes
yes
yes
checking for iconv.h... yes
checking if X11 header files can be found... checking if X11 header files can be found... checking if X11 header files can be found... checking inttypes.h usability... yes
checking inttypes.h presence... yes
checking for inttypes.h... yes
yes
yes
yes
checking for _XdmcpAuthDoIt in -lXdmcp... checking for _XdmcpAuthDoIt in -lXdmcp... checking for _XdmcpAuthDoIt in -lXdmcp... checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking math.h usability... yes
checking for IceOpenConnection in -lICE... yes
yes
checking for IceOpenConnection in -lICE... checking for IceOpenConnection in -lICE... yes
checking math.h presence... yes
yes
checking for XpmCreatePixmapFromData in -lXpm... checking for XpmCreatePixmapFromData in -lXpm... yes
checking for XpmCreatePixmapFromData in -lXpm... yes
checking for math.h... yes
checking unistd.h usability... yes
checking if X11 header files implicitly declare return values... yes
checking if X11 header files implicitly declare return values... yes
checking if X11 header files implicitly declare return values... yes
checking unistd.h presence... yes
checking for unistd.h... yes
checking stropts.h usability... no
checking size of wchar_t is 2 bytes... no
checking size of wchar_t is 2 bytes... no
checking size of wchar_t is 2 bytes... yes
checking stropts.h presence... yes
checking for stropts.h... yes
checking errno.h usability... no
checking --enable-gui argument... no
checking --enable-gui argument... no
checking --enable-gui argument... yes/auto - automatic GUI support
checking whether or not to look for GTK+ 2... yes
checking whether or not to look for GNOME... no
checking whether or not to look for Motif... yes
checking whether or not to look for Athena... yes
GNOME 2.x GUI support
checking whether or not to look for neXtaw... yes
checking whether or not to look for Carbon... yes
checking --disable-gtktest argument... gtk test enabled
checking for pkg-config... checking --disable-gtktest argument... gtk test enabled
checking for pkg-config... Athena GUI support
/usr/bin/pkg-config
/usr/bin/pkg-config
checking for GTK - version >= 2.2.0... checking for GTK - version >= 2.2.0... checking if Athena header files can be found... yes
checking errno.h presence... yes
checking for errno.h... yes
checking sys/resource.h usability... yes
checking for XShapeQueryExtension in -lXext... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/systeminfo.h usability... yes
checking for wslen in -lw... no
checking sys/systeminfo.h presence... no
checking for sys/systeminfo.h... no
checking locale.h usability... no
checking for dlsym in -ldl... yes
checking locale.h presence... yes
checking for locale.h... yes
checking sys/stream.h usability... yes
checking for XmuCreateStippledPixmap in -lXmu... no
checking sys/stream.h presence... no
checking for sys/stream.h... no
checking termios.h usability... yes
checking for extra X11 defines... no
checking X11/SM/SMlib.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking libc.h usability... yes
checking X11/SM/SMlib.h presence... yes
checking for X11/SM/SMlib.h... yes
checking X11/xpm.h usability... no
checking libc.h presence... no
checking for libc.h... no
checking sys/statfs.h usability... yes
checking X11/xpm.h presence... yes
checking for X11/xpm.h... yes
checking X11/Sunkeysym.h usability... yes
checking sys/statfs.h presence... yes
checking for sys/statfs.h... yes
checking poll.h usability... yes; found version 2.24.29
checking for libgnomeui-2.0... yes; found version 2.24.29
yes
checking X11/Sunkeysym.h presence... checking X11/SM/SMlib.h usability... yes
yes
checking for X11/Sunkeysym.h... yes
checking for XIMText in X11/Xlib.h... checking for FreeBSD... no
checking X11/SM/SMlib.h usability... yes
checking for X11/Xmu/Editres.h... yes
checking poll.h presence... yes
checking for poll.h... yes
yes
checking X11/SM/SMlib.h presence... checking sys/poll.h usability... yes
checking for X11/SM/SMlib.h... yes
checking X11/xpm.h usability... yes
checking X11/SM/SMlib.h presence... yes
checking for X11/SM/SMlib.h... yes
checking X11/xpm.h usability... yes
checking for CYGWIN environment... no
checking whether toupper is broken... yes
checking sys/poll.h presence... yes
checking for sys/poll.h... yes
yes
checking X11/xpm.h presence... checking pwd.h usability... yes
checking for X11/xpm.h... yes
yes
checking X11/xpm.h presence... checking X11/Sunkeysym.h usability... yes
checking for X11/xpm.h... yes
checking X11/Sunkeysym.h usability... yes
checking pwd.h presence... no
checking whether __DATE__ and __TIME__ work... yes
checking for pwd.h... yes
yes
checking X11/Sunkeysym.h presence... checking utime.h usability... yes
checking for X11/Sunkeysym.h... yes
checking for XIMText in X11/Xlib.h... yes
checking X11/Sunkeysym.h presence... yes
checking for CYGWIN environment... no
checking whether toupper is broken... yes
checking for X11/Sunkeysym.h... yes
yes
checking whether __attribute__((unused)) is allowed... checking for XIMText in X11/Xlib.h... yes
checking for CYGWIN environment... no
checking whether toupper is broken... yes
checking utime.h presence... yes
yes
checking for utime.h... checking elf.h usability... yes
checking sys/param.h usability... yes
checking elf.h presence... no
checking whether __DATE__ and __TIME__ work... yes
checking for elf.h... yes
checking for main in -lelf... yes
no
checking sys/param.h presence... checking whether __DATE__ and __TIME__ work... yes
yes
checking for sys/param.h... checking whether __attribute__((unused)) is allowed... yes
checking libintl.h usability... no
checking for dirent.h that defines DIR... yes
checking whether __attribute__((unused)) is allowed... yes
checking elf.h usability... yes
yes
checking for library containing opendir... checking elf.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
yes
checking elf.h presence... checking libgen.h usability... yes
checking for elf.h... yes
checking for main in -lelf... yes
checking elf.h presence... yes
checking for elf.h... yes
checking for main in -lelf... none required
checking stdarg.h usability... yes
checking libgen.h presence... no
checking for dirent.h that defines DIR... yes
checking for libgen.h... yes
checking util/debug.h usability... no
checking for dirent.h that defines DIR... yes
checking stdarg.h presence... yes
yes
checking for stdarg.h... checking for library containing opendir... yes
checking stdint.h usability... yes
no
checking util/debug.h presence... checking for library containing opendir... no
checking for util/debug.h... no
checking util/msg18n.h usability... yes
checking stdint.h presence... yes
checking for stdint.h... yes
none required
checking stdlib.h usability... checking stdarg.h usability... none required
no
checking util/msg18n.h presence... checking stdarg.h usability... no
checking for util/msg18n.h... no
yes
checking stdlib.h presence... yes
checking stdarg.h presence... checking frame.h usability... yes
checking for stdarg.h... yes
yes
checking for stdlib.h... yes
checking stdint.h usability... yes
checking stdarg.h presence... checking string.h usability... yes
checking for stdarg.h... yes
checking stdint.h usability... no
checking frame.h presence... yes
checking stdint.h presence... no
checking for frame.h... no
yes
checking for stdint.h... yes
yes
checking string.h presence... checking sys/acl.h usability... checking stdlib.h usability... yes
checking stdint.h presence... yes
checking for string.h... yes
checking sys/select.h usability... yes
checking for stdint.h... yes
checking stdlib.h usability... yes
checking stdlib.h presence... yes
checking sys/acl.h presence... yes
checking for stdlib.h... yes
yes
checking sys/select.h presence... yes
checking for sys/acl.h... yes
checking string.h usability... yes
checking stdlib.h presence... checking sys/access.h usability... yes
checking for sys/select.h... yes
checking sys/utsname.h usability... yes
checking for stdlib.h... yes
checking string.h usability... yes
checking string.h presence... no
checking sys/access.h presence... yes
checking sys/utsname.h presence... yes
checking for string.h... yes
checking sys/select.h usability... no
checking for sys/access.h... no
yes
checking string.h presence... yes
checking for sys/utsname.h... yes
checking sys/sysinfo.h usability... checking termcap.h usability... yes
checking for string.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... no
checking termcap.h presence... yes
checking for sys/select.h... yes
checking sys/utsname.h usability... yes
checking sys/select.h presence... no
checking for termcap.h... no
checking fcntl.h usability... yes
checking for sys/select.h... yes
yes
checking sys/sysinfo.h presence... checking sys/utsname.h usability... yes
checking for sys/sysinfo.h... yes
checking wchar.h usability... yes
checking sys/utsname.h presence... yes
checking fcntl.h presence... yes
checking for sys/utsname.h... yes
checking termcap.h usability... yes
checking for fcntl.h... yes
yes
checking sys/utsname.h presence... checking sgtty.h usability... yes
checking for sys/utsname.h... yes
yes
checking wchar.h presence... checking termcap.h usability... no
checking termcap.h presence... yes
checking for wchar.h... yes
checking wctype.h usability... no
checking for termcap.h... no
checking fcntl.h usability... yes
checking sgtty.h presence... yes
checking for sgtty.h... yes
no
checking termcap.h presence... checking sys/ioctl.h usability... no
checking for termcap.h... no
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking wctype.h presence... yes
checking for fcntl.h... yes
yes
checking for wctype.h... yes
checking for sys/ptem.h... checking sgtty.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
yes
checking fcntl.h presence... checking sys/time.h usability... no
checking for sys/sysctl.h... yes
checking for fcntl.h... yes
checking sgtty.h usability... yes
checking sgtty.h presence... yes
checking for sgtty.h... yes
yes
checking sys/time.h presence... checking sys/ioctl.h usability... yes
checking for pthread_np.h... yes
checking for sys/time.h... yes
yes
checking sgtty.h presence... checking sys/types.h usability... yes
checking for sgtty.h... yes
no
checking strings.h usability... checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
yes
checking sys/types.h presence... checking sys/time.h usability... yes
checking for sys/types.h... yes
yes
checking sys/ioctl.h presence... yes
checking strings.h presence... checking termio.h usability... yes
checking for sys/ioctl.h... yes
yes
checking for strings.h... yes
checking if strings.h can be included after string.h... checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
yes
checking whether gcc needs -traditional... checking sys/types.h usability... yes
checking termio.h presence... yes
checking for termio.h... yes
yes
checking sys/time.h presence... no
checking for an ANSI C-conforming const... checking iconv.h usability... yes
checking for sys/time.h... yes
checking sys/types.h usability... yes
checking for working volatile... yes
checking sys/types.h presence... yes
checking for sys/types.h... yes
yes
checking iconv.h presence... checking termio.h usability... yes
checking for mode_t... yes
yes
checking sys/types.h presence... checking for iconv.h... yes
checking inttypes.h usability... yes
checking for sys/types.h... yes
checking termio.h usability... yes
checking termio.h presence... yes
checking for termio.h... yes
yes
checking inttypes.h presence... checking iconv.h usability... yes
checking for inttypes.h... yes
yes
checking termio.h presence... checking langinfo.h usability... yes
checking for termio.h... yes
checking iconv.h usability... yes
checking iconv.h presence... yes
checking for off_t... yes
checking for iconv.h... yes
checking inttypes.h usability... yes
checking langinfo.h presence... yes
checking iconv.h presence... yes
checking for langinfo.h... yes
checking math.h usability... yes
checking for iconv.h... yes
checking inttypes.h usability... yes
checking inttypes.h presence... yes
checking for inttypes.h... yes
checking langinfo.h usability... yes
checking inttypes.h presence... yes
checking math.h presence... yes
checking for inttypes.h... yes
yes
checking for pid_t... checking langinfo.h usability... yes
checking for math.h... yes
checking unistd.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking math.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking math.h usability... yes
checking unistd.h presence... yes
checking for unistd.h... yes
checking stropts.h usability... yes
checking math.h presence... yes
checking for size_t... yes
checking for math.h... yes
yes
checking math.h presence... checking unistd.h usability... yes
checking stropts.h presence... yes
checking for stropts.h... yes
yes
checking for math.h... yes
checking errno.h usability... checking unistd.h usability... yes
checking unistd.h presence... yes
checking for unistd.h... yes
yes
checking for uid_t in sys/types.h... checking stropts.h usability... yes
yes
checking unistd.h presence... checking errno.h presence... yes
checking for uint32_t... yes
checking for errno.h... yes
yes
checking for unistd.h... yes
checking sys/resource.h usability... checking stropts.h usability... yes
checking stropts.h presence... yes
checking for stropts.h... yes
yes
checking whether time.h and sys/time.h may both be included... checking errno.h usability... yes
checking sys/resource.h presence... yes
checking stropts.h presence... yes
checking for sys/resource.h... yes
yes
checking for stropts.h... yes
yes
checking for ino_t... checking sys/systeminfo.h usability... checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking sys/resource.h usability... yes
checking errno.h presence... no
checking sys/systeminfo.h presence... yes
checking for errno.h... yes
no
checking for sys/systeminfo.h... no
checking sys/resource.h usability... checking locale.h usability... yes
checking sys/resource.h presence... yes
checking for dev_t... yes
checking for sys/resource.h... yes
checking sys/systeminfo.h usability... yes
checking sys/resource.h presence... yes
checking locale.h presence... yes
yes
checking for locale.h... checking for sys/resource.h... yes
yes
checking sys/stream.h usability... checking sys/systeminfo.h usability... no
checking sys/systeminfo.h presence... no
checking for sys/systeminfo.h... no
checking locale.h usability... no
checking sys/stream.h presence... no
checking sys/systeminfo.h presence... no
checking for sys/stream.h... no
no
checking for sys/systeminfo.h... no
checking termios.h usability... checking locale.h usability... yes
checking whether byte ordering is bigendian... yes
checking locale.h presence... yes
checking for locale.h... yes
yes
checking termios.h presence... yes
checking locale.h presence... checking sys/stream.h usability... yes
checking for termios.h... yes
yes
checking for locale.h... yes
checking sys/stream.h usability... checking libc.h usability... no
checking sys/stream.h presence... no
checking for rlim_t... no
checking for sys/stream.h... no
no
checking libc.h presence... no
checking sys/stream.h presence... checking termios.h usability... yes
checking for stack_t... no
checking for libc.h... no
no
checking for sys/stream.h... no
checking sys/statfs.h usability... checking termios.h usability... yes
checking whether stack_t has an ss_base field... yes
checking termios.h presence... no
checking --with-tlib argument... empty: automatic terminal library selection
yes
checking for termios.h... yes
checking for tgetent in -ltinfo... yes
checking sys/statfs.h presence... yes
checking termios.h presence... checking libc.h usability... yes
checking for sys/statfs.h... yes
yes
checking for termios.h... yes
checking poll.h usability... checking libc.h usability... no
checking libc.h presence... yes
yes
checking poll.h presence... no
checking libc.h presence... no
checking for libc.h... no
checking sys/statfs.h usability... yes
checking for poll.h... yes
no
checking for libc.h... no
checking sys/statfs.h usability... checking sys/poll.h usability... yes
checking sys/statfs.h presence... yes
checking sys/statfs.h presence... yes
checking for sys/statfs.h... yes
yes
checking sys/poll.h presence... yes
checking for sys/statfs.h... yes
checking poll.h usability... yes
checking for sys/poll.h... yes
checking whether we talk terminfo... checking poll.h usability... checking pwd.h usability... yes
checking poll.h presence... yes
checking poll.h presence... yes
yes
checking pwd.h presence... checking for poll.h... yes
yes
checking for poll.h... yes
checking sys/poll.h usability... yes
checking for pwd.h... yes
checking sys/poll.h usability... checking utime.h usability... yes
checking what tgetent() returns for an unknown terminal... yes
checking sys/poll.h presence... yes
checking sys/poll.h presence... yes
yes
checking utime.h presence... checking for sys/poll.h... yes
yes
checking for sys/poll.h... yes
checking pwd.h usability... yes
checking for utime.h... yes
checking pwd.h usability... checking sys/param.h usability... zero
checking whether termcap.h contains ospeed... yes
checking pwd.h presence... yes
checking pwd.h presence... yes
yes
checking sys/param.h presence... checking for pwd.h... yes
no
checking whether ospeed can be extern... yes
checking for pwd.h... yes
checking utime.h usability... checking utime.h usability... yes
checking for sys/param.h... yes
checking libintl.h usability... yes
checking utime.h presence... yes
checking utime.h presence... yes
yes
checking for utime.h... yes
checking whether termcap.h contains UP, BC and PC... yes
checking for utime.h... yes
checking sys/param.h usability... yes
checking libintl.h presence... checking sys/param.h usability... yes
checking for libintl.h... yes
no
checking whether UP, BC and PC can be extern... checking libgen.h usability... yes
checking sys/param.h presence... yes
checking sys/param.h presence... yes
checking libgen.h presence... yes
checking for sys/param.h... yes
yes
checking for sys/param.h... yes
yes
checking for libgen.h... yes
checking libintl.h usability... yes
checking libintl.h usability... checking util/debug.h usability... checking whether tputs() uses outfuntype... no
checking whether sys/select.h and sys/time.h may both be included... yes
checking libintl.h presence... no
checking util/debug.h presence... yes
checking libintl.h presence... yes
checking for libintl.h... yes
yes
checking for /dev/ptc... yes
no
checking for libintl.h... checking for SVR4 ptys... yes
no
checking for util/debug.h... no
checking libgen.h usability... checking util/msg18n.h usability... checking libgen.h usability... yes
checking libgen.h presence... yes
checking libgen.h presence... no
checking util/msg18n.h presence... yes
checking for libgen.h... yes
yes
checking for libgen.h... yes
yes
no
checking for util/msg18n.h... no
checking for ptyranges... checking util/debug.h usability... checking frame.h usability... checking util/debug.h usability... don't know
checking default tty permissions/group... no
checking util/debug.h presence... no
checking frame.h presence... no
checking util/debug.h presence... no
checking for frame.h... no
no
checking for util/debug.h... no
no
checking for util/debug.h... no
checking sys/acl.h usability... checking util/msg18n.h usability... checking util/msg18n.h usability... can't determine - assume ptys are world accessible
world
checking return type of signal handlers... yes
no
checking util/msg18n.h presence... checking sys/acl.h presence... no
checking util/msg18n.h presence... yes
checking for sys/acl.h... yes
no
checking for util/msg18n.h... no
no
checking for util/msg18n.h... no
checking frame.h usability... checking frame.h usability... checking sys/access.h usability... void
checking for struct sigcontext... no
checking frame.h presence... no
checking sys/access.h presence... no
checking frame.h presence... yes
checking getcwd implementation is broken... no
checking for frame.h... no
no
checking for sys/access.h... no
no
checking for frame.h... no
checking sys/acl.h usability... checking sys/sysinfo.h usability... checking sys/acl.h usability... yes
checking sys/acl.h presence... yes
checking sys/sysinfo.h presence... yes
checking sys/acl.h presence... yes
checking for sys/sysinfo.h... yes
yes
checking for sys/acl.h... yes
yes
checking for sys/acl.h... yes
no
checking for bcmp... checking wchar.h usability... checking sys/access.h usability... checking sys/access.h usability... no
checking sys/access.h presence... no
checking sys/access.h presence... yes
checking wchar.h presence... yes
checking for wchar.h... yes
no
checking for sys/access.h... no
no
checking for sys/access.h... no
checking sys/sysinfo.h usability... yes
checking sys/sysinfo.h usability... checking wctype.h usability... checking for fchdir... yes
checking sys/sysinfo.h presence... yes
checking sys/sysinfo.h presence... yes
checking wctype.h presence... yes
checking for sys/sysinfo.h... yes
yes
checking for sys/sysinfo.h... yes
yes
checking for wctype.h... yes
checking wchar.h usability... checking for sys/ptem.h... checking wchar.h usability... yes
checking for fchown... no
checking for sys/sysctl.h... yes
checking wchar.h presence... yes
checking wchar.h presence... yes
checking for pthread_np.h... yes
checking for wchar.h... yes
yes
checking for wchar.h... yes
checking wctype.h usability... checking wctype.h usability... yes
checking for fsync... no
checking strings.h usability... yes
checking wctype.h presence... yes
checking wctype.h presence... yes
checking for wctype.h... yes
yes
checking for wctype.h... yes
checking for sys/ptem.h... checking for sys/ptem.h... yes
yes
checking strings.h presence... checking for getcwd... yes
checking for strings.h... yes
checking if strings.h can be included after string.h... no
checking for sys/sysctl.h... no
checking for sys/sysctl.h... yes
checking whether gcc needs -traditional... yes
checking for pthread_np.h... yes
checking for pthread_np.h... no
checking for an ANSI C-conforming const... yes
checking for getpseudotty... no
no
checking strings.h usability... checking strings.h usability... yes
checking for working volatile... yes
checking for mode_t... yes
checking strings.h presence... yes
checking strings.h presence... yes
checking for strings.h... yes
checking if strings.h can be included after string.h... yes
checking for strings.h... yes
checking if strings.h can be included after string.h... no
checking for getpwent... yes
checking whether gcc needs -traditional... yes
checking whether gcc needs -traditional... no
checking for an ANSI C-conforming const... no
checking for an ANSI C-conforming const... yes
yes
checking for working volatile... yes
checking for working volatile... yes
checking for off_t... checking for getpwnam... yes
checking for mode_t... yes
checking for mode_t... yes
checking for getpwuid... yes
checking for pid_t... yes
yes
checking for off_t... checking for off_t... yes
checking for getrlimit... yes
checking for size_t... yes
checking for gettimeofday... yes
checking for pid_t... yes
checking for pid_t... yes
checking for getwd... yes
checking for uid_t in sys/types.h... yes
checking for uint32_t... yes
checking for size_t... yes
checking for size_t... yes
yes
checking whether time.h and sys/time.h may both be included... checking for lstat... yes
checking for ino_t... yes
yes
checking for uid_t in sys/types.h... checking for uid_t in sys/types.h... yes
yes
checking for uint32_t... yes
checking for uint32_t... checking for memcmp... yes
checking whether time.h and sys/time.h may both be included... yes
checking whether time.h and sys/time.h may both be included... yes
checking for dev_t... yes
checking for memset... yes
checking for ino_t... yes
checking for ino_t... yes
checking for mkdtemp... yes
checking whether byte ordering is bigendian... yes
checking for dev_t... yes
checking for dev_t... yes
checking for nanosleep... no
checking for rlim_t... yes
checking for stack_t... yes
checking whether byte ordering is bigendian... yes
checking whether byte ordering is bigendian... yes
yes
checking whether stack_t has an ss_base field... checking for opendir... no
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... yes
checking for putenv... no
no
checking for rlim_t... checking for rlim_t... yes
checking for stack_t... yes
checking for stack_t... yes
yes
checking whether stack_t has an ss_base field... yes
checking whether stack_t has an ss_base field... yes
checking for qsort... no
checking --with-tlib argument... empty: automatic terminal library selection
no
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... checking for tgetent in -ltinfo... checking whether we talk terminfo... yes
yes
yes
checking for readlink... yes
checking what tgetent() returns for an unknown terminal... yes
checking for select... checking whether we talk terminfo... checking whether we talk terminfo... yes
zero
checking whether termcap.h contains ospeed... checking for setenv... yes
checking what tgetent() returns for an unknown terminal... yes
checking what tgetent() returns for an unknown terminal... no
checking whether ospeed can be extern... yes
checking for setpgid... yes
checking whether termcap.h contains UP, BC and PC... zero
checking whether termcap.h contains ospeed... zero
checking whether termcap.h contains ospeed... no
checking whether UP, BC and PC can be extern... no
checking whether ospeed can be extern... no
checking whether ospeed can be extern... yes
checking for setsid... yes
checking whether tputs() uses outfuntype... yes
checking whether termcap.h contains UP, BC and PC... yes
checking whether termcap.h contains UP, BC and PC... no
checking whether sys/select.h and sys/time.h may both be included... no
checking whether UP, BC and PC can be extern... yes
no
checking whether UP, BC and PC can be extern... checking for sigaltstack... yes
checking for /dev/ptc... no
checking for SVR4 ptys... yes
yes
checking whether tputs() uses outfuntype... checking whether tputs() uses outfuntype... yes
checking for sigstack... no
no
checking whether sys/select.h and sys/time.h may both be included... checking whether sys/select.h and sys/time.h may both be included... yes
checking for ptyranges... don't know
checking default tty permissions/group... yes
yes
checking for /dev/ptc... no
checking for SVR4 ptys... checking for /dev/ptc... no
checking for SVR4 ptys... yes
checking for sigset... yes
yes
checking for ptyranges... checking for ptyranges... don't know
don't know
checking default tty permissions/group... checking default tty permissions/group... can't determine - assume ptys are world accessible
world
checking return type of signal handlers... yes
checking for sigsetjmp... void
checking for struct sigcontext... yes
checking getcwd implementation is broken... no
can't determine - assume ptys are world accessible
world
checking for sigaction... checking return type of signal handlers... can't determine - assume ptys are world accessible
world
checking return type of signal handlers... void
checking for struct sigcontext... void
checking for struct sigcontext... no
checking for bcmp... yes
yes
checking getcwd implementation is broken... checking for sigvec... yes
checking getcwd implementation is broken... yes
checking for fchdir... no
no
checking for strcasecmp... checking for bcmp... no
checking for bcmp... yes
yes
yes
checking for fchown... checking for strerror... yes
checking for fchdir... checking for fchdir... yes
yes
yes
checking for strftime... checking for fsync... yes
checking for fchown... checking for fchown... yes
yes
yes
yes
checking for getcwd... checking for stricmp... checking for fsync... checking for fsync... yes
yes
yes
no
checking for getpseudotty... checking for strncasecmp... checking for getcwd... checking for getcwd... yes
yes
yes
no
checking for getpseudotty... checking for strnicmp... checking for getpwent... checking for getpseudotty... yes
no
no
no
checking for strpbrk... checking for getpwent... checking for getpwnam... checking for getpwent... yes
yes
yes
yes
checking for getpwnam... checking for getpwuid... checking for getpwnam... checking for strtol... yes
yes
yes
yes
checking for tgetent... checking for getpwuid... checking for getrlimit... checking for getpwuid... yes
yes
yes
yes
checking for towlower... checking for getrlimit... checking for getrlimit... checking for gettimeofday... yes
yes
yes
yes
checking for getwd... checking for gettimeofday... checking for gettimeofday... checking for towupper... yes
yes
yes
yes
checking for getwd... checking for getwd... checking for iswupper... checking for lstat... yes
yes
yes
yes
checking for memcmp... checking for usleep... checking for lstat... checking for lstat... yes
yes
yes
yes
checking for utime... checking for memcmp... checking for memcmp... checking for memset... yes
checking for utimes... yes
yes
yes
checking for memset... checking for memset... checking for mkdtemp... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
yes
checking for nanosleep... yes
checking for mkdtemp... checking for mkdtemp... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... yes
yes
checking for opendir... checking for nanosleep... yes
checking for nanosleep... 64
checking for st_blksize... yes
yes
checking for opendir... checking for putenv... yes
yes
checking whether stat() ignores a trailing slash... checking for opendir... yes
checking for putenv... yes
no
checking for iconv_open()... checking for qsort... yes
checking for putenv... yes
checking for qsort... yes
checking for readlink... yes
checking for qsort... yes
checking for nl_langinfo(CODESET)... yes
yes
checking for readlink... checking for select... yes
checking for readlink... yes
checking for strtod in -lm... yes
yes
checking for select... yes
checking for setenv... checking for select... yes
checking for strtod() and other floating point functions... yes
yes
checking for setenv... yes
checking for setpgid... checking for setenv... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... yes
yes
yes
checking for setpgid... checking for setsid... checking for setpgid... no
checking for acl_get_file in -lacl... yes
yes
yes
checking for fgetxattr in -lattr... checking for sigaltstack... yes
checking for setsid... checking for setsid... yes
yes
checking for POSIX ACL support... checking for sigstack... yes
checking for sigaltstack... yes
checking for sigaltstack... yes
checking for acl_get in -lsec... yes
yes
checking for sigset... checking for sigstack... yes
checking for sigstack... no
checking for Solaris ACL support... no
checking for AIX ACL support... yes
checking for sigsetjmp... yes
checking for sigset... yes
no
checking for sigset... checking --disable-gpm argument... yes
checking --disable-sysmouse argument... no
checking for sysmouse... no
checking for FD_CLOEXEC... yes
checking for rename... no
yes
checking for sigaction... checking for sigsetjmp... yes
checking for sigsetjmp... yes
checking for sigvec... no
yes
checking for sysctl... checking for sigaction... not usable
checking for sysinfo... no
checking for sigaction... yes
checking for sysinfo.mem_unit... no
checking for strcasecmp... yes
checking for sigvec... yes
checking for sysconf... yes
checking for sigvec... yes
checking size of int... yes
checking for strerror... no
checking for strcasecmp... no
checking for strcasecmp... 4
checking size of long... yes
checking for strftime... yes
checking for strerror... yes
checking for strerror... yes
yes
checking for stricmp... checking for strftime... 4
checking size of time_t... yes
checking for strftime... no
checking for strncasecmp... yes
checking for stricmp... yes
4
checking size of off_t... checking for stricmp... yes
checking for strnicmp... no
checking for strncasecmp... no
checking for strncasecmp... 8
checking uint32_t is 32 bits... no
checking for strpbrk... yes
checking for strnicmp... yes
checking for strnicmp... ok
checking whether memmove handles overlaps... yes
checking for strtol... no
checking for strpbrk... no
checking for strpbrk... yes
checking for tgetent... yes
checking whether X_LOCALE needed... yes
checking for strtol... yes
checking for strtol... yes
checking for towlower... yes
checking for tgetent... no
yes
checking whether Xutf8SetWMProperties() can be used... checking for tgetent... yes
checking for towupper... yes
checking for towlower... yes
yes
checking for _xpg4_setrunelocale in -lxpg4... checking for towlower... yes
checking for iswupper... no
checking how to create tags... yes
ctags
checking how to run man with a section nr... checking for towupper... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... yes
checking for towupper... yes
checking for usleep... gettext() works
checking dlfcn.h usability... yes
checking for iswupper... yes
checking for iswupper... yes
checking for utime... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dlopen()... yes
checking for usleep... yes
checking for usleep... yes
no
checking for dlopen() in -ldl... checking for utimes... yes
checking for utime... yes
checking for utime... yes
checking for dlsym()... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
checking for utimes... yes
checking for utimes... yes
checking setjmp.h usability... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
checking setjmp.h presence... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
checking for setjmp.h... yes
checking for GCC 3 or later... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking linker --as-needed support... 64
checking for st_blksize... yes
no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... yes
checking whether stat() ignores a trailing slash... configure: updating cache auto/config.cache
no
configure: creating auto/config.status
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for st_blksize... no
checking for iconv_open()... 64
checking for st_blksize... yes
checking whether stat() ignores a trailing slash... yes
checking whether stat() ignores a trailing slash... config.status: creating auto/config.mk
no
checking for iconv_open()... config.status: creating auto/config.h
yes
no
checking for iconv_open()... checking for nl_langinfo(CODESET)... touch configure-stamp-vim-tiny
dh_testdir
*** DEBIAN *** CONFIGURING VARIANT vim-nox
/usr/bin/make -C src shadow SHADOWDIR=vim-nox
yes
checking for strtod in -lm... make[1]: Entering directory '/«PKGBUILDDIR»/src'
mkdir vim-nox
cd vim-nox; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
yes
checking for nl_langinfo(CODESET)... mkdir vim-nox/auto
yes
cd vim-nox/auto; ln -s ../../auto/configure .
checking for nl_langinfo(CODESET)... mkdir vim-nox/po
cd vim-nox/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
cd vim-nox; rm -f auto/link.sed
cp Makefile configure vim-nox
rm -f vim-nox/auto/config.mk vim-nox/config.mk.dist
cp config.mk.dist vim-nox/auto/config.mk
cp config.mk.dist vim-nox
mkdir vim-nox/xxd
cd vim-nox/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
if test -d os_mac_rsrc; then \
	cd vim-nox; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
mkdir vim-nox/testdir
cd vim-nox/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-nox && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --enable-cscope --enable-gpm --enable-selinux --disable-smack --with-features=huge --enable-multibyte --enable-acl --without-x --enable-gui=no --enable-luainterp --disable-mzschemeinterp --enable-perlinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-arm-linux-gnueabihf --disable-python3interp --enable-rubyinterp --enable-tclinterp --with-tclsh=/usr/bin/tclsh
yes
checking for strtod() and other floating point functions... yes
yes
checking for strtod in -lm... checking for strtod in -lm... yes
checking for strtod() and other floating point functions... yes
checking for strtod() and other floating point functions... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... no
checking for acl_get_file in -lacl... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... yes
checking for fgetxattr in -lattr... no
checking for acl_get_file in -lacl... no
checking for acl_get_file in -lacl... configure: creating cache auto/config.cache
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for fgetxattr in -lattr... yes
checking for POSIX ACL support... yes
checking for fgetxattr in -lattr... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... yes
checking for POSIX ACL support... yes
checking for POSIX ACL support... yes
checking for acl_get in -lsec... 
checking whether we are cross compiling... no
checking for Solaris ACL support... yes
checking for acl_get in -lsec... yes
no
checking for acl_get in -lsec... checking for AIX ACL support... no
checking for suffix of object files... no
checking --disable-gpm argument... no
checking for gpm... no
checking for Solaris ACL support... no
checking for Solaris ACL support... o
checking whether we are using the GNU C compiler... no
no
checking for AIX ACL support... checking for AIX ACL support... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... no
no
checking for pango_shape_full... checking for pango_shape_full... yes
checking --disable-sysmouse argument... no
checking for sysmouse... no
checking for FD_CLOEXEC... none needed
checking how to run the C preprocessor... yes
checking for rename... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for library containing strerror... yes
checking for sysctl... none required
checking for gawk... no
checking for mawk... mawk
checking for strip... strip
checking for ANSI C header files... not usable
checking for sysinfo... yes
checking for sysinfo.mem_unit... yes
checking for sysconf... yes
checking size of int... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking --enable-fail-if-missing argument... yes
checking for recent clang version... no
configure: checking for buggy tools...
checking for BeOS... no
checking for QNX... no
checking for Darwin (Mac OS X)... no
checking AvailabilityMacros.h usability... 4
checking size of long... no
checking AvailabilityMacros.h presence... no
checking for AvailabilityMacros.h... no
checking --with-local-dir argument... no
checking --with-vim-name argument... Defaulting to vim
checking --with-ex-name argument... Defaulting to ex
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... pkg-vim-maintainers@lists.alioth.debian.org
checking if character set is EBCDIC... no
checking --disable-smack argument... yes
checking --disable-selinux argument... no
yes
checking for is_selinux_enabled in -lselinux... checking --disable-gpm argument... no
checking for gpm... yes
checking --disable-gpm argument... no
checking for gpm... 4
checking size of time_t... yes
checking --with-features argument... huge
checking --with-compiledby argument... pkg-vim-maintainers@lists.alioth.debian.org
checking --disable-xsmp argument... no
checking --disable-xsmp-interact argument... no
checking --enable-luainterp argument... yes
checking --with-lua-prefix argument... no
checking LUA_PREFIX environment var... not set, default to /usr
checking --with-luajit... no
checking for lua... /usr/bin/lua
checking Lua version... 5.2
checking if lua.h can be found in /usr/include... no
checking if lua.h can be found in /usr/include/lua5.2... yes
checking if link with -L/usr/lib -llua5.2 is sane... yes
checking --disable-sysmouse argument... no
checking for sysmouse... no
checking for FD_CLOEXEC... yes
checking --disable-sysmouse argument... no
checking for sysmouse... yes
checking for rename... yes
checking --enable-mzschemeinterp argument... no
no
checking for FD_CLOEXEC... checking --enable-perlinterp argument... yes
checking for perl... /usr/bin/perl
checking Perl version... yes
checking for rename... 4
checking size of off_t... OK
yes
checking for sysctl... not usable
yes
checking for sysinfo... checking for sysctl... not usable
8
checking for sysinfo... yes
checking uint32_t is 32 bits... checking for sysinfo.mem_unit... yes
checking for sysinfo.mem_unit... yes
checking for sysconf... yes
checking for sysconf... yes
checking size of int... ok
checking whether memmove handles overlaps... yes
checking size of int... checking if compile and link flags for Perl are sane... 4
yes
checking whether X_LOCALE needed... checking size of long... yes
checking --enable-pythoninterp argument... yes
checking for python2... /usr/bin/python2
checking Python version... 2.7
checking Python is 2.3 or better... 4
checking size of long... yep
checking Python's install prefix... /usr
checking Python's execution prefix... /usr
checking Python's configuration directory... (cached) /usr/lib/python2.7/config-arm-linux-gnueabihf
/«PKGBUILDDIR»/src/vim-nox/config-PyMake822:1531: warning: overriding recipe for target 'Modules/timemodule.o'
/«PKGBUILDDIR»/src/vim-nox/config-PyMake822:1490: warning: ignoring old recipe for target 'Modules/timemodule.o'
4
checking if -pthread should be used... checking size of time_t... no
checking whether Xutf8SetWMProperties() can be used... 4
checking size of time_t... yes
checking if compile and link flags for Python are sane... yes
checking for _xpg4_setrunelocale in -lxpg4... 4
checking size of off_t... no
checking how to create tags... 4
checking size of off_t... yes
checking --enable-python3interp argument... no
checking if -fPIE can be added for Python... ctags
checking how to run man with a section nr... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... yes
checking --enable-tclinterp argument... yes
checking --with-tclsh argument... /usr/bin/tclsh
checking for /usr/bin/tclsh... no
gettext() works
checking for tclsh... /usr/bin/tclsh
checking Tcl version... checking for bind_textdomain_codeset... 8
checking uint32_t is 32 bits... 8.6 - OK
checking for location of Tcl include... 8
/usr/include/tcl8.6/tcl.h
checking for location of tclConfig.sh script... checking uint32_t is 32 bits... /usr/lib/tclConfig.sh
yes
checking --enable-rubyinterp argument... yes
checking for _nl_msg_cat_cntr... checking --with-ruby-command argument... defaulting to ruby
checking for ruby... /usr/bin/ruby
checking Ruby version... ok
checking whether memmove handles overlaps... ok
checking whether memmove handles overlaps... OK
checking Ruby rbconfig... yes
checking dlfcn.h usability... yes
checking whether X_LOCALE needed... yes
checking whether X_LOCALE needed... RbConfig
checking Ruby header files... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dlopen()... no
checking for dlopen() in -ldl... /usr/include/ruby-2.2.0
no
checking whether Xutf8SetWMProperties() can be used... no
checking whether Xutf8SetWMProperties() can be used... yes
checking for dlsym()... yes
checking for _xpg4_setrunelocale in -lxpg4... yes
checking for _xpg4_setrunelocale in -lxpg4... yes
checking setjmp.h usability... no
checking how to create tags... no
checking how to create tags... ctags
checking how to run man with a section nr... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... ctags
checking how to run man with a section nr... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... yes
checking setjmp.h presence... yes
checking for setjmp.h... yes
checking for GCC 3 or later... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking linker --as-needed support... yes
gettext() works
checking for bind_textdomain_codeset... gettext() works
checking for bind_textdomain_codeset... configure: updating cache auto/config.cache
configure: creating auto/config.status
yes
checking for _nl_msg_cat_cntr... yes
checking for _nl_msg_cat_cntr... config.status: creating auto/config.mk
yes
checking dlfcn.h usability... yes
checking dlfcn.h usability... config.status: creating auto/config.h
yes
checking dlfcn.h presence... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dlopen()... yes
checking for dlfcn.h... yes
checking for dlopen()... checking --enable-cscope argument... yes
checking --enable-workshop argument... no
checking --disable-netbeans argument... no
checking for socket in -lsocket... touch configure-stamp-vim-athena
dh_testdir
no
checking for gethostbyname in -lnsl... *** DEBIAN *** CONFIGURING VARIANT vim-basic
/usr/bin/make -C src shadow SHADOWDIR=vim-basic
make[1]: Entering directory '/«PKGBUILDDIR»/src'
mkdir vim-basic
cd vim-basic; ln -s ../*.[ch] ../*.in ../*.sh ../*.xs ../*.xbm ../toolcheck ../proto ../vimtutor ../gvimtutor ../mkinstalldirs .
no
checking for dlopen() in -ldl... mkdir vim-basic/auto
cd vim-basic/auto; ln -s ../../auto/configure .
mkdir vim-basic/po
cd vim-basic/po; ln -s ../../po/*.po ../../po/*.mak ../../po/*.vim ../../po/Makefile .
no
checking for dlopen() in -ldl... cd vim-basic; rm -f auto/link.sed
cp Makefile configure vim-basic
rm -f vim-basic/auto/config.mk vim-basic/config.mk.dist
cp config.mk.dist vim-basic/auto/config.mk
cp config.mk.dist vim-basic
mkdir vim-basic/xxd
cd vim-basic/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
if test -d os_mac_rsrc; then \
	cd vim-basic; \
	ln -s ../infplist.xml .; \
	ln -s ../os_mac_rsrc ../os_mac.rsr.hqx ../dehqx.py .; \
fi
mkdir vim-basic/testdir
cd vim-basic/testdir; ln -s ../../testdir/Makefile \
			 ../../testdir/vimrc.unix \
			 ../../testdir/*.in \
			 ../../testdir/*.vim \
			 ../../testdir/python* \
			 ../../testdir/sautest \
			 ../../testdir/test83-tags? \
			 ../../testdir/*.ok .
make[1]: Leaving directory '/«PKGBUILDDIR»/src'
if test -f src/auto/config.cache; then make distclean; fi
cd src/vim-basic && LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now" CPPFLAGS="-Wdate-time" CFLAGS="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security" ./configure --prefix=/usr --mandir='${prefix}'/share/man --without-local-dir --with-modified-by="pkg-vim-maintainers@lists.alioth.debian.org" --with-compiledby="pkg-vim-maintainers@lists.alioth.debian.org" --enable-fail-if-missing --enable-cscope --enable-gpm --enable-selinux --disable-smack --with-features=huge --enable-multibyte --enable-acl --without-x --enable-gui=no --disable-luainterp --disable-mzschemeinterp --disable-perlinterp --disable-pythoninterp --disable-python3interp --disable-rubyinterp --disable-tclinterp
yes
checking whether compiling netbeans integration is possible... yes
checking for dlsym()... yes
checking for dlsym()... yes
checking setjmp.h usability... yes
checking --enable-sniff argument... no
checking --enable-multibyte argument... yes
yes
checking --enable-hangulinput argument... no
checking --enable-xim argument... defaulting to auto
checking --enable-fontset argument... no
checking setjmp.h usability... defaulting to: don't HAVE_X11
checking --enable-gui argument... no GUI support
checking X11/SM/SMlib.h usability... yes
checking setjmp.h presence... yes
checking setjmp.h presence... yes
checking X11/SM/SMlib.h presence... yes
checking for setjmp.h... yes
yes
checking for GCC 3 or later... checking for setjmp.h... yes
checking for GCC 3 or later... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking linker --as-needed support... yes
checking for X11/SM/SMlib.h... yes
yes
checking linker --as-needed support... checking for CYGWIN environment... no
checking whether toupper is broken... yes
yes
configure: updating cache auto/config.cache
configure: updating cache auto/config.cache
configure: creating cache auto/config.cache
configure: creating auto/config.status
checking whether make sets $(MAKE)... configure: creating auto/config.status
yes
checking for gcc... gcc
no
checking whether __DATE__ and __TIME__ work... checking whether the C compiler works... yes
checking whether __attribute__((unused)) is allowed... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... config.status: creating auto/config.mk
yes
config.status: creating auto/config.mk
checking elf.h usability... config.status: creating auto/config.h
config.status: creating auto/config.h
yes
checking elf.h presence... 
checking whether we are cross compiling... yes
checking for elf.h... yes
checking for main in -lelf... touch configure-stamp-vim-gtk
dh_testdir
touch configure-stamp-vim-gnome
dh_testdir
no
checking for dirent.h that defines DIR... dh_prep -p vim-tiny
dh_prep -p vim-gtk
no
checking for suffix of object files... yes
checking for library containing opendir... o
checking whether we are using the GNU C compiler... *** DEBIAN *** BUILDING VARIANT vim-tiny
*** DEBIAN *** BUILDING VARIANT vim-gtk
/usr/bin/make -C src/vim-gtk
/usr/bin/make -C src/vim-tiny
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-gtk'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time    -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1  " srcdir=. sh ./osdef.sh
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-tiny'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H   -Wdate-time     " srcdir=. sh ./osdef.sh
yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none required
checking stdarg.h usability... none needed
checking how to run the C preprocessor... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking stdint.h usability... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... yes
checking stdint.h presence... /bin/grep -F
checking for library containing strerror... yes
checking for stdint.h... yes
checking stdlib.h usability... yes
checking stdlib.h presence... none required
checking for gawk... no
checking for mawk... mawk
checking for strip... strip
checking for ANSI C header files... yes
checking for stdlib.h... yes
checking string.h usability... yes
checking string.h presence... yes
checking for string.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/utsname.h usability... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking --enable-fail-if-missing argument... yes
checking for recent clang version... yes
checking sys/utsname.h presence... no
configure: checking for buggy tools...
checking for BeOS... no
checking for QNX... no
checking for Darwin (Mac OS X)... yes
checking for sys/utsname.h... no
yes
checking AvailabilityMacros.h usability... checking termcap.h usability... no
checking AvailabilityMacros.h presence... no
checking termcap.h presence... no
checking for AvailabilityMacros.h... no
checking --with-local-dir argument... no
checking --with-vim-name argument... Defaulting to vim
checking --with-ex-name argument... Defaulting to ex
checking --with-view-name argument... Defaulting to view
checking --with-global-runtime argument... no
checking --with-modified-by argument... pkg-vim-maintainers@lists.alioth.debian.org
checking if character set is EBCDIC... no
checking for termcap.h... no
checking fcntl.h usability... no
checking --disable-smack argument... yes
checking --disable-selinux argument... no
checking for is_selinux_enabled in -lselinux... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sgtty.h usability... yes
checking --with-features argument... huge
checking --with-compiledby argument... pkg-vim-maintainers@lists.alioth.debian.org
checking --disable-xsmp argument... no
checking --disable-xsmp-interact argument... no
checking --enable-luainterp argument... no
checking --enable-mzschemeinterp argument... no
checking --enable-perlinterp argument... no
checking --enable-pythoninterp argument... no
checking --enable-python3interp argument... no
checking --enable-tclinterp argument... no
checking --enable-rubyinterp argument... no
checking --enable-cscope argument... yes
checking --enable-workshop argument... no
checking --disable-netbeans argument... no
checking for socket in -lsocket... yes
checking sgtty.h presence... yes
checking for sgtty.h... yes
no
checking for gethostbyname in -lnsl... checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
yes
checking whether compiling netbeans integration is possible... checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/types.h usability... yes
checking --enable-sniff argument... no
checking --enable-multibyte argument... yes
checking --enable-hangulinput argument... no
checking --enable-xim argument... defaulting to auto
checking --enable-fontset argument... no
defaulting to: don't HAVE_X11
checking --enable-gui argument... no GUI support
checking X11/SM/SMlib.h usability... yes
checking sys/types.h presence... yes
checking for sys/types.h... yes
checking termio.h usability... yes
checking X11/SM/SMlib.h presence... yes
checking for X11/SM/SMlib.h... yes
creating auto/pathdef.c
checking for CYGWIN environment... no
checking whether toupper is broken... creating auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/popupmnu.o popupmnu.c
yes
checking termio.h presence... gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/popupmnu.o popupmnu.c
yes
checking for termio.h... yes
checking iconv.h usability... no
checking whether __DATE__ and __TIME__ work... yes
checking iconv.h presence... yes
checking for iconv.h... yes
checking inttypes.h usability... yes
checking whether __attribute__((unused)) is allowed... yes
checking inttypes.h presence... gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/quickfix.o quickfix.c
yes
checking elf.h usability... yes
checking for inttypes.h... yes
checking langinfo.h usability... yes
checking elf.h presence... yes
checking for elf.h... yes
checking for main in -lelf... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking math.h usability... no
checking for dirent.h that defines DIR... gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/regexp.o regexp.c
yes
checking for library containing opendir... yes
checking math.h presence... yes
checking for math.h... yes
checking unistd.h usability... none required
checking stdarg.h usability... yes
checking unistd.h presence... yes
checking for unistd.h... yes
checking stropts.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking stdint.h usability... yes
checking stropts.h presence... yes
checking for stropts.h... yes
yes
checking stdint.h presence... checking errno.h usability... yes
checking for stdint.h... yes
checking stdlib.h usability... yes
checking errno.h presence... yes
checking stdlib.h presence... yes
checking for errno.h... yes
yes
checking for stdlib.h... yes
checking sys/resource.h usability... checking string.h usability... yes
checking string.h presence... yes
checking sys/resource.h presence... yes
yes
checking for string.h... checking for sys/resource.h... yes
yes
checking sys/select.h usability... checking sys/systeminfo.h usability... yes
checking sys/select.h presence... no
checking sys/systeminfo.h presence... yes
checking for sys/select.h... yes
checking sys/utsname.h usability... no
checking for sys/systeminfo.h... no
checking locale.h usability... yes
checking sys/utsname.h presence... yes
checking for sys/utsname.h... yes
yes
checking locale.h presence... checking termcap.h usability... yes
checking for locale.h... yes
checking sys/stream.h usability... no
checking termcap.h presence... no
checking for termcap.h... no
checking fcntl.h usability... no
checking sys/stream.h presence... no
checking for sys/stream.h... no
checking termios.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sgtty.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking libc.h usability... yes
checking sgtty.h presence... gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/quickfix.o quickfix.c
yes
checking for sgtty.h... yes
checking sys/ioctl.h usability... no
checking libc.h presence... no
checking for libc.h... no
checking sys/statfs.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/time.h usability... yes
checking sys/statfs.h presence... yes
checking for sys/statfs.h... yes
checking poll.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/types.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
yes
checking sys/types.h presence... checking sys/poll.h usability... yes
checking for sys/types.h... yes
checking termio.h usability... yes
checking sys/poll.h presence... yes
checking for sys/poll.h... yes
yes
checking termio.h presence... checking pwd.h usability... yes
checking for termio.h... yes
checking iconv.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
yes
checking iconv.h presence... checking utime.h usability... yes
checking for iconv.h... yes
checking inttypes.h usability... yes
checking utime.h presence... yes
checking inttypes.h presence... yes
checking for utime.h... yes
yes
checking for inttypes.h... yes
checking sys/param.h usability... checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking sys/param.h presence... yes
checking for langinfo.h... yes
yes
checking for sys/param.h... yes
checking math.h usability... checking libintl.h usability... yes
checking libintl.h presence... yes
checking math.h presence... yes
checking for libintl.h... yes
checking libgen.h usability... yes
checking for math.h... yes
checking unistd.h usability... yes
checking libgen.h presence... yes
checking unistd.h presence... yes
checking for libgen.h... yes
checking util/debug.h usability... yes
checking for unistd.h... yes
checking stropts.h usability... no
checking util/debug.h presence... yes
checking stropts.h presence... no
checking for util/debug.h... no
checking util/msg18n.h usability... yes
checking for stropts.h... yes
checking errno.h usability... no
checking util/msg18n.h presence... yes
checking errno.h presence... no
checking for util/msg18n.h... no
checking frame.h usability... yes
checking for errno.h... yes
checking sys/resource.h usability... no
checking frame.h presence... yes
checking sys/resource.h presence... no
checking for frame.h... no
checking sys/acl.h usability... yes
checking for sys/resource.h... yes
checking sys/systeminfo.h usability... yes
checking sys/acl.h presence... no
checking sys/systeminfo.h presence... yes
checking for sys/acl.h... yes
checking sys/access.h usability... no
checking for sys/systeminfo.h... no
checking locale.h usability... no
checking sys/access.h presence... yes
checking locale.h presence... no
checking for sys/access.h... no
yes
checking for locale.h... yes
checking sys/sysinfo.h usability... checking sys/stream.h usability... yes
checking sys/sysinfo.h presence... no
checking sys/stream.h presence... yes
checking for sys/sysinfo.h... yes
no
checking for sys/stream.h... no
checking wchar.h usability... checking termios.h usability... yes
yes
checking termios.h presence... checking wchar.h presence... yes
checking for termios.h... yes
yes
checking for wchar.h... yes
checking libc.h usability... checking wctype.h usability... no
checking libc.h presence... yes
checking wctype.h presence... no
checking for libc.h... no
yes
checking for wctype.h... yes
checking sys/statfs.h usability... checking for sys/ptem.h... no
checking for sys/sysctl.h... yes
checking sys/statfs.h presence... yes
checking for sys/statfs.h... yes
yes
checking for pthread_np.h... checking poll.h usability... no
checking strings.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
checking sys/poll.h usability... yes
checking strings.h presence... yes
checking for strings.h... yes
checking if strings.h can be included after string.h... yes
checking sys/poll.h presence... yes
checking whether gcc needs -traditional... yes
checking for sys/poll.h... yes
checking pwd.h usability... no
checking for an ANSI C-conforming const... yes
checking for working volatile... yes
checking pwd.h presence... yes
checking for pwd.h... yes
yes
checking for mode_t... checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking sys/param.h usability... yes
checking for off_t... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for pid_t... yes
checking for libintl.h... yes
checking libgen.h usability... yes
checking libgen.h presence... yes
checking for libgen.h... yes
checking util/debug.h usability... yes
checking for size_t... no
checking util/debug.h presence... no
checking for util/debug.h... no
checking util/msg18n.h usability... no
checking util/msg18n.h presence... no
checking for util/msg18n.h... no
yes
checking for uid_t in sys/types.h... checking frame.h usability... yes
checking for uint32_t... no
checking frame.h presence... yes
checking whether time.h and sys/time.h may both be included... no
checking for frame.h... no
checking sys/acl.h usability... yes
checking for ino_t... yes
checking sys/acl.h presence... yes
checking for sys/acl.h... yes
checking sys/access.h usability... no
checking sys/access.h presence... yes
checking for dev_t... no
checking for sys/access.h... no
checking sys/sysinfo.h usability... yes
checking sys/sysinfo.h presence... yes
checking for sys/sysinfo.h... yes
checking wchar.h usability... yes
checking whether byte ordering is bigendian... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking wctype.h usability... yes
checking wctype.h presence... no
checking for rlim_t... yes
checking for wctype.h... yes
checking for sys/ptem.h... yes
checking for stack_t... yes
checking whether stack_t has an ss_base field... no
checking for sys/sysctl.h... no
checking --with-tlib argument... empty: automatic terminal library selection
yes
checking for pthread_np.h... checking for tgetent in -ltinfo... no
checking strings.h usability... yes
yes
checking strings.h presence... yes
checking for strings.h... yes
checking if strings.h can be included after string.h... yes
checking whether gcc needs -traditional... checking whether we talk terminfo... no
checking for an ANSI C-conforming const... yes
checking for working volatile... yes
checking for mode_t... yes
checking what tgetent() returns for an unknown terminal... zero
checking whether termcap.h contains ospeed... yes
checking for off_t... gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/regexp.o regexp.c
no
checking whether ospeed can be extern... yes
checking whether termcap.h contains UP, BC and PC... yes
checking for pid_t... no
checking whether UP, BC and PC can be extern... yes
checking whether tputs() uses outfuntype... yes
checking for size_t... no
checking whether sys/select.h and sys/time.h may both be included... yes
checking for /dev/ptc... no
checking for SVR4 ptys... yes
checking for uid_t in sys/types.h... yes
checking for ptyranges... yes
checking for uint32_t... don't know
checking default tty permissions/group... yes
checking whether time.h and sys/time.h may both be included... yes
checking for ino_t... can't determine - assume ptys are world accessible
world
checking return type of signal handlers... void
checking for struct sigcontext... yes
checking getcwd implementation is broken... yes
checking for dev_t... no
checking for bcmp... yes
checking whether byte ordering is bigendian... yes
checking for fchdir... no
checking for rlim_t... yes
yes
checking for stack_t... checking for fchown... yes
checking whether stack_t has an ss_base field... no
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... yes
checking for fsync... yes
yes
checking for getcwd... checking whether we talk terminfo... yes
checking for getpseudotty... no
checking for getpwent... yes
checking what tgetent() returns for an unknown terminal... yes
checking for getpwnam... zero
checking whether termcap.h contains ospeed... no
checking whether ospeed can be extern... yes
checking for getpwuid... yes
checking whether termcap.h contains UP, BC and PC... no
checking whether UP, BC and PC can be extern... yes
checking for getrlimit... yes
checking whether tputs() uses outfuntype... no
checking whether sys/select.h and sys/time.h may both be included... yes
checking for gettimeofday... yes
checking for /dev/ptc... no
checking for SVR4 ptys... yes
checking for getwd... yes
checking for ptyranges... don't know
checking default tty permissions/group... yes
checking for lstat... can't determine - assume ptys are world accessible
world
checking return type of signal handlers... yes
void
checking for memcmp... checking for struct sigcontext... yes
checking getcwd implementation is broken... yes
checking for memset... no
checking for bcmp... yes
checking for mkdtemp... yes
checking for fchdir... yes
checking for nanosleep... yes
checking for fchown... yes
checking for opendir... yes
checking for fsync... yes
checking for putenv... yes
checking for getcwd... yes
checking for qsort... yes
checking for getpseudotty... yes
checking for readlink... no
checking for getpwent... yes
checking for select... yes
checking for getpwnam... yes
checking for setenv... yes
checking for getpwuid... yes
checking for setpgid... yes
checking for getrlimit... yes
checking for setsid... yes
checking for gettimeofday... yes
checking for sigaltstack... yes
checking for getwd... yes
checking for sigstack... yes
checking for lstat... yes
checking for sigset... yes
checking for memcmp... yes
checking for sigsetjmp... yes
checking for memset... no
checking for sigaction... yes
checking for mkdtemp... yes
checking for sigvec... yes
checking for nanosleep... no
checking for strcasecmp... yes
checking for opendir... yes
checking for strerror... yes
checking for putenv... yes
checking for strftime... yes
checking for qsort... yes
checking for stricmp... yes
checking for readlink... no
checking for strncasecmp... yes
checking for select... yes
checking for strnicmp... yes
checking for setenv... no
checking for strpbrk... yes
checking for setpgid... yes
checking for strtol... yes
checking for setsid... yes
checking for tgetent... yes
checking for sigaltstack... yes
checking for towlower... yes
checking for sigstack... yes
checking for towupper... yes
checking for sigset... yes
checking for iswupper... yes
checking for sigsetjmp... yes
checking for usleep... no
checking for sigaction... yes
checking for utime... yes
checking for sigvec... yes
checking for utimes... no
checking for strcasecmp... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
checking for strerror... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... yes
checking for strftime... 64
checking for st_blksize... yes
checking whether stat() ignores a trailing slash... yes
checking for stricmp... no
no
checking for iconv_open()... checking for strncasecmp... yes
checking for strnicmp... yes
checking for nl_langinfo(CODESET)... no
checking for strpbrk... yes
checking for strtod in -lm... yes
checking for strtol... yes
checking for strtod() and other floating point functions... yes
checking for tgetent... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... yes
checking for towlower... no
checking for acl_get_file in -lacl... yes
checking for towupper... yes
checking for fgetxattr in -lattr... yes
yes
checking for POSIX ACL support... checking for iswupper... yes
yes
checking for acl_get in -lsec... checking for usleep... no
checking for Solaris ACL support... yes
no
checking for AIX ACL support... checking for utime... no
checking --disable-gpm argument... no
checking for gpm... yes
checking for utimes... yes
checking --disable-sysmouse argument... no
checking for sysmouse... no
checking for FD_CLOEXEC... yes
checking for _LARGEFILE_SOURCE value needed for large files... yes
checking for rename... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... yes
checking for sysctl... not usable
checking for sysinfo... 64
checking for st_blksize... yes
checking for sysinfo.mem_unit... yes
checking whether stat() ignores a trailing slash... yes
checking for sysconf... yes
checking size of int... no
checking for iconv_open()... 4
checking size of long... yes
checking for nl_langinfo(CODESET)... yes
checking for strtod in -lm... 4
checking size of time_t... yes
checking for strtod() and other floating point functions... 4
checking size of off_t... yes
checking --disable-acl argument... no
checking for acl_get_file in -lposix1e... no
checking for acl_get_file in -lacl... 8
checking uint32_t is 32 bits... yes
checking for fgetxattr in -lattr... ok
checking whether memmove handles overlaps... yes
checking for POSIX ACL support... yes
checking for _xpg4_setrunelocale in -lxpg4... yes
checking for acl_get in -lsec... no
checking how to create tags... ctags
checking how to run man with a section nr... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... no
checking for Solaris ACL support... no
checking for AIX ACL support... gettext() works
checking for bind_textdomain_codeset... no
checking --disable-gpm argument... no
checking for gpm... yes
checking --disable-sysmouse argument... no
checking for sysmouse... yes
checking for _nl_msg_cat_cntr... no
checking for FD_CLOEXEC... yes
checking for rename... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for sysctl... yes
checking for dlfcn.h... yes
checking for dlopen()... not usable
checking for sysinfo... no
checking for dlopen() in -ldl... yes
checking for sysinfo.mem_unit... yes
checking for sysconf... yes
checking size of int... yes
checking for dlsym()... yes
checking setjmp.h usability... 4
checking size of long... yes
checking setjmp.h presence... yes
checking for setjmp.h... yes
checking for GCC 3 or later... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking linker --as-needed support... yes
configure: updating cache auto/config.cache
configure: creating auto/config.status
4
checking size of time_t... config.status: creating auto/config.mk
config.status: creating auto/config.h
4
checking size of off_t... touch configure-stamp-vim-nox
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/screen.o screen.c
8
checking uint32_t is 32 bits... ok
checking whether memmove handles overlaps... yes
checking for _xpg4_setrunelocale in -lxpg4... no
checking how to create tags... ctags
checking how to run man with a section nr... man
checking --disable-nls argument... no
checking for msgfmt... msgfmt
checking for NLS... gettext() works
checking for bind_textdomain_codeset... yes
checking for _nl_msg_cat_cntr... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dlopen()... no
checking for dlopen() in -ldl... yes
checking for dlsym()... yes
checking setjmp.h usability... yes
checking setjmp.h presence... yes
checking for setjmp.h... yes
checking for GCC 3 or later... yes
checking whether we need -D_FORTIFY_SOURCE=1... yes
checking linker --as-needed support... yes
configure: updating cache auto/config.cache
configure: creating auto/config.status
config.status: creating auto/config.mk
config.status: creating auto/config.h
touch configure-stamp-vim-basic
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/screen.o screen.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/window.o window.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/window.o window.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/memfile.o memfile.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui.o gui.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-tiny/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-tiny/xxd'
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk.o gui_gtk.c
gui_gtk.c: In function 'add_stock_icon':
gui_gtk.c:152:5: warning: 'gdk_pixbuf_new_from_inline' is deprecated [-Wdeprecated-declarations]
     pixbuf = gdk_pixbuf_new_from_inline(data_length, inline_data, FALSE, NULL);
     ^
In file included from /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h:33:0,
                 from /usr/include/gtk-2.0/gdk/gdkpixbuf.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkcairo.h:28,
                 from /usr/include/gtk-2.0/gdk/gdk.h:33,
                 from gui_gtk_f.h:12,
                 from gui_gtk.c:28:
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:314:12: note: declared here
 GdkPixbuf* gdk_pixbuf_new_from_inline (gint          data_length,
            ^
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk_x11.o gui_gtk_x11.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pty.o pty.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk_f.o gui_gtk_f.c
dh_testdir
dh_prep -p vim-gnome
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/crypt_zip.o crypt_zip.c
*** DEBIAN *** BUILDING VARIANT vim-gnome
/usr/bin/make -C src/vim-gnome
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-gnome'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time    -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1  " srcdir=. sh ./osdef.sh
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/edit.o edit.c
dh_testdir
dh_prep -p vim-athena
creating auto/pathdef.c
*** DEBIAN *** BUILDING VARIANT vim-athena
/usr/bin/make -C src/vim-athena
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/popupmnu.o popupmnu.c
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-athena'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time    -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1  " srcdir=. sh ./osdef.sh
creating auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/popupmnu.o popupmnu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_beval.o gui_beval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/quickfix.o quickfix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/quickfix.o quickfix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_cmds.o ex_cmds.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/lua5.2 -o objects/if_lua.o if_lua.c
/usr/bin/perl -e 'unless ( $] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$_ $_\n" }}' > auto/if_perl.c
/usr/bin/perl /usr/share/perl/5.22/ExtUtils/xsubpp -prototypes -typemap \
    /usr/share/perl/5.22/ExtUtils/typemap if_perl.xs >> auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perlsfio.o if_perlsfio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/regexp.o regexp.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/python2.7 -DPYTHON_HOME='"/usr"' -pthread -fPIE  -o objects/if_python.o if_python.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/regexp.o regexp.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_docmd.o ex_docmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_tcl.o if_tcl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/ruby-2.2.0 -I/usr/include/arm-linux-gnueabihf/ruby-2.2.0 -DRUBY_VERSION=22 -o objects/if_ruby.o if_ruby.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/netbeans.o netbeans.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/getchar.o getchar.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memfile.o memfile.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/memline.o memline.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gtk/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gtk/xxd'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gtk/po'
OLD_PO_FILE_INPUT=yes msgfmt -v -o af.mo af.po
1423 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ca.mo ca.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.mo cs.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o de.mo de.po
1701 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o en_GB.mo en_GB.po
78 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o eo.mo eo.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o es.mo es.po
1733 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fi.mo fi.po
1768 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fr.mo fr.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ga.mo ga.po
1888 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o it.mo it.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.mo ja.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.mo ko.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.UTF-8.mo ko.UTF-8.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nb.mo nb.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nl.mo nl.po
1213 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o no.mo no.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.mo pl.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pt_BR.mo pt_BR.po
1735 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.mo ru.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.mo sk.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sv.mo sv.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.mo uk.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o vi.mo vi.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.UTF-8.mo zh_CN.UTF-8.po
1634 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.mo zh_CN.po
1633 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.UTF-8.mo zh_TW.UTF-8.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.mo zh_TW.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.cp1250.mo cs.cp1250.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.sjis.mo ja.sjis.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.euc-jp.mo ja.euc-jp.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.cp1250.mo pl.cp1250.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.UTF-8.mo pl.UTF-8.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.cp1251.mo ru.cp1251.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.cp1250.mo sk.cp1250.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.cp1251.mo uk.cp1251.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.cp936.mo zh_CN.cp936.po
1633 translated messages, 3 fuzzy translations.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gtk/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gtk/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gtk/po'
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/screen.o screen.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/screen.o screen.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/move.o move.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/mbyte.o mbyte.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/option.o option.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o             objects/main.o objects/memfile.o    -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE  -lm -ltinfo  -lselinux -lacl -lattr -ldl           
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-tiny'
touch build-stamp-vim-tiny
dh_testdir
dh_prep -p vim-nox
*** DEBIAN *** BUILDING VARIANT vim-nox
/usr/bin/make -C src/vim-nox
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-nox'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H   -Wdate-time    -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1  " srcdir=. sh ./osdef.sh
creating auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/popupmnu.o popupmnu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/quickfix.o quickfix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/regexp.o regexp.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds.o ex_cmds.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/window.o window.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_docmd.o ex_docmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/screen.o screen.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui.o gui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/window.o window.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_athena.o gui_athena.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_x11.o gui_x11.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui.o gui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pty.o pty.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_beval.o gui_beval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_at_sb.o gui_at_sb.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_at_fs.o gui_at_fs.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk.o gui_gtk.c
gui_gtk.c: In function 'add_stock_icon':
gui_gtk.c:152:5: warning: 'gdk_pixbuf_new_from_inline' is deprecated [-Wdeprecated-declarations]
     pixbuf = gdk_pixbuf_new_from_inline(data_length, inline_data, FALSE, NULL);
     ^
In file included from /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h:33:0,
                 from /usr/include/gtk-2.0/gdk/gdkpixbuf.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkcairo.h:28,
                 from /usr/include/gtk-2.0/gdk/gdk.h:33,
                 from gui_gtk_f.h:12,
                 from gui_gtk.c:28:
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:314:12: note: declared here
 GdkPixbuf* gdk_pixbuf_new_from_inline (gint          data_length,
            ^
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/lua5.2 -o objects/if_lua.o if_lua.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk_x11.o gui_gtk_x11.c
/usr/bin/perl -e 'unless ( $] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$_ $_\n" }}' > auto/if_perl.c
/usr/bin/perl /usr/share/perl/5.22/ExtUtils/xsubpp -prototypes -typemap \
    /usr/share/perl/5.22/ExtUtils/typemap if_perl.xs >> auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perlsfio.o if_perlsfio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/python2.7 -DPYTHON_HOME='"/usr"' -pthread -fPIE  -o objects/if_python.o if_python.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pty.o pty.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_gtk_f.o gui_gtk_f.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_tcl.o if_tcl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/gui_beval.o gui_beval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/ruby-2.2.0 -I/usr/include/arm-linux-gnueabihf/ruby-2.2.0 -DRUBY_VERSION=22 -o objects/if_ruby.o if_ruby.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/lua5.2 -o objects/if_lua.o if_lua.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/netbeans.o netbeans.c
/usr/bin/perl -e 'unless ( $] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$_ $_\n" }}' > auto/if_perl.c
/usr/bin/perl /usr/share/perl/5.22/ExtUtils/xsubpp -prototypes -typemap \
    /usr/share/perl/5.22/ExtUtils/typemap if_perl.xs >> auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perlsfio.o if_perlsfio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/python2.7 -DPYTHON_HOME='"/usr"' -pthread -fPIE  -o objects/if_python.o if_python.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/getchar.o getchar.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memfile.o memfile.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-athena/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_tcl.o if_tcl.c
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-athena/xxd'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-athena/po'
OLD_PO_FILE_INPUT=yes msgfmt -v -o af.mo af.po
1423 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ca.mo ca.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.mo cs.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o de.mo de.po
1701 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o en_GB.mo en_GB.po
78 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o eo.mo eo.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o es.mo es.po
1733 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fi.mo fi.po
1768 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fr.mo fr.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ga.mo ga.po
1888 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o it.mo it.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.mo ja.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.mo ko.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.UTF-8.mo ko.UTF-8.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nb.mo nb.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nl.mo nl.po
1213 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o no.mo no.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.mo pl.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pt_BR.mo pt_BR.po
1735 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.mo ru.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.mo sk.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sv.mo sv.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.mo uk.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o vi.mo vi.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.UTF-8.mo zh_CN.UTF-8.po
1634 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.mo zh_CN.po
1633 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.UTF-8.mo zh_TW.UTF-8.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.mo zh_TW.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.cp1250.mo cs.cp1250.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.sjis.mo ja.sjis.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.euc-jp.mo ja.euc-jp.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.cp1250.mo pl.cp1250.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.UTF-8.mo pl.UTF-8.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.cp1251.mo ru.cp1251.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.cp1250.mo sk.cp1250.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.cp1251.mo uk.cp1251.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.cp936.mo zh_CN.cp936.po
1633 translated messages, 3 fuzzy translations.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-athena/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-athena/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-athena/po'
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/ruby-2.2.0 -I/usr/include/arm-linux-gnueabihf/ruby-2.2.0 -DRUBY_VERSION=22 -o objects/if_ruby.o if_ruby.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/netbeans.o netbeans.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memfile.o memfile.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memline.o memline.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gnome/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gnome/xxd'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gnome/po'
OLD_PO_FILE_INPUT=yes msgfmt -v -o af.mo af.po
1423 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ca.mo ca.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.mo cs.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o de.mo de.po
1701 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o en_GB.mo en_GB.po
78 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o eo.mo eo.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o es.mo es.po
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/window.o window.c
1733 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fi.mo fi.po
1768 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fr.mo fr.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ga.mo ga.po
1888 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o it.mo it.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.mo ja.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.mo ko.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.UTF-8.mo ko.UTF-8.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nb.mo nb.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nl.mo nl.po
1213 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o no.mo no.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.mo pl.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pt_BR.mo pt_BR.po
1735 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.mo ru.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.mo sk.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sv.mo sv.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.mo uk.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o vi.mo vi.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.UTF-8.mo zh_CN.UTF-8.po
1634 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.mo zh_CN.po
1633 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.UTF-8.mo zh_TW.UTF-8.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.mo zh_TW.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.cp1250.mo cs.cp1250.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.sjis.mo ja.sjis.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.euc-jp.mo ja.euc-jp.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.cp1250.mo pl.cp1250.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.UTF-8.mo pl.UTF-8.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.cp1251.mo ru.cp1251.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.cp1250.mo sk.cp1250.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.cp1251.mo uk.cp1251.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.cp936.mo zh_CN.cp936.po
1633 translated messages, 3 fuzzy translations.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gnome/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-gnome/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-gnome/po'
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/lua5.2 -o objects/if_lua.o if_lua.c
/usr/bin/perl -e 'unless ( $] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$_ $_\n" }}' > auto/if_perl.c
/usr/bin/perl /usr/share/perl/5.22/ExtUtils/xsubpp -prototypes -typemap \
    /usr/share/perl/5.22/ExtUtils/typemap if_perl.xs >> auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perlsfio.o if_perlsfio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/python2.7 -DPYTHON_HOME='"/usr"' -pthread -fPIE  -o objects/if_python.o if_python.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_tcl.o if_tcl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -I/usr/include/ruby-2.2.0 -I/usr/include/arm-linux-gnueabihf/ruby-2.2.0 -DRUBY_VERSION=22 -o objects/if_ruby.o if_ruby.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/netbeans.o netbeans.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memfile.o memfile.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/move.o move.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-nox/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-nox/xxd'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-nox/po'
OLD_PO_FILE_INPUT=yes msgfmt -v -o af.mo af.po
1423 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ca.mo ca.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.mo cs.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o de.mo de.po
1701 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o en_GB.mo en_GB.po
78 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o eo.mo eo.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o es.mo es.po
1733 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fi.mo fi.po
1768 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fr.mo fr.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ga.mo ga.po
1888 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o it.mo it.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.mo ja.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.mo ko.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.UTF-8.mo ko.UTF-8.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nb.mo nb.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nl.mo nl.po
1213 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o no.mo no.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.mo pl.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pt_BR.mo pt_BR.po
1735 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.mo ru.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.mo sk.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sv.mo sv.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.mo uk.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o vi.mo vi.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.UTF-8.mo zh_CN.UTF-8.po
1634 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.mo zh_CN.po
1633 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.UTF-8.mo zh_TW.UTF-8.po
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds.o ex_cmds.c
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.mo zh_TW.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.cp1250.mo cs.cp1250.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.sjis.mo ja.sjis.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.euc-jp.mo ja.euc-jp.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.cp1250.mo pl.cp1250.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.UTF-8.mo pl.UTF-8.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.cp1251.mo ru.cp1251.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.cp1250.mo sk.cp1250.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.cp1251.mo uk.cp1251.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.cp936.mo zh_CN.cp936.po
1633 translated messages, 3 fuzzy translations.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-nox/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-nox/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-nox/po'
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/buffer.o buffer.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mbyte.o mbyte.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/charset.o charset.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_docmd.o ex_docmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/option.o option.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds.o ex_cmds.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_docmd.o ex_docmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perl.o auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds.o ex_cmds.c
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o objects/gui.o objects/gui_gtk.o objects/gui_gtk_x11.o objects/pty.o objects/gui_gtk_f.o objects/gui_beval.o objects/if_lua.o  objects/if_perl.o objects/if_perlsfio.o objects/if_python.o  objects/if_tcl.o objects/if_ruby.o   objects/netbeans.o  objects/main.o objects/memfile.o   -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE  -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python2.7/config-arm-linux-gnueabihf -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions  -L/usr/lib/arm-linux-gnueabihf -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.2 -lpthread -lgmp -ldl -lcrypt -lm     
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-gtk'
touch build-stamp-vim-gtk
dh_testdir
dh_prep -p vim-basic
*** DEBIAN *** BUILDING VARIANT vim-basic
/usr/bin/make -C src/vim-basic
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-basic'
mkdir objects
CC="gcc -Iproto -DHAVE_CONFIG_H   -Wdate-time     " srcdir=. sh ./osdef.sh
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/getchar.o getchar.c
creating auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/popupmnu.o popupmnu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/quickfix.o quickfix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/regexp.o regexp.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_docmd.o ex_docmd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memline.o memline.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/getchar.o getchar.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/screen.o screen.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/move.o move.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mbyte.o mbyte.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/getchar.o getchar.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/search.o search.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memline.o memline.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/sha256.o sha256.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/spell.o spell.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/memline.o memline.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/option.o option.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/syntax.o syntax.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perl.o auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/move.o move.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/tag.o tag.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_ATHENA   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o objects/gui.o objects/gui_athena.o objects/gui_x11.o objects/pty.o objects/gui_beval.o objects/gui_at_sb.o objects/gui_at_fs.o objects/if_lua.o  objects/if_perl.o objects/if_perlsfio.o objects/if_python.o  objects/if_tcl.o objects/if_ruby.o   objects/netbeans.o  objects/main.o objects/memfile.o -lXaw -lXmu -lXext -lXt -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE -ldl  -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python2.7/config-arm-linux-gnueabihf -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions  -L/usr/lib/arm-linux-gnueabihf -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.2 -lpthread -lgmp -ldl -lcrypt -lm     
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mbyte.o mbyte.c
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-athena'
touch build-stamp-vim-athena
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/move.o move.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/term.o term.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/mbyte.o mbyte.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ui.o ui.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/undo.o undo.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/window.o window.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/option.o option.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/netbeans.o netbeans.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perl.o auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/main.o main.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/memfile.o memfile.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/option.o option.c
cd xxd; CC="gcc" CFLAGS="-Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1" LDFLAGS="-fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed" \
	/usr/bin/make -f Makefile
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/xxd'
gcc -Wdate-time -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -DUNIX -o xxd xxd.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/include/freetype2 -D_REENTRANT -DORBIT2=1 -pthread -I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 -I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 -I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 -I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/arm-linux-gnueabihf/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/arm-linux-gnueabihf/gnome-vfs-2.0/include -I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   version.c -o objects/version.o
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/xxd'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
OLD_PO_FILE_INPUT=yes msgfmt -v -o af.mo af.po
1423 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ca.mo ca.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.mo cs.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o de.mo de.po
1701 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o en_GB.mo en_GB.po
78 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o eo.mo eo.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o es.mo es.po
1733 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fi.mo fi.po
1768 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o fr.mo fr.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ga.mo ga.po
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
1888 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o it.mo it.po
1887 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.mo ja.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.mo ko.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ko.UTF-8.mo ko.UTF-8.po
1728 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nb.mo nb.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o nl.mo nl.po
1213 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o no.mo no.po
1668 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.mo pl.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pt_BR.mo pt_BR.po
1735 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.mo ru.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.mo sk.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sv.mo sv.po
1697 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.mo uk.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o vi.mo vi.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.UTF-8.mo zh_CN.UTF-8.po
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.mo zh_CN.po
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o objects/gui.o objects/gui_gtk.o objects/gui_gtk_x11.o objects/pty.o objects/gui_gtk_f.o objects/gui_beval.o objects/if_lua.o  objects/if_perl.o objects/if_perlsfio.o objects/if_python.o  objects/if_tcl.o objects/if_ruby.o   objects/netbeans.o  objects/main.o objects/memfile.o   -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype  -lgnomeui-2 -lSM -lICE -lbonoboui-2 -lgnome-2 -lpopt -lbonobo-2 -lbonobo-activation -lORBit-2 -lgnomecanvas-2 -lart_lgpl_2 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lfreetype -lgdk_pixbuf-2.0 -lgnomevfs-2 -lgconf-2 -lgthread-2.0 -lgmodule-2.0 -lgobject-2.0 -lglib-2.0 -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE  -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python2.7/config-arm-linux-gnueabihf -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions  -L/usr/lib/arm-linux-gnueabihf -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.2 -lpthread -lgmp -ldl -lcrypt -lm     
1634 translated messages, 3 fuzzy translations.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.UTF-8.mo zh_TW.UTF-8.po
1633 translated messages, 3 fuzzy translations.
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/buffer.o buffer.c
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_TW.mo zh_TW.po
1422 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o cs.cp1250.mo cs.cp1250.po
1284 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.sjis.mo ja.sjis.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ja.euc-jp.mo ja.euc-jp.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.cp1250.mo pl.cp1250.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o pl.UTF-8.mo pl.UTF-8.po
1869 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o ru.cp1251.mo ru.cp1251.po
1882 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o sk.cp1250.mo sk.cp1250.po
1628 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o uk.cp1251.mo uk.cp1251.po
1883 translated messages.
OLD_PO_FILE_INPUT=yes msgfmt -v -o zh_CN.cp936.mo zh_CN.cp936.po
1633 translated messages, 3 fuzzy translations.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/blowfish.o blowfish.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/charset.o charset.c
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-gnome'
touch build-stamp-vim-gnome
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/crypt.o crypt.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/crypt_zip.o crypt_zip.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/diff.o diff.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/digraph.o digraph.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/edit.o edit.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/eval.o eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_cmds.o ex_cmds.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv  -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE  -o objects/if_perl.o auto/if_perl.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_cmds2.o ex_cmds2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1      -I/usr/include/tcl8.6  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1   version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -L. -Wl,-z,relro -L/build/ruby2.2-EPfH7G/ruby2.2-2.2.3/debian/lib -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o  objects/if_lua.o  objects/if_perl.o objects/if_perlsfio.o objects/if_python.o  objects/if_tcl.o objects/if_ruby.o   objects/netbeans.o  objects/main.o objects/memfile.o        -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/arm-linux-gnueabihf/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt -L/usr/lib/python2.7/config-arm-linux-gnueabihf -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions  -L/usr/lib/arm-linux-gnueabihf -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.2 -lpthread -lgmp -ldl -lcrypt -lm     
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_docmd.o ex_docmd.c
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-nox'
touch build-stamp-vim-nox
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_eval.o ex_eval.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ex_getln.o ex_getln.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/fileio.o fileio.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/fold.o fold.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/getchar.o getchar.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/hardcopy.o hardcopy.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/hashtab.o hashtab.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/if_cscope.o if_cscope.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/if_xcmdsrv.o if_xcmdsrv.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/mark.o mark.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/memline.o memline.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/menu.o menu.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/message.o message.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/misc1.o misc1.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/misc2.o misc2.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/move.o move.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/mbyte.o mbyte.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/normal.o normal.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/ops.o ops.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/option.o option.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/os_unix.o os_unix.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/pathdef.o auto/pathdef.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o vim objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o           objects/netbeans.o  objects/main.o objects/memfile.o        -lm -ltinfo -lnsl  -lselinux -lacl -lattr -lgpm -ldl           
link.sh: Linked fine
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic'
touch build-stamp-vim-basic
dh_testdir
touch build-stamp-arch
 fakeroot debian/rules binary-arch
rm configure-stamp-vim-basic configure-stamp-vim-tiny configure-stamp-vim-nox configure-stamp-vim-gnome configure-stamp-vim-athena configure-stamp-vim-gtk
cat debian/tiny/vimrc.tiny.in | sed 's/@VIMCUR@/vim74/' > debian/tiny/vimrc.tiny
dh_testdir
dh_testdir
dh_testdir
dh_testdir
dh_testroot
dh_testroot
dh_testroot
dh_testroot
*** DEBIAN *** INSTALLING VARIANT vim-gtk
*** DEBIAN *** INSTALLING VARIANT vim-gnome
dh_installdirs
dh_installdirs
*** DEBIAN *** INSTALLING VARIANT vim-nox
*** DEBIAN *** INSTALLING VARIANT vim-athena
dh_installdirs
dh_installdirs
mv src/vim-gnome/vim src/vim-gnome/vim.gnome
mv src/vim-athena/vim src/vim-athena/vim.athena
mv src/vim-gtk/vim src/vim-gtk/vim.gtk
mv src/vim-nox/vim src/vim-nox/vim.nox
# variant-related installations
# variant-related installations
# to be kept in sync with those in "install-stamp-vim-basic" target
# variant-related installations
# to be kept in sync with those in "install-stamp-vim-basic" target
# variant-related installations
for x in install postinst prerm links lintian-overrides ; do \
  if [ "vim-gnome" = "vim-nox" ]; then \
    sed -e "s:@PKG@:vim-gnome:" -e "s:@VARIANT@:gnome:g" \
        -e "s:@COMMON@:vim-common:" \
        debian/vim-variant.$x > debian/vim-gnome.$x ;\
  else \
    sed -e "s:@PKG@:vim-gnome:" -e "s:@VARIANT@:gnome:g" \
        -e "s:@COMMON@:vim-gui-common:" \
        debian/vim-variant.$x > debian/vim-gnome.$x ;\
  fi \
done
# to be kept in sync with those in "install-stamp-vim-basic" target
for x in install postinst prerm links lintian-overrides ; do \
  if [ "vim-athena" = "vim-nox" ]; then \
    sed -e "s:@PKG@:vim-athena:" -e "s:@VARIANT@:athena:g" \
        -e "s:@COMMON@:vim-common:" \
        debian/vim-variant.$x > debian/vim-athena.$x ;\
  else \
    sed -e "s:@PKG@:vim-athena:" -e "s:@VARIANT@:athena:g" \
        -e "s:@COMMON@:vim-gui-common:" \
        debian/vim-variant.$x > debian/vim-athena.$x ;\
  fi \
done
# to be kept in sync with those in "install-stamp-vim-basic" target
for x in install postinst prerm links lintian-overrides ; do \
  if [ "vim-gtk" = "vim-nox" ]; then \
    sed -e "s:@PKG@:vim-gtk:" -e "s:@VARIANT@:gtk:g" \
        -e "s:@COMMON@:vim-common:" \
        debian/vim-variant.$x > debian/vim-gtk.$x ;\
  else \
    sed -e "s:@PKG@:vim-gtk:" -e "s:@VARIANT@:gtk:g" \
        -e "s:@COMMON@:vim-gui-common:" \
        debian/vim-variant.$x > debian/vim-gtk.$x ;\
  fi \
done
for x in install postinst prerm links lintian-overrides ; do \
  if [ "vim-nox" = "vim-nox" ]; then \
    sed -e "s:@PKG@:vim-nox:" -e "s:@VARIANT@:nox:g" \
        -e "s:@COMMON@:vim-common:" \
        debian/vim-variant.$x > debian/vim-nox.$x ;\
  else \
    sed -e "s:@PKG@:vim-nox:" -e "s:@VARIANT@:nox:g" \
        -e "s:@COMMON@:vim-gui-common:" \
        debian/vim-variant.$x > debian/vim-nox.$x ;\
  fi \
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim-gnome.postinst; \
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim-athena.postinst; \
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim-gtk.postinst; \
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim-nox.postinst; \
done
sed -i "/@LANG_ALTS@/d" debian/vim-gnome.postinst
sed -i "/@LANG_ALTS@/d" debian/vim-gtk.postinst
sed -i "/@LANG_ALTS@/d" debian/vim-athena.postinst
dh_install
dh_install
dh_install
sed -i "/@LANG_ALTS@/d" debian/vim-nox.postinst
dh_install
dh_link
dh_link
dh_link
dh_link
dh_bugfiles -A
dh_bugfiles -A
dh_bugfiles -A
dh_bugfiles -A
touch install-stamp-vim-gtk
cat debian/vim-common.install.in | sed 's/@VIMCUR@/vim74/' > debian/vim-common.install
touch install-stamp-vim-gnome
touch install-stamp-vim-athena
cat debian/vim-common.links.in | sed 's/@VIMCUR@/vim74/' > debian/vim-common.links
cat debian/vim-gui-common.install.in | sed 's/@VIMCUR@/vim74/' > debian/vim-gui-common.install
cat debian/vim-gui-common.links.in | sed 's/@VIMCUR@/vim74/' > debian/vim-gui-common.links
cat debian/vim-runtime.install.in | sed 's/@VIMCUR@/vim74/' > debian/vim-runtime.install
cat debian/vim-runtime.links.in | sed 's/@VIMCUR@/vim74/' > debian/vim-runtime.links
cat debian/vim-runtime.postrm.in | sed 's/@VIMCUR@/vim74/' > debian/vim-runtime.postrm
touch install-stamp-vim-nox
cat debian/vim-runtime.preinst.in | sed 's/@VIMCUR@/vim74/' > debian/vim-runtime.preinst
cat debian/runtime/debian.vim.in | sed 's/@VIMCUR@/vim74/' > debian/runtime/debian.vim
dh_testdir
dh_testdir
dh_testdir
dh_testdir
dh_testroot
dh_testroot
dh_testroot
dh_testroot
dh_strip --dbg-package=vim-dbg
*** DEBIAN *** INSTALLING VARIANT vim-tiny
dh_installdirs
dh_strip --dbg-package=vim-dbg
dh_strip --dbg-package=vim-dbg
mv src/vim-tiny/vim src/vim-tiny/vim.tiny
# variant-related installations
# to be kept in sync with those in "install-stamp-vim-basic" target
for x in install postinst prerm links lintian-overrides ; do \
  sed -e "s:@PKG@:vim-tiny:" -e "s:@VARIANT@:tiny:g" \
      -e "s:@COMMON@:vim-common:" \
      debian/vim-variant.$x > debian/vim-tiny.$x ;\
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim-tiny.postinst; \
done
sed -i "/@LANG_ALTS@/d" debian/vim-tiny.postinst
# fake help installation for vim-tiny
echo "debian/tiny/doc/	usr/share/vim/vim74" >> debian/vim-tiny.install
echo "debian/tiny/vimrc.tiny	etc/vim" >> debian/vim-tiny.install
echo "etc/vim/vimrc.tiny	usr/share/vim/vimrc.tiny" >> debian/vim-tiny.links
dh_install
dh_link
dh_bugfiles -A
touch install-stamp-vim-tiny
dh_testdir
dh_testroot
dh_strip --dbg-package=vim-dbg
dh_compress
dh_compress
dh_compress
dh_fixperms
dh_fixperms
dh_fixperms
dh_lintian
dh_lintian
dh_compress
dh_lintian
dh_installdeb
dh_installdeb
dh_installdeb
dh_fixperms
dh_shlibdeps
dh_shlibdeps
dh_shlibdeps
dh_lintian
dh_installdeb
dh_shlibdeps
dh_gencontrol
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
dh_builddeb -- -Zxz
dpkg-deb: building package 'vim-nox' in '../vim-nox_7.4.963-1_armhf.deb'.
dh_gencontrol
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
dh_builddeb -- -Zxz
dpkg-deb: building package 'vim-athena' in '../vim-athena_7.4.963-1_armhf.deb'.
dh_gencontrol
dh_testdir
dh_testroot
*** DEBIAN *** INSTALLING VARIANT vim-basic
dh_installdirs
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
# UPSTREAM INSTALLATION
mkdir -p /«PKGBUILDDIR»/debian/tmp/usr/share/applications
mkdir -p /«PKGBUILDDIR»/debian/tmp/usr/share/icons/hicolor/48x48/apps
mkdir -p /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/32x32/apps
mkdir -p /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/16x16/apps
/usr/bin/make -C src/vim-basic STRIP=: DESTDIR=/«PKGBUILDDIR»/debian/tmp \
    installvimbin \
    installtutorbin \
    installgtutorbin \
    installruntime \
    installtools \
    install-languages \
    install-icons
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-basic'
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/bin
mkdir /«PKGBUILDDIR»/debian/tmp/usr/bin
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/bin
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/print
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/print
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/print
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/colors
dh_builddeb -- -Zxz
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/colors
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/colors
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/syntax
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/syntax
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/syntax
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload/xml
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload/xml
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload/xml
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/plugin
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/plugin
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/plugin
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell
dpkg-deb: building package 'vim-gtk' in '../vim-gtk_7.4.963-1_armhf.deb'.
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/compiler
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/compiler
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/compiler
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros
cp ../runtime/tutor/README* ../runtime/tutor/tutor* /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor
dh_gencontrol
rm -f /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor/*.info
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tutor/*
if test -f ../runtime/spell/en.latin1.spl; then \
  cp ../runtime/spell/*.spl ../runtime/spell/*.sug ../runtime/spell/*.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell; \
  chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell/*.spl /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell/*.sug /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/spell/*.vim; \
fi
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1 "-fr" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1 "-fr" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1 "-fr.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1 "-it" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1 "-it" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1 "-it.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1 "-ja.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1 "-pl" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1 "-pl" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1 "-pl.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1 "-ru" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/xxd.1
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1 "-ru.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/xxd.1
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[2]: Nothing to be done for 'first'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[2]: Nothing to be done for 'converted'.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang
/bin/sh ./mkinstalldirs /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap
if test -d /«PKGBUILDDIR»/debian/tmp/usr/share/icons/hicolor/48x48/apps -a -w /«PKGBUILDDIR»/debian/tmp/usr/share/icons/hicolor/48x48/apps \
	-a ! -f /«PKGBUILDDIR»/debian/tmp/usr/share/icons/hicolor/48x48/apps/gvim.png; then \
   cp ../runtime/vim48x48.png /«PKGBUILDDIR»/debian/tmp/usr/share/icons/hicolor/48x48/apps/gvim.png; \
fi
if test -d /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/32x32/apps -a -w /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/32x32/apps \
	-a ! -f /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/32x32/apps/gvim.png; then \
   cp ../runtime/vim32x32.png /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/32x32/apps/gvim.png; \
fi
if test -d /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/16x16/apps -a -w /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/16x16/apps \
	-a ! -f /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/16x16/apps/gvim.png; then \
   cp ../runtime/vim16x16.png /«PKGBUILDDIR»/debian/tmp/usr/share/icons/locolor/16x16/apps/gvim.png; \
fi
if test -d /«PKGBUILDDIR»/debian/tmp/usr/share/applications -a -w /«PKGBUILDDIR»/debian/tmp/usr/share/applications; then \
   cp ../runtime/vim.desktop \
	../runtime/gvim.desktop \
	/«PKGBUILDDIR»/debian/tmp/usr/share/applications; \
fi
if test -f /«PKGBUILDDIR»/debian/tmp/usr/bin/vim; then \
  mv -f /«PKGBUILDDIR»/debian/tmp/usr/bin/vim /«PKGBUILDDIR»/debian/tmp/usr/bin/vim.rm; \
  rm -f /«PKGBUILDDIR»/debian/tmp/usr/bin/vim.rm; \
fi
cp vim /«PKGBUILDDIR»/debian/tmp/usr/bin
: /«PKGBUILDDIR»/debian/tmp/usr/bin/vim
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/bin/vim
cp vimtutor /«PKGBUILDDIR»/debian/tmp/usr/bin/vimtutor
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/bin/vimtutor
cp gvimtutor /«PKGBUILDDIR»/debian/tmp/usr/bin/gvimtutor
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/bin/gvimtutor
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1 "" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
creating /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1
mkdir /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1/vim.1
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1/vimdiff.1
dh_md5sums
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1/evim.1
generating help tags
make[2]: Entering directory '/«PKGBUILDDIR»/runtime/doc'
/«PKGBUILDDIR»/debian/tmp/usr/bin/vim -u NONE -esX -c "helptags ++t ." -c quit
dh_builddeb -- -Zxz
make[2]: Leaving directory '/«PKGBUILDDIR»/runtime/doc'
cd ../runtime/doc; \
	files=`ls *.txt tags`; \
	files="$files `ls *.??x tags-?? 2>/dev/null || true`"; \
	cp $files  /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc; \
	cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc; \
	chmod 644 $files
cp -r ../runtime/macros/* /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros
chmod 755 `find /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros -type d -print`
chmod 644 `find /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros -type f -print`
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros/less.sh
cvs=`find /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/macros \( -name CVS -o -name AAPDIR -o -name "*.info" \) -print`; \
      if test -n "$cvs"; then \
	 rm -rf $cvs; \
      fi
if test -f /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd; then \
  mv -f /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd.rm; \
  rm -f /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd.rm; \
fi
cp xxd/xxd /«PKGBUILDDIR»/debian/tmp/usr/bin
dpkg-deb: building package 'vim-gnome' in '../vim-gnome_7.4.963-1_armhf.deb'.
: /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/bin/xxd
/bin/sh ./installman.sh xxd /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1 "" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/man1/xxd.1
cp  ../runtime/doc/*.pl /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc
cp -r ../runtime/tools/* /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools
chmod 755 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/doc/*.pl
cp ../runtime/menu.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/menu.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/menu.vim
cvs=`find /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools \( -name CVS -o -name AAPDIR \) -print`; \
      if test -n "$cvs"; then \
	 rm -rf $cvs; \
      fi
cp ../runtime/synmenu.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/synmenu.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/*
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/synmenu.vim
cp ../runtime/delmenu.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/delmenu.vim
perlpath=`./which.sh perl` && sed -e "s+/usr/bin/perl+$perlpath+" ../runtime/tools/efm_perl.pl >/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/efm_perl.pl
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/delmenu.vim
cp ../runtime/mswin.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/mswin.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/mswin.vim
awkpath=`./which.sh nawk` && sed -e "s+/usr/bin/nawk+$awkpath+" ../runtime/tools/mve.awk >/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/mve.awk; if test -z "$awkpath"; then \
	awkpath=`./which.sh gawk` && sed -e "s+/usr/bin/nawk+$awkpath+" ../runtime/tools/mve.awk >/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/mve.awk; if test -z "$awkpath"; then \
	awkpath=`./which.sh awk` && sed -e "s+/usr/bin/nawk+$awkpath+" ../runtime/tools/mve.awk >/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/mve.awk; fi; fi
cp ../runtime/evim.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/evim.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/evim.vim
cp ../runtime/bugreport.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/bugreport.vim
chmod 755 `grep -l "^#!" /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/tools/*`
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/bugreport.vim
cp ../runtime/vimrc_example.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/vimrc_example.vim
cp ../runtime/gvimrc_example.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74
dh_testdir
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/gvimrc_example.vim
cp ../runtime/filetype.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/filetype.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/filetype.vim
cp ../runtime/ftoff.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftoff.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftoff.vim
cp ../runtime/scripts.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/scripts.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/scripts.vim
cp ../runtime/ftplugin.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin.vim
cp ../runtime/ftplugof.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugof.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugof.vim
cp ../runtime/indent.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent.vim
cp ../runtime/indoff.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indoff.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indoff.vim
cp ../runtime/optwin.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/optwin.vim
chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/optwin.vim
cd ../runtime/print; cp *.ps /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/print
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/print; chmod 644 *.ps
cd ../runtime/colors; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/colors
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/colors; chmod 644 *.vim README.txt
cd ../runtime/syntax; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/syntax
dh_testroot
dh_strip --dbg-package=vim-dbg
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/syntax; chmod 644 *.vim README.txt
cd ../runtime/indent; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/indent; chmod 644 *.vim README.txt
cd ../runtime/autoload; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload; chmod 644 *.vim README.txt
cd ../runtime/autoload/xml; cp *.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload/xml
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/autoload/xml; chmod 644 *.vim
cd ../runtime/plugin; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/plugin
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/plugin; chmod 644 *.vim README.txt
cd ../runtime/ftplugin; cp *.vim README.txt logtalk.dict /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/ftplugin; chmod 644 *.vim README.txt
cd ../runtime/compiler; cp *.vim README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/compiler
cd /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/compiler; chmod 644 *.vim README.txt
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1 "-fr" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1 "-fr" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1 "-fr.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1 "-it" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1 "-it" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1 "-it.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1 "-ja.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1 "-pl" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1 "-pl" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1 "-pl.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1 "-ru" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/evim.1
/bin/sh ./installman.sh install /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1 "-ru.UTF-8" /usr/share/vim /usr/share/vim/vim74 /usr/share/vim ../runtime/doc 644 vim vimdiff evim
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/vim.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/vimtutor.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/vimdiff.1
installing /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/evim.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.ISO8859-1/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/fr.UTF-8/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.ISO8859-1/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/it.UTF-8/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ja/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.ISO8859-2/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/pl.UTF-8/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/view.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.KOI8-R/man1/rview.1
/bin/sh ./installml.sh install "" \
	/«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1 vim vimdiff evim ex view rvim rview gvim gview rgvim rgview gvimdiff eview
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/ex.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/view.1
dh_compress
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/rvim.1
creating link /«PKGBUILDDIR»/debian/tmp/usr/share/man/ru.UTF-8/man1/rview.1
if test -n "yes" -a -f po/Makefile; then \
   cd po; /usr/bin/make prefix=/«PKGBUILDDIR»/debian/tmp/usr LOCALEDIR=/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang \
   INSTALL_DATA=cp FILEMOD=644 install; \
fi
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[3]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
make[3]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
for lang in af ca cs de en_GB eo es fi fr ga it ja ko ko.UTF-8 nb nl no pl pt_BR ru sk sv uk vi zh_CN zh_CN.UTF-8 zh_TW zh_TW.UTF-8 cs.cp1250 ja.sjis ja.euc-jp pl.cp1250 pl.UTF-8 ru.cp1251 sk.cp1250 uk.cp1251 zh_CN.cp936; do \
  dir=/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang/$lang/; \
  if test ! -x "$dir"; then \
    mkdir $dir; chmod 755 $dir; \
  fi; \
  dir=/«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang/$lang/LC_MESSAGES; \
  if test ! -x "$dir"; then \
    mkdir $dir; chmod 755 $dir; \
  fi; \
  if test -r $lang.mo; then \
    cp $lang.mo $dir/vim.mo; \
    chmod 644 $dir/vim.mo; \
  fi; \
done
dh_fixperms
dh_lintian
dh_installdeb
dh_shlibdeps
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
if test -d ../runtime/lang; then \
   cp ../runtime/lang/README.txt ../runtime/lang/*.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang; \
   chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang/README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/lang/*.vim; \
fi
if test -d ../runtime/keymap; then \
   cp ../runtime/keymap/README.txt ../runtime/keymap/*.vim /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap; \
   chmod 644 /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap/README.txt /«PKGBUILDDIR»/debian/tmp/usr/share/vim/vim74/keymap/*.vim; \
fi
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic'
if [ yes = "yes" ]; then \
  if [ -e src/vim-nox/vim ]; then \
    /usr/bin/make -j1 -C src/vim-nox test; \
  else \
    /usr/bin/make -j1 -C src/vim-basic test; \
  fi; \
fi
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Entering directory '/«PKGBUILDDIR»/src/vim-basic'
/usr/bin/make -f Makefile vim
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic'
make[2]: 'vim' is up to date.
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic'
if test -n "yes" -a -f po/Makefile; then \
	cd po; /usr/bin/make -f Makefile check VIM=../vim; \
fi
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/po'
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq af.po
touch af.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ca.po
dh_gencontrol
touch ca.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq cs.po
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
dh_builddeb -- -Zxz
dpkg-deb: building package 'vim-tiny' in '../vim-tiny_7.4.963-1_armhf.deb'.
touch cs.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq de.po
touch de.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq en_GB.po
touch en_GB.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq eo.po
touch eo.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq es.po
touch es.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq fi.po
touch fi.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq fr.po
touch fr.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ga.po
touch ga.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq it.po
touch it.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ja.po
touch ja.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ko.po
touch ko.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ko.UTF-8.po
touch ko.UTF-8.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq nb.po
touch nb.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq nl.po
touch nl.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq no.po
touch no.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq pl.po
touch pl.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq pt_BR.po
touch pt_BR.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ru.po
touch ru.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq sk.po
touch sk.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq sv.po
touch sv.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq uk.po
touch uk.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq vi.po
touch vi.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq zh_CN.UTF-8.po
touch zh_CN.UTF-8.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq zh_CN.po
touch zh_CN.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq zh_TW.UTF-8.po
touch zh_TW.UTF-8.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq zh_TW.po
touch zh_TW.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq cs.cp1250.po
touch cs.cp1250.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ja.sjis.po
touch ja.sjis.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ja.euc-jp.po
touch ja.euc-jp.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq pl.cp1250.po
touch pl.cp1250.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq pl.UTF-8.po
touch pl.UTF-8.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq ru.cp1251.po
touch ru.cp1251.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq sk.cp1250.po
touch sk.cp1250.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq uk.cp1251.po
touch uk.cp1251.ck
../vim -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq zh_CN.cp936.po
touch zh_CN.cp936.ck
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/po'
if test vim != vim -a ! -r vim; then \
	ln -s vim vim; \
fi
cd testdir; /usr/bin/make -f Makefile  VIMPROG=../vim  SCRIPTSOURCE=../../runtime
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic/testdir'
rm -f test.log
rm -rf test1.failed test.out X* viminfo tiny.vim small.vim mbyte.vim mzscheme.vim lua.vim test.ok benchmark.out wrongtermsize
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test1.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test1.in" 57 lines, 2069 charactersFirst a simple test to check if the test script works.

If Vim was not compiled with the +eval feature, the small.vim script will be
set to copy the test.ok file to test.out, so that it looks like the test
succeeded.  Otherwise an empty small.vim is written.  small.vim is sourced by
tests that require the +eval feature or other features that are missing in the
small version.

If Vim was not compiled with the +windows feature, the tiny.vim script will be
set like small.vim above.  tiny.vim is sourced by tests that require the
+windows feature or other features that are missing in the tiny version.

If Vim was not compiled with the +multi_byte feature, the mbyte.vim script will
be set like small.vim above.  mbyte.vim is sourced by tests that require the
+multi_byte feature.
Similar logic is applied to the +mzscheme feature, using mzscheme.vim.
Similar logic is applied to the +lua feature, using lua.vim.

STARTTEST
:" If columns or lines are too small, create wrongtermsize.
:" (Some tests will fail. When columns and/or lines are small)
:if &lines < 24 || &columns < 80 | sp another | w! wrongtermsize | qa! | endif[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 35 lines, 1133 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c


/ENDTEST:w! mzscheme.vim
:w! lua.vim
:"
:" If +multi_byte feature supported, make mbyte.vim empty.
:if has("multi_byte") | sp another | w! mbyte.vim | q | endif
:"
:" If +mzscheme feature supported, make mzscheme.vim empty.
:if has("mzscheme") | sp another | w! mzscheme.vim | q | endif
:"
:" If +lua feature supported, make lua.vim empty.
:if has("lua") | sp another | w! lua.vim | q | endif
:"
:" If +eval feature supported quit here, leaving tiny.vim and small.vim empty.
:" Otherwise write small.vim to skip the test.
:if 1 | q! | endif
:w! small.vim
:" If +windows feature not supported :sp will fail and tiny.vim will be
:" written to skip the test.
:sp another
:wq! tiny.vim
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" If columns or lines are too small, create wrongtermsize.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" (Some tests will fail. When columns and/or lines are small)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif &lines < 24 || &columns < 80 | sp another | w! wrongtermsize | qa! | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Write a single line to test.out to check if testing works at all.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%d
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1cthis is a test[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 1 line, 15 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" Create small.vim and tiny.vim empty, create mbyte.vim to skip the test.
[?25l[?1c[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! small.vim
[?25l[?1c"small.vim" [New File] 1 line, 1 character written[?25h[?0c[?25l[?1c:[?25h[?0cw! tiny.vim
[?25l[?1c"tiny.vim" [New File] 1 line, 1 character written[?25h[?0c[?25l[?1ce! test.ok
w! test.outqa![?25h[?0c[?25l[?1c:[?25h[?0cw! mbyte.vim
[?25l[?1c"mbyte.vim" [New File] 4 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0cw! mzscheme.vim
[?25l[?1c"mzscheme.vim" [New File] 4 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0cw! lua.vim
[?25l[?1c"lua.vim" [New File] 4 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If +multi_byte feature supported, make mbyte.vim empty.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("multi_byte") | sp another | w! mbyte.vim | q | endif
[?25l[?1c"another" [New File]
"mbyte.vim" 0 lines, 0 characters writtene! test.ok[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If +mzscheme feature supported, make mzscheme.vim empty.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("mzscheme") | sp another | w! mzscheme.vim | q | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If +lua feature supported, make lua.vim empty.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("lua") | sp another | w! lua.vim | q | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If +eval feature supported quit here, leaving tiny.vim and small.vim empty.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Otherwise write small.vim to skip the test.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif 1 | q! | endif
[?25l[?1c[?25h[?0crm -rf X* viminfo
rm -rf test2.failed test.ok test.out X* viminfo
cp test2.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test2.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test2.in" 29 lines, 717 charactersThis is a test if a URL is recognized by "gf", with the cursor before and
after the "://".  Also test ":\\".

STARTTEST
:so small.vim
/^first
/tmp
:call append(0, expand("<cfile>"))
/^second
/URL
:call append(1, expand("<cfile>"))
:if has("ebcdic")
: set isf=@,240-249,/,.,-,_,+,,,$,:,~,\
:else
: set isf=@,48-57,/,.,-,_,+,,,$,:,~,\
:endif
/^third
/name
:call append(2, expand("<cfile>"))
/^fourth
/URL
:call append(3, expand("<cfile>"))[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 19 lines, 336 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST5GdG:wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
first test for URL://machine.name/tmp/vimtest2a and other text
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^first
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/[?25h[?0ctmp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, expand("<cfile>"))
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^second
[?25l[?1c
second test for URL://machine.name/tmp/vimtest2b. And other text[?25h[?0c[?25l[?1c
/[?25h[?0cURL
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(1, expand("<cfile>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("ebcdic")
[?25l[?1c
:  [?25h[?0c: set isf=@,240-249,/,.,-,_,+,,,$,:,~,\

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: set isf=@,48-57,/,.,-,_,+,,,$,:,~,\

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cSTARTTEST
:so small.vim
/^first
/tmp[?25h[?0c[?25l[?1c
/[?25h[?0c^third
[?25l[?1c
third test for URL:\\machine.name\vimtest2c and other text[?25h[?0c[?25l[?1c
/[?25h[?0cname
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(2, expand("<cfile>"))
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^fourth
[?25l[?1c
fourth test for URL:\\machine.name\tmp\vimtest2d, and other text[?25h[?0c[?25l[?1c
/[?25h[?0cURL
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(3, expand("<cfile>"))
[?25l[?1c[?25h[?0c[?25l[?1cThis is a test if a URL is recognized by "gf", with the cursor before and
after the "://".  Also test ":\\".

STARTTEST
:so small.vim[?25h[?0c[?25l[?1c29 fewer linesURL:\\machine.name\tmp\vimtest2d
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               29 fewer lines[?25h[?0c[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New File] 4 lines, 128 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test3.failed test.ok test.out X* viminfo
cp test3.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test3.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test3.in" 2303 lines, 22649 characters/* vim: set cin ts=4 sw=4 : */

Test for 'cindent'

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo modeline
:edit" read modeline
/start of AUTO
=/end of AUTO
ENDTEST

/* start of AUTO matically checked vim: set ts=4 : */
{if (test)cmd1;cmd2;
}

{if (test)cmd1;else[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c/* vim: set cin ts=4 sw=4 : */[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 5 lines, 125 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo modeline
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cedit                " read modeline
[?25l[?1c"test3.in"2303L, 22649Cif (test)cmd1;cmd2;if (test)cmd1;else[?25h[?0c[?25l[?1c/[?25h[?0cstart of AUTO
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cend of AUTO
[?25l[?1c956 lines to indent...
9500
850
750
650
550
450
350
250
150
50 lines to indent... 
957 lines indented [?25h[?0c[?25l[?1c/^STARTTEST
}break;default:baz();baz();break;
    }
}

/* end of AUTO */

STARTTEST
:set tw=0 wm=60 columns=80 noai fo=croq
/serious/e
a about life, the universe, and the rest^[
ENDTEST

{

/* this is
 * a real serious important big
 * comment
 */[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 93C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset tw=0 wm=60 columns=80 noai fo=croq
[?25l[?1c}break;default:baz();baz();break;
    }
}

/* end of AUTO */

STARTTEST
:set tw=0 wm=60 columns=80 noai fo=croq
/serious/e
a about life, the universe, and the rest^[
ENDTEST

{

/* this is
 * a real serious important big
 * comment
 */[?25h[?0c[?25l[?1c/[?25h[?0cserious/e
[?25l[?1c[?25h[?0c[?25l[?1c


-- INSERT --
about life, the
 * universe, and the
 * rest important big[?25h[?0c[?25l[?1c
* comment[?25h[?0c[?25l[?1c
/^STARTTEST
*/
    /* insert " about life, the universe, and the rest" after "serious" */
}

STARTTEST[?25h[?0c[?25l[?1c
:set nocin
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 6L, 78C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/comments
joabout life^[/happens
jothere^[/below
oline^[/this
Ohello^[[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset nocin
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0ccomments
[?25l[?1c{
    /** Testing for comments, without 'cin' set[?25h[?0c[?25l[?1c
*/[?25h[?0c[?25l[?1c
-- INSERT --
about life[?25h[?0c[?25l[?1c
/[?25h[?0chappens
[?25l[?1c/*
* what happens here?[?25h[?0c[?25l[?1c
*/[?25h[?0c[?25l[?1c
-- INSERT --
there[?25h[?0c[?25l[?1c
/[?25h[?0cbelow
[?25l[?1c/*the end of the comment, try inserting a line below */[?25h[?0c[?25l[?1c
-- INSERT --
line[?25h[?0c[?25l[?1c
/[?25h[?0cthis
[?25l[?1c/* how aboutthis one */[?25h[?0c[?25l[?1c
-- INSERT --hello[?25h[?0c[?25l[?1c
this one */[?25h[?0c[?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
:set cin
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 18C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/vec2
==[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cin
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cvec2
[?25l[?1c{
    var = this + that + vec[0] * vec[0]+ vec[1] * vec[1]+ vec2[2] * vec[2];[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set cin
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5L, 51C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1:set cino=}4
/testing1
k2==/testing2
k2==[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cino=}4
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0ctesting1
[?25l[?1c{asdf asdflkajds f;
    if (tes & ting) {asdf asdf asdf ;asdfa sdf asdf;}
    testing1;[?25h[?0c [?25l[?1c

/[?25h[?0ctesting2
[?25l[?1cif (tes & ting)
    {asdf asdf asdf ;asdfa sdf asdf;}
    testing2;[?25h[?0c [?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
:set cin
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 4L, 36C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1:set cino=(0,)20
/main
=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,)20
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cmain
[?25l[?1cmain ( int first_par, /*[?25h[?0c[?25l[?1c
19 lines to indent...
20indented [?25h[?0c[?25l[?1c
* Comment for[?25h[?0c[?25l[?1c
/^STARTTEST
* Comment for* first par*/second_par /** Comment for* second par*/);

}

STARTTEST
:set cin
:set cino=es,n0s
/main
=][
ENDTEST

main(void)
{
    /* Make sure that cino=X0s is not parsed like cino=Xs. */
    if (cond)foo();[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 4L, 36C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cino=es,n0s
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cmain
[?25l[?1c[?25h[?0c[?25l[?1c8 lines to indent...
9indented [?25h[?0c
[?25l[?1c/^STARTTEST
else
    {bar();
    }
}

STARTTEST[?25h[?0c[?25l[?1c
:set cin
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 26C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1:set cino=
]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cino=
[?25l[?1c[?25h[?0c[?25l[?1c{[?25h[?0c[?25l[?1c
11 lines to indent...
12indented [?25h[?0c[?25l[?1c
do[?25h[?0c[?25l[?1c
/^STARTTEST
if (){if ()asdf;elseasdf;}
    } while ();
    cmd;/* this should go under the } */
}

STARTTEST
]]=][
ENDTEST

void f()
{
    if ( k() ) {l();} else { /* Start (two words) end */m();
    }[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1L, 6C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c


[?25l[?1c8 lines to indent...
9indented [?25h[?0c
   [?25l[?1c/^STARTTEST
n();
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino={s,e-s
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino={s,e-s
[?25l[?1c[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
7 lines to indent...
8indented     {[?25h[?0c[?25l[?1c
if ( k() )[?25h[?0c[?25l[?1c
/^STARTTEST
{l();} else { /* Start (two words) end */m();}
    n();    /* should be under the if () */
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino={s,fs
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 25C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
]]=/ foo[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino={s,fs
[?25l[?1c[?25h[?0c[?25l[?1cvoid bar(void)
{[?25h[?0c[?25l[?1c
/[?25h[?0c foo
[?25l[?1c30 lines to indent...
31indented     {[?25h[?0c[?25l[?1c/^STARTTEST
void func(void)
    {
    a = 1;{b = 2;}
    c = 3;
    d = 4;
    }
/* foo */

STARTTEST
:set cino=
/while
ohere^[
ENDTEST

a()
{
  do {
    a = a +a;
  } while ( a );/* add text under this line */[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 25C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cwhile
[?25l[?1c[?25h[?0c[?25l[?1c
-- INSERT --
here[?25h[?0c[?25l[?1c
if ( a )
    i[?25h[?0c[?25l[?1c
/^STARTTEST
a;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino= com=
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 109C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/comment
olabel2: b();^Mlabel3 /* post */:^M/* pre */ label4:^Mf(/*com*/);^Mif (/*com*/)^Mcmd();^[[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino= com=
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0ccomment
[?25l[?1ca()
{
label1:/* hmm */// comment[?25h[?0c[?25l[?1c
-- INSERT --label2: b();
label3 /* post */:
/* pre */ label4:f(/*com*/);if (/*com*/)cmd();[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set comments& comments^=s:/*,m:**,ex:*/
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 53C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/simple
=5j[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset comments& comments^=s:/*,m:**,ex:*/
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0csimple
[?25l[?1c/*
  * A simple comment[?25h[?0c[?25l[?1c
5 lines to indent...
6indented * A simple comment[?25h[?0c[?25l[?1c
*/[?25h[?0c[?25l[?1c
/^STARTTEST
/*
** A different comment
*/

STARTTEST[?25h[?0c[?25l[?1c
:set cino=c0
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 70C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1:set comments& comments-=s1:/* comments^=s0:/*
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=c0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset comments& comments-=s1:/* comments^=s0:/*
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
4 lines to indent...
5indented [?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
/^STARTTEST
/*********A comment.
    *********/
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=c0,C1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 73C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1:set comments& comments-=s1:/* comments^=s0:/*
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=c0,C1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset comments& comments-=s1:/* comments^=s0:/*
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
4 lines to indent...
5indented [?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
/^STARTTEST
/*********
    A comment.
    *********/
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 17C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=
[?25l[?1c[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
5 lines to indent...
6indented [?25h[?0c[?25l[?1c
c = c1 &&[?25h[?0c[?25l[?1c
/^STARTTEST
(c2 ||c3) && c4;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(s
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(s
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
5 lines to indent...
6indented [?25h[?0c[?25l[?1c
c = c1 &&[?25h[?0c[?25l[?1c
/^STARTTEST
(c2 ||c3) && c4;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(s,U1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 28C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(s,U1  
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
5 lines to indent...
6indented [?25h[?0c[?25l[?1c
c = c1 &&[?25h[?0c[?25l[?1c
/^STARTTEST
(c2 ||c3) && c4;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
4 lines to indent...
5indented [?25h[?0c[?25l[?1c
if (   c1[?25h[?0c[?25l[?1c
/^STARTTEST
&& (   c2|| c3))foo;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0,w1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 28C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,w1  
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
4 lines to indent...
5indented [?25h[?0c[?25l[?1c
if (   c1[?25h[?0c[?25l[?1c
/^STARTTEST
&& (   c2|| c3))foo;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(s
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(s
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
8 lines to indent...
9indented [?25h[?0c[?25l[?1c
c = c1 && ([?25h[?0c[?25l[?1c
/^STARTTEST
c2 ||c3) && c4;
    if (c1 && c2)foo;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(s,m1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 28C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(s,m1  
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
8 lines to indent...
9indented [?25h[?0c[?25l[?1c
c = c1 && ([?25h[?0c[?25l[?1c
/^STARTTEST
c2 ||c3
    ) && c4;
    if (c1 && c2
    )foo;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=b1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=b1
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
9 lines to indent...
10 lines indented [?25h[?0c[?25l[?1c
switch (x)[?25h[?0c[?25l[?1c
/^STARTTEST
{case 1:a = b;break;default:a = 0;break;
    }
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0,W5
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 26C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,W5
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
10 lines to indent...
11indented [?25h[?0c[?25l[?1c
invokeme([?25h[?0c[?25l[?1c
/^STARTTEST
argu,ment);
    invokeme(argu,ment);
    invokeme(argu,ment);
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=/6
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=/6
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
3 lines to indent...
4indented [?25h[?0c[?25l[?1c
statement;[?25h[?0c[?25l[?1c
/^STARTTEST
// comment 1// comment 2
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 34C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-12kdd]]/comment 1/+1
==[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=
[?25l[?1c[?25h[?0c[?25l[?1c==ENDTEST[?25h[?0c[?25l[?1cvoid f()
{[?25h[?0c[?25l[?1c
/[?25h[?0ccomment 1/+1
[?25l[?1cstatement;// comment 1
    // comment 2[?25h[?0c[?25l[?1c    // comment 2[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set cino=g0
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=g0
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cclass CAbc
{[?25h[?0c[?25l[?1c
6 lines to indent...
7indented [?25h[?0c[?25l[?1c
int Test() { return FALSE; }[?25h[?0c[?25l[?1c
/^STARTTEST
public: // comment
    void testfall();
protected:
    void testfall();
};

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0,gs,hs
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 29C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,gs,hs
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cclass Foo : public Bar
{[?25h[?0c[?25l[?1c
5 lines to indent...
6indented [?25h[?0c[?25l[?1c
public:[?25h[?0c[?25l[?1c
/^STARTTEST
virtual void method1(void) = 0;virtual void method2(int arg1,int arg2,int arg3) = 0;
};

STARTTEST[?25h[?0c[?25l[?1c
:set cino=+20
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 24C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=+20
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1cvoid
foo()
{[?25h[?0c[?25l[?1c
4 lines to indent...
5indented [?25h[?0c[?25l[?1c
if (a)[?25h[?0c[?25l[?1c
/^STARTTEST
{
    } elseasdf;
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0,W2s
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 27C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd]]=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,W2s
[?25l[?1c[?25h[?0c[?25l[?1c2kdd]]=][ENDTEST[?25h[?0c[?25l[?1c
{[?25h[?0c[?25l[?1c
34 lines to indent...
35indented [?25h[?0c[?25l[?1c
averylongfunctionnamelongfunctionnameaverylongfunctionname()->asd([?25h[?0c[?25l[?1c
/^STARTTEST
dec)->asdfasdfasdf(asdfadsf,asdfasdf,asdfasdf,),func(asdfadf,asdfasdf),asdasdf);
}

STARTTEST
:set cino=M1
2kdd]]=][
ENDTEST

int main ()
{
    if (cond1 &&cond2)foo;
}[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=M1
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c4 lines to indent...
5indented [?25h[?0c
   [?25l[?1c/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0,ts
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 26C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd2j=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0,ts
[?25l[?1c[?25h[?0c[?25l[?1c2kdd2j=][ENDTEST[?25h[?0c

[?25l[?1c
7 lines to indent...
8indented [?25h[?0c[?25l[?1c
void func(int a[?25h[?0c[?25l[?1c
/^STARTTEST
#if defined(FOO), int b, int c
#endif)
{
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=(0
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 23C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd2j=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=(0
[?25l[?1c[?25h[?0c[?25l[?1c2kdd2j=][ENDTEST[?25h[?0c

[?25l[?1c
8 lines to indent...
9indented [?25h[?0c[?25l[?1c
void[?25h[?0c[?25l[?1c
/^STARTTEST
func(int a
#if defined(FOO), int b, int c
#endif
    )
{
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 22C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd2j=7][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino&
[?25l[?1c[?25h[?0c[?25l[?1c2kdd2j=7][
ENDTEST[?25h[?0c

[?25l[?1c
69 lines to indent...
50
7indented [?25h[?0c[?25l[?1c
void func(void)[?25h[?0c[?25l[?1c
/^STARTTEST
int a,int b)
{
}void
func6(int a)
{
}

STARTTEST
:set cino&
:set cino+=l1
2kdd2j=][
ENDTEST

void func(void)
{
    int tab[] =
    {1, 2, 3,4, 5, 6};[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cino+=l1
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c

[?25l[?1c22 lines to indent...
23indented [?25h[?0c
[?25l[?1c/^STARTTEST
break;case baz: {printf("baz");break;}case quux:printf("But don't break the indentation of this instruction\n");break;
    }
}

STARTTEST
:set cino&
2kdd2j=][
ENDTEST

void func(void)
{
    cout << "a"
    << "b"
    << ") :"
    << "c";
}[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 21C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino&
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c

[?25l[?1c6 lines to indent...
7indented     << "b"
        << ") :"
        << "c";[?25h[?0c
[?25l[?1c/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:set com=s1:/*,m:*,ex:*/
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 38C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
]]3jofoo();^[[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset com=s1:/*,m:*,ex:*/
[?25l[?1c[?25h[?0c[?25l[?1cvoid func(void)
{[?25h[?0c[?25l[?1c/** This is a comment.*/[?25h[?0c[?25l[?1c
-- INSERT --
foo();[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set cino&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 21C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd2j=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino&
[?25l[?1c[?25h[?0c[?25l[?1c2kdd2j=][ENDTEST[?25h[?0c

[?25l[?1c
8 lines to indent...
9indented [?25h[?0c[?25l[?1c
void func(void)[?25h[?0c[?25l[?1c
/^STARTTEST
{
    for (int i = 0; i < 10; ++i)if (i & 1) {foo(1);} elsefoo(0);
    baz();
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=k2s,(0
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 27C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1
2kdd3j=][[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,(0
[?25l[?1c[?25h[?0c[?25l[?1c2kdd3j=][ENDTEST[?25h[?0c[?25l[?1c
void func(void)[?25h[?0c[?25l[?1c
23 lines to indent...
24indented [?25h[?0c[?25l[?1c
{[?25h[?0c[?25l[?1c
/^STARTTEST
if (   c1&& (      c2|| c3))foo;
    func( c1&& (     c2|| c3))foo;
}

STARTTEST
:set cino=k2s,(s
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1
    && condition2)
    action();
    function(argument1
    && argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 27C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,(s
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c23 lines to indent...
24indented         && condition2)
        action();    && argument2);[?25h[?0c
[?25l[?1c/^STARTTEST
if (   c1&& (      c2|| c3))foo;
    func(   c1&& (      c2|| c3))foo;
}

STARTTEST
:set cino=k2s,(s,U1
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1
    && condition2)
    action();
    function(argument1
    && argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 30C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,(s,U1
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c24 lines to indent...
25indented         && condition2)
        action();    && argument2);[?25h[?0c
[?25l[?1c/^STARTTEST
&& (c22345|| c3))printf("foo\n");c = c1 &&(c2 ||c3) && c4;
}

STARTTEST
:set cino=k2s,(0,W4
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1
    && condition2)
    action();
    function(argument1
    && argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 30C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,(0,W4
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c29 lines to indent...
30indented         && condition2)
        action();         && argument2);[?25h[?0c
[?25l[?1c/^STARTTEST
&& (   c2|| c3))foo;a_long_line(argument,argument);
    a_short_line(argument,argument);
}

STARTTEST
:set cino=k2s,u2
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1
    && condition2)
    action();
    function(argument1
    && argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 27C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,u2
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c18 lines to indent...
19indented         && condition2)
        action();        && argument2);[?25h[?0c
[?25l[?1c/^STARTTEST
foo;
    if (c1 &&(c2 || c3))
    {
    }
    if (c123456789&& (c22345|| c3))printf("foo\n");
}

STARTTEST
:set cino=k2s,(0,w1
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1
    && condition2)
    action();
    function(argument1
    && argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 30C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2s,(0,w1
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c27 lines to indent...
28indented         && condition2)
        action();         && argument2);[?25h[?0c
[?25l[?1c/^STARTTEST
if (   c1&& (      c2|| c3))foo;
    func(   c1&& (      c2|| c3))foo;
}

STARTTEST
:set cino=k2,(s
2kdd3j=][
ENDTEST

void func(void)
{
    if (condition1&& condition2)action();
    function(argument1&& argument2);[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 26C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=k2,(s
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c


[?25l[?1c14 lines to indent...
15indented [?25h[?0c
[?25l[?1c/^STARTTEST
if (c1 && (c2 ||c3))foo;
    if (c1 &&(c2 || c3))
    {
    }
}

STARTTEST[?25h[?0c[?25l[?1c
:set cino=N-s
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 47C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/^NAMESPACESTART
=/^NAMESPACEEND[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=N-s
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^NAMESPACESTART
[?25l[?1cNAMESPACESTART[?25h[?0c[?25l[?1c
/[?25h[?0c^NAMESPACEEND
[?25l[?1c61 lines to indent...
50
62indented [?25h[?0c[?25l[?1c/^STARTTEST
namespace test test2
{
    1111111111111111111;
}
namespace111111111
{
    111111111111111111;
}
NAMESPACEEND


STARTTEST
:set cino=j1,J1
/^JSSTART
=/^JSEND
ENDTEST

JSSTART
var bar = {
foo: {
that: this,
some: ok,
},[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSEND
[?25l[?1c12 lines to indent...
13indented     foo: {
        that: this,
        some: ok,
    },[?25h[?0c[?25l[?1c/^STARTTEST
"bar":{a : 2,b: "123abc",x: 4,"y": 5
    }
}
JSEND

STARTTEST[?25h[?0c[?25l[?1c
:set cino=j1,J1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/^JSSTART
=/^JSEND[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1cJSSTART[?25h[?0c[?25l[?1c
/[?25h[?0c^JSEND
[?25l[?1c5 lines to indent...
6indented [?25h[?0c[?25l[?1c/^STARTTEST
var foo = [
    1,
    2,
    3
];
JSEND

STARTTEST[?25h[?0c[?25l[?1c
:set cino=j1,J1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/^JSSTART
=/^JSEND[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1cJSSTART[?25h[?0c[?25l[?1c
/[?25h[?0c^JSEND
[?25l[?1c7 lines to indent...
8indented [?25h[?0c[?25l[?1c/^STARTTEST
function bar() {
    var foo = [1,2,3
    ];
}
JSEND

STARTTEST[?25h[?0c[?25l[?1c
:set cino=j1,J1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/^JSSTART
=/^JSEND[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1cJSSTART[?25h[?0c[?25l[?1c
/[?25h[?0c^JSEND
[?25l[?1c58 lines to indent...
509indented [?25h[?0c[?25l[?1c/^STARTTEST
return false;}_arguments[0]=options;method.apply(this,_arguments);}});
    }

})(jQuery);
JSEND

STARTTEST
:set cino=j1,J1
/^JSSTART
=/^JSEND
ENDTEST

JSSTART
function init(options) {
$(this).data(class_name+'_public',$.extend({},{
foo: 'bar',
bar: 2,
foobar: [[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSEND
[?25l[?1c14 lines to indent...
15indented     $(this).data(class_name+'_public',$.extend({},{
        foo: 'bar',
        bar: 2,
        foobar: [[?25h[?0c[?25l[?1c/^STARTTEST
1,2,3],callback: function(){return true;}
    }, options||{}));
}
JSEND

STARTTEST[?25h[?0c[?25l[?1c
:set cino=j1,J1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 35C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/+-1/^JSSTART
=/^JSEND[?25h[?0c[?25l[?1c
ENDTEST
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1cJSSTART[?25h[?0c[?25l[?1c
/[?25h[?0c^JSEND
[?25l[?1c16 lines to indent...
17indented [?25h[?0c[?25l[?1c/^STARTTEST
2,3],callback: function(){return true;}}, options||{}));
    }
})(jQuery);
JSEND

STARTTEST
:set cino=j1,J1,+2
/^JSSTART
=/^JSEND
ENDTEST

JSSTART
// Results of JavaScript indent
// 1
(function(){
var a = [
'a',[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3L, 38C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset cino=j1,J1,+2
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSSTART
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^JSEND
[?25l[?1c149 lines to indent...
100
50 lines to indent... 
150 lines indented     var a = [
      'a',[?25h[?0c[?25l[?1c/^STARTTEST
'e',
  'f',
  'g',
  'h',
  'i'
];

// 10
var a,
    b,
    c,
    d,
    e,
    f,
    g,
    h,
    i;
JSEND

STARTTEST
:g/^STARTTEST/.,/^ENDTEST/d
:1;/start of AUTO/,$wq! test.out
ENDTEST[?25h[?0c
[?25l[?1c


:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2L, 61C written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c


/ENDTEST/+-1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cg/^STARTTEST/.,/^ENDTEST/d
[?25l[?1c221 fewer lines5 *9 *c
  'd
  'e',
  'f',
  'g',
  'h',
  'i'];// 10var a
    b
    c
    d
    e,
    f,
    g,
    h,    i;JSEND[?25h[?0c[?25l[?1c:[?25h[?0c1;/start of AUTO/,$wq! test.out
[?25l[?1c"test.out" [New] 2062L, 19815C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test4.failed test.ok test.out X* viminfo
cp test4.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test4.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test4.in" 34 lines, 960 charactersTest for autocommand that changes current buffer on BufEnter event.
Check if modelines are interpreted for the correct buffer.

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
:au BufEnter Xxx brew
/start of
:.,/end of/w! Xxx   " write test file Xxx
:set ai modeline modelines=3
:sp Xxx" split to Xxx, autocmd will do :brew
G?this is a
othis should be auto-indented^[
:" Append text with autoindent to this file
:au! BufEnter Xxx
:buf Xxx" go to Xxx, no autocmd anymore
G?this is a
othis should be in column 1^[:wq " append text without autoindent to Xxx
G:r Xxx" include Xxx in the current file
:set fo+=r" issue #57 do not move cursor on <c-o> when autoindent is set
Go# abcdef^[2hi
^Od0^[o# abcdef^[2hi^Od0^[:[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for autocommand that changes current buffer on BufEnter event.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 20 lines, 678 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:?startstart?,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter Xxx brew
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cstart of
[?25l[?1cstartstart
start of test file Xxx[?25h[?0c[?25l[?1c
:[?25h[?0c.,/end of/w! Xxx   " write test file Xxx
[?25l[?1c"Xxx" [New] 7L, 124C written[?25h[?0c[?25l[?1c:[?25h[?0cset ai modeline modelines=3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csp Xxx             " split to Xxx, autocmd will do :brew
[?25l[?1c"Xxx" 7L, 124CTest for autocommand that changes current buffer on BufEnter event.
Check if modelines are interpreted for the correct buffer.STARTTESTo small.vim:set nocompatible viminfo+=nviminfo
:au BufEnter Xxx brew/start of.,/end of/w!" write test file Xxx
:set ai modeline modelines=3:sp Xxx    " split to Xxx, autocmd will do :brew
test4.in                                                                        :set fo+=rssue #57 do not move cursor on <c-o> when autoindent is setGo# abcdef^[2hi
^Od0^[o# abcdef^[2hi^Od0^[:
:?startstart?,$w! test.outqa!ENDTESTstartstart of test file Xxx
test4.in                                                                        test4.in" line 1 of 34 --2%-- col 1[?25h[?0c[?25l[?1c:qa!ENDTESTstartstart
start of test file Xxx
vim: set noai :        this is a test
        this is a test
        this is a test        this is a testend of test file Xxx[?25h[?0c[?25l[?1c?[?25h[?0cthis is a
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --        this should be auto-indented[+][+][?25h[?0c[?25l[?1c
end of test file Xxx[?25h[?0c[?25l[?1c:[?25h[?0c                   " Append text with autoindent to this file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau! BufEnter Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbuf Xxx            " go to Xxx, no autocmd anymore
[?25l[?1c"Xxx" 7L, 124Cstart of test file Xxx
vim: set noai :
        this is a test
        this is a test
        this is a test

end of test file Xxx~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx         [?25h[?0c[?25l[?1c?[?25h[?0cthis is a
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --this should be in column 1[+][?25h[?0c[?25l[?1c:[?25h[?0cwq " append text without autoindent to Xxx
[?25l[?1c"Xxx8L, 151C written:au BufEnter Xxx brew/start of:.,/end of/w! Xxx   " write test file Xxx
:set ai modeline modelines=3
:sp Xxx             " split to Xxx, autocmd will do :brew
G?this is aothis should be auto-indented^[
:                   " Append text with autoindent to this file
:au! BufEnter Xxx:buf Xxx            " go to Xxx, no autocmd anymoreG?this is aothis should be in column 1^[:wq " append text without autoindent to XxxG:r Xxx   nclude Xxx in the current file:set fo+=r" issue #57 do not move cursor on <c-o> when autoindent is setGo# abcdef^[2hi^Od0^[o# abcdef^[2hi^Od0^[:
:?startstart?,$w! test.out
:qa!ENDTESTstarstart of test file Xxx[?25h[?0c[?25l[?1cvim: set noai :this is a testthis is a testthis is a testthis is a testthis should be auto-indented
end of test file Xxx[?25h[?0c[?25l[?1c
:[?25h[?0cr Xxx             " include Xxx in the current file
[?25l[?1c"Xxx" 8L, 151C
start of test file Xxx[?25h[?0c[?25l[?1c
:[?25h[?0cset fo+=r          " issue #57 do not move cursor on <c-o> when autoindent is 

set
[?25l[?1c:au! BufEnter Xxx[?25h[?0c[?25l[?1cvim: set noai :this is a testthis is a testthis is a testthis is a test
this should be in column 1
end of test file Xxx
[?25h[?0c[?25l[?1c
-- INSERT --
# abcdef[?25h[?0c[?25l[?1c
-- INSERT --
-- (insert) --
# def[?25h[?0c[?25l[?1cINSERT --defo[?25h[?0cd[?25l[?1c[?25h[?0c[?25l[?1c
-- INSERT --
# abcdef[?25h[?0c[?25l[?1c
-- INSERT --
-- (insert) --[?25h[?0c[?25l[?1c
-- INSERT --def:[?25h[?0cd[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c:[?25h[?0c?startstart?,$w! test.out
[?25l[?1c"test.out" [New] 20L, 330C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test5.failed test.ok test.out X* viminfo
cp test5.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test5.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test5.in" 29 lines, 949 charactersTest for autocommand that deletes the current buffer on BufLeave event.
Also test deleting the last buffer, should give a new, empty buffer.

STARTTEST
:so small.vim
:au BufLeave Xxx bwipe
/start of
:.,/end of/w! Xxx" write test file Xxx
:sp Xxx" split to Xxx
:bwipe" delete buffer Xxx, now we're back here
G?this is a
othis is some more text^[
:" Append some text to this file
:?start?,$w! test.out" Write current file contents
:bwipe test.out" delete alternate buffer
:au bufleave test5.in bwipe
:bwipe!" delete current buffer, get an empty one
ithis is another test line^[:w >>test.out
:" append an extra line to the output file
:qa!
ENDTEST

start of test file Xxx[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for autocommand that deletes the current buffer on BufLeave event.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 16 lines, 664 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufLeave Xxx bwipe
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cstart of
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx               " write test file Xxx
[?25l[?1c"Xxx" [New File] 7 lines, 124 characters written[?25h[?0c[?25l[?1c:[?25h[?0csp Xxx                         " split to Xxx
[?25l[?1c"Xxx" 7 lines, 124 charactersstart of test file Xxxvim: set noai :this is a test
        this is a test
        this is a test
        this is a test
end of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx                                                                             ?start?,$w! test.outWrite current file contentsbwipe test.out      delete alternate bufferau bufleave test5.in bwipebwipe!                         " delete current buffer, get an empty one
ithis is another test line^[:w >>test.out:                               " append an extra line to the output file
:qa!ENDTESTstart of test file Xxx
test5.in                                                                        [?25h[?0c[?25l[?1c:[?25h[?0cbwipe                          " delete buffer Xxx, now we're back here
[?25l[?1cTest for autocommand that deletes the current buffer on BufLeave event.
Also test deleting the last buffer, should give a new, empty buffer.STARTTEST:so small.vim:au BufLeave Xxx bwipe
/start of:.,/end of/w! Xxx               " write test file Xxx:sp Xxx                         " split to Xxx:bwipe                          " delete buffer Xxx, now we're back hereG?this is aothis is some more text^[                    Append some text to this file
:?start?,$w! test.outWrite current file contents
:bwipe test.out                 " delete alternate buffer
:au bufleave test5.in bwipe:bwipe!                         " delete current buffer, get an empty one
ithis is another test line^[:w >>test.out   " append an extra line to the output file
:qa!ENDTESTstart of test file Xxx"test5.in" line 23 of 29 --79%-- col 1[?25h[?0c[?25l[?1cvim: set noai :this is a testthis is a testthis is a testthis is a test
end of test file Xxx[?25h[?0c[?25l[?1c
?[?25h[?0cthis is a
[?25l[?1c[?25h[?0c[?25l[?1c
this is some more text[?25h[?0c[?25l[?1c
end of test file Xxx[?25h[?0c[?25l[?1c
:[?25h[?0c                               " Append some text to this file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c?start?,$w! test.out           " Write current file contents
[?25l[?1c"test.out" [New File] 8 lines, 147 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe test.out                 " delete alternate buffer
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau bufleave test5.in bwipe
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!                         " delete current buffer, get an empty one
[?25l[?1cError detected while processing BufLeave Auto commands for "test5.in":
E89: No write since last change for buffer 1 (add ! to override)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1cthis is another test line[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 26 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c                               " append an extra line to the output file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test6.failed test.ok test.out X* viminfo
cp test6.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test6.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test6.in" 24 lines, 739 charactersTest for autocommand that redefines the argument list, when doing ":all".

STARTTEST
:so small.vim
:au BufReadPost Xxx2 next Xxx2 Xxx1
/^start of
A1^[:.,/end of/w! Xxx1    " write test file Xxx1
$r2:.,/end of/w! Xxx2     " write test file Xxx2
$r3:.,/end of/w! Xxx3     " write test file Xxx3
:next! Xxx1 Xxx2 Xxx3     " redefine arglist; go to Xxx1
:all" open window for all args
:w! test.out" Write contents of Xxx1
^W^W^W^W:w >>test.out     " Append contents of last window (Xxx1)
:rew" should now be in Xxx2
:w >>test.out" Append contents of Xxx2
:qa!
ENDTEST

start of test file Xxxthis is a testthis is a testthis is a testthis is a test[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for autocommand that redefines the argument list, when doing ":all".[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 13 lines, 537 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPost Xxx2 next Xxx2 Xxx1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start of
[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx1    " write test file Xxx1
[?25l[?1c"Xxx1" [New File] 6 lines, 109 characters written[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx2     " write test file Xxx2
[?25l[?1c"Xxx2" [New File] 6 lines, 109 characters written[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx3     " write test file Xxx3
[?25l[?1c"Xxx3" [New File] 6 lines, 109 characters written[?25h[?0c[?25l[?1c:[?25h[?0cnext! Xxx1 Xxx2 Xxx3     " redefine arglist; go to Xxx1
[?25l[?1c"Xxx1"6 lines, 109 charactersstart of test file Xxx1this is a test
        this is a test
        this is a test
        this is a testend of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0call                      " open window for all args
[?25l[?1c"Xxx2"6 lines, 109 characters

"Xxx2" 6 lines, 109 characters

"Xxx1" line 1 of 6 --16%-- col 1 (file (3) of 2)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out              " Write contents of Xxx1
[?25l[?1c"test.out" [New File] 6 lines, 109 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1cstart of test file Xxx1this is a testthis is a testthis is a testthis is a test
end of test file Xxx
~                                                                               Xxx1                                                                            start of test file Xxx2this is a testthis is a testthis is a testthis is a test
end of test file Xxx
Xxx2                                                                            start of test file Xxx1this is a testthis is a testthis is a testthis is a test
end of test file Xxx
~                                                                               Xxx1                                                                            [?25h[?0cXxx1                                                                            Xxx2                                                                            Xxx2                                                                            Xxx1                                                                            [?25l[?1c:[?25h[?0cw >>test.out     " Append contents of last window (Xxx1)
[?25l[?1c"test.out" 6 lines, 109 characters appended[?25h[?0c[?25l[?1c:[?25h[?0crew                      " should now be in Xxx2
[?25l[?1c"Xxx2" line 1 of 6 --16%-- col 1 (file 1 of 2)22[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out             " Append contents of Xxx2
[?25l[?1c"test.out" 6 lines, 109 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test7.failed test.ok test.out X* viminfo
cp test7.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test7.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test7.in" 26 lines, 675 charactersTest for autocommand that changes the buffer list, when doing ":ball".

STARTTEST
:so small.vim
/^start of
A1^[:.,/end of/w! Xxx1   " write test file Xxx1
:sp Xxx1
:close
$r2:.,/end of/w! Xxx2    " write test file Xxx2
:sp Xxx2
:close
$r3:.,/end of/w! Xxx3    " write test file Xxx3
:sp Xxx3
:close
:au BufReadPost Xxx2 bwipe
$r4:ball" open window for all args, close Xxx2
:.,$w! test.out" Write contents of this file
^W^W:w >>test.out" Append contents of second window (Xxx1)
^W^W:/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!
ENDTEST

start of test file Xxx[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for autocommand that changes the buffer list, when doing ":ball".[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 508 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start of
[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx1   " write test file Xxx1
[?25l[?1c"Xxx1" [New File] 4 lines, 77 characters written[?25h[?0c[?25l[?1c:[?25h[?0csp Xxx1
[?25l[?1c"Xxx1" 4 lines, 77 charactersstart of test file Xxx1this is a test
        this is a test
end of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx1                                                                            closeau BufReadPost Xxx2 bwipe
$r4:ball                 " open window for all args, close Xxx2
:.,$w! test.outWrite contents of this file^W^W:w >>test.outAppend contents of second window (Xxx1)/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx1
test7.in [+]                                                                    [?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cTest for autocommand that changes the buffer list, when doing ":ball".STARTTEST:so small.vim/^start ofA1^[:.,/end of/w! Xxx1   " write test file Xxx1:sp Xxx1:close$r2:.,/end of/w! Xxx2    " write test file Xxx2:sp Xxx2:close$r3:.,/end of/w! Xxx3    " write test file Xxx3sp Xxx3
:close:au BufReadPost Xxx2 bwipe$r4:ball       open window for all args, close Xxx2
:.,$w! test.out  Write contents of this filew >>test.out        " Append contents of second window (Xxx1)^W^W:/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx1[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx2    " write test file Xxx2
[?25l[?1c"Xxx2" [New File] 4 lines, 77 characters written[?25h[?0c[?25l[?1c:[?25h[?0csp Xxx2
[?25l[?1c"Xxx2" 4 lines, 77 charactersstart of test file Xxx2this is a test
        this is a test
end of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx2                                                                            closeau BufReadPost Xxx2 bwipe
$r4:ball                 " open window for all args, close Xxx2
:.,$w! test.outWrite contents of this file^W^W:w >>test.outAppend contents of second window (Xxx1)/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx2
test7.in [+]                                                                    [?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cTest for autocommand that changes the buffer list, when doing ":ball".STARTTEST:so small.vim/^start ofA1^[:.,/end of/w! Xxx1   " write test file Xxx1:sp Xxx1:close$r2:.,/end of/w! Xxx2    " write test file Xxx2:sp Xxx2:close$r3:.,/end of/w! Xxx3    " write test file Xxx3sp Xxx3
:close:au BufReadPost Xxx2 bwipe$r4:ball       open window for all args, close Xxx2
:.,$w! test.out  Write contents of this filew >>test.out        " Append contents of second window (Xxx1)^W^W:/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx2[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx3    " write test file Xxx3
[?25l[?1c"Xxx3" [New File] 4 lines, 77 characters written[?25h[?0c[?25l[?1c:[?25h[?0csp Xxx3
[?25l[?1c"Xxx3" 4 lines, 77 charactersstart of test file Xxx3this is a test
        this is a test
end of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx3                                                                            closeau BufReadPost Xxx2 bwipe
$r4:ball                 " open window for all args, close Xxx2
:.,$w! test.outWrite contents of this file^W^W:w >>test.outAppend contents of second window (Xxx1)/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx3
test7.in [+]                                                                    [?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cTest for autocommand that changes the buffer list, when doing ":ball".STARTTEST:so small.vim/^start ofA1^[:.,/end of/w! Xxx1   " write test file Xxx1:sp Xxx1:close$r2:.,/end of/w! Xxx2    " write test file Xxx2:sp Xxx2:close$r3:.,/end of/w! Xxx3    " write test file Xxx3sp Xxx3
:close:au BufReadPost Xxx2 bwipe$r4:ball       open window for all args, close Xxx2
:.,$w! test.out  Write contents of this filew >>test.out        " Append contents of second window (Xxx1)^W^W:/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!ENDTESTstart of test file Xxx3[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPost Xxx2 bwipe
[?25l[?1c[?25h[?0c[?25l[?1c4[?25h[?0c[?25l[?1c:[?25h[?0cball                 " open window for all args, close Xxx2
[?25l[?1c"Xxx1"4 lines, 77 characters

"Xxx2" 4 lines, 77 characters

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c.,$w! test.out          " Write contents of this file
[?25l[?1c"test.out" [New File] 4 lines, 77 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:close
:au BufReadPost Xxx2 bwipe
$r4:ball" open window for all args, close Xxx2
:.,$w! test.out" Write contents of this file
^W^W:w >>test.out" Append contents of second window (Xxx1)
^W^W:/^start of/,$w >>test.out   " Append contents of last window (this file)
:qa!
ENDTEST

start of test file Xxx4
test7.in [+]                                                                    start of test file Xxx1this is a testthis is a test
end of test file Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xxx1                                                                            [?25h[?0c
test7.in [+]                                                                    Xxx1                                                                            [?25l[?1c:[?25h[?0cw >>test.out        " Append contents of second window (Xxx1)
[?25l[?1c"test.out" 4 lines, 77 characters appended[?25h[?0ctest7.in [+]                                                                    Xxx1                                                                            [?25l[?1c:[?25h[?0c/^start of/,$w >>test.out   " Append contents of last window (this file)
[?25l[?1csearch hit BOTTOM, continuing at TOP"test.out" 4 lines, 77 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test8.failed test.ok test.out X* viminfo
cp test8.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test8.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test8.in" 46 lines, 1236 charactersTest for BufWritePre autocommand that deletes or unloads the buffer.
Test for BufUnload autocommand that unloads all other buffers.

STARTTEST
:so small.vim
:au BufWritePre Xxx1 bunload
:au BufWritePre Xxx2 bwipe
/^start of
A1^[:.,/end of/w! Xxx1  " write test file Xxx1
$r2:.,/end of/w! Xxx2   " write test file Xxx2
:e! Xxx2" edit Xxx2
:bdel test8.in" delete this file from the buffer list
:e Xxx1" edit Xxx1
:w" write it, will unload it and give an error msg
:w! test.out" Write contents of this file
:e! Xxx2" start editing Xxx2
:bwipe test.out" remove test.out from the buffer list
:w" write it, will delete the buffer and give an error msg:w >>test.out" Append contents of this file
:au! BufWritePre
:func CloseAll()
  let i = 0
  while i <= bufnr('$')[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for BufWritePre autocommand that deletes or unloads the buffer.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 37 lines, 1054 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTif i != bufnr('%') && bufloaded(i)exe  i . "bunload"
    endif
    let i += 1
  endwhile
endfunc
:func WriteToOut()
  edit! test.out
  $put ='VimLeave done'
  write
endfunc
:set viminfo='100,nviminfo
:au BufUnload * call CloseAll()
:au VimLeave * call WriteToOut()
:e small.vim
:sp mbyte.vim
:q
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufWritePre Xxx1 bunload
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufWritePre Xxx2 bwipe
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start of
[?25l[?1c
start of Xxx[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c
:[?25h[?0c.,/end of/w! Xxx1  " write test file Xxx1
[?25l[?1c"Xxx1" [New File] 3 lines, 31 characters written[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0c.,/end of/w! Xxx2   " write test file Xxx2
[?25l[?1c"Xxx2" [New File] 3 lines, 31 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! Xxx2                " edit Xxx2
[?25l[?1c"Xxx2" 3 lines, 31 charactersstart of Xxx2
        testend of Xxx~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbdel test8.in^I^I" delete this file from the buffer list
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce Xxx1                 " edit Xxx1
[?25l[?1c"Xxx1" 3 lines, 31 characters1
[?25h[?0c[?25l[?1c:[?25h[?0cw                      " write it, will unload it and give an error msg
[?25l[?1c"Xxx2"3 lines, 31 characters

E203: Autocommands deleted or unloaded buffer to be written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out            " Write contents of this file
[?25l[?1c"test.out" [New File] 3 lines, 31 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ce! Xxx2                " start editing Xxx2
[?25l[?1c"Xxx2" 3 lines, 31 charactersstart of Xxx2test
end of Xxx"Xxx2" 3 lines, 31 characters[?25h[?0c[?25l[?1c:[?25h[?0cbwipe test.out         " remove test.out from the buffer list
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw                      " write it, will delete the buffer and give an error ms

g[?25l[?1c"Xxx1"3 lines, 31 characters
E203: Autocommands deleted or unloaded buffer to be written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out           " Append contents of this file
[?25l[?1c"test.out" 3 lines, 31 characters appended

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cau! BufWritePre
[?25l[?1cstart of Xxx1test
end of Xxx[?25h[?0c[?25l[?1c:[?25h[?0cfunc CloseAll()
[?25l[?1c
:  [?25h[?0c  let i = 0

[?25l[?1c:  [?25h[?0c  while i <= bufnr('$')

[?25l[?1c:    [?25h[?0c    if i != bufnr('%') && bufloaded(i)

[?25l[?1c:      [?25h[?0c      exe  i . "bunload"

[?25l[?1c:      [?25h[?0c    endif

[?25l[?1c:    [?25h[?0c    let i += 1

[?25l[?1c:    [?25h[?0c  endwhile

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1cstart of Xxx1test
end of Xxx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cfunc WriteToOut()
[?25l[?1c
:  [?25h[?0c  edit! test.out

[?25l[?1c:  [?25h[?0c  $put ='VimLeave done'

[?25l[?1c:  [?25h[?0c  write

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1cstart of Xxx1test
end of Xxx
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset viminfo='100,nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufUnload * call CloseAll()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau VimLeave * call WriteToOut()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce small.vim
[?25l[?1cError detected while processing function CloseAll:

line    4:

E16: Invalid range: 0bunload

"small.vim" 1 line, 1 character

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0csp mbyte.vim
[?25l[?1c"mbyte.vim" 0 lines, 0 characters~                                                                               ~                                                                               ~                                                                               mbyte.vim                                                                       small.vim                                                                       "mbyte.vim" 0 lines, 0 characters[?25h[?0c[?25l[?1c:[?25h[?0cq
[?25l[?1cError detected while processing function CloseAll:

line    4:

E16: Invalid range: 0bunload

"test.out" 6 lines, 62 characters

"test.out" 7 lines, 76 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test9.failed test.ok test.out X* viminfo
cp test9.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test9.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test9.in" 12 lines, 255 charactersTest for Bufleave autocommand that deletes the buffer we are about to edit.

STARTTEST
:so small.vim
:au BufLeave test9.in bwipe yy
:e yy
:/^start of/,$w! test.out      " Write contents of this file
:qa!
ENDTEST

start of test file xx
end of test file xx
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for Bufleave autocommand that deletes the buffer we are about to edit.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 5 lines, 117 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufLeave test9.in bwipe yy
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce yy
[?25l[?1cE143: Autocommands unexpectedly deleted new buffer yy[?25h[?0c[?25l[?1c:[?25h[?0c/^start of/,$w! test.out      " Write contents of this file
[?25l[?1c"test.out" [New File] 2 lines, 42 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test10.failed test.ok test.out X* viminfo
cp test10.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test10.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test10.in" 114 lines, 3080 charactersTest for 'errorformat'.  This will fail if the quickfix feature was disabled.

STARTTEST
:so small.vim
:" Also test a BOM is ignored.
:so mbyte.vim
:set encoding=utf-8
:7/start of errorfile/,/end of errorfile/w! Xerrorfile1
:7/start of errorfile/,/end of errorfile/-1w! Xerrorfile2
:/start of testfile/,/end of testfile/w! Xtestfile
:set efm+==%f=\\,\ line\ %l%*\\D%v%*[^\ ]\ %m
:set efm^=%AError\ in\ \"%f\"\ at\ line\ %l:,%Z%p^,%C%m
:cf Xerrorfile2
:clast
:copen
:let a=w:quickfix_title
:wincmd p
lgR^R=a^M^[
:cf Xerrorfile1
grA
:cn
gRLINE 6, COL 19^[
:cn[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for 'errorformat'.  This will fail if the quickfix feature was disabled.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 50 lines, 801 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:cn
gR. TAB-SPACE POINTER^[
:clast
:cprev
:cprev
:wincmd w
:let a=w:quickfix_title
:wincmd p
lgR^R=a^M^[
:w! test.out" Write contents of this file
:qa!
ENDTEST

start of errorfile
"Xtestfile", line 4.12: 1506-045 (S) Undeclared identifier fd_set.
"Xtestfile", line 6 col 19; this is an error
gcc -c -DHAVE_CONFIsing-prototypes -I/usr/X11R6/include  version.c
Xtestfile:9: parse error before `asd'
make: *** [vim] Error 1
in file "Xtestfile" linenr 10: there is an error

2 returned
"Xtestfile", line 11 col 1; this is an error[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Also test a BOM is ignored.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1c:cn
gR. TAB-SPACE POINTER^[
:clast
:cprev
:cprev
:wincmd w
:let a=w:quickfix_title
:wincmd p
lgR^R=a^M^[
:w! test.out" Write contents of this file
:qa!
ENDTEST

start of errorfile
"Xtestfile", line 4.12: 1506-045 (S) Undeclared identifier fd_set.
<feff>"Xtestfile", line 6 col 19; this is an error
gcc -c -DHAVE_CONFIsing-prototypes -I/usr/X11R6/include  version.c
Xtestfile:9: parse error before `asd'
make: *** [vim] Error 1
in file "Xtestfile" linenr 10: there is an error

2 returned
"Xtestfile", line 11 col 1; this is an error[?25h[?0c[?25l[?1c:[?25h[?0c7/start of errorfile/,/end of errorfile/w! Xerrorfile1
[?25l[?1c"Xerrorfile1" [New File] 83 lines, 1974 characters written[?25h[?0c[?25l[?1c:[?25h[?0c7/start of errorfile/,/end of errorfile/-1w! Xerrorfile2
[?25l[?1c"Xerrorfile2" [New File] 82 lines, 1957 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/start of testfile/,/end of testfile/w! Xtestfile
[?25l[?1c"Xtestfile" [New File] 23 lines, 937 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset efm+==%f=\\,\ line\ %l%*\\D%v%*[^\ ]\ %m
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset efm^=%AError\ in\ \"%f\"\ at\ line\ %l:,%Z%p^,%C%m
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccf Xerrorfile2
[?25l[?1c"Xtestfile" 23 lines, 937 characters

(50 of 70): 1506-045 (S) Undeclared identifier fd_set.

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cclast
[?25l[?1c(70 of 70): What is the title of the quickfix window?

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccopen
[?25l[?1cxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 12xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 13xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 14
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 15
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 16
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 17
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 18
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 19
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 20
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 21        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 22
Xtestfile                                                                       Xtestfile|18 col 14|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 18Xtestfile|19 col 15|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 19Xtestfile|20 col 16|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 20|| || Does anyone know what is the problem and how to correction it?
Xtestfile|21 col 9| What is the title of the quickfix window?
Xtestfile|22 col 9| What is the title of the quickfix window?                   [Quickfix List]                                                                 [?25h[?0c[?25l[?1c

:[?25h[?0clet a=w:quickfix_title
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1cXtestfile                                                                       [Quickfix List]                                                                 [?25h[?0cx[?25l[?1c=[?25h[?0ca
[?25l[?1c:cf Xerrorfile2[+][?25h[?0c[?25l[?1c
end of testfile[?25h[?0c[?25l[?1c:[?25h[?0ccf Xerrorfile1
[?25l[?1cstart of testfile 2 3 4 5 6 7 8 9xxxxxxxxxxxxxxx10
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 11

|| :qa!|| ENDTEST
|| || start of errorfile
Xtestfile|4 col 12| 1506-045 (S) Undeclared identifier fd_set.                  Xtestfile|6 col 19| this is an error
|| gcc -c -DHAVE_CONFIsing-prototypes -I/usr/X11R6/include  version.c
Xtestfile|9| parse error before `asd'|| make: *** [vim] Error 1Xtestfile|10| there is an error[?25h[?0c[?25l[?1cA[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|4 col 12| 1506-045 (S) Undeclared identifier fd_set.Xtestfile|6 col 19| this is an error                                            [?25h[?0c[?25l[?1cLINE 6, COL 19[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|6 col 19| this is an errorXtestfile|9| parse error before `asd'                                           [?25h[?0c[?25l[?1cNO COLUMN SPECIFIED[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|9| parse error before `asd'Xtestfile|10| there is an error                                                 [?25h[?0c[?25l[?1cAGAIN NO COLUMN[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|10| there is an error||
|| 2 returned
Xtestfile|11 col 1| this is an error                                            [?25h[?0c[?25l[?1c
COL 1[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 12[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1c
Xtestfile|11 col 1| this is an errorXtestfile|12 col 2| this is another error                                       [?25h[?0c[?25l[?1cCOL 2[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 13[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 14
Xtestfile|12 col 2| this is another errorXtestfile|14 col 10| this is an error in column 10                              [?25h[?0c[?25l[?1cCOL 10[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 15[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1c
Xtestfile|14 col 10| this is an error in column 10Xtestfile|15 col 10| this is another error, but in vcol 10 this time            [?25h[?0c[?25l[?1cVCOL 10[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 16[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1c
Xtestfile|15 col 10| this is another error, but in vcol 10 this timeXtestfile|16| yet another problem                                               [?25h[?0c[?25l[?1cI[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 17[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|16| yet another problemXtestfile|17 col 13|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 17                                                                               [?25h[?0c[?25l[?1c. SPACE POINTER[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 18[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|17 col 13|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 17Xtestfile|18 col 14|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 18                                                                               [?25h[?0c[?25l[?1c. DOT POINTER[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 19[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|18 col 14|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 18Xtestfile|19 col 15|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 19                                                                               [?25h[?0c[?25l[?1c. DASH POINTER[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 20[?25h[?0c[?25l[?1c:[?25h[?0ccn
[?25l[?1cXtestfile|19 col 15|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 19Xtestfile|20 col 16|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 20                                                                               [?25h[?0c[?25l[?1c. TAB-SPACE POINTER[?25h[?0c[?25l[?1c
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 21[?25h[?0c[?25l[?1c:[?25h[?0cclast
[?25l[?1cXtestfile|20 col 16|  x should be a dot xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    line 20||
|| Does anyone know what is the problem and how to correction it?
Xtestfile|21 col 9| What is the title of the quickfix window?
Xtestfile|22 col 9| What is the title of the quickfix window?
|| end of errorfile                                                             ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccprev
[?25l[?1c
xxxxxxxx:cf Xerrorfile2xxxxxxx    line 22Xtestfile|22 col 9| What is the title of the quickfix window?                   || end of errorfile[?25h[?0c[?25l[?1c:[?25h[?0ccprev
[?25l[?1cXtestfile|21 col 9| What is the title of the quickfix window?                   Xtestfile|22 col 9| What is the title of the quickfix window?[?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1cXtestfile [+]                                                                   [Quickfix List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet a=w:quickfix_title
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1cXtestfile [+]                                                                   [Quickfix List]                                                                 [?25h[?0cx[?25l[?1c=[?25h[?0ca
[?25l[?1c:cf Xerrorfile1[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out             " Write contents of this file
[?25l[?1c"test.out" [New File] 23 lines, 942 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test11.failed test.ok test.out X* viminfo
cp test11.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test11.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test11.in" 84 lines, 3366 charactersTests for autocommands:
- FileWritePrewriting a compressed file
- FileReadPostreading a compressed file
- BufNewFilereading a file template
- BufReadPredecompressing the file to be read
- FilterReadPresubstituting characters in the temp file
- FilterReadPostsubstituting characters after filtering
- FileReadPreset options for decompression
- FileReadPostdecompress the file

Note: This test is skipped if "gzip" is not available.
$GZIP is made empty, "-v" would cause trouble.
Use a FileChangedShell autocommand to avoid a prompt for "Xtestfile.gz" being
modified outside of Vim (noticed on Solaris).

STARTTEST
:so small.vim
:" drop out when there is no gzip program
:if !executable("gzip")
: e! test.ok
: w! test.out
: qa!
:endif[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for autocommands:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 48 lines, 2298 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:au! FileReadPre    *.gz   exe 'silent !gzip -d ' . shellescape(expand("<afile>"))
:au  FileReadPre    *.gz   call rename(expand("<afile>:r"), expand("<afile>"))
:au! FileReadPost   *.gz   '[,']s/l/L/
:$r Xtestfile.gz" Read compressed file
:w" write it, after filtering
:au!" remove all autocommands
:e" Edit test.out again
:set nobin ff&   " use the default fileformat for writing
:w
:qa!
ENDTEST

startstart
start of testfile
line 2  Abcdefghijklmnopqrstuvwxyz
line 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 4  Abcdefghijklmnopqrstuvwxyz
line 5  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 6  Abcdefghijklmnopqrstuvwxyz
line 7  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 8  Abcdefghijklmnopqrstuvwxyz
line 9  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" drop out when there is no gzip program
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !executable("gzip")
[?25l[?1c
:  [?25h[?0c: e! test.ok

[?25l[?1c:  [?25h[?0c: w! test.out

[?25l[?1c:  [?25h[?0c: qa!

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:au! FileReadPre    *.gz   exe 'silent !gzip -d ' . shellescape(expand("<afile>"))
:au  FileReadPre    *.gz   call rename(expand("<afile>:r"), expand("<afile>"))
:au! FileReadPost   *.gz   '[,']s/l/L/[?25h[?0c[?25l[?1c:[?25h[?0clet $GZIP = ""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FileChangedShell * echo "caught FileChangedShell"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset bin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FileWritePre    *.gz   '[,']!gzip
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FileWritePost   *.gz   undo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start of testfile/,/^end of testfile/w! Xtestfile.gz
[?25l[?1c[?25h[?0c[?25l[?1c11 lines filtered
"Xtestfile.gz" [New File][Incomplete last line] 1 line, 111 characters written

10 more lines; before #1  0 seconds ago

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cau FileReadPost    *.gz   '[,']!gzip -d
[?25l[?1c:au  FileReadPre    *.gz   call rename(expand("<afile>:r"), expand("<afile>"))
:au! FileReadPost   *.gz   '[,']s/l/L/
:$r Xtestfile.gz" Read compressed file
:w                           " write it, after filtering
:au!             " remove all autocommandse" Edit test.out againset nobin ff&   " use the default fileformat for writing
:wqa!ENDTESTstartstart
start of testfile
line 2  Abcdefghijklmnopqrstuvwxyz
line 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx45678910
end of testfile[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtestfile.gz                " Read and decompress the testfile
[?25l[?1c"Xtestfile.gz" [Incomplete last line] 1 line, 111 characters
[?25h[?0c[?25l[?1cstart of test.c
/*
 * Here is a new .c file
 */
end of test.c
start of testfile[?25h[?0c[?25l[?1c
:[?25h[?0c?startstart?,$w! test.out      " Write contents of this file
[?25l[?1c"test.out" [New File] 29 lines, 788 characters written[?25h[?0c[?25l[?1c:[?25h[?0cau BufNewFile      *.c    read Xtest.c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start of test.c/+1,/^end of test.c/-1w! Xtest.c
[?25l[?1csearch hit BOTTOM, continuing at TOP"Xtest.c" [New File] 3 lines, 32 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! foo.c                       " Will load Xtest.c
[?25l[?1c"foo.c" [New File]
"Xtest.c" 3 lines, 32 characters

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cau FileAppendPre   *.out  '[,']s/new/NEW/
[?25l[?1c/*
 * Here is a new .c file
 */
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cau FileAppendPost  *.out  !cat Xtest.c >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw>>test.out                    " Append it to the output file
[?25l[?1c"test.out" 4 lines, 33 characters appended

:!cat Xtest.c >>test.out

[?25h[?0c
Press ENTER or type command to continue[?25l[?1c:[?25h[?0cau! FileAppendPre
[?25l[?1c/*
 * Here is a NEW .c file
 */
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" setup autocommands to decompress before reading and re-compress afterwards
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPre      *.gz   exe '!gzip -d ' . shellescape(expand("<afile>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPre      *.gz   call rename(expand("<afile>:r"), expand("<afile>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPost     *.gz   call rename(expand("<afile>"), expand("<afile>:r"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadPost     *.gz   exe '!gzip ' . shellescape(expand("<afile>:r"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile.gz                " Edit compressed file
[?25l[?1c:!gzip -d 'Xtestfile.gz'

[?25h[?0c[?25l[?1c"Xtestfile.gz""Xtestfile.gz" 11 lines, 357 characters:!gzip 'Xtestfile'

[?25h[?0c[?25l[?1ccaught FileChangedShell
Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw>>test.out                    " Append it to the output file
[?25l[?1c"test.out" 11 lines, 357 characters appended

:!cat Xtest.c >>test.out

[?25h[?0c
Press ENTER or type command to continue[?25l[?1c:[?25h[?0cset shelltemp                  " need temp files here
[?25l[?1cstart of testfile
line 2  Abcdefghijklmnopqrstuvwxyz
line 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 4  Abcdefghijklmnopqrstuvwxyz
line 5  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 6  Abcdefghijklmnopqrstuvwxyz
line 7  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 8  Abcdefghijklmnopqrstuvwxyz
line 9  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 10 Abcdefghijklmnopqrstuvwxyz
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cau FilterReadPre   *.out  call rename(expand("<afile>"), expand("<afile>") . "

.t")
[?25l[?1cstart of testfile[?25h[?0c[?25l[?1c:[?25h[?0cau FilterReadPre   *.out  exe 'silent !sed s/e/E/ ' . shellescape(expand("<afi

le>")) . ".t >" . shellescape(expand("<afile>"))
[?25l[?1cstart of testfile[?25h[?0c[?25l[?1c:[?25h[?0cau FilterReadPre   *.out  exe 'silent !rm ' . shellescape(expand("<afile>")) .

'.t'
[?25l[?1cstart of testfile[?25h[?0c[?25l[?1c:[?25h[?0cau FilterReadPost  *.out  '[,']s/x/X/g
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out                    " Edit the output file
[?25l[?1c"test.out" 50 lines, 1242 charactersstarstart of testfile2  Abcdefghijklmnopqrstuvwxyz3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx4  Abcdefghijklmnopqrstuvwxyz5  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx6  Abcdefghijklmnopqrstuvwxyz7  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx8  Abcdefghijklmnopqrstuvwxyz9  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
line 10 Abcdefghijklmnopqrstuvwxyz
end of testfilestart of test.c/* * Here is a new .c file */end of test.cstart of testfileline 2  Abcdefghijklmnopqrstuvwxyzline 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxline 4  Abcdefghijklmnopqrstuvwxyzline 5  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0c23,$!cat
[?25l[?1c[?25h[?0c[?25l[?1c218 substitutions on 15 lines

28 lines filtered

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c23,$s/\r$//                 " remove CR for when sed adds them
[?25l[?1cE486: Pattern not found: \r$
Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cau! FileReadPre    *.gz   exe 'silent !gzip -d ' . shellescape(expand("<afile>

"))
[?25l[?1cstartstart
start of testfile
line 2  Abcdefghijklmnopqrstuvwxyz
line 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxE 5  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX[?25h[?0c[?25l[?1c
:[?25h[?0cau  FileReadPre    *.gz   call rename(expand("<afile>:r"), expand("<afile>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau! FileReadPost   *.gz   '[,']s/l/L/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$r Xtestfile.gz             " Read compressed file
[?25l[?1c[?25h[?0c[?25l[?1c"Xtestfile.gz" 11 lines, 357 characters

11 substitutions on 11 lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw                           " write it, after filtering
[?25l[?1c"test.out"61 lines, 1599 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cau!             " remove all autocommands
[?25l[?1cE216: No such group or event: " remove all autocommands

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ce               " Edit test.out again
[?25l[?1c"test.out"61 lines, 1599 charactersstartstart
start of testfile
line 2  Abcdefghijklmnopqrstuvwxyz
line 3  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"test.out" 61 lines, 1599 characters[?25h[?0c[?25l[?1c:[?25h[?0cset nobin ff&   " use the default fileformat for writing
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 61 lines, 1599 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test12.failed test.ok test.out X* viminfo
cp test12.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test12.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test12.in" 52 lines, 1199 charactersTests for 'directory' option.
- ".", in same dir as file
- "./dir", in directory relative to file
- "dir", in directory relative to current dir

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
:set dir=.,~
:/start of testfile/,/end of testfile/w! Xtest1
:" do an ls of the current dir to find the swap file (should not be there)
:if has("unix")
:  !ls .X*.swp >test.out
:else
:  r !ls X*.swp >test.out
:endif
:!echo first line >>test.out
:e Xtest1
:if has("unix")
:" Do an ls of the current dir to find the swap file, remove the leading dot
:" to make the result the same for all systems.
:  r!ls .X*.swp
:  s/\.*X/X/[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for 'directory' option.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 40 lines, 965 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:!mkdir Xtest2
:set dir=./Xtest2,.,~
:e Xtest1
:!ls X*.swp >>test.out
:!echo under under >>test.out
:!ls Xtest2 >>test.out
:!echo under Xtest1.swp >>test.out
:!mkdir Xtest.je
:/start of testfile/,/end of testfile/w! Xtest2/Xtest3
:set dir=Xtest.je,~
:e Xtest2/Xtest3
:swap
:!ls Xtest2 >>test.out
:!echo under Xtest3 >>test.out
:!ls Xtest.je >>test.out
:!echo under Xtest3.swp >>test.out
:qa!
ENDTEST

start of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset dir=.,~
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/start of testfile/,/end of testfile/w! Xtest1
[?25l[?1c"Xtest1" [New] 4L, 70C written[?25h[?0c[?25l[?1c:[?25h[?0c" do an ls of the current dir to find the swap file (should not be there)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("unix")
[?25l[?1c
:  [?25h[?0c:  !ls .X*.swp >test.out

[?25l[?1c:!ls .X*.swp >test.out[?25h[?0c
ls: cannot access .X*.swp: No such file or directory

shell returned 2

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  r !ls X*.swp >test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:!mkdir Xtest2
:set dir=./Xtest2,.,~
:e Xtest1
:!ls X*.swp >>test.out
:!echo under under >>test.out
:!ls Xtest2 >>test.out
:!echo under Xtest1.swp >>test.out
:!mkdir Xtest.je
:/start of testfile/,/end of testfile/w! Xtest2/Xtest3
:set dir=Xtest.je,~
:e Xtest2/Xtest3
:swap
:!ls Xtest2 >>test.out
:!echo under Xtest3 >>test.out
:!ls Xtest.je >>test.out
:!echo under Xtest3.swp >>test.out
:qa!
ENDTEST

start of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile[?25h[?0c[?25l[?1c:[?25h[?0c!echo first line >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0ce Xtest1
[?25l[?1c"Xtest1" 4L, 70Cstart of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xtest1" 4L, 70C[?25h[?0c[?25l[?1c:[?25h[?0cif has("unix")
[?25l[?1c
:  [?25h[?0c:" Do an ls of the current dir to find the swap file, remove the leading dot

[?25l[?1c:  [?25h[?0c:" to make the result the same for all systems.

[?25l[?1c:  [?25h[?0c:  r!ls .X*.swp

[?25l[?1c:  [?25h[?0c:  s/\.*X/X/

[?25l[?1c:  [?25h[?0c:  .w >>test.out
[?25l[?1c"test.out" 1L, 11C appended

:  [?25h[?0c:  undo

[?25l[?1c1 line less; before #1  0 seconds ago

:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  !ls X*.swp >>test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cstart of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c!echo under Xtest1.swp >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir Xtest2
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0cset dir=./Xtest2,.,~
[?25l[?1cstart of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtest1
[?25l[?1c"Xtest1" 4L, 70C[?25h[?0c[?25l[?1c:[?25h[?0c!ls X*.swp >>test.out
[?25l[?1c[?25h[?0c
ls: cannot access X*.swp: No such file or directory

shell returned 2


Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!echo under under >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!ls Xtest2 >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!echo under Xtest1.swp >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir Xtest.je
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c/start of testfile/,/end of testfile/w! Xtest2/Xtest3
[?25l[?1csearch hit BOTTOM, continuing at TOP"Xtest2/Xtest3" [New] 4L, 70C written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset dir=Xtest.je,~
[?25l[?1cstart of testfile
line 2 Abcdefghij
line 3 Abcdefghij
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtest2/Xtest3
[?25l[?1c"Xtest2/Xtest3" 4L, 70C[?25h[?0c[?25l[?1c:[?25h[?0cswap
[?25l[?1cXtest.je/Xtest3.swp[?25h[?0c[?25l[?1c:[?25h[?0c!ls Xtest2 >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!echo under Xtest3 >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!ls Xtest.je >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!echo under Xtest3.swp >>test.out
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test13.failed test.ok test.out X* viminfo
cp test13.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test13.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test13.in" 64 lines, 1197 charactersTests for autocommands on :close command

Write three files and open them, each in a window.
Then go to next window, with autocommand that deletes the previous one.
Do this twice, writing the file.

Also test deleting the buffer on a Unload event.  If this goes wrong there
will be the ATTENTION prompt.

Also test changing buffers in a BufDel autocommand.  If this goes wrong there
are ml_line errors and/or a Crash.

STARTTEST
:so small.vim
:/^start of testfile/,/^end of testfile/w! Xtestje1
:/^start of testfile/,/^end of testfile/w! Xtestje2
:/^start of testfile/,/^end of testfile/w! Xtestje3
:e Xtestje1
otestje1^[
:w
:sp Xtestje2
otestje2^[
:w[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for autocommands on :close command[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 44 lines, 695 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e
:w >>test.out
:au!
:only
:e Xtestje1
:bwipe Xtestje2 Xtestje3 test.out test13.in
:au BufWipeout Xtestje1 buf Xtestje1
:bwipe
:w >>test.out
:only
:help
:wincmd w
:1quit
:$put ='Final line'
:$w >>test.out
:qa!
ENDTEST

start of testfilecontentscontentscontents
end of testfile[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start of testfile/,/^end of testfile/w! Xtestje1
[?25l[?1c"Xtestje1" [New File] 5 lines, 64 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^start of testfile/,/^end of testfile/w! Xtestje2
[?25l[?1c"Xtestje2" [New File] 5 lines, 64 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^start of testfile/,/^end of testfile/w! Xtestje3
[?25l[?1c"Xtestje3" [New File] 5 lines, 64 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestje1
[?25l[?1c"Xtestje1" 5 lines, 64 charactersstart of testfile
        contents
        contents
        contents
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1ctestje1[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestje1" 6 lines, 72 characters written[?25h[?0c[?25l[?1c:[?25h[?0csp Xtestje2
[?25l[?1c"Xtestje2" 5 lines, 64 characters        contents


end of testfile~                                                                               Xtestje2                                                                        testje1        contents        contents        contentsend of testfileXtestje1                                                                        [?25h[?0c[?25l[?1ctestje2[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestje2" 6 lines, 72 characters written   [?25h[?0c[?25l[?1c:[?25h[?0csp Xtestje3
[?25l[?1c"Xtestje3" 5 lines, 64 charactersstart of testfilecontentscontentscontents
end of testfile
~                                                                               ~                                                                               Xtestje3                                                                        testje2contentscontentscontents
end of testfile
~                                                                               ~                                                                               Xtestje2                                                                        testje1contentscontentscontents
end of testfile
~                                                                               Xtestje1                                                                        [?25h[?0c[?25l[?1ctestje3[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestje3" 6 lines, 72 characters written   [?25h[?0cXtestje3                                                                        Xtestje2                                                                        [?25l[?1c:[?25h[?0cau WinLeave Xtestje2 bwipe
[?25l[?1c[?25h[?0c[?25l[?1cstart of testfile
testje3contentscontentscontents
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtestje3                                                                        testje1contentscontentscontents
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtestje1                                                                        [?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 6 lines, 72 characters written[?25h[?0c[?25l[?1c:[?25h[?0cau WinLeave Xtestje1 bwipe Xtestje3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c1~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 6 lines, 72 characters appended[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestje1
[?25l[?1c"Xtestje1" 6 lines, 72 characters[?25h[?0c[?25l[?1c:[?25h[?0cbwipe Xtestje2 Xtestje3 test.out
[?25l[?1cE94: No matching buffer for Xtestje2 Xtestje3 test.out[?25h[?0c[?25l[?1c:[?25h[?0cau!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau! BufUnload Xtestje1 bwipe
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestje3
[?25l[?1c"Xtestje3" 6 lines, 72 characters3[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 6 lines, 72 characters appended[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestje2
[?25l[?1c"Xtestje2" 6 lines, 72 characters2[?25h[?0c[?25l[?1c:[?25h[?0csp Xtestje1
[?25l[?1c"Xtestje1" 6 lines, 72 characters1Xtestje1                                                                        start of testfiletestje2        contents        contents        contentsend of testfileXtestje2                                                                        [?25h[?0c[?25l[?1c:[?25h[?0ce
[?25l[?1cE143: Autocommands unexpectedly deleted new buffer Xtestje122"Xtestje2" line 1 of 6 --16%-- col 1[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 6 lines, 72 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cau!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtestje1
[?25l[?1c"Xtestje1" 6 lines, 72 characters1[?25h[?0c[?25l[?1c:[?25h[?0cbwipe Xtestje2 Xtestje3 test.out test13.in
[?25l[?1c4 buffers wiped out[?25h[?0c[?25l[?1c:[?25h[?0cau BufWipeout Xtestje1 buf Xtestje1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipe
[?25l[?1c"Xtestje1" 6 lines, 72 characters[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 6 lines, 72 characters appended[?25h[?0c[?25l[?1c:[?25h[?0conly
[?25l[?1cAlready only one window[?25h[?0c[?25l[?1c:[?25h[?0chelp
[?25l[?1c"help.txt" [readonly] 223 lines, 8341 characters*help.txt*      For Vim version 7.4.  Last change: 2015 Jun 21        VIM - main help file        kMove around:  Use the cursor keys, or "h" to go left,h   l
                    "j" to go down, "k" to go up, "l" to go right.j
Close this window:  Use ":q<Enter>".   Get out of Vim:  Use ":qa!<Enter>" (careful, all changes are lost!).Jump to a subject:  Position the cursor on a tag (e.g. |bars|) and hit CTRL-].   With the mouse:  ":set mouse=a" to enable the mouse (in xterm or GUI).                    Double-click the left mouse button on a tag, e.g. |bars|.        Jump back:  Type CTRL-T or CTRL-O (repeat to go further back).Get specific help:  It is possible to go directly to whatever you want help                    on, by giving an argument to the |:help| command.                    It is possible to further specify the context:                                                        *help-context*                          WHAT                  PREPEND    EXAMPLE                             Normal mode command      (nothing)   :help xhelp.txt [Help][RO]                                                             start of testfileXtestje1                                                                        [?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1chelp.txt [Help][RO]                                                             Xtestje1                                                                        [?25h[?0c[?25l[?1c:[?25h[?0c1quit
[?25l[?1cstart of testfile
testje1contentscontentscontents
end of testfile
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$put ='Final line'
[?25l[?1cFinal line[?25h[?0c[?25l[?1c:[?25h[?0c$w >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test14.failed test.ok test.out X* viminfo
cp test14.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test14.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test14.in" 99 lines, 1606 charactersTests for "vaBiB", end could be wrong.
Also test ":s/pat/sub/" with different ~s in sub.
Also test for ^Vxff and ^Vo123 in Insert mode.
Also test "[m", "]m", "[M" and "]M"
Also test search()

STARTTEST
:so small.vim
/Start cursor here
vaBiBD:?Bug?,/Piece/-2w! test.out
/^- Bug
:s/u/~u~/
:s/i/~u~/
:s/o/~~~/
:.w >>test.out
:if has("ebcdic")
: let tt = "o\<C-V>193\<C-V>xc2\<C-V>o303 \<C-V>90a\<C-V>xfg\<C-V>o578\<Esc>"
:else
: let tt = "o\<C-V>65\<C-V>x42\<C-V>o103 \<C-V>33a\<C-V>xfg\<C-V>o78\<Esc>"
:endif
:exe "normal " . tt
:unlet tt
:.w >>test.out[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for "vaBiB", end could be wrong.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 56 lines, 1141 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =@/
/^substitute
:keeppatterns s/asdf/xyz/
:$put =@/
/^substitute
Y:$put =@0
/bar /e
:$put =@0
-:keeppatterns /xyz
0dn:/^search()/,$w >>test.out
:qa!
ENDTEST

- Bug in "vPPPP" on this text (Webb):{cmd;{cmd;    /* <-- Start cursor here */{}}}[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cStart cursor here
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c{ 
                        cmd;    /* <-- Start cursor here */ 
                        { 
                        } 
                [?25h[?0c[?25l[?1c                cmd; 
                }[?25h[?0c[?25l[?1c


6 fewer lines        }Piece of Java{        tt m1 {                t1;e1[?25h[?0c[?25l[?1c:[?25h[?0c?Bug?,/Piece/-2w! test.out
[?25l[?1c"test.out" [New File] 3 lines, 44 characters written[?25h[?0c[?25l[?1c/[?25h[?0c^- Bug
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0cs/u/~u~/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cs/i/~u~/
[?25l[?1cuuun "vPPPP" on this text (Webb):
[?25h[?0c[?25l[?1c:[?25h[?0cs/o/~~~/
[?25l[?1cuuuuuuuuun this text (Webb):
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 48 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cif has("ebcdic")
[?25l[?1c
:  [?25h[?0c: let tt = "o\<C-V>193\<C-V>xc2\<C-V>o303 \<C-V>90a\<C-V>xfg\<C-V>o578\<Esc>

"
[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let tt = "o\<C-V>65\<C-V>x42\<C-V>o103 \<C-V>33a\<C-V>xfg\<C-V>o78\<Esc>"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:$put =@/
/^substitute
:keeppatterns s/asdf/xyz/
:$put =@/
/^substitute[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal " . tt
[?25l[?1cABC !a^Og^G8[?25h[?0c[?25l[?1c:[?25h[?0cunlet tt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset vb
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Piece
[?25l[?1c[?25h[?0c[?25l[?1c{A[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1ctt m2 {[?25h[?0c[?25l[?1c{B[?25h[?0c[?25l[?1c
:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1ct2;} e2tt m3 {[?25h[?0c[?25l[?1c{C[?25h[?0c[?25l[?1c
:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c{DC[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c{EA[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c{F[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 3 characters appended[?25h[?0c[?25l[?1c}G e1[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c
[?25l[?1cif (x){t3;}} e3[?25h[?0c[?25l[?1c}H e3[?25h[?0c[?25l[?1c
:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c
}[?25h[?0c[?5h[?5l[?25l[?1c}I[?25h[?0c[?25l[?1c
:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 3 characters appended[?25h[?0c[?25l[?1c}JH e3[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c}K e2[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c{LF[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^foobar
[?25l[?1cfoobar[?25h[?0c[?25l[?1c
:[?25h[?0clet startline = line('.')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall search('foobar', 'c')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), line('.') - startline)
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0ccall search('^$', 'c')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), line('.') - startline)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall search('^$', 'bc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), line('.') - startline)
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0ctwo
[?25l[?1csubstitute foo asdf

one two[?25h[?0c[?25l[?1c
:[?25h[?0ccall search('.', 'c')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), getline('.')[col('.') - 1:])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^substitute
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0cs/foo/bar/
[?25l[?1cbar
[?25h[?0c[?25l[?1c:[?25h[?0c$put =@/
[?25l[?1csearch()
0
1
1
two
foo[?25h[?0c[?25l[?1c
/[?25h[?0c^substitute
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0ckeeppatterns s/asdf/xyz/
[?25l[?1cxyz[?25h[?0c[?25l[?1c:[?25h[?0c$put =@/
[?25l[?1c
^substitute[?25h[?0c[?25l[?1c
/[?25h[?0c^substitute
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0c$put =@0
[?25l[?1c
substitute bar xyz[?25h[?0c[?25l[?1c
/[?25h[?0cbar /e
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =@0
[?25l[?1c
substitute bar xyz[?25h[?0c[?25l[?1c

:[?25h[?0ckeeppatterns /xyz
[?25l[?1c[?25h[?0c[?25l[?1c
/bar /exyz[?25h[?0c[?25l[?1c:[?25h[?0c/^search()/,$w >>test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 9 lines, 58 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test15.failed test.ok test.out X* viminfo
cp test15.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test15.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test15.in" 136 lines, 2246 charactersTests for :right on text with embedded TAB.
Also test formatting a paragraph.
Also test undo after ":%s" and formatting.

STARTTEST
:so small.vim
:set tw=65

:/^\s*test for :left/,/^\s*test for :center/ left
:/^\s*test for :center/,/^\s*test for :right/ center
:/^\s*test for :right/,/^xxx/-1 right
:set fo+=tcroql tw=72
/xxxxxxxx$
0gq6kk
:set nocp viminfo+=nviminfo
:" undo/redo here to make the next undo only work on the following changes
u^R
:map gg :.,.+2s/^/x/<CR>kk:set tw=3<CR>gqq
/^aa
ggu
:?test for :left?,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :right on text with embedded TAB.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 401 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tw=65
[?25l[?1c[?25h[?0c[?25l[?1c
test for :left[?25h[?0c[?25l[?1c
:[?25h[?0c/^\s*test for :left/,/^\s*test for :center/ left
[?25l[?1csearch hit BOTTOM, continuing at TOPtest for :left[?25h[?0c[?25l[?1c:[?25h[?0c/^\s*test for :center/,/^\s*test for :right/ center
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^\s*test for :right/,/^xxx/-1 right
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fo+=tcroql tw=72
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cxxxxxxxx$
[?25l[?1casxa;ofaaxxxoikeasdfaqweraxxxoikeaaxxxoikeyfaaxxxoikeydfaaxxxoikeysdfaaxxxoikeyasdfaaxxxoikeyxasdfaaxxxoikeyasxxdfaaxxxoikeyasxa;ofaaxxxoikeyasdfaqweraxxxoikey

xxxxx xx xxxxxx
xxxxxxx xxxxxxxxx xxx xxxx xxxxx xxxxx xxx xx
xxxxxxxxxxxxxxxxxx xxxxx xxxx, xxxx xxxx xxxx xxxx xxx xx xx
xx xxxxxxx. xxxx xxxx.

> xx xx, xxxx xxxx xxx xxxx xxx xxxxx xxx xxx xxxxxxx xxx xxxxx
> xxxxxx xxxxxxx: xxxx xxxxxxx, xx xxxxxx xxxx xxxxxxxxxx

aa aa aa aa
bb bb bb bb
cc cc cc cc[?25h[?0c
[?25l[?1c
 xx xxxxxx xxxxxxx xxxxxxxxx xxx xxxx xxxxx xxxxx xxx xxxx xxxxxxx.
xxxx xxxx.xxxxxxx: xxxx xxxxxxx, xx xxxx xxxxxxx~                                                                               [?25h[?0c
[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" undo/redo here to make the next undo only work on the following changes
[?25l[?1c[?25h[?0c[?25l[?1c1 more line; before #1  0 seconds ago0gq6kk
:set nocp viminfo+=nviminfo
:" undo/redo here to make the next undo only work on the following changes
u^R
:map gg :.,.+2s/^/x/<CR>kk:set tw=3<CR>gqq
/^aa
ggu
:?test for :left?,$w! test.out
:qa!
ENDTESTtest for :leftaafaadfaasdfaaasdfaaxasdfaa
asxxdfaatest for :centeraafaafd asdf[?25h[?0c[?25l[?1c1 line less; after #1  0 seconds agotest for :lefta      afa    adfa      asdfaaasdfa           axasdfaa                test for :center  aa  fa        afd asdf[?25h[?0c
[?25l[?1c:[?25h[?0cmap gg :.,.+2s/^/x/<CR>kk:set tw=3<CR>gqq
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^aa
[?25l[?1casxxdfaaxxxoikeasxa;ofaaxxxoikeasdfaqweraxxxoikeaaxxxoikeyfaaxxxoikeydfaaxxxoikeysdfaaxxxoikeyasdfaaxxxoikeyxasdfaaxxxoikeyasxxdfaaxxxoikeyasxa;ofaaxxxoikeyasdfaqweraxxxoikey

xxxxx xx xxxxxx xxxxxxx xxxxxxxxx xxx xxxx xxxxx xxxxx xxx xx
xxxxxxxxxxxxxxxxxx xxxxx xxxx, xxxx xxxx xxxx xxxx xxx xx xx xx xxxxxxx.
xxxx xxxx.

> xx xx, xxxx xxxx xxx xxxx xxx xxxxx xxx xxx xxxxxxx xxx xxxxx xxxxxx
> xxxxxxx: xxxx xxxxxxx, xx xxxxxx xxxx xxxxxxxxxx

aa aa aa aa
bb bb bb bb
cc cc cc cc[?25h[?0c[?25l[?1c


:.,.+2s/^/x/
3 substitutions on 3 linesxaa aa aa aa
xbb bb bb bb
xcc cc cc cc
[?25h[?0c[?25l[?1c:set tw=3
[?25h[?0c[?25l[?1c


3 more lines
aaaaaa3 more lines[?25h[?0c[?25l[?1c
3 fewer lines; before #2  0 seconds agoaa aa aa aa
bb bb bb bb
cc cc cc cc
~                                                                               [?25h[?0c
[?25l[?1c:[?25h[?0c?test for :left?,$w! test.out
[?25l[?1c"test.out"[New] 111L, 2304C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test17.failed test.ok test.out X* viminfo
cp test17.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test17.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test17.in" 141 lines, 2647 charactersTests for:
- "gf" on ${VAR},
- ":checkpath!" with various 'include' settings.

STARTTEST
:so small.vim
:if has("ebcdic")
: set isfname=@,240-249,/,.,-,_,+,,,$,:,~,{,}
:else
: set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}
:endif
:function! DeleteDirectory(dir)
: if has("win16") || has("win32") || has("win64") || has("dos16") || has("dos32")
:  exec "silent !rmdir /Q /S " . a:dir
: else
:  exec "silent !rm -rf " . a:dir
: endif
:endfun
:if has("unix")
:let $CDIR = "."
/CDIR
:else[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 33 lines, 771 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/TDIR
:endif
:" Dummy writing for making that sure gf doesn't fail even if the current
:" file is modified. It can be occurred when executing the following command
:" directly on Windows without fixing the 'fileformat':
:"  > nmake -f Make_dos.mak test17.out
:w! test.out
gf
:set ff=unix
:w! test.out
:brewind
ENDTEST${CDIR}/test17a.in$TDIR/test17a.in

STARTTEST
:" check for 'include' without \zs or \ze
:lang C
:call delete("./Xbase.a")
:call DeleteDirectory("Xdir1")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("ebcdic")
[?25l[?1c
:  [?25h[?0c: set isfname=@,240-249,/,.,-,_,+,,,$,:,~,{,}

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: set isfname=@,48-57,/,.,-,_,+,,,$,:,~,{,}

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c/TDIR
:endif
:" Dummy writing for making that sure gf doesn't fail even if the current
:" file is modified. It can be occurred when executing the following command[?25h[?0c[?25l[?1c:[?25h[?0cfunction! DeleteDirectory(dir)
[?25l[?1c
:  [?25h[?0c: if has("win16") || has("win32") || has("win64") || has("dos16") || has("do

s32")

[?25l[?1c:    [?25h[?0c:  exec "silent !rmdir /Q /S " . a:dir

[?25l[?1c:    [?25h[?0c: else

[?25l[?1c:    [?25h[?0c:  exec "silent !rm -rf " . a:dir

[?25l[?1c:    [?25h[?0c: endif

[?25l[?1c:  [?25h[?0c:endfun
[?25l[?1c/TDIR
:endif
:" Dummy writing for making that sure gf doesn't fail even if the current
:" file is modified. It can be occurred when executing the following command
:" directly on Windows without fixing the 'fileformat':
:"  > nmake -f Make_dos.mak test17.out
:w! test.out[?25h[?0c[?25l[?1c:[?25h[?0cif has("unix")
[?25l[?1c
:  [?25h[?0c:let $CDIR = "."

[?25l[?1c:  [?25h[?0c/CDIR

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:if has("amiga")

[?25l[?1c:    [?25h[?0c:let $TDIR = "/testdir"

[?25l[?1c:    [?25h[?0c:else

[?25l[?1c:    [?25h[?0c:let $TDIR = "."

[?25l[?1c:    [?25h[?0c:endif

[?25l[?1c:  [?25h[?0c/TDIR

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c/TDIR
:endif
:" Dummy writing for making that sure gf doesn't fail even if the current
:" file is modified. It can be occurred when executing the following command
:" directly on Windows without fixing the 'fileformat':
:"  > nmake -f Make_dos.mak test17.out
:w! test.out
gf
:set ff=unix
:w! test.out[?25h[?0c[?25l[?1c:[?25h[?0c" Dummy writing for making that sure gf doesn't fail even if the current
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" file is modified. It can be occurred when executing the following command
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" directly on Windows without fixing the 'fileformat':
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"  > nmake -f Make_dos.mak test17.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 141 lines, 2647 characters written[?25h[?0c[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/./test17a.in" 3 lines, 88

characters

Press ENTER or type command to continue[?25h[?0c[?25l[?1cThis file is just to test "gf" in test 17.
The contents is not important.
Just testing!~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ff=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" 3 lines, 88 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test17.in" 141 lines, 2647 characters:" Dummy writing for making that sure gf doesn't fail even if the current
:" file is modified. It can be occurred when executing the following command
:" directly on Windows without fixing the 'fileformat':
:"  > nmake -f Make_dos.mak test17.out:w! test.outgf:set ff=unix:w! test.out:brewindENDTEST        ${CDIR}/test17a.in        $TDIR/test17a.inSTARTTEST:" check for 'include' without \zs or \ze:lang C:call delete("./Xbase.a"):call DeleteDirectory("Xdir1"):!mkdir Xdir1:!mkdir "Xdir1/dir2":e! Xdir1/dir2/foo.ai#include   "bar.a"^[:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 23 lines, 399 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e Xdir1/dir2/baz.a
i#include"foo.a"^[:
:w
:e Xbase.a
:set path=Xdir1/dir2
i#include    <foo.a>^[:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
ENDTEST

STARTTEST
:" check for 'include' with \zs and \ze
:call delete("./Xbase.b")
:call DeleteDirectory("Xdir1")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"
:let &include='^\s*%inc\s*/\zs[^/]\+\ze'
:function! DotsToSlashes()
:  return substitute(v:fname, '\.', '/', 'g') . '.b'
:endfunction[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" check for 'include' without \zs or \ze
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall delete("./Xbase.a")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DeleteDirectory("Xdir1")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c!mkdir Xdir1
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir "Xdir1/dir2"
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0ce! Xdir1/dir2/foo.a
[?25l[?1c"Xdir1/dir2/foo.a" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c#include   "bar.a"[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/foo.a" [New File] 1 line, 19 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/bar.a
[?25l[?1c"Xdir1/dir2/bar.a" [New File][?25h[?0c[?25l[?1c#include      "baz.a"[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/bar.a" [New File] 1 line, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/baz.a
[?25l[?1c"Xdir1/dir2/baz.a" [New File][?25h[?0c[?25l[?1c#include"foo.a"[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/baz.a" [New File] 1 line, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xbase.a
[?25l[?1c"Xbase.a" [New File][?25h[?0c[?25l[?1c:[?25h[?0cset path=Xdir1/dir2
[?25l[?1c[?25h[?0c[?25l[?1c#include    <foo.a>[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xbase.a" [New File] 1 line, 20 characters written[?25h[?0c[?25l[?1c:[?25h[?0credir! >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccheckpath!
[?25l[?1c--- Included files in path ---

Xdir1/dir2/foo.a

Xdir1/dir2/foo.a -->

  Xdir1/dir2/bar.a

  Xdir1/dir2/bar.a -->

    Xdir1/dir2/baz.a

    Xdir1/dir2/baz.a -->

      "foo.a"  (Already listed)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c#include    <foo.a>
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test17.in" 141 lines, 2647 charactersi#include            "foo.a"^[:
:w:e Xbase.a:set path=Xdir1/dir2i#include    <foo.a>^[::w:redir! >>test.out:checkpath!:redir END:brewindENDTESTSTARTTEST:" check for 'include' with \zs and \ze:call delete("./Xbase.b"):call DeleteDirectory("Xdir1"):!mkdir Xdir1:!mkdir "Xdir1/dir2":let &include='^\s*%inc\s*/\zs[^/]\+\ze':function! DotsToSlashes():  return substitute(v:fname, '\.', '/', 'g') . '.b':endfunction:let &includeexpr='DotsToSlashes()'[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 27 lines, 535 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e Xdir1/dir2/baz.b
i%inc/foo/^[:
:w
:e Xbase.b
:set path=Xdir1/dir2
i%inc    /foo/^[:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
ENDTEST

STARTTEST
:" check for 'include' with \zs and no \ze
:call delete("./Xbase.c")
:call DeleteDirectory("Xdir1")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"
:let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
:function! StripNewlineChar()
:  if v:fname =~ '\n$'
:    return v:fname[:-2][?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" check for 'include' with \zs and \ze
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall delete("./Xbase.b")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DeleteDirectory("Xdir1")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c!mkdir Xdir1
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir "Xdir1/dir2"
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0clet &include='^\s*%inc\s*/\zs[^/]\+\ze'
[?25l[?1c:e Xdir1/dir2/baz.b
i%inc/foo/^[:
:w
:e Xbase.b
:set path=Xdir1/dir2
i%inc    /foo/^[:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
ENDTEST

STARTTEST
:" check for 'include' with \zs and no \ze
:call delete("./Xbase.c")
:call DeleteDirectory("Xdir1")
:!mkdir Xdir1
:!mkdir "Xdir1/dir2"
:let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
:function! StripNewlineChar()
:  if v:fname =~ '\n$'
:    return v:fname[:-2][?25h[?0c[?25l[?1c:[?25h[?0cfunction! DotsToSlashes()
[?25l[?1c
:  [?25h[?0c:  return substitute(v:fname, '\.', '/', 'g') . '.b'

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:e Xdir1/dir2/baz.b
i%inc/foo/^[:[?25h[?0c[?25l[?1c:[?25h[?0clet &includeexpr='DotsToSlashes()'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xdir1/dir2/foo.b
[?25l[?1c"Xdir1/dir2/foo.b" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c%inc   /bar/[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/foo.b" [New File] 1 line, 13 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/bar.b
[?25l[?1c"Xdir1/dir2/bar.b" [New File][?25h[?0c[?25l[?1c%inc      /baz/[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/bar.b" [New File] 1 line, 16 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/baz.b
[?25l[?1c"Xdir1/dir2/baz.b" [New File][?25h[?0c[?25l[?1c%inc/foo/[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/baz.b" [New File] 1 line, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xbase.b
[?25l[?1c"Xbase.b" [New File][?25h[?0c[?25l[?1c:[?25h[?0cset path=Xdir1/dir2
[?25l[?1c[?25h[?0c[?25l[?1c%inc    /foo/[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xbase.b" [New File] 1 line, 14 characters written[?25h[?0c[?25l[?1c:[?25h[?0credir! >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccheckpath!
[?25l[?1c--- Included files in path ---

Xdir1/dir2/foo.b

Xdir1/dir2/foo.b -->

  Xdir1/dir2/bar.b

  Xdir1/dir2/bar.b -->

    Xdir1/dir2/baz.b

    Xdir1/dir2/baz.b -->

      foo  (Already listed)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c%inc    /foo/
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test17.in" 141 lines, 2647 charactersi%inc            /foo/^[:
:w:e Xbase.b:set path=Xdir1/dir2i%inc    /foo/^[::w:redir! >>test.out:checkpath!:redir END:brewindENDTESTSTARTTEST:" check for 'include' with \zs and no \ze:call delete("./Xbase.c"):call DeleteDirectory("Xdir1"):!mkdir Xdir1:!mkdir "Xdir1/dir2":let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze':function! StripNewlineChar():  if v:fname =~ '\n$':    return v:fname[:-2]:  endif[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 39 lines, 748 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:w
:e Xdir1/dir2/baz.c
i%incfoo.c^[:
:w
:e Xdir1/dir2/FALSE.c
i%incfoo.c^[:
:w
:e Xbase.c
:set path=Xdir1/dir2
i%inc    FALSE.c foo.c^[:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
:" change "\" to "/" for Windows and fix 'fileformat'
:e test.out
:%s#\\#/#g
:set ff&
:w
:q
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" check for 'include' with \zs and no \ze
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall delete("./Xbase.c")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DeleteDirectory("Xdir1")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c!mkdir Xdir1
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir "Xdir1/dir2"
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0clet &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
[?25l[?1c:w
:e Xdir1/dir2/baz.c
i%incfoo.c^[:
:w
:e Xdir1/dir2/FALSE.c
i%incfoo.c^[:
:w
:e Xbase.c
:set path=Xdir1/dir2
i%inc    FALSE.c foo.c^[:
:w
:redir! >>test.out
:checkpath!
:redir END
:brewind
:" change "\" to "/" for Windows and fix 'fileformat'
:e test.out
:%s#\\#/#g
:set ff&
:w
:q
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0cfunction! StripNewlineChar()
[?25l[?1c
:  [?25h[?0c:  if v:fname =~ '\n$'

[?25l[?1c:    [?25h[?0c:    return v:fname[:-2]

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:  return v:fname

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:w
:e Xdir1/dir2/baz.c
i%incfoo.c^[:
:w
:e Xdir1/dir2/FALSE.c[?25h[?0c[?25l[?1c
:[?25h[?0clet &includeexpr='StripNewlineChar()'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xdir1/dir2/foo.c
[?25l[?1c"Xdir1/dir2/foo.c" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c%inc   bar.c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/foo.c" [New File] 1 line, 13 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/bar.c
[?25l[?1c"Xdir1/dir2/bar.c" [New File][?25h[?0c[?25l[?1c%inc      baz.c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/bar.c" [New File] 1 line, 16 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/baz.c
[?25l[?1c"Xdir1/dir2/baz.c" [New File][?25h[?0c[?25l[?1c%incfoo.c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/baz.c" [New File] 1 line, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xdir1/dir2/FALSE.c
[?25l[?1c"Xdir1/dir2/FALSE.c" [New File][?25h[?0c[?25l[?1c%incfoo.c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xdir1/dir2/FALSE.c" [New File] 1 line, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce Xbase.c
[?25l[?1c"Xbase.c" [New File][?25h[?0c[?25l[?1c:[?25h[?0cset path=Xdir1/dir2
[?25l[?1c[?25h[?0c[?25l[?1c%inc    FALSE.c foo.c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xbase.c" [New File] 1 line, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0credir! >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccheckpath!
[?25l[?1c--- Included files in path ---

Xdir1/dir2/foo.c

Xdir1/dir2/foo.c -->

  Xdir1/dir2/bar.c

  Xdir1/dir2/bar.c -->

    Xdir1/dir2/baz.c

    Xdir1/dir2/baz.c -->

      foo.c  (Already listed)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c%inc    FALSE.c foo.c
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test17.in" 141 lines, 2647 characters:w:e Xdir1/dir2/baz.ci%inc            foo.c^[::w:e Xdir1/dir2/FALSE.ci%inc            foo.c^[::w:e Xbase.c:set path=Xdir1/dir2i%inc    FALSE.c foo.c^[::w:redir! >>test.out:checkpath!:redir END:brewind:" change "\" to "/" for Windows and fix 'fileformat':e test.out:%s#\\#/#g:set ff&:w:qENDTEST[?25h[?0c[?25l[?1c:[?25h[?0c" change "\" to "/" for Windows and fix 'fileformat'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce test.out
[?25l[?1c"test.out" 33 lines, 655 charactersThis file is just to test "gf" in test 17.
The contents is not important.
Just testing!--- Included files in path ---
Xdir1/dir2/foo.a
Xdir1/dir2/foo.a -->
  Xdir1/dir2/bar.a  Xdir1/dir2/bar.a -->    Xdir1/dir2/baz.a
    Xdir1/dir2/baz.a -->
      "foo.a"  (Already listed)--- Included files in path ---Xdir1/dir2/foo.b
Xdir1/dir2/foo.b -->
  Xdir1/dir2/bar.b
  Xdir1/dir2/bar.b -->
    Xdir1/dir2/baz.b
    Xdir1/dir2/baz.b -->foo  (Already listed)[?25h[?0c[?25l[?1c:[?25h[?0c%s#\\#/#g
[?25l[?1cE486: Pattern not found: \\[?25h[?0c[?25l[?1c:[?25h[?0cset ff&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 33 lines, 655 characters written[?25h[?0c[?25l[?1c:[?25h[?0cq
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test18.failed test.ok test.out X* viminfo
cp test18.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test18.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test18.in" 16 lines, 213 charactersTests for not doing smart indenting when it isn't set.

STARTTEST
:so small.vim
:set nocin nosi ai
/some
2cc#test^[
:?start?,$w! test.out
:qa!
ENDTEST

start textsome test texttest text
test texttest text
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for not doing smart indenting when it isn't set.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 6 lines, 76 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocin nosi ai
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0csome
[?25l[?1c[?25h[?0c[?25l[?1c
#test~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c?start?,$w! test.out
[?25l[?1c"test.out" [New File] 4 lines, 41 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test19.failed test.ok test.out X* viminfo
cp test19.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test19.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test19.in" 33 lines, 692 charactersTests for "r<Tab>" with 'smarttab' and 'expandtab' set/not set.
Also test that dv_ works correctly

STARTTEST
:so small.vim
:set smarttab expandtab ts=8 sw=4
:" make sure that backspace works, no matter what termcap is used
:set t_kD=^Vx7f t_kb=^Vx08
/some
r:set noexpandtab
/other
r
:" Test replacing with Tabs and then backspacing to undo it
0wR^H^H^H^[
:" Test replacing with Tabs
0wR^[
:" Test that copyindent works with expandtab set
:set expandtab smartindent copyindent ts=8 sw=8 sts=8
o{
x^[:set nosol
/Second line/
fwdv_:?^start?,$w! test.out
:qa![?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for "r<Tab>" with 'smarttab' and 'expandtab' set/not set.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 19 lines, 447 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset smarttab expandtab ts=8 sw=4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" make sure that backspace works, no matter what termcap is used
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset t_kD=^^? t_kb=^^H
[?25l[?1cSTARTTEST
:so small.vim
:set smarttab expandtab ts=8 sw=4
:" make sure that backspace works, no matter what termcap is used
:set t_kD=^Vx7f t_kb=^Vx08
/some
r:set noexpandtab
/other
r
:" Test replacing with Tabs and then backspacing to undo it
0wR^H^H^H^[
:" Test replacing with Tabs
0wR^[
:" Test that copyindent works with expandtab set
:set expandtab smartindent copyindent ts=8 sw=8 sts=8
o{
x^[:set nosol
/Second line/
fwdv_:?^start?,$w! test.out
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
/[?25h[?0csome
[?25l[?1cstart textsome test text[?25h[?0c[?25l[?1c    ome test text[?25h[?0c[?25l[?1c
:[?25h[?0cset noexpandtab
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cother
[?25l[?1ctest textother test text[?25h[?0c[?25l[?1c    ther test text[?25h[?0c[?25l[?1c
a cde[?25h[?0c[?25l[?1c
:[?25h[?0c" Test replacing with Tabs and then backspacing to undo it
[?25l[?1c[?25h[?0c
    [?25l[?1c[?25h[?0c[?25l[?1c
f ghi[?25h[?0c[?25l[?1c
:[?25h[?0c" Test replacing with Tabs
[?25l[?1c[?25h[?0c
    [?25l[?1c     hi[?25h[?0c[?25l[?1c
test text[?25h[?0c[?25l[?1c
:[?25h[?0c" Test that copyindent works with expandtab set
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset expandtab smartindent copyindent ts=8 sw=8 sts=8
[?25l[?1c[?25h[?0c[?25l[?1c{x[?25h[?0c[?25l[?1c
:[?25h[?0cset nosol
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cSecond line/
[?25l[?1c
Second line beginning with whitespace[?25h[?0c[?25l[?1c
  with whitespace[?25h[?0c[?25l[?1c
:[?25h[?0c?^start?,$w! test.out
[?25l[?1c"test.out" [New File] 10 lines, 121 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test20.failed test.ok test.out X* viminfo
cp test20.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test20.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test20.in" 28 lines, 398 charactersTests Blockwise Visual when there are TABs before the text.
First test for undo working properly when executing commands from a register.
Also test this in an empty buffer.

STARTTEST
:so tiny.vim
G0"ay$k@au
:new
@auY:quit!
GP
/start here$
"by$^Vjjlld
/456$
^Vjj"bP
:/56$/,$-1w! test.out
:qa!
ENDTEST

123456
234567
345678

test text test tex start here[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests Blockwise Visual when there are TABs before the text.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 11 lines, 107 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso tiny.vim
[?25l[?1c[?25h[?0c[?25l[?1csome texttest text
test text

Ox^[jAy^[kdd[?25h[?0c[?25l[?1cx[?25h[?0c
[?25l[?1cy[?25h[?0c[?25l[?1cy
Ox^[jAy^[kdd[?25h[?0c[?25l[?1c

2 changes; before #1  0 seconds ago[?25h[?0c
[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       123456
234567
345678test text test tex start here
                some texttest
test textOx^[jAy^[kdd
test20.in                                                                       [?25h[?0c[?25l[?1cx[+][?25h[?0c
[?25l[?1cy[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c1 line less; before #1  0 seconds ago   [?25h[?0c[?25l[?1c:[?25h[?0cquit!
[?25l[?1c:so tiny.vim
G0"ay$k@au:new@auY:quit!GP/start here$"by$^Vjjlld/456$^Vjj"bP:/56$/,$-1w! test.out:qa!ENDTEST123456
234567
345678test text test tex start heresome
         test text
test textOx^[jAy^[kdd[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
Ox^[jAy^[kdd[?25h[?0c[?25l[?1c
/[?25h[?0cstart here$
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cs[?25h[?0c[?25l[?1ce[?25h[?0c[?25l[?1ct t[?25h[?0c[?25l[?1cat [?25h[?0c[?25l[?1crt hereextex[?25h[?0c[?25l[?1c/[?25h[?0c456$
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c4
234[?25h[?0c[?25l[?1c5
345[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cstart here56
234start here67
345start here78[?25h[?0c[?25l[?1c:[?25h[?0c/56$/,$-1w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 10 lines, 106 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test21.failed test.ok test.out X* viminfo
cp test21.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test21.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test21.in" 19 lines, 297 charactersTests for [ CTRL-I with a count and CTRL-W CTRL-I with a count

STARTTEST
:so small.vim
/start
6[      :.w! test.out
?start here
6^W     :.w >>test.out
:qa!
ENDTEST

#include test21.in

/* test text test tex start heresome texttest textstart OK if found this linestart found wrong line
test text
~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for [ CTRL-I with a count and CTRL-W CTRL-I with a count[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 6 lines, 73 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cstart
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 30 characters written[?25h[?0c[?25l[?1c?[?25h[?0cstart here
[?25l[?1c[?25h[?0c[?25l[?1c6^W     :.w >>test.ou:qa!
ENDTEST#include test21.in/* test text test tex start here
                some text
    test text
       start OK if found this linestart found wrong line
test21.in                                                                       6^W     :.w >>test.out
:qa!ENDTEST#include test21.in/* test text test tex start here
                some text                test text                start OK if found this linetest21.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 30 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test22.failed test.ok test.out X* viminfo
cp test22.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test22.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test22.in" 13 lines, 197 charactersTests for file with some lines ending in CTRL-M, some not^M
^M
STARTTEST
:set ta tx
:e!
:$-3,$w! test.out
:qa!
ENDTEST

this lines ends in a^M
this one doesn't
this one does^M
and the last one doesn't
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for file with some lines ending in CTRL-M, some not^M[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 4 lines, 38 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset ta tx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce!
[?25l[?1c"test22.in" 13 lines, 197 characters[?25h[?0c[?25l[?1c:[?25h[?0c$-3,$w! test.out
[?25l[?1c"test.out" [New File] 4 lines, 79 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test23.failed test.ok test.out X* viminfo
cp test23.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test23.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test23.in" 15 lines, 282 charactersTests for complicated + argument to :edit command

STARTTEST
:$-1w! Xfile1
:$w! Xfile2
:edit +1|s/|/PIPE/|w Xfile1| e Xfile2|1 | s/\//SLASH/|w
:w! test.out
:e Xfile1
:w >> test.out
:qa!
ENDTEST

The result should be in Xfile1: "fooPIPEbar", in Xfile2: "fooSLASHbar"
foo|bar
foo/bar
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for complicated + argument to :edit command[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 7 lines, 125 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c$-1w! Xfile1
[?25l[?1c"Xfile1" [New File] 1 line, 8 characters written[?25h[?0c[?25l[?1c:[?25h[?0c$w! Xfile2
[?25l[?1c"Xfile2" [New File] 1 line, 8 characters written[?25h[?0c[?25l[?1c:[?25h[?0cedit +1|s/|/PIPE/|w Xfile1| e Xfile2|1 | s/\//SLASH/|w
[?25l[?1c"Xfile1" 1 line, 8 characters

foo|bar

"Xfile1" 1 line, 11 characters written

"Xfile2" 1 line, 8 characters

foo/bar

"Xfile2" 1 line, 12 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 1 line, 12 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ce Xfile1
[?25l[?1c"Xfile1" 1 line, 11 charactersfooPIPEbar
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xfile1" 1 line, 11 characters[?25h[?0c[?25l[?1c:[?25h[?0cw >> test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test24.failed test.ok test.out X* viminfo
cp test24.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test24.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test24.in" 89 lines, 1301 charactersTests for regexp with backslash and other special characters inside []
Also test backslash for hex/octal numbered character.

STARTTEST
:set nocompatible viminfo+=nviminfo
/[\x]
x/[\t\]]
x/[]y]
x/[\]]
x/[y^]
x/[$y]
x/[\x61]
x/[\x60-\x64]
xj0/[\x785]
x/[\o143]
x/[\o140-\o144]
x/[\o417]
x/\%x42
x/\%o103
x/[\x00]
x
:s/[\x00-\x10]//g[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for regexp with backslash and other special characters inside [][?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 51 lines, 519 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:s/^\(\h\w*\%(->\|\.\)\=\)\+=/YY/

:s/aaa/xyz/

:s/~/bcd/

:s/~\+/BB/
:"
:?start?,$w! test.out
:qa!
ENDTEST

start
test \text test text
test    text test text
test text ]test text
test ]text test text
test text te^st text
test te$xt test text
test taext test text  x61
test tbext test text  x60-x64
test 5text test text  x78 5[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c[\x]
[?25l[?1c[?25h[?0c[?25l[?1ctext test text[?25h[?0c[?25l[?1c/[?25h[?0c[\t\]]
[?25l[?1c[?25h[?0c[?25l[?1ctext test tex[?25h[?0c[?25l[?1c/[?25h[?0c[]y]
[?25l[?1c[?25h[?0c[?25l[?1ctest text[?25h[?0c[?25l[?1c/[?25h[?0c[\]]
[?25l[?1c[?25h[?0c[?25l[?1ctext test text[?25h[?0c[?25l[?1c/[?25h[?0c[y^]
[?25l[?1c[?25h[?0c[?25l[?1cst text[?25h[?0c[?25l[?1c/[?25h[?0c[$y]
[?25l[?1c[?25h[?0c[?25l[?1cxt test text[?25h[?0c[?25l[?1c/[?25h[?0c[\x61]
[?25l[?1c[?25h[?0c[?25l[?1cext test text  x61[?25h[?0c[?25l[?1c/[?25h[?0c[\x60-\x64]
[?25l[?1c[?25h[?0c[?25l[?1cext test text  x60-x64[?25h[?0c
[?25l[?1c/[?25h[?0c[\x785]
[?25l[?1c[?25h[?0c[?25l[?1ctext test text  x78 5[?25h[?0c[?25l[?1c/[?25h[?0c[\o143]
[?25l[?1c
testc text test text  o143[?25h[?0c[?25l[?1c text test text  o143[?25h[?0c[?25l[?1c
/[?25h[?0c[\o140-\o144]
[?25l[?1c
tesdt text test text  o140-o144[?25h[?0c[?25l[?1ct text test text  o140-o14[?25h[?0c[?25l[?1c
/[?25h[?0c[\o417]
[?25l[?1c
test7 text test text  o41 7[?25h[?0c[?25l[?1c text test text  o41 7[?25h[?0c[?25l[?1c
/[?25h[?0c\%x42
[?25l[?1c
test text tBest text  \%x42[?25h[?0c[?25l[?1cest text  \%x42[?25h[?0c[?25l[?1c
/[?25h[?0c\%o103
[?25l[?1c
test text teCst text  \%o103[?25h[?0c[?25l[?1cst text  \%o103[?25h[?0c[?25l[?1c
/[?25h[?0c[\x00]
[?25l[?1c
test text ^@test text  [\x00][?25h[?0c[?25l[?1ctest text  [\x00][?25h[?0c[?25l[?1c
test te^@xt t^Dest t^Pext  [\x00-\x10][?25h[?0c[?25l[?1c
:[?25h[?0cs/[\x00-\x10]//g
[?25l[?1c3 substitutions on 1 linext test text  [\x00-\x10][?25h[?0c[?25l[?1c
test \xyztext test text  [\x-z][?25h[?0c[?25l[?1c
:[?25h[?0cs/[\x-z]\+//
[?25l[?1ctext test text  [\x-z][?25h[?0c[?25l[?1c
test text tev\uyst text  [\u-z][?25h[?0c[?25l[?1c
:[?25h[?0cs/[\u-z]\{2,}//
[?25l[?1cst text  [\u-z][?25h[?0c[?25l[?1c
xx aaaaa xx a[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a\)\+//
[?25l[?1c xx [?25h[?0c[?25l[?1c
xx aaaaa xx a[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a*\)\+//
[?25l[?1c[?25h[?0c[?25l[?1c
xx aaaaa xx a[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a*\)*//
[?25l[?1c[?25h[?0c[?25l[?1c
xx aaaaa xx[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a\)\{2,3}/A/
[?25l[?1cAaa xx[?25h[?0c[?25l[?1c
xx aaaaa xx[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a\)\{-2,3}/A/
[?25l[?1cAaaa x[?25h[?0c[?25l[?1c
xx aaa12aa xx[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(a\)*\(12\)\@>/A/
[?25l[?1cAaa xx[?25h[?0c[?25l[?1c
xx foobar xbar xx[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(foo\)\@<!bar/A/
[?25l[?1cA xx[?25h[?0c[?25l[?1c
xx an file xx[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(an\_s\+\)\@<=file/A/
[?25l[?1cA xx[?25h[?0c[?25l[?1c
x= 9;[?25h[?0c[?25l[?1c
:[?25h[?0cs/^\(\h\w*\%(->\|\.\)\=\)\+=/XX/
[?25l[?1cXX
[?25h[?0c[?25l[?1c
hh= 77;[?25h[?0c[?25l[?1c
:[?25h[?0cs/^\(\h\w*\%(->\|\.\)\=\)\+=/YY/
[?25l[?1cYY 77;[?25h[?0c[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0cs/aaa/xyz/
[?25l[?1cxyz
 [?25h[?0c[?25l[?1c
xyz[?25h[?0c[?25l[?1c
:[?25h[?0cs/~/bcd/
[?25l[?1cbcd
 [?25h[?0c[?25l[?1c
bcdbcdbcd[?25h[?0c[?25l[?1c
:[?25h[?0cs/~\+/BB/
[?25l[?1cBB[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c?start?,$w! test.out
[?25l[?1c"test.out" [New] 32L, 586C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test25.failed test.ok test.out X* viminfo
cp test25.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test25.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test25.in" 31 lines, 840 charactersTest for jumping to a tag with 'hidden' set, with symbolic link in path of tag.
This only works for Unix, because of the symbolic link.

STARTTEST
:so small.vim
:set hidden
:" Create a link from test25.dir to the current directory.
:!rm -f test25.dir
:!ln -s . test25.dir
:" Create tags.text, with the current directory name inserted.
/tags line
:r !pwd
d$/test
hP:.w! tags.test
:" Try jumping to a tag in the current file, but with a path that contains a
:" symbolic link.  When wrong, this will give the ATTENTION message.  The next
:" space will then be eaten by hit-return, instead of moving the cursor to 'd'.
:set tags=tags.test
G^] x:.w! test.out
:!rm -f test25.dir tags.test
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for jumping to a tag with 'hidden' set, with symbolic link in path of tag.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 540 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Create a link from test25.dir to the current directory.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c!rm -f test25.dir
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!ln -s . test25.dir
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c" Create tags.text, with the current directory name inserted.
[?25l[?1cTest for jumping to a tag with 'hidden' set, with symbolic link in path of tag.
This only works for Unix, because of the symbolic link.

STARTTEST
:so small.vim
:set hidden
:" Create a link from test25.dir to the current directory.
:!rm -f test25.dir
:!ln -s . test25.dir
:" Create tags.text, with the current directory name inserted.
/tags line
:r !pwd
d$/test
hP:.w! tags.test
:" Try jumping to a tag in the current file, but with a path that contains a
:" symbolic link.  When wrong, this will give the ATTENTION message.  The next
:" space will then be eaten by hit-return, instead of moving the cursor to 'd'.
:set tags=tags.test
G^] x:.w! test.out
:!rm -f test25.dir tags.test
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
/[?25h[?0ctags line
[?25l[?1chis only works for Unix, because of the symbolic link.STARTTEST
:so small.vim
:set hidden" Create a link from test25.dir to the current directory.
:!rm -f test25.dirln -s . test25.dir
:" Create tags.text, with the current directory name inserted.
/tags line:r !pwdd$/test
hP:.w! tags.test
:" Try jumping to a tag in the current file, but with a path that contains a
:" symbolic link.  When wrong, this will give the ATTENTION message.  The next
:" space will then be eaten by hit-return, instead of moving the cursor to 'd'.
:set tags=tags.testG^] x:.w! test.out:!rm -f test25.dir tags.test
:qa!ENDTESTtags line:
[?25h[?0c[?25l[?1c:[?25h[?0cr !pwd
[?25l[?1c[?25h[?0c[?25l[?1cSTARTTEST
:so small.vim
:set hidden
:" Create a link from test25.dir to the current directory.
:!rm -f test25.dir
:!ln -s . test25.dir
:" Create tags.text, with the current directory name inserted.
/tags line
:r !pwd
d$/test
hP:.w! tags.test
:" Try jumping to a tag in the current file, but with a path that contains a
:" symbolic link.  When wrong, this will give the ATTENTION message.  The next
:" space will then be eaten by hit-return, instead of moving the cursor to 'd'.
:set tags=tags.test
G^] x:.w! test.out
:!rm -f test25.dir tags.test
:qa!
ENDTEST

tags line:
/«PKGBUILDDIR»/src/vim-basic/testdir
[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
/[?25h[?0ctest
[?25l[?1c
SECTION_OFF     /test25.dir/test25.in   /^#define  SECTION_OFF  3$/[?25h[?0c[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/test25.dir/t@                                                                               
SECTION_OFF     /«PKGBUILDDIR»/src/vim-basic/testdir/test25.dir/test25.in/^#define  SECTION_OFF  3$/[?25h[?0c[?25l[?1c

:[?25h[?0c.w! tags.test
[?25l[?1c"tags.test" [New File] 1 line, 113 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" Try jumping to a tag in the current file, but with a path that contains a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" symbolic link.  When wrong, this will give the ATTENTION message.  The next
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" space will then be eaten by hit-return, instead of moving the cursor to 'd'.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tags=tags.test
[?25l[?1c[?25h[?0c[?25l[?1c/*tx.c*/
#define  SECTION_OFF  3
#define  NUM_SECTIONS 3

SECTION_OFF[?25h[?0c#[?25l[?1cefine  SECTION_OFF  3[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 23 characters written[?25h[?0c[?25l[?1c:[?25h[?0c!rm -f test25.dir tags.test
[?25l[?1c[?25h[?0c
[No write since last change]


Press ENTER or type command to continue[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test26.failed test.ok test.out X* viminfo
cp test26.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test26.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test26.in" 44 lines, 750 charactersTest for :execute, :while and :if

STARTTEST
:so small.vim
mt:let i = 0
:while i < 12
:  let i = i + 1
:  if has("ebcdic")
:    execute "normal o" . i . "\047"
:  else
:    execute "normal o" . i . "\033"
:  endif
:  if i % 2
:    normal Ax^V^[
:    if i == 9
:      break
:    endif
:    if i == 5
:      continue
:    else
:      let j = 9
:      while j > 0
:if has("ebcdic")[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for :execute, :while and :if[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 39 lines, 696 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:      let j = 9
:      while j > 0
:if has("ebcdic")
:execute "normal" j . "a" . j . "\x27"
:else
:execute "normal" j . "a" . j . "\x1b"
:endif
:let j = j - 1
:      endwhile
:    endif
:  endif
:  if i == 9
:    if has("ebcdic")
:      execute "normal Az\047"
:    else
:      execute "normal Az\033"
:    endif
:  endif
:endwhile
:unlet i j
:'t,$w! test.out
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet i = 0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwhile i < 12
[?25l[?1c
:  [?25h[?0c:  let i = i + 1

[?25l[?1c:  [?25h[?0c:  if has("ebcdic")

[?25l[?1c:    [?25h[?0c:    execute "normal o" . i . "\047"

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    execute "normal o" . i . "\033"

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:  if i % 2

[?25l[?1c:    [?25h[?0c:    normal Ax^^[

[?25l[?1c:    [?25h[?0c:    if i == 9

[?25l[?1c:      [?25h[?0c:      break

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    if i == 5

[?25l[?1c:      [?25h[?0c:      continue

[?25l[?1c:      [?25h[?0c:    else

[?25l[?1c:      [?25h[?0c:      let j = 9

[?25l[?1c:      [?25h[?0c:      while j > 0

[?25l[?1c:[?25h[?0c:        if has("ebcdic")

[?25l[?1c:[?25h[?0c:          execute "normal" j . "a" . j . "\x27"

[?25l[?1c:[?25h[?0c:        else

[?25l[?1c:[?25h[?0c:          execute "normal" j . "a" . j . "\x1b"

[?25l[?1c:[?25h[?0c:        endif

[?25l[?1c:[?25h[?0c:        let j = j - 1

[?25l[?1c:[?25h[?0c:      endwhile

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:  if i == 9

[?25l[?1c:    [?25h[?0c:    if has("ebcdic")

[?25l[?1c:      [?25h[?0c:      execute "normal Az\047"

[?25l[?1c:      [?25h[?0c:    else

[?25l[?1c:      [?25h[?0c:      execute "normal Az\033"

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endwhile
[?25l[?1c:  endif
:  if i == 9
:    if has("ebcdic")
:      execute "normal Az\047"
:    else
:      execute "normal Az\033"
:    endif
:  endif
:endwhile
:unlet i j
:'t,$w! test.out
:qa!
ENDTEST

1x999999999888888887777777666666555554444333221
2
3x999999999888888887777777666666555554444333221
4
5x
6
7x999999999888888887777777666666555554444333221
8
9x[?25h[?0c[?25l[?1c
:[?25h[?0cunlet i j
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c't,$w! test.out
[?25l[?1c"test.out" [New File] 10 lines, 159 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test27.failed test.ok test.out X* viminfo
cp test27.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test27.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test27.in" 20 lines, 270 charactersTest for expanding file names

STARTTEST
:!mkdir Xdir1
:!mkdir Xdir2
:!mkdir Xdir3
:cd Xdir3
:!mkdir Xdir4
:cd ..
:w Xdir1/file
:w Xdir3/Xdir4/file
:n Xdir?/*/file
Go^R%^[:.w! test.out
:n! Xdir?/*/nofile
Go^R%^[:.w >>test.out
:e! xx
:!rm -rf Xdir1 Xdir2 Xdir3
:qa!
ENDTEST

~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for expanding file names[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 15 lines, 220 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c!mkdir Xdir1
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir Xdir2
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0c!mkdir Xdir3
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0ccd Xdir3
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xdir3

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c!mkdir Xdir4
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw Xdir1/file
[?25l[?1c"Xdir1/file" [New File] 20 lines, 270 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw Xdir3/Xdir4/file
[?25l[?1c"Xdir3/Xdir4/file" [New File] 20 lines, 270 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cn Xdir?/*/file
[?25l[?1c"Xdir3/Xdir4/file" 20 lines, 270 charactersTest for expanding file names

STARTTEST
:!mkdir Xdir1
:!mkdir Xdir2
:!mkdir Xdir3
:cd Xdir3
:!mkdir Xdir4
:cd ..
:w Xdir1/file
:w Xdir3/Xdir4/file
:n Xdir?/*/file
Go^R%^[:.w! test.out
:n! Xdir?/*/nofile
Go^R%^[:.w >>test.out
:e! xx
:!rm -rf Xdir1 Xdir2 Xdir3
:qa!
ENDTEST

~                                                                               ~                                                                               ~                                                                               "Xdir3/Xdir4/file" 20 lines, 270 characters[?25h[?0c[?25l[?1c
Xdir3/Xdir4/file[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 17 characters written[?25h[?0c[?25l[?1c:[?25h[?0cn! Xdir?/*/nofile
[?25l[?1c"Xdir?/*/nofile" [New DIRECTORY]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c
Xdir?/*/nofile[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 15 characters appended[?25h[?0c[?25l[?1c:[?25h[?0ce! xx
[?25l[?1c"xx" [New File]~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c!rm -rf Xdir1 Xdir2 Xdir3
[?25l[?1c[?25h[?0c

Press ENTER or type command to continue[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test28.failed test.ok test.out X* viminfo
cp test28.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test28.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test28.in" 23 lines, 364 charactersTest for sourcing a file with CTRL-V's at the end of the line

STARTTEST
:/firstline/+1,/lastline/-1w! Xtestfile
:so Xtestfile
Gmm__1^[^[__2^[__3^[^[__4^[__5^[:'m,$s/^@/0/g
:'m,$w! test.out
:qa!
ENDTEST

firstline
map __1 afirst
map __2 asecond
map __3 athird
map __4 afourth
map __5 afifth
map __1 asd^V
map __2 asd^V^V
map __3 asd^V^V
map __4 asd^V^V^V
map __5 asd^V^V^V
lastline[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for sourcing a file with CTRL-V's at the end of the line[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 5 lines, 114 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c/firstline/+1,/lastline/-1w! Xtestfile
[?25l[?1c"Xtestfile" [New File] 10 lines, 148 characters written[?25h[?0c[?25l[?1c:[?25h[?0cso Xtestfile
[?25l[?1c[?25h[?0c[?25l[?1c
sd
map __2 asd^[[?25h[?0c[?25l[?1csecond[?25h[?0cd  [?25l[?1csd^[[?25h[?0c^[  [?25l[?1csd^@map __5 asd^@[?25h[?0c[?25l[?1cfifth[?25h[?0c[?25l[?1c
:[?25h[?0c'm,$s/^@/0/g
[?25l[?1c0map __5 asd0fifth[?25h[?0c[?25l[?1c:[?25h[?0c'm,$w! test.out
[?25l[?1c"test.out" [New File] 2 lines, 45 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test29.failed test.ok test.out X* viminfo
cp test29.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test29.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test29.in" 230 lines, 4261 charactersTest for joining lines and marks in them
 in compatible and nocompatible modes
 and with 'joinspaces' set or not
 and with 'cpoptions' flag 'j' set or not

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
:set nojoinspaces
:set cpoptions-=j
/firstline/
j"td/^STARTTEST/-1
PJjJjJjJjJjJjJjJjJjJjJjJjJjJj05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions+=jj05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions-=j joinspaces
j"tpJjJjJjJjJjJjJjJjJjJjJjJjJjJj05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions+=j
j05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions-=j nojoinspaces compatible
j"tpJjJjJjJjJjJjJjJjJjJjJjJjJjJj4Jy3l$pjd/STARTTEST/-2
ENDTEST

firstline
asdfasdf.
asdf[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for joining lines and marks in them[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 11 lines, 478 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nojoinspaces
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpoptions-=j
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cfirstline/
[?25l[?1c[?25h[?0c
[?25l[?1c/[?25h[?0c^STARTTEST/-1
[?25l[?1c+-1
37 fewer linesSTARTTEST
/^{/+1[?25h[?0c[?25l[?1cmore linesasdfasdf.
asdf[?25h[?0c[?25l[?1casdf
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1cf asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
zx cvn.[?25h[?0c
zx cv[?25l[?1cas dfg?
hjkl iop!
ert[?25h[?0c
hjkl i[?25l[?1c. as dfg? hjkl iop! ert
zx cvn.
as dfg?hjkl iop![?25h[?0c er[?25l[?1ct er[?25h[?0c
zx cv[?25l[?1crn[?25h[?0c[?25l[?1cnop[?25h[?0c[?25l[?1c:[?25h[?0cset cpoptions+=j
[?25l[?1c[?25h[?0c
zx cv
hjkl i[?25l[?1c. as dfg? hjkl iop! ertSTARTTEST[?25h[?0c er[?25l[?1ct er[?25h[?0c
zx cv[?25l[?1crn[?25h[?0c[?25l[?1cnop[?25h[?0c[?25l[?1c:[?25h[?0cset cpoptions-=j joinspaces
[?25l[?1c[?25h[?0c
[?25l[?1c

37 more linesasdfasdf.
[?25h[?0c[?25l[?1casdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c  asdf[?25h[?0c[?25l[?1c
asdfasdf. [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1cf asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
zx cvn.[?25h[?0c
zx cv[?25l[?1cas dfg?
hjkl iop![?25h[?0c
hjkl i[?25l[?1c.  as dfg?  hjkl iop!  ert
zx cvn.
as dfg?[?25h[?0c  er[?25l[?1ct  e[?25h[?0c
zx cv[?25l[?1cen[?25h[?0c[?25l[?1cnop[?25h[?0c[?25l[?1c


:[?25h[?0cset cpoptions+=j
[?25l[?1c[?25h[?0c
zx cv[?25l[?1c
hjkl iop![?25h[?0c
hjkl i[?25l[?1c.  as dfg? hjkl iop! ertSTARTTEST[?25h[?0c er[?25l[?1ct er[?25h[?0c
zx cv[?25l[?1crn[?25h[?0c[?25l[?1cnop[?25h[?0c[?25l[?1c


:[?25h[?0cset cpoptions-=j nojoinspaces compatible
[?25l[?1c[?25h[?0c
[?25l[?1c

37 more linesasdfasdf.
[?25h[?0c[?25l[?1casdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c  asdf[?25h[?0c[?25l[?1c
asdfasdf. [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.      [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf.[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1cf asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf [?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
asdfasdf[?25h[?0c[?25l[?1c asdf[?25h[?0c[?25l[?1c
zx cvn.[?25h[?0c[?25l[?1c.  as dfg? hjkl iop! ert[?25h[?0c[?25l[?1ct  a[?25h[?0c[?25l[?1c
zx cvn.[?25h[?0c[?25l[?1c
/[?25h[?0cSTARTTEST/-2
[?25l[?1c+-2
4 fewer lines[?25h[?0c[?25l[?1c/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 12 lines, 147 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set comments=s1:/*,mb:*,ex:*/,://
:set nojoinspaces fo=j
:set backspace=eol,start
:.,+3join
j4J
:.,+2join
j3J
:.,+2join
j3J
:.,+2join
jj3J
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{[?25h[?0c[?25l[?1c
:[?25h[?0cset comments=s1:/*,mb:*,ex:*/,://
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nojoinspaces fo=j
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset backspace=eol,start
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,+3join
[?25l[?1c/* Make sure the previous comment leader is not removed. */
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c/* Make sure the previous comment leader is not removed. */
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c.,+2join
[?25l[?1c// Should the next comment leader be left alone? Yes.
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c// Should the next comment leader be left alone? Yes.
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c.,+2join
[?25l[?1c/* Here the comment leader should be left intact. */ // And so should this one.
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c/* Here the comment leader should be left intact. */ // And so should this one.
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c.,+2join
[?25l[?1cif (condition) // Remove the next comment leader! OK, I will.
[?25h[?0c[?25l[?1c
action();[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cif (condition) // Remove the next comment leader! OK, I will.
[?25h[?0c[?25l[?1c
action();
[?25h[?0c[?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
:" Test with backspace set to the non-compatible setting
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 17 lines, 347 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:inoremap <c-u> <left><c-u>
Avim3^U^[
:iunmap <c-u>
Avim4^U^U^[
:" Test with backspace set to the compatible setting
:set backspace= visualbell
A vim5^[A^U^U^[
A vim6^[Azwei^Gu^U^[
:inoremap <c-u> <left><c-u>
A vim7^U^U^[
:set compatible novisualbell
ENDTEST
1 this shouldn't be deleted
2 this shouldn't be deleted
3 this shouldn't be deleted
4 this should be deleted
5 this shouldn't be deleted
6 this shouldn't be deleted
7 this shouldn't be deleted
8 this shouldn't be deleted (not touched yet)

STARTTEST
/^{/+1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" Test with backspace set to the non-compatible setting
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^\d\+ this
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cp bs=2
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0cd    [?25l[?1cvim2[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <c-u> <left><c-u>
[?25l[?1c[?25h[?0c[?25l[?1cd3[?25h[?0c[?25l[?1c:[?25h[?0ciunmap <c-u>
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0c" Test with backspace set to the compatible setting
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset backspace= visualbell
[?25l[?1c[?25h[?0c[?25l[?1cvim5[?25h[?0c[?5h[?5l[?5h[?5l[?25l[?1cd vim6[?25h[?0c6    [?25l[?1czwei[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <c-u> <left><c-u>
[?25l[?1c[?25h[?0c[?5h[?5l[?5h[?5l[?25l[?1cvim7[?25h[?0c
[?25l[?1c:[?25h[?0cset compatible novisualbell
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 21 lines, 356 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTj3J
:.,+2join
j3J
:.,+2join
jj3J
j:.,+2join
jj3J
j:.,+5join
j6J
oSome code!^M// Make sure backspacing does not remove this comment leader.^[0i^H^[
ENDTEST

{

/*
 * Make sure the previous comment leader is not removed.
 */

/*
 * Make sure the previous comment leader is not removed.
 */[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset comments=sO:*\ -,mO:*\ \ ,exO:*/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset comments+=s1:/*,mb:*,ex:*/,://
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset comments+=s1:>#,mb:#,ex:#<,:<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpoptions-=j joinspaces fo=j
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset backspace=eol,start
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,+3join
[?25l[?1c/* Make sure the previous comment leader is not removed.  *//* List:
 * - item1
 *   foo bar baz[?25h[?0c
[?25l[?1c/* Make sure the previous comment leader is not removed.  */*   foo bar baz
 * - item2
 *   foo bar baz[?25h[?0c
[?25l[?1c:[?25h[?0c.,+8join
[?25l[?1c/* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz *//* List:- item1  foo bar baz
 * - item2[?25h[?0c
[?25l[?1c/* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */// Should the next comment leader be left alone?
// Yes.// Should the next comment leader be left alone?[?25h[?0c
[?25l[?1c:[?25h[?0c.,+2join
[?25l[?1cShould the next comment leader be left alone?  Yes.


// Yes.[?25h[?0c
[?25l[?1c// Should the next comment leader be left alone?  Yes.* Here the comment leader should be left intact. */
// And so should this one.[?25h[?0c
[?25l[?1c


:[?25h[?0c.,+2join
[?25l[?1c/* Here the comment leader should be left intact. */ // And so should this one.* Here the comment leader should be left intact. */[?25h[?0c
[?25l[?1c/* Here the comment leader should be left intact. */ // And so should this one.[?25h[?0c
[?25l[?1c:[?25h[?0c.,+2join
[?25l[?1cif (condition) // Remove the next comment leader!  OK, I will.
[?25h[?0c[?25l[?1c
action();[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cif (condition) // Remove the next comment leader!  OK, I will.
[?25h[?0c[?25l[?1c
action();
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c.,+2join
[?25l[?1cint i = 7 /* foo *// 3 // comment
[?25h[?0c[?25l[?1c
;[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cint i = 7 /* foo *// 3 // comment
[?25h[?0c[?25l[?1c
;
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c.,+5join
[?25l[?1c># Note that the last character of the ending comment leader (left angle bracket@                                                                               ># Note that the last character of the ending comment leader (left angle bracket) is a comment leader itself. Make sure that this comment leader is not removed
from the next line #< < On this line a new comment is opened which spans 2 lines. This comment should retain its comment leader.[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c># Note that the last character of the ending comment leader (left angle bracket@                                                                               ># Note that the last character of the ending comment leader (left angle bracket) is a comment leader itself. Make sure that this comment leader is not removed
from the next line #< < On this line a new comment is opened which spans 2 lines. This comment should retain its comment leader.[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cSome code!
// Make sure backspacing does not remove this comment leader.[?25h[?0c
[?25l[?1c// Make sure backspacing does not remove this comment leader.
}[?25h[?0c
[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:g/^STARTTEST/.,/^ENDTEST/d
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 61 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST[?25h[?0c[?25l[?1c
:?firstline?+1,$w! test.out[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cg/^STARTTEST/.,/^ENDTEST/d
[?25l[?1c74 fewer lines// Should the next comment leader be left alone?  Yes./* Here the comment leader should be left intact. */ // And so should this one.
/* Here the comment leader should be left intact. */ // And so should this one.
if (condition) // Remove the next comment leader!  OK, I will.
    action();if (condition) // Remove the next comment leader!  OK, I will.
    action();int i = 7 /* foo *// 3 // comment
 ;int i = 7 /* foo *// 3 // comment ;># Note that the last character of the ending comment leader (left angle bracket) is a comment leader itself. Make sure that this comment leader is not removed from the next line #< < On this line a new comment is opened which spans 2 lines. This comment should retain its comment leader.># Note that the last character of the ending comment leader (left angle bracket) is a comment leader itself. Make sure that this comment leader is not removed
from the next line #< < On this line a new comment is opened which spans 2 lines. This comment should retain its comment leader.

Some code!// Make sure backspacing does not remove this comment leader.
}[?25h[?0c[?25l[?1c:[?25h[?0c?firstline?+1,$w! test.out
[?25l[?1c"test.out" [New File] 97 lines, 3018 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test30.failed test.ok test.out X* viminfo
cp test30.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test30.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' option

Note: This test will fail if "cat" is not available.

STARTTEST
:so small.vim
:" first write three test files, one in each format
:set fileformat=unix
:set fileformats=
:/^unix/;/eof/-1w! XXUnix
:/^dos/;/eof/-1w! XXDos
:set bin noeol
:$w! XXMac
Gonoeol^[
:$w! XXEol
:set nobin eol
:enew!
:bwipe XXUnix XXDos XXMac
:" create mixed format files
:if has("vms")
: !copy XXUnix,XXDos XXUxDs.
: !copy XXUnix,XXMac XXUxMac.
: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for a lot of variations of the 'fileformats' option[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 221 lines, 3592 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$r XXtt64
Go7^[:$r XXtt71
:$r XXtt72
Go8^[:$r XXtt81
:$r XXtt82
Go9^[:$r XXtt91
:$r XXtt92
:$r XXtt93
Go10^[:$r XXUnix
:set nobinary ff&
:w
:qa!
ENDTEST

unix
unix
eof

dos^M
dos^M
eof

mac^Mmac^M[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" first write three test files, one in each format
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^unix/;/eof/-1w! XXUnix
[?25l[?1c"XXUnix" [New File] 2 lines, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^dos/;/eof/-1w! XXDos
[?25l[?1c"XXDos" [New File] 2 lines, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset bin noeol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$w! XXMac
[?25l[?1c"XXMac" [New File][Incomplete last line] 1 line, 8 characters written[?25h[?0c[?25l[?1c
noeol[?25h[?0c[?25l[?1c
:[?25h[?0c$w! XXEol
[?25l[?1c"XXEol" [New File][Incomplete last line] 1 line, 5 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset nobin eol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cenew!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUnix XXDos XXMac
[?25l[?1c3 buffers wiped out[?25h[?0c[?25l[?1c:[?25h[?0c" create mixed format files
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("vms")
[?25l[?1c
:  [?25h[?0c: !copy XXUnix,XXDos XXUxDs.

[?25l[?1c:  [?25h[?0c: !copy XXUnix,XXMac XXUxMac.

[?25l[?1c:  [?25h[?0c: !copy XXDos,XXMac  XXDosMac.

[?25l[?1c:  [?25h[?0c: !copy XXMac,XXEol  XXMacEol.

[?25l[?1c:  [?25h[?0c: !copy XXUnix,XXDos,XXMac XXUxDsMc.

[?25l[?1c:  [?25h[?0c:elseif has("win32")

[?25l[?1c:  [?25h[?0c: !copy /b XXUnix+XXDos XXUxDs

[?25l[?1c:  [?25h[?0c: !copy /b XXUnix+XXMac XXUxMac

[?25l[?1c:  [?25h[?0c: !copy /b XXDos+XXMac XXDosMac

[?25l[?1c:  [?25h[?0c: !copy /b XXMac+XXEol XXMacEol

[?25l[?1c:  [?25h[?0c: !copy /b XXUnix+XXDos+XXMac XXUxDsMc

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: !cat XXUnix XXDos >XXUxDs

[?25l[?1c:!cat XXUnix XXDos >XXUxDs[?25h[?0c
[?25l[?1c:  [?25h[?0c: !cat XXUnix XXMac >XXUxMac

[?25l[?1c:!cat XXUnix XXMac >XXUxMac[?25h[?0c
[?25l[?1c:  [?25h[?0c: !cat XXDos XXMac >XXDosMac

[?25l[?1c:!cat XXDos XXMac >XXDosMac[?25h[?0c
[?25l[?1c:  [?25h[?0c: !cat XXMac XXEol >XXMacEol

[?25l[?1c:!cat XXMac XXEol >XXMacEol[?25h[?0c
[?25l[?1c:  [?25h[?0c: !cat XXUnix XXDos XXMac >XXUxDsMc

[?25l[?1c:!cat XXUnix XXDos XXMac >XXUxDsMc[?25h[?0c
[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" try reading and writing with 'fileformats' empty
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUnix
[?25l[?1c"XXUnix" 2 lines, 10 charactersunix
unix[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 2 lines, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXDos
[?25l[?1c"XXDos" 2 lines, 10 charactersdos^M
dos^M[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt01
[?25l[?1c"XXtt01" [New File] 2 lines, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXMac
[?25l[?1c"XXMac" [Incomplete last line] 1 line, 8 charactersmacmac^M
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt02
[?25l[?1c"XXtt02" [New File] 1 line, 9 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUnix XXDos XXMac
[?25l[?1c"test30.in" 237 lines, 3762 characters

3 buffers wiped out

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat=dos
[?25l[?1c:$r XXtt64
Go7^[:$r XXtt71
:$r XXtt72Go8^[:$r XXtt81:$r XXtt82Go9^[:$r XXtt91:$r XXtt92:$r XXtt93Go10^[:$r XXUnix:set nobinary ff&:w:qa!ENDTESTunixunixeofdos^Mdos^Meofmac^Mmac^M[?25h[?0c[?25l[?1c
:[?25h[?0ce! XXUnix
[?25l[?1c"XXUnix" [CR missing][dos format] 2 lines, 10 charactersunixunix~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt11
[?25l[?1c"XXtt11" [New File][dos format] 2 lines, 12 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXDos
[?25l[?1c"XXDos" [dos format] 2 lines, 10 charactersdosdos[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt12
[?25l[?1c"XXtt12" [New File][dos format] 2 lines, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXMac
[?25l[?1c"XXMac" [Incomplete last line][dos format] 1 line, 8 charactersmac^Mmac^M
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt13
[?25l[?1c"XXtt13" [New File][dos format] 1 line, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUnix XXDos XXMac
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 characters

3 buffers wiped out

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat=mac
[?25l[?1c:$r XXtt64
Go7^[:$r XXtt71
:$r XXtt72Go8^[:$r XXtt81:$r XXtt82Go9^[:$r XXtt91:$r XXtt92:$r XXtt93Go10^[:$r XXUnix:set nobinary ff&:w:qa!ENDTESTunixunixeofdosdoseofmac^Jmac[?25h[?0c[?25l[?1c
:[?25h[?0ce! XXUnix
[?25l[?1c"XXUnix" [Incomplete last line][mac format] 1 line, 10 charactersunix^Junix^J
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt21
[?25l[?1c"XXtt21" [New File][mac format] 1 line, 11 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXDos
[?25l[?1c"XXDos" [Incomplete last line][mac format] 3 lines, 10 charactersdos^Jdos^J[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt22
[?25l[?1c"XXtt22" [New File][mac format] 3 lines, 11 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXMac
[?25l[?1c"XXMac" [mac format] 2 lines, 8 charactersmac
mac~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt23
[?25l[?1c"XXtt23" [New File][mac format] 2 lines, 8 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUnix XXDos XXMac
[?25l[?1c"test30.in" [Incomplete last line][mac format] 5 lines, 3762 characters

3 buffers wiped out

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c^Jdos
^Jeof^J^Jmac
mac^J[?25h[?0c[?25l[?1c:[?25h[?0c" try reading and writing with 'fileformats' set to one format
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunixdos^M
dos^M
mac^Mmac^M[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt31
[?25l[?1c"XXtt31" [New File] 5 lines, 29 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=dos
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line][CR missing][dos format] 5 lines, 28 character

s
Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt32
[?25l[?1c"XXtt32" [New File][dos format] 5 lines, 32 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' option

Note: This test will fail if "cat" is not available."test30.in" [CR missing][dos format] 237 lines, 3762 characters[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=mac
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [mac format] 4 lines, 28 charactersunix^Junix^Jdos^Jdos
^Jmacmac
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt33
[?25l[?1c"XXtt33" [New File][mac format] 4 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" [Incomplete last line][mac format] 5 lines, 3762 characters^Jdoseof^J^Jmac
mac^J[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" try reading and writing with 'fileformats' set to two formats
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=unix,dos
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunixdos^M
dos^M
mac^Mmac^M[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt41
[?25l[?1c"XXtt41" [New File] 5 lines, 29 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxMac
[?25l[?1c"XXUxMac" [Incomplete last line] 3 lines, 18 charactersunixunix
mac^Mmac^M~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt42
[?25l[?1c"XXtt42" [New File] 3 lines, 19 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxMac
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXDosMac
[?25l[?1c"XXDosMac" [Incomplete last line][dos format] 3 lines, 18 charactersdodos
mac^Mmac^M~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt43
[?25l[?1c"XXtt43" [New File][dos format] 3 lines, 20 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXDosMac
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=unix,mac
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDs
[?25l[?1c"XXUxDs" 4 lines, 20 charactersunixunix
dos^Mdos^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt51
[?25l[?1c"XXtt51" [New File] 4 lines, 20 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDs
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt52
[?25l[?1c"XXtt52" [New File] 5 lines, 29 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXDosMac
[?25l[?1c"XXDosMac" [mac format] 4 lines, 18 charactersdo^Jdos
^Jmacmac
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt53
[?25l[?1c"XXtt53" [New File][mac format] 4 lines, 18 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXDosMac
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXEol
[?25l[?1c"XXEol" [Incomplete last line] 1 line, 5 charactersnoeol~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c=[?25h[?0c&ffs
[?25l[?1c=[?25h[?0c&ff
[?25l[?1cunix,mac:unix[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt54
[?25l[?1c"XXtt54" [New File] 2 lines, 20 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXEol
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=dos,mac
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDs
[?25l[?1c"XXUxDs" [CR missing][dos format] 4 lines, 20 charactersunixunix
dosdos
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt61
[?25l[?1c"XXtt61" [New File][dos format] 4 lines, 22 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDs
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxMac
[?25l[?1c"XXUxMac" [Incomplete last line][CR missing][dos format] 3 lines, 18 charactersunixunix
mac^Mmac^M~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c=[?25h[?0c&ffs
[?25l[?1c=[?25h[?0c&ff
[?25l[?1cdos,mac:dos[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt62
[?25l[?1c"XXtt62" [New File][dos format] 4 lines, 35 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxMac
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line][CR missing][dos format] 5 lines, 28 character

s
Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt63
[?25l[?1c"XXtt63" [New File][dos format] 5 lines, 32 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' option

Note: This test will fail if "cat" is not available."test30.in" [CR missing][dos format] 237 lines, 3762 characters[?25h[?0c[?25l[?1c:[?25h[?0ce! XXMacEol
[?25l[?1c"XXMacEol" [Incomplete last line][mac format] 3 lines, 13 charactersmacmac
noeol~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c=[?25h[?0c&ffs
[?25l[?1c=[?25h[?0c&ff
[?25l[?1cdos,mac:mac[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt64
[?25l[?1c"XXtt64" [New File][mac format] 4 lines, 26 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXMacEol
[?25l[?1c"test30.in" [CR missing][dos format] 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" try reading and writing with 'fileformats' set to three formats
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=unix,dos,mac
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt71
[?25l[?1c"XXtt71" [New File] 5 lines, 29 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXEol
[?25l[?1c"XXEol" [Incomplete last line] 1 line, 5 charactersnoeol~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c=[?25h[?0c&ffs
[?25l[?1c=[?25h[?0c&ff
[?25l[?1cunix,dos,mac:unix[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt72
[?25l[?1c"XXtt72" [New File] 2 lines, 24 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXEol
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=mac,dos,unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt81
[?25l[?1c"XXtt81" [New File] 5 lines, 29 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0ce! XXEol
[?25l[?1c"XXEol" [Incomplete last line][mac format] 1 line, 5 charactersnoeol~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c=[?25h[?0c&ffs
[?25l[?1c=[?25h[?0c&ff
[?25l[?1cmac,dos,unix:mac[?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt82
[?25l[?1c"XXtt82" [New File][mac format] 2 lines, 23 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXEol
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0c" try with 'binary' set
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=mac,unix,dos
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset binary
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt91
[?25l[?1c"XXtt91" [New File][Incomplete last line] 5 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=mac
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt92
[?25l[?1c"XXtt92" [New File][Incomplete last line] 5 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXUxDsMc
[?25l[?1c"test30.in" 237 lines, 3762 charactersTest for a lot of variations of the 'fileformats' optionNote: This test will fail if "cat" is not available.STARTTEST:so small.vim:" first write three test files, one in each format:set fileformat=unix:set fileformats=:/^unix/;/eof/-1w! XXUnix:/^dos/;/eof/-1w! XXDos:set bin noeol:$w! XXMacGonoeol^[:$w! XXEol:set nobin eol:enew!:bwipe XXUnix XXDos XXMac:" create mixed format files:if has("vms"): !copy XXUnix,XXDos XXUxDs.: !copy XXUnix,XXMac XXUxMac.: !copy XXDos,XXMac  XXDosMac.[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=dos
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXUxDsMc
[?25l[?1c"XXUxDsMc" [Incomplete last line] 5 lines, 28 charactersunixunix
dos^Mdos^M
mac^Mmac^M
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! XXtt93
[?25l[?1c"XXtt93" [New File][Incomplete last line] 5 lines, 28 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Append "END" to each file so that we can see what the last written char was.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat=unix nobin
[?25l[?1c[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1cEND[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt01
[?25l[?1c"XXtt01" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt02
[?25l[?1c"XXtt02" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt11
[?25l[?1c"XXtt11" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt12
[?25l[?1c"XXtt12" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt13
[?25l[?1c"XXtt13" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt21
[?25l[?1c"XXtt21" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt22
[?25l[?1c"XXtt22" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt23
[?25l[?1c"XXtt23" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt31
[?25l[?1c"XXtt31" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt32
[?25l[?1c"XXtt32" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt33
[?25l[?1c"XXtt33" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt41
[?25l[?1c"XXtt41" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt42
[?25l[?1c"XXtt42" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt43
[?25l[?1c"XXtt43" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt51
[?25l[?1c"XXtt51" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt52
[?25l[?1c"XXtt52" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt53
[?25l[?1c"XXtt53" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt54
[?25l[?1c"XXtt54" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt61
[?25l[?1c"XXtt61" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt62
[?25l[?1c"XXtt62" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt63
[?25l[?1c"XXtt63" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt64
[?25l[?1c"XXtt64" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt71
[?25l[?1c"XXtt71" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt72
[?25l[?1c"XXtt72" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt81
[?25l[?1c"XXtt81" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt82
[?25l[?1c"XXtt82" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt91
[?25l[?1c"XXtt91" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt92
[?25l[?1c"XXtt92" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXtt93
[?25l[?1c"XXtt93" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Concatenate the results.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Make fileformat of test.out the native fileformat.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Add a newline at the end.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset binary
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 2 lines, 10 charactersunix
unix[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt01
[?25l[?1c"XXtt01" 3 lines, 14 charactersdos^Mdos^MEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt02
[?25l[?1c"XXtt02" 2 lines, 13 charactersmac^Mmac^MEND[?25h[?0c
[?25l[?1c
1[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt11
[?25l[?1c"XXtt11" 3 lines, 16 charactersunix^Munix^MEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt12
[?25l[?1c"XXtt12" 3 lines, 14 charactersdos^Mdos^MEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt13
[?25l[?1c"XXtt13" 2 lines, 14 charactersmac^Mmac^M^MEND[?25h[?0c
[?25l[?1c
2[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt21
[?25l[?1c"XXtt21" 3 lines, 15 charactersunixunix^MEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt22
[?25l[?1c"XXtt22" 3 lines, 15 charactersdos^Mdos^M^MEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXtt23
[?25l[?1c"XXtt23" 1 line, 12 characters
mac^Mmac^MEND[?25h[?0c[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt31
[?25l[?1c"XXtt31" 6 lines, 33 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt32
[?25l[?1c"XXtt32" 6 lines, 36 charactersunix
dos^M
dos^M
mac^Mmac^M
END
unix^M[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt33
[?25l[?1c"XXtt33" 5 lines, 32 charactersunix^M
dos^M
dos^M
mac^Mmac^M^M
END
unix[?25h[?0c[?25l[?1cunix
dos^M
dos^M
mac^Mmac^MEND
[?25h[?0c[?25l[?1c
4[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt41
[?25l[?1c"XXtt41" 6 lines, 33 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt42
[?25l[?1c"XXtt42" 4 lines, 23 charactersunix
dos^M
dos^M
mac^Mmac^M
END
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt43
[?25l[?1c"XXtt43" 4 lines, 24 charactersunix
mac^Mmac^M
END
dos^M[?25h[?0c[?25l[?1cdos^M
mac^Mmac^M^M
END
[?25h[?0c[?25l[?1c
5[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt51
[?25l[?1c"XXtt51" 5 lines, 24 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt52
[?25l[?1c"XXtt52" 6 lines, 33 charactersunix
dos^M
dos^M
END
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt53
[?25l[?1c"XXtt53" 3 lines, 22 charactersunix
dos^M
dos^M
mac^Mmac^M
END
dos^M[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt54
[?25l[?1c"XXtt54" 3 lines, 24 charactersdos^M
mac^Mmac^MEND
unix,mac:unix[?25h[?0c[?25l[?1cnoeol
END
[?25h[?0c[?25l[?1c
6[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt61
[?25l[?1c"XXtt61" 5 lines, 26 characters
unix^M[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt62
[?25l[?1c"XXtt62" 5 lines, 39 charactersunix^M
dos^M
dos^M
END
dos,mac:dos^M[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt63
[?25l[?1c"XXtt63" 6 lines, 36 charactersunix^M
unix^M
mac^Mmac^M^M
END
unix^M[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt64
[?25l[?1c"XXtt64" 1 line, 30 charactersunix^M
dos^M
dos^M
mac^Mmac^M^M
END
dos,mac:mac^Mmac^Mmac^Mnoeol^MEND[?25h[?0c[?25l[?1c
7[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt71
[?25l[?1c"XXtt71" 6 lines, 33 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt72
[?25l[?1c"XXtt72" 3 lines, 28 charactersunix
dos^M
dos^M
mac^Mmac^M
END
unix,dos,mac:unix[?25h[?0c[?25l[?1cnoeol
END
[?25h[?0c[?25l[?1c
8[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt81
[?25l[?1c"XXtt81" 6 lines, 33 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt82
[?25l[?1c"XXtt82" 1 line, 27 charactersunix
dos^M
dos^M
mac^Mmac^M
END
mac,dos,unix:mac^Mnoeol^MEND[?25h[?0c[?25l[?1c
9[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt91
[?25l[?1c"XXtt91" 5 lines, 32 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt92
[?25l[?1c"XXtt92" 5 lines, 32 charactersunix
dos^M
dos^M
mac^Mmac^MEND
unix[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXtt93
[?25l[?1c"XXtt93" 5 lines, 32 charactersunix
dos^M
dos^M
mac^Mmac^MEND
unix[?25h[?0c[?25l[?1cunix
dos^M
dos^M
mac^Mmac^MEND
[?25h[?0c[?25l[?1c
10[?25h[?0c[?25l[?1c
:[?25h[?0c$r XXUnix
[?25l[?1c"XXUnix" 2 lines, 10 characters
unix[?25h[?0c[?25l[?1c
:[?25h[?0cset nobinary ff&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 130 lines, 786 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test31.failed test.ok test.out X* viminfo
cp test31.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test31.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test31.in" 75 lines, 1545 charactersTest for commands that close windows and/or buffers:
:quit
:close
:hide
:only
:sall
:all
:ball
:buf
:edit

STARTTEST
:so tiny.vim
GA 1^[:$w! Xtest1
$r2:$w! Xtest2
$r3:$w! Xtest3
:n! Xtest1 Xtest2
A 1^[:set hidden
:" test for working :n when hidden set; write "testtext 2"
:n
:w! test.out
:" test for failing :rew when hidden not set; write "testtext 2 2"
:set nohidden[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for commands that close windows and/or buffers:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 60 lines, 1410 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set hidden
:e Xtest1
:w >>test.out
:" test ":close" not hiding when 'hidden' not set in modified buffer;
:" write "testtext 3 3 3"
:sp Xtest3
:set nohidden
A 3^[:close
:w >>test.out
:" test ":close!" does hide when 'hidden' not set in modified buffer;
:" write "testtext 1"
A 3^[:close!
:w >>test.out
:set nohidden
:" test ":all!" hides changed buffer; write "testtext 2 2 2"
:sp Xtest4
GA 4^[:all!
:1wincmd w
:w >>test.out
:qa!
ENDTEST

testtext[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso tiny.vim
[?25l[?1c[?25h[?0c
[?25l[?1c1[?25h[?0c[?25l[?1c:[?25h[?0c$w! Xtest1
[?25l[?1c"Xtest1" [New File] 1 line, 11 characters written[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0c$w! Xtest2
[?25l[?1c"Xtest2" [New File] 1 line, 11 characters written[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c:[?25h[?0c$w! Xtest3
[?25l[?1c"Xtest3" [New File] 1 line, 11 characters written[?25h[?0c[?25l[?1c:[?25h[?0cn! Xtest1 Xtest2
[?25l[?1c"Xtest1" 1 line, 11 characterstesttext 1~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test for working :n when hidden set; write "testtext 2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cn
[?25l[?1c"Xtest2" 1 line, 11 characters2[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 1 line, 11 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" test for failing :rew when hidden not set; write "testtext 2 2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nohidden
[?25l[?1c[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0crew
[?25l[?1cE37: No write since last change (add ! to override)[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 13 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test for working :rew when hidden set; write "testtext 1 1"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0crew
[?25l[?1c"Xtest1" [Modified] line 1 of 1 --100%-- col 1 (file 1 of 2)1 1
[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 13 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test for :all keeping a buffer when it's modified; write "testtext 1 1 1"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nohidden
[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c:[?25h[?0csp
[?25l[?1cXtest1 [+]                                                                      testtext 1 1 1Xtest1 [+]                                                                      [?25h[?0c[?25l[?1c:[?25h[?0cn Xtest2 Xtest3
[?25l[?1c"Xtest2" [Modified] line 1 of 1 --100%-- col 1 (file 1 of 2)2 22[?25h[?0c[?25l[?1c:[?25h[?0call
[?25l[?1c"Xtest3" 1 line, 11 characterstesttext 1 1 1
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtest1 [+]                                                                      testtext 2 2
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtest2 [+]                                                                      testtext 3
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtest3                                                                          [?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1cXtest1 [+]                                                                      Xtest2 [+]                                                                      [?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 15 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test abandoning changed buffer, should be unloaded even when 'hidden' set
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" write "testtext 2 2" twice
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c1 1[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1ctesttext 2 2
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtest2 [+]                                                                      testtext 3
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               Xtest3                                                                          [?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 13 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cunhide
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 13 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test ":hide" hides anyway when 'hidden' not set; write "testtext 3"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nohidden
[?25l[?1c[?25h[?0c[?25l[?1c2[?25h[?0c[?25l[?1c:[?25h[?0chide
[?25l[?1c3~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test ":edit" failing in modified buffer when 'hidden' not set
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" write "testtext 3 3"
[?25l[?1c[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c:[?25h[?0ce Xtest1
[?25l[?1cE37: No write since last change (add ! to override)[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 13 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test ":edit" working in modified buffer when 'hidden' set; write "testtext 1

"[?25l[?1ctesttext 3 3[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce Xtest1
[?25l[?1c"Xtest1" 1 line, 11 characters1[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test ":close" not hiding when 'hidden' not set in modified buffer;
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" write "testtext 3 3 3"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csp Xtest3
[?25l[?1c"Xtest3" [Modified] line 1 of 1 --100%-- col 1 (file 2 of 2)3 3Xtest3 [+]                                                                      testtext 1Xtest1                                                                          [?25h[?0c[?25l[?1c:[?25h[?0cset nohidden
[?25l[?1c[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cE37: No write since last change (add ! to override)[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 15 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" test ":close!" does hide when 'hidden' not set in modified buffer;
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" write "testtext 1"
[?25l[?1c[?25h[?0c[?25l[?1c3 3[?25h[?0c[?25l[?1c:[?25h[?0cclose!
[?25l[?1c1~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset nohidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test ":all!" hides changed buffer; write "testtext 2 2 2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csp Xtest4
[?25l[?1c"Xtest4" [New File]Xtest4                                                                          testtext 1Xtest1                                                                          [?25h[?0c[?25l[?1c 4[+][?25h[?0c[?25l[?1c:[?25h[?0call!
[?25l[?1c"Xtest2" [Modified] line 1 of 1 --100%-- col 1 (file 1 of 2)

"Xtest3" [Modified] line 1 of 1 --100%-- col 1 (file 2 of 2)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1ctesttext 2 2 2
~                                                                               Xtest2 [+]                                                                      testtext 3 3 3 3~                                                                               3 [+][?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 1 line, 15 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test32.failed test.ok test.out X* viminfo
cp test32.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test32.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test32.in" 60 lines, 1391 charactersTest for insert expansion

:se cpt=.,w
* add-expands (word from next line) from other window
* add-expands (current buffer first)
* Local expansion, ends in an empty line (unless it becomes a global expansion)
* starts Local and switches to global add-expansion
:se cpt=.,w,i
* i-add-expands and switches to local
* add-expands lines (it would end in an empty line if it didn't ignored it self):se cpt=kXtestfile
* checks k-expansion, and file expansion (use Xtest11 instead of test11,
* because TEST11.OUT may match first on DOS)
:se cpt=w
* checks make_cyclic in other window
:se cpt=u nohid
* checks unloaded buffer expansion
* checks adding mode abortion
:se cpt=t,d
* tag expansion, define add-expansion interrupted
* t-expansion

STARTTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for insert expansion[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c[?25l[?1c
:so small.vim[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 27 lines, 533 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTO^N^[IX^[A^X^F^N^[
:" use CTRL-X CTRL-F to complete Xtest11.one, remove it and then use
:" CTRL-X CTRL-F again to verify this doesn't cause trouble.
OX^X^F^H^H^H^H^H^H^H^H^X^F^[ddk
:se cpt=w
OST^N^P^P^P^P^[
:se cpt=u nohid
^WoOEN^N
unl^N^X^X^P^[
:se cpt=t,d def=^\\k* tags=Xtestfile notagbsearch
O^X^]^X^D^X^D^X^X^D^X^D^X^D^X^D
a^N^[
:wq! test.out
ENDTEST

start of testfile
run1
run2
end of testfile

test11  36Gepeto/Tag/
asd     test11file      36G
Makefileto      run[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cse nocp viminfo+=nviminfo cpt=.,w ff=unix | $-2,$w!Xtestfile | set ff&
[?25l[?1c"Xtestfile" [New] 3L, 57C written[?25h[?0c[?25l[?1c:[?25h[?0cse cot=
[?25l[?1c[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       unl^N^X^X^P^[
:se cpt=t,d def=^\\k* tags=Xtestfile notagbsearch
O^X^]^X^D^X^D^X^X^D^X^D^X^D^X^D
a^N^[:wq! test.out
ENDTESTstart of testfile
run1run2test32.in                                                                       [?25h[?0c[?25l[?1c-- INSERT --
-- Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Keyword completion (^N^P) match 1 of 4match in file test32.in-- Keyword completion (^N^P) match 2 of 4-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Adding Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Adding Keyword completion (^N^P) Word from other line#include "Xtestfile"
run1 run2[+][?25h[?0c[?25l[?1c-- Adding Keyword completion (^N^P) Word from other line-- INSERT --[?25h[?0c[?25l[?1c3[?25h[?0c
[?25l[?1c-- INSERT --
-- Keyword completion (^N^P) -- Searching...
Scanning: test32.in-- Keyword completion (^N^P) match 1 of 115-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Adding Keyword completion (^N^P) -- Searching...
Scanning: test32.in-- Adding Keyword completion (^N^P) Word from other line-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Keyword Local completion (^N^P) -- Searching...match 1 of 4 match 2 of 4 match 3 of 4 match 4 of 4 Back at original-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Keyword Local completion (^N^P) -- Searching...match 1 of 4 match 2 of 4-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Keyword completion (^N^P) -- Searching...
Scanning: test32.in-- Keyword completion (^N^P) The only match-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Adding Keyword completion (^N^P) -- Searching...
Scanning: test32.in-- Adding Keyword completion (^N^P) match 1 of 2match in file test32.in-- Adding Keyword completion (^N^P) Word from other linerun3 run3

run1 run2[?25h[?0c[?25l[?1c-- Adding Keyword completion (^N^P) Word from other line-- INSERT --[?25h[?0c
[?25l[?1c:[?25h[?0cse cpt=.,w,i
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --Keyword completion (^N^P) -- Searching...
Scanning: test32.in included file: Xtestfile
match in file test32.in-- Keyword completion (^N^P) The only match-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Adding Keyword completion (^N^P) -- Searching...
Scanning: test32.in included file: Xtestfile
match in file test32.in-- Adding Keyword completion (^N^P) The only match-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Adding Keyword completion (^N^P) -- Searching...
Scanning: test32.in included file: Xtestfile
match in file test32.in-- Adding Keyword completion (^N^P) The only match-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Keyword Local completion (^N^P) -- Searching...match 1 of 3-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- Whole line completion (^L^N^P) -- Searching...
Scanning: test32.in-- Whole line completion (^L^N^P) match 1 of 57INSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) match 1 of 57Adding Whole line completion (^L^N^P) -- Searching...
Scanning: test32.in-- Adding Whole line completion (^L^N^P) The only match Back at original The only matchMakefileto      run3
Makefileto      run3
Makefileto      run3[?25h[?0c[?25l[?1c-- INSERT --[?25h[?0c[?25l[?1c:[?25h[?0cse cpt=kXtestfile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw Xtest11.one
[?25l[?1c"Xtest11.one" [New] 9L, 104C writtenXtest11.one  [?25h[?0c[?25l[?1c:[?25h[?0cw Xtest11.two
[?25l[?1c"Xtest11.two" [New] 9L, 104C written[?25h[?0c[?25l[?1c-- INSERT --Keyword completion (^N^P) -- Searching...
Scanning dictionary: Xtestfilematch in file Xtestfile-- Keyword completion (^N^P) match 1 of 9test11[+]I[?25h[?0c [?25l[?1c-- Keyword completion (^N^P) match 1 of 9-- INSERT --[?25h[?0c[?25l[?1c-- INSERT --Xtest11
[?25h[?0c[?25l[?1c-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- File name completion (^F^N^P) -- Searching...match 1 of 2 match 2 of 2.two[?25h[?0c[?25l[?1c-- INSERT --[?25h[?0c[?25l[?1c:[?25h[?0c" use CTRL-X CTRL-F to complete Xtest11.one, remove it and then use
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" CTRL-X CTRL-F again to verify this doesn't cause trouble.
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- File name completion (^F^N^P) -- Searching...match 1 of 4INSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- File name completion (^F^N^P) -- Searching...match 1 of 353
Makefilerun1 run2d[?25h[?0c [?25l[?1c-- INSERT --[?25h[?0c[?25l[?1c
run1 run2~                                                                               [?25h[?0c
[?25l[?1c:[?25h[?0cse cpt=w
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --
-- Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Keyword completion (^N^P) The only match Back at originalmatch in file test32.in-- Keyword completion (^N^P) The only match Back at originalmatch in file test32.in-- Keyword completion (^N^P) The only match
STARTTEST
run1 run2[?25h[?0c[?25l[?1c-- Keyword completion (^N^P) The only match-- INSERT --[?25h[?0c[?25l[?1c:[?25h[?0cse cpt=u nohid
[?25l[?1c[?25h[?0c[?25l[?1c

~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c-- INSERT --Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Keyword completion (^N^P) The only match-- INSERT --
-- Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Keyword completion (^N^P) match 1 of 3-- INSERT --
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- INSERT --Keyword completion (^N^P) -- Searching...
Scanning: test32.inmatch in file test32.in
-- Keyword completion (^N^P) The only matchENDTEST
unless[?25h[?0c[?25l[?1c-- Keyword completion (^N^P) The only match-- INSERT --[?25h[?0c[?25l[?1c:[?25h[?0cse cpt=t,d def=^\\k* tags=Xtestfile notagbsearch
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- Tag completion (^]^N^P) -- Searching...match 1 of 3INSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) match 1 of 3Definition completion (^D^N^P) -- Searching...Scanning included file: Xtestfilematch in file Xtestfile-- Definition completion (^D^N^P) The only matchINSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) The only match
-- Adding Definition completion (^D^N^P) -- Searching...
Scanning included file: Xtestfilematch in file Xtestfile-- Adding Definition completion (^D^N^P) The only matchINSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) The only match
-- INSERT --^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
-- Definition completion (^D^N^P) -- Searching...
Scanning included file: Xtestfilematch in file Xtestfile-- Definition completion (^D^N^P) The only matchINSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) The only match
-- Adding Definition completion (^D^N^P) -- Searching...
Scanning included file: Xtestfilematch in file Xtestfile-- Adding Definition completion (^D^N^P) The only matchINSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) The only match
-- Adding Definition completion (^D^N^P) -- Searching...
Scanning included file: Xtestfilematch in file Xtestfile-- Adding Definition completion (^D^N^P) The only matchINSERT ---- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) The only match
-- Adding Definition completion (^D^N^P) -- Searching...
Scanning included file: Xtestfilematch in file Xtestfile-- Adding Definition completion (^D^N^P) Word from other lineINSERT ---- Keyword completion (^N^P) -- Searching...
Scanning tags.included file: Xtestfile
-- Keyword completion (^N^P) The only matchtest11file      36Gepeto/Tag/ asd
asd[?25h[?0c[?25l[?1c-- Keyword completion (^N^P) The only match-- INSERT --[?25h[?0c
ru[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New] 15L, 175C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test33.failed test.ok test.out X* viminfo
cp test33.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test33.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test33.in" 34 lines, 616 charactersTest for 'lisp'
If the lisp feature is not enabled, this will fail!

STARTTEST
:so small.vim
:set lisp
/^(defun
=G:/^(defun/,$w! test.out
:q!
ENDTEST

(defun html-file (base)
(format nil "~(~A~).html" base))

(defmacro page (name title &rest body)
(let ((ti (gensym)))
`(with-open-file (*standard-output*
(html-file ,name)
:direction :output
:if-exists :supersede)
(let ((,ti ,title))
(as title ,ti)
(with center[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for 'lisp'[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 5 lines, 63 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset lisp
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^(defun
[?25l[?1c[?25h[?0c[?25l[?1c22 lines to indent...
23indented   (format nil "~(~A~).html" base))


  (let ((ti (gensym)))
       `(with-open-file (*standard-output*
                 (html-file ,name)
                  :direction :output
                         :if-exists :supersede)
                        (let ((,ti ,title))
              (as title ,ti)
            (with center[?25h[?0c[?25l[?1c:[?25h[?0c/^(defun/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 23 lines, 544 characters written[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test34.failed test.ok test.out X* viminfo
cp test34.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test34.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test34.in" 87 lines, 1833 charactersTest for user functions.
Also test an <expr> mapping calling a function.
Also test that a builtin function cannot be replaced.
Also test for regression when calling arbitrary expression.

STARTTEST
:so small.vim
:function Table(title, ...)
:  let ret = a:title
:  let idx = 1
:  while idx <= a:0
:    exe "let ret = ret . a:" . idx
:    let idx = idx + 1
:  endwhile
:  return ret
:endfunction
:function Compute(n1, n2, divname)
:  if a:n2 == 0
:    return "fail"
:  endif
:  exe "let g:" . a:divname . " = ". a:n1 / a:n2
:  return "ok"
:endfunction[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for user functions.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 78 lines, 1621 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?
:    " Second is here just to prove that this line is correct when not skipping
:    " rhs of &&.
:    $put =(0&&(function('tr'))(1, 2, 3))
:    $put =(1&&(function('tr'))(1, 2, 3))
:catch
:    $put ='!!! Unexpected exception:'
:    $put =v:exception
:endtry
:$-9,$w! test.out
:delfunc Table
:delfunc Compute
:delfunc Expr1
:delfunc Expr2
:delfunc ListItem
:delfunc ListReset
:unlet retval counter
:q!
ENDTEST

here[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction Table(title, ...)
[?25l[?1c
:  [?25h[?0c:  let ret = a:title

[?25l[?1c:  [?25h[?0c:  let idx = 1

[?25l[?1c:  [?25h[?0c:  while idx <= a:0

[?25l[?1c:    [?25h[?0c:    exe "let ret = ret . a:" . idx

[?25l[?1c:    [?25h[?0c:    let idx = idx + 1

[?25l[?1c:    [?25h[?0c:  endwhile

[?25l[?1c:  [?25h[?0c:  return ret

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?
:    " Second is here just to prove that this line is correct when not skipping
:    " rhs of &&.
:    $put =(0&&(function('tr'))(1, 2, 3))
:    $put =(1&&(function('tr'))(1, 2, 3))
:catch[?25h[?0c[?25l[?1c

:[?25h[?0cfunction Compute(n1, n2, divname)
[?25l[?1c
:  [?25h[?0c:  if a:n2 == 0

[?25l[?1c:    [?25h[?0c:    return "fail"

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:  exe "let g:" . a:divname . " = ". a:n1 / a:n2

[?25l[?1c:  [?25h[?0c:  return "ok"

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?
:    " Second is here just to prove that this line is correct when not skipping
:    " rhs of &&.
:    $put =(0&&(function('tr'))(1, 2, 3))[?25h[?0c[?25l[?1c

:[?25h[?0cfunc Expr1()
[?25l[?1c
:  [?25h[?0c:  normal! v

[?25l[?1c:  [?25h[?0c:  return "111"

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?[?25h[?0c[?25l[?1c

:[?25h[?0cfunc Expr2()
[?25l[?1c
:  [?25h[?0c:  call search('XX', 'b')

[?25l[?1c:  [?25h[?0c:  return "222"

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?[?25h[?0c[?25l[?1c

:[?25h[?0cfunc ListItem()
[?25l[?1c
:  [?25h[?0c:  let g:counter += 1

[?25l[?1c:  [?25h[?0c:  return g:counter . '. '

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?[?25h[?0c[?25l[?1c

:[?25h[?0cfunc ListReset()
[?25l[?1c
:  [?25h[?0c:  let g:counter = 0

[?25l[?1c:  [?25h[?0c:  return ''

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?[?25h[?0c[?25l[?1c

:[?25h[?0cfunc FuncWithRef(a)
[?25l[?1c
:  [?25h[?0c:  unlet g:FuncRef

[?25l[?1c:  [?25h[?0c:  return a:a

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call append(line('$'), max([1, 2, 3]))
:try
:    " Regression: the first line below used to throw ?E110: Missing ')'?[?25h[?0c[?25l[?1c

:[?25h[?0clet g:FuncRef=function("FuncWithRef")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet counter = 0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <expr> ( ListItem()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <expr> [ ListReset()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cimap <expr> + Expr1()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cimap <expr> * Expr2()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet retval = "nop"
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^here
[?25l[?1c[?25h[?0c[?25l[?1cher$=[?25h[?0cTable("xxx", 4, "asdf")
[?25l[?1c=[?25h[?0cCompute(45, 0, "retval")
[?25l[?1c=[?25h[?0cretval
[?25l[?1c=[?25h[?0cCompute(45, 5, "retval")
[?25l[?1c=[?25h[?0cretval
[?25l[?1c=[?25h[?0cg:FuncRef(333)

[?25l[?1cError detected while processing function Expr1:

line    1:

E523: Not allowed here

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:    $put =(0&&(function('tr'))(1, 2, 3))
:    $put =(1&&(function('tr'))(1, 2, 3))
:catch
:    $put ='!!! Unexpected exception:'$put =v:exception
:endtry$-9,$w! test.outdelfunc Table
:delfunc Computedelfunc Expr1delfunc Expr2
:delfunc ListItemListReset
:unlet retval counter
:q!ENDTESTxxx4asdf fail nop ok 9 333
XX111-XX---222---
1. one2. two[?25h[?0c[?25l[?1c1. one again[?25h[?0c[?25l[?1c
:[?25h[?0ccall append(line('$'), max([1, 2, 3]))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall extend(g:, {'max': function('min')})
[?25l[?1cE704: Funcref variable name must start with a capital: max[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), max([1, 2, 3]))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:    " Regression: the first line below used to throw ?E110: Missing ')'?

[?25l[?1c:  [?25h[?0c:    " Second is here just to prove that this line is correct when not skipp

ing

[?25l[?1c:  [?25h[?0c:    " rhs of &&.

[?25l[?1c:  [?25h[?0c:    $put =(0&&(function('tr'))(1, 2, 3))

[?25l[?1c:  [?25h[?0c:    $put =(1&&(function('tr'))(1, 2, 3))

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:    $put ='!!! Unexpected exception:'

[?25l[?1c:  [?25h[?0c:    $put =v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c:    $put =v:exception
:endtry
:$-9,$w! test.out
:delfunc Table
:delfunc Compute
:delfunc Expr1
:delfunc Expr2
:delfunc ListItem
:delfunc ListReset
:unlet retval counter
:q!ENDTESTxxx4asdf fail nop ok 9 333
XX111-XX
---222---
1. one
2. two1. one again
330[?25h[?0c[?25l[?1c
:[?25h[?0c$-9,$w! test.out
[?25l[?1c"test.out" [New File] 10 lines, 81 characters written[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc Table
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc Compute
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc Expr1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc Expr2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc ListItem
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc ListReset
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet retval counter
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test35.failed test.ok test.out X* viminfo
cp test35.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test35.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test35.in" 21 lines, 448 charactersTest Ctrl-A and Ctrl-X, which increment and decrement decimal, hexadecimal,
and octal numbers.

STARTTEST
/^start-here
:set nrformats=octal,hex
j^A102^X^Al^Xl^A64^A128^X$^X
:set nrformats=octal
0^A102^X^Al^X2^Aw65^A129^Xblx6lD
:set nrformats=hex
0101^Xl257^X^ATxldt ^A ^X ^X
:set nrformats=
0200^Xl100^Xw78^X^Ak
:$-3,$wq! test.out
ENDTEST

start-here
100     0x100     077     0
100     0x100     077
100     0x100     077     0xfF     0xFf
100     0x100     077
~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest Ctrl-A and Ctrl-X, which increment and decrement decimal, hexadecimal,[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 10 lines, 200 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^start-here
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats=octal,hex
[?25l[?1c[?25h[?0c
[?25l[?1c101[?25h[?0c[?25l[?1c
-1     0x100     077     0[?25h[?0c[?25l[?1c0     0x100     077     0[?25h[?0c0[?25l[?1c0ff[?25h[?0cf[?25l[?1c     0100     0[?25h[?0c[?25l[?1c20[?25h[?0c[?25l[?1c00[?25h[?0c0     [?25l[?1c-1[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats=octal
[?25l[?1c[?25h[?0c
[?25l[?1c101[?25h[?0c[?25l[?1c
-1     0x100     077 
-[?25h[?0c[?25l[?1c0     0x100     077 
[?25h[?0c0[?25l[?1c     -1x100     077[?25h[?0c[?25l[?1c1x100     077 [?25h[?0c[?25l[?1c0200[?25h[?0c[?25l[?1c37777777777[?25h[?0c0[?25l[?1c7 [?25h[?0c777777[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats=hex
[?25l[?1c[?25h[?0c
[?25l[?1c-1     0x100     077     0xfF     0xFf[?25h[?0c1[?25l[?1cffffffff     077     0xfF     0xFf[?25h[?0c[?25l[?1c00000000[?25h[?0c0[?25l[?1c     077     0xfF     0xFf[?25h[?0c[?25l[?1c8[?25h[?0c8[?25l[?1cFE[?25h[?0cE[?25l[?1cfe[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats=
[?25l[?1c[?25h[?0c
[?25l[?1c-100     0x100     077
-10[?25h[?0c0[?25l[?1c     -100x100     077[?25h[?0c[?25l[?1c-001[?25h[?0c[?25l[?1c000 [?25h[?0c[?25l[?1c:[?25h[?0c$-3,$wq! test.out
[?25l[?1c"test.out" [New File] 4 lines, 120 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test36.failed test.ok test.out X* viminfo
cp test36.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test36.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test36.in" 105 lines, 1950 charactersTest character classes in regexp using regexpengine 0, 1, 2.

STARTTEST
/^start-here/+1
Y:s/\%#=0\d//g
p:s/\%#=1\d//g
p:s/\%#=2\d//g
p:s/\%#=0[0-9]//g
p:s/\%#=1[0-9]//g
p:s/\%#=2[0-9]//g
p:s/\%#=0\D//g
p:s/\%#=1\D//g
p:s/\%#=2\D//g
p:s/\%#=0[^0-9]//g
p:s/\%#=1[^0-9]//g
p:s/\%#=2[^0-9]//g
p:s/\%#=0\o//g
p:s/\%#=1\o//g
p:s/\%#=2\o//g
p:s/\%#=0[0-7]//g
p:s/\%#=1[0-7]//g
p:s/\%#=2[0-7]//g
p:s/\%#=0\O//g[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest character classes in regexp using regexpengine 0, 1, 2.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 98 lines, 1775 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTp:s/\%#=1\L//g
p:s/\%#=2\L//g
p:s/\%#=0[^a-z]//g
p:s/\%#=1[^a-z]//g
p:s/\%#=2[^a-z]//g
p:s/\%#=0\u//g
p:s/\%#=1\u//g
p:s/\%#=2\u//g
p:s/\%#=0[A-Z]//g
p:s/\%#=1[A-Z]//g
p:s/\%#=2[A-Z]//g
p:s/\%#=0\U//g
p:s/\%#=1\U//g
p:s/\%#=2\U//g
p:s/\%#=0[^A-Z]//g
p:s/\%#=1[^A-Z]//g
p:s/\%#=2[^A-Z]//g
:/^start-here/+1,$wq! test.out
ENDTEST







:[?25h[?0cs/\%#=0\D//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1\D//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2\D//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=0[^0-9]//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^0-9]//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^0-9]//g
[?25l[?1c72 substitutions on 1 line0123456789~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=0\O//g
[?25l[?1c74 substitutions on 1 line01234567~                                                                               [?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=2\O//g
[?25l[?1c74 substitutions on 1 line01234567~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^0-7]//g
[?25l[?1c74 substitutions on 1 line01234567~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^0-7]//g
[?25l[?1c74 substitutions on 1 line01234567~                                                                               [?25h[?0c[?25l[?1c




~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=0\X//g
[?25l[?1c60 substitutions on 1 line0123456789ABCDEFabcdef~                                                                               [?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=2\X//g
[?25l[?1c60 substitutions on 1 line0123456789ABCDEFabcdef~                                                                               [?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=1[^0-9A-Fa-f]//g
[?25l[?1c60 substitutions on 1 line0123456789ABCDEFabcdef~                                                                               [?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c





:[?25h[?0cs/\%#=0\W//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1\W//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2\W//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=0[^0-9A-Za-z_]//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^0-9A-Za-z_]//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^0-9A-Za-z_]//g
[?25l[?1c46 substitutions on 1 line0123456789ABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c







:[?25h[?0cs/\%#=0\H//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1\H//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2\H//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=0[^A-Za-z_]//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^A-Za-z_]//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^A-Za-z_]//g
[?25l[?1c56 substitutions on 1 lineABCDEFGHIXYZ_abcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c







:[?25h[?0cs/\%#=0\A//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1\A//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2\A//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=0[^A-Za-z]//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^A-Za-z]//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^A-Za-z]//g
[?25l[?1c57 substitutions on 1 lineABCDEFGHIXYZabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c







:[?25h[?0cs/\%#=0\L//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1\L//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2\L//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=0[^a-z]//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^a-z]//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^a-z]//g
[?25l[?1c69 substitutions on 1 lineabcdefghiwxyz~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=0\U//g
[?25l[?1c70 substitutions on 1 lineABCDEFGHIXYZ~                                                                               [?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0cs/\%#=2\U//g
[?25l[?1c70 substitutions on 1 lineABCDEFGHIXYZ~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=1[^A-Z]//g
[?25l[?1c70 substitutions on 1 lineABCDEFGHIXYZ~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cs/\%#=2[^A-Z]//g
[?25l[?1c70 substitutions on 1 lineABCDEFGHIXYZ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c/^start-here/+1,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 96 lines, 4032 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test37.failed test.ok test.out X* viminfo
cp test37.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test37.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test37.in" 116 lines, 3262 charactersTest for 'scrollbind'. <eralston@computer.org>   Do not add a line below!
STARTTEST
:so small.vim
:set noscrollbind
:set scrollopt=ver,jump
:set scrolloff=2
:set nowrap
:set noequalalways
:set splitbelow
:" TEST using two windows open to one buffer, one extra empty window
:split
:new
^Wt:
:resize 8
/^start of window 1$/
zt:
:set scrollbind
^Wj:
:resize 7
/^start of window 2$/
zt:
:set scrollbind
:" -- start of tests --[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for 'scrollbind'. <eralston@computer.org>   Do not add a line below![?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 72 lines, 1498 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTHk^WtH^WjHyy^Wbp^Wtyy^Wbp:
^Wt:set noscb
ggL^Wj:set noscb
ggL:set scb
^Wt:set scb
^WtG^WjG^Wt:syncbind
Hk^WjH^WtHyy^Wbp^Wt^Wjyy^Wbp:
^WtH3k^WjH^WtHyy^Wbp^Wt^Wjyy^Wbp:
:" ***** done with tests *****
:w! test.out" Write contents of this file
:qa!
ENDTEST


start of window 1
. line 01 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 01
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
. line 03 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 03
. line 04 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 04
. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
. line 07 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 07
. line 08 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 08[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noscrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollopt=ver,jump
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrolloff=2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nowrap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noequalalways
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset splitbelow
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST using two windows open to one buffer, one extra empty window
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csplit
[?25l[?1c^WtH3k^WtHyybp^Wt^Wjyy^Wbp:
:" ***** done with tests *****
:w! test.out    " Write contents of this file
:qa!ENDTESTstart of window 1. line 01 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 01
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02test37.in                                                                       Hk^WjH^WtHyy^Wbp^Wt^Wjyy^Wbp:
^WtH3k^WjH^WtHyy^Wbp^Wt^Wjyy^Wbp:
:" ***** done with tests *****
:w! test.out     " Write contents of this file
:qa!ENDTESTstart of window 11122
test37.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c:w! test.out             " Write contents of this file
:qa!ENDTESTtest37.in                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name][?25h[?0ctest37.in                                                                       [No Name]                                                                       [?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cresize 8
[?25l[?1c:" ***** done with tests *****w! test.out             " Write contents of this file
:qa!ENDTESTstart of window 1
. line 01 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 01
test37.in                                                                       :" ***** done with tests *****:w! test.out             " Write contents of this fileqa!ENDTESTstart of window 1[?25h[?0c[?25l[?1c/[?25h[?0c^start of window 1$/
[?25l[?1c
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02[?25h[?0c[?25l[?1c. line 03 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 03
. line 04 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 04
. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollbind
[?25l[?1c[?25h[?0ctest37.in                                                                       test37.in                                                                       [?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cresize 7
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start of window 2$/
[?25l[?1cend of window 1start of window 2
. line 01 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 01
. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
. line 03 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 03[?25h[?0c[?25l[?1c
. line 04 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 04[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" -- start of tests --
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST scrolling down
[?25l[?1c[?25h[?0c

[?25l[?1c. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
. line 07 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 07
. line 08 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 08
. line 09 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09
. line 10 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 10. line 05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05
. line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
. line 07 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 07
. line 08 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 08
. line 09 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 09[?25h[?0ctest37.in                                                                       [No Name]                                                                       [?25l[?1c
. line 05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05[+][?25h[?0c[?25l[?1c0[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05[?25h[?0c[?25l[?1c1[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   


[?25l[?1c. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
. line 12 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 12
. line 13 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 13
. line 14 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 14
. line 15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 15
end of window 1. line 10 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 10
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13
. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11[?25h[?0c[?25l[?1c2[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST scrolling up
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c. line 04 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 04
. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
. line 07 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 07
. line 08 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 08440505060607070808090900[?25h[?0ctest37.in                                                                       test37.in                                                                       test37.in                                                                       test37.in                                                                       test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
[?25h[?0c[?25l[?1c4[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
[?25h[?0c[?25l[?1c5[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1cstart of window 1
. line 01 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 01
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
. line 03 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 03start of window 2
. line 01 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 01
. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
. line 03 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 03
[?25h[?0ctest37.in                                                                       test37.in                                                                       test37.in                                                                       test37.in                                                                       test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
[?25h[?0c[?25l[?1c6[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
[?25h[?0c[?25l[?1c7[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST horizontal scrolling
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollopt+=hor
[?25l[?1c[?25h[?0c[?25l[?1c05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05
15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
2 line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
3 line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11[?25h[?0c[?25l[?1c4 line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
5 line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
6 line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
7 line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02[?25h[?0c[?25l[?1c
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c 156789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0156789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0256789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0356789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0556789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0656789ABCDEFGHIJKLMNOPQRSTUVWXYZ 07 2UTSRQPONMLKJIHGREDCBA9876543210 01UTSRQPONMLKJIHGREDCBA9876543210 02UTSRQPONMLKJIHGREDCBA9876543210 03UTSRQPONMLKJIHGREDCBA9876543210 04UTSRQPONMLKJIHGREDCBA9876543210 05UTSRQPONMLKJIHGREDCBA9876543210 06[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c56789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02[?25h[?0c[?25l[?1c
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1cUTSRQPONMLKJIHGREDCBA9876543210 02[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c56789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09101112131415UTSRQPONMLKJIHGREDCBA9876543210 09101112131415[?25h[?0c[?25l[?1c. line 09 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09
. line 10 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 10
. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
. line 12 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 12
. line 13 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 13
. line 14 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 14
. line 15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 15
end of window 1

. line 09 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 09
. line 10 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 10
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13
. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15[?25h[?0c[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11[?25h[?0c[?25l[?1c
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   
test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollopt-=hor
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" ****** tests using two different buffers *****
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       test37.in                                                                       [?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cstart of window 20000000000[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noscrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start of window 2$/,/^end of window 2$/y
[?25l[?1c18 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1ctest37.in                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name][?25h[?0ctest37.in                                                                       [No Name]                                                                       test37.in                                                                       [No Name]                                                                       [?25l[?1c4 more lines[+][?25h[?0c


[?25l[?1c18 more linesstart of window 2. line 01 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 01. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c/[?25h[?0c^start of window 1$/
[?25l[?1csearch hit BOTTOM, continuing at TOPENDTESTstart of window 1010102020303[?25h[?0c[?25l[?1c
. line 04 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 04[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollbind
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start of window 2$/
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c. line 03 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 03
. line 04 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 04
. line 05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" -- start of tests --
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST scrolling down
[?25l[?1c[?25h[?0c


[?25l[?1c. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
. line 07 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 07
. line 08 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 08
. line 09 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09. line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
. line 07 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 07
. line 08 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 08
. line 09 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 09
. line 10 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 10[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05
[?25h[?0c[?25l[?1c0[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 05 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
[?25h[?0c[?25l[?1c1[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   

[?25l[?1c. line 10 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 10
. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
. line 12 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 12
. line 13 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 13
. line 14 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 14
. line 15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 15. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13
. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
[?25h[?0c[?25l[?1c2[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
[?25h[?0c[?25l[?1c3[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST scrolling up
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c440505060607070808090900. line 04 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 04
. line 05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05
. line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
. line 07 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 07
. line 08 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 08[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 06 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
[?25h[?0c[?25l[?1c4[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 06 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
[?25h[?0c[?25l[?1c5[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1cstart of window 1
. line 01 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 01
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
. line 03 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 03start of window 2
. line 01 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 01
. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
. line 03 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 03
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
[?25h[?0c[?25l[?1c6[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
. line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
[?25h[?0c[?25l[?1c7[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST horizontal scrolling
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollopt+=hor
[?25l[?1c[?25h[?0c[?25l[?1c05 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 05
15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 05
2 line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
3 line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11[?25h[?0c[?25l[?1c3 line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
46 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06
56 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 06
6 line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02
7 line 02 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02
[?25h[?0c[?25l[?1c
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c 156789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0156789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0256789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0356789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 0556789ABCDEFGHIJKLMNOPQRSTUVWXYZ 06 2UTSRQPONMLKJIHGREDCBA9876543210 01UTSRQPONMLKJIHGREDCBA9876543210 02UTSRQPONMLKJIHGREDCBA9876543210 03UTSRQPONMLKJIHGREDCBA9876543210 04UTSRQPONMLKJIHGREDCBA9876543210 05UTSRQPONMLKJIHGREDCBA9876543210 06UTSRQPONMLKJIHGREDCBA9876543210 07[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c56789ABCDEFGHIJKLMNOPQRSTUVWXYZ 02[?25h[?0c[?25l[?1c
[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1cUTSRQPONMLKJIHGREDCBA9876543210 02[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c56789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09101112131415

UTSRQPONMLKJIHGREDCBA9876543210 0910111213141516[?25h[?0c[?25l[?1c. line 09 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 09
. line 10 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 10
. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11
. line 12 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 12
. line 13 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 13
. line 14 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 14
. line 15 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 15

. line 09 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 09
. line 10 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 10
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13
. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16[?25h[?0c[?25l[?1c[?25h[?0c[No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11[?25h[?0c[?25l[?1c
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   
test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c. line 11 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ 11[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset scrollopt-=hor
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TEST syncbind
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset noscb
[?25l[?1c[?25h[?0c[?25l[?1cTest for 'scrollbind'. <eralston@computer.org>   Do not add a line below!
STARTTEST:so small.vim:set noscrollbind:set scrollopt=ver,jump:set scrolloff=2:set nowrap[?25h[?0c


test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset noscb
[?25l[?1c[?25h[?0c[?25l[?1cstart of window 201010202[?25h[?0c[?25l[?1c:[?25h[?0cset scb
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset scb
[?25l[?1c[?25h[?0c[?25l[?1c. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16
end of window 2end of test37.in (please don't delete this line)

end of window 2
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1czt::set scrollbind:" -- start of tests --:" TEST scrolling downL5jHyy^Wbpr0^WtHyy^Wbpr1^WtL6jHyy^Wbpr2^WkHyy^Wbpr3:
:" TEST scrolling up
^WtH4k^WjH^WtHyy^Wbpr4^WkHyy^Wbpr5^Wk3k^WtH^WjHyy^Wbpr6^WtHyy^Wbpr7:
test37.in                                                                       . line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16[No Name] [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0csyncbind
[?25l[?1c[?25h[?0c[?25l[?1c/^start of window 2$/. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
:set scrollbind
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset noscb
[?25l[?1c[?25h[?0c[?25l[?1cTest for 'scrollbind'. <eralston@computer.org>   Do not add a line below!
STARTTEST
:so small.vimset noscrollbindset scrollopt=ver,jump
:set scrolloff=2set nowrap[?25h[?0c


test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset noscb
[?25l[?1c[?25h[?0c[?25l[?1cstart of window 2. line 01 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 01. line 02 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 02[?25h[?0c[?25l[?1c:[?25h[?0cset scb
[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0cset scb
[?25l[?1c[?25h[?0c[?25l[?1c. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14
. line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16
end of window 2end of test37.in (please don't delete this line)

end of window 2
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1czt::set scrollbind:" -- start of tests --:" TEST scrolling downL5jHyy^Wbpr0^WtHyy^Wbpr1^WtL6jHyy^Wbpr2^WkHyy^Wbpr3:
:" TEST scrolling up
^WtH4k^WjH^WtHyy^Wbpr4^WkHyy^Wbpr5^Wk3k^WtH^WjHyy^Wbpr6^WtHyy^Wbpr7:
test37.in                                                                       . line 15 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 15
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16[No Name] [+]                                                                   [?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1c:[?25h[?0csyncbind
[?25l[?1c[?25h[?0c[?25l[?1c/^start of window 2$/. line 14 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 14[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
:set scrollbind
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 16 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 16
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   [?25l[?1czt:
:set scrollbind
^Wj:
:resize 7. line 10 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 10
. line 11 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 11
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
. line 13 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 13[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [?25l[?1c
^Wj:
[?25h[?0ctest37.in                                                                       [No Name] [+]                                                                   test37.in                                                                       [No Name] [+]                                                                   [No Name] [+]                                                                   [No Name] [+]                                                                   [?25l[?1c
. line 12 ZYXWVUTSRQPONMLKJIHGREDCBA9876543210 12
[?25h[?0c[?25l[?1c

:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" ***** done with tests *****
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out             " Write contents of this file
[?25l[?1c"test.out" [New File] 33 lines, 1329 characters writtentest.out     [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test38.failed test.ok test.out X* viminfo
cp test38.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test38.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test38.in" 35 lines, 455 charactersTest Virtual replace mode.

STARTTEST
:so small.vim
:" make sure that backspace works, no matter what termcap is used
:set t_kD=^Vx7f t_kb=^Vx08
ggdGa
abcdefghi
jk      lmn
    opq rst
^Duvwxyz
^[gg:set ai
:set bs=2
gR0^D 1
A
BCDEFGHIJKL
MNO
PQR^[G:ka
o0^D
abcdefghi
jk      lmn[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 29 lines, 407 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTopq rst
^Duvwxyz
^['ajgR0^D 1
A
BCDEFGHIJKL
MNO
PQR^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^[:$
iab     cdefghi jkl^[0gRAB......CDEFGHI.J^[o^[:
iabcdefghijklmnopqrst^[0gRAB    IJKLMNO QR^[:wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" make sure that backspace works, no matter what termcap is used
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset t_kD=^^? t_kb=^^H
[?25l[?1c^[gg:set ai
:set bs=2
gR0^D 1
A
BCDEFGHIJKL
MNO
PQR^[G:ka
o0^D
abcdefghi
jk      lmn
    opq rst
^Duvwxyz
^['ajgR0^D 1
A
BCDEFGHIJKL
MNO
PQR^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^[:$
iab     cdefghi jkl^[0gRAB......CDEFGHI.J^[o^[:
iabcdefghijklmnopqrst^[0gRAB    IJKLMNO QR^[:wq! test.out
ENDTEST
[?25h[?0c[?25l[?1cTest Virtual replace mode.

STARTTEST
:so small.vim
:" make sure that backspace works, no matter what termcap is used
:set t_kD=^Vx7f t_kb=^Vx08
ggdGa
abcdefghi
jk      lmn
    opq rst
^Duvwxyz[?25h[?0c[?25l[?1c
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c
abcdefghijk      lmn    opq rstuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0cset ai
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset bs=2
[?25l[?1c[?25h[?0c[?25l[?1c 1
 A BCDEFGHIJ    KL        MNOPQR[?25h[?0c[?25l[?1c:[?25h[?0cka
[?25l[?1c[?25h[?0c[?25l[?1cabcdefghijk      lmn    opq rstuvwxyz[?25h[?0c
[?25l[?1c 1[?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c[?25h[?0c[?25l[?1cab      cdefghi jkl[?25h[?0c
[?25l[?1cAB......CDEFGHI.J[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cabcdefghijklmnopqrst[?25h[?0c
[?25l[?1cAB      IJKLMNO QR[?25h[?0c[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New File] 13 lines, 107 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test39.failed test.ok test.out X* viminfo
cp test39.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test39.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test39.in" 118 lines, 2435 charactersTest Visual block mode commands
And test "U" in Visual mode, also on German sharp S.

#define BO_ALL      0x0001
#define BO_BS0x0002
#define BO_CRSR     0x0004

STARTTEST
:so small.vim
:so mbyte.vim
:" This only works when 'encoding' is "latin1", don't depend on the environment
:set enc=latin1
/^abcde
:" Test shift-right of a block
jllll^Vjj>wll^Vjlll>
:" Test shift-left of a block
G$hhhh^Vkk<
:" Test block-insert
Gkl^VkkkIxyz^[
:" Test block-replace
Gllll^Vkkklllrq
:" Test block-change[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 75 lines, 2061 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:exe ":norm! 2k\<C-V>$gj\<Esc>"
:let cpos=getpos("'>")
:$put ='col:'.cpos[2].' off:'.cpos[3]
:"
:" block_insert when replacing spaces in front of the block with tabs
:set ts=8 sts=4 sw=4
:4,7y
Gp
:exe ":norm! f0\<C-V>2jI\<tab>\<esc>"
:/^the/,$w >> test.out
:qa!
ENDTESTline1line2line3

aaaaaa
bbbbbb
cccccc
dddddd

xaaa[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" This only works when 'encoding' is "latin1", don't depend on the environment
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=latin1
[?25l[?1c:exe ":norm! 2k\<C-V>$gj\<Esc>"
:let cpos=getpos("'>")
:$put ='col:'.cpos[2].' off:'.cpos[3]
:"
:" block_insert when replacing spaces in front of the block with tabs
:set ts=8 sts=4 sw=4
:4,7y
Gp
:exe ":norm! f0\<C-V>2jI\<tab>\<esc>"
:/^the/,$w >> test.out
:qa!
ENDTESTline1line2line3

aaaaaa
bbbbbb
cccccc
dddddd

xaaa[?25h[?0c[?25l[?1c/[?25h[?0c^abcde
[?25l[?1cbbbb
cccc
dddd

yaaa
bbb

A23
4567

B23
4567

C23
4567

abcdefghijklm[?25h[?0c[?25l[?1c
:[?25h[?0c" Test shift-right of a block
[?25l[?1c[?25h[?0c[?25l[?1c
abcdefghijklm[?25h[?0cabcd[?25l[?1c[?25h[?0c[?25l[?1c
e
abcdefghijklm
abcd[?25h[?0c[?25l[?1c
e
abcdefghijklm
abcd[?25h[?0c[?25l[?1c
3 lines >ed 1 time        efghijklm
abcd        efghijklm
abcd        efghijklm[?25h[?0c     ef[?25l[?1c[?25h[?0c[?25l[?1cg[?25h[?0c[?25l[?1chg[?25h[?0c[?25l[?1cih[?25h[?0c[?25l[?1cji[?25h[?0c[?25l[?1c        ghijklm        ghijklm[?25h[?0c[?25l[?1c:[?25h[?0c" Test shift-left of a block
[?25l[?1c[?25h[?0c[?25l[?1c
abcdefghijklm[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ci[?25h[?0c[?25l[?1c [?25h[?0c[?25l[?1c


3 lines <ed 1 timeef    efghijklmi[?25h[?0c[?25l[?1c:[?25h[?0c" Test block-insert
[?25l[?1c[?25h[?0c
a[?25l[?1c[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1c
ab
ab
abxyzbcdefghijklm
axyzbcd
axyzbcd
axyzbcd[?25h[?0c
a[?25l[?1c:[?25h[?0c" Test block-replace
[?25l[?1c[?25h[?0c


abcd[?25l[?1c[?25h[?0c[?25l[?1ce[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cbccf[?25h[?0c[?25l[?1ccddg[?25h[?0c[?25l[?1cd  h[?25h[?0c[?25l[?1cqqqq
axyzqqqq
axyzqqqq
abcdqqqq[?25h[?0c
axyz[?25l[?1c:[?25h[?0c" Test block-change
[?25l[?1c[?25h[?0c

[?25l[?1c[?25h[?0c[?25l[?1cj[?25h[?0c[?25l[?1ci[?25h[?0c[?25l[?1c     ghijkl[?25h[?0c[?25l[?1cef  gkl[?25h[?0c[?25l[?1cmnomnomno[?25h[?0c[?25l[?1c:[?25h[?0c$-4,$w! test.out
[?25l[?1c"test.out" [New File] 5 lines, 108 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" Test block-insert using cursor keys for movement
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^aaaa/
[?25l[?1csearch hit BOTTOM, continuing at TOPaaaaaa
bbbbbb
cccccc
ddddddsearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! l\<C-V>jjjlllI\<Right>\<Right>  \<Esc>"
[?25l[?1c  aaa
bbb  bbb
ccc  ccc
ddd  ddd[?25h[?0c[?25l[?1c:[?25h[?0c/^aa/,/^$/w >> test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 5 lines, 37 characters appended[?25h[?0c[?25l[?1c/[?25h[?0cxaaa$/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! \<C-V>jjjI<>\<Left>p\<Esc>"
[?25l[?1c<p>xaaa
<p>bbbb
<p>cccc
<p>dddd[?25h[?0c[?25l[?1c:[?25h[?0c/xaaa$/,/^$/w >> test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 5 lines, 33 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for Visual block was created with the last <C-v>$
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^A23$/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! l\<C-V>j$Aab\<Esc>"
[?25l[?1cab
4567ab[?25h[?0c[?25l[?1c:[?25h[?0c.,/^$/w >> test.out
[?25l[?1c"test.out" 3 lines, 14 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for Visual block was created with the middle <C-v>$ (1)
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^B23$/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! l\<C-V>j$hAab\<Esc>"
[?25l[?1cab
4567ab[?25h[?0c[?25l[?1c:[?25h[?0c.,/^$/w >> test.out
[?25l[?1c"test.out" 3 lines, 15 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for Visual block was created with the middle <C-v>$ (2)
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^C23$/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! l\<C-V>j$hhAab\<Esc>"
[?25l[?1cab
456ab7[?25h[?0c[?25l[?1c:[?25h[?0c.,/^$/w >> test.out
[?25l[?1c"test.out" 3 lines, 14 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for Visual block insert when virtualedit=all and utf-8 encoding
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ve=all enc=utf-8
[?25l[?1caaa  aaa
bbb  bbb
ccc  ccc
ddd  ddd

<p>xaaa
<p>bbbb
<p>cccc
<p>dddd

yaaa
<bf><bf><bf>
bbb

A23ab
4567ab

B23 ab
4567ab

C23ab
456ab7[?25h[?0c[?25l[?1c


:[?25h[?0c/\t\tline
[?25l[?1csearch hit BOTTOM, continuing at TOPline1line2line3search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! 07l\<C-V>jjIx\<Esc>"
[?25l[?1cxxx[?25h[?0c[?25l[?1c:[?25h[?0c.,/^$/w >> test.out
[?25l[?1c"test.out" 4 lines, 49 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for Visual block append when virtualedit=all
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! 012l\<C-v>jjAx\<Esc>"
[?25l[?1cx   line1x   line2x   line3[?25h[?0c[?25l[?1c:[?25h[?0cset ve= enc=latin1
[?25l[?1cx     x   line1x     x   line2x     x   line3

aaa  aaa
bbb  bbb
ccc  ccc
ddd  ddd

<p>xaaa
<p>bbbb
<p>cccc
<p>dddd

yaaa
bbb

A23ab
4567ab

B23 ab
456ab7

axyzbcdefghijklm
axyzqqqq   mnoghijklm
axyzqqqqef mnoghijklm
axyzqqqqefgmnoklm
abcdqqqqijklm[?25h[?0c[?25l[?1c
the [?25l[?1c
:[?25h[?0c" VU must uppercase a whole line
[?25l[?1c[?25h[?0c[?25l[?1c
[?25l[?1c
:[?25h[?0c" same, when it's the last line in the buffer
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
[?25l[?1c
:[?25h[?0c" Uppercase two lines
[?25l[?1c[?25h[?0c[?25l[?1c
blah didoh dut[?25h[?0c[?25l[?1c
doh dut [?25h[?0c[?25l[?1cblah di t[?25h[?0c[?25l[?1c
BLAH DIDOH DUT[?25h[?0c[?25l[?1c
:[?25h[?0c" Uppercase part of two lines
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c
333the yo[?25h[?0c[?25l[?1cut[?25h[?0c[?25l[?1cUTUSSEUU END
333THE YOUTU[?25h[?0c[?25l[?1c

:[?25h[?0c" visual replace using Enter or NL
[?25l[?1c[?25h[?0c
[?25l[?1c123456789
123456789
123456789[?25h[?0c
12345[?25l[?1c[?25h[?0c[?25l[?1c66[?25h[?0c[?25l[?1c789[?25h[?0c[?25l[?1c789
12345
789
[?25h[?0c[?25l[?1c98765
98765
98765[?25h[?0c
98[?25l[?1c[?25h[?0c[?25l[?1c7
987
98[?25h[?0c[?25l[?1c^M65
98^M65
98^M65[?25h[?0c
98
[?25l[?1c123456789
123456789
123456789[?25h[?0c
12345[?25l[?1c[?25h[?0c[?25l[?1c66[?25h[?0c[?25l[?1c789[?25h[?0c[?25l[?1c789
12345
789
[?25h[?0c[?25l[?1c98765
98765
98765[?25h[?0c
98[?25l[?1c[?25h[?0c[?25l[?1c7
987
98[?25h[?0c[?25l[?1c^@65
98^@65
98^@65[?25h[?0c[?25l[?1c


:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test cursor position. When ve=block and Visual block mode and $gj
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ve=block
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! 2k\<C-V>$gj\<Esc>"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet cpos=getpos("'>")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='col:'.cpos[2].' off:'.cpos[3]
[?25l[?1c
col:4 off:0[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" block_insert when replacing spaces in front of the block with tabs
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ts=8 sts=4 sw=4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c4,7y
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c
4 more lines
4 more lines[?25h[?0c[?25l[?1c
#define BO_ALL      0x0001[?25h[?0c[?25l[?1c
:[?25h[?0cexe ":norm! f0\<C-V>2jI\<tab>\<esc>"
[?25l[?1c    0x0001
#define BO_BS0x0002
#define BO_CRSR0x0004[?25h[?0c[?25l[?1c


:[?25h[?0c/^the/,$w >> test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 31 lines, 322 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test40.failed test.ok test.out X* viminfo
cp test40.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test40.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test40.in" 63 lines, 1536 charactersTest for "*Cmd" autocommands

STARTTEST
:so small.vim
:/^start/,$w! Xxx" write lines below to Xxx
:au BufReadCmd XtestA 0r Xxx|$del
:e XtestA" will read text of Xxd instead
:au BufWriteCmd XtestA call append(line("$"), "write")
:w" will append a line to the file
:r XtestA" should not read anything
:" now we have:
:" 1     start of Xxx
:" 2test40
:" 3     end of Xxx
:" 4     write
:au FileReadCmd XtestB '[r Xxx
:2r XtestB" will read Xxx below line 2 instead
:" 1     start of Xxx
:" 2test40
:" 3     start of Xxx
:" 4test40
:" 5     end of Xxx
:" 6     end of Xxx[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for "*Cmd" autocommands[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 55 lines, 1455 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$w >>test.out" append "end of Xxx" to test.out
:au BufReadCmd XtestE 0r test.out|$del
:sp XtestE" split window with test.out
5Goasdf^[^W^W:"
:au BufWriteCmd XtestE w! test.out
:wall" will write other window to test.out
:" 1     start of Xxx
:" 2test40
:" 3     start of Xxx
:" 4test401
:" 5     end of Xxx
:" 6     asdf
:" 7     end of Xxx
:" 8     write
:" 9test401
:" 10    end of Xxx
:" 11    end of Xxx
:qa!
ENDTEST

start of Xxxtest40
end of Xxx[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start/,$w! Xxx^I^I" write lines below to Xxx
[?25l[?1c"Xxx" [New File] 3 lines, 32 characters written[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadCmd XtestA 0r Xxx|$del
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce XtestA^I^I^I" will read text of Xxd instead
[?25l[?1c"Xxx" 3 lines, 32 charactersstart of Xxx        test40end of Xxx~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cau BufWriteCmd XtestA call append(line("$"), "write")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw^I^I^I^I" will append a line to the file
[?25l[?1cwrite[?25h[?0c[?25l[?1c:[?25h[?0cr XtestA^I^I^I" should not read anything
[?25l[?1cE484: Can't open file XtestA[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" now we have:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 1^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 2^I^Itest40
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 3^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 4^Iwrite
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FileReadCmd XtestB '[r Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2r XtestB^I^I^I" will read Xxx below line 2 instead
[?25l[?1c"Xxx" 3 lines, 32 charactersstart of Xxxtest40
end of Xxx[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 1^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 2^I^Itest40
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 3^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 4^I^Itest40
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 5^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 6^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 7^Iwrite
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FileWriteCmd XtestC '[,']copy $
[?25l[?1c[?25h[?0c[?25l[?1ctest401[?25h[?0c[?25l[?1c:[?25h[?0c4,5w XtestC^I^I^I" will copy lines 4 and 5 to the end
[?25l[?1c        test401end of Xxx[?25h[?0c[?25l[?1c:[?25h[?0cr XtestC^I^I^I" should not read anything
[?25l[?1cE484: Can't open file XtestC[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 1^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 2^I^Itest40
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 3^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 4^I^Itest401
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 5^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 6^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 7^Iwrite
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 8^I^Itest401
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 9^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau FILEAppendCmd XtestD '[,']w! test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>XtestD^I^I^I" will write all lines to test.out
[?25l[?1c"test.out" [New File] 9 lines, 91 characters written[?25h[?0c[?25l[?1c:[?25h[?0c$r XtestD^I^I^I" should not read anything
[?25l[?1cE484: Can't open file XtestD[?25h[?0c[?25l[?1c:[?25h[?0c$w >>test.out^I^I^I" append "end of Xxx" to test.out
[?25l[?1c"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cau BufReadCmd XtestE 0r test.out|$del
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csp XtestE^I^I^I" split window with test.out
[?25l[?1c"test.out" 10 lines, 102 charactersend of XxxXtestE                                                                          end of Xxxwrite        test401end of XxxXtestA                                                                          [?25h[?0c[?25l[?1casdf[+][?25h[?0cXtestE [+]                                                                      XtestA                                                                          [?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufWriteCmd XtestE w! test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwall^I^I^I^I" will write other window to test.out
[?25l[?1c"test.out" 11 lines, 107 characters written   [?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 1^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 2^I^Itest40
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 3^Istart of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 4^I^Itest401
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 5^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 6^Iasdf
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 7^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 8^Iwrite
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 9^I^Itest401
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 10^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c^I^I^I^I" 11^Iend of Xxx
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test41.failed test.ok test.out X* viminfo
cp test41.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test41.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test41.in" 24 lines, 421 charactersTest for writing and reading a file of over 100 Kbyte

1 line: "This is the start"
3001 lines: "This is the leader"
1 line: "This is the middle"
3001 lines: "This is the trailer"
1 line: "This is the end"

STARTTEST
:%d
aThis is the start
This is the leader
This is the middle
This is the trailer
This is the end^[kY3000p2GY3000p
:w! Xtest
:%d
:e! Xtest
:.w! test.out
3003G:.w >>test.out
6005G:.w >>test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for writing and reading a file of over 100 Kbyte[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 13 lines, 196 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c%d
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1cThis is the start
This is the leaderThis is the middleThis is the trailerThis is the end[?25h[?0c[?25l[?1c3000 more linestrailer
This is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailerThis is the trailer[?25h[?0c[?25l[?1cleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleaderleader[?25h[?0c
[?25l[?1c:[?25h[?0cw! Xtest
[?25l[?1c"Xtest" [New File] 6005 lines, 117092 characters written[?25h[?0c[?25l[?1c:[?25h[?0c%d
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest
[?25l[?1c"Xtest" 6005 lines, 117092 charactersThis is the start
This is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leaderThis is the leader[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 18 characters written[?25h[?0c[?25l[?1cThis is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the leader
This is the middle
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 19 characters appended[?25h[?0c[?25l[?1cThis is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the trailer
This is the end
[?25h[?0c[?25l[?1c
:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 16 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test42.failed test.ok test.out X* viminfo
cp test42.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test42.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test42.in" 130 lines, 2368 charactersTest for writing and reading a file starting with a BOM

STARTTEST
:so mbyte.vim
:set encoding=utf-8
:set fileencodings=ucs-bom,latin-1
:set ff=unix ffs=unix" This changes the file for DOS and MAC
:" --- Write the test files
:/^latin-1$/+1w! Xtest0
:/^utf-8$/+1w! Xtest1
:/^utf-8-err$/+1w! Xtest2
:/^ucs-2$/+1w! Xtest3
:/^ucs-2le$/+1w! Xtest4
:" Need to add a NUL byte after the NL byte
:set bin
:e! Xtest4" Ignore change from setting 'ff'
o^V^@^[:set noeol
:w
:set ffs& nobinary" Allow default test42.in format
:e #
:set ff=unix" Format for files to write
:/^ucs-4$/+1w! Xtest5
:/^ucs-4le$/+1w! Xtest6[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for writing and reading a file starting with a BOM[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 111 lines, 2116 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e! test.out
:$r Xtest0x
:$r Xtest1x
:$r Xtest2x
:$r Xtest3x
:$r Xtest4x
:$r Xtest5x
:$r Xtest6x
:set nobin ff&" Write the file in default format
:w! test.out
:qa!
ENDTEST

latin-1
utf-8
utf-8
utf-8-err
utf-8~@err
ucs-2
ucs-2le
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1c:e! test.out
:$r Xtest0x
:$r Xtest1x
:$r Xtest2x
:$r Xtest3x
:$r Xtest4x
:$r Xtest5x
:$r Xtest6x
:set nobin ff&" Write the file in default format
:w! test.out
:qa!
ENDTEST

latin-1
<fe><fe>latin-1
utf-8
<feff>utf-8
utf-8-err
<feff>utf-8<80>err
ucs-2
<fe><ff>^@u^@c^@s^@-^@2^@
ucs-2le
<ff><fe>u^@c^@s^@-^@2^@l^@e^@[?25h[?0c[?25l[?1c:[?25h[?0cset fileencodings=ucs-bom,latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ff=unix ffs=unix           " This changes the file for DOS and MAC
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Write the test files
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^latin-1$/+1w! Xtest0
[?25l[?1c"Xtest0" [New File] 1 line, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^utf-8$/+1w! Xtest1
[?25l[?1c"Xtest1" [New File] 1 line, 9 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^utf-8-err$/+1w! Xtest2
[?25l[?1c"Xtest2" [New File] 1 line, 13 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^ucs-2$/+1w! Xtest3
[?25l[?1c"Xtest3" [New File] 1 line, 14 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^ucs-2le$/+1w! Xtest4
[?25l[?1c"Xtest4" [New File] 1 line, 17 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" Need to add a NUL byte after the NL byte
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset bin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest4                      " Ignore change from setting 'ff'
[?25l[?1c"Xtest4" 1 line, 17 characters<ff><fe>u^@c^@s^@-^@2^@l^@e^@
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c
[?25l[?1c^@[?25h[?0c[?25l[?1c:[?25h[?0cset noeol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtest4" [Incomplete last line] 2 lines, 18 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset ffs& nobinary              " Allow default test42.in format
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce #
[?25l[?1c"test42.in" [converted] 130 lines, 2385 characters:$r Xtest0x:$r Xtest1x
:$r Xtest2x:$r Xtest3x:$r Xtest4x:$r Xtest5x:$r Xtest6x:set nobin ff&               " Write the file in default format:w! test.out:qa!ENDTESTlatin-1þþlatin-1utf-8utf-8utf-8-errutf-8<80>errucs-2þÿ^@u^@c^@s^@-^@2^@ucs-2leÿþu^@c^@s^@-^@2^@l^@e^@ucs-4[?25h[?0c[?25l[?1c:[?25h[?0cset ff=unix                    " Format for files to write
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^ucs-4$/+1w! Xtest5
[?25l[?1c"Xtest5" [converted][New File] 1 line, 30 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^ucs-4le$/+1w! Xtest6
[?25l[?1c"Xtest6" [converted][New File] 1 line, 35 characters written[?25h[?0c[?25l[?1c:[?25h[?0c" Need to add three NUL bytes after the NL byte
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset bin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest6                      " ! for when setting 'ff' is a change
[?25l[?1c"Xtest6" 1 line, 33 characters<ff><fe>^@^@u^@^@^@c^@^@^@s^@^@^@-^@^@^@4^@^@^@l^@^@^@e^@^@^@
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c
~   [?25l[?1c
^@^@^@[?25h[?0c[?25l[?1c:[?25h[?0cset noeol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtest6" [Incomplete last line] 2 lines, 36 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset nobin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce #
[?25l[?1c"test42.in" [converted] 130 lines, 2385 characters:$r Xtest0x:$r Xtest1x
:$r Xtest2x:$r Xtest3x:$r Xtest4x:$r Xtest5x:$r Xtest6x:set nobin ff&               " Write the file in default format:w! test.out:qa!ENDTESTlatin-1þþlatin-1utf-8utf-8utf-8-errutf-8<80>errucs-2þÿ^@u^@c^@s^@-^@2^@ucs-2leÿþu^@c^@s^@-^@2^@l^@e^@ucs-4[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that editing a latin-1 file doesn't see a BOM
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest0
[?25l[?1c"Xtest0" [converted] 1 line, 12 charactersþþlatin-1~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0credir! >test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=latin1

nobomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cþþlatin-1
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 12 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset bomb fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest0x
[?25l[?1c"Xtest0x" [converted][New File] 1 line, 12 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check utf-8
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest1
[?25l[?1c"Xtest1" 1 line, 9 charactersutf-8[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=utf-8

  bomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cutf-8
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 6 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=utf-8
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest1x
[?25l[?1c"Xtest1x" [New File] 1 line, 9 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check utf-8 with an error (will fall back to latin-1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest2
[?25l[?1c"Xtest2" [converted] 1 line, 17 charactersutf-8<80>err
[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=latin1

nobomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cutf-8<80>err
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 17 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=utf-8
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest2x
[?25l[?1c"Xtest2x" [New File] 1 line, 17 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check ucs-2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest3
[?25l[?1c"Xtest3" [converted] 1 line, 8 charactersucs-2[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=utf-16

  bomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cucs-2
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 6 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=ucs-2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest3x
[?25l[?1c"Xtest3x" [converted][New File] 1 line, 8 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check ucs-2le
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest4
[?25l[?1c"Xtest4" [converted] 1 line, 10 charactersle
[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=utf-16le

  bomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cucs-2le
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 8 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=ucs-2le
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest4x
[?25l[?1c"Xtest4x" [converted][New File] 1 line, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check ucs-4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest5
[?25l[?1c"Xtest5" [converted] 1 line, 10 characters4[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=ucs-4

  bomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cucs-4
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 6 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=ucs-4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest5x
[?25l[?1c"Xtest5x" [converted][New File] 1 line, 10 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check ucs-4le
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest6
[?25l[?1c"Xtest6" [converted] 1 line, 12 charactersle
[?25h[?0c[?25l[?1c:[?25h[?0credir >>test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileencoding bomb?
[?25l[?1c  fileencoding=ucs-4le

  bomb

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1cucs-4le
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset fenc=latin-1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" [converted] 1 line, 8 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=ucs-4le
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest6x
[?25l[?1c"Xtest6x" [converted][New File] 1 line, 12 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check the files written with BOM
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset bin
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 35 lines, 275 characters  fileencoding=latin1nobomb<fe><fe>latin-1  fileencoding=utf-8  bombutf-8  fileencoding=latin1nobomb<feff>utf-8<80>err  fileencoding=utf-16  bombucs-2  fileencoding=utf-16le[?25h[?0c[?25l[?1c:[?25h[?0c$r Xtest0x
[?25l[?1c"Xtest0x" 1 line, 10 charactersbomb
ucs-2lefileencoding=ucs-4
  bomb
ucs-4fileencoding=ucs-4le
  bomb
ucs-4le
<fe><fe>latin-1[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest1x
[?25l[?1c"Xtest1x" 1 line, 9 characters
<feff>utf-8[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest2x
[?25l[?1c"Xtest2x" 1 line, 17 characters
utf-8<80>err[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest3x
[?25l[?1c"Xtest3x" 1 line, 14 characters
<fe><ff>^@u^@c^@s^@-^@2^@[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest4x
[?25l[?1c"Xtest4x" [Incomplete last line] 2 lines, 18 characters
<ff><fe>u^@c^@s^@-^@2^@l^@e^@[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest5x
[?25l[?1c"Xtest5x" 1 line, 28 characters^@
^@^@<fe><ff>^@^@^@u^@^@^@c^@^@^@s^@^@^@-^@^@^@4^@^@^@[?25h[?0c[?25l[?1c
:[?25h[?0c$r Xtest6x
[?25l[?1c"Xtest6x" [Incomplete last line] 2 lines, 36 characters
<ff><fe>^@^@u^@^@^@c^@^@^@s^@^@^@-^@^@^@4^@^@^@l^@^@^@e^@^@^@[?25h[?0c[?25l[?1c
:[?25h[?0cset nobin ff&               " Write the file in default format
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" 44 lines, 409 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test43.failed test.ok test.out X* viminfo
cp test43.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test43.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test43.in" 34 lines, 473 charactersTests for regexp with various magic settings.

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
/^1
/a*b\{2}c\+/e
x/\Md\*e\{2}f\+/e
x:set nomagic
/g\*h\{2}i\+/e
x/\mj*k\{2}l\+/e
x/\vm*n{2}o+/e
x/\V^aa$
x:set magic
/\v(a)(b)\2\1\1/e
x/\V[ab]\(\[xy]\)\1
x:$
:set undolevels=100
dv?bar?
Yup:"
:?^1?,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for regexp with various magic settings.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 19 lines, 268 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^1
[?25l[?1c
1 a aa abb abbccc[?25h[?0c[?25l[?1c
/[?25h[?0ca*b\{2}c\+/e
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\Md\*e\{2}f\+/e
[?25l[?1c
2 d dd dee deefff[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0cset nomagic
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cg\*h\{2}i\+/e
[?25l[?1c
3 g gg ghh ghhiii[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
/[?25h[?0c\mj*k\{2}l\+/e
[?25l[?1c
4 j jj jkk jkklll[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
/[?25h[?0c\vm*n{2}o+/e
[?25l[?1c
5 m mm mnn mnnooo[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
/[?25h[?0c\V^aa$
[?25l[?1c
6 x ^aa$ x[?25h[?0c[?25l[?1caa$ x[?25h[?0c[?25l[?1c
:[?25h[?0cset magic
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\v(a)(b)\2\1\1/e
[?25l[?1c
7 (a)(b) abbaa[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
/[?25h[?0c\V[ab]\(\[xy]\)\1
[?25l[?1c
8 axx [ab]xx[?25h[?0c[?25l[?1cab]x[?25h[?0c[?25l[?1c
:[?25h[?0c$
[?25l[?1c9 foobar[?25h[?0c[?25l[?1c
:[?25h[?0cset undolevels=100
[?25l[?1c[?25h[?0c[?25l[?1c?[?25h[?0cbar?
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c

1 more line; before #2  0 seconds agobar[?25h[?0c[?25l[?1c
9 foo
[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c?^1?,$w! test.out
[?25l[?1c"test.out" [New] 11L, 137C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test44.failed test.ok test.out X* viminfo
cp test44.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test44.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test44.in" 82 lines, 2703 charactersTests for regexp with multi-byte encoding and various magic settings.
Test matchstr() with a count and multi-byte chars.
See test99 for exactly the same test with re=2.

STARTTEST
:so mbyte.vim
:set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
:set re=1
/^1
/a*b\{2}c\+/e
x/\Md\*e\{2}f\+/e
x:set nomagic
/g\*h\{2}i\+/e
x/\mj*k\{2}l\+/e
x/\vm*n{2}o+/e
x/\V^aa$
x:set magic
/\v(a)(b)\2\1\1/e
x/\V[ab]\(\[xy]\)\1
x:" Now search for multi-byte without composing char
/ม
x:" Now search for multi-byte with composing char
f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for regexp with multi-byte encoding and various magic settings.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
:new
:$put =['dog(a', 'cat(']
/(/e+
"ayn:bd!
:$put =''
G"ap
:w!
:qa!
ENDTEST

1 a aa abb abbccc
2 d dd dee deefff
3 g gg ghh ghhiii
4 j jj jkk jkklll
5 m mm mnn mnnooo
6 x ^aa$ x
7 (a)(b) abbaa
8 axx [ab]xx
:new
:$put =['dog(a', 'cat(']
/(/e+
"ayn:bd!
:$put =''
G"ap
:w!
:qa!
ENDTEST

1 a aa abb abbccc
2 d dd dee deefff
3 g gg ghh ghhiii
4 j jj jkk jkklll
5 m mm mnn mnnooo
6 x ^aa$ x
7 (a)(b) abbaa
8 axx [ab]xx
:[?25h[?0c" Test \%u, [\u] and friends
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" c
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\%u20ac
[?25l[?1c
:[?25h[?0c" d
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c[\u4f7f\u5929]\+
[?25l[?1c
:[?25h[?0c" e
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\%U12345678
[?25l[?1c
:[?25h[?0c" f
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c[\U1234abcd\u1234\uabcd]
[?25l[?1c
:[?25h[?0c" g
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\%d21879b
[?25l[?1c
:[?25h[?0c" h
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c [[=A=]]* [[=B=]]* [[=C=]]* [[=D=]]* [[=E=]]* [[=F=]]* [[=G=]]* [[=H=]]* [[=I=

]]* [[=J=]]* [[=K=]]* [[=L=]]* [[=M=]]* [[=N=]]* [[=O=]]* [[=P=]]* [[=Q=]]* [[=R

=]]* [[=S=]]* [[=T=]]* [[=U=]]* [[=V=]]* [[=W=]]* [[=X=]]* [[=Y=]]* [[=Z=]]*/e
[?25l[?1cPress ENTER or type command to continue[?25h[?0c[?25l[?1c:w!
:qa!
ENDTEST1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
:[?25h[?0c" i
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c [[=a=]]* [[=b=]]* [[=c=]]* [[=d=]]* [[=e=]]* [[=f=]]* [[=g=]]* [[=h=]]* [[=i=

]]* [[=j=]]* [[=k=]]* [[=l=]]* [[=m=]]* [[=n=]]* [[=o=]]* [[=p=]]* [[=q=]]* [[=r

=]]* [[=s=]]* [[=t=]]* [[=u=]]* [[=v=]]* [[=w=]]* [[=x=]]* [[=y=]]* [[=z=]]*/e
[?25l[?1cPress ENTER or type command to continue[?25h[?0c[?25l[?1c1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
:[?25h[?0c" j Test backwards search from a multi-byte char
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cx
[?25l[?1c
:[?25h[?0c?^1?,$w! test.out
[?25l[?1c"test.out" [New] 20L, 1011C written[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 20L, 1011C1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
6 x aa$ x7 (a)(b) abba
8 axx ab]xx
e y
7 (a)(b) abba
8 axx ab]xx
[?25h[?0c[?25l[?1ca[?25h[?0c[?25l[?1c
cat(
[?25h[?0c[?25l[?1c
:[?25h[?0cw!
[?25l[?1c"test.out" 26L, 1032C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test45.failed test.ok test.out X* viminfo
cp test45.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test45.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test45.in" 90 lines, 1953 charactersTests for folding. vim: set ft=vim :

STARTTEST
:so small.vim
:" We also need the +syntax feature here.
:if !has("syntax")
   e! test.ok
   w! test.out
   qa!
:endif
:" basic test if a fold can be created, opened, moving to the end and closed
/^1
zf2j:call append("$", "manual " . getline(foldclosed(".")))
zo:call append("$", foldclosed("."))
]z:call append("$", getline("."))
zc:call append("$", getline(foldclosed(".")))
:" test folding with markers.
:set fdm=marker fdl=1 fdc=3
/^5
:call append("$", "marker " . foldlevel("."))
[z:call append("$", foldlevel("."))
jo{{ ^[r{jj:call append("$", foldlevel("."))
kYpj:call append("$", foldlevel("."))[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for folding. vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 73 lines, 1820 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:new
iTest fdm=indent and :move bug END
line2Test fdm=indent STARTline3line4^[
:set fdm=indent
:1m1
2jzc:m0
:%w >> test.out
:qa!
ENDTEST

1 aa
2 bb
3 cc
4 dd {{{
5 ee {{{ }}}
6 ff }}}
7 gg
8 hh
9 ii
a jj[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" We also need the +syntax feature here.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("syntax")
[?25l[?1c
:  [?25h[?0c   e! test.ok

[?25l[?1c:  [?25h[?0c   w! test.out

[?25l[?1c:  [?25h[?0c   qa!

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:new
iTest fdm=indent and :move bug END
line2Test fdm=indent START[?25h[?0c[?25l[?1c:[?25h[?0c" basic test if a fold can be created, opened, moving to the end and closed
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^1
[?25l[?1c[?25h[?0c[?25l[?1c+--  3 lines: 1 aa--------------------------------------------------------------4 dd {{{
5 ee {{{ }}}
6 ff }}}
7 gg8 hh9 ii
a jj
b kk
last[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", "manual " . getline(foldclosed(".")))
[?25l[?1c[?25h[?0c[?25l[?1c1 aa2 bb3 cc4 dd {{{
5 ee {{{ }}}
6 ff }}}
7 gg
8 hh
9 ii
a jj[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldclosed("."))
[?25l[?1c[?25h[?0c

[?25l[?1c:[?25h[?0ccall append("$", getline("."))
[?25l[?1c[?25h[?0c[?25l[?1c+--  3 lines: 1 aa--------------------------------------------------------------4 dd {{{
5 ee {{{ }}}
6 ff }}}
7 gg8 hh9 ii
a jj
b kk
last[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", getline(foldclosed(".")))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test folding with markers.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fdm=marker fdl=1 fdc=3
[?25l[?1c   :new
   iTest fdm=indent and :move bug END
   line2
           Test fdm=indent START
           line3
           line4^[
   :set fdm=indent
   :1m1
   2jzc:m0
   :%w >> test.out
   :qa!
   ENDTEST
   
   1 aa   2 bb   3 cc-  4 dd {{{
|- 5 ee {{{ }}}
|  6 ff }}}
   7 gg
   8 hh
   9 ii
   a jj[?25h[?0c[?25l[?1c/[?25h[?0c^5
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", "marker " . foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c{{ |  6 ff }}}[?25h[?0c[?25l[?1c-{|
|
|
|[?25h[?0c[?25l[?1c


:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c6 ff }}}
 7 gg
 8 hh[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test folding with indent
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fdm=indent sw=2
[?25l[?1c-+ +---  3 lines: Test fdm=indent START-----------------------------------------:set fdm=indent:1m12jzc:m0%w >> test.out:qa!ENDTEST1 aa2 bb3 cc4 dd {{{5 ee {{{ }}}
 {{{  6 ff }}}  6 ff }}}
  7 gg 8 hh9 iia jj[?25h[?0c[?25l[?1c/[?25h[?0c^2 b
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c
-  2 bb[?25h[?0c[?25l[?1c
|-    3 cc[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", "indent " . foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test syntax folding
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fdm=syntax fdl=0
[?25l[?1c          Test fdm=indent START        line3        line4^[:set fdm=indent1m12jzc:m0:%w >> test.out:qa!ENDTEST
   1 aa  2 bb    3 cc4 dd {{{5 ee {{{ }}}{{{6 ff }}}6 ff }}}7 gg8 hh[?25h[?0c[?25l[?1c:[?25h[?0csyn region Hup start="dd" end="ii" fold contains=Fd1,Fd2,Fd3
[?25l[?1c+  +--  8 lines: 4 dd ----------------------------------------------------------a jjb kklastmanual 1 aa-13 cc[?25h[?0c[?25l[?1c:[?25h[?0csyn region Fd1 start="ee" end="ff" fold contained
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn region Fd2 start="gg" end="hh" fold contained
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn region Fd3 start="commentstart" end="commentend" fold contained
[?25l[?1c[?25h[?0c[?25l[?1c   1 aa
   marker 2
   1
   1
   0
   indent 2
   1[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", "folding " . getline("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", getline("."))
[?25l[?1c[?25h[?0c[?25l[?1c
--4 dd {{{commentstart  ||5 ee {{{ }}}
||{{{||6 ff }}}
||6 ff }}}||7 gg
||8 hh
||9 ii
||a jj||b kk
||last
||manual 1 aa
||-1||3 cc[?25h[?0c[?25l[?1c commentend- 
|-

| 
  
  
  
  
  
  [?25h[?0c[?25l[?1c:[?25h[?0cset fdl=1
[?25l[?1c+ +---  3 lines: 5 ee --------------------------------------------------------- 6 ff }}}+ +---  2 lines: 7 gg----------------------------------------------------------9 ii  a jj
  b kk
 lastmanual 1 aa-13 cc1 aamarker 21[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", getline("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fdl=0
[?25l[?1c+  +--  8 lines: 4 dd commentstart  commentend----------------------------------  a jj b kk  last manual 1 aa-13 cc1 aarker 2110indent[?25h[?0c[?25l[?1c
-4 dd {{{commentstart  commentend|-5 ee {{{ }}}
||{{{||6 ff }}}
|6 ff }}}|-7 gg
||8 hh
|9 iia jjb kklastmanual 1 aa-13 cc[?25h[?0c[?25l[?1c   :1m1
   2jzc:m0
   :%w >> test.out
   :qa!
   ENDTEST
   
   1 aa
     2 bb
       3 cc
-  4 dd {{{commentstart  commentend
|- 5 ee {{{ }}}
|| {{{
|| 6 ff }}}
|  6 ff }}}
|- 7 gg
|| 8 hh
|  9 ii
   a jj
   b kk
   last
   manual 1 aa
   -1
   3 cc[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", getline("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test expression folding
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfun Flvl()
[?25l[?1c
:  [?25h[?0c  let l = getline(v:lnum)

[?25l[?1c:  [?25h[?0c  if l =~ "bb$"

[?25l[?1c:    [?25h[?0c    return 2

[?25l[?1c:    [?25h[?0c  elseif l =~ "gg$"

[?25l[?1c:    [?25h[?0c    return "s1"

[?25l[?1c:    [?25h[?0c  elseif l =~ "ii$"

[?25l[?1c:    [?25h[?0c    return ">2"

[?25l[?1c:    [?25h[?0c  elseif l =~ "kk$"

[?25l[?1c:    [?25h[?0c    return "0"

[?25l[?1c:    [?25h[?0c  endif

[?25l[?1c:  [?25h[?0c  return "="

[?25l[?1c:  [?25h[?0cendfun
[?25l[?1c   :1m1
   2jzc:m0
   :%w >> test.out
   :qa!
   ENDTEST
   
   1 aa
     2 bb
       3 cc
-  4 dd {{{commentstart  commentend
|- 5 ee {{{ }}}
|| {{{[?25h[?0c[?25l[?1c:[?25h[?0cset fdm=expr fde=Flvl()
[?25l[?1c+  +-- 11 lines: 2 bb-----------------------------------------------------------b kk last  manual 1 aa  -1  3 cc 1 aa  marker 2
  1 10indent 21+  +--  4 lines: folding 9 ii---------------------------------------------------~                                                                            ~                                                                            [?25h[?0c[?25l[?1c/[?25h[?0cbb$
[?25l[?1csearch hit BOTTOM, continuing at TOP--  2 bb||    3 cc
||4 dd {{{commentstart  commentend
||5 ee {{{ }}}
||{{{
||6 ff }}}
||6 ff }}}
||7 gg|8 hh
|+ +---  2 lines: 9 ii----------------------------------------------------------b kklastmanual 1 aa
 -13 cc1 aa[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", "expr " . foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0chh$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cii$
[?25l[?1c-9 ii||a jjb kklastmanual 1 aa-13 cc[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0ckk$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", foldlevel("."))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^last/+1,$w! test.out
[?25l[?1c"test.out" [New File] 18 lines, 96 characters written[?25h[?0c[?25l[?1c:[?25h[?0cdelfun Flvl
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c  
  
  
  ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            ~                                                                            [No Name]                                                                       5 ee {{{ }}}{{{6 ff }}}|6 ff }}}|7 gg 8 hh
|-9 ii
||a jjb kklast
test45.in [+]                                                                   [?25h[?0c[?25l[?1cTest fdm=indent and :move bug ENDline2        Test fdm=indent START        line3        line4[+][?25h[?0c[?25l[?1c:[?25h[?0cset fdm=indent
[?25l[?1c+  +--  3 lines: Test fdm=indent START------------------------------------------~                                                                            ~                                                                            [?25h[?0c[?25l[?1c:[?25h[?0c1m1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cm0
[?25l[?1c3 lines moved+  +--  3 lines: Test fdm=indent START------------------------------------------Test fdm=indent and :move bug END
 line2[?25h[?0c[?25l[?1c:[?25h[?0c%w >> test.out
[?25l[?1c"test.out" 5 lines, 77 characters appendedtest.out [+] [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test46.failed test.ok test.out X* viminfo
cp test46.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test46.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test46.in" 27 lines, 431 charactersTests for multi-line regexps with ":s". vim: set ft=vim :

STARTTEST
:" 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/
:/^1/,$w! test.out
:qa!
ENDTEST

1 aa
bb
cc
2 dd
ee
3 ef
gh
4 ij
5 a8
8b c9[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for multi-line regexps with ":s". vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 8 lines, 292 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" test if replacing a line break works with a back reference
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^1/,/^2/s/\n\(.\)/ \1/
[?25l[?1c4 substitutions on 1 line1 aa bb cc 2 dd ee9d
6 e7
77f
xxxxx4 substitutions on 1 line[?25h[?0c[?25l[?1c:[?25h[?0c" test if inserting a line break works with a back reference
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^3/,/^4/s/\(.\)$/\r\1/
[?25l[?1c3 substitutions on 3 linesfgh
4 i
j3 substitutions on 3 lines[?25h[?0c[?25l[?1c:[?25h[?0c" test if replacing a line break with another line break works
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^5/,/^6/s/\(\_d\{3}\)/x\1x/
[?25l[?1c3 substitutions on 2 linesx8
8xb cx9
9xd
6 ex7
7x7f3 substitutions on 2 lines[?25h[?0c[?25l[?1c:[?25h[?0c/^1/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 13 lines, 70 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test47.failed test.ok test.out X* viminfo
cp test47.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test47.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test47.in" 103 lines, 2206 charactersTests for vertical splits and filler lines in diff mode

Also tests restoration of saved options by :diffoff.

STARTTEST
:so small.vim
:" Disable the title to avoid xterm keeping the wrong one.
:set notitle noicon
/^1
yG:new
pkdd:w! Xtest
ddGpkkrXoxxx^[:w! Xtest2
:file Nop
ggoyyy^[jjjozzzz^[
:set foldmethod=marker foldcolumn=4
:redir => nodiffsettings
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END
:vert diffsplit Xtest
:vert diffsplit Xtest2
:redir => diffsettings
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for vertical splits and filler lines in diff mode[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 91 lines, 2051 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:windo :bw!
:enew
:put =range(4,10)
:1d _
:vnew
:put =range(1,10)
:1d _
:windo :diffthis
:wincmd h
:let w0=line('w0')
:enew
:put =w0
:.w >> test.out
:unlet! one two three nodiffsettings diffsettings diff_fdm diff_fdc nd1 nd2 nd3
w0
:qa!
ENDTEST

1 aa
2 bb
3 cc
4 dd
5 ee[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Disable the title to avoid xterm keeping the wrong one.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset notitle noicon
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^1
[?25l[?1c[?25h[?0c[?25l[?1c5 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       enewput =w0:.w >> test.out
:unlet! one two three nodiffsettings diffsettings diff_fdm diff_fdc nd1 nd2 nd3
w0:qa!
ENDTEST1 aa
2 bb
test47.in                                                                       [?25h[?0c[?25l[?1c5 more lines1 aa2 bb3 cc4 dd5 ee[+][?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest
[?25l[?1c"Xtest" [New File] 5 lines, 25 characters writtenXtest        [?25h[?0c[?25l[?1c
~                                                                               [+][?25h[?0c


[?25l[?1c
1 aa[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cxxx[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtest2
[?25l[?1c"Xtest2" [New File] 6 lines, 29 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cfile Nop
[?25l[?1c"Nop" [Not edited] line 4 of 6 --66%-- col 3Nop  [?25h[?0c[?25l[?1cyyy[+][?25h[?0c
3 
X 
xx[?25l[?1czzzz[?25h[?0c
5 e[?25l[?1c:[?25h[?0cset foldmethod=marker foldcolumn=4
[?25l[?1c    2 bb
    yyy
    3 cc
    X dd
    xxx
    zzzz
    5 ee
    1 aa
    
    
    ~~~[?25h[?0c[?25l[?1c:[?25h[?0credir => nodiffsettings
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent! :set diff? fdm? fdc? scb? crb? wrap?
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvert diffsplit Xtest
[?25l[?1c"Xtest" 5 lines, 25 characters1 aa                                  |2 bb |--------------------------------------|3 cc  |4 dd                                  |--------------------------------------|--------------------------------------|5 ee  ||||--------------------------------------~  ~  
Xtest    -------------------------------------  2 bb  yyy                                    3 cc  X dd                                   xxx                                    zzzz                                   5 ee  1 aa                                     ~~Nop [+]                                [?25h[?0c[?25l[?1c:[?25h[?0cvert diffsplit Xtest2
[?25l[?1c"Xtest2" 6 lines, 29 characters  ------------------------|
  2 bb|
  ------------------------|
  3 cc|
  X dd                    |
  xxx                     |
  ------------------------|
  5 ee|
  1 aa                    |||  
  ~                       ~                       
Xtest2                       1 aa                    |  2 bb|  ------------------------|  3 cc|  4 dd                    |  ------------------------|  ------------------------|  5 ee||||  ------------------------    ~                       ~                       Xtest                        ------------------------  2 bb  yyy                       3 cc  X dd                      xxx                       zzzz                      5 ee  1 aa                        ~                       ~                       Nop [+]                   :enew
:put =w0
:.w >> test.out
:unlet! one two three nodiffsettings diffsettings diff_fdm diff_fdc nd1 nd2 nd3
w0
:qa!
ENDTEST

1 aa
2 bb
test47.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0credir => diffsettings
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent! :set diff? fdm? fdc? scb? crb? wrap?
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet diff_fdm = &fdm
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet diff_fdc = &fdc
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" repeat entering diff mode here to see if this saves the wrong settings
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdiffthis
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" jump to second window for a moment to have filler line appear at start of
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" first window
[?25l[?1c[?25h[?0c[?25l[?1cXtest2                     Xtest                      [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cXtest2                     Xtest                      [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = one . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = one . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = one . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = one . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet one = one . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c


Xtest2                     Xtest                      [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet two = winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet two = two . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet two = two . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet two = two . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet two = two . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1cXtest                      Nop [+]                   [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet three = three . "-" . winline()
[?25l[?1c[?25h[?0cNop [+]                   test47.in                                                                       [?25l[?1c:[?25h[?0ccall append("$", one)
[?25l[?1c[+][?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", two)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append("$", three)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$-2,$w! test.out
[?25l[?1c"test.out" [New File] 3 lines, 36 characters written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test diffoff
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdiffoff!
[?25l[?1c  
    2 bb  3 cc                    X dd  xxx                     5 ee                    1 aa                    
    
    
    ~                     ~                     ~~  1 aa                    2 bb  3 cc                    4 dd  5 ee                              ~                     ~                     ~                     ~                     ~~  2 bb  yyy  3 cc  X dd  xxx  zzzz  5 ee  1 aa      ~                     ~~[?25h[?0c[?25l[?1c    2 bb                  
    3 cc                  
    X dd                  
    xxx                   
    5 ee                  
    1 aa                  
    ~                     
    ~                     
    ~                     
    ~                     
                          
    ~                     
Xtest2                     test47.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0clet &diff = 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet &fdm = diff_fdm
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet &fdc = diff_fdc
[?25l[?1c2 bb  3 cc  X dd  xxx  5 ee  1 aa  ~  ~  ~  ~  ~  [?25h[?0cXtest2                     test47.in [+]                                                                   
[?25l[?1c:[?25h[?0cdiffoff!
[?25l[?1c  2 bb  3 cc  X dd  xxx  5 ee  1 aa  
    
    
    
    ~~~~~[?25h[?0c[?25l[?1c:[?25h[?0c$put =nodiffsettings
[?25l[?1c8 more lines1-2-4-5-8
2-3-4-5-6-7-8nodiff
  foldmethod=marker
  foldcolumn=4
noscrollbind
nocursorbind
  wrap
  [?25h[?0c[?25l[?1c:[?25h[?0c$put =diffsettings
[?25l[?1c8 more linediff
  foldmethod=diff
  foldcolumn=2
  scrollbind
  cursorbind
nowrap8 more lines[?25h[?0cXtest2                     test47.in [+]                                                                   [?25l[?1c:[?25h[?0credir => nd1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent! :set diff? fdm? fdc? scb? crb? wrap?
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0cXtest2                     Xtest                      [?25l[?1c:[?25h[?0credir => nd2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent! :set diff? fdm? fdc? scb? crb? wrap?
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0cXtest                      Nop [+]                   [?25l[?1c:[?25h[?0credir => nd3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent! :set diff? fdm? fdc? scb? crb? wrap?
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0cNop [+]                   test47.in [+]                                                                   [?25l[?1c:[?25h[?0c$put =nd1
[?25l[?1c8 more linesnodiff
  foldmethod=marker
  foldcolumn=4
noscrollbind
nocursorbind
  wrap8 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =nd2
[?25l[?1c8 more linesnodiff
  foldmethod=marker
  foldcolumn=4
noscrollbind
nocursorbind
  wrap8 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =nd3
[?25l[?1c8 more linesnodiff
  foldmethod=marker
  foldcolumn=4
noscrollbind
nocursorbind
  wrap8 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$-39,$w >> test.out
[?25l[?1c"test.out" 40 lines, 383 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test that diffing shows correct filler lines
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo :bw!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cenew
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cput =range(4,10)
[?25l[?1c7 more lines45678910[?25h[?0c[?25l[?1c:[?25h[?0c1d _
[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cvnew
[?25l[?1c ||||||||||||||||||||||~                                       
~                                       
~                                       
~                                       
~                                       
~                                       [No Name]                                45678910~~~~~~~~~~~~~~~[No Name] [+]                          [?25h[?0c[?25l[?1c:[?25h[?0cput =range(1,10)
[?25l[?1c10 more lines1                                       
2                                       
3                                       
4                                       
5                                       
6                                       
7                                       
8                                       
9                                       
10                                      [+][?25h[?0c[?25l[?1c:[?25h[?0c1d _
[?25l[?1c1                                       
2                                       
3                                       
4                                       
5                                       
6                                       
7                                       
8                                       
9                                       
10                                      
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
                                        
~                                       [?25h[?0c[?25l[?1c:[?25h[?0cwindo :diffthis
[?25l[?1c  1                                     
  2                                     
  3                                     
  4
  5
  6
  7
  8
  9
- 10
  
  
  
  
  
  
  
  
  
  
  
  ~~~~~~~~~~~~
[No Name] [+]                              -------------------------------------  -------------------------------------  -------------------------------------  4  5  6  7  8  9- 10                        ~~~~~~~~~~~~[No Name] [+]                          [?25h[?0c[?25l[?1c:[?25h[?0cwincmd h
[?25l[?1c[No Name] [+]                            [No Name] [+]                          [?25h[?0c[?25l[?1c:[?25h[?0clet w0=line('w0')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cenew
[?25l[?1cE37: No write since last change (add ! to override)[?25h[?0c[?25l[?1c:[?25h[?0cput =w0
[?25l[?1c123                                     45678
 9 
-10                                    -------------------------------------45678 9-10[?25h[?0c[?25l[?1c:[?25h[?0c.w >> test.out
[?25l[?1c"test.out" 1 line, 2 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cunlet! one two three nodiffsettings diffsettings diff_fdm diff_fdc nd1 nd2 nd3

w0
[?25l[?1c  1                                     |  -------------------------------------[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test48.failed test.ok test.out X* viminfo
cp test48.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test48.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test48.in" 83 lines, 1658 charactersThis is a test of 'virtualedit'.

STARTTEST
:so small.vim
:set noswf
:set ve=all
-dgg
:"
:"   Insert "keyword keyw", ESC, C CTRL-N, shows "keyword ykeyword".
:"    Repeating CTRL-N fixes it. (Mary Ellen Foster)
2/w
C^N^[
:"
:"   Using "C" then then <CR> moves the last remaining character to the next
:"    line.  (Mary Ellen Foster)
j^/are
C^Mare belong to vim^[
:"
:"   When past the end of a line that ends in a single character "b" skips
:"    that word.
^$15lbC7^[
:"
:"   Make sure 'i' works[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cThis is a test of 'virtualedit'.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 61 lines, 1442 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set display=
:"
:"   Test for ^Y/^E due to bad w_virtcol value, reported by
:"   Roy <royl@netropolis.net>.
^O^[3li^E^[4li^E^[4li^E   <-- should show the name of a noted text editor^[
^o^[4li^Y^[4li^Y^[4li^Y   <-- and its version number^[-dd
:"
:" Test for yanking and pasting using the small delete register
gg/^foo
dewve"-p
:wq! test.out
ENDTEST
foo, bar
keyword keyw
all your base are belong to us
1 2 3 4 5 6
'i'
'C'
'a'
'A'
'D'
this is a test
this is a test[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noswf
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ve=all
[?25l[?1c[?25h[?0c[?25l[?1c65 fewer linesthis is a test
"r"
"r"
a^Vb^Msd
abcv6efi.him0kl


~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               65 fewer lines[?25h[?0c
[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Insert "keyword keyw", ESC, C CTRL-N, shows "keyword ykeyword".
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    Repeating CTRL-N fixes it. (Mary Ellen Foster)
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cw
[?25l[?1c[?25h[?0c[?25l[?1c$Scanning tags.
The only matchword[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Using "C" then then <CR> moves the last remaining character to the next
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    line.  (Mary Ellen Foster)
[?25l[?1c[?25h[?0c
[?25l[?1c/[?25h[?0care
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c$are belong to vim
1 2 3 4 5 6
'i
'C
'a
'A
'D'this is a test

"r"     
a^Vb^Msdabcv6efi.him0kl[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   When past the end of a line that ends in a single character "b" skips
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    that word.
[?25l[?1c[?25h[?0c
[?25l[?1c$7[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Make sure 'i' works
[?25l[?1c[?25h[?0c
'i'   [?25l[?1c<-- should be 3 ' '[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Make sure 'C' works
[?25l[?1c[?25h[?0c
'C'   [?25l[?1c$<-- should be 3 ' '[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Make sure 'a' works
[?25l[?1c[?25h[?0c
'a'   [?25l[?1c <-- should be 4 ' '[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Make sure 'A' works
[?25l[?1c[?25h[?0c
'A'   [?25l[?1c<-- should be 0 ' '[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Make sure 'D' works
[?25l[?1c[?25h[?0c
'D'   [?25l[?1c<-- 'D' should be intact[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Test for yank bug reported by Mark Waggoner.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ve=block
[?25l[?1c[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1caaa[?25h[?0c[?25l[?1caaablock of 4 lines yanked[?25h[?0c[?25l[?1c3 more linesa
aa [?25h[?0c
[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test "r" beyond the end of the line
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ve=all
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^"r"
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c"r"    [?25l[?1cx[?25h[?0c[?25l[?1cx<-- should be 'x'[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test "r" on a tab
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Note that for this test, 'ts' must be 8 (the default).
[?25l[?1c[?25h[?0c
"r"  [?25l[?1cx[?25h[?0c[?25l[?1cx  <-- should be '  x  '[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Test to make sure 'x' can delete control characters
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset display=uhex
[?25l[?1c<16>b<0d>sd[?25h[?0c
[?25l[?1c<16>b<0d>sd[?25h[?0c[?25l[?1cb<0d>sd[?25h[?0c[?25l[?1c<0d>sd[?25h[?0c[?25l[?1csd[?25h[?0c[?25l[?1cd[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c[This line should contain only the text between the brackets.][?25h[?0c[?25l[?1c:[?25h[?0cset display=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Test for ^Y/^E due to bad w_virtcol value, reported by
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"   Roy <royl@netropolis.net>.
[?25l[?1c[?25h[?0c
[?25l[?1c[?25h[?0c   [?25l[?1cv[?25h[?0cv   [?25l[?1ci[?25h[?0ci   [?25l[?1cm   <-- should show the name of a noted text editor[?25h[?0c
[?25l[?1c[?25h[?0c    [?25l[?1c6[?25h[?0c6   [?25l[?1c.[?25h[?0c.   [?25l[?1c0   <-- and its version number[?25h[?0c[?25l[?1c
[?25h[?0c
    [?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test for yanking and pasting using the small delete register
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^foo
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c, bar[?25h[?0c, [?25l[?1c[?25h[?0c[?25l[?1cba[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cfoo[?25h[?0c
keyw[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New File] 23 lines, 479 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test49.failed test.ok test.out X* viminfo
cp test49.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test49.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test49.in" 30 lines, 631 charactersThis is a test of the script language.

If after adding a new test, the test output doesn't appear properly in
test49.failed, try to add one or more "G"s at the line ending in "test.out"

STARTTEST
:so small.vim
:se nocp nomore viminfo+=nviminfo
:lang mess C
:so test49.vim
GGGGGGGGGGGGGG"rp:.-,$w! test.out
:"
:" make valgrind happy
:redir => funclist
:silent func
:redir END
:for line in split(funclist, "\n")
:  let name = matchstr(line, 'function \zs[A-Z]\w*\ze(')
:  if name != ''
:    exe "delfunc " . name
:  endif
:endfor
:for v in keys(g:)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cThis is a test of the script language.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 21 lines, 401 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:  silent! exe "unlet " . v
:endfor
:unlet v
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cse nocp nomore viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang mess C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso test49.vim
[?25l[?1cError detected while processing function G:

line   16:

E171: Missing :endif:     endwhile

*** Test   1: OK (34695)

   function F()

1      Xpath 1" X: 1

2      let first = 1

3      XloopINIT 2 8

4      while 1

5Xloop 1" X: 2      + 0 * 16

6if first

7Xloop 2" X: 4      + 0 * 32

8let first = 0

9XloopNEXT

10break

11else

12Xloop 4" X: 0      + 0 * 64

13return

14endif

15     endwhile

   endfunction"/tmp/vUlLC8C/0"[noeol] 18L, 528C
15 substitutions on 15 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/0" 15L, 476C written
"test49.in" 30L, 631C
   function G()
1      Xpath 256" X: 256    + 0 * 2048
2      let first = 1
3      XloopINIT 512 8
4      while 1
5Xloop 1" X: 512    + 0 * 4096
6if first
7Xloop 2" X: 1024   + 0 * 8192
8let first = 0
9XloopNEXT
10break
11else
12Xloop 4" X: 0      + 0 * 16384
13return

14endif

15if 1    " unmatched :if

16     endwhile

   endfunction"/tmp/vUlLC8C/1"[noeol] 19L, 588C
16 substitutions on 16 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/1" 16L, 534C written
"test49.in" 30L, 631C
Error detected while processing /tmp/vUlLC8C/1:
line   16:
E171: Missing :endif:      endwhile
*** Test   2: OK (34695)
*** Test   3: OK (1384648195)
*** Test   4: OK (32883)
   function F()
1      if 1
2Xpath 1" X: 1
3let loops = 3
4XloopINIT 2 16
5while loops > 0"    3:  2:     1:
6Xloop 1" X: 2 + 2*16 + 0*16*16
7if (loops == 2)
8Xloop 2" X:     4*16

9return

10Xloop 4" X:     0

11endif

12Xloop 8" X: 16

13let loops = loops - 1

14XloopNEXT

15endwhile

16Xpath 8192" X: 0

17     else

18Xpath 16384" X: 0

19     endif

   endfunction"/tmp/vUlLC8C/2"[noeol] 22L, 784C
19 substitutions on 19 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/2" 19L, 724C written
"test49.in" 30L, 631C
*** Test   5: OK (32883)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"/tmp/vUlLC8C/3" [New] 53L, 1582C written14L, 358C appended26L, 824C appended34L, 986C appended
:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/4[?25h[?0c[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/4" 130L, 2431C appended131L, 2453C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/5[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/5"' -S /tmp/vUlLC8

C/4[?25h[?0c
[?25l[?1c"/tmp/vUlLC8C/5" 21L, 130C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test   6: OK (603978947)

Error detected while processing /«PKGBUILDDIR»/src/vim-basic/tes

tdir/test49.vim:

line  976:

E492: Not an editor command: ^Iasdf

line  988:

E492: Not an editor command: ^Iasdf

line  996:

E492: Not an editor command: asdf

line  999:

E492: Not an editor command: asdf | Xpath 32768^I^I^I^I" X: 0

*** Test   7: OK (90563)

Error detected while processing function F:

line    5:

E492: Not an editor command: ^I    asdf

line    7:

E492: Not an editor command: ^I    asdf | Xpath 8^I^I^I" X: 0

line   19:

E492: Not an editor command: ^I    asdf

line   21:

E492: Not an editor command: ^I    asdf | Xpath 2048^I^I^I" X: 0

line   29:

E121: Undefined variable: novar

E15: Invalid expression: novar^I^I" returns (default return value 0)

Error detected while processing function G:

line    5:

E492: Not an editor command: ^I    asdf^I^I" returns -1

Error detected while processing function H:

line    5:

E492: Not an editor command: ^I    asdf^I^I" returns -1

*** Test   8: OK (562493431)

Error detected while processing function F[2]..G[2]..H[2]..I:

line    2:

E492: Not an editor command:     asdf^I^I" error

*** Test   9: OK (363)

Error detected while processing /«PKGBUILDDIR»/src/vim-basic/tes

tdir/test49.vim:

line 1201:

E15: Invalid expression: | strlen("\"") | Xpath 512^I^I" X: 0

E15: Invalid expression: 1 ||| strlen("\"") | Xpath 512^I^I" X: 0

line 1211:

E15: Invalid expression: | strlen("\"") | Xpath 8192^I^I" X: 0

E15: Invalid expression: 1 ||| strlen("\"") | Xpath 8192^I^I" X: 0

line 1220:

E15: Invalid expression: | strlen("\"") | Xpath 131072^I^I" X: 0

E15: Invalid expression: 1 ||| strlen("\"") | Xpath 131072^I^I" X: 0

*** Test  10: OK (559615)

line 1252:

E492: Not an editor command:     asdf^I^I" error

*** Test  11: OK (2049)

1
line 1330:

E492: Not an editor command:     asdf^I^I" error

line 1338:

E492: Not an editor command:     asdf^I^I" error

*** Test  12: OK (352256)

line 1357:

E121: Undefined variable: asdf

E15: Invalid expression: asdf

line 1368:

E121: Undefined variable: asdf

E15: Invalid expression: asdf | Xpath 32 | endwhile | Xpath 64^I" X: 0

*** Test  13: OK (145)

Error detected while processing function F:

line    8:

E121: Undefined variable: g:boolvar

E15: Invalid expression: g:boolvar^I" possibly undefined

*** Test  14: OK (42413)

E121: Undefined variable: g:boolvar

E15: Invalid expression: g:boolvar | Xloop 8 | else | Xloop 16 | endif    " X: 

8
*** Test  15: OK (42413)

line    5:

E583: multiple :else:     else^I^I

Error detected while processing function G:

line    5:

E584: :elseif after :else:     elseif 1^I^I" aborts function

Error detected while processing function H:

line    7:

E583: multiple :else:     else^I^I

Error detected while processing function I:

line    7:

E584: :elseif after :else:     elseif 1^I^I" aborts function

*** Test  16: OK (8722)

Error detected while processing function F:

line   18:

E171: Missing :endif:     endwhile^I

E171: Missing :endif:     endwhile^I

line   34:

E171: Missing :endif:     endwhile^I

E171: Missing :endif:     endwhile^I

E171: Missing :endif:     endwhile^I

line   47:

E580: :endif without :if: ^Iendif^I

E580: :endif without :if: ^Iendif^I

E580: :endif without :if: ^Iendif^I

Error detected while processing /«PKGBUILDDIR»/src/vim-basic/tes

tdir/test49.vim:

line 1626:

E171: Missing :endif: endwhile 

*** Test  17: OK (285127993)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/6[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/6" 16L, 304C appended17L, 326C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/7[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/7"' -c 'breakad

dfile 8 /tmp/vUlLC8C/6' -S /tmp/vUlLC8C/6[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/7" 3L, 6C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/8[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/8" 6L, 127C appended7L, 149C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/9[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/9"' -c 'breakad

dfile 4 /tmp/vUlLC8C/8' -S /tmp/vUlLC8C/8[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/9" 1L, 5C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/10[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/10" 21L, 486C appended22L, 508C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/11[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/11"' -c 'breaka

dd func 7 F' -S /tmp/vUlLC8C/10[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/11" 3L, 18C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/12[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/12" 13L, 364C appended14L, 386C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/13[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/13"' -c 'breaka

dd func 3 G' -S /tmp/vUlLC8C/12[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/13" 1L, 9C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  18: OK (67224583)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/14[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/14" 12L, 201C appended13L, 223C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/15[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/15"' -S /tmp/vUlLC

8C/14[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/15" 2L, 4C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/16[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/16" 12L, 205C appended13L, 227C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/17[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/17"' -S /tmp/vUlLC

8C/16[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/17" 2L, 7C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/18[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/18" 6L, 122C appended7L, 144C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/19[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/19"' -S /tmp/vUlLC

8C/18[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/19" 1L, 5C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/20[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/20" 8L, 176C appended9L, 198C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/21[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/21"' -S /tmp/vUlLC

8C/20[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/21" 1L, 6C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/22[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/22" 10L, 215C appended11L, 237C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/23[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/23"' -S /tmp/vUlLC

8C/22[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/23" 1L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/24[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/24" 7L, 149C appended8L, 171C8L, 170C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/25[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/25"' -S /tmp/vUlLC

8C/24[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/25" 1L, 9C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  19: OK (69275973)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/26[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/26" 9L, 135C appended10L, 157C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/27[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/27"' -S /tmp/vUlLC

8C/26[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/27" 2L, 4C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/28[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/28" 10L, 155C appended11L, 177C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/29[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/29"' -S /tmp/vUlLC

8C/28[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/29" 3L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/30[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/30" 12L, 204C appended13L, 226C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/31[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/31"' -S /tmp/vUlLC

8C/30[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/31" 4L, 18C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/32[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/32" 12L, 214C appended13L, 236C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/33[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/33"' -S /tmp/vUlLC

8C/32[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/33" 4L, 22C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/34[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/34" 12L, 211C appended13L, 233C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/35[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/35"' -S /tmp/vUlLC

8C/34[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/35" 3L, 22C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/36[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/36" 14L, 263C appended15L, 285C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/37[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/37"' -S /tmp/vUlLC

8C/36[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/37" 4L, 34C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/38[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/38" 14L, 277C appended15L, 299C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/39[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/39"' -S /tmp/vUlLC

8C/38[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/39" 4L, 40C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  20: OK (1874575085)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/40[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/40" 58L, 1022C appended59L, 1044C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/41[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/41"' -S /tmp/vUlLC

8C/40[?25h[?0c
[?25l[?1c"/tmp/vUlLC8C/41" 9L, 56C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  21: OK (147932225)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/42[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/42" 23L, 418C appended24L, 440C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/43[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/43"' -S /tmp/vUlLC

8C/42[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/43" 1L, 2C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/44[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/44" 23L, 437C appended24L, 459C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/45[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/45"' -c 'breaka

dd func 2 Interrupt' -S /tmp/vUlLC8C/44[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/45" 1L, 3C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/46[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/46" 21L, 386C appended22L, 408C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/47[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/47"' -S /tmp/vUlLC

8C/46[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/47" 1L, 5C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  22: OK (4161)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/48[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/48" 25L, 432C appended26L, 454C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/49[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/49"' -S /tmp/vUlLC

8C/48[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/49" 3L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  23: OK (49)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/50[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/50" 16L, 392C appended17L, 414C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/51[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/51"' -S /tmp/vUlLC

8C/50[?25h[?0c
[?25l[?1c"/tmp/vUlLC8C/51" 3L, 7C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  24: OK (41)

*** Test  25: OK (260177811)

*** Test  26: OK (1681500476)

*** Test  27: OK (1996459)

   function F()

1      try

2Xpath 1" X: 1

3try

4Xpath 2" X: 2

5return

6Xpath 4" X: 0

7finally

8Xpath 8" X: 8

9endtry

10Xpath 16" X: 0

11     finally

12Xpath 32" X: 32

13     endtry

14     Xpath 64" X: 0

   endfunction"/tmp/vUlLC8C/52"[noeol] 17L, 552C
14 substitutions on 14 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/52" 14L, 502C written
"test49.in" 30L, 631C
   function G()
1      try
2Xpath 128" X: 128
3return
4Xpath 256" X: 0
5      finally
6Xpath 512" X: 512
7call F()
8Xpath 1024" X: 1024
9      endtry
10     Xpath 2048" X: 0
   endfunction"/tmp/vUlLC8C/53"[noeol] 13L, 406C
10 substitutions on 10 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/53" 10L, 378C written
"test49.in" 30L, 631C
   function H()
1      try
2Xpath 4096" X: 4096
3call G()
4Xpath 8192" X: 8192
5      finally
6Xpath 16384" X: 16384
7return
8Xpath 32768" X: 0
9      endtry

10     Xpath 65536" X: 0

   endfunction"/tmp/vUlLC8C/54"[noeol] 13L, 409C
10 substitutions on 10 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/54" 10L, 381C written
"test49.in" 30L, 631C
*** Test  28: OK (1996459)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/55[?25h[?0c[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/55" 39L, 721C appended40L, 743C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/56[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/56"' -S /tmp/vUlLC

8C/55[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/56" 6L, 21C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/57[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/57" 23L, 509C appended24L, 531C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/58[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/58"' -S /tmp/vUlLC

8C/57[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/58" 4L, 34C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  29: OK (170428555)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/59[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/59" 60L, 1101C appended61L, 1123C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/60[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nv

iminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/60"' -

c'breakadd func 3 F' -c 'breakadd file 19 /tmp/vUlLC8C/59' -c 'breakadd file 31

/tmp/vUlLC8C/59' -S /tmp/vUlLC8C/59[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/60" 16L, 89C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  30: OK (190905173)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/61[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/61" 60L, 1122C appended61L, 1144C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/62[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/62"' -S /tmp/vUlLC

8C/61[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/62" 16L, 89C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  31: OK (190905173)

*** Test  32: OK (354833067)

*** Test  33: OK (1216907538)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/63[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/63" 63L, 1288C appended64L, 1310C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/64[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vi

minfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC

8C/64"' -c 'breakadd func 16 C' -S /tmp/vUlLC8C/63[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/64" 17L, 127C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  34: OK (2146584868)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/65[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/65" 63L, 1285C appended64L, 1307C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/66[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vi

minfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC

8C/66"' -c 'breakadd func 16 B' -S /tmp/vUlLC8C/65[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/66" 17L, 127C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  35: OK (2146584868)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/67[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/67" 66L, 1430C appended67L, 1452C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/68[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vimin

fo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/

68"' -c 'breakadd func 16 R' -S /tmp/vUlLC8C/67[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/68" 9L, 81C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  36: OK (1071644672)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/69[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/69" 73L, 1488C appended74L, 1510C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/70[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/70"' -c 'breakadd

func 16 F' -S /tmp/vUlLC8C/69[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/70" 9L, 81C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  37: OK (1071644672)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/71[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/71" 82L, 1519C appended83L, 1541C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/72[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vi

minfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC

8C/72"' -c 'breakadd func 16 E' -S /tmp/vUlLC8C/71[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/72" 8L, 63C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  38: OK (357908480)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/73[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/73" 83L, 1538C appended84L, 1560C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/74[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -

c'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVi

mResult = "/tmp/vUlLC8C/74"' -c 'breakadd func 16 I' -c 'breakadd func 22 I' -S

/tmp/vUlLC8C/73[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/74" 8L, 63C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  39: OK (357908480)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/75[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/75" 82L, 1519C appended83L, 1541C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/76[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vi

minfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC

8C/76"' -c 'breakadd func 16 T' -S /tmp/vUlLC8C/75[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/76" 8L, 63C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  40: OK (357908480)

*** Test  41: OK (3076095)

*** Test  42: OK (1505155949)

*** Test  43: OK (1157763329)

*** Test  44: OK (1031761407)

*** Test  45: OK (1157763329)

*** Test  46: OK (739407)

*** Test  47: OK (371213935)

*** Test  48: OK (756255461)

*** Test  49: OK (179000669)

   function C()

1      try

2Xpath 1" X: 1

3throw "arrgh"

4Xpath 2" X: 0

5      catch /arrgh/

6Xpath 4" X: 4

7      endtry

8      Xpath 8" X: 8

   endfunction"/tmp/vUlLC8C/77"[noeol] 11L, 334C
8 substitutions on 8 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/77" 8L, 295C written
"test49.in" 30L, 631C
   function T1()
1      XloopNEXT
2      try
3Xloop 1" X: 16 + 16*16
4throw "arrgh"
5Xloop 2" X: 0
6      finally

7Xloop 4" X: 64 + 64*16

8      endtry

9      Xloop 8" X: 0

   endfunction"/tmp/vUlLC8C/78"[noeol] 12L, 364C
9 substitutions on 9 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/78" 9L, 323C written
"test49.in" 30L, 631C
   function T2()
1      try
2Xpath 4096" X: 4096
3call T1()
4Xpath 8192" X: 0
5      finally
6Xpath 16384" X: 16384
7      endtry

8      Xpath 32768" X: 0

   endfunction"/tmp/vUlLC8C/79"[noeol] 11L, 332C
8 substitutions on 8 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/79" 8L, 305C written
"test49.in" 30L, 631C
*** Test  50: OK (363550045)
*** Test  51: OK (40744667)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/81[?25h[?0c[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/81" 2L, 41C appended3L, 63C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/82[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/82"' -S /tmp/vUlLC8C/81[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/82" 1L, 2C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 8L, 182C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/83[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/83" 7L, 115C appended8L, 137C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/84[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/84"' -S /tmp/vUlLC8C/83[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/84" 1L, 2C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 8L, 181C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/85[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/85" 12L, 180C appended13L, 202C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/86[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/86"' -S /tmp/vUlLC8C/85[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/86" 2L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 10L, 209C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/87[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/87" 8L, 139C appended9L, 161C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/88[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/88"' -S /tmp/vUlLC8C/87[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/88" 2L, 11C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 10L, 217C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/89[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/89" 5L, 87C appended6L, 109C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/90[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir!

>/tmp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin =

1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/90"' -c 'breakadd file 4 /tmp/vUlLC8C

/89' -S /tmp/vUlLC8C/89[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/90" 1L, 7C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" [noeol] 9L, 202C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/91[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/91" 7L, 189C appended8L, 211C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/92[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/92"' -S /tmp/vUlLC8C/91[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/92" 1L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 9L, 252C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/93[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/93" 7L, 199C appended8L, 221C8L, 220C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/94[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/80' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/94"' -S /tmp/vUlLC8C/93[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/94" 1L, 10C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/80" 9L, 214C
"test49.in" 30L, 631C

*** Test  52: OK (1247112011)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/96[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/96" 1L, 10C appended2L, 32C2L, 31C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/97[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/97"' -S /tmp/vUlLC8C/96[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/97" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 154C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/98[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/98" 3L, 39C appended4L, 61C

3 substitutions on 3 lines
"/tmp/vUlLC8C/98" 4L, 58C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/99[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/99"' -S /tmp/vUlLC8C/98[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/99" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 158C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/100[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/100" 4L, 45C appended5L, 67C

4 substitutions on 4 lines
"/tmp/vUlLC8C/100"5L, 63C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/101[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/101"' -S /tmp/vUlLC8C/100[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/101" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 159C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/102[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/102" 3L, 33C appended4L, 55C

3 substitutions on 3 lines
"/tmp/vUlLC8C/102"4L, 52C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/103[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/103"' -S /tmp/vUlLC8C/102[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/103" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 159C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/104[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/104" 5L, 65C appended6L, 87C

5 substitutions on 5 lines
"/tmp/vUlLC8C/104"6L, 82C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/105[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/105"' -S /tmp/vUlLC8C/104[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/105" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 159C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/106[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/106" 1L, 9C appended2L, 31C2L, 30C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/107[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/107"' -S /tmp/vUlLC8C/106[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/107" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 153C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/108[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/108" 3L, 38C appended4L, 60C

3 substitutions on 3 lines
"/tmp/vUlLC8C/108"4L, 57C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/109[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/109"' -S /tmp/vUlLC8C/108[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/109" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 157C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/110[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/110" 4L, 44C appended5L, 66C

4 substitutions on 4 lines
"/tmp/vUlLC8C/110"5L, 62C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/111[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/111"' -S /tmp/vUlLC8C/110[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/111" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 157C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/112[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/112" 3L, 32C appended4L, 54C

3 substitutions on 3 lines
"/tmp/vUlLC8C/112"4L, 51C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/113[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/113"' -S /tmp/vUlLC8C/112[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/113" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 157C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/114[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/114" 5L, 64C appended6L, 86C

5 substitutions on 5 lines
"/tmp/vUlLC8C/114"6L, 81C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/115[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/115"' -S /tmp/vUlLC8C/114[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/115" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 157C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/116[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/116" 1L, 11C appended2L, 33C2L, 32C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/117[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/117"' -S /tmp/vUlLC8C/116[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/117" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 157C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/118[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/118" 3L, 40C appended4L, 62C

3 substitutions on 3 lines
"/tmp/vUlLC8C/118"4L, 59C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/119[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/119"' -S /tmp/vUlLC8C/118[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/119" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 161C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/120[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/120" 4L, 46C appended5L, 68C

4 substitutions on 4 lines
"/tmp/vUlLC8C/120"5L, 64C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/121[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/121"' -S /tmp/vUlLC8C/120[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/121" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 161C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/122[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/122" 3L, 34C appended4L, 56C

3 substitutions on 3 lines
"/tmp/vUlLC8C/122"4L, 53C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/123[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/123"' -S /tmp/vUlLC8C/122[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/123" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 161C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/124[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/124" 5L, 66C appended6L, 88C

5 substitutions on 5 lines
"/tmp/vUlLC8C/124"6L, 83C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/125[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/125"' -S /tmp/vUlLC8C/124[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/125" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 161C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/126[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/126" 4L, 37C appended5L, 59C

4 substitutions on 4 lines
"/tmp/vUlLC8C/126"5L, 55C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/127[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/127"' -S /tmp/vUlLC8C/126[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/127" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 150C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/128[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/128" 4L, 41C appended5L, 63C

4 substitutions on 4 lines
"/tmp/vUlLC8C/128"5L, 59C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/129[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/95' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1'

-c 'let ExtraVimResult = "/tmp/vUlLC8C/129"' -S /tmp/vUlLC8C/128[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/129" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/95" 6L, 159C
"test49.in" 30L, 631C

*** Test  53: OK (131071)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/131[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/131" 1L, 13C appended2L, 35C2L, 34C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/132[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/132"' -S /tmp/vUlLC8C/131[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/132" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 164C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/133[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/133" 3L, 36C appended4L, 58C

3 substitutions on 3 lines
"/tmp/vUlLC8C/133"4L, 55C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/134[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/134"' -S /tmp/vUlLC8C/133[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/134" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 168C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/135[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/135" 3L, 38C appended4L, 60C

3 substitutions on 3 lines
"/tmp/vUlLC8C/135"4L, 57C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/136[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/136"' -S /tmp/vUlLC8C/135[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/136" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 154C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/137[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/137" 4L, 48C appended5L, 70C

4 substitutions on 4 lines
"/tmp/vUlLC8C/137"5L, 66C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/138[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/138"' -S /tmp/vUlLC8C/137[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/138" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 168C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/139[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/139" 4L, 53C appended5L, 75C

4 substitutions on 4 lines
"/tmp/vUlLC8C/139"5L, 71C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/140[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/140"' -S /tmp/vUlLC8C/139[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/140" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 155C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/141[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/141" 5L, 62C appended6L, 84C

5 substitutions on 5 lines
"/tmp/vUlLC8C/141"6L, 79C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/142[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/142"' -S /tmp/vUlLC8C/141[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/142" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 155C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/143[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/143" 5L, 64C appended6L, 86C

5 substitutions on 5 lines
"/tmp/vUlLC8C/143"6L, 81C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/144[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/144"' -S /tmp/vUlLC8C/143[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/144" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 154C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/145[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/145" 3L, 36C appended4L, 58C

3 substitutions on 3 lines
"/tmp/vUlLC8C/145"4L, 55C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/146[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/146"' -S /tmp/vUlLC8C/145[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/146" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 168C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/147[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/147" 5L, 67C appended6L, 89C

5 substitutions on 5 lines
"/tmp/vUlLC8C/147"6L, 84C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/148[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/148"' -S /tmp/vUlLC8C/147[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/148" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 167C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/149[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/149" 5L, 68C appended6L, 90C

5 substitutions on 5 lines
"/tmp/vUlLC8C/149"6L, 85C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/150[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/150"' -S /tmp/vUlLC8C/149[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/150" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 168C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/151[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/151" 7L, 95C appended8L, 117C

7 substitutions on 7 lines
"/tmp/vUlLC8C/151"8L, 110C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/152[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/130' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/152"' -S /tmp/vUlLC8C/151[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/152" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/130" 6L, 167C
"test49.in" 30L, 631C

*** Test  54: OK (2047)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/154[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/154" 1L, 13C appended2L, 35C2L, 34C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/155[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/155"' -S /tmp/vUlLC8C/154[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/155" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 172C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/156[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/156" 3L, 36C appended4L, 58C

3 substitutions on 3 lines
"/tmp/vUlLC8C/156"4L, 55C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/157[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/157"' -S /tmp/vUlLC8C/156[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/157" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 176C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/158[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/158" 4L, 48C appended5L, 70C

4 substitutions on 4 lines
"/tmp/vUlLC8C/158"5L, 66C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/159[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/159"' -S /tmp/vUlLC8C/158[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/159" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 176C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/160[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/160" 3L, 36C appended4L, 58C

3 substitutions on 3 lines
"/tmp/vUlLC8C/160"4L, 55C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/161[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/161"' -S /tmp/vUlLC8C/160[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/161" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 176C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/162[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/162" 5L, 68C appended6L, 90C

5 substitutions on 5 lines
"/tmp/vUlLC8C/162"6L, 85C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/163[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/163"' -S /tmp/vUlLC8C/162[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/163" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 176C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/164[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/164" 1L, 10C appended2L, 32C2L, 31C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/165[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/165"' -S /tmp/vUlLC8C/164[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/165" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 166C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/166[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/166" 3L, 33C appended4L, 55C

3 substitutions on 3 lines
"/tmp/vUlLC8C/166"4L, 52C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/167[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/167"' -S /tmp/vUlLC8C/166[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/167" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 170C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/168[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/168" 4L, 45C appended5L, 67C

4 substitutions on 4 lines
"/tmp/vUlLC8C/168"5L, 63C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/169[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/169"' -S /tmp/vUlLC8C/168[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/169" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 170C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/170[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/170" 3L, 33C appended4L, 55C

3 substitutions on 3 lines
"/tmp/vUlLC8C/170"4L, 52C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/171[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/171"' -S /tmp/vUlLC8C/170[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/171" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 170C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/172[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/172" 5L, 65C appended6L, 87C

5 substitutions on 5 lines
"/tmp/vUlLC8C/172"6L, 82C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/173[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/153' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/173"' -S /tmp/vUlLC8C/172[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/173" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/153" 6L, 170C
"test49.in" 30L, 631C

*** Test  55: OK (1023)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/175[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/175" 1L, 11C appended2L, 33C2L, 32C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/176[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/176"' -S /tmp/vUlLC8C/175[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/176" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 158C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/177[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/177" 3L, 34C appended4L, 56C

3 substitutions on 3 lines
"/tmp/vUlLC8C/177"4L, 53C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/178[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/178"' -S /tmp/vUlLC8C/177[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/178" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 162C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/179[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/179" 3L, 40C appended4L, 62C

3 substitutions on 3 lines
"/tmp/vUlLC8C/179"4L, 59C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/180[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/180"' -S /tmp/vUlLC8C/179[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/180" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 162C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/181[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/181" 3L, 32C appended4L, 54C

3 substitutions on 3 lines
"/tmp/vUlLC8C/181"4L, 51C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/182[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/182"' -S /tmp/vUlLC8C/181[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/182" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 152C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/183[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/183" 3L, 35C appended4L, 57C

3 substitutions on 3 lines
"/tmp/vUlLC8C/183"4L, 54C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/184[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/184"' -S /tmp/vUlLC8C/183[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/184" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 155C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/185[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/185" 4L, 44C appended5L, 66C

4 substitutions on 4 lines
"/tmp/vUlLC8C/185"5L, 62C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/186[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/186"' -S /tmp/vUlLC8C/185[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/186" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 152C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/187[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/187" 4L, 47C appended5L, 69C

4 substitutions on 4 lines
"/tmp/vUlLC8C/187"5L, 65C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/188[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/188"' -S /tmp/vUlLC8C/187[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/188" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 155C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/189[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/189" 5L, 64C appended6L, 86C

5 substitutions on 5 lines
"/tmp/vUlLC8C/189"6L, 81C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/190[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/190"' -S /tmp/vUlLC8C/189[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/190" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 152C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/191[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/191" 5L, 67C appended6L, 89C

5 substitutions on 5 lines
"/tmp/vUlLC8C/191"6L, 84C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/192[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'au VimLeave * redir END' -c 'redir! >/t

mp/vUlLC8C/174' -c 'debuggreedy|set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1

'-c 'let ExtraVimResult = "/tmp/vUlLC8C/192"' -S /tmp/vUlLC8C/191[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/192" 0L, 0C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/tmp/vUlLC8C/174" 6L, 155C
"test49.in" 30L, 631C

*** Test  56: OK (511)

   function FuncException()

1      let g:exception = v:exception

   endfunction"/tmp/vUlLC8C/193" [noeol] 4L, 80C
Pattern not found: ^\s*$
"/tmp/vUlLC8C/193"1L, 36C written
"test49.in" 30L, 631C
   function FuncThrowpoint()

1      let g:throwpoint = v:throwpoint

   endfunction"/tmp/vUlLC8C/194" [noeol] 4L, 83C
Pattern not found: ^\s*$
"/tmp/vUlLC8C/194"1L, 38C written
"test49.in" 30L, 631C
   function T(arg, line)

1      if a:line == 2

2throw a:arg" in line 2

3      elseif a:line == 4

4throw a:arg" in line 4

5      elseif a:line == 6

6throw a:arg" in line 6

7      elseif a:line == 8

8throw a:arg" in line 8

9      endif

   endfunction"/tmp/vUlLC8C/195"[noeol] 12L, 341C
9 substitutions on 9 lines
8 substitutions on 8 lines
Pattern not found: ^\s*$
"/tmp/vUlLC8C/195"9L, 292C written
"test49.in" 30L, 631C
   function G(arg, line)
1      call T(a:arg, a:line)
   endfunction"/tmp/vUlLC8C/196"[noeol] 4L, 69C
Pattern not found: ^\s*$
"/tmp/vUlLC8C/196"1L, 30C written
"test49.in" 30L, 631C
   function F(arg, line)
1      call G(a:arg, a:line)
   endfunction"/tmp/vUlLC8C/197"[noeol] 4L, 69C
Pattern not found: ^\s*$
"/tmp/vUlLC8C/197"1L, 30C written
"test49.in" 30L, 631C
*** Test  57: OK (2147450880)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/198[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/198" 87L, 1700C appended88L, 1722C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/199[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/199"' -c 'break

add func 4 T' -S /tmp/vUlLC8C/198[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/199" 8L, 36C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  58: OK (624945)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/200[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/200" 293L, 5789C appended294L, 5811C

3 substitutions on 3 lines
"/tmp/vUlLC8C/200"294L, 5808C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/201[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo

'-c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/201"' -c 'br

eakadd file 115 /tmp/vUlLC8C/200' -c 'breakadd file 225 /tmp/vUlLC8C/200' -S /tm

p/vUlLC8C/200[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/201" 28L, 162C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  59: OK (2038431743)
"/n/o/n/w/r/i/t/a/b/l/e/_/f/i/l/e"
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/202[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/202" 33L, 765C appended34L, 787C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/203[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/203"' -c 'break

add file 7 /tmp/vUlLC8C/202' -S /tmp/vUlLC8C/202[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/203" 3L, 27C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  60: OK (311511339)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/204[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/204" 115L, 2272C appended116L, 2294C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/205[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set vimin

fo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/

205"' -c 'breakadd file 8 /tmp/vUlLC8C/204' -c 'breakadd file 36 /tmp/vUlLC8C/20

4' -c 'breakadd file 40 /tmp/vUlLC8C/204' -c 'breakadd file 69 /tmp/vUlLC8C/204'

-c 'breakadd file 95 /tmp/vUlLC8C/204' -c 'breakadd file 97 /tmp/vUlLC8C/204' -

S/tmp/vUlLC8C/204[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/205" 14L, 81C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  61: OK (374889517)

   function F()

1      while 1

2      " Missing :endwhile

   endfunction"/tmp/vUlLC8C/206"[noeol] 5L, 73C
Pattern not found: ^\s*$
"/tmp/vUlLC8C/206"2L, 40C written
"test49.in" 30L, 631C
*** Test  62: OK (286331153)
"/i/m/p/o/s/s/i/b/l/e" line 6342:

"/i/m/p/o/s/s/i/b/l/e" E212: Can't open file for writing

*** Test  63: OK (236978127)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/207[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/207" 149L, 2828C appended150L, 2850C

6 substitutions on 6 lines
"/tmp/vUlLC8C/207"150L, 2844C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/208[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/208"' -c 'break

add file 63 /tmp/vUlLC8C/207' -S /tmp/vUlLC8C/207[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/208" 16L, 97C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  64: OK (1499645335)

*** Test  65: OK (70187)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/209[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/209" 78L, 1520C appended79L, 1542C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/210[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/210"' -c 'break

add func 8 F' -S /tmp/vUlLC8C/209[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/210" 6L, 22C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  66: OK (5464)

*** Test  67: OK (212514423)

*** Test  68: OK (212514423)

*** Test  69: OK (8995471)

*** Test  70: OK (69544277)

*** Test  71: OK (34886997)

*** Test  72: OK (1789569365)

   function F0()

   endfunction

   function F1()

   endfunction

*** Test  73: OK (9032615)
"/tmp/vUlLC8C/211" [New File]
"test49.in" 30L, 631C
"/tmp/vUlLC8C/212" [New File]
"test49.in" 30L, 631C

*** Test  74: OK (224907669)

*** Test  75: OK (2000403408)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/213[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/213" 253L, 6369C appended254L, 6391C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/214[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|

set viminfo+=nviminfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp

/vUlLC8C/214"' -c 'breakadd func 2 INT' -S /tmp/vUlLC8C/213[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/214" 28L, 167C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  76: OK (1610087935)

Error detected while processing function ERR:

line    2:

E492: Not an editor command:     asdf

E492: Not an editor command:     asdf

E492: Not an editor command:     asdf

*** Test  77: OK (1388671)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/215[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/215" 161L, 4543C appended162L, 4565C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/216[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/216"' -S /tmp/vUlL

C8C/215[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/216" 1L, 10C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  78: OK (134217728)

Error detected while processing function NEXT:

line    1:

E121: Undefined variable: novar

E15: Invalid expression: novar | Xloop 1

E121: Undefined variable: novar

E488: Trailing characters

E108: No such variable: "novar"

E488: Trailing characters

E121: Undefined variable: novar

E15: Invalid expression: novar

E475: Invalid argument: {novar} | Xloop 1

E121: Undefined variable: novar

E15: Invalid expression:  novar

E475: Invalid argument: { novar} | Xloop 1

*** Test  79: OK (70288929)

Error detected while processing /«PKGBUILDDIR»/src/vim-basic/tes

tdir/test49.vim:

line 8828:

E584: :elseif after :else: elseif 1 ||| 2

line 8838:

E584: :elseif after :else: elseif 1 ||| 2

line 8846:

E582: :elseif without :if: elseif 1 ||| 2

line 8854:

E582: :elseif without :if:     elseif 1 ||| 2

*** Test  80: OK (17895765)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/217[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/217" 15L, 272C appended16L, 294C16L, 293C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/218[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/218"' -S /tmp/vUlL

C8C/217[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/218" 2L, 4C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/219[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/219" 12L, 227C appended13L, 249C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/220[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/220"' -c 'break

add file 8 /tmp/vUlLC8C/219' -S /tmp/vUlLC8C/219[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/220" 2L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  81: OK (387)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/221[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/221" 20L, 417C appended21L, 439C21L, 438C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/222[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/222"' -S /tmp/vUlL

C8C/221[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/222" 1L, 2C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/223[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/223" 24L, 480C appended25L, 502C25L, 501C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/224[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/224"' -S /tmp/vUlL

C8C/223[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/224" 1L, 4C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/225[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/225" 17L, 390C appended18L, 412C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/226[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/226"' -c 'break

add file 7 /tmp/vUlLC8C/225' -S /tmp/vUlLC8C/225[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/226" 1L, 6C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/227[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/227" 21L, 444C appended22L, 466C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/228[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/228"' -c 'break

add func 6 I' -S /tmp/vUlLC8C/227[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/228" 1L, 8C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  82: OK (8454401)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/229[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/229" 17L, 307C appended18L, 329C18L, 328C written
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/230[?25h[?0c
[?25l[?1c:!echo 'q' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -c '

let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/230"' -S /tmp/vUlL

C8C/229[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/230" 3L, 7C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/231[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/231" 14L, 266C appended15L, 288C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/232[?25h[?0c
[?25l[?1c:!echo 'q^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo' -

c'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/232"' -c 'break

add file 8 /tmp/vUlLC8C/231' -S /tmp/vUlLC8C/231[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/232" 3L, 13C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  83: OK (2835)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/233[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/233" 154L, 3580C appended155L, 3602C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/234[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nviminfo

'-c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/234"' -c 'br

eakadd func 1 INT' -S /tmp/vUlLC8C/233[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/234" 18L, 118C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  84: OK (934782101)

TMP
"/tmp/vUlLC8C/235" [noeol] 2L, 6C/  
"test49.in" 30L, 631C
"/n/o/n/e/x/i/s/t/e/n/t"

"/tmp/vUlLC8C/237" 1L, 1C
"test49.in" 30L, 631C

:!echo XYZ >/tmp/vUlLC8C/238[?25h[?0c
[?25l[?1c"/tmp/vUlLC8C/239" [New File]
"test49.in" 30L, 631C

*** Test  85: OK (198689)

line 9612:

E123: Undefined function: F

*.mak
"*.mak" [New File]

Cannot open file "*.mak"

line 9615:

E480: No match: .*

line 9616:

E193: :endfunction not inside a function

Error detected while processing function ExecAsScript[2]..MakeScript:

line    3:

E123: Undefined function: F
"/tmp/vUlLC8C/240" [noeol] 4L, 109C

search hit BOTTOM, continuing at TOP
line   10:
E486: Pattern not found: .*F(.*)

search hit BOTTOM, continuing at TOP
line   11:
E486: Pattern not found: ^\d*\s*endfunction\>

4 substitutions on 4 lines
"/tmp/vUlLC8C/240"3L, 109C written
"test49.in" 30L, 631C

Error detected while processing /tmp/vUlLC8C/240:

line    1:

E492: Not an editor command: Error detected while processing function ExecAsScr

ipt[2]..MakeScript:

line    2:

E492: Not an editor command: line    3:

line    3:

E492: Not an editor command: E123: Undefined function: F

Error detected while processing /«PKGBUILDDIR»/src/vim-basic/tes

tdir/test49.vim:

line 9622:

E130: Unknown function: F

*** Test  86: OK (0)

5
*** Test  87: OK (0)
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!echo 'source /tmp/vUlLC8C/3' >/tmp/vUlLC8C/241[?25h[?0c
[?25l[?1c/^\s*if\s\+ExtraVim(.*)/+
1
"/tmp/vUlLC8C/241" 151L, 3929C appended152L, 3951C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C

:!>/tmp/vUlLC8C/242[?25h[?0c
[?25l[?1c:!echo 'q^Mq^Mq^Mq' | ../vim -u NONE -N -Xes -c 'debuggreedy|set viminfo+=nvimi

nfo' -c 'let ExtraVimBegin = 1' -c 'let ExtraVimResult = "/tmp/vUlLC8C/242"' -c

'breakadd func 5 ThrowOnInterrupt' -S /tmp/vUlLC8C/241[?25h[?0c

shell returned 1

[?25l[?1c"/tmp/vUlLC8C/242" 16L, 281C
"/«PKGBUILDDIR»/src/vim-basic/testdir/test49.vim"
<wblUMy/vim-7.4.963/src/vim-basic/testdir/test49.vim" [readonly] 9852L, 225485C
"test49.in" 30L, 631C

*** Test  88: OK (50443995)

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:se nocp nomore viminfo+=nviminfo
:lang mess C
:so test49.vim
GGGGGGGGGGGGGG"rp:.-,$w! test.out
:"
:" make valgrind happy
:redir => funclist
:silent func
:redir END
:for line in split(funclist, "\n")
:  let name = matchstr(line, 'function \zs[A-Z]\w*\ze(')
:  if name != ''
:    exe "delfunc " . name
:  endif
:endfor
:for v in keys(g:)
:  silent! exe "unlet " . v
:endfor
:unlet v
:qa!
ENDTEST

Results of test49.vim:[?25h[?0c
[?25l[?1c
98 more lines
*** Test   1: OK (34695)98 more lines[?25h[?0c[?25l[?1c:[?25h[?0c.-,$w! test.out
[?25l[?1c"test.out" [New] 99L, 2869C written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" make valgrind happy
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir => funclist
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csilent func
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor line in split(funclist, "\n")
[?25l[?1c
:  [?25h[?0c:  let name = matchstr(line, 'function \zs[A-Z]\w*\ze(')

[?25l[?1c:  [?25h[?0c:  if name != ''

[?25l[?1c:    [?25h[?0c:    exe "delfunc " . name

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c:lang mess C
:so test49.vim
GGGGGGGGGGGGGG"rp:.-,$w! test.out
:"
:" make valgrind happy[?25h[?0c[?25l[?1c
:[?25h[?0cfor v in keys(g:)
[?25l[?1c
:  [?25h[?0c:  silent! exe "unlet " . v

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c:lang mess C
:so test49.vim[?25h[?0c[?25l[?1c
:[?25h[?0cunlet v
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test51.failed test.ok test.out X* viminfo
cp test51.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test51.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test51.in" 36 lines, 808 charactersTests for ":highlight". vim: set ft=vim :

STARTTEST
:so small.vim
:" basic test if ":highlight" doesn't crash
:highlight
:hi Search
:" test setting colors.
:" test clearing one color and all doesn't generate error or warning
:hi NewGroup term=bold cterm=italic ctermfg=DarkBlue ctermbg=Grey gui= guifg=#00ff00 guibg=Cyan
:hi Group2 term= cterm=
:hi Group3 term=underline cterm=bold
:redir! >test.out
:hi NewGroup
:hi Group2
:hi Group3
:hi clear NewGroup
:hi NewGroup
:hi Group2
:hi Group2 NONE
:hi Group2
:hi clear[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for ":highlight". vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 31 lines, 746 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:hi Group3
:hi Crash term='asdf
:redir END
:" filter ctermfg and ctermbg, the numbers depend on the terminal
:e test.out
:%s/ctermfg=\d*/ctermfg=2/
:%s/ctermbg=\d*/ctermbg=3/
:" filter out possibly translated error message
:%s/E475: [^:]*:/E475:/
:" fix the fileformat
:set ff&
:wq!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" basic test if ":highlight" doesn't crash
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chighlight
[?25l[?1c
SpecialKey     xxx term=bold cterm=bold ctermfg=4 guifg=Cyan

NonTextxxx term=bold cterm=bold ctermfg=4 gui=bold guifg=Blue

Directory      xxx term=bold cterm=bold ctermfg=6 guifg=Cyan

ErrorMsgxxx term=standout cterm=bold ctermfg=7 ctermbg=1 guifg=White

guibg=Red

IncSearch      xxx term=reverse cterm=reverse gui=reverse

Searchxxx term=reverse ctermfg=0 ctermbg=3 guifg=Black guibg=Yellow

MoreMsgxxx term=bold cterm=bold ctermfg=2 gui=bold guifg=SeaGreen

ModeMsgxxx term=bold cterm=bold gui=bold

LineNrxxx term=underline cterm=bold ctermfg=3 guifg=Yellow

CursorLineNr   xxx term=bold cterm=bold ctermfg=3 gui=bold guifg=Yellow

Questionxxx term=standout cterm=bold ctermfg=2 gui=bold guifg=Green

StatusLine     xxx term=bold,reverse cterm=bold,reverse gui=bold,reverse

StatusLineNC   xxx term=reverse cterm=reverse gui=reverse

VertSplit      xxx term=reverse cterm=reverse gui=reverse

Titlexxx term=bold cterm=bold ctermfg=5 gui=bold guifg=Magenta

Visualxxx term=reverse cterm=reverse guibg=DarkGrey

VisualNOS      xxx cleared

WarningMsg     xxx term=standout cterm=bold ctermfg=1 guifg=Red

WildMenuxxx term=standout ctermfg=0 ctermbg=3 guifg=Black guibg=Yellow

Foldedxxx term=standout cterm=bold ctermfg=6 ctermbg=0 guifg=Cyan

guibg=DarkGrey

FoldColumn     xxx term=standout cterm=bold ctermfg=6 ctermbg=0 guifg=Cyan

guibg=Grey

DiffAddxxx term=bold ctermbg=4 guibg=DarkBlue

DiffChange     xxx term=bold ctermbg=5 guibg=DarkMagenta

DiffDelete     xxx term=bold cterm=bold ctermfg=4 ctermbg=6 gui=bold guifg=Blue

guibg=DarkCyan

DiffTextxxx term=reverse cterm=bold ctermbg=1 gui=bold guibg=Red

SignColumn     xxx term=standout cterm=bold ctermfg=6 ctermbg=0 guifg=Cyan

guibg=Grey

Concealxxx ctermfg=7 ctermbg=0 guifg=LightGrey guibg=DarkGrey

SpellBadxxx term=reverse ctermbg=1 gui=undercurl guisp=Red

SpellCapxxx term=reverse ctermbg=4 gui=undercurl guisp=Blue

SpellRare      xxx term=reverse ctermbg=5 gui=undercurl guisp=Magenta

SpellLocal     xxx term=underline ctermbg=6 gui=undercurl guisp=Cyan

Pmenuxxx ctermfg=0 ctermbg=5 guibg=Magenta

PmenuSelxxx cterm=bold ctermfg=0 ctermbg=0 guibg=DarkGrey

PmenuSbar      xxx ctermbg=7 guibg=Grey

PmenuThumb     xxx ctermbg=7 guibg=White

TabLinexxx term=underline cterm=bold,underline ctermfg=7 ctermbg=0

gui=underline guibg=DarkGrey

TabLineSel     xxx term=bold cterm=bold gui=bold

TabLineFill    xxx term=reverse cterm=reverse gui=reverse

CursorColumn   xxx term=reverse ctermbg=0 guibg=Grey40

CursorLine     xxx term=underline cterm=underline guibg=Grey40

ColorColumn    xxx term=reverse ctermbg=1 guibg=DarkRed

MatchParen     xxx term=reverse ctermbg=6 guibg=DarkCyan

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Search
[?25l[?1c
Searchxxx term=reverse ctermfg=0 ctermbg=3 guifg=Black guibg=Yellow

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c" test setting colors.
[?25l[?1c:hi NewGroup
:hi Group2
:hi Group3
:hi clear NewGroup
:hi NewGroup
:hi Group2
:hi Group2 NONE
:hi Group2
:hi clear
:hi Group3
:hi Crash term='asdf
:redir END
:" filter ctermfg and ctermbg, the numbers depend on the terminal
:e test.out
:%s/ctermfg=\d*/ctermfg=2/
:%s/ctermbg=\d*/ctermbg=3/
:" filter out possibly translated error message
:%s/E475: [^:]*:/E475:/
:" fix the fileformat
:set ff&
:wq!
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0c" test clearing one color and all doesn't generate error or warning
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chi NewGroup term=bold cterm=italic ctermfg=DarkBlue ctermbg=Grey gui= guifg=#0

0ff00 guibg=Cyan
[?25l[?1cE418: Illegal value: guifg=#00ff00Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group2 term= cterm=
[?25l[?1cE418: Illegal value: cterm=

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group3 term=underline cterm=bold
[?25l[?1c:hi NewGroup
:hi Group2[?25h[?0c[?25l[?1c
:[?25h[?0credir! >test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chi NewGroup
[?25l[?1c
NewGroupxxx term=bold cterm=italic ctermfg=4 ctermbg=7

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group2
[?25l[?1c
Group2xxx cleared

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group3
[?25l[?1c
Group3xxx term=underline cterm=bold

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi clear NewGroup
[?25l[?1c:hi NewGroup
:hi Group2
:hi Group3
:hi clear NewGroup
:hi NewGroup
:hi Group2[?25h[?0c[?25l[?1c
:[?25h[?0chi NewGroup
[?25l[?1c
NewGroupxxx cleared

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group2
[?25l[?1c
Group2xxx cleared

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Group2 NONE
[?25l[?1c:hi NewGroup
:hi Group2
:hi Group3
:hi clear NewGroup[?25h[?0c[?25l[?1c
:[?25h[?0chi Group2
[?25l[?1c
Group2xxx cleared

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi clear
[?25l[?1c:hi NewGroup
:hi Group2
:hi Group3
:hi clear NewGroup
:hi NewGroup
:hi Group2
:hi Group2 NONE
:hi Group2
:hi clear
:hi Group3
:hi Crash term='asdf
:redir END
:" filter ctermfg and ctermbg, the numbers depend on the terminal
:e test.out
:%s/ctermfg=\d*/ctermfg=2/
:%s/ctermbg=\d*/ctermbg=3/
:" filter out possibly translated error message
:%s/E475: [^:]*:/E475:/
:" fix the fileformat
:set ff&
:wq!
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0chi Group3
[?25l[?1c
Group3xxx cleared

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0chi Crash term='asdf
[?25l[?1cE475: Invalid argument: term='asdf

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c:hi NewGroup
:hi Group2
:hi Group3[?25h[?0c[?25l[?1c
:[?25h[?0c" filter ctermfg and ctermbg, the numbers depend on the terminal
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce test.out
[?25l[?1c"test.out" 20 lines, 289 charactersNewGroup       xxx term=bold cterm=italic ctermfg=4 ctermbg=7Group2         xxx clearedGroup3         xxx term=underline cterm=boldNewGroup       xxx clearedGroup2         xxx clearedGroup2         xxx clearedGroup3         xxx clearedE475: Invalid argument: term='asdf
~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c%s/ctermfg=\d*/ctermfg=2/
[?25l[?1c2
[?25h[?0c[?25l[?1c:[?25h[?0c%s/ctermbg=\d*/ctermbg=3/
[?25l[?1c3
[?25h[?0c[?25l[?1c:[?25h[?0c" filter out possibly translated error message
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%s/E475: [^:]*:/E475:/
[?25l[?1cterm='asdf[?25h[?0c[?25l[?1c:[?25h[?0c" fix the fileformat
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ff&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwq!
[?25l[?1c"test.out" 20 lines, 271 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test52.failed test.ok test.out X* viminfo
cp test52.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test52.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test52.in" 65 lines, 1645 charactersTests for reading and writing files with conversion for Win32.

STARTTEST
:so mbyte.vim
:" make this a dummy test for non-Win32 systems
:if !has("win32") | e! test.ok | wq! test.out | endif
:"
:" write tests:
:" combine three values for 'encoding' with three values for 'fileencoding'
:" also write files for read tests
/^1
:set encoding=utf-8
:.w! ++enc=utf-8 test.out
:.w ++enc=cp1251 >>test.out
:.w ++enc=cp866 >>test.out
:.w! ++enc=utf-8 Xutf8
/^2
:set encoding=cp1251
:.w ++enc=utf-8 >>test.out
:.w ++enc=cp1251 >>test.out
:.w ++enc=cp866 >>test.out
:.w! ++enc=cp1251 Xcp1251
/^3[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for reading and writing files with conversion for Win32.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 57 lines, 1333 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e Xcp1251
:.w ++enc=cp1251 >>test.out
:set fencs=utf-8,cp866
:e Xcp866
:.w ++enc=cp1251 >>test.out
:"
:" read three 'fileencoding's with cp866 'encoding'
:set encoding=cp866 fencs=utf-8,cp1251
:e Xutf8
:.w ++enc=cp866 >>test.out
:e Xcp1251
:.w ++enc=cp866 >>test.out
:set fencs=utf-8,cp866
:e Xcp866
:.w ++enc=cp866 >>test.out
:"
:qa!
ENDTEST

[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" make this a dummy test for non-Win32 systems
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("win32") | e! test.ok | wq! test.out | endif
[?25l[?1c"test.ok" 18 lines, 1374 characters

"test.out" [New File] 18 lines, 1374 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test53.failed test.ok test.out X* viminfo
cp test53.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test53.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test53.in" 134 lines, 2415 charactersTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for string and html text objects. vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 76 lines, 1583 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST/^Vx59
gggnd
:" test repeating dgn
/^Johnny
ggdgn.
:" test repeating gUgn
/^Depp
gggUgn.
gg/a:0\@!\zs\d\+
nygno^[p
:/^start:/,/^end:/wq! test.out
ENDTEST

start: "wo\"rd\\" foo
'foo' 'bar' 'piep'
bla bla `quote` blah
out " in "noXno"
"'" 'blah' rep 'buh'
bla `s*`d-`+++`l**` b`la
voo "nah" sdf " asdf" sdf " sdf" sd

<begin>
-<b>asdf<i>Xasdf</i>asdf</b>-[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:/
[?25l[?1c[?25h[?0c[?25l[?1cfo[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1c'foo'[?25h[?0c[?25l[?1c 'bar'[?25h[?0c[?25l[?1c
xxxxxxxxxxxx
[?25h[?0c
[?25l[?1cblah[?25h[?0c
[?25l[?1c"[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1c' rep[?25h[?0c[?25l[?1cyyyyy[?25h[?0c[?25l[?1c:[?25h[?0cset quoteescape=+*-
[?25l[?1c[?25h[?0c[?25l[?1c` b`la[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c" sdf"[?25h[?0c[?25l[?1c" [?25h[?0c[?25l[?1c"[?25h[?0c[?25l[?1c asdf" sdf [?25h[?0c[?25l[?1cah" sdf "
voo "[?25h[?0c[?25l[?1czzzzzzzzzzzzzzzzzzzzzzzzzzzz
voo "[?25h[?0c
[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^<begin
[?25l[?1c[?25h[?0c
[?25l[?1c</i>asdf</b>-[?25h[?0c[?25l[?1c
-<b>asdX<i>a<i />sdf</i>asdf</b>-[?25h[?0c
[?25l[?1c</b>-[?25h[?0c[?25l[?1c
-<b>asdf<i>Xasdf</i>asdf</b>-
-<b>[?25h[?0c[?25l[?1casdf</b>-[?25h[?0c[?25l[?1c
-<b>asdX<i>as<b />df</i>asdf</b>-[?25h[?0c
[?25l[?1c
--[?25h[?0c[?25l[?1c
-<b>
-[?25h[?0c[?25l[?1c<b></b>[?25h[?0c[?25l[?1c
</begin>[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cput =matchstr(\"abcd\", \".\", 0, 2) " b
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0cput =matchstr(\"abcd\", \"..\", 0, 2) " bc
[?25l[?1c
bc[?25h[?0c[?25l[?1c
:[?25h[?0cput =matchstr(\"abcd\", \".\", 2, 0) " c (zero and negative -> first match)
[?25l[?1c
c[?25h[?0c[?25l[?1c
:[?25h[?0cput =matchstr(\"abcd\", \".\", 0, -1) " a
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0cput =match(\"abcd\", \".\", 0, 5) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match(\"abcd\", \".\", 0, -1) " 0
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 0, 1) " 0
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 0, 2) " 1
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 0, 3) " 2
[?25l[?1c
2[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 0, 4) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 1, 1) " 1
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 2, 1) " 2
[?25l[?1c
2[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '.', 3, 1) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 0, 1) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 0, 2) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 1, 1) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 2, 1) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 3, 1) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '$', 4, 1) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 0, 1) " 0
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 0, 2) " 1
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 0, 3) " 2
[?25l[?1c
2[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 0, 4) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 0, 5) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 1, 1) " 1
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 2, 1) " 2
[?25l[?1c
2[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 3, 1) " 3
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0cput =match('abc', '\zs', 4, 1) " -1
[?25l[?1c
-1[?25h[?0c[?25l[?1c
/[?25h[?0c^foobar
[?25l[?1cSEARCH:
foobar[?25h[?0c[?25l[?1cfooba[?25h[?0c[?25l[?1c
searchmatch[?25h[?0c[?25l[?1c
/[?25h[?0cone\_s*two\_s
[?25l[?1c
one[?25h[?0c[?25l[?1c
:[?25h[?0c1
[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1c1
2
3
-1
1
2
3
-1
SEARCH:
searchmatch
one 
two
abcdx | abcdx | abcdx
join
lines
zero width pattern
delete first and last chars
uniquepattern uniquepattern
my very excellent mother just served us nachos
for (i=0; i<=10; i++)
a:10

a:1[?25h[?0c[?25l[?1ca:20[?25h[?0c
[?25l[?1c/[?25h[?0c[a]bcdx
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0c1
[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1c0
1
2
3
-1
1
2
3
-1
SEARCH:
searchmatch
abcdx | abcdx | abcdx
join
lines
zero width pattern
delete first and last chars
uniquepattern uniquepattern
my very excellent mother just served us nachos
for (i=0; i<=10; i++)
a:10

a:1[?25h[?0c[?25l[?1c | abcdx[?25h[?0c[?25l[?1c/[?25h[?0cjoin
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c$
[?25l[?1c[?25h[?0c
[?25l[?1cjoin [?25h[?0c[?25l[?1c
join linesa:20[?25h[?0c[?25l[?1c/[?25h[?0c\>\zs
[?25l[?1c[?25h[?0c
[?25l[?1czero[?25h[?0c[?25l[?1cwidth pattern[?25h[?0c[?25l[?1c/[?25h[?0c^
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1celete first and last chars[?25h[?0c[?25l[?1c/[?25h[?0c\zs
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c[u]niquepattern/s
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cu[?25h[?0c[?25l[?1cniquepatter[?25h[?0c[?25l[?1c
 uniquepattern[?25h[?0c
[?25l[?1c/[?25h[?0cmother
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset selection=exclusive
[?25l[?1c[?25h[?0c[?25l[?1cngoose just served us nachos[?25h[?0c[?25l[?1c/[?25h[?0ci
[?25l[?1c[?25h[?0c[?25l[?1cj[?25h[?0c
a:1[?25l[?1c:[?25h[?0c" Make sure there is no other match y uppercase.
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Y
[?25l[?1c
Y[?25h[?0c[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1cjoin lines
zerowidth pattern
elete first and last char
 uniquepattern
my very excellent mongoose just served us nachos
for (j=0; i<=10; i++)
a:10

a:1

a:20
Y
text
Y
--1
Johnny
--2
Johnny
--3
Depp
--4
Depp
--5[?25h[?0c[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0c" test repeating dgn
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Johnny
[?25l[?1c[?25h[?0c[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1czerowidth pattern
elete first and last char
 uniquepattern
my very excellent mongoose just served us nachos
for (j=0; i<=10; i++)
a:10

a:1

a:20

text
Y
--1

--2
Johnny
--3
Depp
--4
Depp
--5
end:[?25h[?0c[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0c" test repeating gUgn
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Depp
[?25l[?1c[?25h[?0c[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1czerowidth pattern
elete first and last char
 uniquepattern
my very excellent mongoose just served us nachos
for (j=0; i<=10; i++)
a:10

a:1

a:20

text
Y
--1

--2

--3
DEPP
--4
Depp
--5
end:[?25h[?0c[?25l[?1c

DEPP
[?25h[?0c
[?25l[?1cTests for string and html text objects. vim: set ft=vim :

Note that the end-of-line moves the cursor to the next test line.

Also test match() and matchstr()

Also test the gn command and repeating it.

STARTTEST
:so small.vim
/^start:/
da"
0va'a'rx
02f`da`
0fXdi"
03f'vi'ry
:set quoteescape=+*-
di`
$F"va"oha"i"rz
:"
/^<begin
jfXdit
0fXdit[?25h[?0c[?25l[?1c/[?25h[?0ca:0\@!\zs\d\+
[?25l[?1c3
-1
SEARCH:
searchmatch
abcdx |  | abcdx
join lines
zerowidth pattern
elete first and last char
 uniquepattern
my very excellent mongoose just served us nachos
for (j=0; i<=10; i++)
a:10

a:1

a:20

text
Y
--1

--2[?25h[?0c[?25l[?1c/a:0\@!\zs\d\+
[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c
[?25l[?1c:[?25h[?0c/^start:/,/^end:/wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 71 lines, 512 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test54.failed test.ok test.out X* viminfo
cp test54.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test54.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test54.in" 22 lines, 658 charactersSome tests for buffer-local autocommands

STARTTEST
:so small.vim
:e xx
:if has("vms")
: !del test.out.*
: au BufLeave <buffer> :!write sys$output "buffer-local autommand in %" > test.out
:else
: !rm -f test.out
: au BufLeave <buffer> :!echo buffer-local autommand in %>> test.out
:endif
:e somefile" here, autocommand for xx shall write test.out
:" but autocommand shall not apply to buffer named <buffer>:bwipe xx" here, autocommand shall be auto-deleted
:e xx" nothing shall be written
:e somefile" nothing shall be written
:qa!
ENDTEST

start of test file xx
end of test file xx[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cSome tests for buffer-local autocommands[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 15 lines, 555 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce xx
[?25l[?1c"xx" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cif has("vms")
[?25l[?1c
:  [?25h[?0c: !del test.out.*

[?25l[?1c:  [?25h[?0c: au BufLeave <buffer> :!write sys$output "buffer-local autommand in %" > te

st.out

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: !rm -f test.out

[?25l[?1c:!rm -f test.out[?25h[?0c
[?25l[?1c:  [?25h[?0c: au BufLeave <buffer> :!echo buffer-local autommand in %>> test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce somefile           " here, autocommand for xx shall write test.out 
[?25l[?1c:!echo buffer-local autommand in xx>> test.out

[?25h[?0c[?25l[?1c"somefile" [New File]

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c                     " but autocommand shall not apply to buffer named <buffer

>[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbwipe xx             " here, autocommand shall be auto-deleted
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce xx                 " nothing shall be written
[?25l[?1c"xx" [New File][?25h[?0c[?25l[?1c:[?25h[?0ce somefile           " nothing shall be written
[?25l[?1c"somefile" [New File][?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test55.failed test.ok test.out X* viminfo
cp test55.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test55.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test55.in" 601 lines, 12501 charactersTests for List and Dictionary types.     vim: set ft=vim :

STARTTEST
:so small.vim
:fun Test(...)
:lang C
:" Creating List directly with different types
:let l = [1, 'as''d', [1, 2, function("strlen")], {'a': 1},]
:$put =string(l)
:$put =string(l[-1])
:$put =string(l[-4])
:try
:  $put =string(l[-5])
:catch
:  $put =v:exception[:14]
:endtry
:" List slices
:$put =string(l[:])
:$put =string(l[1:])
:$put =string(l[:-2])
:$put =string(l[0:8])
:$put =string(l[8:-1])
:"[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for List and Dictionary types.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 595 lines, 12415 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =string(l)
:endfun
:"
:call Test(1, 2, [3, 4], {5: 6})  " This may take a while
:"
:delfunc Test
:unlet dict
:call garbagecollect(1)
:"
:" test for patch 7.3.637
:let a = 'No error caught'
:try|foldopen|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
o^R=a^M^[:"
:lang C
:redir => a
:try|foobar|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
:redir END
o^R=a^M^[:"
:"
:/^start:/,$wq! test.out
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfun Test(...)
[?25l[?1c
:  [?25h[?0c:lang C

[?25l[?1c:  [?25h[?0c:" Creating List directly with different types

[?25l[?1c:  [?25h[?0c:let l = [1, 'as''d', [1, 2, function("strlen")], {'a': 1},]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0c:$put =string(l[-1])

[?25l[?1c:  [?25h[?0c:$put =string(l[-4])

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  $put =string(l[-5])

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:" List slices

[?25l[?1c:  [?25h[?0c:$put =string(l[:])

[?25l[?1c:  [?25h[?0c:$put =string(l[1:])

[?25l[?1c:  [?25h[?0c:$put =string(l[:-2])

[?25l[?1c:  [?25h[?0c:$put =string(l[0:8])

[?25l[?1c:  [?25h[?0c:$put =string(l[8:-1])

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" List identity

[?25l[?1c:  [?25h[?0c:let ll = l

[?25l[?1c:  [?25h[?0c:let lx = copy(l)

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  $put =(l == ll) . (l isnot ll) . (l is ll) . (l == lx) . (l is lx) . (l

isnot lx)

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Creating Dictionary directly with different types

[?25l[?1c:  [?25h[?0c:let d = {001: 'asd', 'b': [1, 2, function('strlen')], -1: {'a': 1},}

[?25l[?1c:  [?25h[?0c:$put =string(d) . d.1

[?25l[?1c:  [?25h[?0c:$put =string(sort(keys(d)))

[?25l[?1c:  [?25h[?0c:$put =string (values(d))

[?25l[?1c:  [?25h[?0c:for [key, val] in items(d)

[?25l[?1c:    [?25h[?0c:  $put =key . ':' . string(val)

[?25l[?1c:    [?25h[?0c:  unlet key val

[?25l[?1c:    [?25h[?0c:endfor

[?25l[?1c:  [?25h[?0c:call extend  (d, {3:33, 1:99})

[?25l[?1c:  [?25h[?0c:call extend(d, {'b':'bbb', 'c':'ccc'}, "keep")

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  call extend(d, {3:333,4:444}, "error")

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:15] . v:exception[-1:-1]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:$put =string(d)

[?25l[?1c:  [?25h[?0c:call filter(d, 'v:key =~ ''[ac391]''')

[?25l[?1c:  [?25h[?0c:$put =string(d)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Dictionary identity

[?25l[?1c:  [?25h[?0c:let dd = d

[?25l[?1c:  [?25h[?0c:let dx = copy(d)

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  $put =(d == dd) . (d isnot dd) . (d is dd) . (d == dx) . (d is dx) . (d

isnot dx)

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Changing var type should fail

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  let d = []

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:14] . v:exception[-1:-1]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  let l = {}

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:14] . v:exception[-1:-1]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" removing items with :unlet

[?25l[?1c:  [?25h[?0c:unlet l[2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0c:let l = range(8)

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:unlet l[:3]

[?25l[?1c:    [?25h[?0c:unlet l[1:]

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:$put =v:exception

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:unlet d.c

[?25l[?1c:  [?25h[?0c:unlet d[-1]

[?25l[?1c:  [?25h[?0c:$put =string(d)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" removing items out of range: silently skip items that don't exist

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[2:1]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[2:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[2:3]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[2:4]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[2:5]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-1:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-2:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-3:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-4:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-5:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0clet l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:unlet l[-6:2]

[?25l[?1c:  [?25h[?0c:$put =string(l)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" assignment to a list

[?25l[?1c:  [?25h[?0c:let l = [0, 1, 2, 3]

[?25l[?1c:  [?25h[?0c:let [va, vb] = l[2:3]

[?25l[?1c:  [?25h[?0c:$put =va

[?25l[?1c:  [?25h[?0c:$put =vb

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  let [va, vb] = l

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  let [va, vb] = l[1:1]

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" manipulating a big Dictionary (hashtable.c has a border of 1000 entries)

[?25l[?1c:  [?25h[?0c:let d = {}

[?25l[?1c:  [?25h[?0c:for i in range(1500)

[?25l[?1c:    [?25h[?0c: let d[i] = 3000 - i

[?25l[?1c:    [?25h[?0c:endfor

[?25l[?1c:  [?25h[?0c:$put =d[0] . ' ' . d[100] . ' ' . d[999] . ' ' . d[1400] . ' ' . d[1499]

[?25l[?1c:  [?25h[?0c:try

[?25l[?1c:    [?25h[?0c:  let n = d[1500]

[?25l[?1c:    [?25h[?0c:catch

[?25l[?1c:    [?25h[?0c:  $put =substitute(v:exception, '\v(.{14}).*( \d{4}).*', '\1\2', '')

[?25l[?1c:    [?25h[?0c:endtry

[?25l[?1c:  [?25h[?0c:" lookup each items

[?25l[?1c:  [?25h[?0c:for i in range(1500)

[?25l[?1c:    [?25h[?0c: if d[i] != 3000 - i

[?25l[?1c:      [?25h[?0c:  $put =d[i]

[?25l[?1c:      [?25h[?0c: endif

[?25l[?1c:    [?25h[?0c:endfor

[?25l[?1c:  [?25h[?0c: let i += 1

[?25l[?1c:  [?25h[?0c:" delete even items

[?25l[?1c:  [?25h[?0c:while i >= 2

[?25l[?1c:    [?25h[?0c: let i -= 2

[?25l[?1c:    [?25h[?0c: unlet d[i]

[?25l[?1c:    [?25h[?0c:endwhile

[?25l[?1c:  [?25h[?0c:$put =get(d, 1500 - 100, 'NONE') . ' ' . d[1]

[?25l[?1c:  [?25h[?0c:" delete odd items, checking value, one intentionally wrong

[?25l[?1c:  [?25h[?0c:let d[33] = 999

[?25l[?1c:  [?25h[?0c:let i = 1

[?25l[?1c:  [?25h[?0c:while i < 1500

[?25l[?1c:    [?25h[?0c: if d[i] != 3000 - i

[?25l[?1c:      [?25h[?0c:  $put =i . '=' . d[i]

[?25l[?1c:      [?25h[?0c: else

[?25l[?1c:      [?25h[?0c:  unlet d[i]

[?25l[?1c:      [?25h[?0c: endif

[?25l[?1c:    [?25h[?0c: let i += 2

[?25l[?1c:    [?25h[?0c:endwhile

[?25l[?1c:  [?25h[?0c:$put =string(d)  " must be almost empty now

[?25l[?1c:  [?25h[?0c:unlet d

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Dictionary function

[?25l[?1c:  [?25h[?0c:let dict = {}

[?25l[?1c:  [?25h[?0c:func dict.func(a) dict

[?25l[?1c:    [?25h[?0c:  $put =a:a . len(self.data)

[?25l[?1c:    [?25h[?0c:endfunc

[?25l[?1c:    [?25h[?0c:let dict.data = [1,2,3]

[?25l[?1c:    [?25h[?0c:call dict.func("len: ")

[?25l[?1c:    [?25h[?0c:let x = dict.func("again: ")

[?25l[?1c:    [?25h[?0c:try

[?25l[?1c:      [?25h[?0c:  let Fn = dict.func

[?25l[?1c:      [?25h[?0c:  call Fn('xxx')

[?25l[?1c:      [?25h[?0c:catch

[?25l[?1c:      [?25h[?0c:  $put =v:exception[:15]

[?25l[?1c:      [?25h[?0c:endtry

[?25l[?1c:    [?25h[?0c:" 

[?25l[?1c:    [?25h[?0c:" Function in script-local List or Dict

[?25l[?1c:    [?25h[?0c:let g:dict = {}

[?25l[?1c:    [?25h[?0c:function g:dict.func() dict

[?25l[?1c:      [?25h[?0c:  $put ='g:dict.func'.self.foo[1].self.foo[0]('asdf')

[?25l[?1c:      [?25h[?0c:endfunc

[?25l[?1c:      [?25h[?0c:let g:dict.foo = ['-', 2, 3]

[?25l[?1c:      [?25h[?0c:call insert(g:dict.foo, function('strlen'))

[?25l[?1c:      [?25h[?0c:call g:dict.func()

[?25l[?1c:      [?25h[?0c:" 

[?25l[?1c:      [?25h[?0c:" Nasty: remove func from Dict that's being called (works)

[?25l[?1c:      [?25h[?0c:let d = {1:1}

[?25l[?1c:      [?25h[?0c:func d.func(a)

[?25l[?1c:[?25h[?0c:  return "a:". a:a

[?25l[?1c:[?25h[?0c:endfunc

[?25l[?1c:[?25h[?0c:$put =d.func(string(remove(d, 'func')))

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Nasty: deepcopy() dict that refers to itself (fails when noref used

)
[?25l[?1c:[?25h[?0c:let d = {1:1, 2:2}

[?25l[?1c:[?25h[?0c:let l = [4, d, 6]

[?25l[?1c:[?25h[?0c:let d[3] = l

[?25l[?1c:[?25h[?0c:let dc = deepcopy(d)

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let dc = deepcopy(d, 1)

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:let l2 = [0, l, l, 3]

[?25l[?1c:[?25h[?0c:let l[1] = l2

[?25l[?1c:[?25h[?0c:let l3 = deepcopy(l2)

[?25l[?1c:[?25h[?0c:$put ='same list: ' . (l3[1] is l3[2])

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Locked variables

[?25l[?1c:[?25h[?0c:for depth in range(5)

[?25l[?1c:[?25h[?0c:  $put ='depth is ' . depth

[?25l[?1c:[?25h[?0c:  for u in range(3)

[?25l[?1c:[?25h[?0c:    unlet l

[?25l[?1c:[?25h[?0c:    let l = [0, [1, [2, 3]], {4: 5, 6: {7: 8}}]

[?25l[?1c:[?25h[?0c:    exe "lockvar " . depth . " l"

[?25l[?1c:[?25h[?0c:    if u == 1

[?25l[?1c:[?25h[?0c:      exe "unlockvar l"

[?25l[?1c:[?25h[?0c:    elseif u == 2

[?25l[?1c:[?25h[?0c:      exe "unlockvar " . depth . " l"

[?25l[?1c:[?25h[?0c:    endif

[?25l[?1c:[?25h[?0c:    let ps = islocked("l").islocked("l[1]").islocked("l[1][1]").i

slocked("l[1][1][0]").'-'.islocked("l[2]").islocked("l[2]['6']").islocked("l[2][

'6'][7]")

[?25l[?1c:[?25h[?0c:    $put =ps

[?25l[?1c:[?25h[?0c:    let ps = ''

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[1][1][0] = 99

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[1][1] = [99]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[1] = [99]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[2]['6'][7] = 99

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[2][6] = {99: 99}

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l[2] = {99: 99}

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      let l = [99]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    $put =ps

[?25l[?1c:[?25h[?0c:  endfor

[?25l[?1c:[?25h[?0c:endfor

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Unletting locked variables

[?25l[?1c:[?25h[?0c:$put ='Unletting:'

[?25l[?1c:[?25h[?0c:for depth in range(5)

[?25l[?1c:[?25h[?0c:  $put ='depth is ' . depth

[?25l[?1c:[?25h[?0c:  for u in range(3)

[?25l[?1c:[?25h[?0c:    unlet l

[?25l[?1c:[?25h[?0c:    let l = [0, [1, [2, 3]], {4: 5, 6: {7: 8}}]

[?25l[?1c:[?25h[?0c:    exe "lockvar " . depth . " l"

[?25l[?1c:[?25h[?0c:    if u == 1

[?25l[?1c:[?25h[?0c:      exe "unlockvar l"

[?25l[?1c:[?25h[?0c:    elseif u == 2

[?25l[?1c:[?25h[?0c:      exe "unlockvar " . depth . " l"

[?25l[?1c:[?25h[?0c:    endif

[?25l[?1c:[?25h[?0c:    let ps = islocked("l").islocked("l[1]").islocked("l[1][1]").i

slocked("l[1][1][0]").'-'.islocked("l[2]").islocked("l[2]['6']").islocked("l[2][

'6'][7]")

[?25l[?1c:[?25h[?0c:    $put =ps

[?25l[?1c:[?25h[?0c:    let ps = ''

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[2]['6'][7]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[2][6]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[2]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[1][1][0]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[1][1]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l[1]

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    try

[?25l[?1c:[?25h[?0c:      unlet l

[?25l[?1c:[?25h[?0c:      let ps .= 'p'

[?25l[?1c:[?25h[?0c:    catch

[?25l[?1c:[?25h[?0c:      let ps .= 'F'

[?25l[?1c:[?25h[?0c:    endtry

[?25l[?1c:[?25h[?0c:    $put =ps

[?25l[?1c:[?25h[?0c:  endfor

[?25l[?1c:[?25h[?0c:endfor

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Locked variables and :unlet or list / dict functions

[?25l[?1c:[?25h[?0c:$put ='Locks and commands or functions:'

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No :unlet after lock on dict:'

[?25l[?1c:[?25h[?0c:unlet! d

[?25l[?1c:[?25h[?0c:let d = {'a': 99, 'b': 100}

[?25l[?1c:[?25h[?0c:lockvar 1 d

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  unlet d.a

[?25l[?1c:[?25h[?0c:  $put ='did :unlet'

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:16]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put =':unlet after lock on dict item:'

[?25l[?1c:[?25h[?0c:unlet! d

[?25l[?1c:[?25h[?0c:let d = {'a': 99, 'b': 100}

[?25l[?1c:[?25h[?0c:lockvar d.a

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  unlet d.a

[?25l[?1c:[?25h[?0c:  $put ='did :unlet'

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:16]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='filter() after lock on dict item:'

[?25l[?1c:[?25h[?0c:unlet! d

[?25l[?1c:[?25h[?0c:let d = {'a': 99, 'b': 100}

[?25l[?1c:[?25h[?0c:lockvar d.a

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  call filter(d, 'v:key != "a"')

[?25l[?1c:[?25h[?0c:  $put ='did filter()'

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:16]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='map() after lock on dict:'

[?25l[?1c:[?25h[?0c:unlet! d

[?25l[?1c:[?25h[?0c:let d = {'a': 99, 'b': 100}

[?25l[?1c:[?25h[?0c:lockvar 1 d

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  call map(d, 'v:val + 200')

[?25l[?1c:[?25h[?0c:  $put ='did map()'

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:16]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No extend() after lock on dict item:'

[?25l[?1c:[?25h[?0c:unlet! d

[?25l[?1c:[?25h[?0c:let d = {'a': 99, 'b': 100}

[?25l[?1c:[?25h[?0c:lockvar d.a

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  $put =string(extend(d, {'a': 123}))

[?25l[?1c:[?25h[?0c:  $put ='did extend()'

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No remove() of write-protected scope-level variable:'

[?25l[?1c:[?25h[?0c:fun! Tfunc(this_is_a_loooooooooong_parameter_name)

[?25l[?1c:[?25h[?0c:  try

[?25l[?1c:[?25h[?0c:    $put =string(remove(a:, 'this_is_a_loooooooooong_parameter_na

me'))

[?25l[?1c:[?25h[?0c:    $put ='did remove()'

[?25l[?1c:[?25h[?0c:  catch

[?25l[?1c:[?25h[?0c:    $put =v:exception[:14]

[?25l[?1c:[?25h[?0c:  endtry

[?25l[?1c:[?25h[?0c:endfun

[?25l[?1c:[?25h[?0c:call Tfunc('testval')

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No extend() of write-protected scope-level variable:'

[?25l[?1c:[?25h[?0c:fun! Tfunc(this_is_a_loooooooooong_parameter_name)

[?25l[?1c:[?25h[?0c:  try

[?25l[?1c:[?25h[?0c:    $put =string(extend(a:, {'this_is_a_loooooooooong_parameter

_name': 1234}))

[?25l[?1c:[?25h[?0c:    $put ='did extend()'

[?25l[?1c:[?25h[?0c:  catch

[?25l[?1c:[?25h[?0c:    $put =v:exception[:14]

[?25l[?1c:[?25h[?0c:  endtry

[?25l[?1c:[?25h[?0c:endfun

[?25l[?1c:[?25h[?0c:call Tfunc('testval')

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No :unlet of variable in locked scope:'

[?25l[?1c:[?25h[?0c:let b:testvar = 123

[?25l[?1c:[?25h[?0c:lockvar 1 b:

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  unlet b:testvar

[?25l[?1c:[?25h[?0c:  $put ='b:testvar was :unlet: '. (!exists('b:testvar'))

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:16]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:unlockvar 1 b:

[?25l[?1c:[?25h[?0c:unlet! b:testvar

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:$put ='No :let += of locked list variable:'

[?25l[?1c:[?25h[?0c:let l = ['a', 'b', 3]

[?25l[?1c:[?25h[?0c:lockvar 1 l

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let l += ['x']

[?25l[?1c:[?25h[?0c:  $put ='did :let +='

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:14]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:unlet l

[?25l[?1c:[?25h[?0c:let l = [1, 2, 3, 4]

[?25l[?1c:[?25h[?0c:lockvar! l

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:unlockvar l[1]

[?25l[?1c:[?25h[?0c:unlet l[0:1]

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:unlet l[1:2]

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:unlockvar l[1]

[?25l[?1c:[?25h[?0c:let l[0:1] = [0, 1]

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:let l[1:2] = [0, 1]

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:unlet l

[?25l[?1c:[?25h[?0c:" :lockvar/islocked() triggering script autoloading

[?25l[?1c:[?25h[?0c:set rtp+=./sautest

[?25l[?1c:[?25h[?0c:lockvar g:footest#x

[?25l[?1c:[?25h[?0c:unlockvar g:footest#x

[?25l[?1c:[?25h[?0c:$put ='locked g:footest#x:'.islocked('g:footest#x')

[?25l[?1c:[?25h[?0c:$put ='exists g:footest#x:'.exists('g:footest#x')

[?25l[?1c:[?25h[?0c:$put ='g:footest#x: '.g:footest#x

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" a:000 function argument

[?25l[?1c:[?25h[?0c:" first the tests that should fail

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let a:000 = [1, 2]

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put ='caught a:000'

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let a:000[0] = 9

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put ='caught a:000[0]'

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let a:000[2] = [9, 10]

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put ='caught a:000[2]'

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let a:000[3] = {9: 10}

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put ='caught a:000[3]'

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:" now the tests that should pass

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  let a:000[2][1] = 9

[?25l[?1c:[?25h[?0c:  call extend(a:000[2], [5, 6])

[?25l[?1c:[?25h[?0c:  let a:000[3][5] = 8

[?25l[?1c:[?25h[?0c:  let a:000[3]['a'] = 12

[?25l[?1c:[?25h[?0c:  $put =string(a:000)

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put ='caught ' . v:exception

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" reverse(), sort(), uniq()

[?25l[?1c:[?25h[?0c:let l = ['-0', 'A11', 2, 2, 'xaaa', 4, 'foo', 'foo6', 'foo', [0, 

1, 2], 'x8', [0, 1, 2], 1.5]

[?25l[?1c:[?25h[?0c:$put =string(uniq(copy(l)))

[?25l[?1c:[?25h[?0c:$put =string(reverse(l))

[?25l[?1c:[?25h[?0c:$put =string(reverse(reverse(l)))

[?25l[?1c:[?25h[?0c:$put =string(sort(l))

[?25l[?1c:[?25h[?0c:$put =string(reverse(sort(l)))

[?25l[?1c:[?25h[?0c:$put =string(sort(reverse(sort(l))))

[?25l[?1c:[?25h[?0c:$put =string(uniq(sort(l)))

[?25l[?1c:[?25h[?0c:let l=[7, 9, 'one', 18, 12, 22, 'two', 10.0e-16, -1, 'three', 0xf

f, 0.22, 'four']

[?25l[?1c:[?25h[?0c:$put =string(sort(copy(l), 'n'))

[?25l[?1c:[?25h[?0c:let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'bar', 

'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', {}, []]

[?25l[?1c:[?25h[?0c:$put =string(sort(copy(l), 1))

[?25l[?1c:[?25h[?0c:$put =string(sort(copy(l), 'i'))

[?25l[?1c:[?25h[?0c:$put =string(sort(copy(l)))

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" splitting a string to a List

[?25l[?1c:[?25h[?0c:$put =string(split('  aa  bb '))

[?25l[?1c:[?25h[?0c:$put =string(split('  aa  bb  ', '\W\+', 0))

[?25l[?1c:[?25h[?0c:$put =string(split('  aa  bb  ', '\W\+', 1))

[?25l[?1c:[?25h[?0c:$put =string(split('  aa  bb  ', '\W', 1))

[?25l[?1c:[?25h[?0c:$put =string(split(':aa::bb:', ':', 0))

[?25l[?1c:[?25h[?0c:$put =string(split(':aa::bb:', ':', 1))

[?25l[?1c:[?25h[?0c:$put =string(split('aa,,bb, cc,', ',\s*', 1))

[?25l[?1c:[?25h[?0c:$put =string(split('abc', '\zs'))

[?25l[?1c:[?25h[?0c:$put =string(split('abc', '\zs', 1))

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" compare recursively linked list and dict

[?25l[?1c:[?25h[?0c:let l = [1, 2, 3, 4]

[?25l[?1c:[?25h[?0c:let d = {'1': 1, '2': l, '3': 3}

[?25l[?1c:[?25h[?0c:let l[1] = d

[?25l[?1c:[?25h[?0c:$put =(l == l)

[?25l[?1c:[?25h[?0c:$put =(d == d)

[?25l[?1c:[?25h[?0c:$put =(l != deepcopy(l))

[?25l[?1c:[?25h[?0c:$put =(d != deepcopy(d))

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" compare complex recursively linked list and dict

[?25l[?1c:[?25h[?0c:let l = []

[?25l[?1c:[?25h[?0c:call add(l, l)

[?25l[?1c:[?25h[?0c:let dict4 = {"l": l}

[?25l[?1c:[?25h[?0c:call add(dict4.l, dict4)

[?25l[?1c:[?25h[?0c:let lcopy = deepcopy(l)

[?25l[?1c:[?25h[?0c:let dict4copy = deepcopy(dict4)

[?25l[?1c:[?25h[?0c:$put =(l == lcopy)

[?25l[?1c:[?25h[?0c:$put =(dict4 == dict4copy)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Pass the same List to extend()

[?25l[?1c:[?25h[?0c:let l = [1, 2, 3, 4, 5]

[?25l[?1c:[?25h[?0c:call extend(l, l)

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Pass the same Dict to extend()

[?25l[?1c:[?25h[?0c:let d = { 'a': {'b': 'B'}}

[?25l[?1c:[?25h[?0c:call extend(d, d)

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" Pass the same Dict to extend() with "error"

[?25l[?1c:[?25h[?0c:try

[?25l[?1c:[?25h[?0c:  call extend(d, d, "error")

[?25l[?1c:[?25h[?0c:catch

[?25l[?1c:[?25h[?0c:  $put =v:exception[:15] . v:exception[-1:-1]

[?25l[?1c:[?25h[?0c:endtry

[?25l[?1c:[?25h[?0c:$put =string(d)

[?25l[?1c:[?25h[?0c:"

[?25l[?1c:[?25h[?0c:" test for range assign

[?25l[?1c:[?25h[?0c:let l = [0]

[?25l[?1c:[?25h[?0c:let l[:] = [1, 2]

[?25l[?1c:[?25h[?0c:$put =string(l)

[?25l[?1c:[?25h[?0c:endfun
[?25l[?1c:$put =string(l)
:endfun
:"
:call Test(1, 2, [3, 4], {5: 6})  " This may take a while
:"
:delfunc Test
:unlet dict
:call garbagecollect(1)
:"
:" test for patch 7.3.637
:let a = 'No error caught'
:try|foldopen|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
o^R=a^M^[:"
:lang C
:redir => a
:try|foobar|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
:redir END
o^R=a^M^[:"
:"
:/^start:/,$wq! test.out
ENDTEST

start:[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall Test(1, 2, [3, 4], {5: 6})  " This may take a while
[?25l[?1cError detected while processing function Test:
line   87:

E684: list index out of range: 1

line  102:

E684: list index out of range: 2

line  286:

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

E108: No such variable: "l"

line  456:

E741: Value is locked: l[0:1]

line  458:

E741: Value is locked: l[1:2]

line  461:

E741: Value is locked: l[0:1] = [0, 1]

line  463:

E741: Value is locked: l[1:2] = [0, 1]

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c['BAR', 'Bar', 'FOO', 'FOOBAR', 'Foo', 'bar', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
['aa', 'bb']
['aa', 'bb']
['', 'aa', 'bb', '']
['', '', 'aa', '', 'bb', '', '']
['aa', '', 'bb']
['', 'aa', '', 'bb', '']
['aa', '', 'bb', 'cc', '']
['a', 'b', 'c']
['', 'a', '', 'b', '', 'c', '']
1
1
0
0
1
1
[1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
{'a': {'b': 'B'}}
Vim(call):E737: a
{'a': {'b': 'B'}}
[1, 2]
~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0cdelfunc Test
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet dict
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall garbagecollect(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test for patch 7.3.637
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet a = 'No error caught'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry|foldopen|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
[?25l[?1c[?25h[?0c[?25l[?1c=[?25h[?0ca
[?25l[?1cVim(foldopen):E490:[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir => a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry|foobar|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
[?25l[?1cError detected while processing :
E492: Not an editor command: foobar|catch|let a = matchstr(v:exception,'^[^ ]*'

)|endtry

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c['BAR', 'Bar', 'FOO', 'FOOBAR', 'Foo', 'bar', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
['aa', 'bb'][?25h[?0c[?25l[?1c
=[?25h[?0ca
[?25l[?1cError detected while processing :
E492: Not an editor command: foobar|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 199 lines, 3867 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test56.failed test.ok test.out X* viminfo
cp test56.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test56.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test56.in" 21 lines, 457 charactersTest for script-local function.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:set nocp viminfo+=nviminfo
:/^start:/+1,/^end:/-1w! Xtest.vim
:source Xtest.vim
_x
:$-1,$wq! test.out
ENDTEST

start:
fun <SID>DoLast()
  call append(line('$'), "last line")
endfun
fun s:DoNothing()
  call append(line('$'), "nothing line")
endfun
nnoremap <buffer> _x    :call <SID>DoNothing()<bar>call <SID>DoLast()<bar>delfunc <SID>DoNothing<bar>delfunc <SID>DoLast<cr>
end:
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for script-local function.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 7 lines, 120 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/+1,/^end:/-1w! Xtest.vim
[?25l[?1c"Xtest.vim" [New] 7L, 251C written[?25h[?0c[?25l[?1c:[?25h[?0csource Xtest.vim
[?25l[?1c[?25h[?0c[?25l[?1c:call <SNR>3_DoNothing()|call <SNR>3_DoLast()|delfunc <SNR>3_DoNothing|delfunc 

<SNR>3_DoLast
Press ENTER or type command to continue[?25h[?0c[?25l[?1cTest for script-local function.     vim: set ft=vim :nothing line[?25h[?0c[?25l[?1c:[?25h[?0c$-1,$wq! test.out
[?25l[?1c"test.out" [New] 2L, 23C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test57.failed test.ok test.out X* viminfo
cp test57.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test57.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test57.in" 500 lines, 3666 charactersTests for :sort command.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:/^t01:/+1,/^t02/-1sort
:/^t02:/+1,/^t03/-1sort n
:/^t03:/+1,/^t04/-1sort x
:/^t04:/+1,/^t05/-1sort u
:/^t05:/+1,/^t06/-1sort!
:/^t06:/+1,/^t07/-1sort! n
:/^t07:/+1,/^t08/-1sort! u
:/^t08:/+1,/^t09/-1sort o
:/^t09:/+1,/^t10/-1sort! x
:/^t10:/+1,/^t11/-1sort/./
:/^t11:/+1,/^t12/-1sort/../
:/^t12:/+1,/^t13/-1sort/../u
:/^t13:/+1,/^t14/-1sort/./n
:/^t14:/+1,/^t15/-1sort/./r
:/^t15:/+1,/^t16/-1sort/../r
:/^t16:/+1,/^t17/-1sort/./rn
:/^t17:/+1,/^t18/-1sort/\d/
:/^t18:/+1,/^t19/-1sort/\d/r[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :sort command.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 30 lines, 842 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:/^t19:/+1,/^t20/-1sort/\d/n
:/^t20:/+1,/^t21/-1sort/\d/rn
:/^t21:/+1,/^t22/-1sort/\d\d/
:/^t22:/+1,/^t23/-1sort/\d\d/n
:/^t23:/+1,/^t24/-1sort/\d\d/x
:/^t24:/+1,/^t25/-1sort/\d\d/r
:/^t25:/+1,/^t26/-1sort/\d\d/rn
:/^t26:/+1,/^t27/-1sort/\d\d/rx
:/^t27:/+1,/^t28/-1sort no
:/^t01:/,$wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^t01:/+1,/^t02/-1sort
[?25l[?1ct01: alphebetical[?25h[?0c[?25l[?1c
:[?25h[?0c/^t02:/+1,/^t03/-1sort n
[?25l[?1ca321
ab
abc
b123
b321
b321
b321b
b322b
c123d
c321d
t02: numeric
abc
ab
a-24
x-22
0
a122
a123
b123[?25h[?0c[?25l[?1c:[?25h[?0c/^t03:/+1,/^t04/-1sort x
[?25l[?1cc123d
 123b
a321
b321
c321d
b321
b321b
b322b
t03: hexadecimal[?25h[?0c[?25l[?1c
:[?25h[?0c/^t04:/+1,/^t05/-1sort u
[?25l[?1ca122
a123
a321
b123
b321
b321
b321b
b322b
c123d
c321d
t04: alpha, unique

 123b
a
a122
a123
a321
ab
abc
b123
b321
b321b
b322b[?25h[?0c[?25l[?1c:[?25h[?0c/^t05:/+1,/^t06/-1sort!
[?25l[?1cc123d
c321d
t05: alpha, reverse
c321d[?25h[?0c[?25l[?1c
:[?25h[?0c/^t06:/+1,/^t07/-1sort! n        
[?25l[?1cb123
abc
ab
a321
a123
a122
a
 123b


t06: numeric, reverse
b322b
b321b
b321
c321d
b321
a321
 123b
c123d
b123
a123
a122[?25h[?0c[?25l[?1c:[?25h[?0c/^t07:/+1,/^t08/-1sort! u
[?25l[?1ca
ab
abc
t07: unique, reverse
c321d[?25h[?0c[?25l[?1c
:[?25h[?0c/^t08:/+1,/^t09/-1sort o         
[?25l[?1cb321
b123
abc
ab
a321
a123
a122
a
 123b

t08: octal
abc
ab
a


a122
a123
b123
c123d
 123b
a321
b321[?25h[?0c[?25l[?1c:[?25h[?0c/^t09:/+1,/^t10/-1sort! x        
[?25l[?1cc321d
b321
b321b
b322b
t09: reverse, hexadecimal
c321d[?25h[?0c[?25l[?1c
:[?25h[?0c/^t10:/+1,/^t11/-1sort/./        
[?25l[?1cb123
a321
a123
a122
 123b
abc
ab
a


t10: alpha, skip first character
a


a122
a123
b123
 123b
c123d
a321
b321
b321
b321b[?25h[?0c[?25l[?1c:[?25h[?0c/^t11:/+1,/^t12/-1sort/../       
[?25l[?1cc321d
b322b
ab
abc
t11: alpha, skip first 2 characters
ab[?25h[?0c[?25l[?1c
:[?25h[?0c/^t12:/+1,/^t13/-1sort/../u
[?25l[?1cb321
b321b
c321d
a122
b322b
a123
b123
 123b
c123d
abc
t12: alpha, unique, skip first 2 characters
ab
a

a321
b321
b321b
c321d
a122
b322b
a123
b123
 123b[?25h[?0c[?25l[?1c:[?25h[?0c/^t13:/+1,/^t14/-1sort/./n
[?25l[?1cc123d
abc
t13: numeric, skip first character
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t14:/+1,/^t15/-1sort/./r
[?25l[?1ca123
b123
c123d
 123b
a321
b321
c321d
b321
b321b
b322b
t14: alpha, sort on first character123b
abc
ab
a
a321
a123
a122
b321
b123
b322b[?25h[?0c[?25l[?1c:[?25h[?0c/^t15:/+1,/^t16/-1sort/../r
[?25l[?1cb321
b321b
c123d
c321d
t15: alpha, sort on first 2 characters
a[?25h[?0c[?25l[?1c
:[?25h[?0c/^t16:/+1,/^t17/-1sort/./rn
[?25l[?1ca321
abc
ab
b123
b321
b322b
b321
b321b
c123d
c321d
t16: numeric, sort on first character
abc
ab
a
a321
a123
a122
b321
b123
c123d
 123b
c321d
b322b[?25h[?0c[?25l[?1c:[?25h[?0c/^t17:/+1,/^t18/-1sort/\d/
[?25l[?1cb321
b321b


t17: alpha, skip past first digit
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t18:/+1,/^t19/-1sort/\d/r
[?25l[?1cb321
b321
b321b
c321d
a122
b322b
a123
b123
 123b
c123d
t18: alpha, sort on first digit
abc
ab
a


a123
a122
b123
c123d
 123b
a321
b321[?25h[?0c[?25l[?1c:[?25h[?0c/^t19:/+1,/^t20/-1sort/\d/n
[?25l[?1cc321d
b322b
b321
b321b
t19: numeric, skip past first digit
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t20:/+1,/^t21/-1sort/\d/rn
[?25l[?1cb321
c321d
b321
b321b
a122
b322b
a123
b123
c123d
 123b
t20: numeric, sort on first digit
abc
ab
a


a123
a122
b123
c123d
 123b
a321
b321[?25h[?0c[?25l[?1c:[?25h[?0c/^t21:/+1,/^t22/-1sort/\d\d/
[?25l[?1cc321d
b322b
b321
b321b
t21: alpha, skip past first 2 digits
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t22:/+1,/^t23/-1sort/\d\d/n
[?25l[?1cb321
b321
b321b
c321d
a122
b322b
a123
b123
 123b
c123d
t22: numeric, skip past first 2 digits
abc
ab
a


a321
b321
c321d
b321
b321b
a122
b322b[?25h[?0c[?25l[?1c:[?25h[?0c/^t23:/+1,/^t24/-1sort/\d\d/x
[?25l[?1ca123
b123
c123d
 123b
t23: hexadecimal, skip past first 2 digits
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t24:/+1,/^t25/-1sort/\d\d/r
[?25l[?1cb321
b321
a122
a123
b123
b321b
c321d
b322b
 123b
c123d
t24: alpha, sort on first 2 digits
abc
ab
a


a123
a122
b123
c123d
 123b
a321
b321[?25h[?0c[?25l[?1c:[?25h[?0c/^t25:/+1,/^t26/-1sort/\d\d/rn
[?25l[?1cc321d
b322b
b321
b321b
t25: numeric, sort on first 2 digits
abc[?25h[?0c[?25l[?1c
:[?25h[?0c/^t26:/+1,/^t27/-1sort/\d\d/rx
[?25l[?1ca122
b123
c123d
 123b
a321
b321
c321d
b322b
b321
b321b
t26: hexadecimal, sort on first 2 digits
abc
ab
a


a123
a122
b123
c123d
 123b
a321
b321[?25h[?0c[?25l[?1c:[?25h[?0c/^t27:/+1,/^t28/-1sort no
[?25l[?1cE474: Invalid argument[?25h[?0c[?25l[?1c:[?25h[?0c/^t01:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 459 lines, 2739 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test58.failed test.ok test.out X* viminfo
cp test58.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test58.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test58.in" 639 lines, 10884 charactersTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for spell checking.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 109 lines, 2556 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call TestOne('6', '6')
:call TestOne('7', '7')
:"
:" NOSLITSUGS
:call TestOne('8', '8')
:"
:" clean up for valgrind
:delfunc TestOne
:set spl= enc=latin1
:"
gg:/^test output:/,$wq! test.out
ENDTEST

1affstart
SET ISO8859-1


[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Don't want to depend on the locale from the environment
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=latin1
[?25l[?1c:call TestOne('6', '6')
:call TestOne('7', '7')
:"
:" NOSLITSUGS
:call TestOne('8', '8')
:"
:" clean up for valgrind
:delfunc TestOne
:set spl= enc=latin1
:"
gg:/^test output:/,$wq! test.out
ENDTEST

1affstart
SET ISO8859-1


:so small.vim
:"Don't want to depend on the locale from the environment
:set enc=latin1e!"Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spelliasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=$put =''
  $put ='test '. a:aff . '-' . a:dic  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check using z= in new buffer (crash fixed by patch 7.4a.028).
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset maxmem=512 spell
[?25l[?1cvimvim

STARTTESTvimlatin1
:ezmaxmem
iasdzaff/.dic
:func TestOne(aff, dicspellfilea:affa:dicspldic and .aff
  exea:aff . 'affstarta:aff . 'affend/-1w! Xtest.aff
  exea:dic . 'dicstarta:dic . 'dicend/-1w! Xtest.dic
  mkspell! Xtest Xtest[?25h[?0c[?25l[?1casdTests for spell checking.     vim: set ft=vim :[?25h[?0c[?25l[?1cChange "asdTests" to:

 1 "Acid tests"

 2 "Attests"

 3 "Ass Tests"

 4 "Asa Tests"

 5 "Ase Tests"

 6 "As Tests"

 7 "Sad Tests"

 8 "Ads Tests"

 9 "As tests"

10 "As detests"

11 "Add Tests"

12 "Aid Tests"

13 "Ash Tests"

14 "Ad Tests"

15 "And Tests"

16 "Ask Tests"

17 "Asp Tests"

18 "USD Tests"

19 "Astutest"

20 "Sadists"

21 "Asst Tests"

22 "Assad Tests"

Type number and <Enter> or click with mouse (empty cancels): [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Function to test .aff/.dic with list of good and bad words.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunc TestOne(aff, dic)
[?25l[?1c
:  [?25h[?0c  set spellfile=

[?25l[?1c:  [?25h[?0c  $put =''

[?25l[?1c:  [?25h[?0c  $put ='test '. a:aff . '-' . a:dic

[?25l[?1c:  [?25h[?0c  " Generate a .spl file from a .dic and .aff file.

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'

[?25l[?1c:  [?25h[?0c  mkspell! Xtest Xtest

[?25l[?1c:  [?25h[?0c  " use that spell file

[?25l[?1c:  [?25h[?0c  set spl=Xtest.latin1.spl spell

[?25l[?1c:  [?25h[?0c  " list all valid words

[?25l[?1c:  [?25h[?0c  spelldump

[?25l[?1c:  [?25h[?0c  %yank

[?25l[?1c:  [?25h[?0c  quit

[?25l[?1c:  [?25h[?0c  $put

[?25l[?1c:  [?25h[?0c  $put ='-------'

[?25l[?1c:  [?25h[?0c  " find all bad words and suggestions for them

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:aff . 'good:'

[?25l[?1c:  [?25h[?0c  normal 0f:]s

[?25l[?1c:  [?25h[?0c  let prevbad = ''

[?25l[?1c:  [?25h[?0c  while 1

[?25l[?1c:    [?25h[?0c    let [bad, a] = spellbadword()

[?25l[?1c:    [?25h[?0c    if bad == '' || bad == prevbad || bad == 'badend'

[?25l[?1c:      [?25h[?0c      break

[?25l[?1c:      [?25h[?0c    endif

[?25l[?1c:    [?25h[?0c    let prevbad = bad

[?25l[?1c:    [?25h[?0c    let lst = spellsuggest(bad, 3)

[?25l[?1c:    [?25h[?0c    normal mm

[?25l[?1c:    [?25h[?0c    $put =bad

[?25l[?1c:    [?25h[?0c    $put =string(lst)

[?25l[?1c:    [?25h[?0c    normal `m]s

[?25l[?1c:    [?25h[?0c  endwhile

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('1', '1')
[?25l[?1c"Xtest.aff" [New File] 46 lines, 754 characters written

"Xtest.dic" [New File] 11 lines, 71 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 29 of 127 nodes; 98 (77%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 490 bytes

Reading back spell file...

Performing soundfolding...

Total number of words: 16

Number of words after soundfolding: 16

Compressing word tree...

Compressed 39 of 104 nodes; 65 (62%) remaining

Writing suggestion file Xtest.latin1.sug ...

Estimated runtime memory use: 357 bytes

17 lines yanked

17 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c$put =soundfold('goobledygoook')
[?25l[?1cthe end
uk
wrong
-------
bad
['put', 'uk', 'OK']
inputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']th['put', 'uk', 'test']gebletegek[?25h[?0c[?25l[?1c
kepereneven[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('oeverloos gezwets edale')
[?25l[?1c
everles gesvets etele[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" and now with SAL instead of SOFO items; test automatic reloading
[?25l[?1c[?25h[?0c[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^affstart_sal/+1,/^affend_sal/-1w! Xtest.aff
[?25l[?1c"Xtest.aff" 151 lines, 3412 characters written[?25h[?0c[?25l[?1c:[?25h[?0cmkspell! Xtest Xtest
[?25l[?1cReading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 29 of 127 nodes; 98 (77%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 490 bytes

Performing soundfolding...

Total number of words: 16

Number of words after soundfolding: 15

Compressing word tree...

Compressed 33 of 75 nodes; 42 (56%) remaining

Writing suggestion file Xtest.latin1.sug ...

Estimated runtime memory use: 241 bytes

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c$put =soundfold('goobledygoook')
[?25l[?1c-------
bad
['put', 'uk', 'OK']
inputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end['put', 'uk', 'test']
the['put', 'uk', 'test']gebletegekkepereneveneverles gesvet etelekbltykk[?25h[?0c[?25l[?1c
kprnfn[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('oeverloos gezwets edale')
[?25l[?1c
*fls kswts tl[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" also use an addition file
[?25l[?1c[?25h[?0c[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^addstart/+1,/^addend/-1w! Xtest.latin1.add
[?25l[?1c"Xtest.latin1.add" [New File] 3 lines, 38 characters written[?25h[?0c[?25l[?1c:[?25h[?0cmkspell! Xtest.latin1.add.spl Xtest.latin1.add
[?25l[?1cReading word file Xtest.latin1.add ...
Compressing word tree...

Compressed 0 of 29 nodes; 29 (100%) remaining

Writing spell file Xtest.latin1.add.spl ...

Done!

Estimated runtime memory use: 145 bytes

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset spellfile=Xtest.latin1.add
[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1c2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cinputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_us.latin1.spl
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOP2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend
search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
[?25h[?0c[?25l[?1c2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1ccomment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_gb.latin1.spl
[?25l[?1celequint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOP2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
[?25h[?0c[?25l[?1c2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_nz.latin1.spl
[?25l[?1celequint
elekwint
elekwint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOP2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend
search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
[?25h[?0c[?25l[?1c2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cOk
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_ca.latin1.spl
[?25l[?1celequint
elekwint
elekwint

elequint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOP2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend
search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
elequint
[?25h[?0c[?25l[?1c2good: puts
badend

addstart
/regions=usgbnz
elequint/2
elekwint/3
addend

test2:
elequint test elekwint test elekwent asdf

Test rules for compounding.

3affstart
SET ISO8859-1

COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1ctest
['Test', 'testn', 'testen']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
elequint
elekwint
[?25h[?0c[?25l[?1c
:[?25h[?0cunlet str a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Postponed prefixes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('2', '1')
[?25l[?1c"Xtest.aff" 44 lines, 447 characters written

"Xtest.dic" 11 lines, 71 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 10 of 98 nodes; 88 (89%) remaining

Compressed 0 of 13 nodes; 13 (100%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 505 bytes

17 lines yanked

17 more lines

2affend

2good: puts
badendaddstar
/regions=usgbnz
elequ/2/3
addendtest2:test elekwint test elekwent asdf[?25h[?0c[?25l[?1c:[?25h[?0c" Compound words
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('3', '3')
[?25l[?1c"Xtest.aff" 5 lines, 60 characters written

"Xtest.dic" 5 lines, 29 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - foo
Compressing word tree...
Compressed 6 of 29 nodes; 23 (79%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 115 bytes

3 lines yanked

3 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('4', '4')
[?25l[?1c"Xtest.aff" 45 lines, 559 characters written

"Xtest.dic" 8 lines, 59 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - word
Compressing word tree...
Compressed 2 of 91 nodes; 89 (97%) remaining

Compressed 0 of 15 nodes; 15 (100%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 520 bytes

12 lines yanked

12 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('5', '5')
[?25l[?1c"Xtest.aff" 25 lines, 237 characters written

"Xtest.dic" 6 lines, 57 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - foo
Compressing word tree...
Compressed 19 of 105 nodes; 86 (81%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 440 bytes

10 lines yanked

10 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('6', '6')
[?25l[?1c"Xtest.aff" 23 lines, 211 characters written

"Xtest.dic" 6 lines, 53 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - mee
Compressing word tree...
Compressed 19 of 87 nodes; 68 (78%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 350 bytes

9 lines yanked

9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('7', '7')
[?25l[?1c"Xtest.aff" 22 lines, 223 characters written

"Xtest.dic" 6 lines, 67 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - mee
Compressing word tree...
Compressed 19 of 89 nodes; 70 (78%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 360 bytes

9 lines yanked

9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c1234
mee/391,111,9999
bar/17,61003,123
lead/2
tail/123
middle/77,1
7dicend

bad: mee meea2 prabar probarmaat middle leadmiddle middletail tailleadleadprobar
badend

Test NOSLITSUGS

8affstart
SET ISO8859-1

NOSPLITSUGS
8affend

8dicstart[?25h[?0c[?25l[?1c:[?25h[?0c" NOSLITSUGS
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('8', '8')
[?25l[?1c"Xtest.aff" 3 lines, 27 characters written

"Xtest.dic" 4 lines, 20 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - foo
Compressing word tree...
Compressed 8 of 26 nodes; 18 (69%) remaining

Writing spell file Xtest.latin1.spl ...

Done!

Estimated runtime memory use: 90 bytes

4 lines yanked

4 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1cNOSPLITSUGS
8affend

8dicstart
1234
foo
bar
faabar
8dicend

8good: foo bar faabar
bad: foobar barfootest output:test 1-1# file: Xtest.latin1.spl
input[?25h[?0c[?25l[?1c:[?25h[?0c" clean up for valgrind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc TestOne
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset spl= enc=latin1
[?25l[?1cNOSPLITSUGS
8affend

8dicstart
1234
foo
bar
faabar
8dicend

8good: foo bar faabar
bad: foobar barfoo
badend


test output:

test 1-1
# file: Xtest.latin1.spl
Comment
deol
input[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1casdTests for spell checking.     vim: set ft=vim :

STARTTEST
:so small.vim
:"
:" Don't want to depend on the locale from the environment
:set enc=latin1
:e!
:"
:" Check using z= in new buffer (crash fixed by patch 7.4a.028).
:set maxmem=512 spell
iasd^[z=:"
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^test output:/,$wq! test.out
[?25l[?1c"test.out" [New File] 283 lines, 3793 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test59.failed test.ok test.out X* viminfo
cp test59.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test59.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test59.in" 626 lines, 10897 charactersTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 106 lines, 2520 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call TestOne('3', '3')
:call TestOne('4', '4')
:call TestOne('5', '5')
:call TestOne('6', '6')
:call TestOne('7', '7')
:"
:" clean up for valgrind
:delfunc TestOne
:set spl= enc=latin1
:"
gg:/^test output:/,$wq! test.out
ENDTEST

1affstart
SET ISO8859-1


[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Don't want to depend on the locale from the environment.  The .aff and .dic
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" text is in latin1, the test text is utf-8.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=latin1
[?25l[?1c:call TestOne('3', '3')
:call TestOne('4', '4')
:call TestOne('5', '5')
:call TestOne('6', '6')
:call TestOne('7', '7')
:"
:" clean up for valgrind
:delfunc TestOne
:set spl= enc=latin1
:"
gg:/^test output:/,$wq! test.out
ENDTEST

1affstart
SET ISO8859-1


:" text is in latin1, the test text is utf-8.enc=latin1e!
:set enc=utf-8:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=$put =''
  $put ='test '. a:aff . '-' . a:dic  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0cset enc=utf-8
[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0cset fenc=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Function to test .aff/.dic with list of good and bad words.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunc TestOne(aff, dic)
[?25l[?1c
:  [?25h[?0c  set spellfile=

[?25l[?1c:  [?25h[?0c  $put =''

[?25l[?1c:  [?25h[?0c  $put ='test '. a:aff . '-' . a:dic

[?25l[?1c:  [?25h[?0c  " Generate a .spl file from a .dic and .aff file.

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'

[?25l[?1c:  [?25h[?0c  mkspell! Xtest Xtest

[?25l[?1c:  [?25h[?0c  " use that spell file

[?25l[?1c:  [?25h[?0c  set spl=Xtest.utf-8.spl spell

[?25l[?1c:  [?25h[?0c  " list all valid words

[?25l[?1c:  [?25h[?0c  spelldump

[?25l[?1c:  [?25h[?0c  %yank

[?25l[?1c:  [?25h[?0c  quit

[?25l[?1c:  [?25h[?0c  $put

[?25l[?1c:  [?25h[?0c  $put ='-------'

[?25l[?1c:  [?25h[?0c  " find all bad words and suggestions for them

[?25l[?1c:  [?25h[?0c  exe '1;/^' . a:aff . 'good:'

[?25l[?1c:  [?25h[?0c  normal 0f:]s

[?25l[?1c:  [?25h[?0c  let prevbad = ''

[?25l[?1c:  [?25h[?0c  while 1

[?25l[?1c:    [?25h[?0c    let [bad, a] = spellbadword()

[?25l[?1c:    [?25h[?0c    if bad == '' || bad == prevbad || bad == 'badend'

[?25l[?1c:      [?25h[?0c      break

[?25l[?1c:      [?25h[?0c    endif

[?25l[?1c:    [?25h[?0c    let prevbad = bad

[?25l[?1c:    [?25h[?0c    let lst = spellsuggest(bad, 3)

[?25l[?1c:    [?25h[?0c    normal mm

[?25l[?1c:    [?25h[?0c    $put =bad

[?25l[?1c:    [?25h[?0c    $put =string(lst)

[?25l[?1c:    [?25h[?0c    normal `m]s

[?25l[?1c:    [?25h[?0c  endwhile

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('1', '1')
[?25l[?1c"Xtest.aff" [New File] 48 lines, 768 characters written

"Xtest.dic" [New File] 11 lines, 71 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 29 of 131 nodes; 102 (77%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 510 bytes

Reading back spell file...

Performing soundfolding...

Total number of words: 16

Number of words after soundfolding: 16

Compressing word tree...

Compressed 39 of 104 nodes; 65 (62%) remaining

Writing suggestion file Xtest.utf-8.sug ...

Estimated runtime memory use: 357 bytes

17 lines yanked

17 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c$put =soundfold('goobledygoook')
[?25l[?1cthe end
uk
wrong
-------
bad
['put', 'uk', 'OK']
inputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']the['put', 'uk', 'test']gebletegek[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('kóopërÿnôven')
[?25l[?1c
kepereneven[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('oeverloos gezwets edale')
[?25l[?1c
everles gesvets etele[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" and now with SAL instead of SOFO items; test automatic reloading
[?25l[?1c[?25h[?0c[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^affstart_sal/+1,/^affend_sal/-1w! Xtest.aff
[?25l[?1c"Xtest.aff" 153 lines, 3426 characters written[?25h[?0c[?25l[?1c:[?25h[?0cmkspell! Xtest Xtest
[?25l[?1cReading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 29 of 131 nodes; 102 (77%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 510 bytes

Performing soundfolding...

Total number of words: 16

Number of words after soundfolding: 15

Compressing word tree...

Compressed 33 of 75 nodes; 42 (56%) remaining

Writing suggestion file Xtest.utf-8.sug ...

Estimated runtime memory use: 241 bytes

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c$put =soundfold('goobledygoook')
[?25l[?1c-------
bad
['put', 'uk', 'OK']
inputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end['put', 'uk', 'test']
the['put', 'uk', 'test']gebletegekkepereneveneverles gesvet etelekbltykk[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('kóopërÿnôven')
[?25l[?1c
kprnfn[?25h[?0c[?25l[?1c
:[?25h[?0c$put =soundfold('oeverloos gezwets edale')
[?25l[?1c
*fls kswts tl[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" also use an addition file
[?25l[?1c[?25h[?0c[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^addstart/+1,/^addend/-1w! Xtest.utf-8.add
[?25l[?1c"Xtest.utf-8.add" [New File] 3 lines, 38 characters written[?25h[?0c[?25l[?1c:[?25h[?0cmkspell! Xtest.utf-8.add.spl Xtest.utf-8.add
[?25l[?1cReading word file Xtest.utf-8.add ...
Compressing word tree...

Compressed 0 of 29 nodes; 29 (100%) remaining

Writing spell file Xtest.utf-8.add.spl ...

Done!

Estimated runtime memory use: 145 bytes

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset spellfile=Xtest.utf-8.add
[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1ctomato tomatotomato startend startword startwordword startwordendstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !![?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cinputs
['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_us.utf-8.spl
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOPtomato tomatotomato startend startword startwordword startwordendstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['input', 'puts', 'outputs']
comment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
[?25h[?0c[?25l[?1cstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

COMPOUNDRULE ssmm*ee[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1ccomment
['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_gb.utf-8.spl
[?25l[?1celequint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOPtomato tomatotomato startend startword startwordword startwordendstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['Comment', 'outtest', 'the end']
ok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
[?25h[?0c[?25l[?1cstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

COMPOUNDRULE ssmm*ee[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cok
['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_nz.utf-8.spl
[?25l[?1celequint
elekwint
elekwint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOPtomato tomatotomato startend startword startwordword startwordendstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['OK', 'uk', 'put']
Ok
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
[?25h[?0c[?25l[?1cstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

COMPOUNDRULE ssmm*ee[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1cOk
['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
[?25h[?0c[?25l[?1c
:[?25h[?0cset spl=Xtest_ca.utf-8.spl
[?25l[?1celequint
elekwint
elekwint

elequint
[?25h[?0c[?25l[?1c/[?25h[?0c^test2:
[?25l[?1csearch hit BOTTOM, continuing at TOPtomato tomatotomato startend startword startwordword startwordendstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

search hit BOTTOM, continuing at TOP[?25h[?0c
[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1c['OK', 'Uk', 'Put']
test
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
elequint
[?25h[?0c[?25l[?1cstartwordwordend startwordwordwordend prebork preborkborkpreborkborkborknouword
bad: wordutilize pro borkborkborkborkborkbork tomatotomatotomatoendstart endend startstart wordend wordstartpreborkprebork  preborkpreborkborkstartwordwordwordwordend borkpreborkpreborkborkutilsbork  startnouword
badend

test2:
elequint test elekwint test elekwent asdf

Test affix flags with two characters

5affstart
SET ISO8859-1

FLAG long

NEEDAFFIX !!

COMPOUNDRULE ssmm*ee[?25h[?0c[?25l[?1c:[?25h[?0clet [str, a] = spellbadword()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =str
[?25l[?1ctest
['Test', 'testn', 'testen']
déôl
['deol', 'déôr', 'test']
end
['put', 'uk', 'test']
the
['put', 'uk', 'test']
gebletegek
kepereneven
everles gesvets etele
kbltykk
kprnfn
*fls kswts tl
elekwent
elequint
elekwint
elekwint
elekwent
elequint
elekwent
elequint
elekwint
[?25h[?0c[?25l[?1c
:[?25h[?0cunlet str a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Postponed prefixes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('2', '1')
[?25l[?1c"Xtest.aff" 46 lines, 461 characters written

"Xtest.dic" 11 lines, 71 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - test
Compressing word tree...
Compressed 10 of 102 nodes; 92 (90%) remaining

Compressed 0 of 13 nodes; 13 (100%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 525 bytes

17 lines yanked

17 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1caddstart
/regions=usgbnz
elequint/2
elekwint/3
addend

1good: wrong OK puts. Test the end
bad:  inputs comment ok Ok. test déôl end the
badend

2good: puts
bad: inputs comment ok Ok end the. test déôl
badendTest rules for compounding.3affstart
SET ISO8859-1COMPOUNDMIN 3
COMPOUNDRULE m*
NEEDCOMPOUND x
3affend[?25h[?0c[?25l[?1c:[?25h[?0c" Compound words
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('3', '3')
[?25l[?1c"Xtest.aff" 5 lines, 60 characters written

"Xtest.dic" 5 lines, 29 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - foo
Compressing word tree...
Compressed 6 of 31 nodes; 25 (80%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 125 bytes

3 lines yanked

3 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('4', '4')
[?25l[?1c"Xtest.aff" 45 lines, 559 characters written

"Xtest.dic" 8 lines, 59 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - word
Compressing word tree...
Compressed 2 of 91 nodes; 89 (97%) remaining

Compressed 0 of 15 nodes; 15 (100%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 520 bytes

12 lines yanked

12 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('5', '5')
[?25l[?1c"Xtest.aff" 25 lines, 237 characters written

"Xtest.dic" 6 lines, 57 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - foo
Compressing word tree...
Compressed 19 of 107 nodes; 88 (82%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 440 bytes

10 lines yanked

10 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('6', '6')
[?25l[?1c"Xtest.aff" 23 lines, 211 characters written

"Xtest.dic" 6 lines, 53 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - mee
Compressing word tree...
Compressed 19 of 89 nodes; 70 (78%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 350 bytes

9 lines yanked

9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall TestOne('7', '7')
[?25l[?1c"Xtest.aff" 26 lines, 338 characters written

"Xtest.dic" 6 lines, 67 characters written

Reading affix file Xtest.aff ...

Reading dictionary file Xtest.dic ...

line      2, word      0 - mee
Compressing word tree...
Compressed 19 of 91 nodes; 72 (79%) remaining

Writing spell file Xtest.utf-8.spl ...

Done!

Estimated runtime memory use: 360 bytes

9 lines yanked

9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c1234
mee/391,111,9999
bar/17,61003,123
lead/2
tail/123
middle/77,1
7dicend

7good: meea1 meeaé bar prebar barmeat prebarmeat  leadprebarlead tail leadtail  leadmiddletail
bad: mee meea2 prabar probarmaat middle leadmiddle middletail tailleadleadprobar
badend

test output:

test 1-1
# file: Xtest.utf-8.spl
Comment
deol
déôr
input
OK[?25h[?0c[?25l[?1c:[?25h[?0c" clean up for valgrind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc TestOne
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset spl= enc=latin1
[?25l[?1c1234
mee/391,111,9999
bar/17,61003,123
lead/2
tail/123
middle/77,1
7dicend

7good: meea1 meeaé bar prebar barmeat prebarmeat  leadprebarlead tail leadtail  leadmiddletail
bad: mee meea2 prabar probarmaat middle leadmiddle middletail tailleadleadprobar
badend

test output:

test 1-1
# file: Xtest.utf-8.spl
Comment
deol
déôr
input
OK[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1cTests for spell checking with 'encoding' set to "utf-8".  vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Don't want to depend on the locale from the environment.  The .aff and .dic
:" text is in latin1, the test text is utf-8.
:set enc=latin1
:e!
:set enc=utf-8
:set fenc=
:"
:" Function to test .aff/.dic with list of good and bad words.
:func TestOne(aff, dic)
  set spellfile=
  $put =''
  $put ='test '. a:aff . '-' . a:dic
  " Generate a .spl file from a .dic and .aff file.
  exe '1;/^' . a:aff . 'affstart/+1,/^' . a:aff . 'affend/-1w! Xtest.aff'
  exe '1;/^' . a:dic . 'dicstart/+1,/^' . a:dic . 'dicend/-1w! Xtest.dic'
  mkspell! Xtest Xtest
  " use that spell file[?25h[?0c[?25l[?1c:[?25h[?0c/^test output:/,$wq! test.out
[?25l[?1c"test.out" [New File] 270 lines, 3685 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test60.failed test.ok test.out X* viminfo
cp test60.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test60.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test60.in" 610 lines, 13323 charactersTests for the exists() and has() functions.  vim: set ft=vim ts=8 sw=2 :

STARTTEST
:so small.vim
:function! RunTest(str, result)
    if exists(a:str) == a:resultecho "OK"
    elseecho "FAILED: Checking for " . a:str
    endif
endfunction
:function! TestExists()
    augroup myagroupautocmd! BufEnter*.my     echo "myfile edited"autocmd! FuncUndefined  UndefFun exec "fu UndefFun()\nendfu"
    augroup END
    set rtp+=./sautestlet test_cases = []" valid autocmd group
    let test_cases += [['#myagroup', 1]]
    " valid autocmd group with garbage[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for the exists() and has() functions.  vim: set ft=vim ts=8 sw=2 :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 605 lines, 13230 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTredir END
endfunction
:call TestExists()
:"
:function TestHas()
  redir >> test.out
  for pl in ['6.9.999', '7.1.999', '7.4.123', '9.1.0', '9.9.1']
    echo 'has patch ' . pl . ': ' . has('patch-' . pl)
  endfor
  redir END
endfunc
:call TestHas()
:"
:delfunc TestExists
:delfunc RunTest
:delfunc TestFuncArg
:edit! test.out
:set ff=unix
:w
:qa!
:while getchar(1) | call getchar() | endwhile
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! RunTest(str, result)
[?25l[?1c
:  [?25h[?0c    if exists(a:str) == a:result

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED: Checking for " . a:str

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0cendfunction
[?25l[?1credir END
endfunction
:call TestExists()
:"
:function TestHas()
  redir >> test.out[?25h[?0c[?25l[?1c
:[?25h[?0cfunction! TestExists()
[?25l[?1c
:  [?25h[?0c    augroup myagroup

[?25l[?1c:  [?25h[?0c^Iautocmd! BufEnter       *.my     echo "myfile edited"

[?25l[?1c:  [?25h[?0c^Iautocmd! FuncUndefined  UndefFun exec "fu UndefFun()\nendfu"

[?25l[?1c:  [?25h[?0c    augroup END

[?25l[?1c:  [?25h[?0c    set rtp+=./sautest

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    let test_cases = []

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " valid autocmd group

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup', 1]]

[?25l[?1c:  [?25h[?0c    " valid autocmd group with garbage

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup+b', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd group and event

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup#BufEnter', 1]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd group, event and pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup#BufEnter#*.my', 1]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd event

[?25l[?1c:  [?25h[?0c    let test_cases += [['#BufEnter', 1]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd event and pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['#BufEnter#*.my', 1]]

[?25l[?1c:  [?25h[?0c    " Non-existing autocmd group or event

[?25l[?1c:  [?25h[?0c    let test_cases += [['#xyzagroup', 0]]

[?25l[?1c:  [?25h[?0c    " Non-existing autocmd group and valid autocmd event

[?25l[?1c:  [?25h[?0c    let test_cases += [['#xyzagroup#BufEnter', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd group and event with no matching pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup#CmdwinEnter', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd group and non-existing autocmd event

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup#xyzacmd', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd group and event and non-matching pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['#myagroup#BufEnter#xyzpat', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd event and non-matching pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['#BufEnter#xyzpat', 0]]

[?25l[?1c:  [?25h[?0c    " Empty autocmd group, event and pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['###', 0]]

[?25l[?1c:  [?25h[?0c    " Empty autocmd group and event or empty event and pattern

[?25l[?1c:  [?25h[?0c    let test_cases += [['##', 0]]

[?25l[?1c:  [?25h[?0c    " Valid autocmd event

[?25l[?1c:  [?25h[?0c    let test_cases += [['##FileReadCmd', 1]]

[?25l[?1c:  [?25h[?0c    " Non-existing autocmd event

[?25l[?1c:  [?25h[?0c    let test_cases += [['##MySpecialCmd', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing and working option (long form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['&textwidth', 1]]

[?25l[?1c:  [?25h[?0c    " Existing and working option (short form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['&tw', 1]]

[?25l[?1c:  [?25h[?0c    " Existing and working option with garbage

[?25l[?1c:  [?25h[?0c    let test_cases += [['&tw-', 0]]

[?25l[?1c:  [?25h[?0c    " Global option

[?25l[?1c:  [?25h[?0c    let test_cases += [['&g:errorformat', 1]]

[?25l[?1c:  [?25h[?0c    " Local option

[?25l[?1c:  [?25h[?0c    let test_cases += [['&l:errorformat', 1]]

[?25l[?1c:  [?25h[?0c    " Negative form of existing and working option (long form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['&nojoinspaces', 0]]

[?25l[?1c:  [?25h[?0c    " Negative form of existing and working option (short form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['&nojs', 0]]

[?25l[?1c:  [?25h[?0c    " Non-existing option

[?25l[?1c:  [?25h[?0c    let test_cases += [['&myxyzoption', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing and working option (long form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['+incsearch', 1]]

[?25l[?1c:  [?25h[?0c    " Existing and working option with garbage

[?25l[?1c:  [?25h[?0c    let test_cases += [['+incsearch!1', 0]]

[?25l[?1c:  [?25h[?0c    " Existing and working option (short form)

[?25l[?1c:  [?25h[?0c    let test_cases += [['+is', 1]]

[?25l[?1c:  [?25h[?0c    " Existing option that is hidden.

[?25l[?1c:  [?25h[?0c    let test_cases += [['+autoprint', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing environment variable

[?25l[?1c:  [?25h[?0c    let $EDITOR_NAME = 'Vim Editor'

[?25l[?1c:  [?25h[?0c    let test_cases += [['$EDITOR_NAME', 1]]

[?25l[?1c:  [?25h[?0c    " Non-existing environment variable

[?25l[?1c:  [?25h[?0c    let test_cases += [['$NON_ENV_VAR', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid internal function

[?25l[?1c:  [?25h[?0c    let test_cases += [['*bufnr', 1]]

[?25l[?1c:  [?25h[?0c    " Valid internal function with ()

[?25l[?1c:  [?25h[?0c    let test_cases += [['*bufnr()', 1]]

[?25l[?1c:  [?25h[?0c    " Non-existing internal function

[?25l[?1c:  [?25h[?0c    let test_cases += [['*myxyzfunc', 0]]

[?25l[?1c:  [?25h[?0c    " Valid internal function with garbage

[?25l[?1c:  [?25h[?0c    let test_cases += [['*bufnr&6', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid user defined function

[?25l[?1c:  [?25h[?0c    let test_cases += [['*TestExists', 1]]

[?25l[?1c:  [?25h[?0c    " Non-existing user defined function

[?25l[?1c:  [?25h[?0c    let test_cases += [['*MyxyzFunc', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Function that may be created by FuncUndefined event

[?25l[?1c:  [?25h[?0c    let test_cases += [['*UndefFun', 0]]

[?25l[?1c:  [?25h[?0c    " Function that may be created by script autoloading

[?25l[?1c:  [?25h[?0c    let test_cases += [['*footest#F', 0]]

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    redir! > test.out

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    for [test_case, result] in test_cases

[?25l[?1c:    [?25h[?0c        echo test_case . ": " . result

[?25l[?1c:    [?25h[?0c        call RunTest(test_case, result)

[?25l[?1c:    [?25h[?0c    endfor

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid internal command (full match)

[?25l[?1c:  [?25h[?0c    echo ':edit: 2'

[?25l[?1c:  [?25h[?0c    if exists(':edit') == 2

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid internal command (full match) with garbage

[?25l[?1c:  [?25h[?0c    echo ':edit/a: 0'

[?25l[?1c:  [?25h[?0c    if exists(':edit/a') == 0

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid internal command (partial match)

[?25l[?1c:  [?25h[?0c    echo ':q: 1'

[?25l[?1c:  [?25h[?0c    if exists(':q') == 1

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing internal command

[?25l[?1c:  [?25h[?0c    echo ':invalidcmd: 0'

[?25l[?1c:  [?25h[?0c    if !exists(':invalidcmd')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " User defined command (full match)

[?25l[?1c:  [?25h[?0c    command! MyCmd :echo 'My command'

[?25l[?1c:  [?25h[?0c    echo ':MyCmd: 2'

[?25l[?1c:  [?25h[?0c    if exists(':MyCmd') == 2

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " User defined command (partial match)

[?25l[?1c:  [?25h[?0c    command! MyOtherCmd :echo 'Another command'

[?25l[?1c:  [?25h[?0c    echo ':My: 3'

[?25l[?1c:  [?25h[?0c    if exists(':My') == 3

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Command modifier

[?25l[?1c:  [?25h[?0c    echo ':rightbelow: 2'

[?25l[?1c:  [?25h[?0c    if exists(':rightbelow') == 2

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing user defined command (full match)

[?25l[?1c:  [?25h[?0c    delcommand MyCmd

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    echo ':MyCmd: 0'

[?25l[?1c:  [?25h[?0c    if !exists(':MyCmd')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing user defined command (partial match)

[?25l[?1c:  [?25h[?0c    delcommand MyOtherCmd

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    echo ':My: 0'

[?25l[?1c:  [?25h[?0c    if !exists(':My')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local variable

[?25l[?1c:  [?25h[?0c    let local_var = 1

[?25l[?1c:  [?25h[?0c    echo 'local_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('local_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local variable with garbage

[?25l[?1c:  [?25h[?0c    let local_var = 1

[?25l[?1c:  [?25h[?0c    echo 'local_var%n: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_var%n')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing local variable

[?25l[?1c:  [?25h[?0c    unlet local_var

[?25l[?1c:  [?25h[?0c    echo 'local_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing autoload variable that may be autoloaded

[?25l[?1c:  [?25h[?0c    echo 'footest#x: 0'

[?25l[?1c:  [?25h[?0c    if !exists('footest#x')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local list

[?25l[?1c:  [?25h[?0c    let local_list = ["blue", "orange"]

[?25l[?1c:  [?25h[?0c    echo 'local_list: 1'

[?25l[?1c:  [?25h[?0c    if exists('local_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local list item

[?25l[?1c:  [?25h[?0c    echo 'local_list[1]: 1'

[?25l[?1c:  [?25h[?0c    if exists('local_list[1]')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local list item with garbage

[?25l[?1c:  [?25h[?0c    echo 'local_list[1]+5: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_list[1]+5')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Invalid local list item

[?25l[?1c:  [?25h[?0c    echo 'local_list[2]: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_list[2]')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing local list

[?25l[?1c:  [?25h[?0c    unlet local_list

[?25l[?1c:  [?25h[?0c    echo 'local_list: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Valid local dictionary

[?25l[?1c:  [?25h[?0c    let local_dict = {"xcord":100, "ycord":2}

[?25l[?1c:  [?25h[?0c    echo 'local_dict: 1'

[?25l[?1c:  [?25h[?0c    if exists('local_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing local dictionary

[?25l[?1c:  [?25h[?0c    unlet local_dict

[?25l[?1c:  [?25h[?0c    echo 'local_dict: 0'

[?25l[?1c:  [?25h[?0c    if !exists('local_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing local curly-brace variable

[?25l[?1c:  [?25h[?0c    let str = "local"

[?25l[?1c:  [?25h[?0c    let curly_{str}_var = 1

[?25l[?1c:  [?25h[?0c    echo 'curly_' . str . '_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing local curly-brace variable

[?25l[?1c:  [?25h[?0c    unlet curly_{str}_var

[?25l[?1c:  [?25h[?0c    echo 'curly_' . str . '_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing global variable

[?25l[?1c:  [?25h[?0c    let g:global_var = 1

[?25l[?1c:  [?25h[?0c    echo 'g:global_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('g:global_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing global variable with garbage

[?25l[?1c:  [?25h[?0c    echo 'g:global_var-n: 1'

[?25l[?1c:  [?25h[?0c    if !exists('g:global_var-n')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing global variable

[?25l[?1c:  [?25h[?0c    unlet g:global_var

[?25l[?1c:  [?25h[?0c    echo 'g:global_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('g:global_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing global list

[?25l[?1c:  [?25h[?0c    let g:global_list = ["blue", "orange"]

[?25l[?1c:  [?25h[?0c    echo 'g:global_list: 1'

[?25l[?1c:  [?25h[?0c    if exists('g:global_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing global list

[?25l[?1c:  [?25h[?0c    unlet g:global_list

[?25l[?1c:  [?25h[?0c    echo 'g:global_list: 0'

[?25l[?1c:  [?25h[?0c    if !exists('g:global_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing global dictionary

[?25l[?1c:  [?25h[?0c    let g:global_dict = {"xcord":100, "ycord":2}

[?25l[?1c:  [?25h[?0c    echo 'g:global_dict: 1'

[?25l[?1c:  [?25h[?0c    if exists('g:global_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing global dictionary

[?25l[?1c:  [?25h[?0c    unlet g:global_dict

[?25l[?1c:  [?25h[?0c    echo 'g:global_dict: 0'

[?25l[?1c:  [?25h[?0c    if !exists('g:global_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing global curly-brace variable

[?25l[?1c:  [?25h[?0c    let str = "global"

[?25l[?1c:  [?25h[?0c    let g:curly_{str}_var = 1

[?25l[?1c:  [?25h[?0c    echo 'g:curly_' . str . '_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('g:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing global curly-brace variable

[?25l[?1c:  [?25h[?0c    unlet g:curly_{str}_var

[?25l[?1c:  [?25h[?0c    echo 'g:curly_' . str . '_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('g:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing window variable

[?25l[?1c:  [?25h[?0c    echo 'w:window_var: 1'

[?25l[?1c:  [?25h[?0c    let w:window_var = 1

[?25l[?1c:  [?25h[?0c    if exists('w:window_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing window variable

[?25l[?1c:  [?25h[?0c    unlet w:window_var

[?25l[?1c:  [?25h[?0c    echo 'w:window_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('w:window_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing window list

[?25l[?1c:  [?25h[?0c    let w:window_list = ["blue", "orange"]

[?25l[?1c:  [?25h[?0c    echo 'w:window_list: 1'

[?25l[?1c:  [?25h[?0c    if exists('w:window_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing window list

[?25l[?1c:  [?25h[?0c    unlet w:window_list

[?25l[?1c:  [?25h[?0c    echo 'w:window_list: 0'

[?25l[?1c:  [?25h[?0c    if !exists('w:window_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing window dictionary

[?25l[?1c:  [?25h[?0c    let w:window_dict = {"xcord":100, "ycord":2}

[?25l[?1c:  [?25h[?0c    echo 'w:window_dict: 1'

[?25l[?1c:  [?25h[?0c    if exists('w:window_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing window dictionary

[?25l[?1c:  [?25h[?0c    unlet w:window_dict

[?25l[?1c:  [?25h[?0c    echo 'w:window_dict: 0'

[?25l[?1c:  [?25h[?0c    if !exists('w:window_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing window curly-brace variable

[?25l[?1c:  [?25h[?0c    let str = "window"

[?25l[?1c:  [?25h[?0c    let w:curly_{str}_var = 1

[?25l[?1c:  [?25h[?0c    echo 'w:curly_' . str . '_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('w:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing window curly-brace variable

[?25l[?1c:  [?25h[?0c    unlet w:curly_{str}_var

[?25l[?1c:  [?25h[?0c    echo 'w:curly_' . str . '_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('w:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing buffer variable

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_var: 1'

[?25l[?1c:  [?25h[?0c    let b:buffer_var = 1

[?25l[?1c:  [?25h[?0c    if exists('b:buffer_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing buffer variable

[?25l[?1c:  [?25h[?0c    unlet b:buffer_var

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('b:buffer_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing buffer list

[?25l[?1c:  [?25h[?0c    let b:buffer_list = ["blue", "orange"]

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_list: 1'

[?25l[?1c:  [?25h[?0c    if exists('b:buffer_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing buffer list

[?25l[?1c:  [?25h[?0c    unlet b:buffer_list

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_list: 0'

[?25l[?1c:  [?25h[?0c    if !exists('b:buffer_list')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing buffer dictionary

[?25l[?1c:  [?25h[?0c    let b:buffer_dict = {"xcord":100, "ycord":2}

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_dict: 1'

[?25l[?1c:  [?25h[?0c    if exists('b:buffer_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing buffer dictionary

[?25l[?1c:  [?25h[?0c    unlet b:buffer_dict

[?25l[?1c:  [?25h[?0c    echo 'b:buffer_dict: 0'

[?25l[?1c:  [?25h[?0c    if !exists('b:buffer_dict')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing buffer curly-brace variable

[?25l[?1c:  [?25h[?0c    let str = "buffer"

[?25l[?1c:  [?25h[?0c    let b:curly_{str}_var = 1

[?25l[?1c:  [?25h[?0c    echo 'b:curly_' . str . '_var: 1'

[?25l[?1c:  [?25h[?0c    if exists('b:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing buffer curly-brace variable

[?25l[?1c:  [?25h[?0c    unlet b:curly_{str}_var

[?25l[?1c:  [?25h[?0c    echo 'b:curly_' . str . '_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('b:curly_{str}_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Script-local tests

[?25l[?1c:  [?25h[?0c    source test60.vim

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Existing Vim internal variable

[?25l[?1c:  [?25h[?0c    echo 'v:version: 1'

[?25l[?1c:  [?25h[?0c    if exists('v:version')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Non-existing Vim internal variable

[?25l[?1c:  [?25h[?0c    echo 'v:non_exists_var: 0'

[?25l[?1c:  [?25h[?0c    if !exists('v:non_exists_var')

[?25l[?1c:    [?25h[?0c^Iecho "OK"

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c^Iecho "FAILED"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c    " Function arguments

[?25l[?1c:  [?25h[?0c    function TestFuncArg(func_arg, ...)

[?25l[?1c:    [?25h[?0c        echo 'a:func_arg: 1'

[?25l[?1c:    [?25h[?0c        if exists('a:func_arg')

[?25l[?1c:      [?25h[?0c            echo "OK"

[?25l[?1c:      [?25h[?0c        else

[?25l[?1c:      [?25h[?0c            echo "FAILED"

[?25l[?1c:      [?25h[?0c        endif

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c        echo 'a:non_exists_arg: 0'

[?25l[?1c:    [?25h[?0c        if !exists('a:non_exists_arg')

[?25l[?1c:      [?25h[?0c            echo "OK"

[?25l[?1c:      [?25h[?0c        else

[?25l[?1c:      [?25h[?0c            echo "FAILED"

[?25l[?1c:      [?25h[?0c        endif

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c        echo 'a:1: 1'

[?25l[?1c:    [?25h[?0c        if exists('a:1')

[?25l[?1c:      [?25h[?0c            echo "OK"

[?25l[?1c:      [?25h[?0c        else

[?25l[?1c:      [?25h[?0c            echo "FAILED"

[?25l[?1c:      [?25h[?0c        endif

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c        echo 'a:2: 0'

[?25l[?1c:    [?25h[?0c        if !exists('a:2')

[?25l[?1c:      [?25h[?0c            echo "OK"

[?25l[?1c:      [?25h[?0c        else

[?25l[?1c:      [?25h[?0c            echo "FAILED"

[?25l[?1c:      [?25h[?0c        endif

[?25l[?1c:    [?25h[?0c    endfunction

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c    call TestFuncArg("arg1", "arg2")

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c    echo ' g:footest#x =' g:footest#x

[?25l[?1c:    [?25h[?0c    echo '   footest#F()' footest#F()

[?25l[?1c:    [?25h[?0c    echo 'UndefFun()' UndefFun()

[?25l[?1c:    [?25h[?0c

[?25l[?1c:    [?25h[?0c    redir END

[?25l[?1c:    [?25h[?0cendfunction
[?25l[?1credir END
endfunction
:call TestExists()
:"
:function TestHas()
  redir >> test.out
  for pl in ['6.9.999', '7.1.999', '7.4.123', '9.1.0', '9.9.1']
    echo 'has patch ' . pl . ': ' . has('patch-' . pl)
  endfor
  redir END
endfunc
:call TestHas()
:"
:delfunc TestExists
:delfunc RunTest
:delfunc TestFuncArg
:edit! test.out
:set ff=unix
:w
:qa!
:while getchar(1) | call getchar() | endwhile
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0ccall TestExists()
[?25l[?1c#myagroup: 1
OK

#myagroup+b: 0

OK

#myagroup#BufEnter: 1

OK

#myagroup#BufEnter#*.my: 1

OK

#BufEnter: 1

OK

#BufEnter#*.my: 1

OK

#xyzagroup: 0

OK

#xyzagroup#BufEnter: 0

OK

#myagroup#CmdwinEnter: 0

OK

#myagroup#xyzacmd: 0

OK

#myagroup#BufEnter#xyzpat: 0

OK

#BufEnter#xyzpat: 0

OK

###: 0

OK

##: 0

OK

##FileReadCmd: 1

OK

##MySpecialCmd: 0

OK

&textwidth: 1

OK

&tw: 1

OK

&tw-: 0

OK

&g:errorformat: 1

OK

&l:errorformat: 1

OK

&nojoinspaces: 0

OK

&nojs: 0

OK

&myxyzoption: 0

OK

+incsearch: 1

OK

+incsearch!1: 0

OK

+is: 1

OK

+autoprint: 0

OK

$EDITOR_NAME: 1

OK

$NON_ENV_VAR: 0

OK

*bufnr: 1

OK

*bufnr(): 1

OK

*myxyzfunc: 0

OK

*bufnr&6: 0

OK

*TestExists: 1

OK

*MyxyzFunc: 0

OK

*UndefFun: 0

OK

*footest#F: 0

OK

:edit: 2

OK

:edit/a: 0

OK

:q: 1

OK

:invalidcmd: 0

OK

:MyCmd: 2

OK

:My: 3

OK

:rightbelow: 2

OK

:MyCmd: 0

OK

:My: 0

OK

local_var: 1

OK

local_var%n: 0

OK

local_var: 0

OK

footest#x: 0

OK

local_list: 1

OK

local_list[1]: 1

OK

local_list[1]+5: 0

OK

local_list[2]: 0

OK

local_list: 0

OK

local_dict: 1

OK

local_dict: 0

OK

curly_local_var: 1

OK

curly_local_var: 0

OK

g:global_var: 1

OK

g:global_var-n: 1

OK

g:global_var: 0

OK

g:global_list: 1

OK

g:global_list: 0

OK

g:global_dict: 1

OK

g:global_dict: 0

OK

g:curly_global_var: 1

OK

g:curly_global_var: 0

OK

w:window_var: 1

OK

w:window_var: 0

OK

w:window_list: 1

OK

w:window_list: 0

OK

w:window_dict: 1

OK

w:window_dict: 0

OK

w:curly_window_var: 1

OK

w:curly_window_var: 0

OK

b:buffer_var: 1

OK

b:buffer_var: 0

OK

b:buffer_list: 1

OK

b:buffer_list: 0

OK

b:buffer_dict: 1

OK

b:buffer_dict: 0

OK

b:curly_buffer_var: 1

OK

b:curly_buffer_var: 0

OK

s:script_var: 1

OK

s:script_var: 0

OK

s:script_list: 1

OK

s:script_list: 0

OK

s:script_dict: 1

OK

s:script_dict: 0

OK

s:curly_script_var: 1

OK

s:curly_script_var: 0

OK

*s:my_script_func: 1

OK

*s:my_script_func: 0

OK

v:version: 1

OK

v:non_exists_var: 0

OK

a:func_arg: 1

OK

a:non_exists_arg: 0

OK

a:1: 1

OK

a:2: 0

OK

 g:footest#x = 1

   footest#F() 0

UndefFun() 0

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1credir END
endfunction
:call TestExists()
:"
:function TestHas()
  redir >> test.out
  for pl in ['6.9.999', '7.1.999', '7.4.123', '9.1.0', '9.9.1']
    echo 'has patch ' . pl . ': ' . has('patch-' . pl)
  endfor
  redir END
endfunc
:call TestHas()
:"
:delfunc TestExists
:delfunc RunTest
:delfunc TestFuncArg
:edit! test.out
:set ff=unix
:w
:qa!
:while getchar(1) | call getchar() | endwhile
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0cfunction TestHas()
[?25l[?1c
:  [?25h[?0c  redir >> test.out

[?25l[?1c:  [?25h[?0c  for pl in ['6.9.999', '7.1.999', '7.4.123', '9.1.0', '9.9.1']

[?25l[?1c:    [?25h[?0c    echo 'has patch ' . pl . ': ' . has('patch-' . pl)

[?25l[?1c:    [?25h[?0c  endfor

[?25l[?1c:  [?25h[?0c  redir END

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1credir END
endfunction
:call TestExists()
:"
:function TestHas()
  redir >> test.out[?25h[?0c[?25l[?1c
:[?25h[?0ccall TestHas()
[?25l[?1chas patch 6.9.999: 1

has patch 7.1.999: 1

has patch 7.4.123: 1

has patch 9.1.0: 0

has patch 9.9.1: 0

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1credir END
endfunction
:call TestExists()
:"
:function TestHas()[?25h[?0c[?25l[?1c
:[?25h[?0cdelfunc TestExists
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc RunTest
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc TestFuncArg
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cedit! test.out
[?25l[?1c"test.out" [Incomplete last line] 211 lines, 2041 characters#myagroup: 1
OK#myagroup+b: 0
OK#myagroup#BufEnter: 1
OK#myagroup#BufEnter#*.my: 1OK#BufEnter: 1
OK#BufEnter#*.my: 1
OK
#xyzagroup: 0OK#xyzagroup#BufEnter: 0
OK#myagroup#CmdwinEnter: 0
OK
#myagroup#xyzacmd: 0
OK#myagroup#BufEnter#xyzpat: 0
OK[?25h[?0c[?25l[?1c:[?25h[?0cset ff=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 211 lines, 2042 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test61.failed test.ok test.out X* viminfo
cp test61.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test61.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test61.in" 113 lines, 1778 charactersTests for undo tree.
Since this script is sourced we need to explicitly break changes up in
undo-able pieces.  Do that by setting 'undolevels'.
Also tests :earlier and :later.

STARTTEST
:echo undotree().entries
ENDTEST

STARTTEST
:" Delete three characters and undo
Gx:set ul=100
x:set ul=100
x:.w! test.out
g-:.w >>test.out
g-:.w >>test.out
g-:.w >>test.out
g-:.w >>test.out
:"
:/^111/w >>test.out
:" Delete three other characters and go back in time step by step
$x:set ul=100
x:set ul=100[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for undo tree.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1 line, 25 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cecho undotree().entries
[?25l[?1c[][?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 97 lines, 1505 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set ul=100
ob^[:
:set ul=100
o1^[a2^R=setline('.','1234')

^[uu:"
oc^[:
:set ul=100
o1^[a2^R=setline('.','1234')

^[u:"
od^[:
:set ul=100
o1^[a2^R=string(123)
^[u:"
:%w >>test.out
:qa!
ENDTEST

1111 -----
2222 -----

123456789[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" Delete three characters and undo
[?25l[?1c[?25h[?0c[?25l[?1c23456789[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c3456789[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c456789[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 7 characters written[?25h[?0c[?25l[?1c
1 change; before #3  0 seconds ago3456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #2  0 seconds ago23456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
1 change; before #1  0 seconds ago123456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^111/w >>test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Delete three other characters and go back in time step by step
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0csleep 1
[?25l[?1c[?25h[?0c[?25l[?1c
1 change; before #6  1 seconds ago7[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #5  1 seconds ago8[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
4 changes; after #3  2 seconds ago456789[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c
1 change; before #3  2 seconds ago3456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #2  2 seconds ago23456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
1 change; before #1  2 seconds ago123456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
3 changes; after #6  1 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^222/w >>test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Delay for three seconds and go some seconds forward and backward
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csleep 2
[?25l[?1c[?25h[?0c[?25l[?1c6a[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1cab[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1cbc[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cear 1s
[?25l[?1c3 changes; before #7  0 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cear 3s
[?25l[?1c2 changes; before #5  3 seconds ago78[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c:[?25h[?0clater 1s
[?25l[?1c2 changes; after #6  4 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0clater 1h
[?25l[?1c3 changes; after #9  1 seconds agoabc[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test undojoin
[?25l[?1c[?25h[?0c
[?25l[?1c
aaaa[?25h[?0c[?25l[?1c
:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
bbbb[?25h[?0c[?25l[?1c
1 line less; before #11  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 5 characters appended[?25h[?0c[?25l[?1c
bbbb[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cundojoin
[?25l[?1c[?25h[?0c[?25l[?1c
cccc[?25h[?0c[?25l[?1c
2 fewer lines; before #12  0 seconds ago~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 5 characters appended[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest
[?25l[?1c"Xtest" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1cone one one[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw!
[?25l[?1c"Xtest" [New File] 1 line, 12 characters written[?25h[?0c[?25l[?1c
two[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
two[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtest" 3 lines, 20 characters written[?25h[?0c[?25l[?1c
three[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c1 line less; before #4  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank a
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c2 fewer lines; before #2  0 seconds ago~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank b
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c1 line less; before #1  0 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c" expect empty line
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c1 more line; after #1  0 seconds agoone one one
[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c2 more lines; after #3  0 seconds agotwotwo[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank e
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c1 more line; after #4  0 seconds agothree[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo\nthree"
[?25l[?1c[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put e
[?25l[?1c3 more linesone one one
two
two3 more lines[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put d
[?25l[?1cone one one[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put c
[?25l[?1c[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put b
[?25l[?1cone one one[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put a
[?25l[?1c3 more linesone one one
two
two3 more lines[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 19 lines, 115 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cenew!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c-- INSERT --a[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --b[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0csetline('.','1234')
[?25l[?1c20
34-- INSERT --u[?25h[?0c3[?25l[?1c[?25h[?0c[?25l[?1c1 line less; before #4  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c3~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0csetline('.','1234')
[?25l[?1c20
34-- INSERT --u[?25h[?0c3[?25l[?1c[?25h[?0c[?25l[?1c1 line less; before #7  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --d[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0cstring(123)
[?25l[?1c2123[?25h[?0c[?25l[?1c1 line less; before #9  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%w >>test.out
[?25l[?1c"test.out" 6L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
20c20
< 12345678
---
> 123456789
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test61.in" 113 lines, 1778 charactersTests for undo tree.
Since this script is sourced we need to explicitly break changes up in
undo-able pieces.  Do that by setting 'undolevels'.
Also tests :earlier and :later.

STARTTEST
:echo undotree().entries
ENDTEST

STARTTEST
:" Delete three characters and undo
Gx:set ul=100
x:set ul=100
x:.w! test.out
g-:.w >>test.out
g-:.w >>test.out
g-:.w >>test.out
g-:.w >>test.out
:"
:/^111/w >>test.out
:" Delete three other characters and go back in time step by step
$x:set ul=100
x:set ul=100[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for undo tree.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1 line, 25 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cecho undotree().entries
[?25l[?1c[][?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 97 lines, 1505 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set ul=100
ob^[:
:set ul=100
o1^[a2^R=setline('.','1234')

^[uu:"
oc^[:
:set ul=100
o1^[a2^R=setline('.','1234')

^[u:"
od^[:
:set ul=100
o1^[a2^R=string(123)
^[u:"
:%w >>test.out
:qa!
ENDTEST

1111 -----
2222 -----

123456789[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" Delete three characters and undo
[?25l[?1c[?25h[?0c[?25l[?1c23456789[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c3456789[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c456789[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 7 characters written[?25h[?0c[?25l[?1c
1 change; before #3  0 seconds ago3456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #2  0 seconds ago23456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
1 change; before #1  0 seconds ago123456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^111/w >>test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Delete three other characters and go back in time step by step
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0csleep 1
[?25l[?1c[?25h[?0c[?25l[?1c
1 change; before #6  1 seconds ago7[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #5  1 seconds ago8[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
4 changes; after #3  1 seconds ago456789[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c
1 change; before #3  1 seconds ago3456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 8 characters appended[?25h[?0c[?25l[?1c
1 change; before #2  1 seconds ago23456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 9 characters appended[?25h[?0c[?25l[?1c
1 change; before #1  1 seconds ago123456789
[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
Already at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c
3 changes; after #6  2 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^222/w >>test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" 1 line, 11 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c" Delay for three seconds and go some seconds forward and backward
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csleep 2
[?25l[?1c[?25h[?0c[?25l[?1c6a[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1cab[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1cbc[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cear 1s
[?25l[?1c3 changes; before #7  0 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cear 3s
[?25l[?1c3 changes; before #1  4 seconds ago789[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0clater 1s
[?25l[?1c3 changes; after #6  4 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 7 characters appended[?25h[?0c[?25l[?1c:[?25h[?0clater 1h
[?25l[?1c3 changes; after #9  0 seconds agoabc[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 10 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test undojoin
[?25l[?1c[?25h[?0c
[?25l[?1c
aaaa[?25h[?0c[?25l[?1c
:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
bbbb[?25h[?0c[?25l[?1c
1 line less; before #11  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 5 characters appended[?25h[?0c[?25l[?1c
bbbb[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cundojoin
[?25l[?1c[?25h[?0c[?25l[?1c
cccc[?25h[?0c[?25l[?1c
2 fewer lines; before #12  0 seconds ago~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1 line, 5 characters appended[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest
[?25l[?1c"Xtest" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1cone one one[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw!
[?25l[?1c"Xtest" [New File] 1 line, 12 characters written[?25h[?0c[?25l[?1c
two[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
two[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtest" 3 lines, 20 characters written[?25h[?0c[?25l[?1c
three[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c1 line less; before #4  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank a
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c2 fewer lines; before #2  0 seconds ago~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank b
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cearlier 1f
[?25l[?1c1 line less; before #1  0 seconds ago[?25h[?0c[?25l[?1c:[?25h[?0c" expect empty line
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c1 more line; after #1  0 seconds agoone one one
[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c2 more lines; after #3  1 seconds agotwotwo[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%yank e
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0clater 1f
[?25l[?1c1 more line; after #4  1 seconds agothree[?25h[?0c[?25l[?1c:[?25h[?0c" expect "one one one\ntwo\ntwo\nthree"
[?25l[?1c[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put e
[?25l[?1c3 more linesone one one
two
two3 more lines[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put d
[?25l[?1cone one one[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put c
[?25l[?1c[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put b
[?25l[?1cone one one[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c0put a
[?25l[?1c3 more linesone one one
two
two3 more lines[?25h[?0c[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 19 lines, 115 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cenew!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c-- INSERT --a[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --b[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0csetline('.','1234')
[?25l[?1c20
34-- INSERT --u[?25h[?0c3[?25l[?1c[?25h[?0c[?25l[?1c1 line less; before #4  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c3~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0csetline('.','1234')
[?25l[?1c20
34-- INSERT --u[?25h[?0c3[?25l[?1c[?25h[?0c[?25l[?1c1 line less; before #7  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --d[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --1[?25h[?0c[?25l[?1c-- INSERT --=[?25h[?0cstring(123)
[?25l[?1c2123[?25h[?0c[?25l[?1c1 line less; before #9  0 seconds ago~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%w >>test.out
[?25l[?1c"test.out" 6L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test62.failed test.ok test.out X* viminfo
cp test62.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test62.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test62.in" 205 lines, 5729 charactersTests for tab pages

STARTTEST
:so small.vim
:lang C
:" Simple test for opening and closing a tab page
:tabnew
:let nr = tabpagenr()
:q
:call append(line('$'), 'tab page ' . nr)
:unlet nr
:"
:" Open three tab pages and use ":tabdo"
:0tabnew
:1tabnew
:$tabnew
:tabdo call append(line('$'), 'this is tab page ' . tabpagenr())
:tabclose! 2
:tabrewind
:let line1 = getline('$')
:undo
:q
:tablast[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for tab pages[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 199 lines, 5680 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTC tabnext 1autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Simple test for opening and closing a tab page
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c test62.in  [No Name]                                                           X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet nr = tabpagenr()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cq
[?25l[?1cC tabnext 1autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall append(line('$'), 'tab page ' . nr)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet nr
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Open three tab pages and use ":tabdo"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c0tabnew
[?25l[?1c [No Name]  + test62.in                                                         X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c1tabnew
[?25l[?1c [No Name]  [No Name]  + test62.in                                              X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$tabnew
[?25l[?1c [No Name]  [No Name]  + test62.in  [No Name]                                   X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabdo call append(line('$'), 'this is tab page ' . tabpagenr())
[?25l[?1c + [No Name]  + [No Name]  + test62.in  + [No Name]                             Xthis is tab page 4
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabclose! 2
[?25l[?1ctest62.in + [No Name]               X[?25h[?0c[?25l[?1c:[?25h[?0ctabrewind
[?25l[?1c + [No Name]  + test62.in  + [No Name]                                          Xthis is tab page 1
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet line1 = getline('$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cundo
[?25l[?1c2 fewer lines; before #1  0 seconds ago[No Name]  + test62.in  + [No Name]    X~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cq
[?25l[?1c + test62.in  + [No Name]                                                       Xautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ctablast
[?25l[?1c + test62.in  + [No Name]                                                       Xthis is tab page 4
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet line2 = getline('$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1cC tabnext 1autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall append(line('$'), line1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), line2)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet line1 line2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test for settabvar() and gettabvar() functions. Open a new tab page and 
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" set 3 variables to a number, string and a list. Verify that the variables
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" are correctly set.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c + test62.in  [No Name]                                                         X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabfirst
[?25l[?1c + test62.in  [No Name]                                                         Xautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall settabvar(2, 'val_num', 100)
[?25l[?1c + test62.in  [No Name]                                                         Xautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall settabvar(2, 'val_str', 'SetTabVar test')
[?25l[?1c + test62.in  [No Name]                                                         Xautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall settabvar(2, 'val_list', ['red', 'blue', 'green'])
[?25l[?1c + test62.in  [No Name]                                                         Xautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet test_status = 'gettabvar: fail'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif gettabvar(2, 'val_num') == 100 && gettabvar(2, 'val_str') == 'SetTabVar tes

t' && gettabvar(2, 'val_list') == ['red', 'blue', 'green']
[?25l[?1c:  [?25h[?0c:    let test_status = 'gettabvar: pass'

[?25l[?1c:  [?25h[?0c:endif
 + test62.in  [No Name]                                                         X[?25l[?1cautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3[?25h[?0c[?25l[?1c

:[?25h[?0ccall append(line('$'), test_status)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabnext 2
[?25l[?1c + test62.in  [No Name]                                                         X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet test_status = 'settabvar: fail'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif t:val_num == 100 && t:val_str == 'SetTabVar test'  && t:val_list == ['red',

'blue', 'green']
[?25l[?1c:  [?25h[?0c:   let test_status = 'settabvar: pass'

[?25l[?1c:  [?25h[?0c:endif
 + test62.in  [No Name]                                                         X[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabclose
[?25l[?1cC tabnext 1autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0ccall append(line('$'), test_status)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has('gui') || has('clientserver')
[?25l[?1c
:  [?25h[?0c:" Test for ":tab drop exist-file" to keep current window.

[?25l[?1c:  [?25h[?0c:sp test1

[?25l[?1c:  [?25h[?0c:tab drop test1

[?25l[?1c:  [?25h[?0c:let test_status = 'tab drop 1: fail'

[?25l[?1c:  [?25h[?0c:if tabpagenr('$') == 1 && winnr('$') == 2 && winnr() == 1

[?25l[?1c:    [?25h[?0c:    let test_status = 'tab drop 1: pass'

[?25l[?1c:    [?25h[?0c:endif

[?25l[?1c:  [?25h[?0c:close

[?25l[?1c:  [?25h[?0c:call append(line('$'), test_status)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Test for ":tab drop new-file" to keep current window of tabpage 1.

[?25l[?1c:  [?25h[?0c:split

[?25l[?1c:  [?25h[?0c:tab drop newfile

[?25l[?1c:  [?25h[?0c:let test_status = 'tab drop 2: fail'

[?25l[?1c:  [?25h[?0c:if tabpagenr('$') == 2 && tabpagewinnr(1, '$') == 2 && tabpagewinnr(1) == 1

[?25l[?1c:    [?25h[?0c:    let test_status = 'tab drop 2: pass'

[?25l[?1c:    [?25h[?0c:endif

[?25l[?1c:  [?25h[?0c:tabclose

[?25l[?1c:  [?25h[?0c:q

[?25l[?1c:  [?25h[?0c:call append(line('$'), test_status)

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:"

[?25l[?1c:  [?25h[?0c:" Test for ":tab drop multi-opend-file" to keep current tabpage and window.

[?25l[?1c:  [?25h[?0c:new test1

[?25l[?1c:  [?25h[?0c:tabnew

[?25l[?1c:  [?25h[?0c:new test1

[?25l[?1c:  [?25h[?0c:tab drop test1

[?25l[?1c:  [?25h[?0c:let test_status = 'tab drop 3: fail'

[?25l[?1c:  [?25h[?0c:if tabpagenr() == 2 && tabpagewinnr(2, '$') == 2 && tabpagewinnr(2) == 1

[?25l[?1c:    [?25h[?0c:    let test_status = 'tab drop 3: pass'

[?25l[?1c:    [?25h[?0c:endif

[?25l[?1c:  [?25h[?0c:tabclose

[?25l[?1c:  [?25h[?0c:q

[?25l[?1c:  [?25h[?0c:call append(line('$'), test_status)

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:" :drop not supported

[?25l[?1c:  [?25h[?0c:call append(line('$'), 'tab drop 1: pass')

[?25l[?1c:  [?25h[?0c:call append(line('$'), 'tab drop 2: pass')

[?25l[?1c:  [?25h[?0c:call append(line('$'), 'tab drop 3: pass')

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cC tabnext 1autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(9) | tabnew | endfor
[?25l[?1c + 2.in   Name]   Name]   Name]   Name]   Name]   Name]   Name]   Name]   Name] X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c + 2.in   Name]   Name]   Name]   Name]   Name]   Name]   Name]   Name]   Name] X[?25l[?1cautocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose 3C tabnext 3let g:r+=[tabpagenr().'/'.tabpagenr('$')]
    elselet g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ===","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnext 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]
    endif
endfunction
:call Test()
:$ put =g:r
:"
:"
:/^Results/,$w! test.out
:qa!
ENDTEST

Results:[?25h[?0c
[?25l[?1c
:[?25h[?0c$put =tabpagenr()
[?25l[?1ctab page 2
this is tab page 3
this is tab page 1
this is tab page 4
gettabvar: pass
settabvar: pass
tab drop 1: pass
tab drop 2: pass
tab drop 3: pass
1
~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0ctabmove 5
[?25l[?1c  Name]  + 2.in  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c5[?25h[?0c[?25l[?1c:[?25h[?0c.tabmove
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
5[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove -
[?25l[?1c + 2.in   Name]  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
4[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove +
[?25l[?1c  Name]  + 2.in  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
5[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove -2
[?25l[?1c + 2.in   Name]  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
3[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove +4
[?25l[?1c  Name]  + 2.in  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
7[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove
[?25l[?1c  Name]  + 2.in X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
10[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove -20
[?25l[?1c + 2.in   Name] X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove +20
[?25l[?1c  Name]  + 2.in X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
10[?25h[?0c[?25l[?1c
:[?25h[?0c0tabmove
[?25l[?1c + 2.in   Name] X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0c$tabmove
[?25l[?1c  Name]  + 2.in X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
10[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove 0
[?25l[?1c + 2.in   Name] X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0ctabmove $
[?25l[?1c  Name]  + 2.in X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
10[?25h[?0c[?25l[?1c
:[?25h[?0c3tabmove
[?25l[?1c + 2.in   Name] X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
4[?25h[?0c[?25l[?1c
:[?25h[?0c7tabmove 5
[?25l[?1c  Name]  + 2.in  X[?25h[?0c[?25l[?1c:[?25h[?0c$put =tabpagenr()
[?25l[?1c
5[?25h[?0c[?25l[?1c
:[?25h[?0clet a='No error caught.'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:tabmove foo

[?25l[?1c:  [?25h[?0c:catch E474

[?25l[?1c:  [?25h[?0c:let a='E474 caught.'

[?25l[?1c:  [?25h[?0c:endtry
  Name]   Name]   Name]   Name]  + 2.in   Name]   Name]   Name]   Name]   Name] X[?25l[?1cthis is tab page 4
gettabvar: pass
settabvar: pass[?25h[?0c[?25l[?1c
:[?25h[?0c$put =a
[?25l[?1c
E474 caught.[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test autocommands
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabonly!
[?25l[?1cthis is tab page 4[?25h[?0c[?25l[?1c:[?25h[?0clet g:r=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccommand -nargs=1 -bar C :call add(g:r, '=== ' . <q-args> . ' ===')|<args>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction Test()
[?25l[?1c
:  [?25h[?0c    let hasau=has('autocmd')

[?25l[?1c:  [?25h[?0c    if hasau

[?25l[?1c:    [?25h[?0c        autocmd TabEnter * :call add(g:r, 'TabEnter')

[?25l[?1c:    [?25h[?0c        autocmd WinEnter * :call add(g:r, 'WinEnter')

[?25l[?1c:    [?25h[?0c        autocmd BufEnter * :call add(g:r, 'BufEnter')

[?25l[?1c:    [?25h[?0c        autocmd TabLeave * :call add(g:r, 'TabLeave')

[?25l[?1c:    [?25h[?0c        autocmd WinLeave * :call add(g:r, 'WinLeave')

[?25l[?1c:    [?25h[?0c        autocmd BufLeave * :call add(g:r, 'BufLeave')

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c    let t:a='a'

[?25l[?1c:  [?25h[?0c    C tab split

[?25l[?1c:  [?25h[?0c    if !hasau

[?25l[?1c:    [?25h[?0c        let g:r+=['WinLeave', 'TabLeave', 'WinEnter', 'TabEnter']

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c    let t:a='b'

[?25l[?1c:  [?25h[?0c    C tabnew

[?25l[?1c:  [?25h[?0c    if !hasau

[?25l[?1c:    [?25h[?0c        let g:r+=['WinLeave', 'TabLeave', 'WinEnter', 'TabEnter', 'BufLeav

e', 'BufEnter']

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c    let t:a='c'

[?25l[?1c:  [?25h[?0c    call add(g:r, join(map(range(1, tabpagenr('$')), 'gettabvar(v:val, "a")'

)))

[?25l[?1c:  [?25h[?0c    C call map(range(1, tabpagenr('$')), 'settabvar(v:val, ''a'', v:val*2)')

[?25l[?1c:  [?25h[?0c    call add(g:r, join(map(range(1, tabpagenr('$')), 'gettabvar(v:val, "a")'

)))

[?25l[?1c:  [?25h[?0c    let w:a='a'

[?25l[?1c:  [?25h[?0c    C vsplit

[?25l[?1c:  [?25h[?0c    if !hasau

[?25l[?1c:    [?25h[?0c        let g:r+=['WinLeave', 'WinEnter']

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c    let w:a='a'

[?25l[?1c:  [?25h[?0c    let tabn=tabpagenr()

[?25l[?1c:  [?25h[?0c    let winr=range(1, winnr('$'))

[?25l[?1c:  [?25h[?0c    C tabnext 1

[?25l[?1c:  [?25h[?0c    if !hasau

[?25l[?1c:    [?25h[?0c        let g:r+=['BufLeave', 'WinLeave', 'TabLeave', 'WinEnter', 'TabEnte

r', 'BufEnter']

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0c    call add(g:r, join(map(copy(winr), 'gettabwinvar('.tabn.', v:val, "a")')

))
[?25l[?1c:  [?25h[?0c    C call map(copy(winr), 'settabwinvar('.tabn.', v:val, ''a'', v:val*2)')

[?25l[?1c:  [?25h[?0c    call add(g:r, join(map(copy(winr), 'gettabwinvar('.tabn.', v:val, "a")')

))
[?25l[?1c:  [?25h[?0c    if hasau

[?25l[?1c:    [?25h[?0c        augroup TabDestructive

[?25l[?1c:    [?25h[?0c            autocmd TabEnter * :C tabnext 2 | C tabclose 3

[?25l[?1c:    [?25h[?0c        augroup END

[?25l[?1c:    [?25h[?0c        C tabnext 3

[?25l[?1c:    [?25h[?0c        let g:r+=[tabpagenr().'/'.tabpagenr('$')]

[?25l[?1c:    [?25h[?0c        autocmd! TabDestructive TabEnter

[?25l[?1c:    [?25h[?0c        C tabnew

[?25l[?1c:    [?25h[?0c        C tabnext 1

[?25l[?1c:    [?25h[?0c        autocmd TabDestructive TabEnter * nested :C tabnext 2 | C tabclose

3
[?25l[?1c:    [?25h[?0c        C tabnext 3

[?25l[?1c:    [?25h[?0c        let g:r+=[tabpagenr().'/'.tabpagenr('$')]

[?25l[?1c:    [?25h[?0c    else

[?25l[?1c:    [?25h[?0c        let g:r+=["=== tabnext 3 ===","BufLeave","WinLeave","TabLeave","Wi

nEnter","TabEnter","=== tabnext 2 ===","=== tabclose 3 ===","2/2","=== tabnew ==

=","WinLeave","TabLeave","WinEnter","TabEnter","BufLeave","BufEnter","=== tabnex

t 1 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","BufEnter","=== 

tabnext 3 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabne

xt 2 ===","BufLeave","WinLeave","TabLeave","WinEnter","TabEnter","=== tabnext 2 

===","=== tabclose 3 ===","BufEnter","=== tabclose 3 ===","2/2",]

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0cendfunction
[?25l[?1cthis is tab page 4
gettabvar: pass
settabvar: pass
tab drop 1: pass
tab drop 2: pass
tab drop 3: pass
1
5
5
4
5
3
7
10
1
10
1
10
1
10
4
5
E474 caught.
[?25h[?0c[?25l[?1c
:[?25h[?0ccall Test()
[?25l[?1c + test62.in  + test62.in                                                       Xgettabvar: pass
settabvar: pass
tab drop 1: pass
tab drop 2: pass
tab drop 3: pass
1
5
5
4
5
3
7
10
1
10
1
10
1
10
4
5
E474 caught.
[?25h[?0c[?25l[?1c
:[?25h[?0c$ put =g:r
[?25l[?1c68 more linesWinLeaveTabLeaveWinEnterTabEnterBufEnter=== tabnext 3 ===
BufLeave
WinLeave
TabLeave
WinEnter
TabEnter
=== tabnext 2 ===
BufLeave
WinLeave
TabLeave
WinEnter
TabEnter
=== tabnext 2 ===
=== tabclose 3 ===
BufEnter
=== tabclose 3 ===
2/2[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 95 lines, 1054 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test63.failed test.ok test.out X* viminfo
cp test63.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test63.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test63.in" 200 lines, 6229 charactersTest for ":match", ":2match", ":3match", "clearmatches()", "getmatches()",
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim
:set encoding=utf8
:" --- Check that "matcharg()" returns the correct group and pattern if a match
:" --- is defined.
:let @r = "*** Test 1: "
:highlight MyGroup1 term=bold ctermbg=red guibg=red
:highlight MyGroup2 term=italic ctermbg=green guibg=green
:highlight MyGroup3 term=underline ctermbg=blue guibg=blue
:match MyGroup1 /TODO/
:2match MyGroup2 /FIXME/
:3match MyGroup3 /XXX/
:if matcharg(1) == ['MyGroup1', 'TODO'] && matcharg(2) == ['MyGroup2', 'FIXME']
&& matcharg(3) == ['MyGroup3', 'XXX']
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED\n"
:endif
:" --- Check that "matcharg()" returns an empty list if the argument is not 1,
:" --- 2 or 3 (only 0 and 4 are tested).[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for ":match", ":2match", ":3match", "clearmatches()", "getmatches()",[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 193 lines, 6035 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)
:let @r .= string(getmatches())."\n"
:if v1 != v4 && v5 == v4 && v6 == v1 && v7 == v1 && v8 == v4 && v9 == v4 && v10
== v1
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED: " . v4 . "/" . v5 . "/" . v6 . "/" . v7 . "/" . v8 . "/" .v9 . "/" . v10 . "\n"
:endif
:" Check, that setmatches() can correctly restore the matches from matchaddpos():call matchadd('MyGroup1', '\%2lmatchadd')
:let m=getmatches()
:call clearmatches()
:call setmatches(m)
:let @r .= string(getmatches())."\n"
G"rp
:/^Results/,$wq! test.out
ENDTEST

Results of test63:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf8
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)
:let @r .= string(getmatches())."\n"
:if v1 != v4 && v5 == v4 && v6 == v1 && v7 == v1 && v8 == v4 && v9 == v4 && v10
== v1
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED: " . v4 . "/" . v5 . "/" . v6 . "/" . v7 . "/" . v8 . "/" .v9 . "/" . v10 . "\n"
:endif
:" Check, that setmatches() can correctly restore the matches from matchaddpos():call matchadd('MyGroup1', '\%2lmatchadd')
:let m=getmatches()
:call clearmatches()
:call setmatches(m)
:let @r .= string(getmatches())."\n"
G"rp
:/^Results/,$wq! test.out
ENDTEST

Results of test63:[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matcharg()" returns the correct group and pattern if a match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- is defined.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r = "*** Test 1: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chighlight MyGroup1 term=bold ctermbg=red guibg=red
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chighlight MyGroup2 term=italic ctermbg=green guibg=green
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chighlight MyGroup3 term=underline ctermbg=blue guibg=blue
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmatch MyGroup1 /TODO/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2match MyGroup2 /FIXME/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3match MyGroup3 /XXX/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif matcharg(1) == ['MyGroup1', 'TODO'] && matcharg(2) == ['MyGroup2', 'FIXME']

&& matcharg(3) == ['MyGroup3', 'XXX']
[?25l[?1c:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matcharg()" returns an empty list if the argument is not 1,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- 2 or 3 (only 0 and 4 are tested).
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 2: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif matcharg(0) == [] && matcharg(4) == []
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matcharg()" returns ['', ''] if a match is not defined.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 3: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmatch
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif matcharg(1) == ['', ''] && matcharg(2) == ['', ''] && matcharg(3) == ['', '

'][?25l[?1c:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matchadd()" and "getmatches()" agree on added matches and
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- that default values apply.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 4: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m1 = matchadd("MyGroup1", "TODO")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m2 = matchadd("MyGroup2", "FIXME", 42)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m3 = matchadd("MyGroup3", "XXX", 60, 17)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif getmatches() == [{'group': 'MyGroup1', 'pattern': 'TODO', 'priority': 10, '

id': 4}, {'group': 'MyGroup2', 'pattern': 'FIXME', 'priority': 42, 'id': 5}, {'g

roup': 'MyGroup3', 'pattern': 'XXX', 'priority': 60, 'id': 17}]
[?25l[?1c:  [?25h[?0c:  let @r .= "OK\n"
[?25l[?1c
:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matchdelete()" deletes the matches defined in the previous
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- test correctly.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 5: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall matchdelete(m1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall matchdelete(m2)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall matchdelete(m3)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif getmatches() == []
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0c" --- Check that "matchdelete()" returns 0 if successful and otherwise -1.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 6: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m = matchadd("MyGroup1", "TODO")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet r1 = matchdelete(m)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet r2 = matchdelete(42)
[?25l[?1cE803: ID not found: 42[?25h[?0c[?25l[?1c:[?25h[?0cif r1 == 0 && r2 == -1
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0cunlet m
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet r1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet r2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that "clearmatches()" clears all matches defined by ":match" and
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- "matchadd()".
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 7: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m1 = matchadd("MyGroup1", "TODO")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m2 = matchadd("MyGroup2", "FIXME", 42)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m3 = matchadd("MyGroup3", "XXX", 60, 17)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmatch MyGroup1 /COFFEE/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2match MyGroup2 /HUMPPA/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3match MyGroup3 /VIM/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall clearmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif getmatches() == []
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0cunlet m1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that "setmatches()" restores a list of matches saved by
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- "getmatches()" without changes. (Matches with equal priority must also
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- remain in the same order.)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 8: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m1 = matchadd("MyGroup1", "TODO")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m2 = matchadd("MyGroup2", "FIXME", 42)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet m3 = matchadd("MyGroup3", "XXX", 60, 17)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmatch MyGroup1 /COFFEE/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2match MyGroup2 /HUMPPA/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3match MyGroup3 /VIM/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet ml = getmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall clearmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setmatches(ml)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif getmatches() == ml
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0ccall clearmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet m3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet ml
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that "setmatches()" will not add two matches with the same ID. The
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- expected behaviour (for now) is to add the first match but not the
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- second and to return 0 (even though it is a matter of debate whether
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- this can be considered successful behaviour).
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 9: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet r1 = setmatches([{'group': 'MyGroup1', 'pattern': 'TODO', 'priority': 10, 

'id': 1}, {'group': 'MyGroup2', 'pattern': 'FIXME', 'priority': 10, 'id': 1}])
[?25l[?1cE801: ID already taken: 1Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cif getmatches() == [{'group': 'MyGroup1', 'pattern': 'TODO', 'priority': 10, '

id': 1}] && r1 == 0
[?25l[?1c:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)
:let @r .= string(getmatches())."\n"[?25h[?0c[?25l[?1c

:[?25h[?0ccall clearmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet r1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that "setmatches()" returns 0 if successful and otherwise -1.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- (A range of valid and invalid input values are tried out to generate the
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- return values.)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 10: "
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet rs1 = setmatches([])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet rs2 = setmatches([{'group': 'MyGroup1', 'pattern': 'TODO', 'priority': 10,

'id': 1}])
[?25l[?1c:let v7 = screenattr(1, 7)[?25h[?0c[?25l[?1c

:[?25h[?0ccall clearmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet rf1 = setmatches(0)
[?25l[?1cE714: List required[?25h[?0c[?25l[?1c:[?25h[?0clet rf2 = setmatches([0])
[?25l[?1cE474: Invalid argument[?25h[?0c[?25l[?1c:[?25h[?0clet rf3 = setmatches([{'wrong key': 'wrong value'}])
[?25l[?1cE474: Invalid argument[?25h[?0c[?25l[?1c:[?25h[?0cif rs1 == 0 && rs2 == 0 && rf1 == -1 && rf2 == -1 && rf3 == -1
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)[?25h[?0c[?25l[?1c

:[?25h[?0cunlet rs1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet rs2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet rf1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet rf2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet rf3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" --- Check that "matchaddpos()" positions matches correctly
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= "*** Test 11:\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nolazyredraw
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, 'abcdefghijklmnopq')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall matchaddpos("MyGroup1", [[1, 5], [1, 8, 3]], 10, 3)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1
[?25l[?1cabcdefghijklmnopq
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim
:set encoding=utf8
:" --- Check that "matcharg()" returns the correct group and pattern if a match
:" --- is defined.
:let @r = "*** Test 1: "
:highlight MyGroup1 term=bold ctermbg=red guibg=red
:highlight MyGroup2 term=italic ctermbg=green guibg=green
:highlight MyGroup3 term=underline ctermbg=blue guibg=blue
:match MyGroup1 /TODO/
:2match MyGroup2 /FIXME/
:3match MyGroup3 /XXX/
:if matcharg(1) == ['MyGroup1', 'TODO'] && matcharg(2) == ['MyGroup2', 'FIXME']
&& matcharg(3) == ['MyGroup3', 'XXX']
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED\n"
:endif
:" --- Check that "matcharg()" returns an empty list if the argument is not 1,
:" --- 2 or 3 (only 0 and 4 are tested).[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1cabcdefghijklmnopq
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim
:set encoding=utf8
:" --- Check that "matcharg()" returns the correct group and pattern if a match
:" --- is defined.
:let @r = "*** Test 1: "
:highlight MyGroup1 term=bold ctermbg=red guibg=red
:highlight MyGroup2 term=italic ctermbg=green guibg=green
:highlight MyGroup3 term=underline ctermbg=blue guibg=blue
:match MyGroup1 /TODO/
:2match MyGroup2 /FIXME/
:3match MyGroup3 /XXX/
:if matcharg(1) == ['MyGroup1', 'TODO'] && matcharg(2) == ['MyGroup2', 'FIXME']
&& matcharg(3) == ['MyGroup3', 'XXX']
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED\n"
:endif
:" --- Check that "matcharg()" returns an empty list if the argument is not 1,
:" --- 2 or 3 (only 0 and 4 are tested).[?25h[?0c[?25l[?1c:[?25h[?0clet v1 = screenattr(1, 1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v5 = screenattr(1, 5)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v6 = screenattr(1, 6)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v8 = screenattr(1, 8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v10 = screenattr(1, 10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v11 = screenattr(1, 11)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= string(getmatches())."\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif v1 != v5 && v6 == v1 && v8 == v5 && v10 == v5 && v11 == v1
[?25l[?1c
:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED: " . v5 . "/" . v6 . "/" . v8 . "/" . v10 . "/" . v11 .

"\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cabcdefghijklmnopq
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim[?25h[?0c[?25l[?1c:[?25h[?0ccall clearmatches()
[?25l[?1cefghij
[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, 'abcdΣabcdef')
[?25l[?1cΣabcdef[?25h[?0c[?25l[?1c:[?25h[?0ccall matchaddpos("MyGroup1", [[1, 4, 2], [1, 9, 2]])
[?25l[?1cdΣabcd
[?25h[?0c[?25l[?1c:[?25h[?0c1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1cabcdΣabcdef
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim
:set encoding=utf8
:" --- Check that "matcharg()" returns the correct group and pattern if a match
:" --- is defined.
:let @r = "*** Test 1: "
:highlight MyGroup1 term=bold ctermbg=red guibg=red
:highlight MyGroup2 term=italic ctermbg=green guibg=green
:highlight MyGroup3 term=underline ctermbg=blue guibg=blue
:match MyGroup1 /TODO/
:2match MyGroup2 /FIXME/
:3match MyGroup3 /XXX/
:if matcharg(1) == ['MyGroup1', 'TODO'] && matcharg(2) == ['MyGroup2', 'FIXME']
&& matcharg(3) == ['MyGroup3', 'XXX']
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED\n"
:endif
:" --- Check that "matcharg()" returns an empty list if the argument is not 1,
:" --- 2 or 3 (only 0 and 4 are tested).[?25h[?0c[?25l[?1c:[?25h[?0clet v1 = screenattr(1, 1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v4 = screenattr(1, 4)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v5 = screenattr(1, 5)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v6 = screenattr(1, 6)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v7 = screenattr(1, 7)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v8 = screenattr(1, 8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v9 = screenattr(1, 9)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v10 = screenattr(1, 10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= string(getmatches())."\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif v1 != v4 && v5 == v4 && v6 == v1 && v7 == v1 && v8 == v4 && v9 == v4 && v10

== v1
[?25l[?1c:  [?25h[?0c:  let @r .= "OK\n"

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:  let @r .= "FAILED: " . v4 . "/" . v5 . "/" . v6 . "/" . v7 . "/" . v8 . "

/" . v9 . "/" . v10 . "\n"

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cabcdΣabcdef
"matchadd()", "matchaddpos", "matcharg()", "matchdelete()", and "setmatches()".

STARTTEST
:so small.vim[?25h[?0c[?25l[?1c:[?25h[?0c" Check, that setmatches() can correctly restore the matches from matchaddpos(

)[?25l[?1cabcdΣabcdef[?25h[?0c[?25l[?1c:[?25h[?0ccall matchadd('MyGroup1', '\%2lmatchadd')
[?25l[?1cmatchadd()", "matchadd[?25h[?0c[?25l[?1c:[?25h[?0clet m=getmatches()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall clearmatches()
[?25l[?1cdΣabcd
"matchadd()", "matchadd[?25h[?0c[?25l[?1c:[?25h[?0ccall setmatches(m)
[?25l[?1cdΣabcd
"matchadd()", "matchadd[?25h[?0c[?25l[?1c:[?25h[?0clet @r .= string(getmatches())."\n"
[?25l[?1c[?25h[?0c[?25l[?1c:let v7 = screenattr(1, 7)
:let v8 = screenattr(1, 8)
:let v9 = screenattr(1, 9)
:let v10 = screenattr(1, 10)
:let @r .= string(getmatches())."\n"
:if v1 != v4 && v5 == v4 && v6 == v1 && v7 == v1 && v8 == v4 && v9 == v4 && v10
== v1
:  let @r .= "OK\n"
:else
:  let @r .= "FAILED: " . v4 . "/" . v5 . "/" . v6 . "/" . v7 . "/" . v8 . "/" .v9 . "/" . v10 . "\n"
:endif
:" Check, that setmatches() can correctly restore the matches from matchaddpos():call matchadd('MyGroup1', '\%2lmatchadd')
:let m=getmatches()
:call clearmatches()
:call setmatches(m)
:let @r .= string(getmatches())."\n"
G"rp
:/^Results/,$wq! test.out
ENDTEST

Results of test63:
[?25h[?0c[?25l[?1c
16 more lines
*** Test 1: OK16 more lines[?25h[?0c[?25l[?1c
*** Test 2: OK[?25h[?0c[?25l[?1c
:[?25h[?0c/^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 17 lines, 528 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test64.failed test.ok test.out X* viminfo
cp test64.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test64.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test64.in" 653 lines, 26912 charactersTest for regexp patterns without multi-byte support.
See test95 for multi-byte tests.

A pattern that gives the expected result produces OK, so that we know it was
actually tried.

STARTTEST
:so small.vim
:" tl is a List of Lists with:
:"    regexp engine
:"    regexp pattern
:"    text to test the pattern on
:"    expected match (optional)
:"    expected submatch 1 (optional)
:"    expected submatch 2 (optional)
:"    etc.
:"  When there is no match use only the first two items.
:let tl = []
:"
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"""" Previously written tests """"""""""""""""""""""""""""""""
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for regexp patterns without multi-byte support.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 620 lines, 26437 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:for pat in [' \ze*', ' \zs*']
:  try
:    let l = matchlist('x x', pat)
:    $put ='E888 NOT detected for ' . pat
:  catch
:    $put ='E888 detected for ' . pat
:  endtry
:endfor
:"
:""""" Write the results """""""""""""
:/\%#=1^Results/,$wq! test.out
ENDTEST

Substitute here:
<T="">Ta 5</Title>
<T="">Ac 7</Title>

Behind:
asdfasd<yyy
xxstart1
asdfasd<yy
xxxstart2
asdfasd<yy[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" tl is a List of Lists with:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    regexp engine
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    regexp pattern
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    text to test the pattern on
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected match (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected submatch 1 (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected submatch 2 (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    etc.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"  When there is no match use only the first two items.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet tl = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Previously written tests """"""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ab', 'aab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'b', 'abcdef', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc*', 'abccccdef', 'bcccc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\{-}', 'abccccdef', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\{-}\(d\)', 'abccccdef', 'bccccd', 'd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc*', 'abbdef', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'c*', 'ccc', 'ccc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc*', 'abdef', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'c*', 'abdef', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\+', 'abccccdef', 'bcccc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\+', 'abdef']) "no match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"operator \|
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\|ab', 'cabd', 'a']) "alternation is ordered
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'c\?', 'ccb', 'c'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\?', 'abd', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'bc\?', 'abccd', 'bc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{1}', 'ab', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'caad', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'aba'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'abaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}', 'aaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vb{1}', 'abca', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vba{2}', 'abaa', 'baa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vba{3}', 'aabaac'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){1}', 'ab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){1}', 'dabc', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){1}', 'acb'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){0,2}', 'acb', "", ""])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){0,2}', 'ab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){1,2}', 'ab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){1,2}', 'ababc', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2,4}', 'ababcab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2,4}', 'abcababa', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2}', 'abab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2}', 'cdababe', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2}', 'abac'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab){2}', 'abacabab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab){2}){2}', 'abababab', 'abababab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab){2}){2}', 'abacabababab', 'abababab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1}){1}', 'a', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){1}', 'aa', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){1}', 'aaac', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){1}', 'daaac', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1}){2}', 'daaac', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1}){2}', 'aaa', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2})+', 'adaac', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2})+', 'aa', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){1}', 'aa', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1}){2}', 'aa', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1}){1}', 'a', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){2}', 'aaaa', 'aaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2}){2}', 'aaabaaaa', 'aaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a+){2}', 'dadaac', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{3}){2}', 'aaaaaaa', 'aaaaaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,2}){2}', 'daaac', 'aaa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,3}){2}', 'daaaac', 'aaaa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,3}){2}', 'daaaaac', 'aaaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,3}){3}', 'daac'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,2}){2}', 'dac'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a+)+', 'daac', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a+)+', 'aaa', 'aaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a+){1,2}', 'aaa', 'aaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a+)(a+)', 'aaa', 'aaa', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{3})+', 'daaaac', 'aaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a|b|c)+', 'aacb', 'aacb', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a|b|c){2}', 'abcb', 'ab', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(abc){2}', 'abcabd', ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(abc){2}', 'abdabcabc','abcabc', 'abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a*', 'cc', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a*)+', 'cc', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab)+)+', 'ab', 'ab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(((ab)+)+)+', 'ab', 'ab', 'ab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(((ab)+)+)+', 'dababc', 'abab', 'abab', 'abab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{0,2})+', 'cc', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a*)+', '', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((a*)+)+', '', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab)*)+', '', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{1,3}', 'aab', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2,3}', 'abaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab)+|c*)+', 'abcccaba', 'abcccab', '', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{2})|(b{3})', 'bbabbbb', 'bbb', '', 'bbb'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{2}|b{2}', 'abab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a)+|(c)+', 'bbacbaacbbb', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vab{2,3}c', 'aabbccccccccccccc', 'abbc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vab{2,3}c', 'aabbbccccccccccccc', 'abbbc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vab{2,3}cd{2,3}e', 'aabbbcddee', 'abbbcdde'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va(bc){2}d', 'aabcbfbc' ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va*a{2}', 'a', ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va*a{2}', 'aa', 'aa' ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va*a{2}', 'aaa', 'aaa' ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va*a{2}', 'bbbabcc', ])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va*b*|a*c*', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\va{1}b{1}|a{1}b{1}', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"submatches
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a)', 'ab', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a)(b)', 'ab', 'ab', 'a', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(ab)(b)(c)', 'abbc', 'abbc', 'ab', 'b', 'c'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((a)(b))', 'ab', 'ab', 'ab', 'a', 'b'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a)|(b)', 'ab', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a*)+', 'aaaa', 'aaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x', 'abcdef'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""" Simple tests """""""""""""""""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Search single groups
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ab', 'aab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ab', 'baced'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ab', '                    ab           ', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Search multi-modifiers
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x*', 'xcd', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x*', 'xxxxxxxxxxxxxxxxsofijiojgf', 'xxxxxxxxxxxxxxxx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" empty match is good
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x*', 'abcdoij', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" no match here
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\+', 'abcdoin'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\+', 'abcdeoijdfxxiuhfij', 'xx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\+', 'xxxxx', 'xxxxx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\+', 'abc x siufhiush xxxxxxxxx', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\=', 'x sdfoij', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\=', 'abc sfoij', '']) " empty match is good
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\=', 'xxxxxxxxx c', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\?', 'x sdfoij', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" empty match is good
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\?', 'abc sfoij', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'x\?', 'xxxxxxxxxx c', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{0,0}', 'abcdfdoij', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" same thing as 'a?'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{0,1}', 'asiubid axxxaaa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" same thing as 'a\{0,1}'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{1,0}', 'asiubid axxxaaa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{3,6}', 'aa siofuh'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{3,6}', 'aaaaa asfoij afaa', 'aaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{3,6}', 'aaaaaaaa', 'aaaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{0}', 'asoiuj', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2}', 'aaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2}', 'iuash fiusahfliusah fiushfilushfi uhsaifuh askfj na

sfvius afg aaaa sfiuhuhiushf', 'aa'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2}', 'abcdefghijklmnopqrestuvwxyz1234567890'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" same thing as 'a*'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{0,}', 'oij sdigfusnf', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{0,}', 'aaaaa aa', 'aaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2,}', 'sdfiougjdsafg'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2,}', 'aaaaasfoij ', 'aaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{5,}', 'xxaaaaxxx '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{5,}', 'xxaaaaaxxx ', 'aaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{,0}', 'oidfguih iuhi hiu aaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{,5}', 'abcd', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{,5}', 'aaaaaaaaaa', 'aaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" leading star as normal char when \{} follows
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^*\{4,}$', '***'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^*\{4,}$', '****', '****'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^*\{4,}$', '*****', '*****'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" same thing as 'a*'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{}', 'bbbcddiuhfcd', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{}', 'aaaaioudfh coisf jda', 'aaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-0,0}', 'abcdfdoij', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" anti-greedy version of 'a?'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-0,1}', 'asiubid axxxaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-3,6}', 'aa siofuh'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-3,6}', 'aaaaa asfoij afaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-3,6}', 'aaaaaaaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-0}', 'asoiuj', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2}', 'aaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2}', 'abcdefghijklmnopqrestuvwxyz1234567890'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-0,}', 'oij sdigfusnf', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-0,}', 'aaaaa aa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2,}', 'sdfiougjdsafg'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2,}', 'aaaaasfoij ', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-,0}', 'oidfguih iuhi hiu aaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-,5}', 'abcd', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-,5}', 'aaaaaaaaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" anti-greedy version of 'a*'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-}', 'bbbcddiuhfcd', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-}', 'aaaaioudfh coisf jda', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test groups of characters and submatches
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(abc\)*', 'abcabcabc', 'abcabcabc', 'abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(ab\)\+', 'abababaaaaa', 'ababab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(abaaaaa\)*cd', 'cd', 'cd', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(test1\)\? \(test2\)\?', 'test1 test3', 'test1 ', 'test1', 

''])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(test1\)\= \(test2\) \(test4443\)\=', ' test2 test4443 yupi

iiiiiiiiii', ' test2 test4443', '', 'test2', 'test4443'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(\(sub1\) hello \(sub 2\)\)', 'asterix sub1 hello sub 2 obe

lix', 'sub1 hello sub 2', 'sub1 hello sub 2', 'sub1', 'sub 2'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(\(\(yyxxzz\)\)\)', 'abcdddsfiusfyyzzxxyyxxzz', 'yyxxzz', '

yyxxzz', 'yyxxzz', 'yyxxzz'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab)+|c+)+', 'abcccaba', 'abcccab', 'ab', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v((ab)|c*)+', 'abcccaba', 'abcccab', '', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a(c*)+b)+', 'acbababaaa', 'acbabab', 'ab', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a|b*)+', 'aaaa', 'aaaa', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\p*', 'aá ^I', 'aá '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test greedy-ness and lazy-ness
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2,7}','aaaaaaaaaaaaa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{-2,7}x','aaaaaaaaax', 'aaaaaaax'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2,7}','aaaaaaaaaaaaaaaaaaaa', 'aaaaaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\{2,7}x','aaaaaaaaax', 'aaaaaaax'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vx(.{-,8})yz(.*)','xayxayzxayzxayz','xayxayzxayzxayz','ayxa

','xayzxayz'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\vx(.*)yz(.*)','xayxayzxayzxayz','xayxayzxayzxayz', 'ayxayzx

ayzxa',''])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{1,2}){-2,3}','aaaaaaa','aaaa','aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a{-1,3})+', 'aa', 'aa', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\s\{-}\zs\( x\|x$\)', ' x', ' x', ' x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\s\{-}\zs\(x\| x$\)', ' x', ' x', ' x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\s\{-}\ze\(x\| x$\)', ' x', '', ' x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\(\s\{-}\)\(x\| x$\)', ' x', ' x', '', ' x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test Character classes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\d\+e\d\d','test 10e23 fd','10e23'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test collections and character range []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v[a]', 'abcd', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a[bcd]', 'abcd', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a[b-d]', 'acbd', 'ac'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-d][e-f][x-x]d', 'cexdxx', 'cexd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v[[:alpha:]]+', 'abcdefghijklmnopqrstuvwxyz6','abcdefghijkl

mnopqrstuvwxyz'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[[:alpha:]\+]', '6x8','x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^abc]\+','abcabcabc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^abc]','defghiasijvoinasoiunbvb','d'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^abc]\+','ddddddda','ddddddd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-d]\+','aaaAAAZIHFNCddd','AAAZIHFNC'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-f]*','iiiiiiii',''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-f]*','abcdefgh','abcdef'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-f]\+','abcdefgh','gh'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-c]\{-3,6}','abcabc','abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^[:alpha:]]\+','abcccadfoij7787ysf287yrnccdu','7787'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[-a]', '-', '-'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-]', '-', '-'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-f]*\c','ABCDEFGH','ABCDEF'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[abc][xyz]\c','-af-AF-BY--','BY'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" filename regexp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[-./[:alnum:]_~]\+', 'log13.file', 'log13.file'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" special chars
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[\]\^\-\\]\+', '\^\\\-\---^', '\^\\\-\---^'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" collation elem
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[[.a.]]\+', 'aa', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" middle of regexp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc[0-9]*ddd', 'siuhabc ii'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc[0-9]*ddd', 'adf abc44482ddd oijs', 'abc44482ddd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_[0-9]\+', 'asfi9888u', '9888'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-9\n]\+', 'asfi9888u', '9888'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_[0-9]\+', "asfi\n9888u", "\n9888"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_f', "  \na ", "\n"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_f\+', "  \na ", "\na"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-9A-Za-z-_.]\+', " @0_a.A-{ ", "0_a.A-"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Test start/end of line, start/end of file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^a.', "a_\nb ", "a_"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^a.', "b a \na_"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.a$', " a\n "])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.a$', " a b\n_a", "_a"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%^a.', "a a\na", "a "])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%^a', " a \na "])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.a\%$', " a\n "])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.a\%$', " a\n_a", "_a"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Test recognition of character classes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-7]\+', 'x0123456789x', '01234567'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^0-7]\+', '0a;X+% 897', 'a;X+% 89'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-9]\+', 'x0123456789x', '0123456789'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^0-9]\+', '0a;X+% 9', 'a;X+% '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-9a-fA-F]\+', 'x0189abcdefg', '0189abcdef'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^0-9A-Fa-f]\+', '0189g;X+% ab', 'g;X+% '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-z_A-Z0-9]\+', ';+aso_SfOij ', 'aso_SfOij'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-z_A-Z0-9]\+', 'aSo_;+% sfOij', ';+% '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-z_A-Z]\+', '0abyz_ABYZ;', 'abyz_ABYZ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-z_A-Z]\+', 'abAB_09;+% yzYZ', '09;+% '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-z]\+', '0abcxyz1', 'abcxyz'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-z]\+', 'AabxyzZ', 'abxyz'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-z]\+', 'a;X09+% x', ';X09+% '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-z]\+', 'abX0;%yz', 'X0;%'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-zA-Z]\+', '0abABxzXZ9', 'abABxzXZ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^a-zA-Z]\+', 'ab09_;+ XZ', '09_;+ '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[A-Z]\+', 'aABXYZz', 'ABXYZ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^A-Z]\+', 'ABx0;%YZ', 'x0;%'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[a-z]\+\c', '0abxyzABXYZ;', 'abxyzABXYZ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[A-Z]\+\c', '0abABxzXZ9', 'abABxzXZ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\c[^a-z]\+', 'ab09_;+ XZ', '09_;+ '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\c[^A-Z]\+', 'ab09_;+ XZ', '09_;+ '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\C[^A-Z]\+', 'ABCOIJDEOIFNSD jsfoij sa', ' jsfoij sa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Tests for \z features
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" match ends at \ze
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'xx \ze test', 'xx '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc\zeend', 'oij abcend', 'abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'aa\zebb\|aaxx', ' aabb ', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'aa\zebb\|aaxx', ' aaxx ', 'aaxx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'aabb\|aa\zebb', ' aabb ', 'aabb'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'aa\zebb\|aaebb', ' aabb ', 'aa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" match starts at \zs
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc\zsdd', 'ddabcddxyzt', 'dd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'aa \zsax', ' ax'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc \zsmatch\ze abc', 'abc abc abc match abc abc', 'match'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a \zsif .*){2}', 'a if then a if last', 'if last', 'a if 

last'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\>\zs.', 'aword. ', '.'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\s\+\ze\[/\|\s\zs\s\+', 'is   [a t', '  '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Tests for \@= and \& features
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc\@=', 'abc', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc\@=cd', 'abcd', 'abcd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abc\@=', 'ababc', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" will never match, no matter the input text
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abcd\@=e', 'abcd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" will never match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'abcd\@=e', 'any text in here ... '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(abc)@=..', 'xabcd', 'ab', 'abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(.*John\)\@=.*Bob', 'here is John, and here is B'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(John.*\)\@=.*Bob', 'John is Bobs friend', 'John is Bob', '

John is Bobs friend'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\<\S\+\())\)\@=', '$((i=i+1))', 'i=i+1', '))'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.*John\&.*Bob', 'here is John, and here is B'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.*John\&.*Bob', 'John is Bobs friend', 'John is Bob'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(test1)@=.*yep', 'this is a test1, yep it is', 'test1, yep

', 'test1'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\(bar\)\@!', 'foobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\(bar\)\@!', 'foo bar', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'if \(\(then\)\@!.\)*$', ' if then else'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'if \(\(then\)\@!.\)*$', ' if else ', 'if else ', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@!bar', 'foobar', 'bar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@!...bar', 'foobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' bar foo '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' foo bar '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' foo xxx ', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[ ]\@!\p\%([ ]\@!\p\)*:', 'implicit mappings:', 'mappings:']

)[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[ ]\@!\p\([ ]\@!\p\)*:', 'implicit mappings:', 'mappings:', 

's'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'm\k\+_\@=\%(_\@!\k\)\@<=\k\+e', 'mx__xe', 'mx__xe'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%(\U\@<=S\k*\|S\l\)R', 'SuR', 'SuR'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Combining different tests and features
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[[:alpha:]]\{-2,6}', '787abcdiuhsasiuhb4', 'ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '', 'abcd', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(())', 'any possible text', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v%(ab(xyz)c)', '   abxyzc ', 'abxyzc', 'xyz'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(test|)empty', 'tesempty', 'empty', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v(a|aa)(a|aa)', 'aaa', 'aa', 'a', 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" \%u and friends
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%d32', 'yes no', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%o40', 'yes no', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%x20', 'yes no', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%u0020', 'yes no', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%U00000020', 'yes no', ' '])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%d0', "yes\x0ano", "\x0a"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""" \%[abc]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'fobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'foobar', 'foobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'fooxx', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'foobxx', 'foob'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'foobaxx', 'fooba'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]', 'foobarxx', 'foobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]x', 'foobxx', 'foobx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'foo\%[bar]x', 'foobarxx', 'foobarx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%[bar]x', 'barxx', 'barx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%[bar]x', 'bxx', 'bx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%[bar]x', 'xxx', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'b\%[[ao]r]', 'bar bor', 'bar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'b\%[[]]r]', 'b]r bor', 'b]r'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '@\%[\w\-]*', '<http://john.net/pandoc/>[@pandoc]', '@pandoc'

])[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Alternatives, must use first longest match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'goo\|go', 'google', 'goo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\<goo\|\<go', 'google', 'goo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\<goo\|go', 'google', 'goo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Back references
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(\i\+\) \1', ' abc abc', 'abc abc', 'abc'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(\i\+\) \1', 'xgoo goox', 'goo goo', 'goo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(a\)\(b\)\(c\)\(dd\)\(e\)\(f\)\(g\)\(h\)\(i\)\1\2\3\4\5\6\7

\8\9', 'xabcddefghiabcddefghix', 'abcddefghiabcddefghi', 'a', 'b', 'c', 'dd', 'e

', 'f', 'g', 'h', 'i'])
[?25l[?1c:for pat in [' \ze*', ' \zs*']
:  try[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(\d*\)a \1b', ' a b ', 'a b', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^.\(.\).\_..\1.', "aaa\naaa\nb", "aaa\naaa", 'a'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<!$', 'foo.bat/foo.com', 'foo.bat/foo

.com', 'bat'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<!$', 'foo.bat/foo.bat'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<=$', 'foo.bat/foo.bat', 'foo.bat/foo

.bat', 'bat', 'bat'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\\\@<!\${\(\d\+\%(:.\{-}\)\?\\\@<!\)}', '2013-06-27${0}', '$

{0}', '0'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\(a*\)\1$', 'aaaaaaaa', 'aaaaaaaa', 'aaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\(a\{-2,}\)\1\+$', 'aaaaaaaaa', 'aaaaaaaaa', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Look-behind with limit
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '<\@<=span.', 'xxspanxx<spanyyy', 'spany'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '<\@1<=span.', 'xxspanxx<spanyyy', 'spany'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '<\@2<=span.', 'xxspanxx<spanyyy', 'spany'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(<<\)\@<=span.', 'xxspanxxxx<spanxx<<spanyyy', 'spany', '<<

'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(<<\)\@1<=span.', 'xxspanxxxx<spanxx<<spanyyy'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(<<\)\@2<=span.', 'xxspanxxxx<spanxx<<spanyyy', 'spany', '<

<'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@<!bar.', 'xx foobar1 xbar2 xx', 'bar2'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" look-behind match in front of a zero-width item
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v\C%(<Last Changed:\s+)@<=.*$', '" test header'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v\C%(<Last Changed:\s+)@<=.*$', '" Last Changed: 1970', '19

70'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@<=\>', 'foobar'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@<=\>', 'barfoo', '', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(foo\)\@<=.*', 'foobar', 'bar', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" complicated look-behind match
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(r\@<=\|\w\@<!\)\/', 'x = /word/;', '/'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^[a-z]\+\ze \&\(asdf\)\@<!', 'foo bar', 'foo'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""" \@>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(a*\)\@>a', 'aaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(a*\)\@>b', 'aaab', 'aaab', 'aaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\(.\{-}b\)\@>.', '  abcbd', '  abc', '  ab'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(.\{-}\)\(\)\@>$', 'abc', 'abc', 'abc', ''])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" TODO: BT engine does not restore submatch after failure
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [1, '\(a*\)\@>a\|a\+', 'aaaa', 'aaaa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" "\_" prepended negated collection matches EOL
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_[^8-9]\+', "asfi\n9888", "asfi\n"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\_[^a]\+', "asfi\n9888", "sfi\n9888"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Requiring lots of states.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}', "

12345678-1234-1234-1234-123456789012 ", "12345678-1234-1234-1234-123456789012",

"1234-"])
[?25l[?1c:for pat in [' \ze*', ' \zs*']
:  try[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Skip adding state twice
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^\%(\%(^\s*#\s*if\>\|#\s*if\)\)\(\%>1c.*$\)\@=', "#if FOO", 

"#if", ' FOO'])
[?25l[?1c:for pat in [' \ze*', ' \zs*'][?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""" Test \%V atom
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\%>70vGesamt', 'Jean-Michel Charlier & Victor Hubinon\Gesamt

ausgabe [Salleck]    Buck Danny {Jean-Michel Charlier & Victor Hubinon}\Gesamtau

sgabe', 'Gesamt'])
[?25l[?1c:for pat in [' \ze*', ' \zs*']
:  try[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Run the tests
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor t in tl
[?25l[?1c
:  [?25h[?0c:  let re = t[0]

[?25l[?1c:  [?25h[?0c:  let pat = t[1]

[?25l[?1c:  [?25h[?0c:  let text = t[2]

[?25l[?1c:  [?25h[?0c:  let matchidx = 3

[?25l[?1c:  [?25h[?0c:  for engine in [0, 1, 2]

[?25l[?1c:    [?25h[?0c:    if engine == 2 && re == 0 || engine == 1 && re == 1

[?25l[?1c:      [?25h[?0c:      continue

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    let &regexpengine = engine

[?25l[?1c:    [?25h[?0c:    try

[?25l[?1c:      [?25h[?0c:      let l = matchlist(text, pat)

[?25l[?1c:      [?25h[?0c:    catch

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", caused an exception: \"' . v:exception . '\"'

[?25l[?1c:      [?25h[?0c:    endtry

[?25l[?1c:    [?25h[?0c:" check the match itself

[?25l[?1c:    [?25h[?0c:    if len(l) == 0 && len(t) > matchidx

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", did not match, expected: \"' . t[matchidx] . '\"'

[?25l[?1c:      [?25h[?0c:    elseif len(l) > 0 && len(t) == matchidx

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", match: \"' . l[0] . '\", expected no match'

[?25l[?1c:      [?25h[?0c:    elseif len(t) > matchidx && l[0] != t[matchidx]

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te
t . '\", match: \"' . l[0] . '\", expected: \"' . t[matchidx] . '\"'

[?25l[?1c:      [?25h[?0c:    else

[?25l[?1c:      [?25h[?0c:      $put ='OK ' . engine . ' - ' . pat

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    if len(l) > 0

[?25l[?1c:      [?25h[?0c:"   check all the nine submatches

[?25l[?1c:      [?25h[?0c:      for i in range(1, 9)

[?25l[?1c:[?25h[?0c:        if len(t) <= matchidx + i

[?25l[?1c:[?25h[?0c:          let e = ''

[?25l[?1c:[?25h[?0c:        else

[?25l[?1c:[?25h[?0c:          let e = t[matchidx + i]

[?25l[?1c:[?25h[?0c:        endif

[?25l[?1c:[?25h[?0c:        if l[i] != e

[?25l[?1c:[?25h[?0c:          $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: 
"' . text . '\", submatch ' . i . ': \"' . l[i] . '\", expected: \"' . e . '\"'

[?25l[?1c:[?25h[?0c:        endif

[?25l[?1c:[?25h[?0c:      endfor

[?25l[?1c:      [?25h[?0c:      unlet i

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:  endfor

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cOK 0 - ^\(.\{-}b\)\@>.
OK 1 - ^\(.\{-}b\)\@>.
OK 2 - ^\(.\{-}b\)\@>.
OK 0 - \(.\{-}\)\(\)\@>$
OK 1 - \(.\{-}\)\(\)\@>$
OK 2 - \(.\{-}\)\(\)\@>$
OK 0 - \(a*\)\@>a\|a\+
OK 2 - \(a*\)\@>a\|a\+
OK 0 - \_[^8-9]\+
OK 1 - \_[^8-9]\+
OK 2 - \_[^8-9]\+
OK 0 - \_[^a]\+
OK 1 - \_[^a]\+
OK 2 - \_[^a]\+
OK 0 - [0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}
OK 1 - [0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}
OK 2 - [0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}
OK 0 - ^\%(\%(^\s*#\s*if\>\|#\s*if\)\)\(\%>1c.*$\)\@=
OK 1 - ^\%(\%(^\s*#\s*if\>\|#\s*if\)\)\(\%>1c.*$\)\@=
OK 2 - ^\%(\%(^\s*#\s*if\>\|#\s*if\)\)\(\%>1c.*$\)\@=
OK 0 - \%>70vGesamt
OK 1 - \%>70vGesamt
OK 2 - \%>70vGesamt
[?25h[?0c[?25l[?1c
:[?25h[?0cunlet t tl e l
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""""" multi-line tests """"""""""""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet tl = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" back references
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '^.\(.\).\_..\1.', ['aaa', 'aaa', 'b'], ['XX', 'b']])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\v.*\/(.*)\n.*\/\1$', ['./Dir1/Dir2/zyxwvuts.txt', './Dir1/D

ir2/abcdefgh.bat', '', './Dir1/Dir2/file1.txt', './OtherDir1/OtherDir2/file1.txt

'], ['./Dir1/Dir2/zyxwvuts.txt', './Dir1/Dir2/abcdefgh.bat', '', 'XX']])
[?25l[?1cOK 0 - ^\(.\{-}b\)\@>.
OK 1 - ^\(.\{-}b\)\@>.[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" line breaks
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\S.*\nx', ['abc', 'def', 'ghi', 'xjk', 'lmn'], ['abc', 'def'

, 'XXjk', 'lmn']])
[?25l[?1cOK 0 - ^\(.\{-}b\)\@>.[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check that \_[0-9] matching EOL does not break a following \>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)

\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>', ['', 'loca

lnet/192.168.0.1', ''], ['', 'localnet/XX', '']])
[?25l[?1cOK 0 - ^\(.\{-}b\)\@>.
OK 1 - ^\(.\{-}b\)\@>.[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check a pattern with a line break and ^ and $
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\n^b$\n^c', ['a', 'b', 'c'], ['XX']])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\(^.\+\n\)\1', [' dog', ' dog', 'asdf'], ['XXasdf']])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Run the multi-line tests
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='multi-line tests'
[?25l[?1c
multi-line tests[?25h[?0c[?25l[?1c
:[?25h[?0cfor t in tl
[?25l[?1c
:  [?25h[?0c:  let re = t[0]

[?25l[?1c:  [?25h[?0c:  let pat = t[1]

[?25l[?1c:  [?25h[?0c:  let before = t[2]

[?25l[?1c:  [?25h[?0c:  let after = t[3]

[?25l[?1c:  [?25h[?0c:  for engine in [0, 1, 2]

[?25l[?1c:    [?25h[?0c:    if engine == 2 && re == 0 || engine == 1 && re ==1

[?25l[?1c:      [?25h[?0c:      continue

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    let &regexpengine = engine

[?25l[?1c:    [?25h[?0c:    new

[?25l[?1c:    [?25h[?0c:    call setline(1, before)

[?25l[?1c:    [?25h[?0c:    exe '%s/' . pat . '/XX/'

[?25l[?1c:    [?25h[?0c:    let result = getline(1, '$')

[?25l[?1c:    [?25h[?0c:    q!

[?25l[?1c:    [?25h[?0c:    if result != after

[?25l[?1c:      [?25h[?0c:      $put ='ERROR: pat: \"' . pat . '\", text: \"' . string(before) . 

'\", expected: \"' . string(after) . '\", got: \"' . string(result) . '\"'

[?25l[?1c:      [?25h[?0c:    else

[?25l[?1c:      [?25h[?0c:      $put ='OK ' . engine . ' - ' . pat

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:  endfor

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cOK 2 - \%>70vGesamt
multi-line tests
OK 0 - ^.\(.\).\_..\1.
OK 1 - ^.\(.\).\_..\1.
OK 2 - ^.\(.\).\_..\1.
OK 0 - \v.*\/(.*)\n.*\/\1$
OK 1 - \v.*\/(.*)\n.*\/\1$
OK 2 - \v.*\/(.*)\n.*\/\1$
OK 0 - \S.*\nx
OK 1 - \S.*\nx
OK 2 - \S.*\nx
OK 0 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1
[?25h[?0c[?25l[?1c
:[?25h[?0cunlet t tl
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check that using a pattern on two lines doesn't get messed up by using
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" matchstr() with \ze in between.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset re=0
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Substitute here
[?25l[?1csearch hit BOTTOM, continuing at TOP:    let l = matchlist('x x', pat)
:    $put ='E888 NOT detected for ' . pat
:  catch
:    $put ='E888 detected for ' . pat
:  endtry
:endfor
:"
:""""" Write the results """""""""""""
:/\%#=1^Results/,$wq! test.out
ENDTEST

Substitute here:
<T="">Ta 5</Title>
<T="">Ac 7</Title>

Behind:
asdfasd<yyy
xxstart1
asdfasd<yy
xxxstart2
asdfasd<yy
xxstart3

search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0c.+1,.+2s/""/\='"'.matchstr(getline("."), '\d\+\ze<').'"'
[?25l[?1c5">Ta 5</Title>
<T="7">Ac 7</Title>
[?25h[?0c[?25l[?1c/[?25h[?0c^Substitute here
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0c.+1,.+2yank
[?25l[?1c[?25h[?0c[?25l[?1cOK 2 - \%>70vGesamt
multi-line tests
OK 0 - ^.\(.\).\_..\1.
OK 1 - ^.\(.\).\_..\1.
OK 2 - ^.\(.\).\_..\1.
OK 0 - \v.*\/(.*)\n.*\/\1$
OK 1 - \v.*\/(.*)\n.*\/\1$
OK 2 - \v.*\/(.*)\n.*\/\1$
OK 0 - \S.*\nx
OK 1 - \S.*\nx
OK 2 - \S.*\nx
OK 0 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
<T="5">Ta 5</Title>
[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check a pattern with a look beind crossing a line boundary
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Behind:
[?25l[?1csearch hit BOTTOM, continuing at TOP:  endtry
:endfor
:"
:""""" Write the results """""""""""""
:/\%#=1^Results/,$wq! test.out
ENDTEST

Substitute here:
<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

Behind:
asdfasd<yyy
xxstart1
asdfasd<yy
xxxstart2
asdfasd<yy
xxstart3

Visual:
thexe the thexethe
andaxand andaxand
oooxofor foroxooo
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/[?25h[?0c\(<\_[xy]\+\)\@3<=start
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.yank
[?25l[?1c[?25h[?0c[?25l[?1cOK 1 - ^.\(.\).\_..\1.
OK 2 - ^.\(.\).\_..\1.
OK 0 - \v.*\/(.*)\n.*\/\1$
OK 1 - \v.*\/(.*)\n.*\/\1$
OK 2 - \v.*\/(.*)\n.*\/\1$
OK 0 - \S.*\nx
OK 1 - \S.*\nx
OK 2 - \S.*\nx
OK 0 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1

<T="5">Ta 5</Title>
<T="7">Ac 7</Title>
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
xxstart3
[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check matching Visual area
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Visual:
[?25l[?1csearch hit BOTTOM, continuing at TOP<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

Behind:
asdfasd<yyy
xxstart1
asdfasd<yy
xxxstart2
asdfasd<yy
xxstart3

Visual:
thexe the thexethe
andaxand andaxand
oooxofor foroxooo
oooxofor foroxooo

Marks:
asdfSasdfsadfEasdf
asdfSas
dfsadfEasdf

Results of test64:
search hit BOTTOM, continuing at TOP[?25h[?0c
the[?25l[?1c[?25h[?0c[?25l[?1cxe the the[?25h[?0c[?25l[?1c:'<,'>[?25h[?0cs/\%Ve/E/g
[?25l[?1c3 substitutions on 1 linexE thE thE
[?25h[?0c
[?25l[?1candaxand andaxand 
[?25h[?0c[?25l[?1c:'<,'>[?25h[?0cs/\%Va/A/g
[?25l[?1c6 substitutions on 1 lineAndAxAnd AndAxAnd[?25h[?0c
ooo[?25l[?1c[?25h[?0c[?25l[?1cxofor foro[?25h[?0c[?25l[?1cx
oooxofor foro[?25h[?0c[?25l[?1c:'<,'>[?25h[?0cs/\%Vo/O/g
[?25l[?1c8 substitutions on 2 linesxOfOr fOrOx
oooxOfOr fOrO
[?25h[?0c[?25l[?1c:[?25h[?0c/^Visual/+1,/^Visual/+4yank
[?25l[?1csearch hit BOTTOM, continuing at TOP
4 lines yanked[?25h[?0c[?25l[?1cOK 0 - \v.*\/(.*)\n.*\/\1$
OK 1 - \v.*\/(.*)\n.*\/\1$
OK 2 - \v.*\/(.*)\n.*\/\1$
OK 0 - \S.*\nx
OK 1 - \S.*\nx
OK 2 - \S.*\nx
OK 0 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1

<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

xxstart3
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
4 more lines
thexE thE thExethe4 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check matching marks
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Marks:
[?25l[?1csearch hit BOTTOM, continuing at TOPasdfasd<yy
xxxstart2
asdfasd<yy
xxstart3

Visual:
thexE thE thExethe
AndAxAnd AndAxAnd
oooxOfOr fOrOxooo
oooxOfOr fOrOxooo

Marks:
asdfSasdfsadfEasdf
asdfSas
dfsadfEasdf

Results of test64:
OK 0 - ab
OK 1 - ab
OK 2 - ab
OK 0 - b
OK 1 - b
OK 2 - b
search hit BOTTOM, continuing at TOP[?25h[?0c
asdf[?25l[?1c:[?25h[?0c.-4,.+6s/.\%>'s.*\%<'e../here/
[?25l[?1chereasdf[?25h[?0c
asdf
dfsa
dfsadf[?25l[?1c:[?25h[?0c.-4,.+6s/.\%>'s\_.*\%<'e../again/
[?25l[?1c
asdfagainasdfOK 0 - bc*[?25h[?0c[?25l[?1c:[?25h[?0c/^Marks:/+1,/^Marks:/+3yank
[?25l[?1csearch hit BOTTOM, continuing at TOP
3 lines yanked[?25h[?0c[?25l[?1cOK 2 - \S.*\nx
OK 0 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1

<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

xxstart3

thexE thE thExethe
AndAxAnd AndAxAnd
oooxOfOr fOrOxooo
oooxOfOr fOrOxooo
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
3 more linesasdfhereasdf
asdfagainasdf3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check patterns matching cursor position.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunc! Postest()
[?25l[?1c
:  [?25h[?0c new

[?25l[?1c:  [?25h[?0c call setline(1, ['ffooooo', 'boboooo', 'zoooooo', 'koooooo', 'moooooo', "\t

\t\tfoo", 'abababababababfoo', 'bababababababafoo', '********_'])

[?25l[?1c:  [?25h[?0c call setpos('.', [0, 1, 0, 0])

[?25l[?1c:  [?25h[?0c s/\%>3c.//g

[?25l[?1c:  [?25h[?0c call setpos('.', [0, 2, 4, 0])

[?25l[?1c:  [?25h[?0c s/\%#.*$//g

[?25l[?1c:  [?25h[?0c call setpos('.', [0, 3, 0, 0])

[?25l[?1c:  [?25h[?0c s/\%<3c./_/g

[?25l[?1c:  [?25h[?0c %s/\%4l\%>5c./_/g

[?25l[?1c:  [?25h[?0c %s/\%6l\%>25v./_/g

[?25l[?1c:  [?25h[?0c %s/\%>6l\%3c./!/g

[?25l[?1c:  [?25h[?0c %s/\%>7l\%12c./?/g

[?25l[?1c:  [?25h[?0c %s/\%>7l\%<9l\%>5v\%<8v./#/g

[?25l[?1c:  [?25h[?0c 1,$yank

[?25l[?1c:  [?25h[?0c quit!

[?25l[?1c:  [?25h[?0cendfunc
[?25l[?1cOK 1 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 2 - \<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>
OK 0 - a\n^b$\n^c
OK 1 - a\n^b$\n^c
OK 2 - a\n^b$\n^c
OK 0 - \(^.\+\n\)\1
OK 1 - \(^.\+\n\)\1
OK 2 - \(^.\+\n\)\1

<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

xxstart3

thexE thE thExethe[?25h[?0c[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c
-0-[?25h[?0c[?25l[?1c
:[?25h[?0cset re=0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall Postest()
[?25l[?1c3 substitutions on 3 lines

9 lines yanked

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cput
[?25l[?1c9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c<T="5">Ta 5</Title>
<T="7">Ac 7</Title>

xxstart3thexE thE thExetheAndAxAnd AndAxAndoooxOfOr fOrOxooooooxOfOr fOrOxoooasdfhereasdfasdfagainasdf-0-
ffobob__oooookoooo__moooooo
            f__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_[?25h[?0c[?25l[?1c
-1-[?25h[?0c[?25l[?1c
:[?25h[?0cset re=1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall Postest()
[?25l[?1c3 substitutions on 3 lines

9 lines yanked

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cput
[?25l[?1c9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1casdfhereasdf
asdfagainasdf

-0-
ffobob__oooookoooo__moooooo
            f__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-1-
ffo
bob__ooooo
koooo__
moooooo                 f__
ab!bababababab
ba!ab##abab?bafoo
**!*****_[?25h[?0c[?25l[?1c
-2-[?25h[?0c[?25l[?1c
:[?25h[?0cset re=2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall Postest()
[?25l[?1c3 substitutions on 3 lines

9 lines yanked

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cput
[?25l[?1c9 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1cab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-1-
ffo
bob__ooooo
koooo__
moooooo                 f__
ab!bababababab
ba!ab##abab?bafoo
**!*****_
-2-
ffo
bob__ooooo
koooo__
moooooo                 f__
ab!bababababab
ba!ab##abab?bafoo
**!*****_[?25h[?0c[?25l[?1c
:[?25h[?0c" start and end of buffer
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\%^
[?25l[?1csearch hit BOTTOM, continuing at TOPTest for regexp patterns without multi-byte support.
See test95 for multi-byte tests.

A pattern that gives the expected result produces OK, so that we know it was
actually tried.

STARTTEST
:so small.vim
:" tl is a List of Lists with:
:"    regexp engine
:"    regexp pattern
:"    text to test the pattern on
:"    expected match (optional)
:"    expected submatch 1 (optional)
:"    expected submatch 2 (optional)
:"    etc.
:"  When there is no match use only the first two items.
:let tl = []
:"
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"""" Previously written tests """"""""""""""""""""""""""""""""
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1cab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-1-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-2-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cTest[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1cOK 1 - \v(a*)+
OK 2 - \v(a*)+
OK 0 - \v((ab)+)+
OK 1 - \v((ab)+)+
OK 2 - \v((ab)+)+
OK 0 - \v(((ab)+)+)+
OK 1 - \v(((ab)+)+)+
OK 2 - \v(((ab)+)+)+
OK 0 - \v(((ab)+)+)+
OK 1 - \v(((ab)+)+)+
OK 2 - \v(((ab)+)+)+
OK 0 - \v(a{0,2})+
OK 1 - \v(a{0,2})+
OK 2 - \v(a{0,2})+
OK 0 - \v(a*)+
OK 1 - \v(a*)+
OK 2 - \v(a*)+
OK 0 - \v((a*)+)+
OK 1 - \v((a*)+)+
OK 2 - \v((a*)+)+
OK 0 - \v((ab)*)+
OK 1 - \v((ab)*)+
OK 2 - \v((ab)*)+[?25h[?0c[?25l[?1c/[?25h[?0c\%^..
[?25l[?1csearch hit BOTTOM, continuing at TOPTest for regexp patterns without multi-byte support.
See test95 for multi-byte tests.

A pattern that gives the expected result produces OK, so that we know it was
actually tried.

STARTTEST
:so small.vim
:" tl is a List of Lists with:
:"    regexp engine
:"    regexp pattern
:"    text to test the pattern on
:"    expected match (optional)
:"    expected submatch 1 (optional)
:"    expected submatch 2 (optional)
:"    etc.
:"  When there is no match use only the first two items.
:let tl = []
:"
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"""" Previously written tests """"""""""""""""""""""""""""""""
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1cba!ab##abab?bafoo
**!*****_
-1-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-2-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
Test
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cTest[?25h[?0c[?25l[?1ct END[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1cOK 2 - \v(a*)+
OK 0 - \v((ab)+)+
OK 1 - \v((ab)+)+
OK 2 - \v((ab)+)+
OK 0 - \v(((ab)+)+)+
OK 1 - \v(((ab)+)+)+
OK 2 - \v(((ab)+)+)+
OK 0 - \v(((ab)+)+)+
OK 1 - \v(((ab)+)+)+
OK 2 - \v(((ab)+)+)+
OK 0 - \v(a{0,2})+
OK 1 - \v(a{0,2})+
OK 2 - \v(a{0,2})+
OK 0 - \v(a*)+
OK 1 - \v(a*)+
OK 2 - \v(a*)+
OK 0 - \v((a*)+)+
OK 1 - \v((a*)+)+
OK 2 - \v((a*)+)+
OK 0 - \v((ab)*)+
OK 1 - \v((ab)*)+
OK 2 - \v((ab)*)+
OK 0 - \va{1,3}[?25h[?0c[?25l[?1c/[?25h[?0c\%$
[?25l[?1c**!*****_
-1-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-2-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
Test
Test END[?25h[?0c[?25l[?1c:" tl is a List of Lists with:
:"    regexp engine
:"    regexp pattern
:"    text to test the pattern on
:"    expected match (optional)
:"    expected submatch 1 (optional)
:"    expected submatch 2 (optional)
:"    etc.
:"  When there is no match use only the first two items.
:let tl = []
:"
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"""" Previously written tests """"""""""""""""""""""""""""""""
:""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
:"
:call add(tl, [2, 'ab', 'aab', 'ab'])
:call add(tl, [2, 'b', 'abcdef', 'b'])
:call add(tl, [2, 'bc*', 'abccccdef', 'bcccc'])
:call add(tl, [2, 'bc\{-}', 'abccccdef', 'b'])
:call add(tl, [2, 'bc\{-}\(d\)', 'abccccdef', 'bccccd', 'd'])
:call add(tl, [2, 'bc*', 'abbdef', 'b'])
:call add(tl, [2, 'c*', 'ccc', 'ccc'])
:call add(tl, [2, 'bc*', 'abdef', 'b'])[?25h[?0c[?25l[?1c/[?25h[?0c..\%$
[?25l[?1c**!*****_
-1-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-2-
ffo
bob
__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
Test
Test END[?25h[?0c
[?25l[?1c
[?25h[?0c[?25l[?1cEN[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1cE[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Check for detecting error
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset regexpengine=2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor pat in [' \ze*', ' \zs*']
[?25l[?1c
:  [?25h[?0c:  try

[?25l[?1c:    [?25h[?0c:    let l = matchlist('x x', pat)

[?25l[?1c:    [?25h[?0c:    $put ='E888 NOT detected for ' . pat

[?25l[?1c:    [?25h[?0c:  catch

[?25l[?1c:    [?25h[?0c:    $put ='E888 detected for ' . pat

[?25l[?1c:    [?25h[?0c:  endtry

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c__ooooo
koooo__
moooooof__
ab!babababababfoo
ba!ab##abab?bafoo
**!*****_
-2-ffobob
__ooooo
koooo__
mo
       f__
ab!babababababfoo
ba!ab##abab?bafoo**!*****_TestTest ENDENE888 detected for  \ze*
E888 detected for  \zs*[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c""""" Write the results """""""""""""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/\%#=1^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 1104 lines, 20313 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test65.failed test.ok test.out X* viminfo
cp test65.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test65.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test65.in" 95 lines, 2153 charactersTest for floating point and logical operators.

STARTTEST
:so small.vim
:if !has("float")
:  e! test.ok
:  wq! test.out
:endif
:"
:$put =printf('%f', 123.456)
:$put =printf('%e', 123.456)
:$put =printf('%g', 123.456)
:" check we don't crash on division by zero
:echo 1.0 / 0.0
:$put ='+='
:let v = 1.234
:let v += 6.543
:$put =printf('%g', v)
:let v = 1.234
:let v += 5
:$put =printf('%g', v)
:let a = 5
:let a += 3.333[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for floating point and logical operators.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 89 lines, 2067 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =float2nr(123.456)
:$put =float2nr(-123.456)
:$put ='AND'
:$put =and(127, 127)
:$put =and(127, 16)
:$put =and(127, 128)
:$put ='OR'
:$put =or(16, 7)
:$put =or(8, 7)
:$put =or(0, 123)
:$put ='XOR'
:$put =xor(127, 127)
:$put =xor(127, 16)
:$put =xor(127, 128)
:$put ='invert'
:$put =and(invert(127), 65535)
:$put =and(invert(16), 65535)
:$put =and(invert(128), 65535)
:$put =invert(1.0)
:/^Results/,$wq! test.out
ENDTEST

Results of test65:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("float")
[?25l[?1c
:  [?25h[?0c:  e! test.ok

[?25l[?1c:  [?25h[?0c:  wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:$put =float2nr(123.456)
:$put =float2nr(-123.456)
:$put ='AND'[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =printf('%f', 123.456)
[?25l[?1c
123.456000[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%e', 123.456)
[?25l[?1c
1.234560e+02[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', 123.456)
[?25l[?1c
123.456[?25h[?0c[?25l[?1c
:[?25h[?0c" check we don't crash on division by zero
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cecho 1.0 / 0.0
[?25l[?1cinf[?25h[?0c[?25l[?1c:[?25h[?0c$put ='+='
[?25l[?1c
+=[?25h[?0c[?25l[?1c
:[?25h[?0clet v = 1.234
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v += 6.543
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =printf('%g', v)
[?25l[?1c
7.777[?25h[?0c[?25l[?1c
:[?25h[?0clet v = 1.234
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v += 5
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =printf('%g', v)
[?25l[?1c
6.234[?25h[?0c[?25l[?1c
:[?25h[?0clet a = 5
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet a += 3.333
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(a)
[?25l[?1c
8.333[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='=='
[?25l[?1c
==[?25h[?0c[?25l[?1c
:[?25h[?0clet v = 1.234
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =v == 1.234
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0c$put =v == 1.2341
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='add-subtract'
[?25l[?1c
add-subtract[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', 4 + 1.234)
[?25l[?1c
5.234[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', 1.234 - 8)
[?25l[?1c
-6.766[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='mult-div'
[?25l[?1c
mult-div[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', 4 * 1.234)
[?25l[?1c
4.936[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', 4.0 / 1234)
[?25l[?1c
0.003241[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='dict'
[?25l[?1c
dict[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string({'x': 1.234, 'y': -2.0e20})
[?25l[?1c
{'x': 1.234, 'y': -2.0e20}[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='list'
[?25l[?1c
list[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string([-123.4, 2.0e-20])
[?25l[?1c
[-123.4, 2.0e-20][?25h[?0c[?25l[?1c
:[?25h[?0c$put ='abs'
[?25l[?1c
abs[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%d', abs(1456))
[?25l[?1c
1456[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%d', abs(-4))
[?25l[?1c
4[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%d', abs([1, 2, 3]))
[?25l[?1cE745: Using a List as a Number
-1[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', abs(14.56))
[?25l[?1c
14.56[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', abs(-54.32))
[?25l[?1c
54.32[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='ceil'
[?25l[?1c
ceil[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', ceil(1.456))
[?25l[?1c
2.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', ceil(-5.456))
[?25l[?1c
-5.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', ceil(-4.000))
[?25l[?1c
-4.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='floor'
[?25l[?1c
floor[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', floor(1.856))
[?25l[?1c
1.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', floor(-5.456))
[?25l[?1c
-6.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', floor(4.0))
[?25l[?1c
4.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='log10'
[?25l[?1c
log10[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', log10(1000))
[?25l[?1c
3.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', log10(0.01000))
[?25l[?1c
-2.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='pow'
[?25l[?1c
pow[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', pow(3, 3.0))
[?25l[?1c
27.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', pow(2, 16))
[?25l[?1c
65536.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='round'
[?25l[?1c
round[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', round(0.456))
[?25l[?1c
0.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', round(4.5))
[?25l[?1c
5.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', round(-4.50))
[?25l[?1c
-5.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='sqrt'
[?25l[?1c
sqrt[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', sqrt(100))
[?25l[?1c
10.0[?25h[?0c[?25l[?1c
:[?25h[?0cecho sqrt(-4.01)
[?25l[?1cnan[?25h[?0c[?25l[?1c:[?25h[?0c$put ='str2float'
[?25l[?1c
str2float[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', str2float('1e40'))
[?25l[?1c
1.0e40[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='trunc'
[?25l[?1c
trunc[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', trunc(1.456))
[?25l[?1c
1.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', trunc(-5.456))
[?25l[?1c
-5.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =printf('%g', trunc(4.000))
[?25l[?1c
4.0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='float2nr'
[?25l[?1c
float2nr[?25h[?0c[?25l[?1c
:[?25h[?0c$put =float2nr(123.456)
[?25l[?1c
123[?25h[?0c[?25l[?1c
:[?25h[?0c$put =float2nr(-123.456)
[?25l[?1c
-123[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='AND'
[?25l[?1c
AND[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(127, 127)
[?25l[?1c
127[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(127, 16)
[?25l[?1c
16[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(127, 128)
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='OR'
[?25l[?1c
OR[?25h[?0c[?25l[?1c
:[?25h[?0c$put =or(16, 7)
[?25l[?1c
23[?25h[?0c[?25l[?1c
:[?25h[?0c$put =or(8, 7)
[?25l[?1c
15[?25h[?0c[?25l[?1c
:[?25h[?0c$put =or(0, 123)
[?25l[?1c
123[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='XOR'
[?25l[?1c
XOR[?25h[?0c[?25l[?1c
:[?25h[?0c$put =xor(127, 127)
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =xor(127, 16)
[?25l[?1c
111[?25h[?0c[?25l[?1c
:[?25h[?0c$put =xor(127, 128)
[?25l[?1c
255[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='invert'
[?25l[?1c
invert[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(invert(127), 65535)
[?25l[?1c
65408[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(invert(16), 65535)
[?25l[?1c
65519[?25h[?0c[?25l[?1c
:[?25h[?0c$put =and(invert(128), 65535)
[?25l[?1c
65407[?25h[?0c[?25l[?1c
:[?25h[?0c$put =invert(1.0)
[?25l[?1cE805: Using a Float as a Number
0[?25h[?0c[?25l[?1c
:[?25h[?0c/^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 73 lines, 430 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test66.failed test.ok test.out X* viminfo
cp test66.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test66.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test66.in" 33 lines, 509 charactersTest for visual block shift and tab characters.

STARTTEST
:so small.vim
/^one
fe^V4jR^[ugvr1:'<,'>w! test.out
/^abcdefgh
^V4jI    ^[j<<11|D
7|a^[
7|a^[
7|a^[4k13|^V4j<
:$-5,$w >> test.out
:$-4,$s/\s\+//g
^V4kI    ^[j<<
7|a^[
7|a^[
7|a^[4k13|^V4j3<
:$-4,$w >> test.out
:qa!
ENDTEST

one two three[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 16 lines, 234 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^one
[?25l[?1c[?25h[?0con[?25l[?1c[?25h[?0c[?25l[?1ce
one two three
one two three
one two three
one two three[?25h[?0c[?25l[?1c
4 fewer linesabcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1cmore lines; before #1  0 seconds agoone two three
one two three
one two threeone two threeone two three[?25h[?0c[?25l[?1ce
one
one
one
on[?25h[?0c[?25l[?1c1
on1
on1
on1
on1[?25h[?0c[?25l[?1c:[?25h[?0c'<,'>w! test.out
[?25l[?1c"test.out" [New File] 5 lines, 70 characters written[?25h[?0c[?25l[?1c/[?25h[?0c^abcdefgh
[?25l[?1cabcdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ca
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
[?25h[?0c[?25l[?1ca
a
a
a    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz[?25h[?0c
[?25l[?1cabcdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cc         defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1cc            defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1cc         defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ci  [?25h[?0c[?25l[?1c
5 lines <ed 1 timeidefghijklmnopqrstuvwxyzdefghijklmnopqrstuvwxyzdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0c$-5,$w >> test.out
[?25l[?1c"test.out"6 lines, 151 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c$-4,$s/\s\+//g
[?25l[?1c7 substitutions on 4 linesabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ca
a
a
a[?25h[?0c[?25l[?1c
a
a
a
a    abcdefghijklmnopqrstuvwxyz
    abcdefghij
    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz
    abcdefghijklmnopqrstuvwxyz[?25h[?0c
[?25l[?1cabcdefghij[?25h[?0c
    ab[?25l[?1cc         defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1cc                       defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1cc                 defghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ci  [?25h[?0c[?25l[?1c
5 lines <ed 3 timesidefghijklmnopqrstuvwxyz    defghijklmnopqrstuvwxyzdefghijklmnopqrstuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0c$-4,$w >> test.out
[?25l[?1c"test.out"5 lines, 147 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test67.failed test.ok test.out X* viminfo
cp test67.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test67.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test67.in" 33 lines, 1109 charactersTest that groups and patterns are tested correctly when calling exists() for
autocommands.

STARTTEST
:so small.vim
:let results=[]
:augroup auexists
:augroup END
:call add(results, "##BufEnter: " . exists("##BufEnter"))
:call add(results, "#BufEnter: " . exists("#BufEnter"))
:au BufEnter * let g:entered=1
:call add(results, "#BufEnter: " . exists("#BufEnter"))
:call add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter"))
:augroup auexists
:au BufEnter * let g:entered=1
:augroup END
:call add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter"))
:call add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test"))
:au BufEnter *.test let g:entered=1
:call add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test"))
:edit testfile.test
:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
:au BufEnter <buffer> let g:entered=1[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest that groups and patterns are tested correctly when calling exists() for[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 27 lines, 998 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
:edit testfile2.test
:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
:e test.out
:call append(0, results)
:$d
:w
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet results=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup auexists
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "##BufEnter: " . exists("##BufEnter"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter: " . exists("#BufEnter"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter * let g:entered=1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter: " . exists("#BufEnter"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup auexists
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter * let g:entered=1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter *.test let g:entered=1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cedit testfile.test
[?25l[?1c"testfile.test" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter <buffer> let g:entered=1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cedit testfile2.test
[?25l[?1c"testfile2.test" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce test.out
[?25l[?1c"test.out" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, results)
[?25l[?1c##BufEnter: 1
#BufEnter: 0
#BufEnter: 1
#auexists#BufEnter: 0
#auexists#BufEnter: 1
#BufEnter#*.test: 0
#BufEnter#*.test: 1
#BufEnter#<buffer>: 0
#BufEnter#<buffer>: 1
#BufEnter#<buffer>: 0[?25h[?0c[?25l[?1c:[?25h[?0c$d
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 10 lines, 190 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test68.failed test.ok test.out X* viminfo
cp test68.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test68.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test68.in" 131 lines, 1004 charactersTest for text formatting.

Results of test68:

STARTTEST
:so small.vim
/^{/+1
:set noai tw=2 fo=t
gRa b^[
ENDTEST

{


}

STARTTEST
/^{/+1
:set ai tw=2 fo=tw
gqgqjjllab^[
ENDTEST

{[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for text formatting.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 4 lines, 48 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noai tw=2 fo=t
[?25l[?1c[?25h[?0c[?25l[?1ca
b[?25h[?0c
[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 38 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c
a  b[?25h[?0c[?25l[?1c
:[?25h[?0cset ai tw=2 fo=tw
[?25l[?1c[?25h[?0c[?25l[?1c
b[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
a[?25h[?0ca [?25l[?1c
b[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 4 lines, 34 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=3 fo=t
gqgqo
a ^V^A^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
a ^A[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=3 fo=t
[?25l[?1c[?25h[?0c[?25l[?1c
^A[?25h[?0c[?25l[?1ca
^A
[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5 lines, 58 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=2 fo=tcq1 comments=:#
gqgqjgqgqo
a b
#a b^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
a b[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=2 fo=tcq1 comments=:#
[?25l[?1c[?25h[?0c[?25l[?1c
#a b[?25h[?0c[?25l[?1ca b
#a b[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 46 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=5 fo=tcn comments=:#
A b^[jA b^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
  1 a[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=5 fo=tcn comments=:#
[?25l[?1c[?25h[?0c[?25l[?1c
b[?25h[?0c[?25l[?1c
# 1 a[?25h[?0c[?25l[?1c
#   b[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+3
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 35 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=5 fo=t2a si
i  ^[A_^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+3
[?25l[?1c{

  x a
  b[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=5 fo=t2a si
[?25l[?1c[?25h[?0c[?25l[?1c    b[?25h[?0c[?25l[?1c b_[?25h[?0c[?25l[?1c
c[?25h[?0c[?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 40 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=5 fo=qn comments=:#
gwap
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
# 1 a b[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=5 fo=qn comments=:#
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
#   b[?25h[?0c[?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 40 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=5 fo=q2 comments=:#
gwap
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
# x[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=5 fo=q2 comments=:#
[?25l[?1c[?25h[?0c[?25l[?1c# x a
[?25h[?0c[?25l[?1c
#   b[?25h[?0c[?25l[?1c
/^STARTTEST
}

STARTTEST[?25h[?0c[?25l[?1c
/^{/+2
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 26 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw& fo=a
I^^^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+2
[?25l[?1c{
   1aa
   2bb[?25h[?0c[?25l[?1c
:[?25h[?0cset tw& fo=a
[?25l[?1c[?25h[?0c[?25l[?1c1aa ^^2bb }STARTTEST[?25h[?0c
[?25l[?1c/^STARTTEST
[?25h[?0c[?25l[?1c
/mno pqr/[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 69 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:setl tw=20 fo=an12wcq comments=s1:/*,mb:*,ex:*/
A vwx yz^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0cmno pqr/
[?25l[?1c/* abc def ghi jkl
 *    mno pqr stu[?25h[?0c[?25l[?1c
:[?25h[?0csetl tw=20 fo=an12wcq comments=s1:/*,mb:*,ex:*/
[?25l[?1c[?25h[?0c[?25l[?1c
*    vwx yz[?25h[?0c[?25l[?1c
*/[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^#/
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 47 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:setl tw=12 fo=tqnc comments=:#
A foobar^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^#/
[?25l[?1c
# 1 xxxxx[?25h[?0c[?25l[?1c
:[?25h[?0csetl tw=12 fo=tqnc comments=:#
[?25l[?1c[?25h[?0c[?25l[?1c
#   foobar[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:g/^STARTTEST/.,/^ENDTEST/d
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2 lines, 56 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST[?25h[?0c[?25l[?1c
:1;/^Results/,$wq! test.out[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cg/^STARTTEST/.,/^ENDTEST/d
[?25l[?1c63 fewer lines# 1 a#   b}{
# x a#   b}{ 1aa ^^2bb }/* abc def ghi jkl
 *    mno pqr stu
 *    vwx yz
 */# 1 xxxxx
#   foobar[?25h[?0c[?25l[?1c:[?25h[?0c1;/^Results/,$wq! test.out
[?25l[?1c"test.out" [New File] 77 lines, 281 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test69.failed test.ok test.out X* viminfo
cp test69.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test69.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test69.in" 192 lines, 2185 charactersTest 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[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for multi-byte text formatting.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 2 lines, 34 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1cTest 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[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5 lines, 58 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tw=2 fo=t
[?25l[?1c[?25h[?0c
[?25l[?1c
XYZ[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cY[?25h[?0c[?25l[?1c
Z
abc [?25h[?0c[?25l[?1c
X[?25h[?0c[?25l[?1cY[?25h[?0c[?25l[?1cZ[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 8 lines, 80 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=1 fo=tm
gqgqjgqgqjgqgqjgqgqjgqgqo
X
Xa
X a
XY
X Y^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
X[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=1 fo=tm
[?25l[?1c[?25h[?0c[?25l[?1c
Xa[?25h[?0c[?25l[?1c
a[?25h[?0c[?25l[?1c
X a
[?25h[?0c[?25l[?1c
a[?25h[?0c[?25l[?1c
XY
[?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1c
X Y
[?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1cX
a
[?25h[?0c[?25l[?1cX
a
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cY
[?25h[?0c[?25l[?1cX [?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 13 lines, 140 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqo
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[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tw=2 fo=tm
[?25l[?1c[?25h[?0c
[?25l[?1ca[?25h[?0c
[?25l[?1ca[?25h[?0c
[?25l[?1cY
[?25h[?0c
[?25l[?1cY 
[?25h[?0c[?25l[?1c
aX
[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1c
abX
[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1c
abcX
[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1c
abX c
[?25h[?0c[?25l[?1cX
c[?25h[?0c[?25l[?1c
abXY
[?25h[?0c[?25l[?1cX
Y
[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1cX
a
[?25h[?0c[?25l[?1cX
a
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cY
[?25h[?0c[?25l[?1cX [?25h[?0c[?25l[?1cY
a[?25h[?0c[?25l[?1cX
ab[?25h[?0c[?25l[?1cX
abc[?25h[?0c[?25l[?1cX
ab[?25h[?0c[?25l[?1cX
c
ab[?25h[?0c[?25l[?1c
X[?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5 lines, 47 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set ai tw=2 fo=tm
gqgqjgqgqo
X
Xa^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
  X[?25h[?0c[?25l[?1c
:[?25h[?0cset ai tw=2 fo=tm
[?25l[?1c[?25h[?0c  [?25l[?1c
Xa[?25h[?0c[?25l[?1c
a[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
X
  [?25h[?0c[?25l[?1c
X
  a[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5 lines, 53 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set noai tw=2 fo=tm
gqgqjgqgqo
  X
  Xa^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
  X[?25h[?0c[?25l[?1c
:[?25h[?0cset noai tw=2 fo=tm
[?25l[?1c[?25h[?0c  [?25l[?1c
Xa[?25h[?0c[?25l[?1c
a[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
X
  [?25h[?0c[?25l[?1c
X
a[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 13 lines, 169 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqjgqgqo
X
Xa
XaY
XY
XYZ
X Y
X YZ
XX
XXa
XXY^[
ENDTEST

{
X
Xa
XaY
XY
XYZ
X Y
X YZ
XX
XXa[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tw=2 fo=cqm comments=n:X
[?25l[?1c[?25h[?0c

[?25l[?1cXY[?25h[?0c

[?25l[?1cXZ
[?25h[?0c

[?25l[?1c
X Z
[?25h[?0c[?25l[?1c
XX
[?25h[?0c[?25l[?1c
XXa
[?25h[?0c[?25l[?1c
XXY
[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1c
Xa
[?25h[?0c[?25l[?1cXa[?25h[?0c[?25l[?1cXY
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cY[?25h[?0c[?25l[?1cXZ
[?25h[?0c[?25l[?1cX [?25h[?0c[?25l[?1c
Y
[?25h[?0c[?25l[?1cX [?25h[?0c[?25l[?1cY[?25h[?0c[?25l[?1cX Z
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1c
X
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1c
Xa
[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cX[?25h[?0c[?25l[?1cY[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 30 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set tw=2 fo=tm
RXa^[
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{[?25h[?0c[?25l[?1c
:[?25h[?0cset tw=2 fo=tm
[?25l[?1c[?25h[?0c[?25l[?1c
X
a[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^{/+1
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 34 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set mps+=^Vu2018:^Vu2019
d%
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^{/+1
[?25l[?1c{
‘ two three ’ four[?25h[?0c[?25l[?1c
:[?25h[?0cset mps+=^‘:^’
[?25l[?1c[?25h[?0c[?25l[?1c four[?25h[?0c[?25l[?1c
}[?25h[?0c[?25l[?1c
/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
/^ra test
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2 lines, 16 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTjVjra
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^ra test
[?25l[?1c
ra test[?25h[?0c[?25l[?1c
abba
[?25h[?0c[?25l[?1cbba 
[?25h[?0c[?25l[?1c
a
aab 
[?25h[?0c[?25l[?1caaaaaaa [?25h[?0c
[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set whichwrap+=h
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 4 lines, 43 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/^x
dh
:set whichwrap-=h
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset whichwrap+=h
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^x
[?25l[?1cá
x[?25h[?0c[?25l[?1cx[?25h[?0c
[?25l[?1c
:[?25h[?0cset whichwrap-=h
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:let a = '.é.' " one char of two bytes
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 9 lines, 548 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:let b = '.é.' " normal e with composing char
/^byteidx
:put =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), byteidx(a, 4)])
:put =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), byteidx(b, 4)])
/^byteidxcomp
:put =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxcomp(a, 3), byteidxcomp(a, 4)])
:let b = '.é.'
:put =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxcomp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clet a = '.é.' " one char of two bytes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet b = '.eé.' " normal e with composing char
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^byteidx
[?25l[?1c
byteidx[?25h[?0c[?25l[?1c
:[?25h[?0cput =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), bytei

dx(a, 4)])
[?25l[?1c:set whichwrap-=h
ENDTESTáxSTARTTEST
:let a = '.é.' " one char of two bytesb = '.é.' " normal e with composing char
/^byteidx:put =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), byteidx(a, 4)]):put =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), byteidx(b, 4)])/^byteidxcomp
:put =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxcomp(a, 3), byteidxcomp(a, 4)]):let b = '.é.'put =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxcomp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])ENDTESTbyteidx
[0, 1, 3, 4, -1][?25h[?0c[?25l[?1c
:[?25h[?0cput =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), bytei

dx(b, 4)])
[?25l[?1cENDTESTáxSTARTTEST
:let a = '.é.' " one char of two bytesb = '.é.' " normal e with composing char
/^byteidx:put =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), byteidx(a, 4)]):put =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), byteidx(b, 4)])/^byteidxcomp
:put =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxcomp(a, 3), byteidxcomp(a, 4)]):let b = '.é.'put =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxcomp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])ENDTESTbyteidx
[0, 1, 3, 4, -1]4, 5[?25h[?0c[?25l[?1c
/[?25h[?0c^byteidxcomp
[?25l[?1c
byteidxcomp[?25h[?0c[?25l[?1c
:[?25h[?0cput =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxc

omp(a, 3), byteidxcomp(a, 4)])
[?25l[?1cáxSTARTTEST
:let a = '.é.' " one char of two bytesb = '.é.' " normal e with composing char
/^byteidx:put =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), byteidx(a, 4)]):put =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), byteidx(b, 4)])/^byteidxcomp
:put =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxcomp(a, 3), byteidxcomp(a, 4)]):let b = '.é.'put =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxcomp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])ENDTESTbyteidx
[0, 1, 3, 4, -1]4, 5
byteidxcomp[0, 1, 3, 4, -1][?25h[?0c[?25l[?1c
:[?25h[?0clet b = '.eé.'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cput =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxc

omp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])
[?25l[?1cSTARTTEST
:let a = '.é.' " one char of two bytesb = '.é.' " normal e with composing char
/^byteidx:put =string([byteidx(a, 0), byteidx(a, 1), byteidx(a, 2), byteidx(a, 3), byteidx(a, 4)]):put =string([byteidx(b, 0), byteidx(b, 1), byteidx(b, 2), byteidx(b, 3), byteidx(b, 4)])/^byteidxcomp
:put =string([byteidxcomp(a, 0), byteidxcomp(a, 1), byteidxcomp(a, 2), byteidxcomp(a, 3), byteidxcomp(a, 4)]):let b = '.é.'put =string([byteidxcomp(b, 0), byteidxcomp(b, 1), byteidxcomp(b, 2), byteidxcomp(b, 3), byteidxcomp(b, 4), byteidxcomp(b, 5)])ENDTESTbyteidx
[0, 1, 3, 4, -1]4, 5
byteidxcomp[0, 1, 3, 4, -1]2, 4, 5, -1][?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
/^substitute
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2 lines, 75 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:let y = substitute('123', '\zs', 'a', 'g')    | put =y
ENDTEST[?25h[?0c[?25l[?1csubstitute[?25h[?0c[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c/[?25h[?0c^substitute
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet y = substitute('123', '\zs', 'a', 'g')    | put =y
[?25l[?1ca1a2a3a[?25h[?0c[?25l[?1c

/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c:g/^STARTTEST/.,/^ENDTEST/d
:1;/^Results/,$wq! test.out[?25h[?0c[?25l[?1c

:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 2 lines, 56 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c

/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cg/^STARTTEST/.,/^ENDTEST/d
[?25l[?1c104 fewer lines{ four}ra test
aaaaaaaáxbyteidx[0, 1, 3, 4, -1]
[0, 1, 4, 5, -1]byteidxcomp
[0, 1, 3, 4, -1]
[0, 1, 2, 4, 5, -1]substitute
a1a2a3a[?25h[?0c[?25l[?1c:[?25h[?0c1;/^Results/,$wq! test.out
[?25l[?1c"test.out" [New File] 166 lines, 730 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test70.failed test.ok test.out X* viminfo
cp test70.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test70.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test70.in" 63 lines, 1501 charactersSmoke test for MzScheme interface and mzeval() function

STARTTEST
:so mzscheme.vim
:set nocompatible viminfo+=nviminfo
:function! MzRequire()
:redir => l:mzversion
:mz (version)
:redir END
:if strpart(l:mzversion, 1, 1) < "4"
:" MzScheme versions < 4.x:
:mz (require (prefix vim- vimext))
:else
:" newer versions:
:mz (require (prefix-in vim- 'vimext))
:mz (require r5rs)
:endif
:endfunction
:silent call MzRequire()
:mz (define l '("item0" "dictionary with list OK" "item2"))
:mz (define h (make-hash))
:mz (hash-set! h "list" l)
/^1[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cSmoke test for MzScheme interface and mzeval() function[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 55 lines, 1398 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:if l2[2] == l2
:let res = "OK"
:else
:let res = "FAILED: " . l2[2]
:endif
:call setline(search("^3"), "circular test " . res)
:" funcrefs
:mz (define vim:max (vim-eval "function('max')"))
:mz (define m (vim:max '(1 100 8)))
:let m = mzeval('m')
:if m == 100
:let fref_res = "OK"
:else
:let fref_res = "FAILED: " . m
:end
:call append(line('$'), 'funcrefs '. fref_res)
:?^1?,$w! test.out
:qa!
ENDTEST

1 line 1
2 line 2
3 line 3[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mzscheme.vim
[?25l[?1c"test.ok" 6 lines, 94 characters

"test.out" [New File] 6 lines, 94 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test71.failed test.ok test.out X* viminfo
cp test71.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test71.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test71.in" 94 lines, 1779 charactersTest for encryption.
The test data is in another file to avoid problems with 'encoding', especially
cp932.

STARTTEST
:so small.vim
:set enc=latin1
:bwipe!
:r test71a.in
:/^start of text/+1
:let text_lines = getline('.', line('.') + 2)
:/^start of cm=zip bytes/+1
:let cm0_bytes = getline('.', '.')
:/^start of cm=blowfish bytes/+1
:let cm1_bytes = getline('.', '.')
:/^start of cm=blowfish2 bytes/+1
:let cm2_bytes = getline('.', '.')
:bwipe!
:call append(0, text_lines)
:$d
:X
foobar
foobar[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for encryption.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 87 lines, 1652 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e Xtestfile
barbar
:let cm1_read_bin = getline('.', '$')
:bwipe!
:set bin noeol key=
:call append(0, cm2_bytes)
:$d
:set fenc=latin1
:w! Xtestfile
:bwipe!
:set nobin
:e Xtestfile
barburp
:call append(0, cm1_read_bin)
:call append(0, cm0_read_bin)
:call append(0, cm2_read_back)
:call append(0, cm1_read_back)
:call append(0, cm0_read_back)
:set key= fenc=latin1
:w! test.out
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=latin1
[?25l[?1c:e Xtestfile
barbar
:let cm1_read_bin = getline('.', '$')
:bwipe!
:set bin noeol key=
:call append(0, cm2_bytes)
:$d
:set fenc=latin1
:w! Xtestfile
:bwipe!
:set nobin
:e Xtestfile
barburp
:call append(0, cm1_read_bin)
:call append(0, cm0_read_bin)
:call append(0, cm2_read_back)
:call append(0, cm1_read_back)
:call append(0, cm0_read_back)
:set key= fenc=latin1
:w! test.out
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
                                                            ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, text_lines)
[?25l[?1c01234567890123456789012345678901234567
line 2  foo bar blah
line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0c$d
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cWarning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1cEnter same key again: [?25h[?0c******

[?25l[?1c01234567890123456789012345678901234567
line 2  foo bar blah
line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtestfile
[?25l[?1c"Xtestfile" [New File][crypted] 3 lines, 98 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [crypted] 3 lines, 98 characters01234567890123456789012345678901234567
line 2  foo bar blah
line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"Xtestfile" [crypted] 3 lines, 98 characters[?25h[?0c[?25l[?1c:[?25h[?0clet cm0_read_back = getline('.', '$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset key=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cryptmethod=blowfish
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If the blowfish test fails 'cryptmethod' will be 'zip' now.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%s/^/\=&cryptmethod == 'blowfish' ? "OK " : "blowfish test failed "/
[?25l[?1c3 substitutions on 3 linesOK 01234567890123456789012345678901234567
OK line 2  foo bar blah
OK line 3 xxx
[?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cWarning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1cEnter same key again: [?25h[?0c******

[?25l[?1cOK 01234567890123456789012345678901234567
OK line 2  foo bar blah
OK line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtestfile
[?25l[?1c"Xtestfile" [blowfish] 3 lines, 107 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [blowfish] 3 lines, 107 charactersOK 01234567890123456789012345678901234567
OK line 2  foo bar blah
OK line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"Xtestfile" [blowfish] 3 lines, 107 characters[?25h[?0c[?25l[?1c:[?25h[?0clet cm1_read_back = getline('.', '$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset key=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cryptmethod=blowfish2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" If the blowfish test fails 'cryptmethod' will be 'zip' now.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%s/^/\=&cryptmethod == 'blowfish2' ? "OK " : "blowfish test failed "/
[?25l[?1c3 substitutions on 3 linesOK 01234567890123456789012345678901234567
OK OK line 2  foo bar blah
OK OK line 3 xxx
[?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cEnter encryption key: [?25h[?0c*******

[?25l[?1cEnter same key again: [?25h[?0c*******

[?25l[?1cOK OK 01234567890123456789012345678901234567
OK OK line 2  foo bar blah[?25h[?0c[?25l[?1c:[?25h[?0cw! Xtestfile
[?25l[?1c"Xtestfile" [blowfish2] 3 lines, 116 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Enter encryption key: [?25h[?0c*******

[?25l[?1c"Xtestfile" [blowfish2] 3 lines, 116 charactersOK OK 01234567890123456789012345678901234567
OK OK line 2  foo bar blah
Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [crypted] 2 lines, 24 characters1234567890
Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [blowfish] 2 lines, 27 charactersasdfasdfasdf
0001112223333
Enter encryption key: [?25h[?0c*******

[?25l[?1c"Xtestfile" [blowfish2] 2 lines, 44 charactersabcdefghijklmnopqrstuvwxyz
!@#$%^&*()_+=-`~"Xtestfile" [blowfish2] 2 lines, 44 characters[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, cm1_read_bin)
[?25l[?1casdfasdfasdf
0001112223333[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, cm0_read_bin)
[?25l[?1c1234567890
OK OK line 2  foo bar blah
OK OK line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, cm1_read_back)
[?25l[?1cOK 01234567890123456789012345678901234567
OK line 2  foo bar blah
OK line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, cm0_read_back)
[?25l[?1c01234567890123456789012345678901234567
line 2  foo bar blah
line 3 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0cset key= fenc=latin1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 15 lines, 416 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test72.failed test.ok test.out X* viminfo
cp test72.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test72.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test72.in" 146 lines, 2110 charactersTests for undo file.
Since this script is sourced we need to explicitly break changes up in
undo-able pieces.  Do that by setting 'undolevels'.

STARTTEST
:so small.vim
:"
:" Test 'undofile': first a simple one-line change.
:set nocompatible viminfo+=nviminfo visualbell
:set ul=100 undofile nomore
:e! Xtestfile
ggdGithis is one line^[:set ul=100
:s/one/ONE/
:set ul=100
:w
:bwipe!
:e Xtestfile
u:.w! test.out
:"
:" Test 'undofile', change in original file fails check
:set noundofile
:e! Xtestfile
:s/line/Line/[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for undo file.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 135 lines, 1913 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:bwipe!
:e Xtestfile
foo2bar
:set key=
/bar
:.w >>test.out
u:.w >>test.out
u:.w >>test.out
u:.w >>test.out
:"
:" Rename the undo file so that it gets cleaned up.
:if has("vms")
: call rename("_un_Xtestfile", "Xtestundo")
:else
: call rename(".Xtestfile.un~", "Xtestundo")
:endif
:qa!
ENDTEST

1111 -----
2222 -----

123456789[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test 'undofile': first a simple one-line change.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo visualbell
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100 undofile nomore
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c-- INSERT --this is one line[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cs/one/ONE/
[?25l[?1cONE
[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestfile" [New] 1L, 17C written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!:e Xtestfilefoo2bar:set key=/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 1L, 17Cthis is ONE line
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c1 change; before #2  0 seconds agoone
[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New] 1L, 17C written[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test 'undofile', change in original file fails check
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noundofile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" 1L, 17CONE
[?25h[?0c[?25l[?1c:[?25h[?0cs/line/Line/
[?25l[?1cL
[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestfile" 1L, 17C written[?25h[?0c[?25l[?1c:[?25h[?0cset undofile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!:e Xtestfilefoo2bar:set key=/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 1L, 17Cthis is ONE Line
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" TODO: this beeps
[?25l[?1c[?25h[?0c[?5h[?5l[?25l[?1cAlready at oldest change[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 17C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test 'undofile', add 10 lines, delete 6 lines, undo 3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset undofile
[?25l[?1c[?25h[?0c[?25l[?1c--No lines in buffer--[?25h[?0c[?25l[?1c-- INSERT --one
twothreefourfivesixseveneightnineten[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xtestfile" 4L, 17C written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!
:e Xtestfile
foo2bar
:set key=
/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 4L, 17Conetwonineten~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c1 more line; before #7  0 seconds agoeight[?25h[?0c[?25l[?1c1 more line; before #6  0 seconds agoseven[?25h[?0c[?25l[?1c1 more line; before #5  0 seconds agosix[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 7L, 33C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test that reading the undofiles when setting undofile works
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noundofile ul=0
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --six
u[?25h[?0cs[?25l[?1c[?25h[?0c[?25l[?1c1 line less; before #8  0 seconds ago
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" 4L, 17Cnine
ten~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset undofile ul=100
[?25l[?1c[?25h[?0c[?25l[?1c1 more line; before #7  0 seconds agoeight[?25h[?0c[?25l[?1c1 more line; before #6  0 seconds agoseven[?25h[?0c[?25l[?1c1 more line; before #5  0 seconds agosix[?25h[?0c[?25l[?1c1 more line; before #4  0 seconds agofive[?25h[?0c[?25l[?1c1 more line; before #3  0 seconds agofour[?25h[?0c[?25l[?1c1 more line; before #2  0 seconds agothree[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 10L, 49C appended[?25h[?0c[?25l[?1c:[?25h[?0c" And now with encryption, cryptmethod=zip
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" 4L, 17Cninten~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset undofile cm=zip
[?25l[?1c[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c-- INSERT --monday
tuesdaywednesdaythursdayfriday[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cWarning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1cEnter same key again: [?25h[?0c******

[?25l[?1cmonday
friday
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw!
[?25l[?1c"Xtestfile" [crypted] 2L, 14C written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!
:e Xtestfile
foo2bar:set key=/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [crypted] 2L, 14Cmonday
friday
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xtestfile" [crypted] 2L, 14C[?25h[?0c[?25l[?1c:[?25h[?0cset key=
[?25l[?1c[?25h[?0c[?25l[?1c1 more line; before #11  1 seconds agothursday[?25h[?0c[?25l[?1c1 more line; before #10  1 seconds agowednesday[?25h[?0c[?25l[?1c:[?25h[?0cw >>test.out
[?25l[?1c"test.out" 4L, 33C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" With encryption, cryptmethod=blowfish
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c*******

~                                                                               ~                                                                               ~                                                                               "Xtestfile" [noeol][crypted] 1L, 14C[?25h[?0c[?25l[?1c:[?25h[?0cset undofile cm=blowfish ff&
[?25l[?1c[?25h[?0c[?25l[?1c--No lines in buffer--[?25h[?0c[?25l[?1c-- INSERT --jan
febmaraprjun[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c
[?25l[?1c-- INSERT --foo mar[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --bar apr[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cWarning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1cEnter same key again: [?25h[?0c******

[?25l[?1cjan
feb
bar apr[?25h[?0c[?25l[?1c:[?25h[?0cw!
[?25l[?1c"Xtestfile" [blowfish] 4L, 20C written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!
:e Xtestfile
foo2ba
:set key=
/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c******

[?25l[?1c"Xtestfile" [blowfish] 4L, 20Cjan
feb
bar apr
jun~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xtestfile" [blowfish] 4L, 20C[?25h[?0c[?25l[?1c:[?25h[?0cset key=
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cbar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 8C appended[?25h[?0c[?25l[?1c1 change; before #15  1 seconds agoap[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 4C appended[?25h[?0c[?25l[?1c1 more line; before #14  1 seconds agofoo mar[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 8C appended[?25h[?0c[?25l[?1c1 change; before #13  1 seconds agomar[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 4C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" With encryption, cryptmethod=blowfish2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtestfile
[?25l[?1c"Xtestfile" Need encryption key for "Xtestfile"

Warning: Using a weak encryption method; see :help 'cm'

Enter encryption key: [?25h[?0c*******

~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xtestfile" [noeol][blowfish] 1L, 20C[?25h[?0c[?25l[?1c:[?25h[?0cset undofile cm=blowfish2 ff&
[?25l[?1c[?25h[?0c[?25l[?1c--No lines in buffer--[?25h[?0c[?25l[?1c-- INSERT --jan
febmaraprjun[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c
[?25l[?1c-- INSERT --foo mar[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c-- INSERT --bar apr[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cX
[?25l[?1cEnter encryption key: [?25h[?0c*******

[?25l[?1cEnter same key again: [?25h[?0c*******

[?25l[?1cjan
feb[?25h[?0c[?25l[?1c:[?25h[?0cw!
[?25l[?1c"Xtestfile" [blowfish2] 4L, 20C written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe!
[?25l[?1c"test72.in" 146L, 2110C:bwipe!
:e Xtestfile
foo2ba
:set key=
/bar:.w >>test.outu:.w >>test.outu:.w >>test.outu:.w >>test.out:":" Rename the undo file so that it gets cleaned up.:if has("vms"): call rename("_un_Xtestfile", "Xtestundo"):else: call rename(".Xtestfile.un~", "Xtestundo"):endif:qa!ENDTEST1111 -----2222 -----123456789[?25h[?0c[?25l[?1c:[?25h[?0ce Xtestfile
[?25l[?1c"Xtestfile" 
Need encryption key for "Xtestfile"

Enter encryption key: [?25h[?0c*******

[?25l[?1c"Xtestfile" [blowfish2] 4L, 20Cjan
feb
bar ap
jun~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "Xtestfile" [blowfish2] 4L, 20C[?25h[?0c[?25l[?1c:[?25h[?0cset key=
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cbar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 8C appended[?25h[?0c[?25l[?1c1 change; before #19  1 seconds agoap[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 4C appended[?25h[?0c[?25l[?1c1 more line; before #18  1 seconds agofoo mar[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 8C appended[?25h[?0c[?25l[?1c1 change; before #17  1 seconds agomar[?25h[?0c[?25l[?1c:[?25h[?0c.w >>test.out
[?25l[?1c"test.out" 1L, 4C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Rename the undo file so that it gets cleaned up.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif has("vms")
[?25l[?1c
:  [?25h[?0c: call rename("_un_Xtestfile", "Xtestundo")

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: call rename(".Xtestfile.un~", "Xtestundo")

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cjan
feb
mar
apr[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test73.failed test.ok test.out X* viminfo
cp test73.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test73.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test73.in" 176 lines, 3863 charactersTests for find completion.

STARTTEST
:so small.vim
:" Do all test in a separate window to avoid E211 when we recursively
:" delete the Xfind directory during cleanup
:"
:" This will cause a few errors, do it silently.
:set visualbell
:set nocp viminfo+=nviminfo
:"
:function! DeleteDirectory(dir)
: if has("win16") || has("win32") || has("win64") || has("dos16") || has("dos32")
:  exec "silent !rmdir /Q /S " . a:dir
: else
:  exec "silent !rm -rf " . a:dir
: endif
:endfun
:" On windows a stale "Xfind" directory may exist, remove it so that
:" we start from a clean state.
:call DeleteDirectory("Xfind")
:new[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for find completion.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 171 lines, 3816 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:exec "cd " . cwd . "/Xfind/"
:set path=./path
:" Open the file where Jimmy Hoffa is found
:e in/file.txt
:" Find the file containing 'E.T.' in the Xfind/in/path directory
:find file
:exec "w >>" . test_out
:"
:" Test that completion works when path=.,,
:"
:set path=.,,
:" Open Jimmy Hoffa file
:e in/file.txt
:exec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu
:exec "w >>" . test_out
:q
:exec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Do all test in a separate window to avoid E211 when we recursively
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" delete the Xfind directory during cleanup
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" This will cause a few errors, do it silently.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset visualbell
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! DeleteDirectory(dir)
[?25l[?1c
:  [?25h[?0c: if has("win16") || has("win32") || has("win64") || has("dos16") || has("do

s32")

[?25l[?1c:    [?25h[?0c:  exec "silent !rmdir /Q /S " . a:dir

[?25l[?1c:    [?25h[?0c: else

[?25l[?1c:    [?25h[?0c:  exec "silent !rm -rf " . a:dir

[?25l[?1c:    [?25h[?0c: endif

[?25l[?1c:  [?25h[?0c:endfun
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path
:" Open the file where Jimmy Hoffa is found
:e in/file.txt
:" Find the file containing 'E.T.' in the Xfind/in/path directory
:find file
:exec "w >>" . test_out[?25h[?0c[?25l[?1c
:[?25h[?0c" On windows a stale "Xfind" directory may exist, remove it so that
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" we start from a clean state.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DeleteDirectory("Xfind")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       xec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!ENDTESTtest73.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet cwd=getcwd()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet test_out = cwd . '/test.out'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('Xfind')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd Xfind
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/«PKGBUILDDIR»/src/vim-basic/testdir/test73.in[?25h[?0c[?25l[?1c:[?25h[?0cset path=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind ...[?25l[?1c[?5h[?5l[?25h[?0c
[?25l[?1cE345: Can't find file "" in path[?25h[?0c[?25l[?1c:[?25h[?0cexec "w! " . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out"
<ld/vim-wblUMy/vim-7.4.963/src/vim-basic/testdir/test.out" [New] 0L, 0C written/«PKGBUILDDIR»/src/vim-basic/testdir/test.out[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path:" Open the file where Jimmy Hoffa is found:e in/file.txt:" Find the file containing 'E.T.' in the Xfind/in/path directory:find file      :exec "w >>" . test_out:":" Test that completion works when path=.,,:":set path=.,,:" Open Jimmy Hoffa file in/file.txtexec "w >>" . test_out" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwdcall DeleteDirectory("Xfind")
:qa!ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       xec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!ENDTEST/«PKGBUILDDIR»/src/vim-basic/testdir/test73.in                   [?25h[?0c[?25l[?1c:[?25h[?0cset path=.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind ...[?25l[?1c[?5h[?5l[?25h[?0c
[?25l[?1cE32: No file name[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 0L, 0C appended[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path:" Open the file where Jimmy Hoffa is found:e in/file.txt:" Find the file containing 'E.T.' in the Xfind/in/path directory:find file      :exec "w >>" . test_out:":" Test that completion works when path=.,,:":set path=.,,:" Open Jimmy Hoffa file in/file.txtexec "w >>" . test_out" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwdcall DeleteDirectory("Xfind")
:qa!ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       xec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!ENDTEST/«PKGBUILDDIR»/src/vim-basic/testdir/test73.in                   [?25h[?0c[?25l[?1c:[?25h[?0cset path=.,,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind ...[?25l[?1c[?5h[?5l[?25h[?0c
[?25l[?1cE32: No file name[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 0L, 0C appended[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path:" Open the file where Jimmy Hoffa is found:e in/file.txt:" Find the file containing 'E.T.' in the Xfind/in/path directory:find file      :exec "w >>" . test_out:":" Test that completion works when path=.,,:":set path=.,,:" Open Jimmy Hoffa file in/file.txtexec "w >>" . test_out" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwdcall DeleteDirectory("Xfind")
:qa!ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       xec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!ENDTEST/«PKGBUILDDIR»/src/vim-basic/testdir/test73.in                   [?25h[?0c[?25l[?1c:[?25h[?0cset path=./**
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind ...[?25l[?1c[?5h[?5l[?25h[?0c
[?25l[?1cE32: No file name[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 0L, 0C appended[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path:" Open the file where Jimmy Hoffa is found:e in/file.txt:" Find the file containing 'E.T.' in the Xfind/in/path directory:find file      :exec "w >>" . test_out:":" Test that completion works when path=.,,:":set path=.,,:" Open Jimmy Hoffa file in/file.txtexec "w >>" . test_out" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwdcall DeleteDirectory("Xfind")
:qa!ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       xec "w >>" . test_out
:" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwd
:call DeleteDirectory("Xfind")
:qa!ENDTEST/«PKGBUILDDIR»/src/vim-basic/testdir/test73.in                   [?25h[?0c[?25l[?1c:[?25h[?0c" We shouldn't find any file at this point, test.out must be empty.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('in')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd in
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/in[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('path')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexec "cd " . cwd
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdirtest73.in                                                    [?25h[?0c[?25l[?1c:[?25h[?0ce Xfind/file.txt
[?25l[?1c"Xfind/file.txt" [New File]Xfind/file.txt[?25h[?0c[?25l[?1c-- INSERT --Holy Grail[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xfind/file.txt" [New] 1L, 11C written   [?25h[?0c[?25l[?1c:[?25h[?0ce Xfind/in/file.txt
[?25l[?1c"Xfind/in/file.txt" [New File]in/file.txt[?25h[?0c[?25l[?1c-- INSERT --Jimmy Hoffa[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xfind/in/file.txt" [New] 1L, 12C written   [?25h[?0c[?25l[?1c:[?25h[?0ce Xfind/in/stuff.txt
[?25l[?1c"Xfind/in/stuff.txt" [New File]stuff.txt[?25h[?0c[?25l[?1c-- INSERT --Another Holy Grail[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xfind/in/stuff.txt" [New] 1L, 19C written   [?25h[?0c[?25l[?1c:[?25h[?0ce Xfind/in/path/file.txt
[?25l[?1c"Xfind/in/path/file.txt" [New File]path/file.txt[?25h[?0c[?25l[?1c-- INSERT --E.T.[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"Xfind/in/path/file.txt" [New] 1L, 5C written   [?25h[?0c[?25l[?1c:[?25h[?0cset path=Xfind/**
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c
[?25l[?1c"Xfind/file.txt" 1L, 11CHoly Grailfile.txt        [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 11C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/file.txt" 1L, 12CJimmy Hoffain/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c...[?25l[?1cpath/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/path/file.txt" 1L, 5CE.T.path/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 5C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Rerun the previous three find completions, using fullpath in 'path'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexec "set path=" . cwd . "/Xfind/**"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c
[?25l[?1c"Xfind/file.txt" 1L, 11CHoly Grailfile.txt        [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" .  test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 11C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/file.txt" 1L, 12CJimmy Hoffain/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c...[?25l[?1cpath/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/path/file.txt" 1L, 5CE.T.path/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 5C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Same steps again, using relative and fullpath items that point to the same
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" recursive location.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" This is to test that there are no duplicates in the completion list.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexec "set path+=Xfind/**"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c
[?25l[?1c"Xfind/file.txt" 1L, 11CHoly Grailfile.txt        [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" .  test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 11C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/file.txt" 1L, 12CJimmy Hoffain/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c...[?25l[?1cpath/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/path/file.txt" 1L, 5CE.T.path/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 5C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./Xfind/file.txt[?5h[?5l[?25h[?0c...[?25l[?1cin/file.txt[?25h[?0c
[?25l[?1c"Xfind/in/file.txt" 1L, 12CJimmy Hoffafile.txt     [?25h[?0c[?25l[?1c:[?25h[?0c" Test find completion for directory of current buffer, which at this point
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" is Xfind/in/file.txt.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset path=.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind st...[?25l[?1cuff.txt[?25h[?0c
[?25l[?1c"Xfind/in/stuff.txt" 1L, 19CAnother Holy Grailstuff.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" .  test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 19C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test find completion for empty path item ",," which is the current directory
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd Xfind
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfindin/stuff.txt      /«PKGBUILDDIR»/src/vim-basic/testdir/test73.in[?25h[?0c[?25l[?1c:[?25h[?0cset path=,,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind f...[?25l[?1cile.txt[?25h[?0c...[?25l[?1c[?25h[?0c
[?25l[?1c"file.txt" 1L, 11CHoly Grailfile.txt    [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 11C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test shortening of
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    foo/x/bar/voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    foo/y/bar/voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" When current directory is above foo/ they should be shortened to (in order
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" of appearance):
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    x/bar/voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    y/bar/voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('foo')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd foo
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/file.txt[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('x')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('y')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd x
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/x[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('bar')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo[?25h[?0c[?25l[?1c:[?25h[?0ccd y
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/y[?25h[?0c[?25l[?1c:[?25h[?0ccall mkdir('bar')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfindfile.txt                                                          [?25h[?0c[?25l[?1c:[?25h[?0c" We should now be in the Xfind directory
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce foo/x/bar/voyager.txt
[?25l[?1c"foo/x/bar/voyager.txt" [New File]oo/x/bar/voyager.txt[?25h[?0c[?25l[?1c-- INSERT --Voyager 1[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"foo/x/bar/voyager.txt" [New] 1L, 10C written   [?25h[?0c[?25l[?1c:[?25h[?0ce foo/y/bar/voyager.txt
[?25l[?1c"foo/y/bar/voyager.txt" [New File]y[?25h[?0c[?25l[?1c-- INSERT --Voyager 2[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"foo/y/bar/voyager.txt" [New] 1L, 10C written   [?25h[?0c[?25l[?1c:[?25h[?0cexec "set path=" . cwd . "/Xfind/**"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1cx/bar/voyager.txt[?5h[?5l[?25h[?0c
[?25l[?1c"foo/x/bar/voyager.txt" 1L, 10C1x[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1cx/bar/voyager.txt[?5h[?5l[?25h[?0c...[?25l[?1cy[?25h[?0c
[?25l[?1c"foo/y/bar/voyager.txt" 1L, 10C2y[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" When current directory is .../foo/y/bar they should be shortened to (in
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" order of appearance):
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    ./voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    x/bar/voyager.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd foo
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/fooy/bar/voyager.txt    [?25h[?0c[?25l[?1c:[?25h[?0ccd y
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/ybar/voyager.txt  [?25h[?0c[?25l[?1c:[?25h[?0ccd bar
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/y/barvoyager.txt    [?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1c./voyager.txt[?5h[?5l[?25h[?0c
[?25l[?1c"voyager.txt" 1L, 10C[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >> " . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1c./voyager.txt[?5h[?5l[?25h[?0c...[?25l[?1cx/bar/voyager.txt[?25h[?0c
[?25l[?1c<ild/vim-wblUMy/vim-7.4.963/src/vim-basic/testdir/Xfind/foo/x/bar/voyager.txt"
<-wblUMy/vim-7.4.963/src/vim-basic/testdir/Xfind/foo/x/bar/voyager.txt" 1L, 10C1/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/x/bar/voyager.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >> " . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Check the opposite too:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/y[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foox/bar/voyager.txt                                                              [?25h[?0c[?25l[?1c:[?25h[?0ccd x
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/xbar/voyager.txt  [?25h[?0c[?25l[?1c:[?25h[?0ccd bar
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/x/barvoyager.txt    [?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1c./voyager.txt[?5h[?5l[?25h[?0c
[?25l[?1c"voyager.txt" 1L, 10C[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >> " . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0cfind voyager...[?25l[?1c./voyager.txt[?5h[?5l[?25h[?0c...[?25l[?1cy/bar/voyager.txt[?25h[?0c
[?25l[?1c<ild/vim-wblUMy/vim-7.4.963/src/vim-basic/testdir/Xfind/foo/y/bar/voyager.txt"
<-wblUMy/vim-7.4.963/src/vim-basic/testdir/Xfind/foo/y/bar/voyager.txt" 1L, 10C2/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/foo/y/bar/voyager.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >> " . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 10C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Check for correct handling of shorten_fname()'s behavior on windows
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexec "cd " . cwd . "/Xfind/in"
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfind/in[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1c./file.txt[?5h[?5l[?25h[?0c
[?25l[?1c"file.txt" 1L, 12CJimmy Hoffafile.txt                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Test for relative to current buffer 'path' item
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexec "cd " . cwd . "/Xfind/"
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir/Xfindin/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cset path=./path
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Open the file where Jimmy Hoffa is found
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce in/file.txt
[?25l[?1c"in/file.txt" 1L, 12C[?25h[?0c[?25l[?1c:[?25h[?0c" Find the file containing 'E.T.' in the Xfind/in/path directory
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind file...[?25l[?1ctxt[?25h[?0c
[?25l[?1c"in/path/file.txt" 1L, 5CE.T.path/file.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 5C appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test that completion works when path=.,,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset path=.,,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Open Jimmy Hoffa file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce in/file.txt
[?25l[?1c"in/file.txt" 1L, 12CJimmy Hoffafile.txt     [?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 12C appended[?25h[?0c[?25l[?1c:[?25h[?0c" Search for the file containing Holy Grail in same directory as in/path.txt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfind stu...[?25l[?1cff.txt[?25h[?0c
[?25l[?1c"in/stuff.txt" 1L, 19CAnother Holy Grailstuff.txt[?25h[?0c[?25l[?1c:[?25h[?0cexec "w >>" . test_out
[?25l[?1c"/«PKGBUILDDIR»/src/vim-basic/testdir/test.out" 1L, 19C appended[?25h[?0c[?25l[?1c:[?25h[?0cq
[?25l[?1c:exec "cd " . cwd . "/Xfind/"
:set path=./path:" Open the file where Jimmy Hoffa is found:e in/file.txt:" Find the file containing 'E.T.' in the Xfind/in/path directory:find file      :exec "w >>" . test_out:":" Test that completion works when path=.,,:":set path=.,,:" Open Jimmy Hoffa file in/file.txtexec "w >>" . test_out" Search for the file containing Holy Grail in same directory as in/path.txt
:find stu       exec "w >>" . test_out
:qexec "cd " . cwdcall DeleteDirectory("Xfind")
:qa!ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cexec "cd " . cwd
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir[?25h[?0c[?25l[?1c:[?25h[?0ccall DeleteDirectory("Xfind")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test74.failed test.ok test.out X* viminfo
cp test74.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test74.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test74.in" 36 lines, 822 characters" Tests for storing global variables in the .viminfo file vim: set ft=vim:

STARTTEST
:so small.vim
:" Do all test in a separate window to avoid E211 when we recursively
:" delete the Xfind directory during cleanup
:"
:" This will cause a few errors, do it silently.
:set visualbell
:set nocp viminfo+=!,nviminfo
:let MY_GLOBAL_DICT={'foo': 1, 'bar': 0, 'longvarible': 1000}
:" store a really long list, so line wrapping will occur in viminfo file
:let MY_GLOBAL_LIST=range(1,100)
:wv! Xviminfo
:unlet MY_GLOBAL_DICT
:unlet MY_GLOBAL_LIST
:rv! Xviminfo
:call delete('Xviminfo')
:if exists("MY_GLOBAL_DICT")
:redir >> test.out
:echo MY_GLOBAL_DICT
:redir end
:endif[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c" Tests for storing global variables in the .viminfo file vim: set ft=vim:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 30 lines, 723 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:if exists("MY_GLOBAL_LIST")
:redir >> test.out
:echo MY_GLOBAL_LIST
:redir end
:endif
:redir >> test.out
:echo "foobar"
:redir end
:endif
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Do all test in a separate window to avoid E211 when we recursively
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" delete the Xfind directory during cleanup
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" This will cause a few errors, do it silently.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset visualbell
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=!,nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet MY_GLOBAL_DICT={'foo': 1, 'bar': 0, 'longvarible': 1000}
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" store a really long list, so line wrapping will occur in viminfo file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet MY_GLOBAL_LIST=range(1,100)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwv! Xviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet MY_GLOBAL_DICT
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet MY_GLOBAL_LIST
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0crv! Xviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall delete('Xviminfo')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif exists("MY_GLOBAL_DICT")
[?25l[?1c
:  [?25h[?0c:redir >> test.out

[?25l[?1c:  [?25h[?0c:echo MY_GLOBAL_DICT

[?25l[?1c{'foo': 1, 'longvarible': 1000, 'bar': 0}

:  [?25h[?0c:redir end

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let MY_GLOBAL_LIST=range(1,100)
:wv! Xviminfo
:unlet MY_GLOBAL_DICT
:unlet MY_GLOBAL_LIST
:rv! Xviminfo[?25h[?0c[?25l[?1c
:[?25h[?0cif exists("MY_GLOBAL_LIST")
[?25l[?1c
:  [?25h[?0c:redir >> test.out

[?25l[?1c:  [?25h[?0c:echo MY_GLOBAL_LIST

[?25l[?1c[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,

23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,

43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,

63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,

83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]

:  [?25h[?0c:redir end

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let MY_GLOBAL_LIST=range(1,100)
:wv! Xviminfo
:unlet MY_GLOBAL_DICT
:unlet MY_GLOBAL_LIST
:rv! Xviminfo
:call delete('Xviminfo')
:if exists("MY_GLOBAL_DICT")
:redir >> test.out
:echo MY_GLOBAL_DICT[?25h[?0c[?25l[?1c
:[?25h[?0credir >> test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cecho "foobar"
[?25l[?1cfoobar[?25h[?0c[?25l[?1c:[?25h[?0credir end
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cendif
[?25l[?1cE580: :endif without :if[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test75.failed test.ok test.out X* viminfo
cp test75.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test75.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test75.in" 41 lines, 1000 charactersTests for maparg().
Also test utf8 map with a 0x80 byte.

STARTTEST
:so small.vim
:so mbyte.vim
:set cpo-=<
:set encoding=utf8
:" Test maparg() with a string result
:map foo<C-V> is<F4>foo
:vnoremap <script> <buffer> <expr> <silent> bar isbar
:call append('$', maparg('foo<C-V>'))
:call append('$', string(maparg('foo<C-V>', '', 0, 1)))
:call append('$', string(maparg('bar', '', 0, 1)))
:map <buffer> <nowait> foo bar
:call append('$', string(maparg('foo', '', 0, 1)))
:"
:map abc x<char-114>x
:call append('$', maparg('abc'))
:map abc y<S-char-114>y
:call append('$', maparg('abc'))
:"
Go^[:"[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for maparg().[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 34 lines, 919 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:" Outside of the range, minimum
:inoremap <Char-0x1040> a
:execute "normal a\u1040\<Esc>"
:" Inside of the range, minimum
:inoremap <Char-0x103f> b
:execute "normal a\u103f\<Esc>"
:" Inside of the range, maximum
:inoremap <Char-0xf03f> c
:execute "normal a\uf03f\<Esc>"
:" Outside of the range, maximum
:inoremap <Char-0xf040> d
:execute "normal a\uf040\<Esc>"
:"
:/^eof/+1,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf8
[?25l[?1c:map abc x<char-114>x
:call append('$', maparg('abc'))
:map abc y<S-char-114>y
:call append('$', maparg('abc'))
:"
Go^[:"
:" Outside of the range, minimum
:inoremap <Char-0x1040> a
:execute "normal a\u1040\<Esc>"
:" Inside of the range, minimum
:inoremap <Char-0x103f> b
:execute "normal a\u103f\<Esc>"
:" Inside of the range, maximum
:inoremap <Char-0xf03f> c
:execute "normal a\uf03f\<Esc>"
:" Outside of the range, maximum
:inoremap <Char-0xf040> d
:execute "normal a\uf040\<Esc>"
:"
:/^eof/+1,$w! test.out
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test maparg() with a string result
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap foo<C-V> is<F4>foo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvnoremap <script> <buffer> <expr> <silent> bar isbar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', maparg('foo<C-V>'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', string(maparg('foo<C-V>', '', 0, 1)))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', string(maparg('bar', '', 0, 1)))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap <buffer> <nowait> foo bar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', string(maparg('foo', '', 0, 1)))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap abc x<char-114>x
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', maparg('abc'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap abc y<S-char-114>y
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', maparg('abc'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1ceof
is<F4>foo
{'silent': 0, 'noremap': 0, 'lhs': 'foo<C-V>', 'mode': ' ', 'nowait': 0, 'expr':0, 'sid': 0, 'rhs': 'is<F4>foo', 'buffer': 0}
{'silent': 1, 'noremap': 1, 'lhs': 'bar', 'mode': 'v', 'nowait': 0, 'expr': 1, 'sid': 0, 'rhs': 'isbar', 'buffer': 1}
{'silent': 0, 'noremap': 0, 'lhs': 'foo', 'mode': ' ', 'nowait': 1, 'expr': 0, 'sid': 0, 'rhs': 'bar', 'buffer': 1}
xrx
yRy[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Outside of the range, minimum
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <Char-0x1040> a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexecute "normal a\u1040\<Esc>"
[?25l[?1ca[?25h[?0c[?25l[?1c:[?25h[?0c" Inside of the range, minimum
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <Char-0x103f> b
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexecute "normal a\u103f\<Esc>"
[?25l[?1cb[?25h[?0c[?25l[?1c:[?25h[?0c" Inside of the range, maximum
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <Char-0xf03f> c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexecute "normal a\uf03f\<Esc>"
[?25l[?1cc[?25h[?0c[?25l[?1c:[?25h[?0c" Outside of the range, maximum
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <Char-0xf040> d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexecute "normal a\uf040\<Esc>"
[?25l[?1cd[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^eof/+1,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 7 lines, 384 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test76.failed test.ok test.out X* viminfo
cp test76.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test76.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test76.in" 46 lines, 899 charactersTests for completefunc/omnifunc. vim: set ft=vim :

STARTTEST
:"Test that nothing happens if the 'completefunc' opens
:"a new window (no completion, no crash)
:so small.vim
:function! DummyCompleteOne(findstart, base)
:  if a:findstart
:    return 0
:  else
:    wincmd n
:    return ['onedef', 'oneDEF']
:  endif
:endfunction
:setlocal completefunc=DummyCompleteOne
/^one
A^X^U^N^[:q!
:function! DummyCompleteTwo(findstart, base)
:  if a:findstart
:    wincmd n
:    return 0
:  else
:    return ['twodef', 'twoDEF'][?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for completefunc/omnifunc. vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 37 lines, 810 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:  endif
:endfunction
:setlocal completefunc=DummyCompleteTwo
/^two
A^X^U^N^[:q!
:"Test that 'completefunc' works when it's OK.
:function! DummyCompleteThree(findstart, base)
:  if a:findstart
:    return 0
:  else
:    return ['threedef', 'threeDEF']
:  endif
:endfunction
:setlocal completefunc=DummyCompleteThree
/^three
A^X^U^N^[:/^+++/,/^three/w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c"Test that nothing happens if the 'completefunc' opens
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"a new window (no completion, no crash)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! DummyCompleteOne(findstart, base)
[?25l[?1c
:  [?25h[?0c:  if a:findstart

[?25l[?1c:    [?25h[?0c:    return 0

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    wincmd n

[?25l[?1c:    [?25h[?0c:    return ['onedef', 'oneDEF']

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:    wincmd n
:    return 0
:  else
:    return ['twodef', 'twoDEF']
:  endif
:endfunction
:setlocal completefunc=DummyCompleteTwo[?25h[?0c[?25l[?1c
:[?25h[?0csetlocal completefunc=DummyCompleteOne
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^one
[?25l[?1c+++
one[?25h[?0c[?25l[?1c
E839: Completion function changed window

Pattern not found

Press ENTER or type command to continue[?25h[?0c[?25l[?1cPress ENTER or type command to continue[?25h[?0c[?25l[?1cone
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name] [+]                                                                   endifendfunction
:setlocal completefunc=DummyCompleteThree
/^threeA^X^U^N^[:/^+++/,/^three/w! test.out
:qa!ENDTEST+++test76.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c:  else
:    return ['twodef', 'twoDEF']:  endif:endfunction:setlocal completefunc=DummyCompleteTwo/^twoA^X^U^N^[:q!:"Test that 'completefunc' works when it's OK.:function! DummyCompleteThree(findstart, base):  if a:findstart:    return 0:  else  return ['threedef', 'threeDEF']
:  endifendfunction:setlocal completefunc=DummyCompleteThree
/^threeA^X^U^N^[:/^+++/,/^three/w! test.out
:qa!ENDTEST+++[?25h[?0c[?25l[?1c:[?25h[?0cfunction! DummyCompleteTwo(findstart, base)
[?25l[?1c
:  [?25h[?0c:  if a:findstart

[?25l[?1c:    [?25h[?0c:    wincmd n

[?25l[?1c:    [?25h[?0c:    return 0

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    return ['twodef', 'twoDEF']

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:  else
:    return ['twodef', 'twoDEF']
:  endif
:endfunction
:setlocal completefunc=DummyCompleteTwo
/^two
A^X^U^N^[:q![?25h[?0c[?25l[?1c
:[?25h[?0csetlocal completefunc=DummyCompleteTwo
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^two
[?25l[?1c
two[?25h[?0c[?25l[?1c
E839: Completion function changed window

E764: Option 'completefunc' is not set

Press ENTER or type command to continue[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       endfunction
:setlocal completefunc=DummyCompleteThree
/^threeA^X^U^N^[:/^+++/,/^three/w! test.out
:qa!ENDTEST+++two
test76.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c:    return ['twodef', 'twoDEF']
:  endif:endfunction:setlocal completefunc=DummyCompleteTwo/^twoA^X^U^N^[:q!:"Test that 'completefunc' works when it's OK.:function! DummyCompleteThree(findstart, base):  if a:findstart:    return 0:  else:    return ['threedef', 'threeDEF']  endifendfunction:setlocal completefunc=DummyCompleteThree
/^threeA^X^U^N^[:/^+++/,/^three/w! test.out
:qa!ENDTEST+++two[?25h[?0c[?25l[?1c:[?25h[?0c"Test that 'completefunc' works when it's OK.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! DummyCompleteThree(findstart, base)
[?25l[?1c
:  [?25h[?0c:  if a:findstart

[?25l[?1c:    [?25h[?0c:    return 0

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    return ['threedef', 'threeDEF']

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:    return ['twodef', 'twoDEF']
:  endif
:endfunction
:setlocal completefunc=DummyCompleteTwo
/^two
A^X^U^N^[:q![?25h[?0c[?25l[?1c
:[?25h[?0csetlocal completefunc=DummyCompleteThree
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^three
[?25l[?1c
three[?25h[?0c[?25l[?1c
match 1 of 2defthreedef       
threeDEF       DEF2threedef       
threeDEF       two[?25h[?0c[?25l[?1c
:[?25h[?0c/^+++/,/^three/w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 4 lines, 18 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test77.failed test.ok test.out X* viminfo
cp test77.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test77.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test77.in" 30 lines, 719 charactersInserts 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.

STARTTEST
:so small.vim
:if !executable("cksum")
: 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 | endwhileggdd
:w! Xtest[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cInserts 2 million lines with consecutive integers starting from 1[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 288 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:r !cksum Xtest
:s/\s/ /g
:set fileformat&
:.w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !executable("cksum")
[?25l[?1c
:  [?25h[?0c: e! test.ok

[?25l[?1c:  [?25h[?0c: w! test.out

[?25l[?1c:  [?25h[?0c: qa!

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1ccksum is part of POSIX and so should be available on most Unixes.
If it isn't available then the test will be skipped.

STARTTEST[?25h[?0c[?25l[?1c
:[?25h[?0cset fileformat=unix undolevels=-1
[?25l[?1c[?25h[?0c[?25l[?1cInserts 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.[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0clet i = 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwhile i <= 2000000 | call append(i, range(i, i + 99)) | let i += 100 | endwhil

e[?25l[?1c12345678910111213141516171819202122[?25h[?0c[?25l[?1c
23[?25h[?0c
[?25l[?1c:[?25h[?0cw! Xtest
[?25l[?1c"Xtest" [New File] 2000000 lines, 14888896 characters written[?25h[?0c[?25l[?1c:[?25h[?0cr !cksum Xtest
[?25l[?1c[?25h[?0c[?25l[?1c1
2
3678979763 14888896 Xtest
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22[?25h[?0c[?25l[?1c:[?25h[?0cs/\s/ /g
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformat&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.w! test.out
[?25l[?1c"test.out" [New File] 1 line, 26 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test78.failed test.ok test.out X* viminfo
cp test78.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test78.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test78.in" 46 lines, 1464 charactersInserts 10000 lines with text to fill the swap file with two levels of pointer
blocks.  Then recovers from the swap file and checks all text is restored.

We need about 10000 lines of 100 characters to get two levels of pointer
blocks.

STARTTEST
:so small.vim
:set nocp fileformat=unix undolevels=-1 viminfo+=nviminfo
:e! Xtest
ggdG
:let text = "\tabcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789"
:let i = 1
:let linecount = 10000
:while i <= linecount | call append(i - 1, i . text) | let i += 1 | endwhile
:preserve
:" get the name of the swap file
:redir => swapname
:swapname
:redir END
:let swapname = substitute(swapname, '[[:blank:][:cntrl:]]*\(.\{-}\)[[:blank:][:cntrl:]]*$', '\1', '')[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cInserts 10000 lines with text to fill the swap file with two levels of pointer[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 37 lines, 1208 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set nobin
:new
:only!
:bwipe! Xtest
:call rename('Xswap', swapname)
:recover Xtest
:call delete(swapname)
:new
:call append(0, 'recovery start')
:wincmd w
:let linedollar = line('$')
:if linedollar < linecount | exe 'wincmd w' | call append(line('$'), "expected ". linecount . " lines but found only " . linedollar) | exe 'wincmd w' | let linecount = linedollar | endif
:let i = 1
:while i <= linecount | if getline(i) != i . text | exe 'wincmd w' | call append(line('$'), i . ' differs') | exe 'wincmd w' | endif | let i += 1 | endwhile
:q!
:call append(line('$'), 'recovery end')
:w! test.out
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp fileformat=unix undolevels=-1 viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! Xtest
[?25l[?1c"Xtest" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet text = "\tabcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ01

23456789abcdefghijklmnoparstuvwxyz0123456789"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet i = 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet linecount = 10000
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwhile i <= linecount | call append(i - 1, i . text) | let i += 1 | endwhile
[?25l[?1c9990    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899991    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899992    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899993    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899994    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899995    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899996    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899997    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899998    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899999    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz012345678910000   abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789[?25h[?0c[?25l[?1c:[?25h[?0cpreserve
[?25l[?1cFile preserved[?25h[?0c[?25l[?1c:[?25h[?0c" get the name of the swap file
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir => swapname
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cswapname
[?25l[?1c.Xtest.swp[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet swapname = substitute(swapname, '[[:blank:][:cntrl:]]*\(.\{-}\)[[:blank:][

:cntrl:]]*$', '\1', '')
[?25l[?1c9990    abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789[?25h[?0c[?25l[?1c

10000   abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789

~                                                                               Xtest [+]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cbwipe! Xtest
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall rename('Xswap', swapname)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0crecover Xtest
[?25l[?1cUsing swap file ".Xtest.swp"

Original file "/«PKGBUILDDIR»/src/vim-basic/testdir/Xtest"

"/«PKGBUILDDIR»/src/vim-basic/testdir/Xtest" [New File]Recovery completed. You should check if everything is OK.

(You might want to write out this file under another name

and run diff with the original file to check for changes)

You may want to delete the .swp file now.



Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall delete(swapname)
[?25l[?1c1abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789
2abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789
3abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789
4abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz0123456789
5       abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567896       abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567897       abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567898       abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz01234567899       abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz012345678910      abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz012345678911      abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnoparstuvwxyz012345678912      abcdefghijklmnoparstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       1

2

3

4 

5 

Xtest [+]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, 'recovery start')
[?25l[?1crecovery start[+][?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1c[No Name] [+]                                                                   Xtest [+]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet linedollar = line('$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif linedollar < linecount | exe 'wincmd w' | call append(line('$'), "expected 

" . linecount . " lines but found only " . linedollar) | exe 'wincmd w' | let li

necount = linedollar | endif
[?25l[?1crecovery start[?25h[?0c[?25l[?1c:[?25h[?0clet i = 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwhile i <= linecount | if getline(i) != i . text | exe 'wincmd w' | call appen

d(line('$'), i . ' differs') | exe 'wincmd w' | endif | let i += 1 | endwhile
[?25l[?1crecovery start[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), 'recovery end')
[?25l[?1crecovery end[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New] 3L, 29C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test79.failed test.ok test.out X* viminfo
cp test79.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test79.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test79.in" 255 lines, 3381 charactersTest for *sub-replace-special* and *sub-replace-expression* on :substitute.
Test for submatch() on :substitue.
Test for *:s%* on :substitute.
Test for :s replacing \n with  line break.

STARTTEST
:so small.vim
ENDTEST

Results of test71:

STARTTEST
:set magic
:set cpo&
/^TEST/
j:s/A/&&/
j:s/B/\&/
j:s/C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\0\9\8\7\6\5\4\3\2\1/
j:s/D/d/
j:s/E/~/
j:s/F/\~/
j:s/G/\ugg/
j:s/H/\Uh\Eh/[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for *sub-replace-special* and *sub-replace-expression* on :substitute.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1 line, 14 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 25 lines, 347 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTj:s/L/^V^M/
j:s/M/\r/
j:s/N/\^V^M/
j:s/O/\n/
j:s/P/\b/
j:s/Q/\t/
j:s/R/\\/
j:s/S/\c/
j:s/T/^V^@/
j:s/U/\L\uuUu\l\EU/
j:s/V/\U\lVvV\u\Ev/
ENDTEST

TEST_1:
A
B
C123456789
D
E
F
G
H
I[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/A/&&/
[?25l[?1cA
[?25h[?0c
[?25l[?1c:[?25h[?0cs/B/\&/
[?25l[?1c&[?25h[?0c
[?25l[?1c:[?25h[?0cs/C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\0\9\8\7\6\5\4\3\2\1/
[?25l[?1c987654321
[?25h[?0c
[?25l[?1c:[?25h[?0cs/D/d/
[?25l[?1cd[?25h[?0c
[?25l[?1c:[?25h[?0cs/E/~/
[?25l[?1cd[?25h[?0c
[?25l[?1c:[?25h[?0cs/F/\~/
[?25l[?1c~[?25h[?0c
[?25l[?1c:[?25h[?0cs/G/\ugg/
[?25l[?1cg
[?25h[?0c
[?25l[?1c:[?25h[?0cs/H/\Uh\Eh/
[?25l[?1ch
[?25h[?0c
[?25l[?1c:[?25h[?0cs/I/\lII/
[?25l[?1ciI
[?25h[?0c[?25l[?1c
J[?25h[?0c[?25l[?1c
:[?25h[?0cs/J/\LJ\EJ/
[?25l[?1cjJ
[?25h[?0c[?25l[?1c
K[?25h[?0c[?25l[?1c
:[?25h[?0cs/K/\Uk\ek/
[?25l[?1ck
[?25h[?0c[?25l[?1c
lLl[?25h[?0c[?25l[?1c
:[?25h[?0cs/L/^^M/
[?25l[?1c
l[?25h[?0c[?25l[?1c
mMm
[?25h[?0c[?25l[?1c
:[?25h[?0cs/M/\r/
[?25l[?1c
m[?25h[?0c[?25l[?1c
nNn
[?25h[?0c[?25l[?1c
:[?25h[?0cs/N/\^^M/
[?25l[?1c^Mn
[?25h[?0c[?25l[?1c
oOo[?25h[?0c[?25l[?1c
:[?25h[?0cs/O/\n/
[?25l[?1c^@o
[?25h[?0c[?25l[?1c
pPp[?25h[?0c[?25l[?1c
:[?25h[?0cs/P/\b/
[?25l[?1c^Hp
[?25h[?0c[?25l[?1c
qQq[?25h[?0c[?25l[?1c
:[?25h[?0cs/Q/\t/
[?25l[?1c       q
[?25h[?0c[?25l[?1c
rRr[?25h[?0c[?25l[?1c
:[?25h[?0cs/R/\\/
[?25l[?1c\
[?25h[?0c[?25l[?1c
sSs[?25h[?0c[?25l[?1c
:[?25h[?0cs/S/\c/
[?25l[?1cc
[?25h[?0c[?25l[?1c
tTt[?25h[?0c[?25l[?1c
:[?25h[?0cs/T/^^@/
[?25l[?1c^@t
[?25h[?0c[?25l[?1c
U[?25h[?0c[?25l[?1c
:[?25h[?0cs/U/\L\uuUu\l\EU/
[?25l[?1cuuU
[?25h[?0c[?25l[?1c
V[?25h[?0c[?25l[?1c
:[?25h[?0cs/V/\U\lVvV\u\Ev/
[?25l[?1cvVVv
[?25h[?0c[?25l[?1c/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set nomagic
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 25 lines, 351 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTj:s/L/^V^M/
j:s/M/\r/
j:s/N/\^V^M/
j:s/O/\n/
j:s/P/\b/
j:s/Q/\t/
j:s/R/\\/
j:s/S/\c/
j:s/T/^V^@/
j:s/U/\L\uuUu\l\EU/
j:s/V/\U\lVvV\u\Ev/
ENDTEST

TEST_2:
A
B
C123456789
D
E
F
G
H
I[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset nomagic
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/A/&&/
[?25l[?1c&&
[?25h[?0c
[?25l[?1c:[?25h[?0cs/B/\&/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/\mC\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\0\9\8\7\6\5\4\3\2\1/
[?25l[?1c987654321
[?25h[?0c
[?25l[?1c:[?25h[?0cs/D/d/
[?25l[?1cd[?25h[?0c
[?25l[?1c:[?25h[?0cs/E/~/
[?25l[?1c~[?25h[?0c
[?25l[?1c:[?25h[?0cs/F/\~/
[?25l[?1c~[?25h[?0c
[?25l[?1c:[?25h[?0cs/G/\ugg/
[?25l[?1cg
[?25h[?0c
[?25l[?1c:[?25h[?0cs/H/\Uh\Eh/
[?25l[?1ch
[?25h[?0c
[?25l[?1c:[?25h[?0cs/I/\lII/
[?25l[?1ciI
[?25h[?0c[?25l[?1c
J[?25h[?0c[?25l[?1c
:[?25h[?0cs/J/\LJ\EJ/
[?25l[?1cjJ
[?25h[?0c[?25l[?1c
K[?25h[?0c[?25l[?1c
:[?25h[?0cs/K/\Uk\ek/
[?25l[?1ck
[?25h[?0c[?25l[?1c
lLl[?25h[?0c[?25l[?1c
:[?25h[?0cs/L/^^M/
[?25l[?1c
l[?25h[?0c[?25l[?1c
mMm
[?25h[?0c[?25l[?1c
:[?25h[?0cs/M/\r/
[?25l[?1c
m[?25h[?0c[?25l[?1c
nNn
[?25h[?0c[?25l[?1c
:[?25h[?0cs/N/\^^M/
[?25l[?1c^Mn
[?25h[?0c[?25l[?1c
oOo[?25h[?0c[?25l[?1c
:[?25h[?0cs/O/\n/
[?25l[?1c^@o
[?25h[?0c[?25l[?1c
pPp[?25h[?0c[?25l[?1c
:[?25h[?0cs/P/\b/
[?25l[?1c^Hp
[?25h[?0c[?25l[?1c
qQq[?25h[?0c[?25l[?1c
:[?25h[?0cs/Q/\t/
[?25l[?1c       q
[?25h[?0c[?25l[?1c
rRr[?25h[?0c[?25l[?1c
:[?25h[?0cs/R/\\/
[?25l[?1c\
[?25h[?0c[?25l[?1c
sSs[?25h[?0c[?25l[?1c
:[?25h[?0cs/S/\c/
[?25l[?1cc
[?25h[?0c[?25l[?1c
tTt[?25h[?0c[?25l[?1c
:[?25h[?0cs/T/^^@/
[?25l[?1c^@t
[?25h[?0c[?25l[?1c
U[?25h[?0c[?25l[?1c
:[?25h[?0cs/U/\L\uuUu\l\EU/
[?25l[?1cuuU
[?25h[?0c[?25l[?1c
V[?25h[?0c[?25l[?1c
:[?25h[?0cs/V/\U\lVvV\u\Ev/
[?25l[?1cvVVv
[?25h[?0c[?25l[?1c/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set magic&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 15 lines, 203 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTj:s/B/\='\\'/
j:s/C/\='^V^M'/
j:s/D/\='\^V^M'/
j:s/E/\='\\^V^M'/
j:s/F/\='\r'/
j:s/G/\='^V^@'/
j:s/H/\='\^V^@'/
j:s/I/\='\\^V^@'/
j:s/J/\='\n'/
j:s/K/\="\r"/
j:s/L/\="\n"/
ENDTEST

TEST_3:
aAa
bBb
cCc
dDd
eEe
fFf
gGg
hHh
iIi[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/A/\='\'/
[?25l[?1c\
[?25h[?0c
[?25l[?1c:[?25h[?0cs/B/\='\\'/
[?25l[?1c\\b
[?25h[?0c
[?25l[?1c:[?25h[?0cs/C/\='^^M'/
[?25l[?1cc[?25h[?0c
[?25l[?1c:[?25h[?0cs/D/\='\^^M'/
[?25l[?1c\d[?25h[?0c
[?25l[?1c


:[?25h[?0cs/E/\='\\^^M'/
[?25l[?1c\\
efFf[?25h[?0c
[?25l[?1c:[?25h[?0cs/F/\='\r'/
[?25l[?1c\rf
[?25h[?0c[?25l[?1c
gGg[?25h[?0c[?25l[?1c
:[?25h[?0cs/G/\='^^@'/
[?25l[?1c
g[?25h[?0c[?25l[?1c
hHh
[?25h[?0c[?25l[?1c
:[?25h[?0cs/H/\='\^^@'/
[?25l[?1c
\h[?25h[?0c[?25l[?1c
iIi
[?25h[?0c[?25l[?1c
:[?25h[?0cs/I/\='\\^^@'/
[?25l[?1c
\\
i[?25h[?0c[?25l[?1c
jJj
[?25h[?0c[?25l[?1c
:[?25h[?0cs/J/\='\n'/
[?25l[?1c\nj
[?25h[?0c[?25l[?1c
kKk[?25h[?0c[?25l[?1c
:[?25h[?0cs/K/\="\r"/
[?25l[?1c
k[?25h[?0c[?25l[?1c
lLl
[?25h[?0c[?25l[?1c
:[?25h[?0cs/L/\="\n"/
[?25l[?1c
l[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set magic&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 15 lines, 611 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTj:s/B/\=substitute(submatch(0), '.', '\\', '')/
j:s/C/\=substitute(submatch(0), '.', '^V^M', '')/
j:s/D/\=substitute(submatch(0), '.', '\^V^M', '')/
j:s/E/\=substitute(submatch(0), '.', '\\^V^M', '')/
j:s/F/\=substitute(submatch(0), '.', '\r', '')/
j:s/G/\=substitute(submatch(0), '.', '^V^@', '')/
j:s/H/\=substitute(submatch(0), '.', '\^V^@', '')/
j:s/I/\=substitute(submatch(0), '.', '\\^V^@', '')/
j:s/J/\=substitute(submatch(0), '.', '\n', '')/
j:s/K/\=substitute(submatch(0), '.', "\r", '')/
j:s/L/\=substitute(submatch(0), '.', "\n", '')/
ENDTEST

TEST_4:
aAa
bBb
cCc
dDd
eEe
fFf
gGg
hHh
iIi[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/A/\=substitute(submatch(0), '.', '\', '')/
[?25l[?1c\
[?25h[?0c
[?25l[?1c:[?25h[?0cs/B/\=substitute(submatch(0), '.', '\\', '')/
[?25l[?1c\
[?25h[?0c
[?25l[?1c:[?25h[?0cs/C/\=substitute(submatch(0), '.', '^^M', '')/
[?25l[?1cc[?25h[?0c
[?25l[?1c:[?25h[?0cs/D/\=substitute(submatch(0), '.', '\^^M', '')/
[?25l[?1cd[?25h[?0c
[?25l[?1c


:[?25h[?0cs/E/\=substitute(submatch(0), '.', '\\^^M', '')/
[?25l[?1c\efFf[?25h[?0c
[?25l[?1c:[?25h[?0cs/F/\=substitute(submatch(0), '.', '\r', '')/
[?25l[?1c
f[?25h[?0c[?25l[?1c
gGg
[?25h[?0c[?25l[?1c
:[?25h[?0cs/G/\=substitute(submatch(0), '.', '^^@', '')/
[?25l[?1c
g[?25h[?0c[?25l[?1c
hHh
[?25h[?0c[?25l[?1c
:[?25h[?0cs/H/\=substitute(submatch(0), '.', '\^^@', '')/
[?25l[?1c
h[?25h[?0c[?25l[?1c
iIi
[?25h[?0c[?25l[?1c
:[?25h[?0cs/I/\=substitute(submatch(0), '.', '\\^^@', '')/
[?25l[?1c
\i[?25h[?0c[?25l[?1c
jJj
[?25h[?0c[?25l[?1c
:[?25h[?0cs/J/\=substitute(submatch(0), '.', '\n', '')/
[?25l[?1c
j[?25h[?0c[?25l[?1c
kKk
[?25h[?0c[?25l[?1c
:[?25h[?0cs/K/\=substitute(submatch(0), '.', "\r", '')/
[?25l[?1c
k[?25h[?0c[?25l[?1c
lLl
[?25h[?0c[?25l[?1c
:[?25h[?0cs/L/\=substitute(submatch(0), '.', "\n", '')/
[?25l[?1c
l[?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set magic&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 5 lines, 445 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set cpo&
/^TEST/
j:s/A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\=submatch(0) . submatch(9) .submatch(8) . submatch(7) . submatch(6) . submatch(5) . submatch(4) . submatch(3) . submatch(2) . submatch(1)/
j:s/B\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\=string([submatch(0, 1), submatch(9, 1), submatch(8, 1), submatch(7, 1), submatch(6, 1), submatch(5, 1), submatch(4, 1), submatch(3, 1), submatch(2, 1), submatch(1, 1)])/
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1c
TEST_5:[?25h[?0c[?25l[?1c
A123456789
[?25h[?0c[?25l[?1c
:[?25h[?0cs/A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\=submatch(0) . submatch(9) .

submatch(8) . submatch(7) . submatch(6) . submatch(5) . submatch(4) . submatch(

3) . submatch(2) . submatch(1)/
[?25l[?1ci\
i987654321[?25h[?0c[?25l[?1c
B123456789
[?25h[?0c[?25l[?1c
:[?25h[?0cs/B\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)/\=string([submatch(0, 1), sub

match(9, 1), submatch(8, 1), submatch(7, 1), submatch(6, 1), submatch(5, 1), sub

match(4, 1), submatch(3, 1), submatch(2, 1), submatch(1, 1)])/
[?25l[?1ci
j[['B123456789'], ['9'], ['8'], ['7'], ['6'], ['5'], ['4'], ['3'], ['2'], ['1']][?25h[?0c[?25l[?1c
/^STARTTEST
STARTTEST[?25h[?0c[?25l[?1c
:set magic&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 8 lines, 80 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST/^TEST/
:set cpo+=/
j:s/A/a/
j:s/B/%/
:set cpo-=/
j:s/C/c/
j:s/D/%/
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST/
[?25l[?1cTEST_6:
A
B[?25h[?0c[?25l[?1c


:[?25h[?0cset cpo+=/
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cs/A/a/
[?25l[?1ca[?25h[?0c
[?25l[?1c:[?25h[?0cs/B/%/
[?25l[?1ca[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=/
[?25l[?1c[?25h[?0c[?25l[?1cC
D[?25h[?0c[?25l[?1c


:[?25h[?0cs/C/c/
[?25l[?1cc[?25h[?0c
[?25l[?1c:[?25h[?0cs/D/%/
[?25l[?1c%[?25h[?0c[?25l[?1c/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:set magic&
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 11 lines, 303 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST:set cpo&
/^TEST_7/
j:s/A./\=submatch(0)/
j:s/B./\=submatch(0)/
j:s/C./\=strtrans(string(submatch(0, 1)))/
j:s/D.\nD/\=strtrans(string(submatch(0, 1)))/
j:s/E\_.\{-}E/\=strtrans(string(submatch(0, 1)))/
/^Q$
:s/Q[^\n]Q/\=submatch(0)."foobar"/
:" Avoid :s error breaks dotest map on Windows.
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^TEST_7/
[?25l[?1c
TEST_7:[?25h[?0c[?25l[?1c
A^MA
[?25h[?0c[?25l[?1c
:[?25h[?0cs/A./\=submatch(0)/
[?25l[?1c
A[?25h[?0c[?25l[?1c
B^@B
[?25h[?0c[?25l[?1c
:[?25h[?0cs/B./\=submatch(0)/
[?25l[?1c
B[?25h[?0c[?25l[?1c
C^@C
[?25h[?0c[?25l[?1c
:[?25h[?0cs/C./\=strtrans(string(submatch(0, 1)))/
[?25l[?1c['C^@']C
[?25h[?0c[?25l[?1c
D^@[?25h[?0c[?25l[?1c
:[?25h[?0cs/D.\nD/\=strtrans(string(submatch(0, 1)))/
[?25l[?1c['D^@', 'D']
[?25h[?0c[?25l[?1c
E^@[?25h[?0c[?25l[?1c
:[?25h[?0cs/E\_.\{-}E/\=strtrans(string(submatch(0, 1)))/
[?25l[?1c['E^@', '^@', '^@', '^@', '^@E']
[?25h[?0c[?25l[?1c/[?25h[?0c^Q$
[?25l[?1c
Q[?25h[?0c[?25l[?1c
:[?25h[?0cs/Q[^\n]Q/\=submatch(0)."foobar"/
[?25l[?1cE486: Pattern not found: Q[^\n]Q[?25h[?0c[?25l[?1c:[?25h[?0c" Avoid :s error breaks dotest map on Windows.
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
Q

STARTTEST[?25h[?0c[?25l[?1c
:function! TitleString()
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 8 lines, 177 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTESTlet check = 'foo' =~ 'bar'
  return ""
endfunction
:set titlestring=%{TitleString()}
:/^test_one/s/.*/\="foo\nbar"/
:/^test_two/s/.*/\="foo\nbar"/c
y
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cfunction! TitleString()
[?25l[?1c
:  [?25h[?0c  let check = 'foo' =~ 'bar'

[?25l[?1c:  [?25h[?0c  return ""

[?25l[?1c:  [?25h[?0cendfunction
[?25l[?1cTEST_7:
A[?25h[?0c[?25l[?1c
:[?25h[?0cset titlestring=%{TitleString()}
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^test_one/s/.*/\="foo\nbar"/
[?25l[?1cfoo
bar[?25h[?0c[?25l[?1c
:[?25h[?0c/^test_two/s/.*/\="foo\nbar"/c
[?25l[?1c
test_tworeplace with \="foo\nbar" (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1c
foobar
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
/^STARTTEST

STARTTEST[?25h[?0c[?25l[?1c
:g/^STARTTEST/.,/^ENDTEST/d
[?25h[?0c[?25l[?1c
:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 3 lines, 72 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c
/ENDTEST[?25h[?0c[?25l[?1c
:1;/^Results/,$wq! test.out[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cg/^STARTTEST/.,/^ENDTEST/d
[?25l[?1c136 fewer linesaa
c
%TEST_7:AABB['C^@']C['D^@', 'D']
['E^@', '^@', '^@', '^@', '^@E']
Q
Qfoo
bar
foobar[?25h[?0c[?25l[?1c:[?25h[?0c1;/^Results/,$wq! test.out
[?25l[?1c"test.out" [New File] 134 lines, 574 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test80.failed test.ok test.out X* viminfo
cp test80.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test80.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test80.in" 201 lines, 6296 charactersTest for *sub-replace-special* and *sub-replace-expression* on substitue().
Test for submatch() on substitue().
Test for *:s%* on :substitute.

STARTTEST
:so small.vim
ENDTEST

TEST_1:

STARTTEST
:set magic
:set cpo&
:$put =\"\n\nTEST_1:\"
:$put =substitute('A', 'A', '&&', '')
:$put =substitute('B', 'B', '\&', '')
:$put =substitute('C123456789', 'C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\0\9\8\7\6\5\4\3\2\1', '')
:$put =substitute('D', 'D', 'd', '')
:$put =substitute('E', 'E', '~', '')
:$put =substitute('F', 'F', '\~', '')
:$put =substitute('G', 'G', '\ugg', '')
:$put =substitute('H', 'H', '\Uh\Eh', '')[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for *sub-replace-special* and *sub-replace-expression* on substitue().[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1 line, 14 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 29 lines, 1142 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =substitute('pPp', 'P', '\b', '')
:$put =substitute('qQq', 'Q', '\t', '')
:$put =substitute('rRr', 'R', '\\', '')
:$put =substitute('sSs', 'S', '\c', '')
:$put =substitute('uUu', 'U', \"\n\", '')
:$put =substitute('vVv', 'V', \"\b\", '')
:$put =substitute('wWw', 'W', \"\\\", '')
:$put =substitute('xXx', 'X', \"\r\", '')
:$put =substitute('Y', 'Y', '\L\uyYy\l\EY', '')
:$put =substitute('Z', 'Z', '\U\lZzZ\u\Ez', '')
/^TEST_2
ENDTEST

TEST_2:

STARTTEST
:set nomagic
:set cpo&
:$put =\"\n\nTEST_2:\"
:$put =substitute('A', 'A', '&&', '')
:$put =substitute('B', 'B', '\&', '')
:$put =substitute('C123456789', 'C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\0\9\8\7\6\5\4\3\2\1', '')[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_1:\"
[?25l[?1c3 more lines:set cpo&
:$put =\"\n\nTEST_10:\"
:let y = substitute('123', '\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\zs.', 'a', 'g')| $put =y
:let y = substitute('123', '.\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\ze', 'a', 'g')| $put =y
:let y = substitute('123', '\ze.', 'a', 'g')| $put =y
:let y = substitute('123', '.\ze', 'a', 'g')| $put =y
:let y = substitute('123', '1\|\ze', 'a', 'g')| $put =y
:let y = substitute('123', '1\zs\|[23]', 'a', 'g')      | $put =y
/^TEST_11
ENDTEST

TEST_11:

STARTTEST
:/^Results/,$wq! test.out
ENDTEST

Results of test72:


TEST_1:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('A', 'A', '&&', '')
[?25l[?1c
AA[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('B', 'B', '\&', '')
[?25l[?1c
&[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('C123456789', 'C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)

', '\0\9\8\7\6\5\4\3\2\1', '')
[?25l[?1c:let y = substitute('123', '\zs.', 'a', 'g')| $put =y.\zs\ze', 'a', 'g') .', 'a', 'g').\ze1\|\ze', 'a', 'g')zs\|[23]', 'a', 'g')
/^TEST_11ENDTESTTEST_11:STARTTEST
:/^Results/,$wq! test.out
ENDTESTResults of test72:TEST_1:
AA&C123456789987654321[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('D', 'D', 'd', '')
[?25l[?1c
d[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('E', 'E', '~', '')
[?25l[?1c
~[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('F', 'F', '\~', '')
[?25l[?1c
~[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('G', 'G', '\ugg', '')
[?25l[?1c
Gg[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('H', 'H', '\Uh\Eh', '')
[?25l[?1c
Hh[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('I', 'I', '\lII', '')
[?25l[?1c
iI[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('J', 'J', '\LJ\EJ', '')
[?25l[?1c
jJ[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('K', 'K', '\Uk\ek', '')
[?25l[?1c
Kk[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('lLl', 'L', '^^M', '')
[?25l[?1c
l^Ml[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('mMm', 'M', '\r', '')
[?25l[?1c
m^Mm[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('nNn', 'N', '\^^M', '')
[?25l[?1c
n^Mn[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('oOo', 'O', '\n', '')
[?25l[?1co
o[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('pPp', 'P', '\b', '')
[?25l[?1c
p^Hp[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('qQq', 'Q', '\t', '')
[?25l[?1c
qq[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('rRr', 'R', '\\', '')
[?25l[?1c
r\r[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('sSs', 'S', '\c', '')
[?25l[?1c
scs[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('uUu', 'U', \"\n\", '')
[?25l[?1cu
u[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('vVv', 'V', \"\b\", '')
[?25l[?1c
v^Hv[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('wWw', 'W', \"\\\", '')
[?25l[?1c
w\w[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('xXx', 'X', \"\r\", '')
[?25l[?1c
x^Mx[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('Y', 'Y', '\L\uyYy\l\EY', '')
[?25l[?1c
YyyY[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('Z', 'Z', '\U\lZzZ\u\Ez', '')
[?25l[?1c
zZZz[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_2
[?25l[?1csearch hit BOTTOM, continuing at TOP:$put =substitute('rRr', 'R', '\\', '')
:$put =substitute('sSs', 'S', '\c', '')
:$put =substitute('uUu', 'U', \"\n\", '')
:$put =substitute('vVv', 'V', \"\b\", '')
:$put =substitute('wWw', 'W', \"\\\", '')
:$put =substitute('xXx', 'X', \"\r\", '')
:$put =substitute('Y', 'Y', '\L\uyYy\l\EY', '')
:$put =substitute('Z', 'Z', '\U\lZzZ\u\Ez', '')
/^TEST_2
ENDTEST

TEST_2:

STARTTEST
:set nomagic
:set cpo&
:$put =\"\n\nTEST_2:\"
:$put =substitute('A', 'A', '&&', '')
:$put =substitute('B', 'B', '\&', '')
:$put =substitute('C123456789', 'C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\0\9\8\7\6\5\4\3\2\1', '')
:$put =substitute('D', 'D', 'd', '')
:$put =substitute('E', 'E', '~', '')
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 29 lines, 1144 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =substitute('pPp', 'P', '\b', '')
:$put =substitute('qQq', 'Q', '\t', '')
:$put =substitute('rRr', 'R', '\\', '')
:$put =substitute('sSs', 'S', '\c', '')
:$put =substitute('tTt', 'T', \"\r\", '')
:$put =substitute('uUu', 'U', \"\n\", '')
:$put =substitute('vVv', 'V', \"\b\", '')
:$put =substitute('wWw', 'W', \"\\\", '')
:$put =substitute('X', 'X', '\L\uxXx\l\EX', '')
:$put =substitute('Y', 'Y', '\U\lYyY\u\Ey', '')
/^TEST_3
ENDTEST

TEST_3:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_3:\"
:let y = substitute('aAa', 'A', '\="\\"', '')| $put =y
:let y = substitute('bBb', 'B', '\="\\\\"', '')| $put =y
:let y = substitute('cCc', 'C', '\="^V^M"', '')| $put =y
:let y = substitute('dDd', 'D', '\="\\^V^M"', '')| $put =y[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset nomagic
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_2:\"
[?25l[?1c3 more linesHh
iI
jJ
Kk
l^Ml
m^Mm
n^Mn
o
o
p^Hp
qq
r\r
scs
u
u
v^Hv
w\w
x^Mx
YyyY
zZZz


TEST_2:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('A', 'A', '&&', '')
[?25l[?1c
AA[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('B', 'B', '\&', '')
[?25l[?1c
&[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('C123456789', 'C\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)

', '\0\9\8\7\6\5\4\3\2\1', '')
[?25l[?1cKk
l^Ml
mm
nn
op^Hp
q       q
r\rscs
uv^Hv
w\wx^Mx
YyyY
zZZzTEST_2:
AA&C123456789987654321[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('D', 'D', 'd', '')
[?25l[?1c
d[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('E', 'E', '~', '')
[?25l[?1c
~[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('F', 'F', '\~', '')
[?25l[?1c
~[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('G', 'G', '\ugg', '')
[?25l[?1c
Gg[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('H', 'H', '\Uh\Eh', '')
[?25l[?1c
Hh[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('I', 'I', '\lII', '')
[?25l[?1c
iI[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('J', 'J', '\LJ\EJ', '')
[?25l[?1c
jJ[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('K', 'K', '\Uk\ek', '')
[?25l[?1c
Kk[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('lLl', 'L', '^^M', '')
[?25l[?1c
l^Ml[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('mMm', 'M', '\r', '')
[?25l[?1c
m^Mm[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('nNn', 'N', '\^^M', '')
[?25l[?1c
n^Mn[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('oOo', 'O', '\n', '')
[?25l[?1co
o[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('pPp', 'P', '\b', '')
[?25l[?1c
p^Hp[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('qQq', 'Q', '\t', '')
[?25l[?1c
qq[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('rRr', 'R', '\\', '')
[?25l[?1c
r\r[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('sSs', 'S', '\c', '')
[?25l[?1c
scs[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('tTt', 'T', \"\r\", '')
[?25l[?1c
t^Mt[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('uUu', 'U', \"\n\", '')
[?25l[?1cu
u[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('vVv', 'V', \"\b\", '')
[?25l[?1c
v^Hv[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('wWw', 'W', \"\\\", '')
[?25l[?1c
w\w[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('X', 'X', '\L\uxXx\l\EX', '')
[?25l[?1c
XxxX[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('Y', 'Y', '\U\lYyY\u\Ey', '')
[?25l[?1c
yYYy[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_3
[?25l[?1csearch hit BOTTOM, continuing at TOP:$put =substitute('rRr', 'R', '\\', '')
:$put =substitute('sSs', 'S', '\c', '')
:$put =substitute('tTt', 'T', \"\r\", '')
:$put =substitute('uUu', 'U', \"\n\", '')
:$put =substitute('vVv', 'V', \"\b\", '')
:$put =substitute('wWw', 'W', \"\\\", '')
:$put =substitute('X', 'X', '\L\uxXx\l\EX', '')
:$put =substitute('Y', 'Y', '\U\lYyY\u\Ey', '')
/^TEST_3
ENDTEST

TEST_3:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_3:\"
:let y = substitute('aAa', 'A', '\="\\"', '')| $put =y
:let y = substitute('bBb', 'B', '\="\\\\"', '')| $put =y
:let y = substitute('cCc', 'C', '\="^V^M"', '')| $put =y
:let y = substitute('dDd', 'D', '\="\\^V^M"', '')| $put =y
:let y = substitute('eEe', 'E', '\="\\\\^V^M"', '')     | $put =y
:let y = substitute('fFf', 'F', '\="\\r"', '')| $put =y
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 13 lines, 642 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let y = substitute('jJj', 'J', '\="\\n"', '')| $put =y
:let y = substitute('kKk', 'K', '\="\r"', '')| $put =y
:let y = substitute('lLl', 'L', '\="\n"', '')| $put =y
/^TEST_4
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_3:\"
[?25l[?1c3 more linesHh
iI
jJ
Kk
l^Ml
m^Mm
n^Mn
o
o
p^Hp
qq
r\r
scs
t^Mt
u
u
v^Hv
w\w
XxxX
yYYy


TEST_3:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet y = substitute('aAa', 'A', '\="\\"', '')           | $put =y
[?25l[?1c
a\a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('bBb', 'B', '\="\\\\"', '')         | $put =y
[?25l[?1c
b\\b[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('cCc', 'C', '\="^^M"', '')         | $put =y
[?25l[?1c
c^Mc[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('dDd', 'D', '\="\\^^M"', '')       | $put =y
[?25l[?1c
d\^Md[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('eEe', 'E', '\="\\\\^^M"', '')     | $put =y
[?25l[?1c
e\\^Me[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('fFf', 'F', '\="\\r"', '')          | $put =y
[?25l[?1c
f\rf[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('jJj', 'J', '\="\\n"', '')          | $put =y
[?25l[?1c
j\nj[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('kKk', 'K', '\="\r"', '')           | $put =y
[?25l[?1c
k^Mk[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('lLl', 'L', '\="\n"', '')           | $put =y
[?25l[?1cl
l[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_4
[?25l[?1csearch hit BOTTOM, continuing at TOP:let y = substitute('bBb', 'B', '\="\\\\"', '')| $put =y
:let y = substitute('cCc', 'C', '\="^V^M"', '')| $put =y
:let y = substitute('dDd', 'D', '\="\\^V^M"', '')| $put =y
:let y = substitute('eEe', 'E', '\="\\\\^V^M"', '')     | $put =y
:let y = substitute('fFf', 'F', '\="\\r"', '')| $put =y
:let y = substitute('jJj', 'J', '\="\\n"', '')| $put =y
:let y = substitute('kKk', 'K', '\="\r"', '')| $put =y
:let y = substitute('lLl', 'L', '\="\n"', '')| $put =y
/^TEST_4
ENDTEST

TEST_4:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_4:\"
:let y = substitute('aAa', 'A', '\=substitute(submatch(0), ".", "\\", "")', '')| $put =y
:let y = substitute('bBb', 'B', '\=substitute(submatch(0), ".", "\\\\", "")', '')     | $put =y
:let y = substitute('cCc', 'C', '\=substitute(submatch(0), ".", "^V^M", "")', '')     | $put =y
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 13 lines, 912 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let y = substitute('dDd', 'D', '\=substitute(submatch(0), ".", "\\^V^M", "")',
'')   | $put =y
:let y = substitute('eEe', 'E', '\=substitute(submatch(0), ".", "\\\\^V^M", "")', '') | $put =y
:let y = substitute('fFf', 'F', '\=substitute(submatch(0), ".", "\\r", "")', '')| $put =y
:let y = substitute('jJj', 'J', '\=substitute(submatch(0), ".", "\\n", "")', '')| $put =y
:let y = substitute('kKk', 'K', '\=substitute(submatch(0), ".", "\r", "")', '')| $put =y
:let y = substitute('lLl', 'L', '\=substitute(submatch(0), ".", "\n", "")', '')| $put =y
/^TEST_5
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_4:\"
[?25l[?1c3 more linest^Mt
u
u
v^Hv
w\w
XxxX
yYYy


TEST_3:
a\a
b\\b
c^Mc
d\^Md
e\\^Me
f\rf
j\nj
k^Mk
l
l


TEST_4:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet y = substitute('aAa', 'A', '\=substitute(submatch(0), ".", "\\", "")', '')

      | $put =y
[?25l[?1cu

v^Hv
w\wXxxX
yYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('bBb', 'B', '\=substitute(submatch(0), ".", "\\\\", "")', '

')     | $put =y
[?25l[?1cu
v^Hv
w\wXxxX
yYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('cCc', 'C', '\=substitute(submatch(0), ".", "^^M", "")', '')

    | $put =y
[?25l[?1cv^Hv
w\wXxxX
yYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('dDd', 'D', '\=substitute(submatch(0), ".", "\\^^M", "")', '

')   | $put =y
[?25l[?1cw\w
XxxX
yYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('eEe', 'E', '\=substitute(submatch(0), ".", "\\\\^^M", "")',

'') | $put =y
[?25l[?1cXxxX
yYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd
e\^Me[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('fFf', 'F', '\=substitute(submatch(0), ".", "\\r", "")', ''

)      | $put =y
[?25l[?1cyYYyTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd
e\^Me
f^Mf[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('jJj', 'J', '\=substitute(submatch(0), ".", "\\n", "")', ''

)      | $put =y
[?25l[?1cTEST_3:
a\a
b\\bc^Mc
d\^Md
e\\^Me
f\rfj\njk^Mk
llTEST_4:
a\a
b\bc^Mc
d^Md
e\^Me
ff
jj[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('kKk', 'K', '\=substitute(submatch(0), ".", "\r", "")', '')

      | $put =y
[?25l[?1cTEST_3:
a\ab\\b
c^Mc
d\^Md
e\\^Me
f\rfj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd
e\^Me
f^Mfjk^Mk[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('lLl', 'L', '\=substitute(submatch(0), ".", "\n", "")', '')

      | $put =y
[?25l[?1cb\\b
c^Mc
d\^Md
e\\^Me
f\rfj\njk^Mk
llTEST_4:
a\a
b\bc^Mc
d^Md
e\^Me
ff
jjk^Mk
l
l[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_5
[?25l[?1csearch hit BOTTOM, continuing at TOP:let y = substitute('jJj', 'J', '\=substitute(submatch(0), ".", "\\n", "")', '')| $put =y
:let y = substitute('kKk', 'K', '\=substitute(submatch(0), ".", "\r", "")', '')| $put =y
:let y = substitute('lLl', 'L', '\=substitute(submatch(0), ".", "\n", "")', '')| $put =y
/^TEST_5
ENDTEST

TEST_5:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_5:\"
:$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\=submatch(0) . submatch(9) . submatch(8) . submatch(7) . submatch(6) . submatch(5) . submatch(4) . submatch(3) . submatch(2) . submatch(1)', '')
:$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\=string([submatch(0, 1), submatch(9, 1), submatch(8, 1), submatch(7, 1), submatch(6, 1), submatch(5, 1), submatch(4, 1), submatch(3, 1), submatch(2, 1), submatch(1, 1)])', '')
/^TEST_6
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 6 lines, 543 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTENDTEST[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_5:\"
[?25l[?1c3 more linese\\^Me
f\rf
j\nj
k^Mk
l
l


TEST_4:
a\a
b\b
c^Mc
d^Md
e\^Me
f^Mf
j
j
k^Mk
l
l


TEST_5:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)

', '\=submatch(0) . submatch(9) . submatch(8) . submatch(7) . submatch(6) . subm

atch(5) . submatch(4) . submatch(3) . submatch(2) . submatch(1)', '')
[?25l[?1cf\rf
j\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd
e\^Me
f^Mfjk^Mk
lTEST_5:
A123456789987654321[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)

', '\=string([submatch(0, 1), submatch(9, 1), submatch(8, 1), submatch(7, 1), su

bmatch(6, 1), submatch(5, 1), submatch(4, 1), submatch(3, 1), submatch(2, 1), su

bmatch(1, 1)])', '')
[?25l[?1cj\nj
k^Mk
lTEST_4:
a\ab\b
c^Mc
dd
e\^Me
f^Mfjk^Mk
lTEST_5:
A123456789987654321
[['A123456789'], ['9'], ['8'], ['7'], ['6'], ['5'], ['4'], ['3'], ['2'], ['1']][?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_6
[?25l[?1csearch hit BOTTOM, continuing at TOP:$put =\"\n\nTEST_5:\"
:$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\=submatch(0) . submatch(9) . submatch(8) . submatch(7) . submatch(6) . submatch(5) . submatch(4) . submatch(3) . submatch(2) . submatch(1)', '')
:$put =substitute('A123456789', 'A\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)\(.\)', '\=string([submatch(0, 1), submatch(9, 1), submatch(8, 1), submatch(7, 1), submatch(6, 1), submatch(5, 1), submatch(4, 1), submatch(3, 1), submatch(2, 1), submatch(1, 1)])', '')
/^TEST_6
ENDTEST

TEST_6:

STARTTEST
:set magic&
:$put =\"\n\nTEST_6:\"
:set cpo+=/
:$put =substitute('A', 'A', 'a', '')
:$put =substitute('B', 'B', '%', '')
:set cpo-=/
:$put =substitute('C', 'C', 'c', '')
:$put =substitute('D', 'D', '%', '')
/^TEST_7
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 9 lines, 216 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST
ENDTEST[?25h[?0c[?25l[?1cTEST_7:[?25h[?0c[?25l[?1c


:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_6:\"
[?25l[?1c3 more linesl


TEST_4:
a\a
b\b
c^Mc
d^Md
e\^Me
f^Mf
j
j
k^Mk
l
l


TEST_5:
A123456789987654321
[['A123456789'], ['9'], ['8'], ['7'], ['6'], ['5'], ['4'], ['3'], ['2'], ['1']]


TEST_6:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0cset cpo+=/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('A', 'A', 'a', '')
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('B', 'B', '%', '')
[?25l[?1c
%[?25h[?0c[?25l[?1c
:[?25h[?0cset cpo-=/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('C', 'C', 'c', '')
[?25l[?1c
c[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('D', 'D', '%', '')
[?25l[?1c
%[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_7
[?25l[?1csearch hit BOTTOM, continuing at TOP:set magic&
:$put =\"\n\nTEST_6:\"
:set cpo+=/
:$put =substitute('A', 'A', 'a', '')
:$put =substitute('B', 'B', '%', '')
:set cpo-=/
:$put =substitute('C', 'C', 'c', '')
:$put =substitute('D', 'D', '%', '')
/^TEST_7
ENDTEST

TEST_7:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_7:\"
:$put =substitute('A^V^MA', 'A.', '\=submatch(0)', '')
:$put =substitute(\"B\nB\", 'B.', '\=submatch(0)', '')
:$put =substitute(\"B\nB\", 'B.', '\=string(submatch(0, 1))', '')
:$put =substitute('-bb', '\zeb', 'a', 'g')
:$put =substitute('-bb', '\ze', 'c', 'g')
/^TEST_8
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 9 lines, 313 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_7:\"
[?25l[?1c3 more linesd^Md
e\^Me
f^Mf
j
j
k^Mk
l
l


TEST_5:
A123456789987654321
[['A123456789'], ['9'], ['8'], ['7'], ['6'], ['5'], ['4'], ['3'], ['2'], ['1']]


TEST_6:
a
%
c
%


TEST_7:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =substitute('A^^MA', 'A.', '\=submatch(0)', '')
[?25l[?1c
A^MA[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute(\"B\nB\", 'B.', '\=submatch(0)', '')
[?25l[?1cB
B[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute(\"B\nB\", 'B.', '\=string(submatch(0, 1))', '')
[?25l[?1c['B
']B[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('-bb', '\zeb', 'a', 'g')
[?25l[?1c
-abab[?25h[?0c[?25l[?1c
:[?25h[?0c$put =substitute('-bb', '\ze', 'c', 'g')
[?25l[?1c
c-cbcbc[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_8
[?25l[?1csearch hit BOTTOM, continuing at TOP:set magic&
:set cpo&
:$put =\"\n\nTEST_7:\"
:$put =substitute('A^V^MA', 'A.', '\=submatch(0)', '')
:$put =substitute(\"B\nB\", 'B.', '\=submatch(0)', '')
:$put =substitute(\"B\nB\", 'B.', '\=string(submatch(0, 1))', '')
:$put =substitute('-bb', '\zeb', 'a', 'g')
:$put =substitute('-bb', '\ze', 'c', 'g')
/^TEST_8
ENDTEST

TEST_8:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_8:\"
:$put =',,X'
:s/\(^\|,\)\ze\(,\|X\)/\1N/g
:$put =',,Y'
:s/\(^\|,\)\ze\(,\|Y\)/\1N/gc
a:$put =',,Z'
:s/\(^\|,\)\ze\(,\|Z\)/\1N/gc
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 10 lines, 186 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTyy/^TEST_9:
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_8:\"
[?25l[?1c3 more linesTEST_5:
A123456789987654321
[['A123456789'], ['9'], ['8'], ['7'], ['6'], ['5'], ['4'], ['3'], ['2'], ['1']]


TEST_6:
a
%
c
%


TEST_7:
A^MA
B
B
['B
']B
-abab
c-cbcbc


TEST_8:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put =',,X'
[?25l[?1c
,,X[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(^\|,\)\ze\(,\|X\)/\1N/g
[?25l[?1cN,,NX
[?25h[?0c[?25l[?1c:[?25h[?0c$put =',,Y'
[?25l[?1c
,,Y[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(^\|,\)\ze\(,\|Y\)/\1N/gc
[?25l[?1c,
replace with \1N (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1cN,,NY
[?25h[?0c[?25l[?1c
:[?25h[?0c$put =',,Z'
[?25l[?1c
,,Z[?25h[?0c[?25l[?1c
:[?25h[?0cs/\(^\|,\)\ze\(,\|Z\)/\1N/gc
[?25l[?1c,
replace with \1N (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1cN,,Z
replace with \1N (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1c,NZ
[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_9:
[?25l[?1csearch hit BOTTOM, continuing at TOP:set cpo&
:$put =\"\n\nTEST_8:\"
:$put =',,X'
:s/\(^\|,\)\ze\(,\|X\)/\1N/g
:$put =',,Y'
:s/\(^\|,\)\ze\(,\|Y\)/\1N/gc
a:$put =',,Z'
:s/\(^\|,\)\ze\(,\|Z\)/\1N/gc
yy/^TEST_9:
ENDTEST

TEST_9:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_9:\"
:$put ='xxx'
:s/x/X/gc
yyq/^TEST_10:
ENDTEST

TEST_10:
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 6 lines, 82 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_9:\"
[?25l[?1c3 more linesa
%
c
%


TEST_7:
A^MA
B
B
['B
']B
-abab
c-cbcbc


TEST_8:
N,,NX
N,,NY
N,,NZ


TEST_9:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put ='xxx'
[?25l[?1c
xxx[?25h[?0c[?25l[?1c
:[?25h[?0cs/x/X/gc
[?25l[?1cx
replace with X (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1cXx
replace with X (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1cXx
replace with X (y/n/a/q/l/^E/^Y)?[?25h[?0c[?25l[?1cx[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_10:
[?25l[?1csearch hit BOTTOM, continuing at TOPTEST_9:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_9:\"
:$put ='xxx'
:s/x/X/gc
yyq/^TEST_10:
ENDTEST

TEST_10:

STARTTEST
:set magic&
:set cpo&
:$put =\"\n\nTEST_10:\"
:let y = substitute('123', '\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\zs.', 'a', 'g')| $put =y
:let y = substitute('123', '.\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\ze', 'a', 'g')| $put =y
:let y = substitute('123', '\ze.', 'a', 'g')| $put =y
:let y = substitute('123', '.\ze', 'a', 'g')| $put =y
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 12 lines, 584 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let y = substitute('123', '1\|\ze', 'a', 'g')| $put =y
:let y = substitute('123', '1\zs\|[23]', 'a', 'g')      | $put =y
/^TEST_11
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset magic&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\n\nTEST_10:\"
[?25l[?1c3 more linesTEST_7:
A^MA
B
B
['B
']B
-abab
c-cbcbc


TEST_8:
N,,NX
N,,NY
N,,NZ


TEST_9:
XXx


TEST_10:
3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet y = substitute('123', '\zs', 'a', 'g')             | $put =y
[?25l[?1c
a1a2a3a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '\zs.', 'a', 'g')            | $put =y
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '.\zs', 'a', 'g')            | $put =y
[?25l[?1c
1a2a3a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '\ze', 'a', 'g')             | $put =y
[?25l[?1c
a1a2a3a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '\ze.', 'a', 'g')            | $put =y
[?25l[?1c
a1a2a3[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '.\ze', 'a', 'g')            | $put =y
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '1\|\ze', 'a', 'g')          | $put =y
[?25l[?1c
aa2a3a[?25h[?0c[?25l[?1c
:[?25h[?0clet y = substitute('123', '1\zs\|[23]', 'a', 'g')      | $put =y
[?25l[?1c
1aaa[?25h[?0c[?25l[?1c
/[?25h[?0c^TEST_11
[?25l[?1csearch hit BOTTOM, continuing at TOP:let y = substitute('123', '\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\zs.', 'a', 'g')| $put =y
:let y = substitute('123', '.\zs', 'a', 'g')| $put =y
:let y = substitute('123', '\ze', 'a', 'g')| $put =y
:let y = substitute('123', '\ze.', 'a', 'g')| $put =y
:let y = substitute('123', '.\ze', 'a', 'g')| $put =y
:let y = substitute('123', '1\|\ze', 'a', 'g')| $put =y
:let y = substitute('123', '1\zs\|[23]', 'a', 'g')      | $put =y
/^TEST_11
ENDTEST

TEST_11:

STARTTEST
:/^Results/,$wq! test.out
ENDTEST

Results of test72:


TEST_1:
AA
&
search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1 line, 26 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$wq! test.out
[?25l[?1c"test.out" [New File] 131 lines, 617 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test81.failed test.ok test.out X* viminfo
cp test81.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test81.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test81.in" 22 lines, 308 charactersTest for t movement command and 'cpo-;' setting

STARTTEST
:set nocompatible viminfo+=nviminfo
:set cpo-=;
/firstline/
j0tt;D
0fz;D
$Fy;D
$Ty;D:set cpo+=;
j0tt;;D
$Ty;;D:?firstline?+1,$w! test.out
:qa!
ENDTEST

firstline
aaa two three four
    zzz
yyy
bbb yee yoo four
ccc two three four
ddd yee yoo four
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for t movement command and 'cpo-;' setting[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 10 lines, 143 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=;
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cfirstline/
[?25l[?1c[?25h[?0c
aaa two[?25l[?1c[?25h[?0c
    z[?25l[?1c[?25h[?0c
yyy  [?25l[?1c[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo+=;
[?25l[?1c[?25h[?0c
ccc 
ccc[?25l[?1c[?25h[?0c
dd[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c?firstline?+1,$w! test.out
[?25l[?1c"test.out" [New] 6L, 36C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test82.failed test.ok test.out X* viminfo
cp test82.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test82.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test82.in" 103 lines, 3166 charactersTests for case-insensitive UTF-8 comparisons (utf_strnicmp() in mbyte.c)
Also test "g~ap".

STARTTEST
:so small.vim
:if !has("multi_byte")
: e! test.ok
: w! test.out
: qa!
:endif
:set enc=utf8
ggdG:
:
:function! Ch(a, op, b, expected)
:  if eval(printf('"%s" %s "%s"', a:a, a:op, a:b)) != a:expected
:    call append(line('$'), printf('"%s" %s "%s" should return %d', a:a, a:op, a:b, a:expected))
:  else
:    let b:passed += 1
:  endif
:endfunction
:
:function! Chk(a, b, result)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for case-insensitive UTF-8 comparisons (utf_strnicmp() in mbyte.c)[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 97 lines, 3055 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call LT('\xc3', '\xc3\x83')
:call EQ('\xc3\xa3xYz', '\xc3\x83XyZ')
:for n in range(0x60, 0xFF) | call LT(printf('xYz\x%.2X', n-1), printf('XyZ\x%.2X', n)) | endfor
:for n in range(0x80, 0xBF) | call EQ(printf('xYz\xc2\x%.2XUvW', n), printf('XyZ\xc2\x%.2XuVw', n)) | endfor
:for n in range(0xC0, 0xFF) | call LT(printf('xYz\xc2\x%.2XUvW', n), printf('XyZ\xc2\x%.2XuVw', n)) | endfor
:call append(0, printf('%d checks passed', b:passed))
:"
:" test that g~ap changes one paragraph only.
:new
iabcd

defg^[gg0g~ap:let lns = getline(1,3)
:q!
:call append(line('$'), lns)
:"
:wq! test.out
ENDTEST

~                                                                               ~                                                                               [?25h[?0c
[?25l[?1c


:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("multi_byte")
[?25l[?1c
:  [?25h[?0c: e! test.ok

[?25l[?1c:  [?25h[?0c: w! test.out

[?25l[?1c:  [?25h[?0c: qa!

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:call LT('\xc3', '\xc3\x83')
:call EQ('\xc3\xa3xYz', '\xc3\x83XyZ')
:for n in range(0x60, 0xFF) | call LT(printf('xYz\x%.2X', n-1), printf('XyZ\x%.2X', n)) | endfor[?25h[?0c[?25l[?1c


:[?25h[?0cset enc=utf8
[?25l[?1c:call LT('\xc3', '\xc3\x83')
:call EQ('\xc3\xa3xYz', '\xc3\x83XyZ')
:for n in range(0x60, 0xFF) | call LT(printf('xYz\x%.2X', n-1), printf('XyZ\x%.2X', n)) | endfor
:for n in range(0x80, 0xBF) | call EQ(printf('xYz\xc2\x%.2XUvW', n), printf('XyZ\xc2\x%.2XuVw', n)) | endfor
:for n in range(0xC0, 0xFF) | call LT(printf('xYz\xc2\x%.2XUvW', n), printf('XyZ\xc2\x%.2XuVw', n)) | endfor
:call append(0, printf('%d checks passed', b:passed))
:"
:" test that g~ap changes one paragraph only.
:new
iabcd

defg^[gg0g~ap:let lns = getline(1,3)
:q!
:call append(line('$'), lns)
:"
:wq! test.out
ENDTEST

~                                                                               ~                                                                               [?25h[?0c[?25l[?1cTests for case-insensitive UTF-8 comparisons (utf_strnicmp() in mbyte.c)
Also test "g~ap".

STARTTEST
:so small.vim
:if !has("multi_byte")
: e! test.ok
: w! test.out
: qa!
:endif
:set enc=utf8
ggdG:
:
:function! Ch(a, op, b, expected)
:  if eval(printf('"%s" %s "%s"', a:a, a:op, a:b)) != a:expected
:    call append(line('$'), printf('"%s" %s "%s" should return %d', a:a, a:op, a:b, a:expected))
:  else
:    let b:passed += 1
:  endif
:endfunction
:
:function! Chk(a, b, result)[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! Ch(a, op, b, expected)
[?25l[?1c
:  [?25h[?0c:  if eval(printf('"%s" %s "%s"', a:a, a:op, a:b)) != a:expected

[?25l[?1c:    [?25h[?0c:    call append(line('$'), printf('"%s" %s "%s" should return %d', a:a, a

:op, a:b, a:expected))

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    let b:passed += 1

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! Chk(a, b, result)
[?25l[?1c
:  [?25h[?0c:  if a:result == 0

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '==?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '!=?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>?', a:b, 0)

[?25l[?1c:    [?25h[?0c:  elseif a:result > 0

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '==?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '!=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<=?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>?', a:b, 1)

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '==?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '!=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<=?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>=?', a:b, 0)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '<?', a:b, 1)

[?25l[?1c:    [?25h[?0c:    call Ch(a:a, '>?', a:b, 0)

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! Check(a, b, result)
[?25l[?1c
:  [?25h[?0c:  call Chk(a:a, a:b, a:result)

[?25l[?1c:  [?25h[?0c:  call Chk(a:b, a:a, -a:result)

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! LT(a, b)
[?25l[?1c
:  [?25h[?0c:  call Check(a:a, a:b, -1)

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! GT(a, b)
[?25l[?1c
:  [?25h[?0c:  call Check(a:a, a:b, 1)

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! EQ(a, b)
[?25l[?1c
:  [?25h[?0c:  call Check(a:a, a:b, 0)

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet b:passed=0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('', '')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('', 'a')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('abc', 'abc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('Abc', 'abC')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('ab', 'abc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('AB', 'abc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('ab', 'aBc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xd0\xb9\xd1\x86\xd1\x83\xd0\xba\xd0\xb5\xd0\xbd', '\xd0\xb9\xd0\xa6\

xd0\xa3\xd0\xba\xd0\x95\xd0\xbd')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('\xd0\xb9\xd1\x86\xd1\x83\xd0\xba\xd0\xb5\xd0\xbd', '\xd0\xaf\xd1\x86\

xd1\x83\xd0\xba\xd0\xb5\xd0\xbd')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xe2\x84\xaa', 'k')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('\xe2\x84\xaa', 'kkkkkk')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xe2\x84\xaa\xe2\x84\xaa\xe2\x84\xaa', 'kkk')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('kk', '\xe2\x84\xaa\xe2\x84\xaa\xe2\x84\xaa')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xe2\x84\xaa\xe2\x84\xa6k\xe2\x84\xaak\xcf\x89', 'k\xcf\x89\xe2\x84\x

aakk\xe2\x84\xa6')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('Abc\x80', 'AbC\x80')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('Abc\x80', 'AbC\x81')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('Abc', 'AbC\x80')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('abc\x80DEF', 'abc\x80def')  " case folding stops at the first bad cha

racter
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall LT('\xc3XYZ', '\xc3xyz')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xef\xbc\xba', '\xef\xbd\x9a')  " FF3A (upper), FF5A (lower)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall GT('\xef\xbc\xba', '\xef\xbc\xff')  " first string is ok and equals \xef\

xbd\x9a after folding, second string is illegal and was left unchanged, then the

strings were bytewise compared
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall LT('\xc3', '\xc3\x83')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall EQ('\xc3\xa3xYz', '\xc3\x83XyZ')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor n in range(0x60, 0xFF) | call LT(printf('xYz\x%.2X', n-1), printf('XyZ\x%.

2X', n)) | endfor
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor n in range(0x80, 0xBF) | call EQ(printf('xYz\xc2\x%.2XUvW', n), printf('Xy

Z\xc2\x%.2XuVw', n)) | endfor
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor n in range(0xC0, 0xFF) | call LT(printf('xYz\xc2\x%.2XUvW', n), printf('Xy

Z\xc2\x%.2XuVw', n)) | endfor
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, printf('%d checks passed', b:passed))
[?25l[?1c3732 checks passed[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test that g~ap changes one paragraph only.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               [No Name]                                                                       3732 checks passedtest82.in [+]                                                                   [?25h[?0c[?25l[?1cabcddefg[+][?25h[?0c[?25l[?1cABCD
[?25h[?0c[?25l[?1c:[?25h[?0clet lns = getline(1,3)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c3732 checks passed

~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), lns)
[?25l[?1cABCDdefg[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New File] 5 lines, 31 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test83.failed test.ok test.out X* viminfo
cp test83.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test83.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test83.in" 76 lines, 1273 charactersTests for tag search with !_TAG_FILE_ENCODING.

STARTTEST
:so mbyte.vim
:set enc=utf8
:if !has('iconv') || iconv("\x82\x60", "cp932", "utf-8") != "\uff21"
: e! test.ok
: w! test.out
: qa!
:endif
:
:/^text for tags1$/,/^text for tags1$/+1w! Xtags1.txt
:/^text for tags2$/,/^text for tags2$/+1w! Xtags2.txt
:/^text for tags3$/,/^text for tags3$/+1w! Xtags3.txt
:/^tags1$/+1,/^tags1-end$/-1w! Xtags1
:
ggdG:
:
:call setline('.', 'Results of test83')
:
:" case1:
:new
:set tags=Xtags1[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for tag search with !_TAG_FILE_ENCODING.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 58 lines, 1021 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:tag abc50
:if v:errmsg =~ 'E426:' || getline('.') != 'ABC'
: close
: put ='case3: failed'
:else
: close
: put ='case3: ok'
:endif
:close
:
:wq! test.out
ENDTEST

text for tags1
abcdefghijklmnopqrs

text for tags2
ABC

text for tags3
ABC

tags1[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=utf8
[?25l[?1c:tag abc50
:if v:errmsg =~ 'E426:' || getline('.') != 'ABC'
: close
: put ='case3: failed'
:else
: close
: put ='case3: ok'
:endif
:close
:
:wq! test.out
ENDTEST

text for tags1
abcdefghijklmnopqrs

text for tags2
ABC

text for tags3
ABC

tags1[?25h[?0c[?25l[?1c:[?25h[?0cif !has('iconv') || iconv("\x82\x60", "cp932", "utf-8") != "\uff21"
[?25l[?1c
:  [?25h[?0c: e! test.ok

[?25l[?1c:  [?25h[?0c: w! test.out

[?25l[?1c:  [?25h[?0c: qa!

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:tag abc50
:if v:errmsg =~ 'E426:' || getline('.') != 'ABC'
: close
: put ='case3: failed'[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^text for tags1$/,/^text for tags1$/+1w! Xtags1.txt
[?25l[?1c"Xtags1.txt" [New File] 2 lines, 35 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^text for tags2$/,/^text for tags2$/+1w! Xtags2.txt
[?25l[?1c"Xtags2.txt" [New File] 2 lines, 25 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^text for tags3$/,/^text for tags3$/+1w! Xtags3.txt
[?25l[?1c"Xtags3.txt" [New File] 2 lines, 25 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^tags1$/+1,/^tags1-end$/-1w! Xtags1
[?25l[?1c"Xtags1" [New File] 2 lines, 81 characters written[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cTests for tag search with !_TAG_FILE_ENCODING.

STARTTEST
:so mbyte.vim
:set enc=utf8
:if !has('iconv') || iconv("\x82\x60", "cp932", "utf-8") != "\uff21"
: e! test.ok
: w! test.out
: qa!
:endif
:
:/^text for tags1$/,/^text for tags1$/+1w! Xtags1.txt
:/^text for tags2$/,/^text for tags2$/+1w! Xtags2.txt
:/^text for tags3$/,/^text for tags3$/+1w! Xtags3.txt
:/^tags1$/+1,/^tags1-end$/-1w! Xtags1
:
ggdG:
:
:call setline('.', 'Results of test83')
:
:" case1:
:new
:set tags=Xtags1[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setline('.', 'Results of test83')
[?25l[?1cResults of test83
[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" case1:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c[No Name]                                                                       Results of test83test83.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cset tags=Xtags1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctag abcdefghijklmnopqrs
[?25l[?1c"Xtags1.txt" 2 lines, 35 characterstext for tags1
abcdefghijklmnopqrsXtags1.txt[?25h[?0c[?25l[?1c:[?25h[?0cif v:errmsg =~ 'E426:' || getline('.') != 'abcdefghijklmnopqrs'
[?25l[?1c
:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case1: failed'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case1: ok'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cResults of test83
case1: ok
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" case2:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               [No Name]                                                                       Results of test83case1: oktest83.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cset tags=test83-tags2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctag /.BC
[?25l[?1c"Xtags2.txt" 2 lines, 25 characterstext for tags2
ABCXtags2.txt[?25h[?0c[?25l[?1c:[?25h[?0cif v:errmsg =~ 'E426:' || getline('.') != 'ABC'
[?25l[?1c
:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case2: failed'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case2: ok'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cResults of test83
case1: ok
case2: ok
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" case3:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               [No Name]                                                                       case1: okcase2: oktest83.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cset tags=test83-tags3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctag abc50
[?25l[?1c"Xtags3.txt" 2 lines, 25 characterstext for tags3
ABCXtags3.txt[?25h[?0c[?25l[?1c:[?25h[?0cif v:errmsg =~ 'E426:' || getline('.') != 'ABC'
[?25l[?1c
:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case3: failed'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: close

[?25l[?1c:  [?25h[?0c: put ='case3: ok'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cResults of test83
case1: ok
case2: ok
case3: ok
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1cE37: No write since last change (add ! to override)[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwq! test.out
[?25l[?1c"test.out" [New File] 4 lines, 48 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test84.failed test.ok test.out X* viminfo
cp test84.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test84.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test84.in" 35 lines, 786 charactersTests for curswant not changing when setting an option

STARTTEST
:so small.vim
:/^start target options$/+1,/^end target options$/-1 yank
:let target_option_names = split(@0)
:function TestCurswant(option_name)
:  normal! ggf8j
:  let curswant_before = winsaveview().curswant
:  execute 'let' '&'.a:option_name '=' '&'.a:option_name
:  let curswant_after = winsaveview().curswant
:  return [a:option_name, curswant_before, curswant_after]
:endfunction
:
:new
:put =['1234567890', '12345']
:1 delete _
:let result = []
:for option_name in target_option_names
:  call add(result, TestCurswant(option_name))
:endfor
:
:new[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for curswant not changing when setting an option[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 25 lines, 637 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:put =map(copy(result), 'join(v:val, '' '')')
:1 delete _
:write test.out
:
:qall!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start target options$/+1,/^end target options$/-1 yank
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0clet target_option_names = split(@0)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction TestCurswant(option_name)
[?25l[?1c
:  [?25h[?0c:  normal! ggf8j

[?25l[?1c:  [?25h[?0c:  let curswant_before = winsaveview().curswant

[?25l[?1c:  [?25h[?0c:  execute 'let' '&'.a:option_name '=' '&'.a:option_name

[?25l[?1c:  [?25h[?0c:  let curswant_after = winsaveview().curswant

[?25l[?1c:  [?25h[?0c:  return [a:option_name, curswant_before, curswant_after]

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:  normal! ggf8j
:  let curswant_before = winsaveview().curswant
:  execute 'let' '&'.a:option_name '=' '&'.a:option_name
:  let curswant_after = winsaveview().curswant
:  return [a:option_name, curswant_before, curswant_after]
:endfunction[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       endfornew
:put =map(copy(result), 'join(v:val, '' '')')
:1 delete _write test.outqall!
ENDTESTtest84.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cput =['1234567890', '12345']
[?25l[?1c123456789012345[+][?25h[?0c[?25l[?1c:[?25h[?0c1 delete _
[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet result = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor option_name in target_option_names
[?25l[?1c
:  [?25h[?0c:  call add(result, TestCurswant(option_name))

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c1234567890
12345[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       1234567890
12345
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name] [+]                                                                   :1 delete _
:write test.out
:
:qall!
ENDTEST

test84.in                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cput =map(copy(result), 'join(v:val, '' '')')
[?25l[?1c3 more linestabstop 7 4timeoutlen 7 7ttimeoutlen 7 7[+][?25h[?0c[?25l[?1c:[?25h[?0c1 delete _
[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cwrite test.out
[?25l[?1c"test.out" [New File] 3 lines, 43 characters writtentest.out     [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cqall!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test85.failed test.ok test.out X* viminfo
cp test85.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test85.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test85.in" 85 lines, 1868 charactersTest for Lua interface and luaeval() function

STARTTEST
:so small.vim
:so lua.vim
:set nocompatible viminfo+=nviminfo
:lua l = vim.list():add"item0":add"dictionary with list OK":add"item2"
:lua h = vim.dict(); h.list = l
:call garbagecollect()
/^1
:" change buffer contents
:lua curbuf = vim.buffer()
:lua curline = vim.eval"line('.')"
:lua curbuf[curline] = "1 changed line 1"
:" scalar test
:let tmp_string = luaeval('"string"')
:let tmp_1000 = luaeval('1000')
:if printf("%s%.0f", tmp_string, tmp_1000) == "string1000"
:let scalar_res = "OK"
:else
:let scalar_res = "FAILED"
:endif
:call append(search("^1"), "scalar test " . scalar_res)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for Lua interface and luaeval() function[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 77 lines, 1775 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:lua d = vim.eval("d")
:lua d[0] = 123
:lua d[1] = "abc"
:lua d[2] = vim.eval("[1, 2, 3]")
:lua d[3] = vim.eval("{'a':1, 'b':2, 'c':3}")
:lua d[4] = d[0]
:lua d[5] = d[1]
:lua d[6] = d[2]
:lua d[7] = d[3]
:lua d[3] = nil
:lua d[2] = nil
:lua d[1] = nil
:lua d[0] = nil
:lua d = nil
:$put =string(d)

:?^1?,$w! test.out
:qa!
ENDTEST

1 line 1
2 line 2
3 line 3[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso lua.vim
[?25l[?1c"test.ok" 7 lines, 206 characters

"test.out" [New File] 7 lines, 206 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test86.failed test.ok test.out X* viminfo
cp test86.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test86.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test86.in" 1443 lines, 38422 charactersTests for various python features.     vim: set ft=vim :

NOTE: This will cause errors when run under valgrind.
This would require recompiling Python with:
  ./configure --without-pymalloc
See http://svn.python.org/view/python/trunk/Misc/README.valgrind?view=markup

STARTTEST
:so small.vim
:set encoding=latin1
:set noswapfile
:if !has('python') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py import vim
:let l = []
:py l=vim.bindeval('l')
:py f=vim.bindeval('function("strlen")')
:" Extending List directly with different types
:py l.extend([1, "as'd", [1, 2, f, {'a': 1}]])
:$put =string(l)
:$put =string(l[-1])
:try[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for various python features.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1432 lines, 38129 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:   endif
:   call Test()
:   if i == 0
:let result = getline(1, '$')
:   endif
:endfor
:if checkrefs
:   %d _
:   call setline(1, result)
:endif
:endfun
:"
:call RunTest()
:delfunction RunTest
:delfunction Test
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
:" vim: et ts=4 isk-=\:
:call getchar()
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=latin1
[?25l[?1c:   endif
:   call Test()
:   if i == 0
:let result = getline(1, '$')
:   endif
:endfor
:if checkrefs
:   %d _
:   call setline(1, result)
:endif
:endfun
:"
:call RunTest()
:delfunction RunTest
:delfunction Test
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
:" vim: et ts=4 isk-=\:
:call getchar()
ENDTEST

start:[?25h[?0c[?25l[?1c

:[?25h[?0cset noswapfile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('python') | e! test.ok | wq! test.out | endif
[?25l[?1c"test.ok" 1278 lines, 59443 characters

"test.out" [New File] 1278 lines, 59443 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test87.failed test.ok test.out X* viminfo
cp test87.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test87.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test87.in" 1420 lines, 37919 charactersTests for various python features.     vim: set ft=vim :

STARTTEST
:so small.vim
:set noswapfile
:if !has('python3') | e! test.ok | wq! test.out | endif
:lang C
:fun Test()
:py3 import vim
:let l = []
:py3 l=vim.bindeval('l')
:py3 f=vim.bindeval('function("strlen")')
:" Extending List directly with different types
:py3 l+=[1, "as'd", [1, 2, f, {'a': 1}]]
:$put =string(l)
:$put =string(l[-1])
:try
:  $put =string(l[-4])
:catch
:  $put =v:exception[:13]
:endtry
:" List assignment
:py3 l[0]=0[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for various python features.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 1414 lines, 37835 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:   endif
:   call Test()
:   if i == 0
:let result = getline(1, '$')
:   endif
:endfor
:if checkrefs
:   %d _
:   call setline(1, result)
:endif
:endfun
:"
:call RunTest()
:delfunction RunTest
:delfunction Test
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
:" vim: et ts=4 isk-=\:
:call getchar()
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noswapfile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('python3') | e! test.ok | wq! test.out | endif
[?25l[?1c"test.ok" 1278 lines, 69646 characters

"test.out" [New File] 1278 lines, 69646 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test88.failed test.ok test.out X* viminfo
cp test88.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test88.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test88.in" 99 lines, 1449 charactersvim: set ft=vim

Tests for correct display (cursor column position) with +conceal and
tabulators.

STARTTEST
:so small.vim
:if !has('conceal')
   e! test.ok
   wq! test.out
:endif
:" Conceal settings.
:set conceallevel=2
:set concealcursor=nc
:syntax match test /|/ conceal
:" Save current cursor position. Only works in <expr> mode, can't be used
:" with :normal because it moves the cursor to the command line. Thanks to ZyX
:" <zyx.vim@gmail.com> for the idea to use an <expr> mapping.
:let positions = []
:nnoremap <expr> GG ":let positions += ['".screenrow().":".screencol()."']\n"
:" Start test.
/^start:
:normal ztj[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cvim: set ft=vim[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 82 lines, 1216 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:normal W
GGk
:normal W
GGk
:normal W
GGk
:normal $
GGk
:" Display result.
:call append('$', 'end:')
:call append('$', positions)
:/^end/,$wq! test.out
ENDTEST

start:
.concealed.     text
|concealed|     text.concealed.     text|concealed|     text

.a.     .b.     .c.     .d.
|a|     |b|     |c|     |d|[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('conceal')
[?25l[?1c
:  [?25h[?0c   e! test.ok

[?25l[?1c:  [?25h[?0c   wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:normal W
GGk
:normal W[?25h[?0c[?25l[?1c:[?25h[?0c" Conceal settings.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset conceallevel=2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset concealcursor=nc
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyntax match test /|/ conceal
[?25l[?1cconcealed  concealed  


a       b       c       d[?25h[?0c[?25l[?1c:[?25h[?0c" Save current cursor position. Only works in <expr> mode, can't be used
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" with :normal because it moves the cursor to the command line. Thanks to ZyX
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" <zyx.vim@gmail.com> for the idea to use an <expr> mapping.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet positions = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnnoremap <expr> GG ":let positions += ['".screenrow().":".screencol()."']\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Start test.
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnormal ztj
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:let positions += ['2:1']
[?25h[?0c[?25l[?1c:[?25h[?0c" We should end up in the same column when running these commands on the two
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" lines.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnormal ft
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['2:17']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['2:20']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0j
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['3:1']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal ft
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['3:17']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['3:20']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0j0j
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['5:8']
[?25h[?0c[?25l[?1c:[?25h[?0c" Same for next test block.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnormal ft
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['5:25']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['5:28']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0j
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['6:8']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal ft
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['6:25']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['6:28']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0j0j
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['8:1']
[?25h[?0c[?25l[?1c:[?25h[?0c" And check W with multiple tabs and conceals in a line.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['8:9']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['8:17']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['8:25']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['8:27']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0j
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:1']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:9']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:17']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:25']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:26']
[?25h[?0c[?25l[?1c:[?25h[?0cset lbr
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:26']
[?25h[?0c[?25l[?1c:[?25h[?0cset list listchars=tab:>-
[?25l[?1c>------

>------->----
>------->------>----.b.>----.c.>----
a>------b>------c>------[?25h[?0c[?25l[?1c:[?25h[?0cnormal 0
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:1']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:9']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:17']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal W
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:25']
[?25h[?0c[?25l[?1c:[?25h[?0cnormal $
[?25l[?1c[?25h[?0c[?25l[?1c:let positions += ['9:26']
[?25h[?0c[?25l[?1c:[?25h[?0c" Display result.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', 'end:')
[?25l[?1cend:[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', positions)
[?25l[?1c2:12:172:203:13:173:205:85:255:286:86:256:288:1[?25h[?0c[?25l[?1c:[?25h[?0c/^end/,$wq! test.out
[?25l[?1c"test.out" [New File] 29 lines, 135 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test89.failed test.ok test.out X* viminfo
cp test89.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test89.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test89.in" 71 lines, 1514 characters- Some tests for setting 'number' and 'relativenumber'
  This is not all that useful now that the options are no longer reset when
  setting the other.
- Some tests for findfile() function

STARTTEST
:so small.vim
:set hidden nocp nu rnu viminfo+=nviminfo
:redir @a | set nu? rnu? | redir END
:e! xx
:redir @b | set nu? rnu? | redir END
:e! #
:$put ='results:'
:$put a
:$put b
:"
:set nonu nornu
:setglobal nu
:setlocal rnu
:redir @c | setglobal nu? | redir END
:set nonu nornu
:setglobal rnu
:setlocal nu[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c- Some tests for setting 'number' and 'relativenumber'[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 63 lines, 1305 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =':set MUST reset the other global value'
:$put g
:$put h
:"
:let cwd=getcwd()
:cd ..
:" Tests may be run from a shadow directory, so an extra cd needs to be done to
:" get above src/
:if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif
:$put =''
:$put ='Testing findfile'
:$put =''
:set ssl
:$put =findfile('test19.in','src/test*')
:exe "cd" cwd
:cd ..
:$put =findfile('test19.in','test*')
:$put =findfile('test19.in','testdir')
:exe "cd" cwd
:/^results/,$w! test.out
:q!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden nocp nu rnu viminfo+=nviminfo
[?25l[?1c 21 :$put g 20 :$put h
 19 :" 18 :let cwd=getcwd()
 17 :cd .. 16 :" Tests may be run from a shadow directory, so an extra cd needs to be done     to 15 :" get above src/
 14 :if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif
 13 :$put =''
 12 :$put ='Testing findfile'
 11 :$put =''
 10 :set ssl
  9 :$put =findfile('test19.in','src/test*')
  8 :exe "cd" cwd
  7 :cd ..
  6 :$put =findfile('test19.in','test*')
  5 :$put =findfile('test19.in','testdir')
  4 :exe "cd" cwd
  3 :/^results/,$w! test.out
  2 :q!
  1 ENDTEST
71  [?25h[?0c[?25l[?1c:[?25h[?0credir @a | set nu? rnu? | redir END
[?25l[?1c  number

  relativenumber

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ce! xx
[?25l[?1c"xx" [New File]1   
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0credir @b | set nu? rnu? | redir END
[?25l[?1c  number

  relativenumber

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ce! #
[?25l[?1c"test89.in" line 71 of 71 --100%-- col 1 21 :$put g
 20 :$put h
 19 :" 18 :let cwd=getcwd() 17 :cd .. 16 :" Tests may be run from a shadow directory, so an extra cd needs to be done     to 15 :" get above src/ 14 :if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif 13 :$put ='' 12 :$put ='Testing findfile' 11 :$put ='' 10 :set ssl  9 :$put =findfile('test19.in','src/test*')  8 :exe "cd" cwd  7 :cd ..  6 :$put =findfile('test19.in','test*')  5 :$put =findfile('test19.in','testdir')  4 :exe "cd" cwd  3 :/^results/,$w! test.out  2 :q!  1 ENDTEST71  "test89.in" line 71 of 71 --100%-- col 1[?25h[?0c[?25l[?1c:[?25h[?0c$put ='results:'
[?25l[?1c
1
 20
 19
 18
 17

 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
72  results:[?25h[?0c[?25l[?1c
:[?25h[?0c$put a
[?25l[?1c3 more lines21
 20

 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2 
  1   number
75    relativenumber3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c$put b
[?25l[?1c3 more lines22
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2 
  1   number
78    relativenumber3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c:" get above src/:if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif:$put ='':$put ='Testing findfile':$put ='':set ssl:$put =findfile('test19.in','src/test*'):exe "cd" cwd:cd ..:$put =findfile('test19.in','test*'):$put =findfile('test19.in','testdir'):exe "cd" cwd:/^results/,$w! test.ou:q!ENDTESTresults:  number  relativenumber  number  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0csetglobal nu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal rnu
[?25l[?1c 22 :" get above src/
 21 :if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif
 20 :$put =''
 19 :$put ='Testing findfile'
 18 :$put =''
 17 :set ssl
 16 :$put =findfile('test19.in','src/test*')
 15 :exe "cd" cwd
 14 :cd ..
 13 :$put =findfile('test19.in','test*')
 12 :$put =findfile('test19.in','testdir')
 11 :exe "cd" cwd
 10 :/^results/,$w! test.out
  9 :q!
  8 ENDTEST
  7 
  6 results:
  5 
  4   number
  3   relativenumber
  2 
  1   number
  0   relativenumber[?25h[?0c[?25l[?1c:[?25h[?0credir @c | setglobal nu? | redir END
[?25l[?1c  number[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c:" get above src/:if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif:$put ='':$put ='Testing findfile':$put ='':set ssl:$put =findfile('test19.in','src/test*'):exe "cd" cwd:cd ..:$put =findfile('test19.in','test*'):$put =findfile('test19.in','testdir'):exe "cd" cwd:/^results/,$w! test.ou:q!ENDTESTresults:  number  relativenumber  number  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0csetglobal rnu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal nu
[?25l[?1c 56 :" get above src/
 57 :if fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif
 58 :$put =''
 59 :$put ='Testing findfile'
 60 :$put =''
 61 :set ssl
 62 :$put =findfile('test19.in','src/test*')
 63 :exe "cd" cwd
 64 :cd ..
 65 :$put =findfile('test19.in','test*')
 66 :$put =findfile('test19.in','testdir')
 67 :exe "cd" cwd
 68 :/^results/,$w! test.out
 69 :q!
 70 ENDTEST
 71 
 72 results:
 73 
 74   number
 75   relativenumber
 76 
 77   number
 78   relativenumber[?25h[?0c[?25l[?1c:[?25h[?0credir @d | setglobal rnu? | redir END
[?25l[?1c  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0c$put =':setlocal must NOT reset the other global value'
[?25l[?1c
 79 :setlocal must NOT reset the other global value[?25h[?0c[?25l[?1c
:[?25h[?0c$put c
[?25l[?1c 80 
 81   number[?25h[?0c[?25l[?1c
:[?25h[?0c$put d
[?25l[?1c 82 
 83   relativenumber[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c:set ssl:$put =findfile('test19.in','src/test*'):exe "cd" cwd:cd ..:$put =findfile('test19.in','test*'):$put =findfile('test19.in','testdir'):exe "cd" cwd:/^results/,$w! test.ou:q!ENDTESTresults:  number  relativenumber  number  relativenumber:setlocal must NOT reset the other global value  number  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0csetglobal nu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal rnu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir @e | setglobal nu? | redir END
[?25l[?1c  number[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal rnu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal nu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credir @f | setglobal rnu? | redir END
[?25l[?1c  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0c$put =':setglobal MUST reset the other global value'
[?25l[?1c
:setglobal MUST reset the other global value[?25h[?0c[?25l[?1c
:[?25h[?0c$put e
[?25l[?1cnumber[?25h[?0c[?25l[?1c
:[?25h[?0c$put f
[?25l[?1crelativenumber[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nu
[?25l[?1c 66 :$put =findfile('test19.in','testdir')
 67 :exe "cd" cwd
 68 :/^results/,$w! test.out
 69 :q!
 70 ENDTEST
 71 
 72 results:
 73 
 74   number
 75   relativenumber
 76 
 77   number
 78   relativenumber
 79 :setlocal must NOT reset the other global value
 80 
 81   number
 82 
 83   relativenumber
 84 :setglobal MUST reset the other global value
 85 
 86   number
 87 
 88   relativenumber[?25h[?0c[?25l[?1c:[?25h[?0cset rnu
[?25l[?1c22
 21
 20
 1
 18
 17
 16
 15
 1
 13
 12
 11
 10
  
  8
  7
  6
  5
  
  3
  2
  1
88    [?25h[?0c[?25l[?1c:[?25h[?0credir @g | setglobal nu? | redir END
[?25l[?1c  number[?25h[?0c[?25l[?1c:[?25h[?0cset nonu nornu
[?25l[?1c:$put =findfile('test19.in','testdir'):exe "cd" cwd:/^results/,$w! test.ou:q!ENDTESTresults:  number  relativenumber  number  relativenumber:setlocal must NOT reset the other global value  number  relativenumber:setglobal MUST reset the other global value  number  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0cset rnu
[?25l[?1c 22 :$put =findfile('test19.in','testdir')
 21 :exe "cd" cwd
 20 :/^results/,$w! test.out
 19 :q!
 18 ENDTEST
 17 
 16 results:
 15 
 14   number
 13   relativenumber
 12 
 11   number
 10   relativenumber
  9 :setlocal must NOT reset the other global value
  8 
  7   number
  6 
  5   relativenumber
  4 :setglobal MUST reset the other global value
  3 
  2   number
  1 
  0   relativenumber[?25h[?0c[?25l[?1c:[?25h[?0cset nu
[?25l[?1c88    [?25h[?0c[?25l[?1c:[?25h[?0credir @h | setglobal rnu? | redir END
[?25l[?1c  relativenumber[?25h[?0c[?25l[?1c:[?25h[?0c$put =':set MUST reset the other global value'
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
89  :set MUST reset the other global value[?25h[?0c[?25l[?1c
:[?25h[?0c$put g
[?25l[?1c2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1 
91    number[?25h[?0c[?25l[?1c
:[?25h[?0c$put h
[?25l[?1c2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1 
93    relativenumber[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet cwd=getcwd()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic[?25h[?0c[?25l[?1c:[?25h[?0c" Tests may be run from a shadow directory, so an extra cd needs to be done to
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" get above src/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif fnamemodify(getcwd(), ':t') != 'src' | cd ../.. | else | cd .. | endif
[?25l[?1c/«PKGBUILDDIR»[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
94  [?25h[?0c[?25l[?1c
:[?25h[?0c$put ='Testing findfile'
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
95  Testing findfile[?25h[?0c[?25l[?1c
:[?25h[?0c$put =''
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
96  [?25h[?0c[?25l[?1c
:[?25h[?0cset ssl
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =findfile('test19.in','src/test*')
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
97  src/testdir/test19.in[?25h[?0c[?25l[?1c
:[?25h[?0cexe "cd" cwd
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir[?25h[?0c[?25l[?1c:[?25h[?0ccd ..
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic[?25h[?0c[?25l[?1c:[?25h[?0c$put =findfile('test19.in','test*')
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
98  testdir/test19.in[?25h[?0c[?25l[?1c
:[?25h[?0c$put =findfile('test19.in','testdir')
[?25l[?1c
2
 21
 20
 19
 18
 17
 16
 15
 14
 13
 12
 11
 10
  9
  8
  7
  6
  5
  4
  3
  2
  1
99  testdir/test19.in[?25h[?0c[?25l[?1c
:[?25h[?0cexe "cd" cwd
[?25l[?1c/«PKGBUILDDIR»/src/vim-basic/testdir[?25h[?0c[?25l[?1c:[?25h[?0c/^results/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New] 28L, 356C written[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test90.failed test.ok test.out X* viminfo
cp test90.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test90.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test90.in" 53 lines, 1204 charactersTests for sha256() function.    vim: set ft=vim et ts=2 sw=2 :

STARTTEST
:so small.vim
:if !has('cryptv') || !exists('*sha256')
   e! test.ok
   wq! test.out
:endif
:"
:let testcase='test for empty string: '
:if sha256("") ==# 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
: let res='ok'
:else
: let res='ng'
:endif
:$put =testcase.res
:"
:let testcase='test for 1 char: '
:if sha256("a") ==# 'ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb'
: let res='ok'
:else[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for sha256() function.    vim: set ft=vim et ts=2 sw=2 :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 47 lines, 1114 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"
:let testcase='test for contains meta char: '
:if sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc39ed110ca776'
: let res='ok'
:else
: let res='ng'
:endif
:$put =testcase.res
:"
:let testcase='test for contains non-ascii char: '
:if sha256("\xde\xad\xbe\xef") ==# '5f78c33274e43fa9de5659265c1d917e25c03722dcb0b8d27db8d5feaa813953'
: let res='ok'
:else
: let res='ng'
:endif
:$put =testcase.res
:"
:/^start:/,$wq! test.out
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('cryptv') || !exists('*sha256')
[?25l[?1c
:  [?25h[?0c   e! test.ok

[?25l[?1c:  [?25h[?0c   wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:"
:let testcase='test for contains meta char: '
:if sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet testcase='test for empty string: '
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif sha256("") ==# 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b785

2b855'
[?25l[?1c:  [?25h[?0c: let res='ok'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let res='ng'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:"
:let testcase='test for contains meta char: '
:if sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc39ed110ca776'[?25h[?0c[?25l[?1c

:[?25h[?0c$put =testcase.res
[?25l[?1c
test for empty string: ok[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet testcase='test for 1 char: '
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif sha256("a") ==# 'ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785af

ee48bb'
[?25l[?1c:  [?25h[?0c: let res='ok'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let res='ng'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:let testcase='test for contains meta char: '
:if sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc39ed110ca776'
: let res='ok'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =testcase.res
[?25l[?1c
test for 1 char: ok[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet testcase='test for 3 chars: '
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif sha256("abc") ==# 'ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61

f20015ad'
[?25l[?1c:  [?25h[?0c: let res='ok'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let res='ng'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c:if sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8cc39ed110ca776'
: let res='ok'
:else[?25h[?0c[?25l[?1c
:[?25h[?0c$put =testcase.res
[?25l[?1ctest for 3 chars: ok
~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet testcase='test for contains meta char: '
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif sha256("foo\nbar") ==# '807eff6267f3f926a21d234f7b0cf867a86f47e07a532f15e8c

c39ed110ca776'
[?25l[?1c:  [?25h[?0c: let res='ok'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let res='ng'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c: let res='ok'
:else
: let res='ng'
:endif[?25h[?0c[?25l[?1c

:[?25h[?0c$put =testcase.res
[?25l[?1ctest for contains meta char: ok[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet testcase='test for contains non-ascii char: '
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif sha256("\xde\xad\xbe\xef") ==# '5f78c33274e43fa9de5659265c1d917e25c03722dcb

0b8d27db8d5feaa813953'
[?25l[?1c:  [?25h[?0c: let res='ok'

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c: let res='ng'

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c: let res='ok'
:else
: let res='ng'
:endif[?25h[?0c[?25l[?1c
:[?25h[?0c$put =testcase.res
[?25l[?1c
test for contains non-ascii char: ok[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 6 lines, 143 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test91.failed test.ok test.out X* viminfo
cp test91.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test91.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test91.in" 116 lines, 3240 charactersTests for getbufvar(), getwinvar(), gettabvar() and gettabwinvar().
vim: set ft=vim :

STARTTEST
:so small.vim
:so mbyte.vim
:"
:" Use strings to test for memory leaks.
:" First, check that in an empty window, gettabvar() returns the correct value
:let t:testvar='abcd'
:$put =string(gettabvar(1,'testvar'))
:$put =string(gettabvar(1,'testvar'))
:" Test for getbufvar()
:let b:var_num = '1234'
:let def_num = '5678'
:$put =string(getbufvar(1, 'var_num'))
:$put =string(getbufvar(1, 'var_num', def_num))
:$put =string(getbufvar(1, ''))
:$put =string(getbufvar(1, '', def_num))
:unlet b:var_num
:$put =string(getbufvar(1, 'var_num', def_num))
:$put =string(getbufvar(1, ''))
:$put =string(getbufvar(1, '', def_num))[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for getbufvar(), getwinvar(), gettabvar() and gettabwinvar().[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 109 lines, 3127 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =string(gettabwinvar(2, 3, 'var_dict', def_dict))
:$put =string(gettabwinvar(2, 3, ''))
:$put =string(gettabwinvar(2, 3, '', def_dict))
:tabnext
:3wincmd w
:unlet w:var_dict
:tabrewind
:$put =string(gettabwinvar(2, 3, 'var_dict', def_dict))
:$put =string(gettabwinvar(2, 3, ''))
:$put =string(gettabwinvar(2, 3, '', def_dict))
:$put =string(gettabwinvar(2, 9, ''))
:$put =string(gettabwinvar(2, 9, '', def_dict))
:$put =string(gettabwinvar(9, 3, ''))
:$put =string(gettabwinvar(9, 3, '', def_dict))
:unlet def_dict
:$put =string(gettabwinvar(2, 3, '&nux'))
:$put =string(gettabwinvar(2, 3, '&nux', 1))
:tabonly
:"
:/^start/,$wq! test.out
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Use strings to test for memory leaks.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" First, check that in an empty window, gettabvar() returns the correct value
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet t:testvar='abcd'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(gettabvar(1,'testvar'))
[?25l[?1c
'abcd'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(1,'testvar'))
[?25l[?1c
'abcd'[?25h[?0c[?25l[?1c
:[?25h[?0c" Test for getbufvar()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet b:var_num = '1234'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet def_num = '5678'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(getbufvar(1, 'var_num'))
[?25l[?1c
'1234'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, 'var_num', def_num))
[?25l[?1c
'1234'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, ''))
[?25l[?1c
{'var_num': '1234'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, '', def_num))
[?25l[?1c
{'var_num': '1234'}[?25h[?0c[?25l[?1c
:[?25h[?0cunlet b:var_num
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(getbufvar(1, 'var_num', def_num))
[?25l[?1c
'5678'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, ''))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, '', def_num))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(9, ''))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(9, '', def_num))
[?25l[?1c
'5678'[?25h[?0c[?25l[?1c
:[?25h[?0cunlet def_num
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(getbufvar(1, '&autoindent'))
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getbufvar(1, '&autoindent', 1))
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Open new window with forced option values
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset fileformats=unix,dos
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew ++ff=dos ++bin ++enc=iso-8859-2
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       {'var_num': '1234'}

'5678'{}''
'5678'
0test91.in [+]                                                                   [?25h[?0c[?25l[?1c:[?25h[?0clet otherff = getbufvar(bufnr('%'), '&fileformat')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet otherbin = getbufvar(bufnr('%'), '&bin')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet otherfenc = getbufvar(bufnr('%'), '&fenc')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cclose
[?25l[?1c:$put =string(gettabwinvar(9, 3, '', def_dict))
:unlet def_dict:$put =string(gettabwinvar(2, 3, '&nux')):$put =string(gettabwinvar(2, 3, '&nux', 1)):tabonly:":/^start/,$wq! test.outENDTESTstart:'abcd''abcd''1234'{'var_num': '1234'}
'5678'

{}
'''5678'

0[?25h[?0c[?25l[?1c:[?25h[?0c$put =otherff
[?25l[?1c
dos[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(otherbin)
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0c$put =otherfenc
[?25l[?1c
iso-8859-2[?25h[?0c[?25l[?1c
:[?25h[?0cunlet otherff otherbin otherfenc
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test for getwinvar()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet w:var_str = "Dance"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet def_str = "Chance"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(getwinvar(1, 'var_str'))
[?25l[?1c
'Dance'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, 'var_str', def_str))
[?25l[?1c
'Dance'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, ''))
[?25l[?1c
{'var_str': 'Dance'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, '', def_str))
[?25l[?1c
{'var_str': 'Dance'}[?25h[?0c[?25l[?1c
:[?25h[?0cunlet w:var_str
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(getwinvar(1, 'var_str', def_str))
[?25l[?1c
'Chance'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, ''))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, '', def_str))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(9, ''))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(9, '', def_str))
[?25l[?1c
'Chance'[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, '&nu'))
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(getwinvar(1, '&nu',  1))
[?25l[?1c
0[?25h[?0c[?25l[?1c
:[?25h[?0cunlet def_str
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test for gettabvar()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c + test91.in  [No Name]                                                         X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet t:var_list = [1, 2, 3]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet t:other = 777
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet def_list = [4, 5, 6, 7]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabrewind
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X{'var_num': '1234'}
'5678'
{}
{}
''
'5678'
0
0
dos
1
iso-8859-2
'Dance'
'Dance'
{'var_str': 'Dance'}
{'var_str': 'Dance'}
'Chance'
{}
{}
''
'Chance'
0
0[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, 'var_list'))
[?25l[?1c
[1, 2, 3][?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, 'var_list', def_list))
[?25l[?1c
[1, 2, 3][?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, ''))
[?25l[?1c
{'var_list': [1, 2, 3], 'other': 777}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, '', def_list))
[?25l[?1c
{'var_list': [1, 2, 3], 'other': 777}[?25h[?0c[?25l[?1c
:[?25h[?0ctablast
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cunlet t:var_list
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabrewind
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X''
'5678'
0
0
dos
1
iso-8859-2
'Dance'
'Dance'
{'var_str': 'Dance'}
{'var_str': 'Dance'}
'Chance'
{}
{}
''
'Chance'
0
0
[1, 2, 3]
[1, 2, 3]
{'var_list': [1, 2, 3], 'other': 777}
{'var_list': [1, 2, 3], 'other': 777}
[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, 'var_list', def_list))
[?25l[?1c
[4, 5, 6, 7][?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(9, ''))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(9, '', def_list))
[?25l[?1c
[4, 5, 6, 7][?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, '&nu'))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabvar(3, '&nu', def_list))
[?25l[?1c
[4, 5, 6, 7][?25h[?0c[?25l[?1c
:[?25h[?0cunlet def_list
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabonly
[?25l[?1cdos[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test for gettabwinvar()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c + test91.in  [No Name]                                                         X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabnew
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ctabprev
[?25l[?1c + test91.in  [No Name]  [No Name]                                              X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0csplit
[?25l[?1c2 [No Name]  [No Name]  X[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0csplit
[?25l[?1c + test91.in  3 [No Name]  [No Name]                                            X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                        X[?25h[?0c[?25l[?1c:[?25h[?0cvert split
[?25l[?1c4 X||||||~~~~~[No Name]                              [?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1c[No Name]                                [No Name]                               X[?25h[?0c[?25l[?1c:[?25h[?0clet w:var_dict = {'dict': 'tabwin'}
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet def_dict = {'dict2': 'newval'}
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd b
[?25l[?1c[No Name]                              [No Name]                                                                        X[?25h[?0c[?25l[?1c:[?25h[?0ctabrewind
[?25l[?1c + test91.in  4 [No Name]  [No Name]                                            X1
iso-8859-2
'Dance'
'Dance'
{'var_str': 'Dance'}
{'var_str': 'Dance'}
'Chance'
{}
{}
''
'Chance'
0
0
[1, 2, 3]
[1, 2, 3]
{'var_list': [1, 2, 3], 'other': 777}
{'var_list': [1, 2, 3], 'other': 777}
[4, 5, 6, 7]
''
[4, 5, 6, 7]
''
[4, 5, 6, 7]
[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, 'var_dict'))
[?25l[?1c
{'dict': 'tabwin'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, 'var_dict', def_dict))
[?25l[?1c
{'dict': 'tabwin'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, ''))
[?25l[?1c
{'var_dict': {'dict': 'tabwin'}}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, '', def_dict))
[?25l[?1c
{'var_dict': {'dict': 'tabwin'}}[?25h[?0c[?25l[?1c
:[?25h[?0ctabnext
[?25l[?1c + test91.in  4 [No Name]  [No Name]                                            X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ||||||~                                       
~                                       
~                                       
~                                       
~                                       
[No Name]                                ~                                      ~                                      ~                                      ~                                      ~                                      [No Name]                              ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c3wincmd w
[?25l[?1c[No Name]                              [No Name]                                                                        X[?25h[?0c[?25l[?1c:[?25h[?0cunlet w:var_dict
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabrewind
[?25l[?1c + test91.in  4 [No Name]  [No Name]                                            X{'var_str': 'Dance'}
{'var_str': 'Dance'}
'Chance'
{}
{}
''
'Chance'
0
0
[1, 2, 3]
[1, 2, 3]
{'var_list': [1, 2, 3], 'other': 777}
{'var_list': [1, 2, 3], 'other': 777}
[4, 5, 6, 7]
''
[4, 5, 6, 7]
''
[4, 5, 6, 7]
{'dict': 'tabwin'}
{'dict': 'tabwin'}
{'var_dict': {'dict': 'tabwin'}}
{'var_dict': {'dict': 'tabwin'}}
[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, 'var_dict', def_dict))
[?25l[?1c
{'dict2': 'newval'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, ''))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, '', def_dict))
[?25l[?1c
{}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 9, ''))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 9, '', def_dict))
[?25l[?1c
{'dict2': 'newval'}[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(9, 3, ''))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(9, 3, '', def_dict))
[?25l[?1c
{'dict2': 'newval'}[?25h[?0c[?25l[?1c
:[?25h[?0cunlet def_dict
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(gettabwinvar(2, 3, '&nux'))
[?25l[?1c
''[?25h[?0c[?25l[?1c
:[?25h[?0c$put =string(gettabwinvar(2, 3, '&nux', 1))
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0ctabonly
[?25l[?1c0[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 50 lines, 530 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test92.failed test.ok test.out X* viminfo
cp test92.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test92.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test92.in" 48 lines, 852 charactersvim: set ft=vim fenc=utf-8:

Tests if :mksession saves cursor columns correctly in presence of tab and
multibyte characters when fileencoding=utf-8.

STARTTEST
:so mbyte.vim
:if !has('mksession')
:  e! test.ok
:  wq! test.out
:endif
:set sessionoptions=buffers splitbelow fileencoding=utf-8
/^start:
:vsplit
j16|:split
j16|:split
j16|:split
j8|:split
j8|:split
j16|:split
j16|:split
j16|:wincmd l
/^start:[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cvim: set ft=vim fenc=utf-8:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 31 lines, 467 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTj016|3zl:split
j016|3zl:split
j08|3zl:split
j08|3zl:split
j016|3zl:split
j016|3zl:split
j016|3zl:split
:mksession! test.out
:new test.out
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out
:qa!
ENDTEST

start:
no multibyte chAracterone leaDing tab
    four leadinG spaces
twoconsecutive tabs
two     tabs    in one line
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('mksession')
[?25l[?1c
:  [?25h[?0c:  e! test.ok

[?25l[?1c:  [?25h[?0c:  wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cj016|3zl:split
j016|3zl:split
j08|3zl:split[?25h[?0c[?25l[?1c:[?25h[?0cset sessionoptions=buffers splitbelow fileencoding=utf-8
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvsplit
[?25l[?1c|
j08|3zl:split ||
j016|3zl:split|||
:mksession! test.out|
:new test.out       |
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d  |
:w! test.out                            |
:qa!        |
ENDTEST|
       |
start:|
no multibyte chAracter|
        one leaDing tab|
    four leadinG spaces|
two             consecutive tabs|tabs    in one line     |
[?25l[?1c:[?25h[?0csplit
[?25l[?1c:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out 
:qa!         
ENDTEST       
              
start:        
no multibyte chAracter
        one leaDing tab
    four leadinG spaces               
two             consecutive tabs
test92.in [+]                           
:new test.out
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out
:qa!                  
ENDTEST                
                       
start:                
no multibyte chAracter     
        one leaDing tab    
    four leadinG spaces               
two             consecutive tabs        [?25h[?0c[?25l[?1c:[?25h[?0csplit
[?25l[?1c:qa!|
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
:w! test.out|
:qa!|
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
ENDTEST                                 
                                        
start:                                  
no multibyte chAracter                  
        one leaDing tab                 
                                        
    four leadinG spaces[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|

:[?25h[?0csplit
[?25l[?1cENDTEST||
start:|
no multibyte chAracter|
test92.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1c|
start:|
no multibyte chAracter|
test92.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |
test92.in [+]                            !TESTrt:multibyte chAracterone leaDing tabfour leadinG spacestest92.in [+]                          TESTrt:multibyte chAracterone leaDing tabfour leadinG spacestest92.in [+]                          test.out!TESTrt:multibyte chAracterone leaDing tabtest92.in [+]                          [?25h[?0c[?25l[?1c!                                      TEST                                                                          rt:                                    multibyte chAracter                         one leaDing tab                                                          four leadinG spaces[?25h[?0c[?25l[?1c:qa!ENDTESTstart:no multibyte chAracter   one leaDing tab   four leadinG spaces[?25h[?0c[?25l[?1c!TESrt:multibyte chAracterone leaDing tabfour leadinG spaces[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |
test92.in [+]                            TESTrt:multibyte chAracterone leaDing tabtest92.in [+]                          TESTrt:multibyte chAracterone leaDing tabtest92.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacestest92.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacesconsecutive tabstest92.in [+]                          [?25h[?0c[?25l[?1cstart:no multibyte chAracter   one leaDing tab   four leadinG spacestwo   consecutive tabs[?25h[?0c[?25l[?1crt:multibyte chAracterone leaDing tabfour leadinG spaces   consecutive tabs[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |
test92.in [+]                            TESTrt:multibyte chAractertest92.in [+]                          rt:multibyte chAracterone leaDing tabtest92.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacestest92.in [+]                          one leaDing tabfour leadinG spacesconsecutive tabstest92.in [+]                          one leaDing tabfour leadinG spacesconsecutive tabstabs    in one linetest92.in [+]                          [?25h[?0c[?25l[?1c   one leaDing tab   four leadinG spacestwo   consecutive tabstwo     tabs    in one line[?25h[?0c[?25l[?1cone leaDing tabfour leadinG spaces   consecutive tabs     tabs    in one line[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

:[?25h[?0cmksession! test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew test.out
[?25l[?1c"test.out" 282 lines, 5850 charactersstart:|
no multibyte chAracter|
test92.in [+]                           |
no multibyte chAracter|one leaDing tab|
test92.in [+]                           |one leaDing tab|
    four leadinG spaces|
test92.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test92.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test92.in [+]                           |
two     tabs    in one line|
test92.in [+]                           |
test92.in [+]                           |

:[?25h[?0cv/\(^ *normal! 0\|^ *exe 'normal!\)/d
[?25l[?1c256 fewer lines  normal! 016|[+][?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" 26 lines, 611 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test93.failed test.ok test.out X* viminfo
cp test93.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test93.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test93.in" 48 lines, 843 charactersvim: set ft=vim fenc=latin1:

Tests if :mksession saves cursor columns correctly in presence of tab and
multibyte characters when fileencoding=latin1.

STARTTEST
:so mbyte.vim
:if !has('mksession')
:  e! test.ok
:  wq! test.out
:endif
:set sessionoptions=buffers splitbelow fileencoding=latin1
/^start:
:vsplit
j16|:split
j16|:split
j16|:split
j8|:split
j8|:split
j16|:split
j16|:split
j16|:wincmd l
/^start:[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cvim: set ft=vim fenc=latin1:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 31 lines, 468 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTj016|3zl:split
j016|3zl:split
j08|3zl:split
j08|3zl:split
j016|3zl:split
j016|3zl:split
j016|3zl:split
:mksession! test.out
:new test.out
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out
:qa!
ENDTEST

start:
no multibyte chAracterone leaDing tab
    four leadinG spaces
twoconsecutive tabs
two     tabs    in one line
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('mksession')
[?25l[?1c
:  [?25h[?0c:  e! test.ok

[?25l[?1c:  [?25h[?0c:  wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cj016|3zl:split
j016|3zl:split
j08|3zl:split[?25h[?0c[?25l[?1c:[?25h[?0cset sessionoptions=buffers splitbelow fileencoding=latin1
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvsplit
[?25l[?1c|
j08|3zl:split ||
j016|3zl:split|||
:mksession! test.out|
:new test.out       |
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d  |
:w! test.out                            |
:qa!        |
ENDTEST|
       |
start:|
no multibyte chAracter|
        one leaDing tab|
    four leadinG spaces|
two             consecutive tabs|tabs    in one line     |
[?25l[?1c:[?25h[?0csplit
[?25l[?1c:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out 
:qa!         
ENDTEST       
              
start:        
no multibyte chAracter
        one leaDing tab
    four leadinG spaces               
two             consecutive tabs
test93.in [+]                           
:new test.out
:v/\(^ *normal! 0\|^ *exe 'normal!\)/d
:w! test.out
:qa!                  
ENDTEST                
                       
start:                
no multibyte chAracter     
        one leaDing tab 
    four leadinG spaces       
two             consecutive tab[?25h[?0c[?25l[?1c:[?25h[?0csplit
[?25l[?1c:qa!|
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
:w! test.out|
:qa!|
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
ENDTEST                                 
                                        
start:                                  
no multibyte chAracter                  
        one leaDing tab                 
                                        
    four leadinG spaces[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |
ENDTEST||
start:|
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|

:[?25h[?0csplit
[?25l[?1cENDTEST||
start:|
no multibyte chAracter|
test93.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1c|
start:|
no multibyte chAracter|
test93.in [+]                           |
start:|
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |
test93.in [+]                            !TESTrt:multibyte chAracterone leaDing tabfour leadinG spacestest93.in [+]                          TESTrt:multibyte chAracterone leaDing tabfour leadinG spacestest93.in [+]                          test.out!TESTrt:multibyte chAracterone leaDing tabtest93.in [+]                          [?25h[?0c[?25l[?1c!                                      TEST                                                                          rt:                                    multibyte chAracter                         one leaDing tab                                                          four leadinG spaces[?25h[?0c[?25l[?1c:qa!ENDTESTstart:no multibyte chAracter   one leaDing tab   four leadinG spaces[?25h[?0c[?25l[?1c!TESrt:multibyte chAracterone leaDing tabfour leadinG spaces[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |
test93.in [+]                            TESTrt:multibyte chAracterone leaDing tabtest93.in [+]                          TESTrt:multibyte chAracterone leaDing tabtest93.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacestest93.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacesconsecutive tabstest93.in [+]                          [?25h[?0c[?25l[?1cstart:no multibyte chAracter   one leaDing tab   four leadinG spacestwo   consecutive tabs[?25h[?0c[?25l[?1crt:multibyte chAracterone leaDing tabfour leadinG spaces   consecutive tabs[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |
test93.in [+]                            TESTrt:multibyte chAractertest93.in [+]                          rt:multibyte chAracterone leaDing tabtest93.in [+]                          rt:multibyte chAracterone leaDing tabfour leadinG spacestest93.in [+]                          one leaDing tabfour leadinG spacesconsecutive tabstest93.in [+]                          one leaDing tabfour leadinG spacesconsecutive tabstabs    in one linetest93.in [+]                          [?25h[?0c[?25l[?1c   one leaDing tab   four leadinG spacestwo   consecutive tabstwo     tabs    in one line[?25h[?0c[?25l[?1cone leaDing tabfour leadinG spaces   consecutive tabs     tabs    in one line[?25h[?0c[?25l[?1c

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

:[?25h[?0csplit
[?25l[?1cstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

:[?25h[?0cmksession! test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew test.out
[?25l[?1c"test.out" 282 lines, 5850 charactersstart:|
no multibyte chAracter|
test93.in [+]                           |
no multibyte chAracter|one leaDing tab|
test93.in [+]                           |one leaDing tab|
    four leadinG spaces|
test93.in [+]                           |
    four leadinG spaces|
twoconsecutive tabs|
test93.in [+]                           |
twoconsecutive tabs|
two     tabs    in one line|
test93.in [+]                           |
two     tabs    in one line|
test93.in [+]                           |
test93.in [+]                           |

:[?25h[?0cv/\(^ *normal! 0\|^ *exe 'normal!\)/d
[?25l[?1c256 fewer lines  normal! 016|[+][?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" 26 lines, 611 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test94.failed test.ok test.out X* viminfo
cp test94.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test94.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test94.in" 256 lines, 4824 charactersTest for Visual mode and operators

Tests for the two kinds of operations: Those executed with Visual mode
followed by an operator and those executed via Operator-pending mode. Also
part of the test are mappings, counts, and repetition with the . command.

Test cases:
- Visual modes (v V CTRL-V) followed by an operator; count; repeating
- Visual mode maps; count; repeating
  - Simple
  - With an Ex command (custom text object)
- Operator-pending mode maps
  - Simple
  - With Ex command moving the cursor
  - With Ex command and Visual selection (custom text object)
- Patch 7.3.879: Properly abort Ex command in Operator-pending mode

STARTTEST
:so small.vim
:set enc=utf-8 nocp viminfo+=nviminfo
:
:" User functions
:function MoveToCap()[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for Visual mode and operators[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 211 lines, 3837 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTkv3lyjv3lpgvcxxx^[
:$put ='---'
:
:$put =''
:$put ='gv in exclusive select mode without operation'
:$put ='zzz '
:set selection=exclusive
0v3l^[gvcxxx^[
:$put ='---'
:/^start:/+2,$w! test.out
:q!
ENDTEST

start:

apple banana cherry

line 1 line 1
line 2 line 2
line 3 line 3
line 4 line 4
line 5 line 5
line 6 line 6[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset enc=utf-8 nocp viminfo+=nviminfo
[?25l[?1ckv3lyjv3lpgvcxxx^[
:$put ='---'
:
:$put =''
:$put ='gv in exclusive select mode without operation'
:$put ='zzz '
:set selection=exclusive
0v3l^[gvcxxx^[
:$put ='---'
:/^start:/+2,$w! test.out
:q!
ENDTEST

start:

apple banana cherry

line 1 line 1
line 2 line 2
line 3 line 3
line 4 line 4
line 5 line 5
line 6 line 6[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" User functions
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction MoveToCap()
[?25l[?1c
:  [?25h[?0c:  call search('\u', 'W')

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1ckv3lyjv3lpgvcxxx^[
:$put ='---'[?25h[?0c[?25l[?1c:[?25h[?0cfunction SelectInCaps()
[?25l[?1c
:  [?25h[?0c:  let [line1, col1] = searchpos('\u', 'bcnW')

[?25l[?1c:  [?25h[?0c:  let [line2, col2] = searchpos('.\u', 'nW')

[?25l[?1c:  [?25h[?0c:  call setpos("'<", [0, line1, col1, 0])

[?25l[?1c:  [?25h[?0c:  call setpos("'>", [0, line2, col2, 0])

[?25l[?1c:  [?25h[?0c:  normal! gv

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1ckv3lyjv3lpgvcxxx^[
:$put ='---'
:
:$put =''
:$put ='gv in exclusive select mode without operation'
:$put ='zzz '[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Visual modes followed by operator
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^apple
[?25l[?1c[?25h[?0ca[?25l[?1c-- VISUAL --[?25h[?0c[?25l[?1cp[?25h[?0c[?25l[?1cle banana cherry[?25h[?0c[?25l[?1c banana cherry[?25h[?0c [?25l[?1cbanan-- VISUAL --[?25h[?0c[?25l[?1c
a  cherry[?25h[?0c[?25l[?1cy[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^line 1
[?25l[?1c[?25h[?0c[?25l[?1cline 1 line 1 -- VISUAL LINE --[?25h[?0c[?25l[?1cINSERT --newline[?25h[?0c[?25l[?1c-- INSERT --newline[?25h[?0c[?25l[?1c
line 3 line 3 
line 4 line 4 


-- VISUAL LINE --[?25h[?0c[?25l[?1cline 5 line 5line 6 line 6xxxxxxxxxxxxx[?25h[?0c[?25l[?1cxxxxxxxxxxxxx
xxxxxxxxxxxxx[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^xxxx
[?25l[?1c[?25h[?0c[?25l[?1c


-- VISUAL BLOCK --[?25h[?0c[?25l[?1cx
[?25h[?0c[?25l[?1cx
x[?25h[?0c[?25l[?1cINSERT --  
  [?25h[?0c [?25l[?1c


-- INSERT --  
    [?25h[?0c [?25l[?1c
xxxx
    xxxx
xxxxxxxx
xxxxxxxxxxxxx
-- VISUAL BLOCK --[?25h[?0c[?25l[?1c
-- INSERT ------
    ----
xxxx----
xxxx----[?25h[?0c-[?25l[?1c-- INSERT ------------------[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Visual mode maps (movement and text object)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvnoremap W /\u/s-1<CR>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvnoremap iW :<C-U>call SelectInCaps()<CR>
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Kiwi
[?25l[?1cKiwiRaspberryDateWatermelonPeach[?25h[?0c[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1c/\u/s-1
Kiw[?25h[?0c[?25l[?1c
-- INSERT --NoRaspberryDateWatermelonPeach[?25h[?0co[?25l[?1c
-- INSERT --NoberryDateWatermelonPeach[?25h[?0coberry[?25l[?1cDateWat
-- VISUAL --[?25h[?0c[?25l[?1crmelonPeach[?25h[?0c[?25l[?1cach[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Jambu
[?25l[?1c
JambuRambutanBananaTangerineMango[?25h[?0cJa[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1c:'<,'>call SelectInCaps()
Jamb[?25h[?0c[?25l[?1c
-- INSERT ---RambutanBananaTangerineMango[?25h[?0c-[?25l[?1c
-- INSERT ---tanBananaTangerineMango[?25h[?0c-[?25l[?1ctanBanana
-- VISUAL --[?25h[?0c[?25l[?1c
--angerineMango[?25h[?0ca[?25l[?1cgo[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Operator-pending mode maps (movement and text object)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conoremap W /\u/<CR>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conoremap <Leader>W :<C-U>call MoveToCap()<CR>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conoremap iW :<C-U>call SelectInCaps()<CR>
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Pineapple
[?25l[?1cPineappleQuinceLoganberryOrangeGrapefruitKiwiZ[?25h[?0c[?25l[?1c
/\u/
-QuinceLoganberryOrangeGrapefruitKiwiZ[?25h[?0c-[?25l[?1c
/\u/
-- INSERT ---LoganberryOrangeGrapefruitKiwiZ[?25h[?0c-[?25l[?1c
/\u/
-- INSERT ---GrapefruitKiwiZ[?25h[?0c-[?25l[?1c
/\u/
-- INSERT ---Z[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Juniper
[?25l[?1c
JuniperDurianZ[?25h[?0c[?25l[?1c
:call MoveToCap()
Whavcre
[?25h[?0c[?25l[?1c:call MoveToCap()
Qhevna[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Lemon
[?25l[?1c
LemonNectarineZ[?25h[?0c[?25l[?1c
:call SelectInCaps()
[?25h[?0c[?25l[?1cLemonLemonNectarineZ
Lemo[?25h[?0cn[?25l[?1c:call SelectInCaps()
NewNectarineZ[?25h[?0cwNecta[?25l[?1c
:call SelectInCaps()
wZ[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Patch 7.3.879: Properly abort Operator-pending mode for "dv:<Esc>" etc.
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^zzzz
[?25l[?1czzzz[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset noma | let v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1cE21: Cannot make changes, 'modifiable' is off[?25h[?0c[?25l[?1c:[?25h[?0cset ma | put = v:errmsg =~# '^E21' ? 'ok' : 'failed'
[?25l[?1c
ok[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0cset noma | let v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0cset ma | put = v:errmsg =~# '^E21' ? 'failed' : 'ok'
[?25l[?1c
ok[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise visual mode: replace last line'
[?25l[?1c
characterwise visual mode: replace last line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0clet @" = 'x'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1ca[?25h[?0c[?25l[?1cx[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='v:errmsg='.v:errmsg
[?25l[?1c
v:errmsg=[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise visual mode: delete middle line'
[?25l[?1c
characterwise visual mode: delete middle line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c


-- VISUAL --[?25h[?0c[?25l[?1ca[?25h[?0c[?25l[?1cb
c
~                                                                               [?25h[?0c
[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise visual mode: delete middle two line'
[?25l[?1c
characterwise visual mode: delete middle two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c


-- VISUAL --[?25h[?0c[?25l[?1ca 
[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cc~                                                                               ~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='characterwise visual mode: delete last line'
[?25l[?1c
characterwise visual mode: delete last line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1cc[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise visual mode: delete last two line'
[?25l[?1c
characterwise visual mode: delete last two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c

-- VISUAL --[?25h[?0c[?25l[?1cb 
[?25h[?0c[?25l[?1cc[?25h[?0c[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Select mode maps
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csnoremap <lt>End> <End>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csnoremap <lt>Down> <Down>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csnoremap <lt>Del> <Del>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise select mode: delete middle line'
[?25l[?1c
characterwise select mode: delete middle line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c


-- SELECT --[?25h[?0c[?25l[?1ca[?25h[?0c[?25l[?1cb
c
~                                                                               [?25h[?0c
[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise select mode: delete middle two line'
[?25l[?1c
characterwise select mode: delete middle two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c


-- SELECT --[?25h[?0c[?25l[?1ca 
[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1cc~                                                                               ~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='characterwise select mode: delete last line'
[?25l[?1c
characterwise select mode: delete last line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c
-- SELECT --[?25h[?0c[?25l[?1cc[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='characterwise select mode: delete last two line'
[?25l[?1c
characterwise select mode: delete last two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1c

-- SELECT --[?25h[?0c[?25l[?1cb 
[?25h[?0c[?25l[?1cc[?25h[?0c[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='linewise select mode: delete middle line'
[?25l[?1c
linewise select mode: delete middle line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1ca 


-- SELECT LINE --[?25h[?0c[?25l[?1cbc
~                                                                               [?25h[?0c
[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='linewise select mode: delete middle two line'
[?25l[?1c
linewise select mode: delete middle two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1ca 


-- SELECT LINE --[?25h[?0c[?25l[?1ca
b 
[?25h[?0c[?25l[?1cc~                                                                               ~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='linewise select mode: delete last line'
[?25l[?1c
linewise select mode: delete last line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1cc 
-- SELECT LINE --[?25h[?0c[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='linewise select mode: delete last two line'
[?25l[?1c
linewise select mode: delete last two line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='a'
[?25l[?1c
a[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='b'
[?25l[?1c
b[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='c'
[?25l[?1c
c[?25h[?0c[?25l[?1cb 

-- SELECT LINE --[?25h[?0c[?25l[?1cb
c 
[?25h[?0c[?25l[?1c~                                                                               ~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0c$put ='---'
[?25l[?1c---[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='v_p: replace last character with line register at middle line'
[?25l[?1c
v_p: replace last character with line register at middle line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='aaa'
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='bbb'
[?25l[?1c
bbb[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='ccc'
[?25l[?1c
ccc[?25h[?0c[?25l[?1c
:[?25h[?0c-2yank
[?25l[?1c[?25h[?0cbb[?25l[?1c

-- VISUAL --[?25h[?0c[?25l[?1caaa[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1cccc
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='v_p: replace last character with line register at middle line selecting

newline'
[?25l[?1clinewise select mode: delete middle two line
c---linewise select mode: delete last line
ab
---linewise select mode: delete last two line
a---v_p: replace last character with line register at middle line
aaabbaaaccc
---v_p: replace last character with line register at middle line selecting newline[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='aaa'
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='bbb'
[?25l[?1c
bbb[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='ccc'
[?25l[?1c
ccc[?25h[?0c[?25l[?1c
:[?25h[?0c-2yank
[?25l[?1c[?25h[?0cbb[?25l[?1c

-- VISUAL --[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1caaa[?25h[?0c[?25l[?1c
ccc
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='v_p: replace last character with line register at last line'
[?25l[?1c
v_p: replace last character with line register at last line[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='aaa'
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='bbb'
[?25l[?1c
bbb[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='ccc'
[?25l[?1c
ccc[?25h[?0c[?25l[?1c
:[?25h[?0c-2yank
[?25l[?1c[?25h[?0ccc[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1c
aaa[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='v_p: replace last character with line register at last line selecting n

ewline'
[?25l[?1caaa
bbaaaccc
---v_p: replace last character with line register at middle line selecting newline
aaabbaaa
ccc
---v_p: replace last character with line register at last line
aaabbb
ccaaa---v_p: replace last character with line register at last line selecting newline[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='aaa'
[?25l[?1c
aaa[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='bbb'
[?25l[?1c
bbb[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='ccc'
[?25l[?1c
ccc[?25h[?0c[?25l[?1c
:[?25h[?0c-2yank
[?25l[?1c[?25h[?0ccc[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1cc[?25h[?0c[?25l[?1c
aaa[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='gv in exclusive select mode after operation'
[?25l[?1c
gv in exclusive select mode after operation[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='zzz '
[?25l[?1c
zzz[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='äà '
[?25l[?1c
äÃ[?25h[?0c[?25l[?1c
:[?25h[?0cset selection=exclusive
[?25l[?1c[?25h[?0c[?25l[?1c

-- VISUAL --[?25h[?0c[?25l[?1czzz[?25h[?0c[?25l[?1c
zzz[?25h[?0c
[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1cäÃ[?25h[?0c[?25l[?1c
zzz[?25h[?0c[?25l[?1c
-- VISUAL --zzz[?25h[?0c[?25l[?1cINSERTxxx[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='gv in exclusive select mode without operation'
[?25l[?1c
gv in exclusive select mode without operation[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='zzz '
[?25l[?1c
zzz[?25h[?0c[?25l[?1c
:[?25h[?0cset selection=exclusive
[?25l[?1c[?25h[?0c[?25l[?1c
-- VISUAL --[?25h[?0c[?25l[?1czzz[?25h[?0c[?25l[?1c
zzz[?25h[?0c[?25l[?1c
-- VISUAL --zzz[?25h[?0c[?25l[?1cINSERTxxx[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='---'
[?25l[?1c
---[?25h[?0c[?25l[?1c
:[?25h[?0c/^start:/+2,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New] 123L, 1328C written[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test95.failed test.ok test.out X* viminfo
cp test95.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test95.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test95.in" 141 lines, 5827 charactersTest for regexp patterns with multi-byte support, using utf-8.
See test64 for the non-multi-byte tests.

A pattern that gives the expected result produces OK, so that we know it was
actually tried.

STARTTEST
:so small.vim
:so mbyte.vim
:set nocp encoding=utf-8 viminfo+=nviminfo nomore
:" tl is a List of Lists with:
:"    2: test auto/old/new  0: test auto/old  1: test auto/new
:"    regexp pattern
:"    text to test the pattern on
:"    expected match (optional)
:"    expected submatch 1 (optional)
:"    expected submatch 2 (optional)
:"    etc.
:"  When there is no match use only the first two items.
:let tl = []
:
:"""" Multi-byte character tests. These will fail unless vim is compiled
:"""" with Multibyte (FEAT_MBYTE) or BIG/HUGE features.[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for regexp patterns with multi-byte support, using utf-8.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 131 lines, 5590 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:endif
:      endfor
:      unlet i
:    endif
:  endfor
:endfor
:unlet t tl e l
:
:" check that 'ambiwidth' does not change the meaning of \p
:set regexpengine=1 ambiwidth=single
:$put ='eng 1 ambi single: ' . match(\"\u00EC\", '\p')
:set regexpengine=1 ambiwidth=double
:$put ='eng 1 ambi double: ' . match(\"\u00EC\", '\p')
:set regexpengine=2 ambiwidth=single
:$put ='eng 2 ambi single: ' . match(\"\u00EC\", '\p')
:set regexpengine=2 ambiwidth=double
:$put ='eng 2 ambi double: ' . match(\"\u00EC\", '\p')
:
:/\%#=1^Results/,$wq! test.out
ENDTEST

Results of test95:
~                                                                               [?25h[?0c
[?25l[?1c


:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp encoding=utf-8 viminfo+=nviminfo nomore
[?25l[?1c:endif
:      endfor
:      unlet i
:    endif
:  endfor
:endfor
:unlet t tl e l
:
:" check that 'ambiwidth' does not change the meaning of \p
:set regexpengine=1 ambiwidth=single
:$put ='eng 1 ambi single: ' . match(\"\u00EC\", '\p')
:set regexpengine=1 ambiwidth=double
:$put ='eng 1 ambi double: ' . match(\"\u00EC\", '\p')
:set regexpengine=2 ambiwidth=single
:$put ='eng 2 ambi single: ' . match(\"\u00EC\", '\p')
:set regexpengine=2 ambiwidth=double
:$put ='eng 2 ambi double: ' . match(\"\u00EC\", '\p')
:
:/\%#=1^Results/,$wq! test.out
ENDTEST

Results of test95:
~                                                                               [?25h[?0c[?25l[?1c


:[?25h[?0c" tl is a List of Lists with:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    2: test auto/old/new  0: test auto/old  1: test auto/new
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    regexp pattern
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    text to test the pattern on
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected match (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected submatch 1 (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    expected submatch 2 (optional)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"    etc.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"  When there is no match use only the first two items.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet tl = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Multi-byte character tests. These will fail unless vim is compiled
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" with Multibyte (FEAT_MBYTE) or BIG/HUGE features.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[[:alpha:][=a=]]\+', '879 aiaãâaiuvna ', 'aiaãâaiuvna'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[[=a=]]\+', 'ddaãâbcd', 'aãâ'])^I^I^I^I^I^I^I^I" equivalence

classes
[?25l[?1c:endif[?25h[?0c[?25l[?1c


:[?25h[?0ccall add(tl, [2, '[^ม ]\+', 'มม oijasoifjos ifjoisj f osij j มมมมม abcd', 'oij

asoifjos'])
[?25l[?1c:endif[?25h[?0c[?25l[?1c


:[?25h[?0ccall add(tl, [2, ' [^ ]\+', 'start มabcdม ', ' มabcdม'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[ม[:alpha:][=a=]]\+', '879 aiaãมâมaiuvna ', 'aiaãมâมaiuvna']

)[?25l[?1c:endif[?25h[?0c[?25l[?1c


:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" this is not a normal "i" but 0xec
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\p\+', 'ìa', 'ìa'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\p*', 'aあ', 'aあ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Test recognition of some character classes
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\i\+', '&*¨xx ', 'xx'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '\f\+', '&*<9f>fname ', 'fname'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Test composing character matching
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.ม', 'xมม่x yมy', 'yม'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '.มม่', 'xมม่x yมy', 'xมม่'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9", " x\u05b9 ", "x\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05b9", " x\u05b9 ", "x\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9\u05bb", " x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05b9\u05bb", " x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05bb\u05b9", " x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05bb\u05b9", " x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9", " y\u05bb x\u05b9 ", "x\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05b9", " y\u05bb x\u05b9 ", "x\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9", " y\u05bb\u05b9 x\u05b9 ", "y\u05bb\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05b9", " y\u05bb\u05b9 x\u05b9 ", "y\u05bb\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [1, "\u05b9\u05bb", " y\u05b9 x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, ".\u05b9\u05bb", " y\u05bb x\u05b9\u05bb ", "x\u05b9\u05bb"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "a", "ca\u0300t"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "ca", "ca\u0300t"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "a\u0300", "ca\u0300t", "a\u0300"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'a\%C', "ca\u0300t", "a\u0300"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ca\%C', "ca\u0300t", "ca\u0300"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ca\%Ct', "ca\u0300t", "ca\u0300t"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Test \Z
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ú\Z', 'x'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'יהוה\Z', 'יהוה', 'יהוה'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ייְהווָה\Z', 'יהוה', 'יהוה'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'יהוה\Z', 'ייְהווָה', 'ייְהווָה'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ייְהווָה\Z', 'ייְהווָה', 'ייְהווָה'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, 'ייְ\Z', 'ווְייַ', 'ייַ'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "ק\u200d\u05b9x\\Z", "xק\u200d\u05b9xy", "ק\u200d\u05b9x"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "ק\u200d\u05b9x\\Z", "xק\u200dxy", "ק\u200dx"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "ק\u200dx\\Z", "xק\u200d\u05b9xy", "ק\u200d\u05b9x"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "ק\u200dx\\Z", "xק\u200dxy", "ק\u200dx"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9\\Z", "xyz"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\\Z\u05b9", "xyz"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\u05b9\\Z", "xy\u05b9z", "y\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, "\\Z\u05b9", "xy\u05b9z", "y\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [1, "\u05b9\\+\\Z", "xy\u05b9z\u05b9 ", "y\u05b9z\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [1, "\\Z\u05b9\\+", "xy\u05b9z\u05b9 ", "y\u05b9z\u05b9"])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Combining different tests and features
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tl, [2, '[^[=a=]]\+', 'ddaãâbcd', 'dd'])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"""" Run the tests
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor t in tl
[?25l[?1c
:  [?25h[?0c:  let re = t[0]

[?25l[?1c:  [?25h[?0c:  let pat = t[1]

[?25l[?1c:  [?25h[?0c:  let text = t[2]

[?25l[?1c:  [?25h[?0c:  let matchidx = 3

[?25l[?1c:  [?25h[?0c:  for engine in [0, 1, 2]

[?25l[?1c:    [?25h[?0c:    if engine == 2 && re == 0 || engine == 1 && re == 1

[?25l[?1c:      [?25h[?0c:      continue

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    let &regexpengine = engine

[?25l[?1c:    [?25h[?0c:    try

[?25l[?1c:      [?25h[?0c:      let l = matchlist(text, pat)

[?25l[?1c:      [?25h[?0c:    catch

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", caused an exception: \"' . v:exception . '\"'

[?25l[?1c:      [?25h[?0c:    endtry

[?25l[?1c:    [?25h[?0c:" check the match itself

[?25l[?1c:    [?25h[?0c:    if len(l) == 0 && len(t) > matchidx

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", did not match, expected: \"' . t[matchidx] . '\"'

[?25l[?1c:      [?25h[?0c:    elseif len(l) > 0 && len(t) == matchidx

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te

xt . '\", match: \"' . l[0] . '\", expected no match'

[?25l[?1c:      [?25h[?0c:    elseif len(t) > matchidx && l[0] != t[matchidx]

[?25l[?1c:      [?25h[?0c:      $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . te
t . '\", match: \"' . l[0] . '\", expected: \"' . t[matchidx] . '\"'

[?25l[?1c:      [?25h[?0c:    else

[?25l[?1c:      [?25h[?0c:      $put ='OK ' . engine . ' - ' . pat

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:    if len(l) > 0

[?25l[?1c:      [?25h[?0c:"   check all the nine submatches

[?25l[?1c:      [?25h[?0c:      for i in range(1, 9)

[?25l[?1c:[?25h[?0c:        if len(t) <= matchidx + i

[?25l[?1c:[?25h[?0c:          let e = ''

[?25l[?1c:[?25h[?0c:        else

[?25l[?1c:[?25h[?0c:          let e = t[matchidx + i]

[?25l[?1c:[?25h[?0c:        endif

[?25l[?1c:[?25h[?0c:        if l[i] != e

[?25l[?1c:[?25h[?0c:          $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: 
"' . text . '\", submatch ' . i . ': \"' . l[i] . '\", expected: \"' . e . '\"'

[?25l[?1c:[?25h[?0c:        endif

[?25l[?1c:[?25h[?0c:      endfor

[?25l[?1c:      [?25h[?0c:      unlet i

[?25l[?1c:      [?25h[?0c:    endif

[?25l[?1c:    [?25h[?0c:  endfor

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cOK 2 - ק<200d>x\Z
OK 0 - ק<200d>x\Z
OK 1 - ק<200d>x\Z
OK 2 - ק<200d>x\Z
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\+\Z
OK 2 - ֹ\+\Z
OK 0 - \Zֹ\+
OK 2 - \Zֹ\+
OK 0 - [^[=a=]]\+
OK 1 - [^[=a=]]\+
OK 2 - [^[=a=]]\+
[?25h[?0c[?25l[?1c
:[?25h[?0cunlet t tl e l
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" check that 'ambiwidth' does not change the meaning of \p
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset regexpengine=1 ambiwidth=single
[?25l[?1cOK 2 - ק<200d>x\Z
OK 0 - ק<200d>x\Z
OK 1 - ק<200d>x\Z
OK 2 - ק<200d>x\Z
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\+\Z
OK 2 - ֹ\+\Z
OK 0 - \Zֹ\+
OK 2 - \Zֹ\+
OK 0 - [^[=a=]]\+
OK 1 - [^[=a=]]\+
OK 2 - [^[=a=]]\+
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='eng 1 ambi single: ' . match(\"\u00EC\", '\p')
[?25l[?1c
eng 1 ambi single: 0[?25h[?0c[?25l[?1c
:[?25h[?0cset regexpengine=1 ambiwidth=double
[?25l[?1cOK 0 - ק<200d>x\Z
OK 1 - ק<200d>x\Z
OK 2 - ק<200d>x\Z
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\+\Z
OK 2 - ֹ\+\Z
OK 0 - \Zֹ\+
OK 2 - \Zֹ\+
OK 0 - [^[=a=]]\+
OK 1 - [^[=a=]]\+
OK 2 - [^[=a=]]\+
eng 1 ambi single: 0
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='eng 1 ambi double: ' . match(\"\u00EC\", '\p')
[?25l[?1c
eng 1 ambi double: 0[?25h[?0c[?25l[?1c
:[?25h[?0cset regexpengine=2 ambiwidth=single
[?25l[?1cOK 1 - ק<200d>x\Z
OK 2 - ק<200d>x\Z
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\+\Z
OK 2 - ֹ\+\Z
OK 0 - \Zֹ\+
OK 2 - \Zֹ\+
OK 0 - [^[=a=]]\+
OK 1 - [^[=a=]]\+
OK 2 - [^[=a=]]\+
eng 1 ambi single: 0
eng 1 ambi double: 0
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='eng 2 ambi single: ' . match(\"\u00EC\", '\p')
[?25l[?1c
eng 2 ambi single: 0[?25h[?0c[?25l[?1c
:[?25h[?0cset regexpengine=2 ambiwidth=double
[?25l[?1cOK 2 - ק<200d>x\Z
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\Z
OK 1 - ֹ\Z
OK 2 - ֹ\Z
OK 0 - \Zֹ
OK 1 - \Zֹ
OK 2 - \Zֹ
OK 0 - ֹ\+\Z
OK 2 - ֹ\+\Z
OK 0 - \Zֹ\+
OK 2 - \Zֹ\+
OK 0 - [^[=a=]]\+
OK 1 - [^[=a=]]\+
OK 2 - [^[=a=]]\+
eng 1 ambi single: 0
eng 1 ambi double: 0
eng 2 ambi single: 0
[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='eng 2 ambi double: ' . match(\"\u00EC\", '\p')
[?25l[?1c
eng 2 ambi double: 0[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/\%#=1^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New] 140L, 2022C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test96.failed test.ok test.out X* viminfo
cp test96.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test96.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test96.in" 142 lines, 3330 charactersThis will test for problems in quickfix:
A. incorrectly copying location lists which caused the location list to show a
   different name than the file that was actually being displayed.
B. not reusing the window for which the location list window is opened but
   instead creating new windows.
C. make sure that the location list window is not reused instead of the window
   it belongs to.

Note: to debug a problem comment out the last ":b 1" in a test and testing will
stop at this point.

STARTTEST
:so small.vim
: enew
: w! test.out
: b 1
: " Set up the test environment:
: function! ReadTestProtocol(name)
:   let base = substitute(a:name, '\v^test://(.*)%(\.[^.]+)?', '\1', '')
:   let word = substitute(base, '\v(.*)\..*', '\1', '')
:
:   setl modifiable
:   setl noreadonly[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cThis will test for problems in quickfix:[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 39 lines, 1123 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST: let words = [ "foo", "bar", "baz", "quux", "shmoo", "spam", "eggs" ]
:
: let qflist = []
: for word in words
:   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file ' . word . '.txt', })
:   " NOTE: problem 1:
:   " intentionally not setting 'lnum' so that the quickfix entries are not
:   " valid
:   call setloclist(0, qflist, ' ')
: endfor
ENDTEST

Test A:
STARTTEST
:lrewind
:enew
:lopen
:lnext
:lnext
:lnext
:lnext
:vert split[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c enew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c w! test.out
[?25l[?1c"test.out" [New File] 0 lines, 0 characters written[?25h[?0c[?25l[?1c:[?25h[?0c b 1
[?25l[?1c"test96.in" 142 lines, 3330 characters:
: let qflist = []: for word in words:   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file ' . word . '.txt', }):   " NOTE: problem 1::   " intentionally not setting 'lnum' so that the quickfix entries are not:   " valid:   call setloclist(0, qflist, ' '): endforENDTESTTest A:STARTTEST:lrewind:enew:lopen:lnext:lnext:lnext:lnext:vert split:wincmd L[?25h[?0c[?25l[?1c:[?25h[?0c " Set up the test environment:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c function! ReadTestProtocol(name)
[?25l[?1c
:  [?25h[?0c:   let base = substitute(a:name, '\v^test://(.*)%(\.[^.]+)?', '\1', '')

[?25l[?1c:  [?25h[?0c:   let word = substitute(base, '\v(.*)\..*', '\1', '')

[?25l[?1c:  [?25h[?0c:

[?25l[?1c:  [?25h[?0c:   setl modifiable

[?25l[?1c:  [?25h[?0c:   setl noreadonly

[?25l[?1c:  [?25h[?0c:   setl noswapfile

[?25l[?1c:  [?25h[?0c:   setl bufhidden=delete

[?25l[?1c:  [?25h[?0c:   %del _

[?25l[?1c:  [?25h[?0c:   " For problem 2:

[?25l[?1c:  [?25h[?0c:   " 'buftype' has to be set to reproduce the constant opening of new windo

ws
[?25l[?1c:  [?25h[?0c:   setl buftype=nofile

[?25l[?1c:  [?25h[?0c:

[?25l[?1c:  [?25h[?0c:   call setline(1, word)

[?25l[?1c:  [?25h[?0c:

[?25l[?1c:  [?25h[?0c:   setl nomodified

[?25l[?1c:  [?25h[?0c:   setl nomodifiable

[?25l[?1c:  [?25h[?0c:   setl readonly

[?25l[?1c:  [?25h[?0c:   exe 'doautocmd BufRead ' . substitute(a:name, '\v^test://(.*)', '\1', ''

)
[?25l[?1c:  [?25h[?0c: endfunction
[?25l[?1c:
: let qflist = []
: for word in words
:   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file ' . word . '.txt', })
:   " NOTE: problem 1:
:   " intentionally not setting 'lnum' so that the quickfix entries are not
:   " valid
:   call setloclist(0, qflist, ' ')
: endfor
ENDTEST

Test A:
STARTTEST
:lrewind
:enew
:lopen
:lnext
:lnext
:lnext
:lnext
:vert split
:wincmd L[?25h[?0c[?25l[?1c:[?25h[?0c augroup testgroup
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c   au!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c   autocmd BufReadCmd test://* call ReadTestProtocol(expand("<amatch>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c augroup END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c let words = [ "foo", "bar", "baz", "quux", "shmoo", "spam", "eggs" ]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c let qflist = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c for word in words
[?25l[?1c
:  [?25h[?0c:   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file '

. word . '.txt', })

[?25l[?1c:  [?25h[?0c:   " NOTE: problem 1:

[?25l[?1c:  [?25h[?0c:   " intentionally not setting 'lnum' so that the quickfix entries are not

[?25l[?1c:  [?25h[?0c:   " valid

[?25l[?1c:  [?25h[?0c:   call setloclist(0, qflist, ' ')

[?25l[?1c:  [?25h[?0c: endfor
[?25l[?1c:
: let qflist = []
: for word in words
:   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file ' . word . '.txt', })
:   " NOTE: problem 1:
:   " intentionally not setting 'lnum' so that the quickfix entries are not[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 27 lines, 608 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:wincmd K
:b test.out
:let fileName = substitute(fileName, '\\', '/', 'g')
:let locationListFileName = substitute(locationListFileName, '\\', '/', 'g')
:call append(line('$'), "Test A:")
:call append(line('$'), "  - file name displayed: " . fileName)
:call append(line('$'), "  - quickfix claims that the file name displayed is: "
. locationListFileName)
:w
:wincmd o
:b 1
ENDTEST

Test B:
STARTTEST
:lrewind
:lopen
:2
:exe "normal \<CR>"
:wincmd p
:3
:exe "normal \<CR>"
:wincmd p[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clrewind
[?25l[?1cNo matching autocommands

(1 of 7): file foo.txt

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cenew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clopen
[?25l[?1c[No Name]                                                                       test://foo.txt|| file foo.txt                                                   test://bar.txt|| file bar.txttest://baz.txt|| file baz.txttest://quux.txt|| file quux.txttest://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt[Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clnext
[?25l[?1cNo matching autocommandsbartest://bar.txt [RO]                                                             test://foo.txt|| file foo.txttest://bar.txt|| file bar.txt                                                   [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clnext
[?25l[?1cNo matching autocommandszz

test://bar.txt|| file bar.txttest://baz.txt|| file baz.txt                                                   [?25h[?0c[?25l[?1c:[?25h[?0clnext
[?25l[?1cNo matching autocommandsquuxquux.txt [RO]


test://baz.txt|| file baz.txttest://quux.txt|| file quux.txt                                                 [?25h[?0c[?25l[?1c:[?25h[?0clnext
[?25l[?1cNo matching autocommandsshmooshmoo.txt [RO]test://quux.txt|| file quux.txttest://shmoo.txt|| file shmoo.txt                                               [?25h[?0c[?25l[?1c:[?25h[?0cvert split
[?25l[?1c|||||||||||shmoo~~~~~~~~~~test://shmoo.txt [RO]                  [?25h[?0c[?25l[?1c:[?25h[?0cwincmd L
[?25l[?1c|||||||||||
test://shmoo.txt [RO]                  |||||||||||shmo~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~                                       ~                                       ~                                       ~                                       ~                                       ~                                       ~                                       ~                                       ~~~test://shmoo.txt [RO]                   [?25h[?0c[?25l[?1c:[?25h[?0clopen
[?25l[?1ctest://shmoo.txt [RO]                   test://foo.txt|| file foo.txt           test://bar.txt|| file bar.txttest://baz.txt|| file baz.txttest://quux.txt|| file quux.txttest://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt[Location List]      [?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1ctest://shmoo.txt [RO]                   [Location List]                         [?25h[?0c[?25l[?1c:[?25h[?0clnext
[?25l[?1cNo matching autocommandsbarbar.txt [RO]  test://foo.txt|| file foo.txttest://bar.txt|| file bar.txt           [?25h[?0c[?25l[?1c:[?25h[?0c"b 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet fileName = expand("%")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1ctest://bar.txt [RO]                     [Location List]                         [?25h[?0c[?25l[?1c:[?25h[?0clet locationListFileName = substitute(getline(line('.')), '\([^|]*\)|.*', '\1'

, '')
[?25l[?1cshmoo|bar[?25h[?0c[?25l[?1c:[?25h[?0cwincmd n
[?25l[?1ctest://bar.txt [RO]                     [No Name]                               [Location List]                         [?25h[?0c[?25l[?1c:[?25h[?0cwincmd K
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       shmoo|
test://shmoo.txt [RO]                  |
test://foo.txt|| file foo.txt|
test://bar.txt|| file bar.txt|
test://baz.txt|| file baz.txt|
test://quux.txt|| file quux.txt|
test://shmoo.txt|| file shmoo.txt      |
test://spam.txt|| file spam.txt|
test://eggs.txt|| file eggs.txt||||||~                                      
~                                      
~                                      
~                                      
~                                      
[Location List]                         bartest://bar.txt [RO]                     test://foo.txt|| file foo.txttest://bar.txt|| file bar.txt           test://baz.txt|| file baz.txttest://quux.txt|| file quux.txttest://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt~                                       ~                                       ~                                       ~                                       ~                                       [Location List]                         [?25h[?0c[?25l[?1c:[?25h[?0cb test.out
[?25l[?1c"test.out" 0 lines, 0 characterstest.out [?25h[?0c[?25l[?1c:[?25h[?0clet fileName = substitute(fileName, '\\', '/', 'g')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet locationListFileName = substitute(locationListFileName, '\\', '/', 'g')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "Test A:")
[?25l[?1cTest A:[+][?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "  - file name displayed: " . fileName)
[?25l[?1c  - file name displayed: test://bar.txt[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "  - quickfix claims that the file name displayed is: "

. locationListFileName)
[?25l[?1c  - quickfix claims that the file name displayed is: test://bar.txt[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 4 lines, 117 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cwincmd o
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                                         
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb 1
[?25l[?1c"test96.in" 142 lines, 3330 characters:b test.out
:let fileName = substitute(fileName, '\\', '/', 'g')
:let locationListFileName = substitute(locationListFileName, '\\', '/', 'g')
:call append(line('$'), "Test A:"):call append(line('$'), "  - file name displayed: " . fileName):call append(line('$'), "  - quickfix claims that the file name displayed is: " . locationListFileName):w:wincmd o:b 1ENDTESTTest B:STARTTEST:lrewind:lopen:2:exe "normal \<CR>":wincmd p:3:exe "normal \<CR>":wincmd p:4[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 19 lines, 305 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:exe "normal \<CR>"
:let numberOfWindowsOpen = winnr('$')
:wincmd n
:wincmd K
:b test.out
:call append(line('$'), "Test B:")
:call append(line('$'), "  - number of window open: " . numberOfWindowsOpen)
:w
:wincmd o
:b 1
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clrewind
[?25l[?1cNo matching autocommands

(1 of 7): file foo.txt

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0clopen
[?25l[?1cfoo
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               test://foo.txt [RO]                                                             test://foo.txt|| file foo.txt                                                   test://bar.txt|| file bar.txt
test://baz.txt|| file baz.txt
test://quux.txt|| file quux.txt
test://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt
~                                                                               ~                                                                               ~                                                                               [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0c2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandsbartest://bar.txt [RO]                                                             test://foo.txt|| file foo.txttest://bar.txt|| file bar.txt                                                   [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1ctest://bar.txt [RO]                                                             [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0c3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandsztest://baz.txt [RO]                                                             test://bar.txt|| file bar.txttest://baz.txt|| file baz.txt                                                   [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1ctest://baz.txt [RO]                                                             [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0c4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandsquuxtest://quux.txt [RO]                                                            test://baz.txt|| file baz.txttest://quux.txt|| file quux.txt                                                 [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet numberOfWindowsOpen = winnr('$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd n
[?25l[?1c[No Name]                                                                       quuxtest://quux.txt [RO]                                                            [?25h[?0c[?25l[?1c:[?25h[?0cwincmd K
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cb test.out
[?25l[?1c"test.out" 4 lines, 117 charactersTest A:  - file name displayed: test://bar.txt  - quickfix claims that the file name displayed is: test://bar.txttest.out [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "Test B:")
[?25l[?1cTest B:[+][?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "  - number of window open: " . numberOfWindowsOpen)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 6 lines, 154 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cwincmd o
[?25l[?1c  - number of window open: 2~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb 1
[?25l[?1c"test96.in" 142 lines, 3330 characters:exe "normal \<CR>"
:let numberOfWindowsOpen = winnr('$')
:wincmd n:wincmd K:b test.out
:call append(line('$'), "Test B:")
:call append(line('$'), "  - number of window open: " . numberOfWindowsOpen):w:wincmd o:b 1ENDTESTTest C:STARTTEST:lrewind:lopen:" Let's move the location list window to the top to check whether it (the first:" window found) will be reused when we try to open new windows::wincmd K:2:exe "normal \<CR>":wincmd p:3[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 27 lines, 677 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:4
:exe "normal \<CR>"
:1wincmd w
:let locationListWindowBufType = &buftype
:2wincmd w
:let bufferName = expand("%")
:wincmd n
:wincmd K
:b test.out
:let bufferName = substitute(bufferName, '\\', '/', 'g')
:call append(line('$'), "Test C:")
:call append(line('$'), "  - 'buftype' of the location list window: " . locationListWindowBufType)
:call append(line('$'), "  - buffer displayed in the 2nd window: " . bufferName):w
:wincmd o
:b 1
ENDTEST

STARTTEST
:qa
ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clrewind
[?25l[?1cNo matching autocommands

(1 of 7): file foo.txt

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0clopen
[?25l[?1cfoo
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               test://foo.txt [RO]                                                             test://foo.txt|| file foo.txt                                                   test://bar.txt|| file bar.txttest://baz.txt|| file baz.txt
test://quux.txt|| file quux.txt
test://shmoo.txt|| file shmoo.txt
test://spam.txt|| file spam.txt
test://eggs.txt|| file eggs.txt
~                                                                               ~                                                                               ~                                                                               [Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0c" Let's move the location list window to the top to check whether it (the firs

t[?25l[?1cfoo[?25h[?0c[?25l[?1c:[?25h[?0c" window found) will be reused when we try to open new windows:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd K
[?25l[?1ctest://foo.txt|| file foo.txt                                                   test://bar.txt|| file bar.txttest://baz.txt|| file baz.txttest://quux.txt|| file quux.txttest://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt[Location List]                                                                 foo~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               test://foo.txt [RO]                                                             [?25h[?0c[?25l[?1c:[?25h[?0c2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandstest://foo.txt|| file foo.txttest://bar.txt|| file bar.txt                                                   [Location List]                                                                 bartest://bar.txt [RO]                                                             [?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[Location List]                                                                 test://bar.txt [RO]                                                             [?25h[?0c[?25l[?1c:[?25h[?0c3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandstest://bar.txt|| file bar.txttest://baz.txt|| file baz.txt                                                   [Location List]                                                                 ztest://baz.txt [RO]                                                             [?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[Location List]                                                                 test://baz.txt [RO]                                                             [?25h[?0c[?25l[?1c:[?25h[?0c4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "normal \<CR>"
[?25l[?1cNo matching autocommandstest://baz.txt|| file baz.txttest://quux.txt|| file quux.txt                                                 [Location List]                                                                 quuxtest://quux.txt [RO]                                                            [?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[Location List]                                                                 test://quux.txt [RO]                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet locationListWindowBufType = &buftype
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2wincmd w
[?25l[?1c[Location List]                                                                 test://quux.txt [RO]                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet bufferName = expand("%")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd n
[?25l[?1c[No Name]                                                                       quuxtest://quux.txt [RO]                                                            [?25h[?0c[?25l[?1c:[?25h[?0cwincmd K
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       bar.txt|| file bar.txtest://baz.txt|| file baz.txttest://quux.txt|| file quux.txt                                                 test://shmoo.txt|| file shmoo.txttest://spam.txt|| file spam.txttest://eggs.txt|| file eggs.txt[Location List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0cb test.out
[?25l[?1c"test.out" 6 lines, 154 charactersTest A:  - file name displayed: test://bar.txt  - quickfix claims that the file name displayed is: test://bar.txtTest B:test.out [?25h[?0c[?25l[?1c:[?25h[?0clet bufferName = substitute(bufferName, '\\', '/', 'g')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "Test C:")
[?25l[?1c[+][?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "  - 'buftype' of the location list window: " . locatio

nListWindowBufType)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), "  - buffer displayed in the 2nd window: " . bufferName

)[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 9 lines, 270 characters written   [?25h[?0c[?25l[?1c:[?25h[?0cwincmd o
[?25l[?1cTest A:
  - file name displayed: test://bar.txt
  - quickfix claims that the file name displayed is: test://bar.txt
Test B:
  - number of window open: 2
Test C:
  - 'buftype' of the location list window: quickfix
  - buffer displayed in the 2nd window: test://quux.txt
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb 1
[?25l[?1c"test96.in" 142 lines, 3330 characters:4
:exe "normal \<CR>"
:1wincmd w:let locationListWindowBufType = &buftype:2wincmd w
:let bufferName = expand("%")
:wincmd n
:wincmd K:b test.out:let bufferName = substitute(bufferName, '\\', '/', 'g'):call append(line('$'), "Test C:"):call append(line('$'), "  - 'buftype' of the location list window: " . locationListWindowBufType):call append(line('$'), "  - buffer displayed in the 2nd window: " . bufferName):w:wincmd o:b 1ENDTESTSTARTTEST:qaENDTEST[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1 line, 4 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c


/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cqa
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test97.failed test.ok test.out X* viminfo
cp test97.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test97.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test97.in" 23 lines, 483 charactersTest whether glob()/globpath() return correct results with certain escaped
characters.

STARTTEST
:so small.vim
:" make sure glob() doesn't use the shell
:set shell=doesnotexist
:" consistent sorting of file names
:set nofileignorecase
:e test.out
:$put =glob('Xxx\{')
:$put =glob('Xxx\$')
:w! Xxx{
:w! Xxx\$
:$put =glob('Xxx\{')
:$put =glob('Xxx\$')
:"
:$put =string(globpath('sautest/autoload', '*.vim'))
:$put =string(globpath('sautest/autoload', '*.vim', 0, 1))
:w
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest whether glob()/globpath() return correct results with certain escaped[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 376 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" make sure glob() doesn't use the shell
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset shell=doesnotexist
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" consistent sorting of file names
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nofileignorecase
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce test.out
[?25l[?1c"test.out" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$put =glob('Xxx\{')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =glob('Xxx\$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! Xxx{
[?25l[?1c
Cannot execute shell doesnotexist


E79: Cannot expand wildcards

"Xxx{" [New File] 3 lines, 3 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cw! Xxx\$
[?25l[?1c"Xxx$" [New File] 3 lines, 3 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c$put =glob('Xxx\{')
[?25l[?1cXxx{
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$put =glob('Xxx\$')
[?25l[?1cXxx$[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(globpath('sautest/autoload', '*.vim'))
[?25l[?1c'sautest/autoload/Test104.vimsautest/autoload/footest.vim'[?25h[?0c[?25l[?1c:[?25h[?0c$put =string(globpath('sautest/autoload', '*.vim', 0, 1))
[?25l[?1c['sautest/autoload/Test104.vim', 'sautest/autoload/footest.vim'][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 8 lines, 138 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test98.failed test.ok test.out X* viminfo
cp test98.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test98.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test98.in" 43 lines, 908 charactersTest for 'scrollbind' causing an unexpected scroll of one of the windows.
STARTTEST
:so small.vim
:" We don't want the status line to cause problems:
:set laststatus=0
:let g:totalLines = &lines * 20
:let middle = g:totalLines / 2
:wincmd n
:wincmd o
:for i in range(1, g:totalLines)
:    call setline(i, 'LINE ' . i)
:endfor
:exe string(middle)
:normal zt
:normal M
:aboveleft vert new
:for i in range(1, g:totalLines)
:    call setline(i, 'line ' . i)
:endfor
:exe string(middle)
:normal zt
:normal M
:" Execute the following two command at once to reproduce the problem.[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for 'scrollbind' causing an unexpected scroll of one of the windows.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 35 lines, 791 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:setl scb | wincmd p
:setl scb
:wincmd w
:let topLineLeft = line('w0')
:wincmd p
:let topLineRight = line('w0')
:setl noscrollbind
:wincmd p
:setl noscrollbind
:q!
:%del _
:call setline(1, 'Difference between the top lines (left - right): ' . string(topLineLeft - topLineRight))
:w! test.out
:brewind
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" We don't want the status line to cause problems:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset laststatus=0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:totalLines = &lines * 20
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet middle = g:totalLines / 2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd n
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cwincmd o
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(1, g:totalLines)
[?25l[?1c
:  [?25h[?0c:    call setline(i, 'LINE ' . i)

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cLINE 1
LINE 2
LINE 3LINE 4LINE 5LINE 6LINE 7LINE 8LINE 9LINE 10LINE 11LINE 12LINE 13LINE 14LINE 15LINE 16LINE 17LINE 18LINE 19LINE 20LINE 21LINE 22LINE 23[?25h[?0c[?25l[?1c:[?25h[?0cexe string(middle)
[?25l[?1cLINE 229
LINE 230
LINE 231
LINE 232
LINE 233
LINE 234
LINE 235
LINE 236
LINE 237
LINE 238
LINE 239
LINE 240
LINE 241
LINE 242
LINE 243
LINE 244
LINE 245
LINE 246
LINE 247
LINE 248
LINE 249
LINE 250
LINE 251[?25h[?0c[?25l[?1c:[?25h[?0cnormal zt
[?25l[?1cLINE 252
LINE 253
LINE 254
LINE 255
LINE 256
LINE 257
LINE 258
LINE 259
LINE 260
LINE 261
LINE 262[?25h[?0c[?25l[?1c:[?25h[?0cnormal M
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caboveleft vert new
[?25l[?1c        |||||||||||||||||||||||~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       LINE 240LINE 241LINE 242LINE 243LINE 244LINE 245LINE 246LINE 247LINE 248LINE 249LINE 250LINE 251LINE 252LINE 253LINE 254LINE 255LINE 256LINE 257LINE 258LINE 259LINE 260LINE 261LINE 262[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(1, g:totalLines)
[?25l[?1c
:  [?25h[?0c:    call setline(i, 'line ' . i)

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cline 1|
line 2|
line 3                                  
line 4                                  
line 5                                  
line 6                                  
line 7                                  
line 8                                  
line 9                                  
line 10                                 
line 11                                 
line 12                                 
line 13                                 
line 14                                 
line 15                                 
line 16                                 
line 17                                 
line 18                                 
line 19                                 
line 20                                 
line 21                                 
line 22                                 
line 23                                 LINE 240LINE 241[?25h[?0c[?25l[?1c:[?25h[?0cexe string(middle)
[?25l[?1c2293023123223323423523623723823924024124224324424524624748495051[?25h[?0c[?25l[?1c:[?25h[?0cnormal zt
[?25l[?1cline 240                                
line 241                                
line 242                                
line 243                                
line 244                                
line 245                                
line 246                                
line 247                                
line 248                                
line 249                                
line 250                                
line 251                                
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        line 252
line 253
line 254
line 255
line 256
line 257
line 258
line 259
line 260
line 261
line 262[?25h[?0c[?25l[?1c:[?25h[?0cnormal M
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Execute the following two command at once to reproduce the problem.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl scb | wincmd p
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl scb
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd w
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet topLineLeft = line('w0')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet topLineRight = line('w0')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl noscrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl noscrollbind
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cq!
[?25l[?1cLINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINELINE[?25h[?0c[?25l[?1c:[?25h[?0c%del _
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, 'Difference between the top lines (left - right): ' . string(t

opLineLeft - topLineRight))
[?25l[?1cDifference between the top lines (left - right): 0[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 1 line, 51 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test98.in" 43 lines, 908 characters:normal M:" Execute the following two command at once to reproduce the problem.:setl scb | wincmd p:setl scb:wincmd w:let topLineLeft = line('w0'):wincmd p:let topLineRight = line('w0'):setl noscrollbind:wincmd p:setl noscrollbind:q!:%del _:call setline(1, 'Difference between the top lines (left - right): ' . string(topLineLeft - topLineRight)):w! test.out:brewindENDTESTSTARTTEST:qa!ENDTEST[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1 line, 5 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c


/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test99.failed test.ok test.out X* viminfo
cp test99.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test99.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test99.in" 68 lines, 2601 charactersTests for regexp with multi-byte encoding and various magic settings.
Test matchstr() with a count and multi-byte chars.
See test44 for exactly the same test with re=1.

STARTTEST
:so mbyte.vim
:set nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
:set re=2
/^1
/a*b\{2}c\+/e
x/\Md\*e\{2}f\+/e
x:set nomagic
/g\*h\{2}i\+/e
x/\mj*k\{2}l\+/e
x/\vm*n{2}o+/e
x/\V^aa$
x:set magic
/\v(a)(b)\2\1\1/e
x/\V[ab]\(\[xy]\)\1
x:" Now search for multi-byte without composing char
/ม
x:" Now search for multi-byte with composing char
f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for regexp with multi-byte encoding and various magic settings.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 41 lines, 1362 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTx?.
:@w
:?^1?,$w! test.out
:e! test.out
:w!
:qa!
ENDTEST

1 a aa abb abbccc
2 d dd dee deefff
3 g gg ghh ghhiii
4 j jj jkk jkklll
5 m mm mnn mnnooo
6 x ^aa$ x
7 (a)(b) abbaa
8 axx [ab]xx
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible encoding=utf-8 termencoding=latin1 viminfo+=nviminfo
[?25l[?1cx?.
:@w
:?^1?,$w! test.out
:e! test.out
:w!
:qa!
ENDTEST

1 a aa abb abbccc
2 d dd dee deefff
3 g gg ghh ghhiii
4 j jj jkk jkklll
5 m mm mnn mnnooo
6 x ^aa$ x
7 (a)(b) abbaa
8 axx [ab]xx
:[?25h[?0c" Test \%u, [\u] and friends
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c\%u20ac
[?25l[?1c
/[?25h[?0c[\u4f7f\u5929]\+
[?25l[?1c
/[?25h[?0c\%U12345678
[?25l[?1c
/[?25h[?0c[\U1234abcd\u1234\uabcd]
[?25l[?1c
/[?25h[?0c\%d21879b
[?25l[?1c
/[?25h[?0c [[=A=]]* [[=B=]]* [[=C=]]* [[=D=]]* [[=E=]]* [[=F=]]* [[=G=]]* [[=H=]]* [[=I=

]]* [[=J=]]* [[=K=]]* [[=L=]]* [[=M=]]* [[=N=]]* [[=O=]]* [[=P=]]* [[=Q=]]* [[=R

=]]* [[=S=]]* [[=T=]]* [[=U=]]* [[=V=]]* [[=W=]]* [[=X=]]* [[=Y=]]* [[=Z=]]*/e
[?25l[?1cPress ENTER or type command to continue[?25h[?0c[?25l[?1c:w!
:qa!
ENDTEST1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
/[?25h[?0c [[=a=]]* [[=b=]]* [[=c=]]* [[=d=]]* [[=e=]]* [[=f=]]* [[=g=]]* [[=h=]]* [[=i=

]]* [[=j=]]* [[=k=]]* [[=l=]]* [[=m=]]* [[=n=]]* [[=o=]]* [[=p=]]* [[=q=]]* [[=r

=]]* [[=s=]]* [[=t=]]* [[=u=]]* [[=v=]]* [[=w=]]* [[=x=]]* [[=y=]]* [[=z=]]*/e
[?25l[?1cPress ENTER or type command to continue[?25h[?0c[?25l[?1c1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
:[?25h[?0c" Test backwards search from a multi-byte char
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0cx
[?25l[?1c
:[?25h[?0c?^1?,$w! test.out
[?25l[?1c"test.out" [New] 20L, 1011C written[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 20L, 1011C1 a aa abb abbcc
2 d dd dee deeff
3 g gg ghh ghhii
4 j jj jkk jkkll
5 m mm mnn mnnoo
6 x aa$ x7 (a)(b) abba
8 axx ab]xx
e y
:[?25h[?0cw!
[?25l[?1c"test.out" 24L, 1025C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test101.failed test.ok test.out X* viminfo
cp test101.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test101.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test101.in" 48 lines, 815 charactersTest for v:hlsearch     vim: set ft=vim :

STARTTEST
:" Last abc: Q
:so small.vim
:new
:call setline(1, repeat(['aaa'], 10))
:set hlsearch nolazyredraw
:let r=[]
:command -nargs=0 -bar AddR :call add(r, [screenattr(1, 1), v:hlsearch])
/aaa
:AddR
:nohlsearch
:AddR
:let v:hlsearch=1
:AddR
:let v:hlsearch=0
:AddR
:set hlsearch
:AddR
:let v:hlsearch=0
:AddR
n:AddR[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for v:hlsearch     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 42 lines, 746 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:AddR
:set nohls
/
:AddR
:let r1=r[0][0]
:" I guess it is not guaranteed that screenattr outputs always the same character
:call map(r, 'v:val[1].":".(v:val[0]==r1?"highlighted":"not highlighted")')
:try
:   let v:hlsearch=[]
:catch
:   call add(r, matchstr(v:exception,'^Vim(let):E\d\+:'))
:endtry
:bwipeout!
:$put=r
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
:" vim: et ts=4 isk-=\:
:call getchar()
ENDTEST

start:[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0c" Last abc: Q
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       test101.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, repeat(['aaa'], 10))
[?25l[?1caaa
aaaaaaaaaaaaaaaaaaaaaaaaaaa[+][?25h[?0c[?25l[?1c:[?25h[?0cset hlsearch nolazyredraw
[?25l[?1cENDTEST[?25h[?0c[?25l[?1c:[?25h[?0clet r=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccommand -nargs=0 -bar AddR :call add(r, [screenattr(1, 1), v:hlsearch])
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0caaa
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaaENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnohlsearch
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:hlsearch=1
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:hlsearch=0
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hlsearch
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:hlsearch=0
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c/aaaaaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:hlsearch=0
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c[?25l[?1c/aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nohls
[?25l[?1caaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c/[?25h[?0c[?25l[?1c/aaa
[?25h[?0c[?25l[?1c:[?25h[?0cAddR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet r1=r[0][0]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" I guess it is not guaranteed that screenattr outputs always the same charact

er[?25l[?1caaa[?25h[?0c[?25l[?1c:[?25h[?0ccall map(r, 'v:val[1].":".(v:val[0]==r1?"highlighted":"not highlighted")')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:   let v:hlsearch=[]

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:   call add(r, matchstr(v:exception,'^Vim(let):E\d\+:'))

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1caaa
aaa
aaa
aaa[?25h[?0c[?25l[?1c:[?25h[?0cbwipeout!
[?25l[?1c:AddR
:set nohls
/:AddR
:let r1=r[0][0]
:" I guess it is not guaranteed that screenattr outputs always the same character:call map(r, 'v:val[1].":".(v:val[0]==r1?"highlighted":"not highlighted")')
:try
:   let v:hlsearch=[]
:catch:   call add(r, matchstr(v:exception,'^Vim(let):E\d\+:'))start:[?25h[?0c[?25l[?1c:[?25h[?0c$put=r
[?25l[?1c11 more lines1:highlighted
0:not highlighted
1:highlighted
0:not highlighted
1:highlighted
0:not highlighted
1:highlighted
0:not highlighted
1:highlighted
0:not highlighted
Vim(let):E706:11 more lines[?25h[?0c[?25l[?1c:[?25h[?0ccall garbagecollect(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 12 lines, 182 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test102.failed test.ok test.out X* viminfo
cp test102.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test102.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test102.in" 13 lines, 291 charactersTest if fnameescape is correct for special chars like !

STARTTEST
:so small.vim
:%d
:let fname = 'Xspa ce'
:try | exe "w! " . fnameescape(fname) | put='Space' | endtry
:let fname = 'Xemark!'
:try | exe "w! " . fnameescape(fname) | put='ExclamationMark' | endtry
:w! test.out
:qa!
ENDTEST

~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest if fnameescape is correct for special chars like ![?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 8 lines, 215 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%d
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0clet fname = 'Xspa ce'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry | exe "w! " . fnameescape(fname) | put='Space' | endtry 
[?25l[?1c"Xspa ce" [New File] 0 lines, 0 characters writtenSpace[?25h[?0c[?25l[?1c:[?25h[?0clet fname = 'Xemark!'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry | exe "w! " . fnameescape(fname) | put='ExclamationMark' | endtry
[?25l[?1c"Xemark!" [New File] 2 lines, 7 characters writtenExclamationMark[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 3 lines, 23 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test103.failed test.ok test.out X* viminfo
cp test103.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test103.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test103.in" 37 lines, 823 charactersTest for visual mode not being reset causing E315 error.
STARTTEST
:so small.vim
:enew
:let g:msg="Everything's fine."
:function! TriggerTheProblem()
:" At this point there is no visual selection because :call reset it.
:" Let's restore the selection:
:normal gv
:'<,'>del _
:try
:exe "normal \<Esc>"
:catch /^Vim\%((\a\+)\)\=:E315/
:echom 'Snap! E315 error!'
:let g:msg='Snap! E315 error!'
:endtry
:endfunction
:enew
:setl buftype=nofile
:call append(line('$'), 'Delete this line.')
:"
:"
:" NOTE: this has to be done by a call to a function because executing :del the[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for visual mode not being reset causing E315 error.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 29 lines, 723 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"ex-way will require the colon operator which resets the visual mode thus
:"preventing the problem:
:"
GV:call TriggerTheProblem()
:%del _
:call append(line('$'), g:msg)
:w! test.out
:brewind
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cenew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet g:msg="Everything's fine."
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! TriggerTheProblem()
[?25l[?1c
:  [?25h[?0c:^I" At this point there is no visual selection because :call reset it.

[?25l[?1c:  [?25h[?0c:^I" Let's restore the selection:

[?25l[?1c:  [?25h[?0c:^Inormal gv

[?25l[?1c:  [?25h[?0c:^I'<,'>del _

[?25l[?1c:  [?25h[?0c:^Itry

[?25l[?1c:    [?25h[?0c:^I^Iexe "normal \<Esc>"

[?25l[?1c:    [?25h[?0c:^Icatch /^Vim\%((\a\+)\)\=:E315/

[?25l[?1c:    [?25h[?0c:^I^Iechom 'Snap! E315 error!'

[?25l[?1c:    [?25h[?0c:^I^Ilet g:msg='Snap! E315 error!'

[?25l[?1c:    [?25h[?0c:^Iendtry

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cenew
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl buftype=nofile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), 'Delete this line.')
[?25l[?1cDelete this line.[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" NOTE: this has to be done by a call to a function because executing :del the
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"       ex-way will require the colon operator which resets the visual mode th

us[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"       preventing the problem:
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c
[?25l[?1cDelete this line. 
[?25h[?0c[?25l[?1c:'<,'>[?25h[?0ccall TriggerTheProblem()
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c%del _
[?25l[?1c--No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), g:msg)
[?25l[?1cEverything's fine.[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 2 lines, 20 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbrewind
[?25l[?1c"test103.in" 37 lines, 823 characters:endtry
:endfunction:enew:setl buftype=nofile:call append(line('$'), 'Delete this line.'):":":" NOTE: this has to be done by a call to a function because executing :del the:"       ex-way will require the colon operator which resets the visual mode thus:"       preventing the problem::"GV:call TriggerTheProblem():%del _:call append(line('$'), g:msg):w! test.out:brewindENDTESTSTARTTEST:qa!ENDTEST[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1 line, 5 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c


/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test104.failed test.ok test.out X* viminfo
cp test104.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test104.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test104.in" 30 lines, 698 charactersTests for :let.  vim: set ft=vim ts=8 :

STARTTEST
:so small.vim
:set runtimepath+=./sautest
:" Test to not autoload when assigning.  It causes internal error.
:try
:  let Test104#numvar = function('tr')
:  $put ='OK: ' . string(Test104#numvar)
:catch
:  $put ='FAIL: ' . v:exception
:endtry
:let a = 1
:let b = 2
:for letargs in ['a b', '{0 == 1 ? "a" : "b"}', '{0 == 1 ? "a" : "b"} a', 'a {0
== 1 ? "a" : "b"}']
:  try
:    redir => messages
:    execute 'let' letargs
:    redir END
:    $put ='OK:'
:    $put =split(substitute(messages, '\n', '\0  ', 'g'), '\n')
:  catch[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :let.  vim: set ft=vim ts=8 :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 24 lines, 618 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:    $put ='FAIL: ' . v:exception
:    redir END
:  endtry
:endfor
:/^Results/,$wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset runtimepath+=./sautest
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test to not autoload when assigning.  It causes internal error.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:  let Test104#numvar = function('tr')

[?25l[?1c:  [?25h[?0c:  $put ='OK: ' . string(Test104#numvar)

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:  $put ='FAIL: ' . v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c:catch
:  $put ='FAIL: ' . v:exception
:endtry
:let a = 1
:let b = 2
:for letargs in ['a b', '{0 == 1 ? "a" : "b"}', '{0 == 1 ? "a" : "b"} a', 'a {0
== 1 ? "a" : "b"}']
:  try:    redir => messages
:    execute 'let' letargsEND$put ='OK:'$put =split(substitute(messages, '\n', '\0  ', 'g'), '\n')
:  catch'FAIL: ' . v:exception  redir END
:  endtryendfor/^Results/,$wq! test.out
ENDTESTResults of test104:
OK: function('tr')[?25h[?0c[?25l[?1c
:[?25h[?0clet a = 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet b = 2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor letargs in ['a b', '{0 == 1 ? "a" : "b"}', '{0 == 1 ? "a" : "b"} a', 'a {0

== 1 ? "a" : "b"}']
[?25l[?1c:  [?25h[?0c:  try

[?25l[?1c:    [?25h[?0c:    redir => messages

[?25l[?1c:    [?25h[?0c:    execute 'let' letargs

[?25l[?1ca#1

b#2

:    [?25h[?0c:    redir END

[?25l[?1c:    [?25h[?0c:    $put ='OK:'

[?25l[?1c:    [?25h[?0c:    $put =split(substitute(messages, '\n', '\0  ', 'g'), '\n')

[?25l[?1c:    [?25h[?0c:  catch

[?25l[?1c:    [?25h[?0c:    $put ='FAIL: ' . v:exception

[?25l[?1c:    [?25h[?0c:    redir END

[?25l[?1c:    [?25h[?0c:  endtry

[?25l[?1c:  [?25h[?0c:endfor

[?25l[?1cb#2

b#2

a#1

a#1

b#2

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 13 lines, 244 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test105.failed test.ok test.out X* viminfo
cp test105.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test105.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test105.in" 45 lines, 1700 charactersTest filename modifiers     vim: set ft=vim :

STARTTEST
:source small.vim
:%delete _
:set shell=sh
:set shellslash
:let tab="\t"
:command -nargs=1 Put :let expr=<q-args> | $put =expr.tab.strtrans(string(eval(expr)))
:let $HOME=fnamemodify('.', ':p:h:h')
:Put fnamemodify('.',':p'      )[-1:]
:Put fnamemodify('.',':p:h'    )[-1:]
:Put fnamemodify('test.out',':p'      )[-1:]
:Put fnamemodify('test.out',':.'      )
:Put fnamemodify('../testdir/a',   ':.'      )
:Put fnamemodify('test.out',':~'      )
:Put fnamemodify('../testdir/a',   ':~'      )
:Put fnamemodify('../testdir/a',   ':t'      )
:Put fnamemodify('.',':p:t'    )
:Put fnamemodify('test.out',':p:t'    )
:Put fnamemodify('test.out',':p:e'    )
:Put fnamemodify('test.out',':p:t:e'  )[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest filename modifiers     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 40 lines, 1634 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:Put fnamemodify('abc.fb2.tar.gz', ':r:r'    )
:Put fnamemodify('abc.fb2.tar.gz', ':r:r:r'  )
:Put substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\1', '')
:Put fnamemodify('abc.fb2.tar.gz', ':e'      )
:Put fnamemodify('abc.fb2.tar.gz', ':e:e'    )
:Put fnamemodify('abc.fb2.tar.gz', ':e:e:e'  )
:Put fnamemodify('abc.fb2.tar.gz', ':e:e:e:e')
:Put fnamemodify('abc.fb2.tar.gz', ':e:e:r'  )
:Put fnamemodify('abc def',':S'      )
:Put fnamemodify('abc" "def',      ':S'      )
:Put fnamemodify('abc"%"def',      ':S'      )
:Put fnamemodify('abc'' ''def',    ':S'      )
:Put fnamemodify('abc''%''def',    ':S'      )
:Put fnamemodify("abc\ndef",':S'      )
:set shell=tcsh
:Put fnamemodify("abc\ndef",':S'      )
:$put ='vim: ts=8'
:1 delete _
:w! test.out
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0csource small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%delete _
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0cset shell=sh
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset shellslash
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet tab="\t"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccommand -nargs=1 Put :let expr=<q-args> | $put =expr.tab.strtrans(string(eval(

expr)))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet $HOME=fnamemodify('.', ':p:h:h')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('.',              ':p'      )[-1:]
[?25l[?1cfnamemodify('.',              ':p'      )[-1:]  '/'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('.',              ':p:h'    )[-1:]
[?25l[?1cfnamemodify('.',              ':p:h'    )[-1:]  'r'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':p'      )[-1:]
[?25l[?1cfnamemodify('test.out',       ':p'      )[-1:]  't'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':.'      )
[?25l[?1cfnamemodify('test.out',       ':.'      )       'test.out'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('../testdir/a',   ':.'      )
[?25l[?1cfnamemodify('../testdir/a',   ':.'      )       'a'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':~'      )
[?25l[?1cfnamemodify('test.out',       ':~'      )       '~/testdir/test.out'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('../testdir/a',   ':~'      )
[?25l[?1cfnamemodify('../testdir/a',   ':~'      )       '~/testdir/a'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('../testdir/a',   ':t'      )
[?25l[?1cfnamemodify('../testdir/a',   ':t'      )       'a'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('.',              ':p:t'    )
[?25l[?1cfnamemodify('.',              ':p:t'    )       ''[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':p:t'    )
[?25l[?1cfnamemodify('test.out',       ':p:t'    )       'test.out'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':p:e'    )
[?25l[?1cfnamemodify('test.out',       ':p:e'    )       'out'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('test.out',       ':p:t:e'  )
[?25l[?1cfnamemodify('test.out',       ':p:t:e'  )       'out'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':r'      )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':r'      )       'abc.fb2.tar'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':r:r'    )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':r:r'    )       'abc.fb2'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':r:r:r'  )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':r:r:r'  )       'abc'[?25h[?0c[?25l[?1c:[?25h[?0cPut substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\

1', '')
[?25l[?1csubstitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\1', '')       'testdir/abc.fb2'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':e'      )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':e'      )       'gz'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':e:e'    )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':e:e'    )       'tar.gz'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':e:e:e'  )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':e:e:e'  )       'fb2.tar.gz'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':e:e:e:e')
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':e:e:e:e')       'fb2.tar.gz'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc.fb2.tar.gz', ':e:e:r'  )
[?25l[?1cfnamemodify('abc.fb2.tar.gz', ':e:e:r'  )       'tar'[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify('abc def',        ':S'      )
[?25l[?1c
fnamemodify('abc def',':S'      )'''abc def'''[?25h[?0c[?25l[?1c
:[?25h[?0cPut fnamemodify('abc" "def',      ':S'      )
[?25l[?1c
fnamemodify('abc" "def',      ':S'      )'''abc" "def'''[?25h[?0c[?25l[?1c
:[?25h[?0cPut fnamemodify('abc"%"def',      ':S'      )
[?25l[?1c
fnamemodify('abc"%"def',      ':S'      )'''abc"%"def'''[?25h[?0c[?25l[?1c
:[?25h[?0cPut fnamemodify('abc'' ''def',    ':S'      )
[?25l[?1c
fnamemodify('abc'' ''def',    ':S'      )'''abc''\'''' ''\''''def'''[?25h[?0c[?25l[?1c
:[?25h[?0cPut fnamemodify('abc''%''def',    ':S'      )
[?25l[?1c
fnamemodify('abc''%''def',    ':S'      )'''abc''\''''%''\''''def'''[?25h[?0c[?25l[?1c
:[?25h[?0cPut fnamemodify("abc\ndef",       ':S'      )
[?25l[?1c
fnamemodify("abc\ndef",':S'      )'''abc^@def'''[?25h[?0c[?25l[?1c
:[?25h[?0cset shell=tcsh
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cPut fnamemodify("abc\ndef",       ':S'      )
[?25l[?1c
fnamemodify("abc\ndef",':S'      )'''abc\^@def'''[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='vim: ts=8'
[?25l[?1c
vim: ts=8[?25h[?0c[?25l[?1c
:[?25h[?0c1 delete _
[?25l[?1c',              ':p[-1:]  '/h'    )[-1:]  'r''      )[-1:]  't'.'  test.out'../testdir/a',   ':.'    a'test.out',       ':~~/testdir/test.out'../testdir/a',   ':~'  ~/testdir/a'../testdir/a',   ':t'    'fnamemodify('.',              ':p:t'    )       ''fnamemodify('test.out',       ':p:t'    )'test.out'test.out',       ':p:e'out'test.out',       ':p:t:e'out'r'    abc.fb2.tar'r:r'    abc.fb2'r:rabc
substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\1', '')       'testdir/abc.fb2'.fb2.tar.gz', ':egz'.fb2.tar.gz', ':e:e'tar.gz.fb2.tar.gz', ':e:e:e'fb2.tar.gz'abc.fb2.tar.gz', ':e:e:e:e'fb2.tar.gz'abc.fb2.tar.gz', ':e:e:r'tar'fnamemodify('abc def',':S'      )'''abc def'''[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 29 lines, 1560 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test106.failed test.ok test.out X* viminfo
cp test106.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test106.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test106.in" 16 lines, 581 charactersTests for errorformat.  vim: set ft=vim ts=8 :

STARTTEST
:so small.vim
:if !has('quickfix') | e! test.ok | wq! test.out | endif
:set efm=%EEEE%m,%WWWW%m,%+CCCC%.%#,%-GGGG%.%#
:cgetexpr ['WWWW', 'EEEE', 'CCCC']
:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
:cgetexpr ['WWWW', 'GGGG', 'EEEE', 'CCCC']
:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
:cgetexpr ['WWWW', 'GGGG', 'ZZZZ', 'EEEE', 'CCCC', 'YYYY']
:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
:/^Results/,$wq! test.out
ENDTEST

Results of test106:
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for errorformat.  vim: set ft=vim ts=8 :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 10 lines, 494 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('quickfix') | e! test.ok | wq! test.out | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset efm=%EEEE%m,%WWWW%m,%+CCCC%.%#,%-GGGG%.%#
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccgetexpr ['WWWW', 'EEEE', 'CCCC']
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
[?25l[?1c[['W', 1], ['E^@CCCC', 1]][?25h[?0c[?25l[?1c:[?25h[?0ccgetexpr ['WWWW', 'GGGG', 'EEEE', 'CCCC']
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
[?25l[?1c[['W', 1], ['E^@CCCC', 1]][?25h[?0c[?25l[?1c:[?25h[?0ccgetexpr ['WWWW', 'GGGG', 'ZZZZ', 'EEEE', 'CCCC', 'YYYY']
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
[?25l[?1c[['W', 1], ['ZZZZ', 0], ['E^@CCCC', 1], ['YYYY', 0]][?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 4 lines, 127 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test107.failed test.ok test.out X* viminfo
cp test107.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test107.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test107.in" 38 lines, 717 charactersTests for adjusting window and contents     vim: set ft=vim :

STARTTEST
:so small.vim
:new
:call setline(1, range(1,256))
:let r=[]
:func! GetScreenStr(row)
:   let str = ""
:   for c in range(1,3)
:let str .= nr2char(screenchar(a:row, c))
:   endfor
:   return str
:endfunc
:
:exe ":norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
:wincmd p
:call add(r, [line("w0"), s3])
:
:exe ":norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
:wincmd p[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for adjusting window and contents     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 32 lines, 628 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call add(r, [line("w0"), s3])
:
:exe ":norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
::wincmd p
:call add(r, [line("w0"), s3])
:
:bwipeout!
:$put=r
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :wincmd pcall add(r, [line("w0"), s3])bwipeout!
:$put=rcall garbagecollect(1)
:"/^start:/,$wq! test.out
ENDTESTtest107.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, range(1,256))
[?25l[?1c1
234567891011[+][?25h[?0c[?25l[?1c:[?25h[?0clet r=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunc! GetScreenStr(row)
[?25l[?1c
:  [?25h[?0c:   let str = ""

[?25l[?1c:  [?25h[?0c:   for c in range(1,3)

[?25l[?1c:    [?25h[?0c:       let str .= nr2char(screenchar(a:row, c))

[?25l[?1c:    [?25h[?0c:   endfor

[?25l[?1c:  [?25h[?0c:   return str

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c1
2
3
4
5
6[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+"
[?25l[?1c[No Name] [+]                                                                   :let s3=GetScreenStr(1)test107.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0clet s3=GetScreenStr(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[No Name] [+]                                                                   test107.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0ccall add(r, [line("w0"), s3])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+"
[?25l[?1c50
51
52
53
54
55
56
57
58
59
[No Name] [+]                                                                   :let s3=GetScreenStr(1)
::wincmd p
:call add(r, [line("w0"), s3])
:
:bwipeout!
:$put=r
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
ENDTEST

test107.in                                                                      [?25h[?0c[?25l[?1c

:[?25h[?0clet s3=GetScreenStr(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[No Name] [+]                                                                   test107.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0ccall add(r, [line("w0"), s3])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+"
[?25l[?1c59
60
61
62
63
64
65
66
67
68
[No Name] [+]                                                                   :let s3=GetScreenStr(1)
::wincmd p
:call add(r, [line("w0"), s3])
:
:bwipeout!
:$put=r
:call garbagecollect(1)
:"
:/^start:/,$wq! test.out
ENDTEST

test107.in                                                                      [?25h[?0c[?25l[?1c

:[?25h[?0clet s3=GetScreenStr(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c:wincmd p
[?25l[?1c[No Name] [+]                                                                   test107.in                                                                      [?25h[?0c[?25l[?1c:[?25h[?0ccall add(r, [line("w0"), s3])
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipeout!
[?25l[?1c::exe ":norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
:wincmd p
:call add(r, [line("w0"), s3])
::exe ":norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
:wincmd p
:call add(r, [line("w0"), s3])
:exe ":norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+"
:let s3=GetScreenStr(1)
::wincmd pcall add(r, [line("w0"), s3])bwipeout!
:$put=rcall garbagecollect(1)
:":/^start:/,$wq! test.out
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0c$put=r
[?25l[?1c3 more linesstart:
[1, '1  ']
[50, '50 ']
[59, '59 ']3 more lines[?25h[?0c[?25l[?1c:[?25h[?0ccall garbagecollect(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 4 lines, 42 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_argument_0count.failed test.ok test.out X* viminfo
cp test_argument_0count.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_argument_0count.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_argument_0count.in" 28 lines, 420 charactersTests for :0argadd and :0argedit     vim: set ft=vim :

STARTTEST
:so small.vim
:let arglists = []
:%argd
:arga a b c d
:2argu
:0arga added
:call add(arglists, argv())
:2argu
:arga third
:call add(arglists, argv())
:%argd
:arga a b c d
:2argu
:0arge edited
:call add(arglists, argv())
:2argu
:arga third
:call add(arglists, argv())
:e! test.out
:call append(0, map(copy(arglists), 'join(v:val, " ")'))[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :0argadd and :0argedit     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 22 lines, 344 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:w
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet arglists = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2argu
[?25l[?1c"b" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c0arga added
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2argu
[?25l[?1c"a" [New File][?25h[?0c[?25l[?1c:[?25h[?0carga third
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2argu
[?25l[?1c"b" [New File][?25h[?0c[?25l[?1c:[?25h[?0c0arge edited
[?25l[?1c"edited" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2argu
[?25l[?1c"a" [New File][?25h[?0c[?25l[?1c:[?25h[?0carga third
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, map(copy(arglists), 'join(v:val, " ")'))
[?25l[?1cadded a b c d
added a third b c d
edited a b c d
edited a third b c d[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 5 lines, 71 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_argument_count.failed test.ok test.out X* viminfo
cp test_argument_count.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_argument_count.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_argument_count.in" 47 lines, 744 charactersTests for :[count]argument! and :[count]argdelete     vim: set ft=vim :

STARTTEST
:so small.vim
:%argd
:argadd a b c d
:set hidden
:let buffers = []
:augroup TEST
:au BufEnter * call add(buffers, expand('%:t'))
:augroup END
:$argu
:$-argu
:-argu
:1argu
:+2argu
:augroup TEST
:au!
:augroup END
:let arglists = []
:.argd
:call add(arglists, argv())
:-argd[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :[count]argument! and :[count]argdelete     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 41 lines, 651 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$argd
:call add(arglists, argv())
:1arga c
:1arga b
:$argu
:$arga x
:call add(arglists, argv())
:0arga Y
:call add(arglists, argv())
:%argd
:call add(arglists, argv())
:arga a b c d e f
:2,$-argd
:call add(arglists, argv())
:e! test.out
:call append(0, buffers)
:let lnr = line('$')
:call append(lnr, map(copy(arglists), 'join(v:val, " ")'))
:w
:qa!
ENDTEST
[?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cargadd a b c d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup TEST
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau BufEnter * call add(buffers, expand('%:t'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$argu
[?25l[?1c"d" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$-argu
[?25l[?1c"c" [New File][?25h[?0c[?25l[?1c:[?25h[?0c-argu
[?25l[?1c"b" [New File][?25h[?0c[?25l[?1c:[?25h[?0c1argu
[?25l[?1c"a" [New File][?25h[?0c[?25l[?1c:[?25h[?0c+2argu
[?25l[?1c"c" [New file] --No lines in buffer-- (file 3 of 4)[?25h[?0c[?25l[?1c:[?25h[?0caugroup TEST
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cau!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0caugroup END
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet arglists = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c-argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1arga c
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1arga b
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$argu
[?25l[?1c"c" [New File][?25h[?0c[?25l[?1c:[?25h[?0c$arga x
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c0arga Y
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d e f
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2,$-argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(arglists, argv())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, buffers)
[?25l[?1cd
c
b
a
c[?25h[?0c[?25l[?1c:[?25h[?0clet lnr = line('$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(lnr, map(copy(arglists), 'join(v:val, " ")'))
[?25l[?1ca b da daa b c xY a b c xa f[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 13 lines, 46 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_autocmd_option.failed test.ok test.out X* viminfo
cp test_autocmd_option.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_autocmd_option.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_autocmd_option.in" 77 lines, 2954 charactersTest for option autocommand

STARTTEST
:so small.vim
:if !has("eval") || !has("autocmd") || !exists("+autochdir") | e! test.ok | w! test.out | qa! | endif
:fu! AutoCommand(match)
:let c=g:testcase
:let item=remove(g:options, 0)
:let c.=printf("Expected: Name: <%s>, Oldval: <%s>, NewVal: <%s>, Scope:
<%s>\n", item[0], item[1], item[2], item[3])
:let c.=printf("Autocmd Option: <%s>,", a:match)
:let c.=printf(" OldVal: <%s>,", v:option_old)
:let c.=printf(" NewVal: <%s>,", v:option_new)
:let c.=printf(" Scope: <%s>\n", v:option_type)
:call setreg('r', printf("%s\n%s", getreg('r'), c))
:endfu
:au OptionSet * :call AutoCommand(expand("<amatch>"))
:let g:testcase="1: Setting number option\n"
:let g:options=[['number', 0, 1, 'global']]
:set nu
:let g:testcase="2: Setting local number option\n"
:let g:options=[['number', 1, 0, 'local']][?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for option autocommand[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 72 lines, 2896 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let g:testcase="13: Setting option backspace through setbufvar()\n"
:let g:options=[['backup', '', '1', 'local']]
: "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger
:call setbufvar(1, '&l:bk', 1)
: "should trigger, use correct option name
:call setbufvar(1, '&backup', 1)
:let g:testcase="14: Setting number option using setwinvar\n"
:let g:options=[['number', 0, 1, 'local']]
:call setwinvar(0, '&number', 1)
:" Write register now, because next test shouldn't output anything.
:$put r
:let @r=''
:let g:testcase="\n15: Setting key option, shouldn't trigger\n"
:let g:options=[['key', 'invalid', 'invalid1', 'invalid']]
:setlocal key=blah
:setlocal key=
:$put =g:testcase
:$put r
:/^dummy text/,$w! test.out
:qa!
ENDTEST
dummy text[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("eval") || !has("autocmd") || !exists("+autochdir") | e! test.ok | w! 

test.out | qa! | endif
[?25l[?1c:let g:testcase="13: Setting option backspace through setbufvar()\n"[?25h[?0c[?25l[?1c
:[?25h[?0cfu! AutoCommand(match)
[?25l[?1c
:  [?25h[?0c:^Ilet c=g:testcase

[?25l[?1c:  [?25h[?0c:       let item=remove(g:options, 0)

[?25l[?1c:  [?25h[?0c:       let c.=printf("Expected: Name: <%s>, Oldval: <%s>, NewVal: <%s>, Sco

pe: <%s>\n", item[0], item[1], item[2], item[3])

[?25l[?1c:  [?25h[?0c:       let c.=printf("Autocmd Option: <%s>,", a:match)

[?25l[?1c:  [?25h[?0c:       let c.=printf(" OldVal: <%s>,", v:option_old)

[?25l[?1c:  [?25h[?0c:       let c.=printf(" NewVal: <%s>,", v:option_new)

[?25l[?1c:  [?25h[?0c:       let c.=printf(" Scope: <%s>\n", v:option_type)

[?25l[?1c:  [?25h[?0c:       call setreg('r', printf("%s\n%s", getreg('r'), c))

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1c:let g:testcase="13: Setting option backspace through setbufvar()\n"
:let g:options=[['backup', '', '1', 'local']]
: "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger
:call setbufvar(1, '&l:bk', 1)
: "should trigger, use correct option name
:call setbufvar(1, '&backup', 1)
:let g:testcase="14: Setting number option using setwinvar\n"
:let g:options=[['number', 0, 1, 'local']]
:call setwinvar(0, '&number', 1)[?25h[?0c[?25l[?1c
:[?25h[?0cau OptionSet * :call AutoCommand(expand("<amatch>"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="1: Setting number option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['number', 0, 1, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nu
[?25l[?1c     56 :let g:testcase="13: Setting option backspace through setbufvar()\n"
     57 :let g:options=[['backup', '', '1', 'local']]
     58 : "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger
     59 :call setbufvar(1, '&l:bk', 1)
     60 : "should trigger, use correct option name
     61 :call setbufvar(1, '&backup', 1)
     62 :let g:testcase="14: Setting number option using setwinvar\n"
     63 :let g:options=[['number', 0, 1, 'local']]
     64 :call setwinvar(0, '&number', 1)
     65 :" Write register now, because next test shouldn't output anything.
     66 :$put r
     67 :let @r=''
     68 :let g:testcase="\n15: Setting key option, shouldn't trigger\n"
     69 :let g:options=[['key', 'invalid', 'invalid1', 'invalid']]
     70 :setlocal key=blah
     71 :setlocal key=
     72 :$put =g:testcase
     73 :$put r
     74 :/^dummy text/,$w! test.out
     75 :qa!
     76 ENDTEST
     77 dummy text[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="2: Setting local number option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['number', 1, 0, 'local']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal nonu
[?25l[?1c:let g:testcase="13: Setting option backspace through setbufvar()\n":let g:options=[['backup', '', '1', 'local']]: "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger:call setbufvar(1, '&l:bk', 1): "should trigger, use correct option name:call setbufvar(1, '&backup', 1):let g:testcase="14: Setting number option using setwinvar\n":let g:options=[['number', 0, 1, 'local']]:call setwinvar(0, '&number', 1):" Write register now, because next test shouldn't output anything.:$put r:let @r='':let g:testcase="\n15: Setting key option, shouldn't trigger\n":let g:options=[['key', 'invalid', 'invalid1', 'invalid']]:setlocal key=blah:setlocal key=:$put =g:testcase:$put r:/^dummy text/,$w! test.out:qa!ENDTESTdummy text[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="3: Setting global number option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['number', 1, 0, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal nonu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="4: Setting local autoindent option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoindent', 0, 1, 'local']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal ai
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="5: Setting global autoindent option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoindent', 0, 1, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal ai
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="6: Setting global autoindent option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoindent', 1, 0, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ai!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c Should not print anything, use :noa
[?25l[?1cE492: Not an editor command:  Should not print anything, use :noa[?25h[?0c[?25l[?1c:[?25h[?0cnoa :set nonu
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="7: Setting several global list and number option\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['list', 0, 1, 'global'], ['number', 0, 1, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset list nu
[?25l[?1c     56 :let g:testcase="13: Setting option backspace through setbufvar()\n"$
     57 :let g:options=[['backup', '', '1', 'local']]$
     58 : "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger$
     59 :call setbufvar(1, '&l:bk', 1)$
     60 : "should trigger, use correct option name$
     61 :call setbufvar(1, '&backup', 1)$
     62 :let g:testcase="14: Setting number option using setwinvar\n"$
     63 :let g:options=[['number', 0, 1, 'local']]$
     64 :call setwinvar(0, '&number', 1)$
     65 :" Write register now, because next test shouldn't output anything.$
     66 :$put r$
     67 :let @r=''$
     68 :let g:testcase="\n15: Setting key option, shouldn't trigger\n"$
     69 :let g:options=[['key', 'invalid', 'invalid1', 'invalid']]$
     70 :setlocal key=blah$
     71 :setlocal key=$
     72 :$put =g:testcase$
     73 :$put r$
     74 :/^dummy text/,$w! test.out$
     75 :qa!$
     76 ENDTEST$
     77 dummy text$[?25h[?0c[?25l[?1c:[?25h[?0cnoa set nolist nonu
[?25l[?1c:let g:testcase="13: Setting option backspace through setbufvar()\n":let g:options=[['backup', '', '1', 'local']]: "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger:call setbufvar(1, '&l:bk', 1): "should trigger, use correct option name:call setbufvar(1, '&backup', 1):let g:testcase="14: Setting number option using setwinvar\n":let g:options=[['number', 0, 1, 'local']]:call setwinvar(0, '&number', 1):" Write register now, because next test shouldn't output anything.:$put r:let @r='':let g:testcase="\n15: Setting key option, shouldn't trigger\n":let g:options=[['key', 'invalid', 'invalid1', 'invalid']]:setlocal key=blah:setlocal key=:$put =g:testcase:$put r:/^dummy text/,$w! test.out:qa!ENDTESTdummy text[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="8: Setting global acd\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autochdir', 0, 1, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal acd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="9: Setting global autoread\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoread', 0, 1, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="10: Setting local autoread\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoread', 0, 1, 'local']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal ar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="11: Setting global autoread\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['autoread', 1, 0, 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetglobal invar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="12: Setting option backspace through :let\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['backspace', '', 'eol,indent,start', 'global']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet &bs="eol,indent,start"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="13: Setting option backspace through setbufvar()\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['backup', '', '1', 'local']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c "try twice, first time, shouldn't trigger because option name is invalid, sec

ond time, it should trigger
[?25l[?1c:let g:testcase="13: Setting option backspace through setbufvar()\n"[?25h[?0c[?25l[?1c
:[?25h[?0ccall setbufvar(1, '&l:bk', 1)
[?25l[?1cE355: Unknown option: l:bk[?25h[?0c[?25l[?1c:[?25h[?0c "should trigger, use correct option name
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setbufvar(1, '&backup', 1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="14: Setting number option using setwinvar\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['number', 0, 1, 'local']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setwinvar(0, '&number', 1)
[?25l[?1c     56 :let g:testcase="13: Setting option backspace through setbufvar()\n"
     57 :let g:options=[['backup', '', '1', 'local']]
     58 : "try twice, first time, shouldn't trigger because option name is invalid, second time, it should trigger
     59 :call setbufvar(1, '&l:bk', 1)
     60 : "should trigger, use correct option name
     61 :call setbufvar(1, '&backup', 1)
     62 :let g:testcase="14: Setting number option using setwinvar\n"
     63 :let g:options=[['number', 0, 1, 'local']]
     64 :call setwinvar(0, '&number', 1)
     65 :" Write register now, because next test shouldn't output anything.
     66 :$put r
     67 :let @r=''
     68 :let g:testcase="\n15: Setting key option, shouldn't trigger\n"
     69 :let g:options=[['key', 'invalid', 'invalid1', 'invalid']]
     70 :setlocal key=blah
     71 :setlocal key=
     72 :$put =g:testcase
     73 :$put r
     74 :/^dummy text/,$w! test.out
     75 :qa!
     76 ENDTEST
     77 dummy text[?25h[?0c[?25l[?1c:[?25h[?0c" Write register now, because next test shouldn't output anything.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put r
[?25l[?1c60 more lines117Autocmd Option: <autoread>, OldVal: <0>, NewVal: <1>, Scope: <global>11811910: Setting local autoread    120 Expected: Name: <autoread>, Oldval: <0>, NewVal: <1>, Scope: <local>121Autocmd Option: <autoread>, OldVal: <1>, NewVal: <1>, Scope: <local>12212311: Setting global autoread124Expected: Name: <autoread>, Oldval: <1>, NewVal: <0>, Scope: <global>125Autocmd Option: <autoread>, OldVal: <1>, NewVal: <0>, Scope: <global>12612712: Setting option backspace through :let128Expected: Name: <backspace>, Oldval: <>, NewVal: <eol,indent,start>, Scope: <global>129Autocmd Option: <backspace>, OldVal: <>, NewVal: <eol,indent,start>, Scope: <global>131313: Setting option backspace through setbufvar()13Expected: Name: <backup>, Oldval: <>, NewVal: <1>, Scope: <local>13Autocmd Option: <backup>, OldVal: <0>, NewVal: <1>, Scope: <local>131314: Setting number option using setwinvar13xpected: Name: <number>, Oldval: <0>, NewVal: <1>, Scope: <local>13Autocmd Option: <number>, OldVal: <0>, NewVal: <1>, Scope: <local>[?25h[?0c[?25l[?1c:[?25h[?0clet @r=''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:testcase="\n15: Setting key option, shouldn't trigger\n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:options=[['key', 'invalid', 'invalid1', 'invalid']]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal key=blah
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetlocal key=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:testcase
[?25l[?1c    138 
    139 15: Setting key option, shouldn't trigger[?25h[?0c[?25l[?1c
:[?25h[?0c$put r
[?25l[?1c
    140 [?25h[?0c[?25l[?1c
:[?25h[?0c/^dummy text/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 64 lines, 2700 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_autoformat_join.failed test.ok test.out X* viminfo
cp test_autoformat_join.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_autoformat_join.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_autoformat_join.in" 23 lines, 524 charactersTests for setting the '[,'] marks when joining lines.

STARTTEST
:so small.vim
:/^\t\t/
0gqj:
:let a=string(getpos("'[")).'/'.string(getpos("']"))
:/^This line/;'}-join
:let b=string(getpos("'[")).'/'.string(getpos("']"))
:$put ='First test: Start/End '.string(a)
:$put ='Second test: Start/End '.string(b)
:/^\t\t/,$wq! test.out
ENDTESTO sodales, ludite, vos qui
attamen consulite per voster honur. Tua pulchra facies me fay planszer milies

This line.
Should be joined with the next line
and with this line

Results:[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for setting the '[,'] marks when joining lines.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 9 lines, 265 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^\t\t/
[?25l[?1c[?25h[?0c[?25l[?1cattamen consulite per voster honur.
Tua pulchra facies me fay planszer milies[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet a=string(getpos("'[")).'/'.string(getpos("']"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^This line/;'}-join
[?25l[?1cThis line.  Should be joined with the next line and with this line


~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet b=string(getpos("'[")).'/'.string(getpos("']"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='First test: Start/End '.string(a)
[?25l[?1cFirst test: Start/End '[0, 16, 1, 0]/[0, 17, 1, 0]'[?25h[?0c[?25l[?1c:[?25h[?0c$put ='Second test: Start/End '.string(b)
[?25l[?1cSecond test: Start/End '[0, 19, 11, 0]/[0, 19, 67, 0]'[?25h[?0c[?25l[?1c:[?25h[?0c/^\t\t/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 8 lines, 292 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_breakindent.failed test.ok test.out X* viminfo
cp test_breakindent.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_breakindent.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_breakindent.in" 122 lines, 3678 charactersTest for breakindent

STARTTEST
:so small.vim
:if !exists("+breakindent") | e! test.ok | w! test.out | qa! | endif
:10new|:vsp|:vert resize 20
:put =\"\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP\"
:set ts=4 sw=4 sts=4 breakindent
:fu! ScreenChar(line, width)
:let c=''
:for i in range(1,a:width)
:let c.=nr2char(screenchar(a:line, i))
:endfor
:let c.="\n"
:for i in range(1,a:width)
:let c.=nr2char(screenchar(a:line+1, i))
:endfor
:let c.="\n"
:for i in range(1,a:width)
:let c.=nr2char(screenchar(a:line+2, i))
:endfor
:return c
:endfu[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for breakindent[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 117 lines, 3627 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =line2
:"
:let g:test="Test 14: breakindent + visual blockwise delete #1"
:set all& breakindent viminfo+=nviminfo
:30vnew
:normal! 3a1234567890
:normal! a    abcde
:exec "normal! 0\<C-V>tex"
:let line1=ScreenChar(line('.'),8)
:call DoRecordScreen()
:"
:let g:test="Test 15: breakindent + visual blockwise delete #2"
:%d
:normal! 4a1234567890
:exec "normal! >>\<C-V>3f0x"
:let line1=ScreenChar(line('.'),20)
:call DoRecordScreen()
:quit!
:"
:%w! test.out
:qa!
ENDTEST
dummy text[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !exists("+breakindent") | e! test.ok | w! test.out | qa! | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c10new|:vsp|:vert resize 20
[?25l[?1c            ||||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name]            ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name]                                                  %dnormal! 4a1234567890
:exec "normal! >>\<C-V>3f0x"
:let line1=ScreenChar(line('.'),20)
:call DoRecordScreen()quit!"%w! test.out
:qaENDTEST
dummy text
test_breakindent.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0cput =\"\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP\"
[?25l[?1c        abcdefghijkl
mnopqrstuvwxyzABCDEF
GHIJKLMNOP          [+]        abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP[+][?25h[?0c[?25l[?1c:[?25h[?0cset ts=4 sw=4 sts=4 breakindent
[?25l[?1cabcdefghijklmnop
qrstuvwxyzABCDEFGHIJ
KLMNOP    abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP[?25h[?0c[?25l[?1c:[?25h[?0cfu! ScreenChar(line, width)
[?25l[?1c
:  [?25h[?0c:^Ilet c=''

[?25l[?1c:  [?25h[?0c:^Ifor i in range(1,a:width)

[?25l[?1c:    [?25h[?0c:^I^Ilet c.=nr2char(screenchar(a:line, i))

[?25l[?1c:    [?25h[?0c:^Iendfor

[?25l[?1c:  [?25h[?0c:       let c.="\n"

[?25l[?1c:  [?25h[?0c:^Ifor i in range(1,a:width)

[?25l[?1c:    [?25h[?0c:^I^Ilet c.=nr2char(screenchar(a:line+1, i))

[?25l[?1c:    [?25h[?0c:^Iendfor

[?25l[?1c:  [?25h[?0c:       let c.="\n"

[?25l[?1c:  [?25h[?0c:^Ifor i in range(1,a:width)

[?25l[?1c:    [?25h[?0c:^I^Ilet c.=nr2char(screenchar(a:line+2, i))

[?25l[?1c:    [?25h[?0c:^Iendfor

[?25l[?1c:  [?25h[?0c:^Ireturn c

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1c|
    abcdefghijklmnop|
qrstuvwxyzABCDEFGHIJ|
KLMNOP|||||||~                   
~                   
~                   
~                   
~                   
~                   
[No Name] [+]        abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name] [+]                                              :%d
:normal! 4a1234567890
:exec "normal! >>\<C-V>3f0x"[?25h[?0c[?25l[?1c:[?25h[?0cfu DoRecordScreen()
[?25l[?1c
:  [?25h[?0c:^Iwincmd l

[?25l[?1c:  [?25h[?0c:^I$put =printf(\"\n%s\", g:test)

[?25l[?1c:  [?25h[?0c:^I$put =g:line1

[?25l[?1c:  [?25h[?0c:^Iwincmd p

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1c|
    abcdefghijklmnop|
qrstuvwxyzABCDEFGHIJ|
KLMNOP||
~                   abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          [?25h[?0c[?25l[?1c:[?25h[?0cset briopt=min:0
[?25l[?1c    qrstuvwxyzABCDEF
    GHIJKLMNOP[?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 1: Simple breakindent"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                    
Test 1: Simple break
indent              
    abcd            
    qrst            
    GHIJ            Test 1: Simple breakindent    abcd    qrst    GHIJ[?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 2: Simple breakindent + sbr=>>"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset sbr=>>
[?25l[?1c>>qrstuvwxyzABCD
    >>EFGHIJKLMNOP


>>indent[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                           Test 1: Simple breakindent                                     abcd                                                       qrst                                                       GHIJ                                                   ~                                                          ~                                                          ~                                                                                                                                                                                Test 2: Simple breakindent + sbr=>>    abcd>>qr>>EF3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 3: Simple breakindent + briopt:sbr"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt=sbr,min:0 sbr=++
[?25l[?1c++  qrstuvwxyzABCDEF
++  GHIJKLMNOP    


++[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                           Test 2: Simple breakindent + sbr=>>                            abcd                                                       >>qr                                                       >>EF                                                                                                                                                                                                                                                                                                                                                          Test 3: Simple breakindent + briopt:sbrabcd++  qrst++  GHIJ3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 4: Simple breakindent + min width: 18"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset sbr= briopt=min:18
[?25l[?1c  qrstuvwxyzABCDEFGH
  IJKLMNOP    


indent  [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                           Test 3: Simple breakindent + briopt:sbr                        abcd                                                   ++  qrst                                                   ++  GHIJ                                                                                                                                                                                                                                                                                                                                                          Test 4: Simple breakindent + min width: 18abcdqrstuvIJKLMN3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test =" Test 5: Simple breakindent + shift by 2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt=shift:2,min:0
[?25l[?1c    qrstuvwxyzABCD
      EFGHIJKLMNOP


  indent[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                           Test 4: Simple breakindent + min width: 18                     abcd                                                     qrstuv                                                     IJKLMN                                                                                                                                                                                                                                                                                                                                                          Test 5: Simple breakindent + shift by 2abcdqrEF3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 6: Simple breakindent + shift by -1"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt=shift:-1,min:0
[?25l[?1cqrstuvwxyzABCDEFG
   HIJKLMNOP      


indent  [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                            Test 5: Simple breakindent + shift by 2                       abcd                                                         qr                                                         EF                                                                                                                                                                                                                                                                                                                                                          Test 6: Simple breakindent + shift by -1abcdqrstuHIJKL3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt=shift:1,sbr,min:0 nu sbr=? nuw=4
[?25l[?1c  1 
  2     abcdefghijkl
?        mnopqrstuvw
?        xyzABCDEFGH
?IJKLMNOP
  3                 
  4 Test 1: Simple b
?    reakindent
  5     abcd
  6     qrst[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                            Test 6: Simple breakindent + shift by -1                      abcd                                                      qrstu                                                      HIJKL                                                                                                                                                                                                                                                                                                                                                          Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr2     ab?m?x3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt=shift:1,sbr,min:0 nu sbr=# list
[?25l[?1c$^Iabcdefghijklmn
#      opqrstuvwxyzA
#      BCDEFGHIJKLMN
#      OP$       $

#$$$[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                            Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr   2     ab                                                 ?        m                                                 ?        x                                                                                                                                                                                                                                                                                                                                                        Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr2 ^Iabcd#      opq#      BCD3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 9: breakindent + shift by +1 + 'nu' + sbr=# list"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset briopt-=sbr
[?25l[?1c       #opqrstuvwxyz
       #ABCDEFGHIJKL
       #MNOP$


     #reakindent$[?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                            Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr  2 ^Iabcd                                                 #      opq                                                 #      BCD                                                                                                                                                                                                                                                                                                                                                        Test 9: breakindent + shift by +1 + 'nu' + sbr=# list2 ^Iabcd#op#AB3 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+=n"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo+=n sbr=~ nu nuw=4 nolist briopt=sbr,min:0
[?25l[?1c     abcdefghijkl
~       mnopqrstuvwx
~       yzABCDEFGHIJ
~       KLMNOP 

~   reakindent     [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines                                                            Test 9: breakindent + shift by +1 + 'nu' + sbr=# list       2 ^Iabcd                                                        #op                                                        #AB                                                                                                                                                                                                                                                                                                                                                        Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+=n2     ab~mn~yz3 more lines[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[No Name] [+]        [No Name] [+]                                              [?25h[?0c[?25l[?1c:[?25h[?0clet g:test="\n Test 11: strdisplaywidth when breakindent is on"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=n sbr=>> nu nuw=4 nolist briopt= ts=4
[?25l[?1c    >>
    >>
    >>


    >>reakindent 44  Test 9: breakindent + shift by +1 + 'nu' + sbr=# list 45   2 ^Iabcd 46        #op 47        #AB 48  49  Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+    >>=n 50   2     ab 51 ~       mn 52 ~       yz[?25h[?0c[?25l[?1c:[?25h[?0clet text=getline(2) "skip leading tab when calculating text width
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet width = strlen(text[1:])+indent(2)*4+strlen(&sbr)*3 " text wraps 3 times
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1c 46        #op                                              47        #AB                                              48                                                         49  Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+    >>=n                                                    50   2     ab                                              51 ~       mn                                              52 ~       yz                                                                                                                                                                    53  54  Test 11: strdisplaywidth when breakindent is on[?25h[?0c[?25l[?1c:[?25h[?0c$put =printf(\"strdisplaywidth: %d == calculated: %d\", strdisplaywidth(text),

width)
[?25l[?1c  1 | 47 #AB89Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+  >>=n50  2     ab1~       mn2yz34Test 11: strdisplaywidth when breakindent is on5strdisplaywidth: 46 == calculated: 64[?25h[?0c[?25l[?1c:[?25h[?0clet g:str="\t\t\t\t\t{"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test=" Test 12: breakindent + long indent"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[No Name] [+]        [No Name] [+]                                              [?25h[?0c[?25l[?1c:[?25h[?0cset all& breakindent linebreak briopt=min:10 nu numberwidth=3 ts=4
[?25l[?1c 1 |
 2 |abcdefghijklm|nopqrstuvwxyz|ABCDEFGHIJKLM|NOP|
 3 |
 4 Test 1: Simple   |
   breakindent      |
 5     abcd|
[No Name]             47 #AB 48  49  Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+=n 50   2     ab 51 ~mn 52 ~yz 53  54  Test 11: strdisplaywidth when breakindent is on 55 strdisplaywidth: 46 == calculated: 64[No Name]                                                  :%d
:normal! 4a1234567890
:exec "normal! >>\<C-V>3f0x"
:let line1=ScreenChar(line('.'),20)
:call DoRecordScreen()
:quit!
:"
:%w! test.out
:qa!
ENDTEST
dummy text
test_breakindent.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0c$put =g:str
[?25l[?1c54Test 11:
    strdisplaywidth
    when            
    breakindent is  
    on              
55 strdisplaywidth:
   46 ==
   calculated: 64
56            
             {[+][+][?25h[?0c[?25l[?1c56                  
             {      
                    
                    
                    
                    
                    
                    
                    
                    ~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(1,10)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1c[No Name] [+]        [No Name] [+]                                              [?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines57                  
58  Test 12:        
    breakindent +   
    long indent     
59 56               
60                  
61 ~                

[No Name] [+]         52 ~       yz                                              53                                                         54  Test 11: strdisplaywidth when breakindent is on        55 strdisplaywidth: 46 == calculated: 64                                                                                                                                                                                                                                                                                                                                                                                     56 { 57  58  Test 12: breakindent + long indent 59 56 60  61 ~[No Name] [+]                                              3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test, that the string "    a\tb\tc\td\te" is correctly
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" displayed in a 20 column wide window (see bug report
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" https://groups.google.com/d/msg/vim_dev/ZOdg2mc9c9Y/TT8EhFjEy0IJ
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly
[?25l[?1c   {57 8Test 12: breakindent + long indent956       60           61 ~         ~                                                                               ~                                                                               ~                                                                                                                                           ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cvert 20new
[?25l[?1c 1||||||||||||||||||||||~                   
~                   
~                   
~                   
~                   [No Name]            56 {57 58  Test 12: breakindent + long indent59 5660 61 ~~~~~~~~~~~~~~~~~[No Name] [+]                                              [?25h[?0c[?25l[?1c:[?25h[?0cset all& nocp breakindent briopt=min:10
[?25l[?1c||||||||||||||||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name]            56 {57 58  Test 12: breakindent + long indent59 5660 61 ~~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name] [+]                                              [?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, ["    a\tb\tc\td\te", "    z   y       x       w       v"])
[?25l[?1ca   bc
        d   e       
    z   y       x   
        w       v   [+][?25h[?0c[?25l[?1c:[?25h[?0c/^\s*a
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0ca   [?25l[?1c:[?25h[?0clet line1 = @0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c?^\s*z
[?25l[?1csearch hit TOP, continuing at BOTTOM[?25h[?0cz   [?25l[?1c:[?25h[?0clet line2 = @0
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cquit!
[?25l[?1c56              {57 58  Test 12: breakindent + long indent59 56    60           61 ~                                         
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c$put ='Test 13: breakindent with wrapping Tab'
[?25l[?1c62 Test 13: breakindent with wrapping Tab[?25h[?0c[?25l[?1c:[?25h[?0c$put =line1
[?25l[?1c63 d[?25h[?0c[?25l[?1c:[?25h[?0c$put =line2
[?25l[?1c64 w[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 14: breakindent + visual blockwise delete #1"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset all& breakindent viminfo+=nviminfo
[?25l[?1c{

 Test 12: breakindent + long indent
56

~
Test 13: breakindent with wrapping Tab
d
w
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c30vnew
[?25l[?1c||||||||||||||||||||||~                             
~                             
~                             
~                             
~                             
~                             
~                             
~                             [No Name]                       { Test 12: breakindent + long indent56~Test 13: breakindent with wrapping Tabdw~~~~~~~~~~~~~[No Name]                                        [?25h[?0c[?25l[?1c:[?25h[?0cnormal! 3a1234567890
[?25l[?1c123456789012345678901234567890[+][?25h[?0c[?25l[?1c:[?25h[?0cnormal! a    abcde
[?25l[?1c    abcde                     [?25h[?0c[?25l[?1c:[?25h[?0cexec "normal! 0\<C-V>tex"
[?25l[?1ce                             
~                             [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),8)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more linesTest 14: breakindent + visual blockwise delete #1e       ~       ~       [+][?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 15: breakindent + visual blockwise delete #2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%d
[?25l[?1c --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0cnormal! 4a1234567890
[?25l[?1c123456789012345678901234567890
1234567890                    [?25h[?0c[?25l[?1c:[?25h[?0cexec "normal! >>\<C-V>3f0x"
[?25l[?1c        1234567890            
~                             [?25h[?0c[?25l[?1c:[?25h[?0clet line1=ScreenChar(line('.'),20)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more linesTest 15: breakindent + visual blockwise delete #2        1234567890  ~                   ~                   [?25h[?0c[?25l[?1c:[?25h[?0cquit!
[?25l[?1cstrdisplaywidth: 46 == calculated: 64                               { Test 12: breakindent + long indent
56                  ~         Test 13: breakindent with wrapping Tab
dwTest 14: breakindent + visual blockwise delete #1
e       ~       ~       Test 15: breakindent + visual blockwise delete #2
        1234567890  ~                   ~                       
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%w! test.out
[?25l[?1c"test.out" [New] 74L, 1210C written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_cdo.failed test.ok test.out X* viminfo
cp test_cdo.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_cdo.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_cdo.in" 107 lines, 4955 charactersTests for the :cdo, :cfdo, :ldo and :lfdo commands

STARTTEST
:so small.vim
:if !has('quickfix') | e! test.ok | wq! test.out | endif

:call writefile(["Line1", "Line2", "Line3"], 'Xtestfile1')
:call writefile(["Line1", "Line2", "Line3"], 'Xtestfile2')
:call writefile(["Line1", "Line2", "Line3"], 'Xtestfile3')

:function RunTests(cchar)
:  let nl="\n"

:  enew
:  " Try with an empty list
:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . ' ' .col('.') . 'C' . nl"

:  " Populate the list and then try
:  exe a:cchar . "getexpr ['non-error 1', 'Xtestfile1:1:3:Line1', 'non-error 2','Xtestfile2:2:2:Line2', 'non-error 3', 'Xtestfile3:3:1:Line3']"
:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . ' ' .col('.') . 'C' . nl"[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for the :cdo, :cfdo, :ldo and :lfdo commands[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 102 lines, 4884 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:  exe a:cchar . 'pfile'
:  exe "." . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L'
. ' ' . col('.') . 'C' . nl"

:  " List with only one valid entry
:  exe a:cchar . "getexpr ['Xtestfile2:2:5:Line2']"
:  exe a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L' . ' '
. col('.') . 'C' . nl"
:endfunction

:let result=''
:" Tests for the :cdo quickfix list command
:call RunTests('c')
:let result .= "\n"
:" Tests for the :ldo location list command
:call RunTests('l')

:edit! test.out
:0put =result
:wq!
ENDTEST

~                                                                               [?25h[?0c
[?25l[?1c

:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('quickfix') | e! test.ok | wq! test.out | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["Line1", "Line2", "Line3"], 'Xtestfile1')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["Line1", "Line2", "Line3"], 'Xtestfile2')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["Line1", "Line2", "Line3"], 'Xtestfile3')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction RunTests(cchar)
[?25l[?1c
:  [?25h[?0c:  let nl="\n"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  " Try with an empty list

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . '

' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " Populate the list and then try

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "getexpr ['non-error 1', 'Xtestfile1:1:3:Line1', 'non-error

2', 'Xtestfile2:2:2:Line2', 'non-error 3', 'Xtestfile3:3:1:Line3']"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . '

' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " Run command only on selected error lines

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "2,3" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  " Boundary condition tests

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "1,1" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "3" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  " Range test commands

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "%" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "1,$" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe a:cchar . 'prev'

[?25l[?1c:  [?25h[?0c:  exe "." . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  " Invalid error lines test

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  exe "27" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "4,5" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " Run commands from an unsaved buffer

[?25l[?1c:  [?25h[?0c:  let v:errmsg=''

[?25l[?1c:  [?25h[?0c:  enew

[?25l[?1c:  [?25h[?0c:  setlocal modified

[?25l[?1c:  [?25h[?0c:  exe "2,2" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  if v:errmsg =~# 'No write since last change'

[?25l[?1c:    [?25h[?0c:     let g:result .= 'Unsaved file change test passed' . nl

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:     let g:result .= 'Unsaved file change test failed' . nl

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " If the executed command fails, then the operation should be aborted

[?25l[?1c:  [?25h[?0c:  enew!

[?25l[?1c:  [?25h[?0c:  let subst_count = 0

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "do s/Line/xLine/ | let subst_count += 1"

[?25l[?1c:  [?25h[?0c:  if subst_count == 1 && getline('.') == 'xLine1'

[?25l[?1c:    [?25h[?0c:     let g:result .= 'Abort command on error test passed' . nl

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:     let g:result .= 'Abort command on error test failed' . nl

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  exe "2,2" . a:cchar . "do! let g:result .= expand('%') . ' ' . line('.') 

. 'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " List with no valid error entries

[?25l[?1c:  [?25h[?0c:  edit! +2 Xtestfile1

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "getexpr ['non-error 1', 'non-error 2', 'non-error 3']"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . '

' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "2" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  let v:errmsg=''

[?25l[?1c:  [?25h[?0c:  exe "%" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "1,$" . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') .

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "." . a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . '

L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  let g:result .= v:errmsg

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " List with only one valid entry

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "getexpr ['Xtestfile3:3:1:Line3']"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "do let g:result .= expand('%') . ' ' . line('.') . 'L' . '

' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " Tests for :cfdo and :lfdo commands

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "getexpr ['non-error 1', 'Xtestfile1:1:3:Line1', 'Xtestfile

1:2:1:Line2', 'non-error 2', 'Xtestfile2:2:2:Line2', 'non-error 3', 'Xtestfile3:

2:3:Line2', 'Xtestfile3:3:1:Line3']"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L' . 

' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "3" . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "2,3" . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') 

. 'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "%" . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe "1,$" . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') 

. 'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . 'pfile'

[?25l[?1c:  [?25h[?0c:  exe "." . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 

'L' . ' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c:  " List with only one valid entry

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "getexpr ['Xtestfile2:2:5:Line2']"

[?25l[?1c:  [?25h[?0c:  exe a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L' . 

' ' . col('.') . 'C' . nl"

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:  exe a:cchar . 'pfile'
:  exe "." . a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L'
. ' ' . col('.') . 'C' . nl"

:  " List with only one valid entry
:  exe a:cchar . "getexpr ['Xtestfile2:2:5:Line2']"
:  exe a:cchar . "fdo let g:result .= expand('%') . ' ' . line('.') . 'L' . ' '
. col('.') . 'C' . nl"
:endfunction

:let result=''
:" Tests for the :cdo quickfix list command
:call RunTests('c')
:let result .= "\n"
:" Tests for the :ldo location list command
:call RunTests('l')

:edit! test.out
:0put =result
:wq!
ENDTEST

~                                                                               [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c

:[?25h[?0clet result=''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Tests for the :cdo quickfix list command
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall RunTests('c')
[?25l[?1c"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

(4 of 6): Line2

Error detected while processing function RunTests:

line   29:

E16: Invalid range: 27cdo let g:result .= expand('%') . ' ' . line('.') . 'L' .

 ' ' . col('.') . 'C' . nl

line   30:

E16: Invalid range: 4,5cdo let g:result .= expand('%') . ' ' . line('.') . 'L' 

. ' ' . col('.') . 'C' . nl

line   36:

E37: No write since last change (add ! to override)

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

line   46:

E37: No write since last change (add ! to override)

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile1" 3 lines, 18 characters

line   59:

E16: Invalid range: 2cdo let g:result .= expand('%') . ' ' . line('.') . 'L' . 

' ' . col('.') . 'C' . nl

"Xtestfile3" 3 lines, 18 characters

(1 of 1): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

(7 of 8): Line2

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

(5 of 8): Line2

(1 of 1): Line2

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0clet result .= "\n"
[?25l[?1cLine1
Line2
Line3
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c" Tests for the :ldo location list command
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall RunTests('l')
[?25l[?1c"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile3" 3 lines, 18 characters

(6 of 6): Line3

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

(4 of 6): Line2

Error detected while processing function RunTests:

line   29:

E16: Invalid range: 27ldo let g:result .= expand('%') . ' ' . line('.') . 'L' .

 ' ' . col('.') . 'C' . nl

line   30:

E16: Invalid range: 4,5ldo let g:result .= expand('%') . ' ' . line('.') . 'L' 

. ' ' . col('.') . 'C' . nl

line   36:

E37: No write since last change (add ! to override)

"Xtestfile1" 3 lines, 18 characters

(2 of 6): Line1

line   46:

E37: No write since last change (add ! to override)

"Xtestfile2" 3 lines, 18 characters

(4 of 6): Line2

"Xtestfile1" 3 lines, 18 characters

line   59:

E16: Invalid range: 2ldo let g:result .= expand('%') . ' ' . line('.') . 'L' . 

' ' . col('.') . 'C' . nl

"Xtestfile3" 3 lines, 18 characters

(1 of 1): Line3

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

(7 of 8): Line2

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile1" 3 lines, 18 characters

(2 of 8): Line1

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

"Xtestfile3" 3 lines, 18 characters

(7 of 8): Line2

"Xtestfile2" 3 lines, 18 characters

(5 of 8): Line2

(5 of 8): Line2

(1 of 1): Line2

Press ENTER or type command to continue[?25h[?0c[?25l[?1cLine1
Line2
Line3
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cedit! test.out
[?25l[?1c"test.out" [New File]~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c0put =result
[?25l[?1c65 more linesXtestfile1 1L 3C
Xtestfile2 2L 2CXtestfile3 3L 1CXtestfile2 2L 2CUnsaved file change test passedAbort command on error test passedXtestfile2 2L 2CXtestfile3 3L 1CXtestfile1 1L 3CXtestfile2 2L 2CXtestfile3 2L 3CXtestfile3 2L 3CXtestfile2 2L 2CXtestfile3 2L 3CXtestfile1 1L 3CXtestfile2 2L 2CXtestfile3 2L 3CXtestfile1 1L 3CXtestfile2 2L 2CXtestfile3 2L 3CXtestfile2 2L 2CXtestfile2 2L 5C[?25h[?0c[?25l[?1c:[?25h[?0cwq!
[?25l[?1c"test.out" [New File] 66 lines, 1156 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_changelist.failed test.ok test.out X* viminfo
cp test_changelist.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_changelist.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_changelist.in" 22 lines, 288 charactersTest changelist position after splitting window
Set 'undolevels' to make changelist for sourced file

STARTTEST
:so small.vim
Gkylp:set ul=100
Gylp:set ul=100
gg
:vsplit
:try
:  normal g;
:  normal ggVGcpass^[
:catch
:  normal ggVGcfail^[
:finally
:  %w! test.out
:endtry
:qa!
ENDTEST

1
2
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest changelist position after splitting window[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 14 lines, 163 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c

[?25l[?1c11[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c
[?25l[?1c22[?25h[?0c[?25l[?1c:[?25h[?0cset ul=100
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0cvsplit
[?25l[?1c|
 window                                 |
Set 'undolevels' to make changelist for |
sourced file|
             |
STARTTEST       |
:so small.vim  |
Gkylp:set ul=100|
Gylp:set ul=100|
gg  |
:vsplit     |
:try                 |
:  normal g;|pass|
:catch  |
:  normal ggVGcfail^[|
:finally|
:  %w! test.out|
:endtry|
:qa!|
ENDTEST|
  |
test_changelist.in [+]                   Test changelist position after splitting windowSet 'undolevels' to make changelist forsourced fileSTARTTEST:so small.vimGkylp:set ul=100Gylp:set ul=100gg:vsplit:try:  normal g;:  normal ggVGcpass^[:catch:  normal ggVGcfail^[:finally:  %w! test.out:endtry:qa!ENDTESTtest_changelist.in [+]                 [?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:  normal g;

[?25l[?1c:  [?25h[?0c:  normal ggVGcpass
[?25l[?1c21 fewer lines
:  

:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:  normal ggVGcfail

[?25l[?1c:  

:  [?25h[?0c:finally

[?25l[?1c:  [?25h[?0c:  %w! test.out

[?25l[?1c"test.out" [New File] 1 line, 5 characters written

:  [?25h[?0c:endtry
[?25l[?1cpass||||||||||~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                          pass~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                      ~                                         [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_charsearch.failed test.ok test.out X* viminfo
cp test_charsearch.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_charsearch.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_charsearch.in" 25 lines, 503 charactersTest for character searches

STARTTEST
:so small.vim
:" check that "fe" and ";" work
/^X
ylfep;;p,,p:
:" check that save/restore works
/^Y
ylfep:let csave = getcharsearch()
fip:call setcharsearch(csave)
;p;p:
:" check that setcharsearch() changes the settins.
/^Z
ylfep:call setcharsearch({'char': 'k'})
;p:call setcharsearch({'forward': 0})
$;p:call setcharseearch({'until'}: 1})
;;p:
:/^X/,$w! test.out
:qa!
ENDTEST

Xabcdefghijkemnopqretuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for character searches[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 371 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" check that "fe" and ";" work
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^X
[?25l[?1c[?25h[?0cXabcd[?25l[?1ceXfghijkemnopqretuvwxyz[?25h[?0c[?25l[?1ceXtuvwxyz[?25h[?0c[?25l[?1ceXmnopqreXtuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" check that save/restore works
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Y
[?25l[?1c
Yabcdefghijkemnopqretuvwxyz[?25h[?0cYabcd[?25l[?1ceYfghijkemnopqretuvwxyz[?25h[?0c[?25l[?1c
:[?25h[?0clet csave = getcharsearch()
[?25l[?1c[?25h[?0cYfgh[?25l[?1ciYjkemnopqretuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0ccall setcharsearch(csave)
[?25l[?1c[?25h[?0cYjk[?25l[?1ceYmnopqretuvwxyz[?25h[?0c[?25l[?1ceYtuvwxyz[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" check that setcharsearch() changes the settins.
[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^Z
[?25l[?1c
Zabcdefghijkemnokqretkvwxyz[?25h[?0cZabcd[?25l[?1ceZfghijkemnokqretkvwxyz[?25h[?0c[?25l[?1c
:[?25h[?0ccall setcharsearch({'char': 'k'})
[?25l[?1c[?25h[?0cZfghij[?25l[?1ckZemnokqretkvwxyz[?25h[?0c[?25l[?1c:[?25h[?0ccall setcharsearch({'forward': 0})
[?25l[?1c[?25h[?0c[?25l[?1ckZvwxyz[?25h[?0c[?25l[?1c:[?25h[?0ccall setcharseearch({'until'}: 1})
[?25l[?1cE121: Undefined variable: until:
E116: Invalid arguments for function setcharseearch

Press ENTER or type command to continue[?25h[?0c[?25l[?1cSTARTTEST
:so small.vim[?25h[?0c[?25l[?1ckZqretkZvwxyz[?25h[?0c[?25l[?1c
:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^X/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 3 lines, 95 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_close_count.failed test.ok test.out X* viminfo
cp test_close_count.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_close_count.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_close_count.in" 153 lines, 2665 charactersTests for :[count]close! and :[count]hide     vim: set ft=vim :

STARTTEST
:so small.vim
:let tests = []
:for i in range(5)
:new
:endfor
:4wincmd w
:close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:1close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:$close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:1wincmd w
:2close![?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :[count]close! and :[count]hide     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 41 lines, 749 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call add(tests, buffers)
:2wincmd w
:+1close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(0, map(copy(tests), 'join(v:val, " ")'))
:w
:only!
:b1
ENDTEST

STARTTEST
:let tests = []
:for i in range(5)
:new
:endfor
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:4wincmd w
:.hide[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet tests = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(5)
[?25l[?1c
:  [?25h[?0c:new

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0c4wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cclose!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :b1
ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :only!
:b1
ENDTEST

STARTTEST
test_close_count.in                                                             [?25h[?0c[?25l[?1c


:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c2close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c2wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c-1close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c+1close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" [New File]test.out [?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, map(copy(tests), 'join(v:val, " ")'))
[?25l[?1c6 5 4 2 1
5 4 2 1
5 4 2
5 2
7 5 2
7 5[+][?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 7 lines, 39 characters written   [?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1c6 5 4 2 1
5 4 2 15 4 25 27 5 27 5~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c"test_close_count.in" 153 lines, 2665 characters:2wincmd w
:+1close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(0, map(copy(tests), 'join(v:val, " ")'))
:w:only!:b1ENDTESTSTARTTEST:let tests = []:for i in range(5):new:endfor:let buffers = []:windo call add(buffers, bufnr('%')):call add(tests, buffers):4wincmd w:.hide:let buffers = [][?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 44 lines, 815 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:2wincmd w
:+hide
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
Go^[
:w
:only!
:b1
ENDTEST

STARTTEST
:let tests = []
:set hidden
:for i in range(5)
:new
:endfor
:1wincmd w
:$ hide
:let buffers = []
:windo call add(buffers, bufnr('%'))[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clet tests = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(5)
[?25l[?1c
:  [?25h[?0c:new

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c4wincmd w
[?25l[?1c[No Name]                                                                       test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0c.hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :b1
ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :only!
:b1
ENDTEST

STARTTEST
test_close_count.in                                                             [?25h[?0c[?25l[?1c


:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c2hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c3wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c-hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c+hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 7 lines, 39 characters6 5 4 2 1
5 4 2 15 4 25 27 5 27 5test.out [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), map(copy(tests), 'join(v:val, " ")'))
[?25l[?1c13 12 11 10 9 113 12 11 9 112 11 9 112 11 9[+][?25h[?0c[?25l[?1c12 9
15 12 9
15 12[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0cw
[?25l[?1c"test.out" 15 lines, 106 characters written   [?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1c6 5 4 2 1
5 4 2 15 4 25 27 5 27 513 12 11 10 9 113 12 11 9 112 11 9 112 11 912 915 12 9
15 12~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c:+hide:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
Go^[
:w:only!:b1ENDTESTSTARTTEST
:let tests = []
:set hidden
:for i in range(5):new:endfor:1wincmd w:$ hide:let buffers = []:windo call add(buffers, bufnr('%')):call add(tests, buffers)"test_close_count.in" line 93 of 153 --60%-- col 1[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 25 lines, 448 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:1wincmd w
:.+close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
Go^[
:w
:only!
:b1
ENDTEST

STARTTEST
:let tests = []
:set hidden
:for i in range(5)
:new
:endfor
:4wincmd w
^Wc
:let buffers = []
:windo call add(buffers, bufnr('%'))[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clet tests = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(5)
[?25l[?1c
:  [?25h[?0c:new

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$ hide
[?25l[?1c~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$-1 close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0c.+close!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 15 lines, 106 characters6 5 4 2 1
5 4 2 15 4 25 27 5 27 5test.out [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), map(copy(tests), 'join(v:val, " ")'))
[?25l[?1c[+][?25h[?0c[?25l[?1c15 12 915 120 19 18 17 16
20 19 18 16
20 18 16
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0cw
[?25l[?1c"test.out" 19 lines, 143 characters written   [?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1c6 5 4 2 1
5 4 2 1
5 4 2
5 2
7 5 2
7 5

13 12 11 10 9 1
13 12 11 9 1
12 11 9 1
12 11 9
12 9
15 12 9
15 12

20 19 18 17 16
20 19 18 16
20 18 16

~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c:.+close!
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:e! test.out
:call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
Go^[
:w:only!:b1ENDTESTSTARTTEST
:let tests = []
:set hidden
:for i in range(5)
:new:endfor:4wincmd w
^Wc:let buffers = []:windo call add(buffers, bufnr('%')):call add(tests, buffers)"test_close_count.in" line 121 of 153 --79%-- col 1[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 28 lines, 511 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST1^Wc
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
9^Wc
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:1wincmd w
2^Wc
:let buffers = []
:windo call add(buffers, bufnr('%'))
:call add(tests, buffers)
:only!
:e! test.out
:call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
:w
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clet tests = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor i in range(5)
[?25l[?1c
:  [?25h[?0c:new

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0c4wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :qa!
ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       test_close_count.in                                                             [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       :call append(line('$'), map(copy(tests), 'join(v:val, " ")'))
:w
:qa!
ENDTEST

test_close_count.in                                                             [?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c

:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1wincmd w
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0clet buffers = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwindo call add(buffers, bufnr('%'))
[?25l[?1c[No Name]                                                                       [No Name]                                                                       [?25h[?0c[?25l[?1c:[?25h[?0ccall add(tests, buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1c~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" line 19 of 19 --100%-- col 16 5 4 2 1
5 4 2 15 4 25 27 5 27 513 12 11 10 9 113 12 11 9 112 11 9 112 11 912 915 12 915 1220 19 18 17 1620 19 18 1620 18 16[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), map(copy(tests), 'join(v:val, " ")'))
[?25l[?1c25 24 23 21 124 23 21 124 23 2124 21[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" 23 lines, 183 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_command_count.failed test.ok test.out X* viminfo
cp test_command_count.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_command_count.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_command_count.in" 158 lines, 3836 charactersTest for user command countsvim: set ft=vim :

STARTTEST
:so small.vim
:lang C
:let g:lines = []
:com -range=% RangeLines :call add(g:lines, 'RangeLines '.<line1>.' '.<line2>)
:com -range -addr=arguments RangeArguments :call add(g:lines, 'RangeArguments '.<line1>.' '.<line2>)
:com -range=% -addr=arguments RangeArgumentsAll :call add(g:lines, 'RangeArgumentsAll '.<line1>.' '.<line2>)
:com -range -addr=loaded_buffers RangeLoadedBuffers :call add(g:lines, 'RangeLoadedBuffers '.<line1>.' '.<line2>)
:com -range=% -addr=loaded_buffers RangeLoadedBuffersAll :call add(g:lines, 'RangeLoadedBuffersAll '.<line1>.' '.<line2>)
:com -range -addr=buffers RangeBuffers :call add(g:lines, 'RangeBuffers '.<line1>.' '.<line2>)
:com -range=% -addr=buffers RangeBuffersAll :call add(g:lines, 'RangeBuffersAll
'.<line1>.' '.<line2>)
:com -range -addr=windows RangeWindows :call add(g:lines, 'RangeWindows '.<line1>.' '.<line2>)
:com -range=% -addr=windows RangeWindowsAll :call add(g:lines, 'RangeWindowsAll
'.<line1>.' '.<line2>)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for user command countsvim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 49 lines, 1753 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:%RangeTabs
:RangeTabsAll
:1tabonly
:s/\n/\r\r\r\r\r/
:2ma<
:$-ma>
:'<,'>RangeLines
:com -range=% -buffer LocalRangeLines :call add(g:lines, 'LocalRangeLines '.<line1>.' '.<line2>)
:'<,'>LocalRangeLines
:b1
ENDTEST

STARTTEST
:call add(g:lines, '')
:%argd
:arga a b c d
:let v:errmsg = ''
:5argu
:call add(g:lines, '5argu ' . v:errmsg)
:$argu
:call add(g:lines, '4argu ' . expand('%:t'))
:let v:errmsg = ''[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:lines = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% RangeLines :call add(g:lines, 'RangeLines '.<line1>.' '.<line2>)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccom -range -addr=arguments RangeArguments :call add(g:lines, 'RangeArguments '

.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -addr=arguments RangeArgumentsAll :call add(g:lines, 'RangeArgume

ntsAll '.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range -addr=loaded_buffers RangeLoadedBuffers :call add(g:lines, 'RangeLo

adedBuffers '.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -addr=loaded_buffers RangeLoadedBuffersAll :call add(g:lines, 'Ra

ngeLoadedBuffersAll '.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range -addr=buffers RangeBuffers :call add(g:lines, 'RangeBuffers '.<line

1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -addr=buffers RangeBuffersAll :call add(g:lines, 'RangeBuffersAll

'.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range -addr=windows RangeWindows :call add(g:lines, 'RangeWindows '.<line

1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -addr=windows RangeWindowsAll :call add(g:lines, 'RangeWindowsAll

'.<line1>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range -addr=tabs RangeTabs :call add(g:lines, 'RangeTabs '.<line1>.' '.<l

ine2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -addr=tabs RangeTabsAll :call add(g:lines, 'RangeTabsAll '.<line1

>.' '.<line2>)
[?25l[?1c:%RangeTabs[?25h[?0c[?25l[?1c:[?25h[?0cset hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cargdo echo "loading buffers"
[?25l[?1cloading buffers
"a" [New File]

loading buffers

"b" [New File]

loading buffers

"c" [New File]

loading buffers

"d" [New File]

loading buffers

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cargu 3
[?25l[?1c"b" [New file] --No lines in buffer-- (file 3 of 5)~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               "b" [New file] --No lines in buffer-- (file 3 of 5)[?25h[?0c[?25l[?1c:[?25h[?0c.-,$-RangeArguments
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%RangeArguments
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cRangeArgumentsAll
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cN
[?25l[?1c"a" [New file] --No lines in buffer-- (file 2 of 5)[?25h[?0c[?25l[?1c:[?25h[?0c.RangeArguments
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csplit|split|split|split
[?25l[?1c~                                                                               ~                                                                               ~                                                                               a                                                                               ~                                                                               ~                                                                               ~                                                                               a                                                                               ~                                                                               ~                                                                               a                                                                               ~                                                                               ~                                                                               ~                                                                               a                                                                               ~                                                                               ~                                                                               a                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c3wincmd w
[?25l[?1ca                                                                               a                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.,$RangeWindows
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%RangeWindows
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cRangeWindowsAll
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cblast|bd
[?25l[?1c"a" [New file] --No lines in buffer-- (file 2 of 5)[?25h[?0c[?25l[?1c:[?25h[?0c.,$RangeLoadedBuffers
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%RangeLoadedBuffers
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cRangeLoadedBuffersAll
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,$RangeBuffers
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%RangeBuffers
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cRangeBuffersAll
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabe|tabe|tabe|tabe
[?25l[?1c a  [No Name]  [No Name]  [No Name]  [No Name]                                  X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cnormal 2gt
[?25l[?1c a  [No Name]  [No Name]  [No Name]  [No Name]                                  X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c.,$RangeTabs
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%RangeTabs
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cRangeTabsAll
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1tabonly
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cs/\n/\r\r\r\r\r/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c2ma<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$-ma>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c'<,'>RangeLines
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccom -range=% -buffer LocalRangeLines :call add(g:lines, 'LocalRangeLines '.<li

ne1>.' '.<line2>)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c'<,'>LocalRangeLines
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c:RangeTabsAll
:1tabonly
:s/\n/\r\r\r\r\r/
:2ma<
:$-ma>
:'<,'>RangeLines
:com -range=% -buffer LocalRangeLines :call add(g:lines, 'LocalRangeLines '.<line1>.' '.<line2>):'<,'>LocalRangeLines:b1ENDTESTSTARTTEST:call add(g:lines, ''):%argd:arga a b c d:let v:errmsg = '':5argu:call add(g:lines, '5argu ' . v:errmsg):$argu:call add(g:lines, '4argu ' . expand('%:t')):let v:errmsg = '':1argu"test_command_count.in" line 54 of 158 --34%-- col 1 (file (2) of 5)[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 41 lines, 793 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:e x
:0tabm
:normal 1gt
:call add(g:lines, '0tabm ' . expand('%:t'))
:tabonly!
:only!
:e! test.out
:call append(0, g:lines)
:unlet g:lines
:w|bd
:b1
ENDTEST

STARTTEST
:let g:lines = []
:func BufStatus()
:  call add(g:lines, 'aaa: ' . buflisted(g:buf_aaa) . ' bbb: ' . buflisted(g:buf_bbb) . ' ccc: ' . buflisted(g:buf_ccc))
:endfunc
:se nohidden
:e aaa
:let buf_aaa = bufnr('%')
:e bbb[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c5argu
[?25l[?1cE16: Invalid range[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '5argu ' . v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$argu
[?25l[?1c"d" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '4argu ' . expand('%:t'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1argu
[?25l[?1c"a" [Modified][New file] line 6 of 6 --100%-- col 1 (file 1 of 4)[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '1argu ' . expand('%:t'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c100b
[?25l[?1cE16: Invalid range[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '100b ' . v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csplit|split|split|split
[?25l[?1c~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               a [+]                                                                           [?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c0close
[?25l[?1c~                                                                               ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               a [+]                                                                           [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '0close ' . v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$wincmd w
[?25l[?1ca [+]                                                                           a [+]                                                                           [?25h[?0c[?25l[?1c:[?25h[?0c$close
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               ~                                                                               ~                                                                               a [+]                                                                           ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               a [+]                                                                           [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '$close ' . winnr())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$+close
[?25l[?1cE16: Invalid range[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '$+close ' . v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$tabe
[?25l[?1c 3+ a  [No Name]                                                                X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '$tabe ' . tabpagenr())
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$+tabe
[?25l[?1cE16: Invalid range[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '$+tabe ' . v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1cAlready only one window[?25h[?0c[?25l[?1c:[?25h[?0ce x
[?25l[?1c"x" [New File]x          X[?25h[?0c[?25l[?1c:[?25h[?0c0tabm
[?25l[?1c x 3+ a  X[?25h[?0c[?25l[?1c:[?25h[?0cnormal 1gt
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, '0tabm ' . expand('%:t'))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabonly!
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1cAlready only one window[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" [New File][?25h[?0c[?25l[?1c:[?25h[?0ccall append(0, g:lines)
[?25l[?1cRangeLoadedBuffers 2 4
RangeLoadedBuffers 1 4RangeLoadedBuffersAll 1 4RangeBuffers 2 5RangeBuffers 1 5RangeBuffersAll 1 5RangeTabs 2 5RangeTabs 1 5RangeTabsAll 1 5RangeLines 2 5LocalRangeLines 2 55argu E16: Invalid range4argu d1argu a100b E16: Invalid range0close $close 3$+close E16: Invalid range$tabe 2$+tabe E16: Invalid range0tabm x[?25h[?0c[?25l[?1c:[?25h[?0cunlet g:lines
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw|bd
[?25l[?1c"test.out" [New File] 30 lines, 492 characters written~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               x" [New file] --No lines in buffer-- (file (1) of 4)[?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c:0tabm
:normal 1gt:call add(g:lines, '0tabm ' . expand('%:t')):tabonly!:only!:e! test.out:call append(0, g:lines):unlet g:lines:w|bd:b1ENDTESTSTARTTEST:let g:lines = []:func BufStatus():  call add(g:lines, 'aaa: ' . buflisted(g:buf_aaa) . ' bbb: ' . buflisted(g:buf_bbb) . ' ccc: ' . buflisted(g:buf_ccc)):endfunc:se nohidden:e aaa:let buf_aaa = bufnr('%'):e bbb:let buf_bbb = bufnr('%')"test_command_count.in" line 98 of 158 --62%-- col 1 (file (1) of 4)[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 23 lines, 486 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call BufStatus()
:exe buf_bbb . "," . buf_ccc . "bdelete"
:call BufStatus()
:exe buf_aaa . "bdelete"
:call BufStatus()
:e! test.out
:call append('$', g:lines)
:unlet g:lines
:delfunc BufStatus
:w|bd
:b1
ENDTEST

STARTTEST
:se hidden
:only!
:let g:lines = []
:%argd
:arga a b c d e f
:3argu
:let args = ''
:.,$-argdo let args .= ' '.expand('%')
:call add(g:lines, 'argdo:' . args)[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0clet g:lines = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunc BufStatus()
[?25l[?1c
:  [?25h[?0c:  call add(g:lines, 'aaa: ' . buflisted(g:buf_aaa) . ' bbb: ' . buflisted(g

:buf_bbb) . ' ccc: ' . buflisted(g:buf_ccc))

[?25l[?1c:  [?25h[?0c:endfunc
[?25l[?1c:call BufStatus()
:exe buf_bbb . "," . buf_ccc . "bdelete"
:call BufStatus()[?25h[?0c[?25l[?1c:[?25h[?0cse nohidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce aaa
[?25l[?1c"aaa" [New File]~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet buf_aaa = bufnr('%')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce bbb
[?25l[?1c"bbb" [New File][?25h[?0c[?25l[?1c:[?25h[?0clet buf_bbb = bufnr('%')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce ccc
[?25l[?1c"ccc" [New File][?25h[?0c[?25l[?1c:[?25h[?0clet buf_ccc = bufnr('%')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c"test_command_count.in" 158 lines, 3836 characters:exe buf_bbb . "," . buf_ccc . "bdelete"
:call BufStatus():exe buf_aaa . "bdelete":call BufStatus():e! test.out:call append('$', g:lines):unlet g:lines:delfunc BufStatus:w|bd:b1ENDTESTSTARTTEST:se hidden:only!:let g:lines = []:%argd:arga a b c d e f:3argu:let args = '':.,$-argdo let args .= ' '.expand('%'):call add(g:lines, 'argdo:' . args):split|split|split|split[?25h[?0c[?25l[?1c:[?25h[?0ccall BufStatus()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe buf_bbb . "," . buf_ccc . "bdelete"
[?25l[?1c2 buffers deleted[?25h[?0c[?25l[?1c:[?25h[?0ccall BufStatus()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe buf_aaa . "bdelete"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall BufStatus()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 30 lines, 492 charactersRangeArguments 2 4RangeArguments 1 5
RangeArgumentsAll 1 5RangeArguments 2 2
RangeWindows 3 5
RangeWindows 1 5RangeWindowsAll 1 5
RangeLoadedBuffers 2 4
RangeLoadedBuffers 1 4
RangeLoadedBuffersAll 1 4
RangeBuffers 2 5
RangeBuffers 1 5
RangeBuffersAll 1 5
RangeTabs 2 5
RangeTabs 1 5
RangeTabsAll 1 5RangeLines 2 5
LocalRangeLines 2 55argu E16: Invalid range
4argu d1argu100b E16: Invalid range[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', g:lines)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cunlet g:lines
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunc BufStatus
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw|bd
[?25l[?1c"test.out" 33 lines, 555 characters written~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               x" [New file] --No lines in buffer-- (file (1) of 4)[?25h[?0c[?25l[?1c:[?25h[?0cb1
[?25l[?1c"test_command_count.in" 158 lines, 3836 characters:exe buf_bbb . "," . buf_ccc . "bdelete"
:call BufStatus():exe buf_aaa . "bdelete":call BufStatus():e! test.out:call append('$', g:lines):unlet g:lines:delfunc BufStatus:w|bd:b1ENDTESTSTARTTEST:se hidden:only!:let g:lines = []:%argd:arga a b c d e f:3argu:let args = '':.,$-argdo let args .= ' '.expand('%'):call add(g:lines, 'argdo:' . args):split|split|split|split[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 30 lines, 675 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:call add(g:lines, 'argdo:' . args)
:split|split|split|split
:2wincmd w
:let windows = ''
:.,$-windo let windows .= ' '.winnr()
:call add(g:lines, 'windo:'. windows)
:b2
:let buffers = ''
:.,$-bufdo let buffers .= ' '.bufnr('%')
:call add(g:lines, 'bufdo:' . buffers)
:3bd
:let buffers = ''
:3,7bufdo let buffers .= ' '.bufnr('%')
:call add(g:lines, 'bufdo:' . buffers)
:tabe|tabe|tabe|tabe
:normal! 2gt
:let tabpages = ''
:.,$-tabdo let tabpages .= ' '.tabpagenr()
:call add(g:lines, 'tabdo:' . tabpages)
:e! test.out
:call append('$', g:lines)
:w|qa!
ENDTEST
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cse hidden
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0conly!
[?25l[?1cAlready only one window[?25h[?0c[?25l[?1c:[?25h[?0clet g:lines = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%argd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0carga a b c d e f
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3argu
[?25l[?1c"c" [New file] --No lines in buffer-- (file 3 of 6)~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet args = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,$-argdo let args .= ' '.expand('%')
[?25l[?1c"d" [New file] --No lines in buffer-- (file 4 of 6)

"e" [New File]

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, 'argdo:' . args)
[?25l[?1c~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0csplit|split|split|split
[?25l[?1c~                                                                               ~                                                                               ~                                                                               e                                                                               ~                                                                               ~                                                                               ~                                                                               e                                                                               ~                                                                               ~                                                                               e                                                                               ~                                                                               ~                                                                               ~                                                                               e                                                                               ~                                                                               ~                                                                               e                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c2wincmd w
[?25l[?1ce                                                                               e                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet windows = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,$-windo let windows .= ' '.winnr()
[?25l[?1ce                                                                               e                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, 'windo:'. windows)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cb2
[?25l[?1ca [+]"a" [Modified][New file] line 6 of 6 --100%-- col 1 (file (5) of 6)[?25h[?0c[?25l[?1c:[?25h[?0clet buffers = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,$-bufdo let buffers .= ' '.bufnr('%')
[?25l[?1c"x" [New File]~                                                                               ~                                                                               ~                                                                               e    efile] --No lines in buffer-- (file 5 of 6)[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, 'bufdo:' . buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3bd
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet buffers = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c3,7bufdo let buffers .= ' '.bufnr('%')
[?25l[?1c[No Name]"[No Name]" --No lines in buffer-- (file (5) of 6)[?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, 'bufdo:' . buffers)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctabe|tabe|tabe|tabe
[?25l[?1c 5 [No Name]  [No Name]  [No Name]  [No Name]  [No Name]                        X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cnormal! 2gt
[?25l[?1c 5 [No Name]  [No Name]  [No Name]  [No Name]  [No Name]                        X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0clet tabpages = ''
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c.,$-tabdo let tabpages .= ' '.tabpagenr()
[?25l[?1c 5 [No Name]  [No Name]  [No Name]  [No Name]  [No Name]                        X~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0ccall add(g:lines, 'tabdo:' . tabpages)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" 33 lines, 555 characterstest.out  [No Name]   XRangeArguments 2 4
RangeArguments 1 5RangeArgumentsAll 1 5RangeArguments 2 2RangeWindows 3 5RangeWindows 1 5RangeWindowsAll 1 5RangeLoadedBuffers 2 4RangeLoadedBuffers 1 4RangeLoadedBuffersAll 1 4RangeBuffers 2 5RangeBuffers 1 5RangeBuffersAll 1 5RangeTabs 2 5RangeTabs 1 5RangeTabsAll 1 5RangeLines 2 5LocalRangeLines 2 55argu E16: Invalid range4argu d1argu a[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', g:lines)
[?25l[?1c+ test.out  [No Name]  X[?25h[?0c[?25l[?1c:[?25h[?0cw|qa!
[?25l[?1c"test.out" 38 lines, 638 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_comparators.failed test.ok test.out X* viminfo
cp test_comparators.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_comparators.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_comparators.in" 21 lines, 283 characters" Test for expression comparators.   vim: set ft=vim :


STARTTEST
:so small.vim
:try
:  let oldisident=&isident
:  set isident+=#
:  if 1 is#1
:    $put ='ok'
:  else
:    $put ='ng'
:  endif
:finally
:  let &isident=oldisident
:endtry
:"
:/^marker/+1,$wq! test.out
ENDTEST

marker
~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1c" Test for expression comparators.   vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 14 lines, 200 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:  let oldisident=&isident

[?25l[?1c:  [?25h[?0c:  set isident+=#

[?25l[?1c:  [?25h[?0c:  if 1 is#1

[?25l[?1c:    [?25h[?0c:    $put ='ok'

[?25l[?1c:    [?25h[?0c:  else

[?25l[?1c:    [?25h[?0c:    $put ='ng'

[?25l[?1c:    [?25h[?0c:  endif

[?25l[?1c:  [?25h[?0c:finally

[?25l[?1c:  [?25h[?0c:  let &isident=oldisident

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c" Test for expression comparators.   vim: set ft=vim :


STARTTEST
:so small.vim
:try
:  let oldisident=&isident
:  set isident+=#
:  if 1 is#1
:    $put ='ok'ok[?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^marker/+1,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 1 line, 3 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_erasebackword.failed test.ok test.out X* viminfo
cp test_erasebackword.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_erasebackword.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_erasebackword.in" 19 lines, 427 charactersTest for erasing backword

STARTTEST
:so small.vim
:so mbyte.vim
:set encoding=utf-8
G
:/^test/,$w! test.out
:qa!
ENDTEST

test starts here:

~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for erasing backword[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 12 lines, 362 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1cTest for erasing backword

STARTTEST
:so small.vim
:so mbyte.vim
:set encoding=utf-8
G
o wwwこんにちわ世界ワールドvim ^W^[
o wwwこんにちわ世界ワールドvim ^W^W^[
o wwwこんにちわ世界ワールドvim ^W^W^W^[
o wwwこんにちわ世界ワールドvim ^W^W^W^W^[
o wwwこんにちわ世界ワールドvim ^W^W^W^W^W^[
o wwwこんにちわ世界ワールドvim ^W^W^W^W^W^W^[
:/^test/,$w! test.out
:qa!
ENDTEST

test starts here:

~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c

[?25l[?1c
 www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1cド[?25h[?0c[?25l[?1c
 www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
 www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
 www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
www[?25h[?0c[?25l[?1cこ[?25h[?0c[?25l[?1cん[?25h[?0c[?25l[?1cに[?25h[?0c[?25l[?1cち[?25h[?0c[?25l[?1cわ[?25h[?0c[?25l[?1c世[?25h[?0c[?25l[?1c界[?25h[?0c[?25l[?1cワ[?25h[?0c[?25l[?1cー[?25h[?0c[?25l[?1cル[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
:[?25h[?0c/^test/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 8 lines, 111 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_eval.failed test.ok test.out X* viminfo
cp test_eval.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_eval.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_eval.in" 229 lines, 5925 charactersTest for various eval features.   vim: set ft=vim :

Note: system clipboard is saved, changed and restored.

clipboard contents
something else

STARTTEST
:so small.vim
:set encoding=latin1
:set noswapfile
:lang C
:fun AppendRegContents(reg)
  call AppendRegParts(a:reg, getregtype(a:reg), getreg(a:reg), string(getreg(a:reg, 0, 1)), getreg(a:reg, 1), string(getreg(a:reg, 1, 1)))
:endfun
:fun AppendRegParts(reg, type, cont, strcont, cont1, strcont1)
  call append('$', printf('%s: type %s; value: %s (%s), expr: %s (%s)', a:reg, a:type, a:cont, a:strcont, a:cont1, a:strcont1))
endfun
:command -nargs=? AR :call AppendRegContents(<q-args>)
:fun SetReg(...)
    call call('setreg', a:000)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for various eval features.   vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 215 lines, 5734 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"
:" Using $ instead of '$' must give an error
:try
: call append($, 'foobar')
:catch
:$put =v:exception
:endtry
:"
:$put ='{{{1 getcurpos/setpos'
/^012345678
6l:let sp = getcurpos()
0:call setpos('.', sp)
jyl:$put
:"
:/^start:/+1,$wq! test.out
:" vim: et ts=4 isk-=\: fmr=???,???
:call getchar()
ENDTEST

012345678
012345678

start:[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=latin1
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try
: call append($, 'foobar')
:catch
:$put =v:exception
:endtry
:"
:$put ='{{{1 getcurpos/setpos'
/^012345678
6l:let sp = getcurpos()
0:call setpos('.', sp)
jyl:$put
:"
:/^start:/+1,$wq! test.out
:" vim: et ts=4 isk-=\: fmr=???,???
:call getchar()
ENDTEST

012345678
012345678

start:[?25h[?0c[?25l[?1c:[?25h[?0cset noswapfile
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfun AppendRegContents(reg)
[?25l[?1c
:  [?25h[?0c  call AppendRegParts(a:reg, getregtype(a:reg), getreg(a:reg), string(getreg

(a:reg, 0, 1)), getreg(a:reg, 1), string(getreg(a:reg, 1, 1)))

[?25l[?1c:  [?25h[?0c:endfun
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try[?25h[?0c[?25l[?1c:[?25h[?0cfun AppendRegParts(reg, type, cont, strcont, cont1, strcont1)
[?25l[?1c
:  [?25h[?0c  call append('$', printf('%s: type %s; value: %s (%s), expr: %s (%s)', a:re

g, a:type, a:cont, a:strcont, a:cont1, a:strcont1))

[?25l[?1c:  [?25h[?0cendfun
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try[?25h[?0c[?25l[?1c:[?25h[?0ccommand -nargs=? AR :call AppendRegContents(<q-args>)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfun SetReg(...)
[?25l[?1c
:  [?25h[?0c    call call('setreg', a:000)

[?25l[?1c:  [?25h[?0c    call append('$', printf('{{{2 setreg(%s)', string(a:000)[1:-2]))

[?25l[?1c:  [?25h[?0c    call AppendRegContents(a:1)

[?25l[?1c:  [?25h[?0c    if a:1 isnot# '='

[?25l[?1c:    [?25h[?0c        execute "silent normal! Go==\n==\e\"".a:1."P"

[?25l[?1c:    [?25h[?0c    endif

[?25l[?1c:  [?25h[?0cendfun
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try
: call append($, 'foobar')
:catch
:$put =v:exception
:endtry[?25h[?0c[?25l[?1c:[?25h[?0cfun ErrExe(str)
[?25l[?1c
:  [?25h[?0c    call append('$', 'Executing '.a:str)

[?25l[?1c:  [?25h[?0c    try

[?25l[?1c:    [?25h[?0c        execute a:str

[?25l[?1c:    [?25h[?0c    catch

[?25l[?1c:    [?25h[?0c        $put =v:exception

[?25l[?1c:    [?25h[?0c    endtry

[?25l[?1c:  [?25h[?0cendfun
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try
: call append($, 'foobar')
:catch
:$put =v:exception
:endtry[?25h[?0c[?25l[?1c:[?25h[?0cfun Test()
[?25l[?1c
:  [?25h[?0c$put ='{{{1 let tests'

[?25l[?1c:  [?25h[?0clet @" = 'abc'

[?25l[?1c:  [?25h[?0cAR "

[?25l[?1c:  [?25h[?0clet @" = "abc\n"

[?25l[?1c:  [?25h[?0cAR "

[?25l[?1c:  [?25h[?0clet @" = "abc\<C-m>"

[?25l[?1c:  [?25h[?0cAR "

[?25l[?1c:  [?25h[?0clet @= = '"abc"'

[?25l[?1c:  [?25h[?0cAR =

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Basic setreg tests'

[?25l[?1c:  [?25h[?0ccall SetReg('a', 'abcA', 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('b', 'abcB', 'v')

[?25l[?1c:  [?25h[?0ccall SetReg('c', 'abcC', 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('d', 'abcD', 'V')

[?25l[?1c:  [?25h[?0ccall SetReg('e', 'abcE', 'b')

[?25l[?1c:  [?25h[?0ccall SetReg('f', 'abcF', "\<C-v>")

[?25l[?1c:  [?25h[?0ccall SetReg('g', 'abcG', 'b10')

[?25l[?1c:  [?25h[?0ccall SetReg('h', 'abcH', "\<C-v>10")

[?25l[?1c:  [?25h[?0ccall SetReg('I', 'abcI')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Appending single lines with setreg()'

[?25l[?1c:  [?25h[?0ccall SetReg('A', 'abcAc', 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('A', 'abcAl', 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('A', 'abcAc2','c')

[?25l[?1c:  [?25h[?0ccall SetReg('b', 'abcBc', 'ca')

[?25l[?1c:  [?25h[?0ccall SetReg('b', 'abcBb', 'ba')

[?25l[?1c:  [?25h[?0ccall SetReg('b', 'abcBc2','ca')

[?25l[?1c:  [?25h[?0ccall SetReg('b', 'abcBb2','b50a')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0ccall SetReg('C', 'abcCl', 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('C', 'abcCc', 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('D', 'abcDb', 'b')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0ccall SetReg('E', 'abcEb', 'b')

[?25l[?1c:  [?25h[?0ccall SetReg('E', 'abcEl', 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('F', 'abcFc', 'c')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Appending NL with setreg()'

[?25l[?1c:  [?25h[?0ccall setreg('a', 'abcA2', 'c')

[?25l[?1c:  [?25h[?0ccall setreg('b', 'abcB2', 'v')

[?25l[?1c:  [?25h[?0ccall setreg('c', 'abcC2', 'l')

[?25l[?1c:  [?25h[?0ccall setreg('d', 'abcD2', 'V')

[?25l[?1c:  [?25h[?0ccall setreg('e', 'abcE2', 'b')

[?25l[?1c:  [?25h[?0ccall setreg('f', 'abcF2', "\<C-v>")

[?25l[?1c:  [?25h[?0ccall setreg('g', 'abcG2', 'b10')

[?25l[?1c:  [?25h[?0ccall setreg('h', 'abcH2', "\<C-v>10")

[?25l[?1c:  [?25h[?0ccall setreg('I', 'abcI2')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0ccall SetReg('A', "\n")

[?25l[?1c:  [?25h[?0ccall SetReg('B', "\n", 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('C', "\n")

[?25l[?1c:  [?25h[?0ccall SetReg('D', "\n", 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('E', "\n")

[?25l[?1c:  [?25h[?0ccall SetReg('F', "\n", 'b')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Setting lists with setreg()'

[?25l[?1c:  [?25h[?0ccall SetReg('a', ['abcA3'], 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('b', ['abcB3'], 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('c', ['abcC3'], 'b')

[?25l[?1c:  [?25h[?0ccall SetReg('d', ['abcD3'])

[?25l[?1c:  [?25h[?0ccall SetReg('e', [1, 2, 'abc', 3])

[?25l[?1c:  [?25h[?0ccall SetReg('f', [1, 2, 3])

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Appending lists with setreg()'

[?25l[?1c:  [?25h[?0ccall SetReg('A', ['abcA3c'], 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('b', ['abcB3l'], 'la')

[?25l[?1c:  [?25h[?0ccall SetReg('C', ['abcC3b'], 'lb')

[?25l[?1c:  [?25h[?0ccall SetReg('D', ['abcD32'])

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0ccall SetReg('A', ['abcA32'])

[?25l[?1c:  [?25h[?0ccall SetReg('B', ['abcB3c'], 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('C', ['abcC3l'], 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('D', ['abcD3b'], 'b')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Appending lists with NL with setreg()'

[?25l[?1c:  [?25h[?0ccall SetReg('A', ["\n", 'abcA3l2'], 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('B', ["\n", 'abcB3c2'], 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('C', ["\n", 'abcC3b2'], 'b')

[?25l[?1c:  [?25h[?0ccall SetReg('D', ["\n", 'abcD3b50'],'b50')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Setting lists with NLs with setreg()'

[?25l[?1c:  [?25h[?0ccall SetReg('a', ['abcA4-0', "\n", "abcA4-2\n", "\nabcA4-3", "abcA4-4\nabcA4

-4-2"])

[?25l[?1c:  [?25h[?0ccall SetReg('b', ['abcB4c-0', "\n", "abcB4c-2\n", "\nabcB4c-3", "abcB4c-4\na

bcB4c-4-2"], 'c')

[?25l[?1c:  [?25h[?0ccall SetReg('c', ['abcC4l-0', "\n", "abcC4l-2\n", "\nabcC4l-3", "abcC4l-4\na

bcC4l-4-2"], 'l')

[?25l[?1c:  [?25h[?0ccall SetReg('d', ['abcD4b-0', "\n", "abcD4b-2\n", "\nabcD4b-3", "abcD4b-4\na

bcD4b-4-2"], 'b')

[?25l[?1c:  [?25h[?0ccall SetReg('e', ['abcE4b10-0', "\n", "abcE4b10-2\n", "\nabcE4b10-3", "abcE4

b10-4\nabcE4b10-4-2"], 'b10')

[?25l[?1c:  [?25h[?0c

[?25l[?1c:  [?25h[?0c$put ='{{{1 Search and expressions'

[?25l[?1c:  [?25h[?0ccall SetReg('/', ['abc/'])

[?25l[?1c:  [?25h[?0ccall SetReg('/', ["abc/\n"])

[?25l[?1c:  [?25h[?0ccall SetReg('=', ['"abc/"'])

[?25l[?1c:  [?25h[?0ccall SetReg('=', ["\"abc/\n\""])

[?25l[?1c:  [?25h[?0c$put ='{{{1 System clipboard'

[?25l[?1c:  [?25h[?0cif has('clipboard')

[?25l[?1c:    [?25h[?0c" Save and restore system clipboard.

[?25l[?1c:    [?25h[?0c" If no connection to X-Server is possible, test should succeed.

[?25l[?1c:    [?25h[?0clet _clipreg = ['*', getreg('*'), getregtype('*')]

[?25l[?1c:    [?25h[?0clet _clipopt = &cb

[?25l[?1c:    [?25h[?0clet &cb='unnamed'

[?25l[?1c:    [?25h[?0c5y

[?25l[?1c:    [?25h[?0cAR *

[?25l[?1c:    [?25h[?0ctabdo :windo :echo "hi"

[?25l[?1c:    [?25h[?0c6y

[?25l[?1c:    [?25h[?0cAR *

[?25l[?1c:    [?25h[?0clet &cb=_clipopt

[?25l[?1c:    [?25h[?0ccall call('setreg', _clipreg)

[?25l[?1c:    [?25h[?0celse

[?25l[?1c:    [?25h[?0c  call AppendRegParts('*', 'V', "clipboard contents\n", "['clipboard conte

nts']", "clipboard contents\n", "['clipboard contents']")

[?25l[?1c:    [?25h[?0c  call AppendRegParts('*', 'V', "something else\n", "['something else']", 

"something else\n", "['something else']")

[?25l[?1c:    [?25h[?0cendif

[?25l[?1c:  [?25h[?0c$put ='{{{1 Errors'

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg()')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg(1)')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg(1, 2, 3, 4)')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg([], 2)')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg(1, {})')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg(1, 2, [])')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg("/", ["1", "2"])')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg("=", ["1", "2"])')

[?25l[?1c:  [?25h[?0ccall ErrExe('call setreg(1, ["", "", [], ""])')

[?25l[?1c:  [?25h[?0cendfun
[?25l[?1c:"
:" Using $ instead of '$' must give an error
:try
: call append($, 'foobar')
:catch
:$put =v:exception
:endtry
:"
:$put ='{{{1 getcurpos/setpos'
/^012345678
6l:let sp = getcurpos()
0:call setpos('.', sp)
jyl:$put
:"
:/^start:/+1,$wq! test.out
:" vim: et ts=4 isk-=\: fmr=???,???
:call getchar()
ENDTEST

012345678
012345678

start:[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall Test()
[?25l[?1c*: type V; value: something else^@ (['something else']), expr: something else^@
(['something else']){{{1 Errors
Executing call setreg()Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1)
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1, 2, 3, 4)
Vim(call):E118: Too many arguments for function: setreg
Executing call setreg([], 2)
Vim(call):E730: using List as a String
Executing call setreg(1, {})
Vim(call):E731: using Dictionary as a String
Executing call setreg(1, 2, [])
Vim(call):E730: using List as a String
Executing call setreg("/", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more lines
Executing call setreg("=", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg(1, ["", "", [], ""])
Vim(call):E730: using List as a String
[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunction SetReg
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunction AppendRegContents
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunction ErrExe
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelfunction Test
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cdelcommand AR
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall garbagecollect(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" function name not starting with capital
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:func! g:test()

[?25l[?1c:  [?25h[?0c:echo "test"

[?25l[?1c:  [?25h[?0c:endfunc

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:$put =v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c{{{1 Errors
Executing call setreg()
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1)
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1, 2, 3, 4)8: Too many arguments for function: setreg[], 2)730: using List as a String1, {}1Dictionary as a String2, [])0List as a String"/", ["1", "2"])883: search pattern and expression register may not contain two or more linesExecuting call setreg("=", ["1", "2"])Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg(1, ["", "", [], ""])Vim(call):E730: using List as a String
Vim(function):E128: Function name must start with a capital or "s:": g:test()
~                                                                               [?25h[?0c[?25l[?1c

:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" function name includes a colon
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:func! b:test()

[?25l[?1c:  [?25h[?0c:echo "test"

[?25l[?1c:  [?25h[?0c:endfunc

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:$put =v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c{{{1 Errors
Executing call setreg()
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1)
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1, 2, 3, 4)Vim(function):E128: Function name must start with a capital or "s:": b:test()[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" function name folowed by #
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c:func! test2() "#

[?25l[?1c:  [?25h[?0c:echo "test2"

[?25l[?1c:  [?25h[?0c:endfunc

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:$put =v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1cExecuting call setreg()
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1)
Vim(call):E119: Not enough arguments for function: setreg
Executing call setreg(1, 2, 3, 4)
Vim(call):E118: Too many arguments for function: setreg
Executing call setreg([], 2)Vim(call):E730: using List as a String
Executing call setreg(1, {})Vim(call):E731: using Dictionary as a String
Executing call setreg(1, 2, [])Vim(call):E730: using List as a String
Executing call setreg("/", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg("=", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg(1, ["", "", [], ""])
Vim(call):E730: using List as a Stringfunction):E128: Function name must start with a capital or "s:": g:test()btest2() "#[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" function name starting with/without "g:", buffer-local funcref.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! g:Foo(n)
[?25l[?1c
:  [?25h[?0c:  $put ='called Foo(' . a:n . ')'

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1cExecuting call setreg()
Vim(call):E119: Not enough arguments for function: setreg[?25h[?0c[?25l[?1c
:[?25h[?0clet b:my_func = function('Foo')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall b:my_func(1)
[?25l[?1c
called Foo(1)[?25h[?0c[?25l[?1c
:[?25h[?0cecho g:Foo(2)
[?25l[?1c0
called Foo(2)[?25h[?0c[?25l[?1c
:[?25h[?0cecho Foo(3)
[?25l[?1c0
called Foo(3)[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" script-local function used in Funcref must exist.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso test_eval_func.vim
[?25l[?1cs:Testje exists: 0
func s:Testje exists: 1
Bar exists: 1
func Bar exists: 1[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Using $ instead of '$' must give an error
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c: call append($, 'foobar')

[?25l[?1c:  [?25h[?0c:catch

[?25l[?1c:  [?25h[?0c:$put =v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1cExecuting call setreg(1, {})
Vim(call):E731: using Dictionary as a String
Executing call setreg(1, 2, [])
Vim(call):E730: using List as a String
Executing call setreg("/", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg("=", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more linesExecuting call setreg(1, ["", "", [], ""])
Vim(call):E730: using List as a Stringfunction):E128: Function name must start with a capital or "s:": g:test()btest2() "#
called Foo(123
s:Testje exists: 0
func s:Testje exists: 1
Bar exists: 1func Bar exists: 1
Vim(call):E116: Invalid arguments for function append[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='{{{1 getcurpos/setpos'
[?25l[?1c
{{{1 getcurpos/setpos[?25h[?0c[?25l[?1c
/[?25h[?0c^012345678
[?25l[?1csearch hit BOTTOM, continuing at TOP:$put ='{{{1 getcurpos/setpos'
/^012345678
6l:let sp = getcurpos()
0:call setpos('.', sp)
jyl:$put
:"
:/^start:/+1,$wq! test.out
:" vim: et ts=4 isk-=\: fmr=???,???
:call getchar()
ENDTEST

012345678
012345678

start:
{{{1 let tests
": type v; value: abc (['abc']), expr: abc (['abc'])
": type V; value: abc^@ (['abc']), expr: abc^@ (['abc'])
": type V; value: abc^M^@ (['abc^M']), expr: abc^M^@ (['abc^M'])
=: type v; value: abc (['abc']), expr: "abc" (['"abc"'])
{{{1 Basic setreg tests
{{{2 setreg('a', 'abcA', 'c')
a: type v; value: abcA (['abcA']), expr: abcA (['abcA'])
search hit BOTTOM, continuing at TOP[?25h[?0c012345[?25l[?1c:[?25h[?0clet sp = getcurpos()
[?25l[?1c[?25h[?0c
[?25l[?1c:[?25h[?0ccall setpos('.', sp)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put
[?25l[?1cExecuting call setreg(1, 2, [])
Vim(call):E730: using List as a String
Executing call setreg("/", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more lines
Executing call setreg("=", ["1", "2"])
Vim(call):E883: search pattern and expression register may not contain two or more lines
Executing call setreg(1, ["", "", [], ""])
Vim(call):E730: using List as a String
Vim(function):E128: Function name must start with a capital or "s:": g:test()
Vim(function):E128: Function name must start with a capital or "s:": b:test()
Vim(function):E128: Function name must start with a capital or "s:": test2() "#
called Foo(1)
called Foo(2)
called Foo(3)
s:Testje exists: 0
func s:Testje exists: 1
Bar exists: 1
func Bar exists: 1
Vim(call):E116: Invalid arguments for function append
{{{1 getcurpos/setpos
6[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/+1,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 353 lines, 11246 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_fixeol.failed test.ok test.out X* viminfo
cp test_fixeol.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_fixeol.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_fixeol.in" 40 lines, 780 charactersTests for 'fixeol'vim: set ft=vim :

STARTTEST
:" use Unix fileformat for consistency
:set ff=unix
:enew!
awith eol^[:w! XXEol
:enew!
:set noeol nofixeol
awithout eol^[:w! XXNoEol
:set eol fixeol
:bwipe XXEol XXNoEol
:"
:" try editing files with 'fixeol' disabled
:e! XXEol
ostays eol^[:set nofixeol
:w! XXTestEol
:e! XXNoEol
ostays without^[:set nofixeol
:w! XXTestNoEol
:bwipe XXEol XXNoEol XXTestEol XXTestNoEol
:set fixeol[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for 'fixeol'vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 35 lines, 698 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"
:" Append "END" to each file so that we can see what the last written char was.
ggdGaEND^[:w >>XXEol
:w >>XXNoEol
:w >>XXTestEol
:w >>XXTestNoEol
:"
:" Concatenate the results
:e! test.out
a0^[:$r XXEol
:$r XXNoEol
Go1^[:$r XXTestEol
:$r XXTestNoEol
:w
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
2 buffers wiped out

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c:w! XXTestEol
:e! XXNoEol
ostays without^[:set nofixeol:w! XXTestNoEol:bwipe XXEol XXNoEol XXTestEol XXTestNoEol:set fixeol:":" Append "END" to each file so that we can see what the last written char was.ggdGaEND^[:w >>XXEol:w >>XXNoEol:w >>XXTestEol:w >>XXTestNoEol:":" Concatenate the results:e! test.outa0^[:$r XXEol:$r XXNoEolGo1^[:$r XXTestEol:$r XXTestNoEol:w:qa!ENDTEST[?25h[?0c[?25l[?1c
:[?25h[?0c" try editing files with 'fixeol' disabled
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! XXEol
[?25l[?1c"XXEol" 1 line, 9 characterswith eol~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c
stays eol[?25h[?0c[?25l[?1c:[?25h[?0cset nofixeol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! XXTestEol
[?25l[?1c"XXTestEol" [New File] 2 lines, 19 characters written[?25h[?0c[?25l[?1c:[?25h[?0ce! XXNoEol
[?25l[?1c"XXNoEol" [Incomplete last line] 1 line, 11 charactersout eol
~                                                                               [?25h[?0c[?25l[?1c
stays without[?25h[?0c[?25l[?1c:[?25h[?0cset nofixeol
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cw! XXTestNoEol
[?25l[?1c"XXTestNoEol" [New File][Incomplete last line] 2 lines, 25 characters written[?25h[?0c[?25l[?1c:[?25h[?0cbwipe XXEol XXNoEol XXTestEol XXTestNoEol
[?25l[?1c"test_fixeol.in" 40 lines, 780 characters

4 buffers wiped out

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cset fixeol
[?25l[?1c:w! XXTestEol
:e! XXNoEol
ostays without^[:set nofixeol:w! XXTestNoEol:bwipe XXEol XXNoEol XXTestEol XXTestNoEol:set fixeol:":" Append "END" to each file so that we can see what the last written char was.ggdGaEND^[:w >>XXEol:w >>XXNoEol:w >>XXTestEol:w >>XXTestNoEol:":" Concatenate the results:e! test.outa0^[:$r XXEol:$r XXNoEolGo1^[:$r XXTestEol:$r XXTestNoEol:w:qa!ENDTEST[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Append "END" to each file so that we can see what the last written char was.
[?25l[?1c[?25h[?0c[?25l[?1cTests for 'fixeol'vim: set ft=vim :

STARTTEST
:" use Unix fileformat for consistency
:set ff=unix
:enew!
awith eol^[:w! XXEol
:enew!
:set noeol nofixeol
awithout eol^[:w! XXNoEol
:set eol fixeol
:bwipe XXEol XXNoEol
:"
:" try editing files with 'fixeol' disabled
:e! XXEol
ostays eol^[:set nofixeol[?25h[?0c[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1cEND[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXEol
[?25l[?1c"XXEol" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXNoEol
[?25l[?1c"XXNoEol" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXTestEol
[?25l[?1c"XXTestEol" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0cw >>XXTestNoEol
[?25l[?1c"XXTestNoEol" 1 line, 4 characters appended[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Concatenate the results
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce! test.out
[?25l[?1c"test.out" [New File][?25h[?0c[?25l[?1c0[?25h[?0c[?25l[?1c:[?25h[?0c$r XXEol
[?25l[?1c"XXEol" 2 lines, 13 characterswith eolEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXNoEol
[?25l[?1c"XXNoEol" 1 line, 15 characterswithout eolEND[?25h[?0c[?25l[?1c
1[?25h[?0c[?25l[?1c:[?25h[?0c$r XXTestEol
[?25l[?1c"XXTestEol" 3 lines, 23 characterswith eolstays eolEND[?25h[?0c[?25l[?1c:[?25h[?0c$r XXTestNoEol
[?25l[?1c"XXTestNoEol" 2 lines, 29 characterswithout eolstays withoutEND[?25h[?0c[?25l[?1c:[?25h[?0cw
[?25l[?1c"test.out" [New File] 10 lines, 84 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_increment.failed test.ok test.out X* viminfo
cp test_increment.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_increment.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_increment.in" 620 lines, 5843 charactersTests for using Ctrl-A/Ctrl-X on visual selections

Test cases
==========

1) Ctrl-A on visually selected number
Text:
foobar-10
    Expected:
    1)    Ctrl-A on start of line:foobar-9
    2)    Ctrl-A on visually selected "-10":foobar-9
    3)    Ctrl-A on visually selected "10":foobar-11
    4)    Ctrl-X on visually selected "-10"foobar-11
    5)    Ctrl-X on visually selected "10"foobar-9

2) Ctrl-A on visually selected lines
Text:
10[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for using Ctrl-A/Ctrl-X on visual selections[?25h[?0c[?25l[?1c/^STARTTEST
21) block-wise increment on part of hexadecimal
Text:
0x123456

  Expected:
  1) Ctrl-V f3 <ctrl-a>
0x124456STARTTEST
:so small.vim
:"
:" Avoid CTRL-X being mapped in Visual mode for MS-Windows
:vmapclear
:"
:" Test 1
:/^S1=/+,/^E1=/-y a
:/^E1=/+put a
^A:/^E1=/+2put a
f-v$^A:/^E1=/+3put a
f1v$^A:/^E1=/+4put a[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 327 lines, 2425 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST1
1a
E19====# Test 20
S20====
a
E20====# Test 21
S21====
0x123456
E21====ENDTEST
[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Avoid CTRL-X being mapped in Visual mode for MS-Windows
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvmapclear
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test 1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S1=/+,/^E1=/-y a
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c:[?25h[?0c/^E1=/+put a
[?25l[?1csearch hit BOTTOM, continuing at TOP:" Save the report
:/^# Test 1/,$w! test.out
:qa!


# Test 1
S1======
foobar-10
E1======

foobar-10


# Test 2
S2=====
10
20
30
40
E2=====


search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c9[?25h[?0c[?25l[?1c:[?25h[?0c/^E1=/+2put a
[?25l[?1csearch hit BOTTOM, continuing at TOPfoobar-10search hit BOTTOM, continuing at TOP[?25h[?0cfoobar[?25l[?1c[?25h[?0c[?25l[?1c-10[?25h[?0c[?25l[?1c-9[?25h[?0c[?25l[?1c:[?25h[?0c/^E1=/+3put a
[?25l[?1csearch hit BOTTOM, continuing at TOPfoobar-10search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c10[?25h[?0c[?25l[?1c11[?25h[?0c[?25l[?1c:[?25h[?0c/^E1=/+4put a
[?25l[?1csearch hit BOTTOM, continuing at TOPfoobar-10search hit BOTTOM, continuing at TOP[?25h[?0cfoobar[?25l[?1c[?25h[?0c[?25l[?1c-10[?25h[?0c[?25l[?1c-11[?25h[?0c[?25l[?1c:[?25h[?0c/^E1=/+5put a
[?25l[?1csearch hit BOTTOM, continuing at TOPfoobar-10search hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c10[?25h[?0c[?25l[?1c9[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 2
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S2=/+,/^E2=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E2=/+put a
[?25l[?1c4 more lines40
E2=====

10
20
30
404 more lines[?25h[?0c[?25l[?1c40 
[?25h[?0c[?25l[?1c0 
20 
30 
4[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c
11
213141[?25h[?0c


[?25l[?1c:[?25h[?0c.+put a
[?25l[?1c4 more lines10
20
30
404 more lines[?25h[?0c[?25l[?1c40 
[?25h[?0c[?25l[?1c0 
20 
30 
4[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c
9192939[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 3
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S3=/+,/^E3=/-y a
[?25l[?1c7 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E3=/+put a
[?25l[?1c7 more lines30

40
E3=====

10

20

30

40


# Test 4
S4=====
foobar-10
E4=====# Test 5
S5====
7 more lines[?25h[?0c[?25l[?1c40 
[?25h[?0c[?25l[?1c0 
 
20 
 
30 
 
4[?25h[?0c[?25l[?1c12243648[?25h[?0c[?25l[?1c:[?25h[?0c.+put a
[?25l[?1c7 more lines10

20

30

407 more lines[?25h[?0c[?25l[?1c40 
[?25h[?0c[?25l[?1c0 
 
20 
 
30 
 
4[?25h[?0c[?25l[?1c8162432[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 4
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S4=/+,/^E4=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E4=/+put a
[?25l[?1cfoobar-10
E4=====

foobar-10[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cfoobar[?25h[?0c[?25l[?1c
foobar[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 5
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats+=alpha
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S5=/+,/^E5=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E5=/+put a
[?25l[?1c4 more lines# Test 5
S5====
a
a
a
a
E5====

a
a
a
a4 more lines[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c 
a 
a 
a[?25h[?0c[?25l[?1cbcde[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 6
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S6=/+,/^E6=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E6=/+put a
[?25l[?1c4 more lines# Test 6
S6====
z
z
z
z
E6====

z
z
z
z


# Test 7
S7====
2
1
0
-1
-2
E7====

4 more lines[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c 
z 
z 
z[?25h[?0c[?25l[?1cyxwv[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 7
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats&vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S7=/+,/^E7=/-y a
[?25l[?1c5 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E7=/+put a
[?25l[?1c5 more lines2
1
0
-1
-25 more lines[?25h[?0c[?25l[?1c-2 
[?25h[?0c[?25l[?1c 
1 
0 
-1 
-[?25h[?0c[?25l[?1c3210-1[?25h[?0c[?25l[?1c:[?25h[?0c.+put a
[?25l[?1c5 more lines2
1
0
-1
-25 more lines[?25h[?0c[?25l[?1c-2 
[?25h[?0c[?25l[?1c 
1 
0 
-1 
-[?25h[?0c[?25l[?1c10-1
-2-3[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 8
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S8=/+,/^E8=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E8=/+put a
[?25l[?1c# Test 8
S8====
0x9
0x9
E8====

0x9
0x9[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c0
[?25h[?0c[?25l[?1cx9
0x9[?25h[?0c[?25l[?1c0xa
0xa[?25h[?0c
[?25l[?1c
:[?25h[?0c.+put a
[?25l[?1c0x9
0x9[?25h[?0c0x[?25l[?1c[?25h[?0c[?25l[?1c
0x9
0x9
[?25h[?0c[?25l[?1c0xa
0xa[?25h[?0c
[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 9
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S9=/+,/^E9=/-y a
[?25l[?1c6 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E9=/+put a
[?25l[?1c6 more lines3
3

E9====

2
2

3
3# Test 10
S10====
1
1
1
1
E10====

6 more lines[?25h[?0c[?25l[?1c2 
[?25h[?0c[?25l[?1c2
2 
[?25h[?0c[?25l[?1c44[?25h[?0c


[?25l[?1c5
5[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 10
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S10=/+,/^E10=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E10=/+put a
[?25l[?1c4 more lines1
1
1
14 more lines[?25h[?0c[?25l[?1c1 
[?25h[?0c[?25l[?1c 
1 
1 
1[?25h[?0c[?25l[?1c0-1
-2
-3[?25h[?0c

[?25l[?1c:[?25h[?0c Test 11
[?25l[?1cE492: Not an editor command:  Test 11[?25h[?0c[?25l[?1c:[?25h[?0c/^S11=/+,/^E11=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E11=/+put a
[?25l[?1c4 more lines# Test 11
S11====
    1
1
    1
    1
E11====1
1
    1
    1


# Test 12
S12====
0 0
0 0
0 0
E12====4 more lines[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c11
    [?25h[?0c[?25l[?1c23
    4[?25h[?0c

    [?25l[?1c:[?25h[?0c" Test 12
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S12=/+,/^E12=/-y a
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E12=/+put a
[?25l[?1c3 more lines
0 0
0 0
0 03 more lines[?25h[?0c0 [?25l[?1c[?25h[?0c[?25l[?1c0 
[?25h[?0c[?25l[?1c0 0 
[?25h[?0c[?25l[?1c11 01[?25h[?0c
1 
1 [?25l[?1c:[?25h[?0c" Test 13
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S13=/+,/^E13=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E13=/+put a
[?25l[?1c4 more lines# Test 13
S13====
max: 100px
max: 200px
max: 300px
max: 400px
E13====

max: 100px
max: 200px
max: 300px
max: 400px


# Test 14
S14====
1 1
1 1
E14====# Test 15
4 more lines[?25h[?0cmax: [?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c0203[?25h[?0c[?25l[?1c112131[?25h[?0c[?25l[?1c:[?25h[?0c.+put a
[?25l[?1c4 more linesmax: 100px
max: 200px
max: 300px
max: 400px4 more lines[?25h[?0cmax: [?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c0203[?25h[?0c[?25l[?1c90px1929[?25h[?0c[?25l[?1c:[?25h[?0c" Test 14
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S14=/+,/^E14=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E14=/+put a
[?25l[?1c1 1
1 1[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c2
2[?25h[?0c2 [?25l[?1c2
2 2[?25h[?0c
2 [?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 15
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S15=/+,/^E15=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E15=/+put a
[?25l[?1c# Test 15
S15====
101
E15====

101[?25h[?0c1[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 16
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S16=/+,/^E16=/-y a
[?25l[?1c3 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E16=/+put a
[?25l[?1c3 more lines# Test 16
S16====
   1
  19
 119
E16====1
  19
 1193 more lines[?25h[?0c[?25l[?1c 119 
 [?25h[?0c[?25l[?1c   1 
  19 
 1[?25h[?0c[?25l[?1c
   2  20 120[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 17
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S17=/+,/^E17=/-y a
[?25l[?1c5 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E17=/+put a
[?25l[?1c5 more lines100
 1

 100
 1
E17====

 100
 1

 100
 1

# Test 18
S18====
0
0
0
0
E18====5 more lines[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c1
 [?25h[?0c[?25l[?1c00
 1[?25h[?0c[?25l[?1c101
 2[?25h[?0c

[?25l[?1c
 101[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 18
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S18=/+,/^E18=/-y a
[?25l[?1c4 lines yanked[?25h[?0c[?25l[?1c:[?25h[?0c/^E18=/+put a
[?25l[?1c4 more lines0
0
0
04 more lines[?25h[?0c[?25l[?1c0 
[?25h[?0c[?25l[?1c 
0 
0 
0[?25h[?0c[?25l[?1c1234[?25h[?0c[?25l[?1c2
4
6
8[?25h[?0c[?25l[?1c3
6
9
12[?25h[?0c

[?25l[?1c:[?25h[?0c" Test 19
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats+=alpha
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S19=/+,/^E19=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E19=/+put a
[?25l[?1c# Test 19
S19====
1
1a
E19====

1
1a[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c1[?25h[?0c[?25l[?1c1
1a[?25h[?0c[?25l[?1c2
2a[?25h[?0c
[?25l[?1c
:[?25h[?0cset nrformats&vim
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 20
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nrformats+=alpha
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S20=/+,/^E20=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E20=/+put a
[?25l[?1c# Test 20
S20====
a
E20====

a[?25h[?0c[?25l[?1cb[?25h[?0c[?25l[?1c
:[?25h[?0c.put =col('.')
[?25l[?1c
1[?25h[?0c[?25l[?1c
:[?25h[?0cset nrformats&vim
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Test 21
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^S21=/+,/^E21=/-y a
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^E21=/+put a
[?25l[?1c# Test 21
S21====
0x123456
E21====

0x123456[?25h[?0c[?25l[?1c
:[?25h[?0cset nrformats&vim
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c0x12[?25h[?0c[?25l[?1c
0x124
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:[?25h[?0c" Save the report
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^# Test 1/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 293 lines, 1224 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_insertcount.failed test.ok test.out X* viminfo
cp test_insertcount.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_insertcount.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_insertcount.in" 14 lines, 204 charactersTests for repeating insert and replace.

STARTTEST
:so small.vim
:/Second
4gro
:/^First/,$wq! test.out
:" get here when failed and in Insert mode
^[:.wq! test.out
ENDTEST

First line
Second line
Last line
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for repeating insert and replace.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 6 lines, 111 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/Second
[?25l[?1c[?25h[?0c[?25l[?1cooooecond line
ooo[?25h[?0c
Las[?25l[?1c:[?25h[?0c/^First/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 3 lines, 36 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_listchars.failed test.ok test.out X* viminfo
cp test_listchars.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_listchars.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_listchars.in" 54 lines, 705 charactersTests for 'listchars' display with 'list' and :list

STARTTEST
:so small.vim
:set ff=unix
:let g:lines = []
:function GetScreenCharsForLine(lnum)
:  return join(map(range(1, virtcol('$')), 'nr2char(screenchar(a:lnum, v:val))'), '')
:endfunction
:nnoremap <expr> GG ":call add(g:lines, GetScreenCharsForLine(".screenrow()."))\<CR>"
:set listchars+=tab:>-,space:.,trail:<
:set list
:
/^start:/
:normal! jzt
GG
GG
GG
GG
GGH:
:set listchars-=trail:<[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for 'listchars' display with 'list' and :list[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 25 lines, 431 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTGG
GG
GG
GG
GG:
:put =g:lines
:'[,']w! test.out
ENDTEST[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ff=unix
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:lines = []
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction GetScreenCharsForLine(lnum)
[?25l[?1c
:  [?25h[?0c:  return join(map(range(1, virtcol('$')), 'nr2char(screenchar(a:lnum, v:val

))'), '')

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:endfunction
:nnoremap <expr> GG ":call add(g:lines, GetScreenCharsForLine(".screenrow()."))\<CR>"[?25h[?0c[?25l[?1c
:[?25h[?0cnnoremap <expr> GG ":call add(g:lines, GetScreenCharsForLine(".screenrow()."))

\<CR>"
[?25l[?1c:endfunction[?25h[?0c[?25l[?1c
:[?25h[?0cset listchars+=tab:>-,space:.,trail:<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset list
[?25l[?1c$.<expr>.GG.":call..$
:set.$
:set.list$
:$$.jzt$
GG$
GG$
GG$
GG$
GGH:$
:set.$
GG$
GG$
GG$
GG$
GG:$
:put.$.$$
$[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:/
[?25l[?1c
start:$[?25h[?0c[?25l[?1c
:[?25h[?0cnormal! jzt
[?25l[?1c>-------aa>-----$
..bb>---<<$
...cccc><$
dd........ee<<>-$
<$
$
$
STARTTEST$
:set.listchars+=trail:<$
:set.nolist$
:$
/^start:/$
:redir!.>>.test.out$
:+1,$list$
:redir.END$
:q!$
ENDTEST$
$
start:$
..fff>--<<$
>-------gg>-----$
.....h>-$
iii<<<<><<$[?25h[?0c[?25l[?1c:call add(g:lines, GetScreenCharsForLine(1))
[?25h[?0c
[?25l[?1c:call add(g:lines, GetScreenCharsForLine(2))
[?25h[?0c
[?25l[?1c:call add(g:lines, GetScreenCharsForLine(3))
[?25h[?0c
[?25l[?1c:call add(g:lines, GetScreenCharsForLine(4))
[?25h[?0c
[?25l[?1c:call add(g:lines, GetScreenCharsForLine(5))
[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset listchars-=trail:<
[?25l[?1c.....
.......>..[?25h[?0c[?25l[?1c:call add(g:lines, GetScreenCharsForLine(1))
[?25h[?0c[?25l[?1c:call add(g:lines, GetScreenCharsForLine(2))
[?25h[?0c[?25l[?1c:call add(g:lines, GetScreenCharsForLine(3))
[?25h[?0c[?25l[?1c:call add(g:lines, GetScreenCharsForLine(4))
[?25h[?0c
[?25l[?1c:call add(g:lines, GetScreenCharsForLine(5))
[?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cput =g:lines
[?25l[?1c10 more >-------aa>-----$$
..bb>---<<$$
...cccc><$$
dd........ee<<>-$$
<$$
>-------aa>-----$$
..bb>---..$$
...cccc>.$$
dd........ee..>-$$
.$$10 more lines[?25h[?0c[?25l[?1c:[?25h[?0c'[,']w! test.out
[?25l[?1c"test.out" [New File] 10 lines, 124 characters written[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 8 lines, 93 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:+1,$list$
:redir.END$
:q!$
ENDTEST$[?25h[?0c[?25l[?1c
$[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cset listchars+=trail:<
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nolist
[?25l[?1c   >>  [?25h[?0c[?25l[?1c:[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c/[?25h[?0c^start:/
[?25l[?1c
start:[?25h[?0c[?25l[?1c
:[?25h[?0credir! >> test.out
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c+1,$list
[?25l[?1c..fff>--<<$

>-------gg>-----$

.....h>-$

iii<<<<><<$

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0credir END
[?25l[?1c>-------aa>-----$
..bb>---..$
...cccc>.$
dd........ee..>-$
.$STARTTEST:set listchars+=trail:<
:set nolist
:
/^start:/
:redir! >> test.out+1,$listredir END
:q!ENDTESTstart:  fff
        ggh
iii   [?25h[?0c[?25l[?1c
:[?25h[?0cq!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_listlbr.failed test.ok test.out X* viminfo
cp test_listlbr.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_listlbr.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_listlbr.in" 97 lines, 2556 charactersTest for linebreak and list option (non-utf8)

STARTTEST
:so small.vim
:if !exists("+linebreak") || !has("conceal") | e! test.ok | w! test.out | qa! |
endif
:10new|:vsp|:vert resize 20
:put =\"\tabcdef hijklmn\tpqrstuvwxyz_1060ABCDEFGHIJKLMNOP \"
:norm! zt
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
:fu! ScreenChar(width)
:let c=''
:for j in range(1,4)
:for i in range(1,a:width)
:let c.=nr2char(screenchar(j, i))
:endfor
:let c.="\n"
:endfor
:return c
:endfu
:fu! DoRecordScreen()
:wincmd l
:$put =printf(\"\n%s\", g:test)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for linebreak and list option (non-utf8)[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 92 lines, 2480 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:$put =g:test
Go1111-1111-1111-11-1111-1111-1111^[0f-lv3lc2222^[bgj.
:let g:test ="Test 9: using redo after block visual mode"
:$put =g:test
Go
aaa
aaa
a^[2k^V2j~e.
:let g:test ="Test 10: using normal commands after block-visual"
:$put =g:test
:set linebreak
Go
abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:test
:set linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.out
:qa!
ENDTEST
dummy text[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !exists("+linebreak") || !has("conceal") | e! test.ok | w! test.out | qa! |

endif
[?25l[?1c:$put =g:test[?25h[?0c[?25l[?1c
:[?25h[?0c10new|:vsp|:vert resize 20
[?25l[?1c             ||||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name]            ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name]                                                  abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:testset linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.outqaENDTEST
dummy text
test_listlbr.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0cput =\"\tabcdef hijklmn\tpqrstuvwxyz_1060ABCDEFGHIJKLMNOP \"
[?25l[?1c        abcdef hijkl
mn  pqrstuvwxyz_1060
ABCDEFGHIJKLMNOP    [+]        abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP [+][?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c        abcdef hijkl
mn  pqrstuvwxyz_1060
ABCDEFGHIJKLMNOP    
~                   
~                   
~                   
~                   
~                   
~                   
                    
~                   [?25h[?0c[?25l[?1c:[?25h[?0cset ts=4 sw=4 sts=4 linebreak sbr=+ wrap
[?25l[?1cabcdef          
+hijklmn            
+pqrstuvwxyz_1060ABC
+DEFGHIJKLMNOP      abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP [?25h[?0c[?25l[?1c:[?25h[?0cfu! ScreenChar(width)
[?25l[?1c
:  [?25h[?0c:^Ilet c=''

[?25l[?1c:  [?25h[?0c:^Ifor j in range(1,4)

[?25l[?1c:    [?25h[?0c:^I    for i in range(1,a:width)

[?25l[?1c:      [?25h[?0c:^I    ^Ilet c.=nr2char(screenchar(j, i))

[?25l[?1c:      [?25h[?0c:^I    endfor

[?25l[?1c:    [?25h[?0c:           let c.="\n"

[?25l[?1c:    [?25h[?0c:^Iendfor

[?25l[?1c:  [?25h[?0c:^Ireturn c

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      ||||||~                   
~                   
~                   
~                   
~                   abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [?25h[?0c[?25l[?1c:[?25h[?0cfu! DoRecordScreen()
[?25l[?1c
:  [?25h[?0c:^Iwincmd l

[?25l[?1c:  [?25h[?0c:^I$put =printf(\"\n%s\", g:test)

[?25l[?1c:  [?25h[?0c:^I$put =g:line

[?25l[?1c:  [?25h[?0c:^Iwincmd p

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      ||
~                   abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          [?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 1: set linebreak"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      |||||||~                   
~                   
~                   
~                   
~                   
~                   
[No Name] [+]        abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name] [+]                                              abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:test
:set linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines                    
Test 1: set         
+linebreak          
    abcdef          
+hijklmn            
+pqrstuvwxyz_1060ABCTest 1: set linebreak    abcdef          +hijklmn            +pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP      [?25h[?0c[?25l[?1c:[?25h[?0clet g:test="Test 2: set linebreak + set list"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset linebreak list listchars=
[?25l[?1c^Iabcdef hijklmn^I  pqrstuvwxyz_1060ABCDEFGHIJKLMNOP      
              
Test 1: set
+linebreak 
    abcdef
+hijklmn  
+pqrstuvwxyz_1060ABC
+DEFGHIJKLMNOP      [?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c^Iabcdef hijklmn^I  |
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      ||
Test 1: set|
+linebreak|
    abcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      |
[No Name] [+]        abcdef hijklmn  pqrstuvwxyz_1060ABCDEFGHIJKLMNOPTest 1: set linebreakabcdef+hijklmn+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP~                                                          ~                                                          [No Name] [+]                                              abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:test
:set linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines    abcdef                                                 +hijklmn                                                   +pqrstuvwxyz_1060ABC                                       +DEFGHIJKLMNOP                                             ~                                                          ~                                                                                                                                                                                                                                                                                                      Test 2: set linebreak + set list^Iabcdef hijklmn^I+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP4 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 3: set linebreak nolist"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nolist linebreak
[?25l[?1c    abcdef          hijklmn            pqrstuvwxyz_1060ABC
+DEFGHIJKLMNOP
           
Test 1: set
+linebreak
    abcdef
+hijklmn            
+pqrstuvwxyz_1060ABC[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
+DEFGHIJKLMNOP      ||
Test 1: set|
+linebreak|
    abcdef|
+hijklmn|
+pqrstuvwxyz_1060ABC|
[No Name] [+]        abcdef+hijklmn+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOPTest 2: set linebreak + set list^Iabcdef hijklmn^I+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP[No Name] [+]                                              abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:test
:set linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines^Iabcdef hijklmn^I                                         +pqrstuvwxyz_1060ABC                                       +DEFGHIJKLMNOP                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Test 3: set linebreak nolistabcdef+hijklmn+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP4 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 4: set linebreak with tab and 1 line as long as screen: shou

ld break!"
[?25l[?1cabcdef|^Iabcdef hijklmn^I[?25h[?0c[?25l[?1c:[?25h[?0cset nolist linebreak ts=8
[?25l[?1c    abcdef[?25h[?0c[?25l[?1c:[?25h[?0clet line="1\t".repeat('a', winwidth(0)-2)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =line
[?25l[?1c      
        
Test 3: set         linebreak nolist
    abcdef
+hijklmn   
+pqrstuvwxyz_1060ABC
+DEFGHIJKLMNOP
1       
+aaaaaaaaaaaaaaaaaa [?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c1                   
+aaaaaaaaaaaaaaaaaa 
                    
                    
                    
                    
                    
                    
                    
                    ~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c1|
+aaaaaaaaaaaaaaaaaa |||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name] [+]        ^Iabcdef hijklmn^I+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOPTest 3: set linebreak nolistabcdef+hijklmn+pqrstuvwxyz_1060ABC+DEFGHIJKLMNOP[No Name] [+]                                              abcd{ef
ghijklm
no}pqrs^[2k0f{^V^Vc%^[
:let g:test ="Test 11: using block replace mode after wrapping"
:$put =g:test
:set linebreak wrap
Go^[150aa^[yypk147|^Vjr0
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines                    
Test 4: set         
+linebreak with tab 
+and 1 line as long 
+as screen: should  
+break!             
1                   
+aaaaaaaaaaaaaaaaaa +pqrstuvwxyz_1060ABC                                       +DEFGHIJKLMNOP                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     1aaaaaaaaaaaaaaaaaaTest 4: set linebreak with tab and 1 line as long as screen+: should break!1+aaaaaaaaaaaaaaaaaa~~4 more lines[?25h[?0c[?25l[?1c:[?25h[?0clet line="_S_\t bla"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =line
[?25l[?1cTest 4: set         
+linebreak with tab 
+and 1 line as long 
+as screen: should  
+break!             
1                   
+aaaaaaaaaaaaaaaaaa 
                    
                    
                    ~
~
_S_      bla[?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c_S_      bla        
                    
                    
                    
                    
                    
                    
                    
                    
                    ~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 5: set linebreak with conceal and set list and tab displayed

by different char (line may not be truncated)"
[?25l[?1c_S_      bla|+pqrstuvwxyz_1060ABC[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&vim list linebreak conceallevel=2 concealcursor=nv listchars=tab:ab
[?25l[?1cabbbb[?25h[?0c[?25l[?1c:[?25h[?0csyn match ConcealVar contained /_/ conceal
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn match All /.*/ contains=ConcealVar
[?25l[?1cSabb[?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines                    
Test 5: set         
+linebreak with     
+conceal and set    
+list and tab       
+displayed by       
+different char     
+(line may not be   
+truncated)         ~                                                          ~                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  _S_      blaTest 5: set linebreak with conceal and set list and tab dis+played by different char (line may not be truncated)Sabbbbbb bla~~~4 more lines[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&vim linebreak
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 6: set linebreak with visual block mode"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet line="REMOVE: this not"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cabbbbbb
~
~          
~              
Test 6: set     nebreak withvisual block mode
~                   
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0c$put =line
[?25l[?1cREMOVE: this not    [?25h[?0c[?25l[?1c:[?25h[?0clet line="REMOVE: aaaaaaaaaaaaa"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =line
[?25l[?1cREMOVE:             
+aaaaaaaaaaaaa      [?25h[?0c[?25l[?1c:[?25h[?0c1/^REMOVE:
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cR[?25h[?0c[?25l[?1cEMOVE: 
REMOVE:[?25h[?0c[?25l[?1cthis not        
aaaaaaaaaaaaa
~                   [?25h[?0c[?25l[?1c:[?25h[?0c$put
[?25l[?1c~                   
~                   
~                   
Test 6: set         
+linebreak with     
+visual block mode  
this not            
aaaaaaaaaaaaa       
~                   
                    REMOVE:             
REMOVE:[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&vim linebreak
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 7: set linebreak with visual block mode and v_b_A"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cthis not            
aaaaaaaaaaaaa       
REMOVE:             
REMOVE:             
                    
                    
                    
                    
                    
                    Test 7: set
+linebreak with
+visual block mode
+and vbA
~                   
~                   [?25h[?0c[?25l[?1clong line:          [?25h[?0c[?25l[?1c foobar
+foobar foobar      @                   
@                           
             
       
       
           
               
                  
        
                    
                    +foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar foobar
+foobar[?25h[?0c+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar foobar      
+foobar             
                    [?25l[?1cTARGET at
+end[?25h[?0c[?25l[?1c:[?25h[?0cexe "norm! $3B\<C-v>eAx\<Esc>"
[?25l[?1cx at[?25h[?0c[?25l[?1c:[?25h[?0cset cpo&vim linebreak sbr=
[?25l[?1cfoobar foobar 
foobar foobar 
foobar foobar 
foobar foobar 
foobar foobar 
foobar foobar 
foobar foobar 
foobar foobar 
foobar TARGETx at 
end played by different char (line may not be truncated)[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 8: set linebreak with visual char mode and changing block"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cTest 8: set  
linebreak with
visual char mode
and changing block
~                   
~                   
~                   
~                   
~                   
~                   [?25h[?0c[?25l[?1c1111-1111-1111-11-  
1111-1111-1111      [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c111[?25h[?0c[?25l[?1c2222[?25h[?0c[?25l[?1c2222[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 9: using redo after block visual mode"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cTest 9: using redo  
after block visual  
mode                [?25h[?0c[?25l[?1c1111-2222-1111-11-  
1111-2222-1111      
Test 9: using redo  
after block visual  
mode                
~                   
                    
                    
                    
                                        
aaa
aaa
a
~                   [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1ca
a[?25h[?0c[?25l[?1c3 lines changedA
A
A[?25h[?0c[?25l[?1cA
AaA[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 10: using normal commands after block-visual"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cTest 9: using redo  
after block visual  
mode                
                    
AaA                 
AaA                 
A                   
~                   
                    
                    Test 10: using      
normal commands
after block-visual[?25h[?0c[?25l[?1c:[?25h[?0cset linebreak
[?25l[?1c[?25h[?0c[?25l[?1cAaA                 
AaA                 
A                   
Test 10: using      
normal commands     
after block-visual  
                    
                    
                    
                    abcd{ef
ghijklm
no}pqrs[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cpqrs
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 11: using block replace mode after wrapping"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cAaA                 
A                   
Test 10: using      
normal commands     
after block-visual  
                    
abcdpqrs            
~                   
~                   
                    Test 11: using      
block replace mode  
after wrapping[?25h[?0c[?25l[?1c:[?25h[?0cset linebreak wrap
[?25l[?1c[?25h[?0c[?25l[?1cA                   
Test 10: using      
normal commands     
after block-visual  
                    
abcdpqrs            
Test 11: using      
block replace mode  
after wrapping      
                    [?25h[?0c[?25l[?1caaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaa        
~                   
~                   [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1caaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa@                   
@                   [?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c@                   
@                   
                    
                    
                    
                    
                    
                    
                    
                    aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaa
~                   
~                   [?25h[?0c[?25l[?1c0
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa@                   
@                   [?25h[?0c[?25l[?1c@                   
@                   
                    
                    
                    
                    
                    
                    
                    
                    aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaa
aaaaaa0aaa
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0c%w! test.out
[?25l[?1c"test.out" [New File] 54 lines, 1785 characters writtentest.out     test.out     [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_listlbr_utf8.failed test.ok test.out X* viminfo
cp test_listlbr_utf8.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_listlbr_utf8.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_listlbr_utf8.in" 134 lines, 4027 charactersTest for linebreak and list option in utf-8 mode

STARTTEST
:so small.vim
:if !exists("+linebreak") || !has("conceal") || !has("signs") | e! test.ok | w!
test.out | qa! | endif
:so mbyte.vim
:set encoding=utf8
:if &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
:10new|:vsp|:vert resize 20
:put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
:norm! zt
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
:fu! ScreenChar(width, lines)
:let c=''
:for j in range(1,a:lines)
:for i in range(1,a:width)
:let c.=nr2char(screenchar(j, i))
:endfor
:let c.="\n"
:endfor
:return c
:endfu[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for linebreak and list option in utf-8 mode[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 129 lines, 3948 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:set list nolinebreak cc=3
:sign define foo text=^Vuff0b
:sign place 1 name=foo line=50 buffer=2
:norm! 2kztj
:let line1=line('.')
0GGlGGlGGlGGl
:let line2=line('.')
:let attr2=attr
:let attr=[]
0GGlGGlGGlGGl
:redraw!
:let line=ScreenChar(winwidth(0),3)
:call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !exists("+linebreak") || !has("conceal") || !has("signs") | e! test.ok | w!

test.out | qa! | endif
[?25l[?1c:set list nolinebreak cc=3[?25h[?0c[?25l[?1c
:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf8
[?25l[?1c:set list nolinebreak cc=3
:sign define foo text=^Vuff0b
:sign place 1 name=foo line=50 buffer=2
:norm! 2kztj
:let line1=line('.')
0GGlGGlGGlGGl
:let line2=line('.')
:let attr2=attr
:let attr=[]
0GGlGGlGGlGGl
:redraw!
:let line=ScreenChar(winwidth(0),3)
:call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
[?25h[?0c[?25l[?1c
:[?25h[?0cif &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c10new|:vsp|:vert resize 20
[?25l[?1c                    ||||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name]            ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name]                                                  call DoRecordScreen()" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")else   call append('$', "Screen attributes are the same!")
:endif%w! test.out
:qaENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0cput =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
[?25l[?1c        abcdef hijkl
mn  pqrstuvwxyz 1060
ABCDEFGHIJKLMNOP    [+]        abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOP [+][?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c        abcdef hijkl
mn  pqrstuvwxyz 1060
ABCDEFGHIJKLMNOP    
~                   
~                   
~                   
~                   
~                   
~                   
                    
~                   [?25h[?0c[?25l[?1c:[?25h[?0cset ts=4 sw=4 sts=4 linebreak sbr=+ wrap
[?25l[?1cabcdef          
+hijklmn            
+pqrstuvwxyz 1060ABC
+DEFGHIJKLMNOP      abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOP [?25h[?0c[?25l[?1c:[?25h[?0cfu! ScreenChar(width, lines)
[?25l[?1c
:  [?25h[?0c:^Ilet c=''

[?25l[?1c:  [?25h[?0c:^Ifor j in range(1,a:lines)

[?25l[?1c:    [?25h[?0c:^I    for i in range(1,a:width)

[?25l[?1c:      [?25h[?0c:^I    ^Ilet c.=nr2char(screenchar(j, i))

[?25l[?1c:      [?25h[?0c:^I    endfor

[?25l[?1c:    [?25h[?0c:           let c.="\n"

[?25l[?1c:    [?25h[?0c:^Iendfor

[?25l[?1c:  [?25h[?0c:^Ireturn c

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz 1060ABC|
+DEFGHIJKLMNOP      ||||||~                   
~                   
~                   
~                   
~                   abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [?25h[?0c[?25l[?1c:[?25h[?0cfu! DoRecordScreen()
[?25l[?1c
:  [?25h[?0c:^Iwincmd l

[?25l[?1c:  [?25h[?0c:^I$put =printf(\"\n%s\", g:test)

[?25l[?1c:  [?25h[?0c:^I$put =g:line

[?25l[?1c:  [?25h[?0c:^Iwincmd p

[?25l[?1c:  [?25h[?0c:endfu
[?25l[?1cabcdef|
+hijklmn|
+pqrstuvwxyz 1060ABC|
+DEFGHIJKLMNOP      ||
~                   abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 1: set linebreak + set list + fancy listchars"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eo

l:\ub6"
[?25l[?1c▕———abcdef|▕———␣ˑ¶[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c▕———abcdef|
+hijklmn▕———|
+pqrstuvwxyz␣1060ABC|
+DEFGHIJKLMNOPˑ¶    |||||||~                   
~                   
~                   
~                   
~                   
~                   
[No Name] [+]        abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOP~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          ~                                                          [No Name] [+]                                              :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),4)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines¶                   
Test 1: set         
+linebreak + set    
+list + fancy       
+listchars¶         
▕———abcdefˑˑˑˑˑˑˑˑˑˑ
@                   Test 1: set linebreak + set list + fancy listchars▕———abcdef          +hijklmn▕———        +pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶    [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 2: set nolinebreak list"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset list nolinebreak
[?25l[?1chijklmn▕—pqrstuvwxyz␣1060ABCDEFGHIJKLMNOPˑ¶    
¶               
Test 1: set linebrea
+k + set list + fancy listchars¶   
▕———abcdefˑˑˑˑˑˑˑˑˑˑ
+¶         
+hijklmn▕———ˑˑˑˑˑˑˑˑ
@                   [?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c▕———abcdef hijklmn▕—|
+pqrstuvwxyz␣1060ABC|
+DEFGHIJKLMNOPˑ¶    |
¶|
Test 1: set linebrea|
+k + set list + fanc|
+y listchars¶|
▕———abcdefˑˑˑˑˑˑˑˑˑˑ|
+¶|
+hijklmn▕———ˑˑˑˑˑˑˑˑ|
@                   
[No Name] [+]        abcdef hijklmn  pqrstuvwxyz 1060ABCDEFGHIJKLMNOPTest 1: set linebreak + set list + fancy listchars▕———abcdef+hijklmn▕———+pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶~                                                          ~                                                          [No Name] [+]                                              :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            +hijklmn▕———ˑˑˑˑˑˑˑˑ
@                   [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),4)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines▕———abcdef                                                 +hijklmn▕———                                               +pqrstuvwxyz␣1060ABC                                       +DEFGHIJKLMNOPˑ¶                                           ~                                                          ~                                                                                                                                                                                                                                                                                                      Test 2: set nolinebreak list▕———abcdef hijklmn▕—+pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶¶4 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 3: set linebreak nolist"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =\"\t*mask = nil;\"
[?25l[?1c▕———▕—¶                  
+pqrstuvwxyz␣1060ABC
+¶
+DEFGHIJKLMNOPˑ¶ˑˑˑˑ
+¶                  
¶ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑ
+¶                  
▕———*mask = nil;¶
~[?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c▕———*mask = nil;¶   
~                   
                    
                    
                    
                    
                    
                    
                    
                    ~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   [?25h[?0c[?25l[?1c:[?25h[?0cset nolist linebreak
[?25l[?1c     
    [?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c*mask = nil;    ||||||||||~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
~                   
[No Name] [+]        ▕———abcdef+hijklmn▕———+pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶Test 2: set nolinebreak list▕———abcdef hijklmn▕—+pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶¶[No Name] [+]                                              :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),4)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c4 more lines                    
Test 3: set         
+linebreak nolist   
    *mask = nil;    
~                   
~                   
~                   +pqrstuvwxyz␣1060ABC                                       +DEFGHIJKLMNOPˑ¶                                           ¶                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       *mask = nil;Test 3: set linebreak nolist*mask = nil;~~~4 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 4: set linebreak list listchars and concealing"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet c_defines=['#define ABCDE^I^I1','#define ABCDEF^I^I1','#define ABCDEFG^I^I

1','#define ABCDEFGH^I1', '#define MSG_MODE_FILE^I^I^I1','#define MSG_MODE_CONSO

LE^I^I2','#define MSG_MODE_FILE_AND_CONSOLE^I3','#define MSG_MODE_FILE_THEN_CONS

OLE^I4']
[?25l[?1c*mask = nil;    ||
Test 3: set|+pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶¶[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', c_defines)
[?25l[?1c#define             
+ABCDE      1       [?25h[?0c[?25l[?1c:[?25h[?0cvert resize 40
[?25l[?1c                    |                    |linebreak nolist|
    *mask = nil;                        |
~                    |                    |                    |
#define ABCDE1 |ABCDEF      1 |
#define ABCDEFG     1 |                    +pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶¶*mask = nil;Test 3: set linebreak nolist*mask = nil;~~~[No Name] [+][?25h[?0c[?25l[?1c:[?25h[?0c$-7
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1c#define ABCDE       1                   
#define ABCDEF      1                   
#define ABCDEFG     1                   
                                        
                                        
                                        
                                        
                                        
                                        
                                        #define ABCDEFGH    1
#define MSG_MODE_FILE1
#define MSG_MODE_CONSOLE2
#define MSG_MODE_FILE_AND_CONSOLE   3
#define MSG_MODE_FILE_THEN_CONSOLE  4
~                                       
~                                       [?25h[?0c[?25l[?1c:[?25h[?0cset list linebreak listchars=tab:>- cole=1
[?25l[?1c>-->--->->--->>--->--->-->--->--->--->--->-->-[?25h[?0c[?25l[?1c:[?25h[?0csyn match Conceal conceal cchar=>'AB\|MSG_MODE'
[?25l[?1cAB>CDEF>->CDEFG>->CDEFGH>->_FILE>------->_CONSOLE>------->_FILE_AND_CONSOLE>------->_FILE_THEN_CONSOLE>-------AB[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c#define ABCDE>-->---1|
#define >CDEF>-->---1|
#define >CDEFG>->---1|
#define >CDEFGH>----1|
#define >_FILE>--------->--->---1|
#define >_CONSOLE>---------->---2|
#define >_FILE_AND_CONSOLE>---------3   |
#define >_FILE_THEN_CONSOLE>--------4   |||~                                       
~                                       
[No Name] [+]                            +pqrstuvwxyz␣1060ABC+DEFGHIJKLMNOPˑ¶¶*mask = nil;Test 3: set linebreak nolist*mask = nil;~~~[No Name] [+]                          :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),7)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c>CDE>-7 more lines                                        
Test 4: set linebreak list listchars    
@                                       #define >CDEFG>->---1+ #define >CDEFGH>----1+#define >_FILE>--------->--->---1+ #define >_CONSOLE>---------->---2+#define >_FILE_AND_CONSOLE>---------3+ABCDE>
[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 5: set linebreak list listchars and concealing part2"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet c_defines=['bbeeeeee^I^I;^Isome text']
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', c_defines)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c@                                       
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        Test 4: set linebreak list listchars    
+and concealing
#define >CDE>-->---1
#define >CDEF>-->---1
#define >CDEFG>->---1
#define >CDEFGH>----1
#define >_FILE>--------->--->---1
#define >_CONSOLE>---------->---2
#define >_FILE_AND_CONSOLE>---------3
bbeeeeee>--->---;>--some text[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt
[?25l[?1cbbeeeeee>--->---;>--some text           
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        ~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       [?25h[?0c[?25l[?1c:[?25h[?0cset nowrap ts=2 list linebreak listchars=tab:>- cole=2 concealcursor=n
[?25l[?1c>;>some text      [?25h[?0c[?25l[?1c:[?25h[?0csyn clear
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn match meaning    /;\s*\zs.*/
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn match hasword    /^\x\{8}/    contains=word
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn match word       /\<\x\{8}\>/ contains=beginword,endword contained
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csyn match beginword  /\<\x\x/     contained conceal
[?25l[?1ceeeeee>--[?25h[?0c[?25l[?1c:[?25h[?0csyn match endword    /\x\{6}\>/   contained
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chi meaning   guibg=blue
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chi beginword guibg=green
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0chi endword   guibg=red
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1ceeeeee>--->-;>some text||||||||||~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
~                                       
[No Name] [+]                            #define >CDEFG>->---1+#define >CDEFGH>----1+#define >_FILE>--------->--->---1+#define >_CONSOLE>---------->---2+#define >_FILE_AND_CONSOLE>---------3+[No Name] [+]                          :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c                                        
Test 5: set linebreak list listchars and
eeeeee>--->-;>some text                 #define >_CONSOLE>---------->---2      +                                      #define >_FILE_AND_CONSOLE>---------3  +                                                                                                                                                                                                                                                                                bbeeeeee    ; some textTest 5: set linebreak list listchars an+d concealing part2eeeeee>--->-;>some text+[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 6: Screenattributes for comment"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cTest 6: Screenattributes for comment    [?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', ' /*^I^I and some more */')
[?25l[?1c /*>>- and some more */                 [?25h[?0c[?25l[?1c:[?25h[?0cexe "set ft=c ts=7 linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail

:\u02d1,eol:\ub6"
[?25l[?1ceeeeee▕———————▕——————;▕—————some text¶  |
¶ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑ¶
 /*▕———▕—————— and some more */¶#define >_CONSOLE>---------->---2         ;      some text[?25h[?0c[?25l[?1c:[?25h[?0csyntax on
[?25l[?1cbbeeeeee▕56for
 /* and some more */#define >_CONSOLE>---------->---2       #define >_FILE_AND_CONSOLE>---------3   5[?25h[?0c[?25l[?1c:[?25h[?0chi SpecialKey term=underline ctermfg=red guifg=red
[?25l[?1c▕—————▕——————;▕—————ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑ▕———▕——————[?25h[?0c[?25l[?1c:[?25h[?0clet attr=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnnoremap <expr> GG ":let attr += ['".screenattr(screenrow(),screencol())."']\n

"[?25l[?1cbbeeeeee▕—————▕——————;▕—————some text¶  |#define >_CONSOLE>---------->---2      [?25h[?0c[?25l[?1c:[?25h[?0c$
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnorm! zt0
[?25l[?1c /*▕———▕—————— and some more */¶        
~                                       
~                                       
~                                       
~                                       
                                        
                                        
                                        
                                        
                                        ~                                       
~                                       
~                                       
~                                       
~                                       [?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['79']
[?25h[?0c[?25l[?1c:let attr += ['79']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:let attr += ['68']
[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', ['ScreenAttributes for test6:'])
[?25l[?1cScreenAttributes for test6:¶            [?25h[?0c[?25l[?1c:[?25h[?0cif attr[0] != attr[1] && attr[1] != attr[3] && attr[3] != attr[5]
[?25l[?1c
:  [?25h[?0c:   call append('$', "Attribut 0 and 1 and 3 and 5 are different!")

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:   call append('$', "Not all attributes are different")

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c/*▕———▕—————— and some more */¶|
ScreenAttributes for test6:¶|
Attribut 0 and 1 and 3 and 5 are differe||
~                                       #define >_CONSOLE>---------->---2      + #define >_FILE_AND_CONSOLE>---------3  + [?25h[?0c[?25l[?1c:[?25h[?0cset cpo&vim linebreak selection=exclusive
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 8: set linebreak with visual block mode and v_b_A and select

ion=exclusive and multibyte char"
[?25l[?1c/*▕———▕—————— and some more */¶|#define >_CONSOLE>---------->---2      [?25h[?0c[?25l[?1c:[?25h[?0c$put =g:test
[?25l[?1cTest 8: set linebreak with visual block [?25h[?0c[?25l[?1clong line:ˑ¶                            [?25h[?0c[?25l[?1c¶                               
¶                           
¶                                       
¶                                      
oobar foobar foobar foobar foobarˑ¶[?25h[?0c[?25l[?1c
foobar foobar TARGET¶              [?25h[?0c[?25l[?1cÃ' at end¶[?25h[?0c[?25l[?1c:[?25h[?0cexe "norm! $3B\<C-v>eAx\<Esc>"
[?25l[?1cx' at end¶[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet g:test ="Test 9: a multibyte sign and colorcolumn"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet attr=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet attr2=[]
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =''
[?25l[?1c /*▕———▕—————— and some more */¶
ScreenAttributes for test6:¶
Attribut 0 and 1 and 3 and 5 are differe
Test 8: set linebreak with visual block
long line: foobar foobar foobar foobar f
¶                                       [?25h[?0c[?25l[?1c:[?25h[?0c$put ='a b c'
[?25l[?1ca b c¶                                  [?25h[?0c[?25l[?1c:[?25h[?0c$put ='a b c'
[?25l[?1ca b c¶                                  [?25h[?0c[?25l[?1c:[?25h[?0cset list nolinebreak cc=3
[?25l[?1c*
Scr
Att
Tesn 
a b
a b[?25h[?0c[?25l[?1c:[?25h[?0csign define foo text=^+
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csign place 1 name=foo line=50 buffer=2
[?25l[?1c   /*▕—▕—— and some more */¶
  ScreenAttributes for test6:¶
  Attribut 0 and 1 and 3 and 5 are diff
  Test 8: set linebreak with visual bloc
  long line: foobar foobar foobar foobar
  ¶  
+a b c¶
  a b c¶
  
  ~~  #define >_CONSOLE>-->---2  +     #define >_FILE_AND_CONSOLE>--3  +     bbeeeeee  ;      some text    Test 5: set linebreak list listchars   +and concealing part2  eeeeee>--->-;>some text  +[?25h[?0c[?25l[?1c:[?25h[?0cnorm! 2kztj
[?25l[?1c  ¶                                     
+a b c¶                                
  a b c¶                                
  ~                                     
  ~                                     
                                        
                                        
                                        
                                        
                                          
  
  
  
  ~                                     ~                                     ~                                     ~                                     ~                                     [?25h[?0c[?25l[?1c:[?25h[?0clet line1=line('.')
[?25l[?1c[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:let attr += ['72']
[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:[?25h[?0clet line2=line('.')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet attr2=attr
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet attr=[]
[?25l[?1c[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:let attr += ['72']
[?25h[?0c[?25l[?1c:let attr += ['0']
[?25h[?0c[?25l[?1c:[?25h[?0credraw!
[?25l[?1c  ¶  |
+a b c¶|
  a b c¶||||||||  
  
  
  
  
  
  ~                                     ~                                     ~                                     ~                                     ~                                     ~                                     ~                                     
[No Name] [+]                              #define >_CONSOLE>---------->---2      +     #define >_FILE_AND_CONSOLE>---------3  +     bbeeeeee;      some text    Test 5: set linebreak list listchars  +and concealing part2  eeeeee>--->-;>some text  +[No Name] [+]                          :call DoRecordScreen()
:" expected: attr[2] is different because of colorcolumn
:if attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
:   call append('$', "Screen attributes are different!")
:else
:   call append('$', "Screen attributes are the same!")
:endif
:%w! test.out
:qa!
ENDTEST
dummy text
test_listlbr_utf8.in                                                            [?25h[?0c[?25l[?1c:[?25h[?0clet line=ScreenChar(winwidth(0),3)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall DoRecordScreen()
[?25l[?1c3 more lines¶                                     Test 9: a multibyte sign and colorcolu  ¶ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑ+a b c¶ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑ  a b c¶ˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑˑa b cTest 9: a multibyte sign and colorcolumn  ¶                     ++a b c¶                                 a b c¶               [?25h[?0c[?25l[?1c:[?25h[?0c" expected: attr[2] is different because of colorcolumn
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif attr[0] != attr2[0] || attr[1] != attr2[1] || attr[2] != attr2[2]
[?25l[?1c
:  [?25h[?0c:   call append('$', "Screen attributes are different!")

[?25l[?1c:  [?25h[?0c:else

[?25l[?1c:  [?25h[?0c:   call append('$', "Screen attributes are the same!")

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1c  ¶  |
+a b c¶|
  a b c¶|
  ¶  |Screen attributes are the same!¶        a b c    Test 9: a multibyte sign and colorcol  +umn[?25h[?0c[?25l[?1c:[?25h[?0c%w! test.out
[?25l[?1c"test.out" [New File] 57 lines, 1882 characters writtentest.out     test.out     [?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_mapping.failed test.ok test.out X* viminfo
cp test_mapping.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_mapping.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_mapping.in" 72 lines, 1447 charactersTest for mappings and abbreviations

STARTTEST
:so small.vim
:so mbyte.vim
:set encoding=utf-8
^[
:" mapping of ctrl-c in Insert mode
:set cpo-=< cpo-=k
:inoremap <c-c> <ctrl-c>
:cnoremap <c-c> dummy
:cunmap <c-c>
GA
TEST2: CTRL-C |^CA|
^[
:unmap <c-c>
:unmap! <c-c>
:"
:" mapping of ctrl-c in Visual mode
:vnoremap <c-c> :<C-u>$put ='vmap works'[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for mappings and abbreviations[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 62 lines, 1355 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTESTG2o^[ki
Test1: text with a (here some more text^[k.
:" test undo
G2o^[ki
Test2: text wit a (here some more text [und undo]^Gu^[k.u
:"
:imapclear
:set whichwrap=<,>,[,]
G3o^[2k
:exe ":norm! iTest3: text with a (parenthesis here\<C-G>U\<Right>new line here\<esc>\<up>\<up>.":/^test/,$w! test.out
:qa!
ENDTEST

test starts here:

a b c d
a b c d[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cso mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1cG2o^[ki
Test1: text with a (here some more text^[k.
:" test undo
G2o^[ki
Test2: text wit a (here some more text [und undo]^Gu^[k.u
:"
:imapclear
:set whichwrap=<,>,[,]
G3o^[2k
:exe ":norm! iTest3: text with a (parenthesis here\<C-G>U\<Right>new line here\<esc>\<up>\<up>.":/^test/,$w! test.out
:qa!
ENDTEST

test starts here:

a b c d
a b c d[?25h[?0c[?25l[?1c:[?25h[?0c " abbreviations with р0x80) should work
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoreab чкпр vim
[?25l[?1c[?25h[?0c[?25l[?1cч[?25h[?0c[?25l[?1cк[?25h[?0c[?25l[?1cп[?25h[?0c[?25l[?1c
vim[?25h[?0c[?25l[?1c:[?25h[?0c" mapping of ctrl-c in Insert mode
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset cpo-=< cpo-=k
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <c-c> <ctrl-c>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccnoremap <c-c> dummy
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccunmap <c-c>
[?25l[?1c[?25h[?0c
[?25l[?1cTEST2: CTRL-C |<ctrl-c>A|[?25h[?0c[?25l[?1c
:[?25h[?0cunmap <c-c>
[?25l[?1cE31: No such mapping[?25h[?0c[?25l[?1c:[?25h[?0cunmap! <c-c>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" mapping of ctrl-c in Visual mode
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cvnoremap <c-c> :<C-u>$put ='vmap works'
[?25l[?1c[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c:'<,'>$put ='vmap works'

vmap works[?25h[?0c[?25l[?1c
:[?25h[?0cvunmap <c-c>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" langmap should not get remapped in insert mode
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap { FAIL_ilangmap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset langmap=+{ langnoremap
[?25l[?1c[?25h[?0c[?25l[?1c
+[?25h[?0c[?25l[?1c
:[?25h[?0c" Insert-mode expr mapping with langmap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cinoremap <expr> { "FAIL_iexplangmap"
[?25l[?1c[?25h[?0c[?25l[?1c
+[?25h[?0c[?25l[?1c
:[?25h[?0c" langmap should not get remapped in Command-line mode
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccnoremap { FAIL_clangmap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), '+')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccunmap FAIL_clangmap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Command-line mode expr mapping with langmap
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccnoremap <expr> { "FAIL_cexplangmap"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), '+')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccunmap FAIL_cexplangmap
[?25l[?1cE31: No such mapping[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" issue #212 (feedkeys insert mapping at current position)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnnoremap . :call feedkeys(".", "in")<cr>
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^a b
[?25l[?1csearch hit BOTTOM, continuing at TOP[?25h[?0c[?25l[?1crecording @q[?25h[?0c[?25l[?1cb c d[?25h[?0c[?25l[?1c:call feedkeys(".", "in")
[?25h[?0c[?25l[?1cc d[?25h[?0c[?25l[?1crecording @qfooc d
fo[?25h[?0c[?25l[?1c[?25h[?0c
a 
[?25l[?1cb c d[?25h[?0c[?25l[?1c:call feedkeys(".", "in")
[?25h[?0c[?25l[?1cc d[?25h[?0c[?25l[?1cfooc d
fo[?25h[?0c[?25l[?1c:[?25h[?0cunmap .
[?25l[?1c[?25h[?0c
vi[?25l[?1c:[?25h[?0c" <c-g>U<cursor> works only within a single line
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cimapclear
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cimap ( ()<c-g>U<left>
[?25l[?1c[?25h[?0c[?25l[?1c+
+[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
Test1: text with a (here some more text)[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1cTest1: text with a (here some more text)[?25h[?0c[?25l[?1c

:[?25h[?0c" test undo
[?25l[?1c[?25h[?0c
[?25l[?1c[?25h[?0c[?25l[?1c
Test2: text wit a (here some more text [und undo])[?25h[?0c[?25l[?1c[?25h[?0c[?25l[?1c
1 line less; before #2  0 seconds ago[?25h[?0c
[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cimapclear
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset whichwrap=<,>,[,]
[?25l[?1c[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c[?25h[?0c
[?25l[?1c

:[?25h[?0cexe ":norm! iTest3: text with a (parenthesis here\<C-G>U\<Right>new line here\

<esc>\<up>\<up>."
[?25l[?1cnew line here
Test3: text with a (parenthesis here
new line here[?25h[?0c[?25l[?1c
:[?25h[?0c/^test/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 22 lines, 285 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_marks.failed test.ok test.out X* viminfo
cp test_marks.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_marks.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_marks.in" 18 lines, 307 charactersTests for marks.

STARTTEST
:so small.vim
:" test that a deleted mark is restored after delete-undo-redo-undo
:/^\t/+1
:set nocp viminfo+=nviminfo
maddu^Ru
:let a = string(getpos("'a"))
:$put ='Mark after delete-undo-redo-undo: '.a
:/^\t/,$wq! test.out
ENDTESTtextline Atextline Btextline C

Results:
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for marks.[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 8 lines, 224 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" test that a deleted mark is restored after delete-undo-redo-undo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^\t/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c1 more line; before #1  0 seconds agotextline B[?25h[?0c[?25l[?1c1 line less; after #1  0 seconds ago
~                                                                               [?25h[?0c[?25l[?1c1 more line; before #1  0 seconds agotextline B[?25h[?0c[?25l[?1c:[?25h[?0clet a = string(getpos("'a"))
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='Mark after delete-undo-redo-undo: '.a
[?25l[?1cMark after delete-undo-redo-undo: [0, 15, 2, 0][?25h[?0c[?25l[?1c:[?25h[?0c/^\t/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New] 6L, 94C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_match_conceal.failed test.ok test.out X* viminfo
cp test_match_conceal.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_match_conceal.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_match_conceal.in" 159 lines, 4931 charactersTest for matchadd() and conceal feature

STARTTEST
:so small.vim
:if !has("conceal") | e! test.ok | w! test.out | qa! | endif
:set term=ansi
:so mbyte.vim
:if &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
:10new|:vsp|:vert resize 20
:put =\"\#\ This\ is\ a\ Test\"
:norm! mazt
:fu! ScreenChar(width, lines)
:let c=''
:for j in range(1,a:lines)
:for i in range(1,a:width)
:let c.=nr2char(screenchar(j, i))
:endfor
:let c.="\n"
:endfor
:return c
:endfu
:fu! ScreenAttr(line, pos, eval)
:let g:attr=[][?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for matchadd() and conceal feature[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 154 lines, 4861 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:let a=getmatches()
:redraw!
:let line=ScreenChar(winwidth(0),1)
:call ScreenAttr(1,[1,2,7,10,12,16], "0!=1 && 1!=2 && 0==2 && 0==3 && 0!=4 && 0!=5 && 4==5")
:call DoRecordScreen()
:$put =a
:
:norm! 'azt
:call clearmatches()
:call matchadd('Conceal', '\%2l ', 20, -1, {'conceal': "\u02d1"})
:redraw!
:let line=ScreenChar(winwidth(0),1)
:call ScreenAttr(1,[1,2,7,10,12,16], "0!=1 && 1==2 && 1==3 && 1==4 && 0==5")
:call DoRecordScreen()
:
:"sleep 10
:%w! test.out
:qa!
ENDTEST
dummy text[?25h[?0c
[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("conceal") | e! test.ok | w! test.out | qa! | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset term=ansi
[?25l[?1c[?25h[?0c:let a=getmatches()
:redraw!
:let line=ScreenChar(winwidth(0),1)
:call ScreenAttr(1,[1,2,7,10,12,16], "0!=1 && 1!=2 && 0==2 && 0==3 && 0!=4 && 0!=5 && 4==5")
:call DoRecordScreen()
:$put =a
:
:norm! 'azt
:call clearmatches()
:call matchadd('Conceal', '\%2l ', 20, -1, {'conceal': "\u02d1"})
:redraw!
:let line=ScreenChar(winwidth(0),1)
:call ScreenAttr(1,[1,2,7,10,12,16], "0!=1 && 1==2 && 1==3 && 1==4 && 0==5")
:call DoRecordScreen()
:
:"sleep 10
:%w! test.out
:qa!
ENDTEST
dummy text

:so mbyte.vim
:if &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
"test.ok" 52 lines, 2620 characters

"test.out" [New File] 52 lines, 2620 characters written

# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_nested_function.failed test.ok test.out X* viminfo
cp test_nested_function.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_nested_function.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_nested_function.in" 34 lines, 563 charactersTests for Nested functionvim: set ft=vim :

STARTTEST
:so small.vim
:fu! NestedFunc()
:  fu! Func1()
:    $put ='Func1'
:  endfunction
:  call Func1()
:  fu! s:func2()
:    $put ='s:func2'
:  endfunction
:  call s:func2()
:  fu! s:_func3()
:    $put ='s:_func3'
:  endfunction
:  call s:_func3()
:  let fn = 'Func4'
:  fu! {fn}()
:    $put ='Func4'
:  endfunction
:  call {fn}()
:  let fn = 'func5'[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for Nested functionvim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 28 lines, 476 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:  fu! s:{fn}()
:    $put ='s:func5'
:  endfunction
:  call s:{fn}()
:endfunction
:call NestedFunc()
:/^result:/,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfu! NestedFunc()
[?25l[?1c
:  [?25h[?0c:  fu! Func1()

[?25l[?1c:    [?25h[?0c:    $put ='Func1'

[?25l[?1c:    [?25h[?0c:  endfunction

[?25l[?1c:    [?25h[?0c:  call Func1()

[?25l[?1c:    [?25h[?0c:  fu! s:func2()

[?25l[?1c:      [?25h[?0c:    $put ='s:func2'

[?25l[?1c:      [?25h[?0c:  endfunction

[?25l[?1c:      [?25h[?0c:  call s:func2()

[?25l[?1c:      [?25h[?0c:  fu! s:_func3()

[?25l[?1c:[?25h[?0c:    $put ='s:_func3'

[?25l[?1c:[?25h[?0c:  endfunction

[?25l[?1c:[?25h[?0c:  call s:_func3()

[?25l[?1c:[?25h[?0c:  let fn = 'Func4'

[?25l[?1c:[?25h[?0c:  fu! {fn}()

[?25l[?1c:[?25h[?0c:    $put ='Func4'

[?25l[?1c:[?25h[?0c:  endfunction

[?25l[?1c:[?25h[?0c:  call {fn}()

[?25l[?1c:[?25h[?0c:  let fn = 'func5'

[?25l[?1c:[?25h[?0c:  fu! s:{fn}()

[?25l[?1c:[?25h[?0c:    $put ='s:func5'

[?25l[?1c:[?25h[?0c:  endfunction

[?25l[?1c:[?25h[?0c:  call s:{fn}()

[?25l[?1c:[?25h[?0c:endfunction
[?25l[?1c:    $put ='s:func2'
:  endfunction
:  call s:func2()
:  fu! s:_func3()
:    $put ='s:_func3'
:  endfunction
:  call s:_func3()
:  let fn = 'Func4'
:  fu! {fn}()
:    $put ='Func4'
:  endfunction
:  call {fn}()
:  let fn = 'func5'
:  fu! s:{fn}()
:    $put ='s:func5'
:  endfunction
:  call s:{fn}()
:endfunction
:call NestedFunc()
:/^result:/,$w! test.out
:qa!
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0ccall NestedFunc()
[?25l[?1cError detected while processing function NestedFunc:

line    5:

E81: Using <SID> not in a script context

line    7:

E193: :endfunction not inside a function

line    8:

E81: Using <SID> not in a script context

line    9:

E81: Using <SID> not in a script context

line   11:

E193: :endfunction not inside a function

line   12:

E81: Using <SID> not in a script context

line   19:

E81: Using <SID> not in a script context

line   21:

E193: :endfunction not inside a function

line   22:

E81: Using <SID> not in a script context

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c/^result:/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 6 lines, 45 characters written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_options.failed test.ok test.out X* viminfo
cp test_options.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_options.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_options.in" 23 lines, 325 charactersTest for ":options".

STARTTEST
:so small.vim
:let caught = 'ok'
:try
  :options
:catch
  :let caught = v:throwpoint . "\n" . v:exception
:endtry
:buf 1
:$put =caught
:"
:" Test that changing 'path' keeps two commas.
:set path=foo,,bar
:set path-=bar
:set path+=bar
:$put =&path
:/^result/,$w! test.out
:qa!
ENDTEST

result[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for ":options".[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 17 lines, 277 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet caught = 'ok'
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ctry
[?25l[?1c
:  [?25h[?0c  :options

[?25l[?1c"option-window" [New File]

:  [?25h[?0c:catch 

[?25l[?1c:  [?25h[?0c  :let caught = v:throwpoint . "\n" . v:exception

[?25l[?1c:  [?25h[?0c:endtry
[?25l[?1c" Each "set" line shows the current value of an option (on the left).
" Hit <CR> on a "set" line to execute it.
"A boolean option will be toggled.
"For other options you can edit the value before hitting <CR>.
" Hit <CR> on a help line to open a help window on this option.
" Hit <CR> on an index line to jump there.
" Hit <Space> on a "set" line to refresh it. 1 important 2 moving around, searching and patterns
 3 tags
option-window                                                                   test_options.in                                                                 [?25h[?0c[?25l[?1c:[?25h[?0cbuf 1
[?25l[?1cTest for ":options".STARTTEST:so small.vim:let caught = 'ok':try  :options:catch
  :let caught = v:throwpoint . "\n" . v:exception
:endtry:buf 1test_options.in"test_options.in" line 1 of 23 --4%-- col 1[?25h[?0c[?25l[?1c:[?25h[?0c$put =caught
[?25l[?1c:" Test that changing 'path' keeps two commas.
:set path=foo,,bar
:set path-=bar
:set path+=bar
:$put =&path/^result/,$w! test.out
:qa!ENDTESTresultok[+][+][?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test that changing 'path' keeps two commas.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset path=foo,,bar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset path-=bar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset path+=bar
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =&path
[?25l[?1c
foo,,bar[?25h[?0c[?25l[?1c:[?25h[?0c/^result/,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 3 lines, 19 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_perl.failed test.ok test.out X* viminfo
cp test_perl.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_perl.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_perl.in" 26 lines, 582 charactersTests for perl interface.     vim: set ft=vim :

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
:if !has('perl') | e! test.ok | wq! test.out | endif
:" change buffer contents
:perl VIM::DoCommand("normal /^1\n")
:perl $curline = VIM::Eval("line('.')")
:perl $curbuf->Set($curline, "1 changed line 1")
:" evaluate a List
:perl VIM::DoCommand("normal /^2\n")
:perl $curline = VIM::Eval("line('.')")
:let l = ["abc", "def"]
:perl << EOF
$l = VIM::Eval("l");
$curbuf->Append($curline, $l);
EOF
:normal j
:.perldo s|\n|/|g
:?^1?,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for perl interface.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 19 lines, 496 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('perl') | e! test.ok | wq! test.out | endif
[?25l[?1c"test.ok" 3L, 35C

"test.out" [New] 3L, 35C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_qf_title.failed test.ok test.out X* viminfo
cp test_qf_title.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_qf_title.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_qf_title.in" 18 lines, 389 charactersTests for quickfix window's title     vim: set ft=vim :

STARTTEST
:so small.vim
:if !has('quickfix') | e! test.ok | wq! test.out | endif
:set efm=%E%f:%l:%c:%m
:cgetexpr ['file:1:1:message']
:let qflist=getqflist()
:call setqflist(qflist, 'r')
:copen
:let g:quickfix_title=w:quickfix_title
:wincmd p
:$put =g:quickfix_title
:/^Results/,$w test.out
:qa!
ENDTEST

Results of test_qf_title:
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for quickfix window's title     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 12 lines, 287 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('quickfix') | e! test.ok | wq! test.out | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset efm=%E%f:%l:%c:%m
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccgetexpr ['file:1:1:message']
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet qflist=getqflist()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall setqflist(qflist, 'r')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccopen
[?25l[?1c:call setqflist(qflist, 'r'):copen
:let g:quickfix_title=w:quickfix_title
:wincmd p$put =g:quickfix_title/^Results/,$w test.out
:qa!ENDTESTResults of test_qf_title:
~                                                                               test_qf_title.in                                                                file|1 col 1 error| message                                                     ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [Quickfix List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0clet g:quickfix_title=w:quickfix_title
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cwincmd p
[?25l[?1ctest_qf_title.in                                                                [Quickfix List]                                                                 [?25h[?0c[?25l[?1c:[?25h[?0c$put =g:quickfix_title
[?25l[?1c:setqflist()[+][?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$w test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 2 lines, 39 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_ruby.failed test.ok test.out X* viminfo
cp test_ruby.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_ruby.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_ruby.in" 25 lines, 541 charactersTests for ruby interface.     vim: set ft=vim :

STARTTEST
:so small.vim
:set nocompatible viminfo+=nviminfo
:if !has('ruby') | e! test.ok | wq! test.out | endif
:" change buffer contents
:ruby VIM.command("normal /^1\n")
:ruby $curbuf.line = "1 changed line 1"
:" evaluate a List
:ruby VIM.command("normal /^2\n")
:let l = ["abc", "def"]
:ruby << EOF
curline = $curbuf.line_number
l = VIM.evaluate("l");
$curbuf.append(curline, l.join("\n"))
EOF
:normal j
:.rubydo $_ = $_.gsub(/\n/, '/')
:?^1?,$w! test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for ruby interface.     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 18 lines, 455 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocompatible viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('ruby') | e! test.ok | wq! test.out | endif
[?25l[?1c"test.ok" 3L, 34C

"test.out" [New] 3L, 34C written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_search_mbyte.failed test.ok test.out X* viminfo
cp test_search_mbyte.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_search_mbyte.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_search_mbyte.in" 15 lines, 226 charactersTest for search('multi-byte char', 'bce')

STARTTEST
:source small.vim
:source mbyte.vim
:set encoding=utf-8
:/^Test bce:/+1
:$put =search('A', 'bce', line('.'))
:1;/^Results:/,$wq! test.out
ENDTEST

Results:

Test bce:
A
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTest for search('multi-byte char', 'bce')[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 6 lines, 140 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0csource small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csource mbyte.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1cTest for search('multi-byte char', 'bce')

STARTTEST
:source small.vim
:source mbyte.vim
:set encoding=utf-8
:/^Test bce:/+1
:$put =search('A', 'bce', line('.'))
:1;/^Results:/,$wq! test.out
ENDTEST

Results:

Test bce:
A
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c/^Test bce:/+1
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =search('A', 'bce', line('.'))
[?25l[?1c15[?25h[?0c[?25l[?1c:[?25h[?0c1;/^Results:/,$wq! test.out
[?25l[?1c"test.out" [New File] 5 lines, 27 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_set.failed test.ok test.out X* viminfo
cp test_set.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_set.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_set.in" 12 lines, 194 charactersTests for :set     vim: set ft=vim :

STARTTEST
:so small.vim
:set wildignore=*.png,
:set wildignore+=*.jpg
:$put =&wildignore
:/^Output goes here/+1,$w! test.out
:qa!
ENDTEST

Output goes here
~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for :set     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 6 lines, 120 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset wildignore=*.png,
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset wildignore+=*.jpg
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =&wildignore
[?25l[?1c*.png,*.jpg[?25h[?0c[?25l[?1c:[?25h[?0c/^Output goes here/+1,$w! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 1 line, 12 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_signs.failed test.ok test.out X* viminfo
cp test_signs.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_signs.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_signs.in" 22 lines, 447 charactersTests for signs
STARTTEST
:so small.vim
:if !has("signs")
:  e! test.ok
:  wq! test.out
:endif
:"
:sign define JumpSign text=x
:exe 'sign place 42 line=2 name=JumpSign buffer=' . bufnr('')
:" Split the window to the bottom to verify :sign-jump will stay in the current
:" window if the buffer is displayed there
:bot split
:exe 'sign jump 42 buffer=' . bufnr('')
:call append(line('$'), winnr())
:$-1,$w! test.out
ENDTEST

STARTTEST
:qa!
ENDTEST

~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for signs[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 14 lines, 388 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has("signs")
[?25l[?1c
:  [?25h[?0c:  e! test.ok

[?25l[?1c:  [?25h[?0c:  wq! test.out

[?25l[?1c:  [?25h[?0c:endif
[?25l[?1cTests for signs
STARTTEST
:so small.vim[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csign define JumpSign text=x
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cexe 'sign place 42 line=2 name=JumpSign buffer=' . bufnr('')
[?25l[?1c  Tests for signs
x STARTTEST
  :so small.vim
  :if !has("signs")
  :  e! test.ok
  :  wq! test.out
  :endif
  :"
  :sign define JumpSign text=x
  :exe 'sign place 42 line=2 name=JumpSign buffer=' . bufnr('')
  :" Split the window to the bottom to verify :sign-jump will stay in the curren  t  :" window if the buffer is displayed there
  :bot split  :exe 'sign jump 42 buffer=' . bufnr('')
  :call append(line('$'), winnr())
  :$-1,$w! test.out
  ENDTEST
    STARTTEST
  :qa!  ENDTEST
  [?25h[?0c[?25l[?1c:[?25h[?0c" Split the window to the bottom to verify :sign-jump will stay in the current
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" window if the buffer is displayed there
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbot split
[?25l[?1c:" Split the window to the bottom to verify :sign-jump will stay in the curren  t" window if the buffer is displayed therebot splitexe 'sign jump 42 buffer=' . bufnr('')call append(line('$'), winnr())$-1,$w! test.outENDTESTSTARTTESTtest_signs.in                                                                   :exe 'sign place 42 line=2 name=JumpSign buffer=' . bufnr('')Split the window to the bottom to verify :sign-jump will stay in the current" window if the buffer is displayed therebot splitexe 'sign jump 42 buffer=' . bufnr(''):call append(line('$'), winnr()):$-1,$w! test.outENDTESTSTARTTEST
test_signs.in                                                                   [?25h[?0c[?25l[?1c:[?25h[?0cexe 'sign jump 42 buffer=' . bufnr('')
[?25l[?1cTests for signsx STARTTEST:so small.vimif !has("signs")  e! test.ok  wq! test.outendif":sign define JumpSign text=x:exe 'sign place 42 line=2 name=JumpSign buffer=' . bufnr(''):" Split the window to the bottom to verify :sign-jump will stay in the curren@                                                                             [?25h[?0c[?25l[?1c:[?25h[?0ccall append(line('$'), winnr())
[?25l[?1c[+][+][?25h[?0c[?25l[?1c:[?25h[?0c$-1,$w! test.out
[?25l[?1c"test.out" [New File] 2 lines, 3 characters written[?25h[?0c[?25l[?1c/^STARTTEST
:bot split  :exe 'sign jump 42 buffer=' . bufnr('')call append(line('$'), winnr())$-1,$w! test.outENDTESTSTARTTESTqa!ENDTEST2[?25h[?0c[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" 1 line, 5 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_tagcase.failed test.ok test.out X* viminfo
cp test_tagcase.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_tagcase.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_tagcase.in" 57 lines, 1282 charactersTests for 'tagcase' option

STARTTEST
:so small.vim
:lang mess C
:/^start text$/+1,/^end text$/w! Xtext
:/^start tags$/+1,/^end tags$/-1w! Xtags
:set tags=Xtags
:e Xtext
:"
:" Verify default values.
:set ic& | setg tc& | setl tc&
:call append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&tc)
:"
:" Verify that the local setting accepts <empty> but that the global setting
:" does not.  The first of these (setting the local value to <empty>) should
:" succeed; the other two should fail.
:let v:errmsg = ""
:setl tc=
:call append('$', v:errmsg)
:let v:errmsg = ""
:setg tc=
:call append('$', v:errmsg)[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for 'tagcase' option[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 39 lines, 1144 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:    for &l:tc in ["", "followic", "ignore", "match"]
:      call append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&tc)
:      call append('$', len(taglist("^foo$")))
:      call append('$', len(taglist("^Foo$")))
:    endfor
:  endfor
:endfor
:"
:1,/^end text$/d
:w! test.out
:qa!
ENDTEST

start text

Foo
Bar
foo

end text

start tags
Bar     Xtext   3[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clang mess C
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start text$/+1,/^end text$/w! Xtext
[?25l[?1c"Xtext" [New File] 6 lines, 23 characters written[?25h[?0c[?25l[?1c:[?25h[?0c/^start tags$/+1,/^end tags$/-1w! Xtags
[?25l[?1c"Xtags" [New File] 3 lines, 36 characters written[?25h[?0c[?25l[?1c:[?25h[?0cset tags=Xtags
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ce Xtext
[?25l[?1c"Xtext" 6 lines, 23 charactersFooBarfooend text~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Verify default values.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset ic& | setg tc& | setl tc&
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&tc)
[?25l[?1cic=0 g:tc=followic l:tc=followic tc=followic[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Verify that the local setting accepts <empty> but that the global setting
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" does not.  The first of these (setting the local value to <empty>) should
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" succeed; the other two should fail.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetl tc=
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', v:errmsg)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0csetg tc=
[?25l[?1cE474: Invalid argument: tc=[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', v:errmsg)
[?25l[?1cE474: Invalid argument: tc=[?25h[?0c[?25l[?1c:[?25h[?0clet v:errmsg = ""
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset tc=
[?25l[?1cE474: Invalid argument: tc=[?25h[?0c[?25l[?1c:[?25h[?0ccall append('$', v:errmsg)
[?25l[?1cE474: Invalid argument: tc=[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Verify that the correct number of matching tags is found for all values of
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" 'ignorecase' and global and local values 'tagcase', in all combinations.
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor &ic in [0, 1]
[?25l[?1c
:  [?25h[?0c:  for &g:tc in ["followic", "ignore", "match"]

[?25l[?1c:    [?25h[?0c:    for &l:tc in ["", "followic", "ignore", "match"]

[?25l[?1c:      [?25h[?0c:      call append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&

tc)

[?25l[?1c:      [?25h[?0c:      call append('$', len(taglist("^foo$")))

[?25l[?1c:      [?25h[?0c:      call append('$', len(taglist("^Foo$")))

[?25l[?1c:      [?25h[?0c:    endfor

[?25l[?1c:    [?25h[?0c:  endfor

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1cFoo
Bar
foo

end text
ic=0 g:tc=followic l:tc=followic tc=followic

E474: Invalid argument: tc=

ic=0 g:tc=followic l:tc= tc=followic11ic=0 g:tc=followic l:tc=followic tc=followic11ic=0 g:tc=followic l:tc=ignore tc=ignore22ic=0 g:tc=followic l:tc=match tc=match11ic=0 g:tc=ignore l:tc= tc=ignore[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c1,/^end text$/d
[?25l[?1c6 fewer lines2
2
ic=0 g:tc=ignore l:tc=followic tc=followic
1
1
ic=0 g:tc=ignore l:tc=ignore tc=ignore6 fewer lines[?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 76 lines, 1120 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_textobjects.failed test.ok test.out X* viminfo
cp test_textobjects.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_textobjects.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_textobjects.in" 40 lines, 826 charactersTests for text-objects     vim: set ft=vim :

STARTTEST
:so small.vim
:if !has('textobjects') | e! test.ok | wq! test.out | endif
:set nocp viminfo+=nviminfo
:"
:function SelectionOut(data)
:  new
:  call setline(1, a:data)
:  call setreg('"', '')
:  normal! ggfrmavi)y
:  $put =getreg('\"')
:  call setreg('"', '')
:  normal! `afbmavi)y
:  $put =getreg('\"')
:  call setreg('"', '')
:  normal! `afgmavi)y
:  $put =getreg('\"')
:  %yank a
:  q!
:  $put =getreg('a')
:endfunction[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for text-objects     vim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 34 lines, 737 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"
:$put ='# Test for vi) without cpo-M'
:set cpo-=M
:call SelectionOut('(red \(blue) green)')
:"
:$put ='# Test for vi) with cpo-M #1'
:set cpo+=M
:call SelectionOut('(red \(blue) green)')
:"
:$put ='# Test for vi) with cpo-M #2'
:set cpo+=M
:call SelectionOut('(red (blue\) green)')
:/^Results/,$w test.out
:qa!
ENDTEST[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cif !has('textobjects') | e! test.ok | wq! test.out | endif
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset nocp viminfo+=nviminfo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction SelectionOut(data)
[?25l[?1c
:  [?25h[?0c:  new

[?25l[?1c:  [?25h[?0c:  call setline(1, a:data)

[?25l[?1c:  [?25h[?0c:  call setreg('"', '')

[?25l[?1c:  [?25h[?0c:  normal! ggfrmavi)y

[?25l[?1c:  [?25h[?0c:  $put =getreg('\"')

[?25l[?1c:  [?25h[?0c:  call setreg('"', '')

[?25l[?1c:  [?25h[?0c:  normal! `afbmavi)y

[?25l[?1c:  [?25h[?0c:  $put =getreg('\"')

[?25l[?1c:  [?25h[?0c:  call setreg('"', '')

[?25l[?1c:  [?25h[?0c:  normal! `afgmavi)y

[?25l[?1c:  [?25h[?0c:  $put =getreg('\"')

[?25l[?1c:  [?25h[?0c:  %yank a

[?25l[?1c:  [?25h[?0c:  q!

[?25l[?1c:  [?25h[?0c:  $put =getreg('a')

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:  call setreg('"', '')
:  normal! `afgmavi)y
:  $put =getreg('\"')
:  %yank a
:  q!
:  $put =getreg('a')
:endfunction
:"
:$put ='# Test for vi) without cpo-M'
:set cpo-=M
:call SelectionOut('(red \(blue) green)')
:"
:$put ='# Test for vi) with cpo-M #1'
:set cpo+=M
:call SelectionOut('(red \(blue) green)')[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put ='# Test for vi) without cpo-M'
[?25l[?1cResults of text-objects
# Test for vi) without cpo-M[?25h[?0c[?25l[?1c
:[?25h[?0cset cpo-=M
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall SelectionOut('(red \(blue) green)')
[?25l[?1c4 lines yanked
4 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c:endfunction
:"
:$put ='# Test for vi) without cpo-M'
:set cpo-=Mcall SelectionOut('(red \(blue) green)') cpo-M #1+2(blue\
:/^Results/,$w test.out
:qa!ENDTESTResults of text-objects
# Test for vi) without cpo-M
(red \(blue) green)
red \(blue
red \(blue[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='# Test for vi) with cpo-M #1'
[?25l[?1c
# Test for vi) with cpo-M #1[?25h[?0c[?25l[?1c
:[?25h[?0cset cpo+=M
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall SelectionOut('(red \(blue) green)')
[?25l[?1c4 lines yanked
4 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c:"
:$put ='# Test for vi) with cpo-M #1'+2(blue\
:/^Results/,$w test.out
:qa!ENDTESTResults of text-objects
# Test for vi) without cpo-M
(red \(blue) green)
red \(blue
red \(blue# Test for vi) with cpo-M #1
(red \(blue) green)) green
blue
red \(blue) green[?25h[?0c[?25l[?1c
:[?25h[?0c$put ='# Test for vi) with cpo-M #2'
[?25l[?1c
# Test for vi) with cpo-M #2[?25h[?0c[?25l[?1c
:[?25h[?0cset cpo+=M
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall SelectionOut('(red (blue\) green)')
[?25l[?1c4 lines yanked
4 more lines

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0c/^Results/,$w test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New] 16L, 277C written

Press ENTER or type command to continue[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_utf8.failed test.ok test.out X* viminfo
cp test_utf8.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_utf8.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_utf8.in" 46 lines, 1245 charactersTests for Unicode manipulationsvim: set ft=vim :

STARTTEST
:so small.vim
:set encoding=utf-8
:"
:" Visual block Insert adjusts for multi-byte char
:new
:exe ":norm! gg0l\<C-V>jjIx\<Esc>"
:let r = getline(1, '$')
:"
:bwipeout!
:$put=r
:"
:" Test for built-in function strchars()
:$put=strchars(str)
:$put=strchars(str, 0)
:$put=strchars(str, 1)
:endfor
:"
:" Test for customlist completion[?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for Unicode manipulationsvim: set ft=vim :[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 40 lines, 1151 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST:"
:" Test for customlist completion
:function! CustomComplete1(lead, line, pos)
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete1 Test1 echo
:call feedkeys(":Test1 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:function! CustomComplete2(lead, line, pos)
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete2 Test2 echo
:call feedkeys(":Test2 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:function! CustomComplete3(lead, line, pos)
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete3 Test3 echo
:call feedkeys(":Test3 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:call garbagecollect(1)
:/^start:/,$wq! test.out
ENDTEST
[?25h[?0c[?25l[?1c
[?25h[?0c[?25l[?1c
:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0cso small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cset encoding=utf-8
[?25l[?1c:" Test for customlist completion
:function! CustomComplete1(lead, line, pos)
:return ['あ', 'い']
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete1 Test1 echo
:call feedkeys(":Test1 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:function! CustomComplete2(lead, line, pos)
:return ['あたし', 'あたま', 'あたりめ']
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete2 Test2 echo
:call feedkeys(":Test2 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:function! CustomComplete3(lead, line, pos)
:return ['Nこ', 'Nん', 'Nぶ']
:endfunction
:command -nargs=1 -complete=customlist,CustomComplete3 Test3 echo
:call feedkeys(":Test3 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"
:call garbagecollect(1)
:/^start:/,$wq! test.out
ENDTEST
[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Visual block Insert adjusts for multi-byte char
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cnew
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [No Name]                                                                       function! CustomComplete3(lead, line, pos)
:       return ['Nこ', 'Nん', 'Nぶ']endfunctioncommand -nargs=1 -complete=customlist,CustomComplete3 Test3 echo
:call feedkeys(":Test3 \<C-L>'\<C-B>$put='\<CR>", 'it')"call garbagecollect(1)
:/^start:/,$wq! test.out
ENDTEST test_utf8.in                                                                    [?25h[?0c[?25l[?1c:[?25h[?0ccall setline(1, ["aaa", "あああ", "bbb"])
[?25l[?1caaa
あああbbb[+][?25h[?0c[?25l[?1c:[?25h[?0cexe ":norm! gg0l\<C-V>jjIx\<Esc>"
[?25l[?1cxaa
xあああ
bxbb[?25h[?0c[?25l[?1c:[?25h[?0clet r = getline(1, '$')
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipeout!
[?25l[?1c:" Test for customlist completion
:function! CustomComplete1(lead, line, pos)
:       return ['あ', 'い']
:endfunction:command -nargs=1 -complete=customlist,CustomComplete1 Test1 echo:call feedkeys(":Test1 \<C-L>'\<C-B>$put='\<CR>", 'it'):":function! CustomComplete2(lead, line, pos):       return ['あたし', 'あたま', 'あたりめ']:endfunction:command -nargs=1 -complete=customlist,CustomComplete2 Test2 echo:call feedkeys(":Test2 \<C-L>'\<C-B>$put='\<CR>", 'it')"function! CustomComplete3(lead, line, pos)
:       return ['Nこ', 'Nん', 'Nぶ']
:endfunctionommand -nargs=1 -complete=customlist,CustomComplete3 Test3 echo
:call feedkeys(":Test3 \<C-L>'\<C-B>$put='\<CR>", 'it')
:"call garbagecollect(1):/^start:/,$wq! test.out
ENDTEST
 [?25h[?0c[?25l[?1c:[?25h[?0c$put=r
[?25l[?1c3 more linesstart:
axaa
xあああ
bxbb3 more lines[?25h[?0c[?25l[?1c:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test for built-in function strchars()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfor str in ["a", "あいa", "A\u20dd", "A\u20dd\u20dd", "\u20dd"]
[?25l[?1c
:  [?25h[?0c:^I$put=strchars(str)

[?25l[?1c:  [?25h[?0c:^I$put=strchars(str, 0)

[?25l[?1c:  [?25h[?0c:^I$put=strchars(str, 1)

[?25l[?1c:  [?25h[?0c:endfor
[?25l[?1c:call garbagecollect(1)
:/^start:/,$wq! test.out
ENDTEST

start:axaaxあああbxbb11133322133
1111[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c" Test for customlist completion
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! CustomComplete1(lead, line, pos)
[?25l[?1c
:  [?25h[?0c:^Ireturn ['あ', 'い']

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:call garbagecollect(1)
:/^start:/,$wq! test.out[?25h[?0c[?25l[?1c
:[?25h[?0ccommand -nargs=1 -complete=customlist,CustomComplete1 Test1 echo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall feedkeys(":Test1 \<C-L>'\<C-B>$put='\<CR>", 'it')
[?25l[?1c[?25h[?0c[?25l[?1c:Test1 ...'
:$Test1 '
:$pTest1 '
:$puTest1 '
:$putTest1 '
:$put=Test1 ''Test1 '

Test1[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! CustomComplete2(lead, line, pos)
[?25l[?1c
:  [?25h[?0c:^Ireturn ['あたし', 'あたま', 'あたりめ']

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1c:/^start:/,$wq! test.out
ENDTEST[?25h[?0c[?25l[?1c
:[?25h[?0ccommand -nargs=1 -complete=customlist,CustomComplete2 Test2 echo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall feedkeys(":Test2 \<C-L>'\<C-B>$put='\<CR>", 'it')
[?25l[?1c[?25h[?0c[?25l[?1c:Test2 ...あた'
:$Test2 あた'
:$pTest2 あた'
:$puTest2 あた'
:$putTest2 あた'
:$put=Test2 あた''Test2 あた'

Test2 あた[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cfunction! CustomComplete3(lead, line, pos)
[?25l[?1c
:  [?25h[?0c:^Ireturn ['Nこ', 'Nん', 'Nぶ']

[?25l[?1c:  [?25h[?0c:endfunction
[?25l[?1cENDTEST[?25h[?0c[?25l[?1c
:[?25h[?0ccommand -nargs=1 -complete=customlist,CustomComplete3 Test3 echo
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall feedkeys(":Test3 \<C-L>'\<C-B>$put='\<CR>", 'it')
[?25l[?1c[?25h[?0c[?25l[?1c:Test3 ...N'
:$Test3 N'
:$pTest3 N'
:$puTest3 N'
:$putTest3 N'
:$put=Test3 N''Test3 N'

Test3 N[?25h[?0c[?25l[?1c
:[?25h[?0c"
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall garbagecollect(1)
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c/^start:/,$wq! test.out
[?25l[?1csearch hit BOTTOM, continuing at TOP
"test.out" [New File] 22 lines, 86 characters written
[?25h[?0c
# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
rm -rf test_writefile.failed test.ok test.out X* viminfo
cp test_writefile.ok test.ok
# Sleep a moment to avoid that the xterm title is messed up.
# 200 msec is sufficient, but only modern sleep supports a fraction of
# a second, fall back to a second if it fails.
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -s dotest.in test_writefile.in
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25h[?8c[?25h[?0c[?25l[?1c"test_writefile.in" 18 lines, 357 charactersTests for writefile()

STARTTEST
:source small.vim
:%delete _
:let f = tempname()
:call writefile(["over","written"], f, "b")
:call writefile(["hello","world"], f, "b")
:call writefile(["!", "good"], f, "a")
:call writefile(["morning"], f, "ab")
:call writefile(["", "vimmers"], f, "ab")
:bwipeout!
:$put =readfile(f)
:1 delete _
:w! test.out
:qa!
ENDTEST

~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cset cp
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cmap dotest /^STARTTEST^^Mj:set ff=unix cpo-=A^^M:.,/ENDTEST/-1w! Xdotest^^M:set f

f& cpo+=A^^Mnj0:so! Xdotest^^Mdotest
[?25l[?1cTests for writefile()[?25h[?0c[?25l[?1c/^STARTTEST
[?25h[?0c
[?25l[?1c:set ff=unix cpo-=A
[?25h[?0c[?25l[?1c:.,/ENDTEST/-1w! Xdotest
"Xdotest" [New File] 13 lines, 315 characters written[?25h[?0c[?25l[?1c:set ff& cpo+=A
[?25h[?0c[?25l[?1c/ENDTEST[?25h[?0c
[?25l[?1c:so! Xdotest
[?25h[?0c[?25l[?1c:[?25h[?0csource small.vim
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c%delete _
[?25l[?1c~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               ~                                                                               --No lines in buffer--[?25h[?0c[?25l[?1c:[?25h[?0clet f = tempname()
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["over","written"], f, "b")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["hello","world"], f, "b")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["!", "good"], f, "a")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["morning"], f, "ab")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0ccall writefile(["", "vimmers"], f, "ab")
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0cbwipeout!
[?25l[?1c[?25h[?0c[?25l[?1c:[?25h[?0c$put =readfile(f)
[?25l[?1c5 more lineshelloworld!goodmorningvimmers[?25h[?0c[?25l[?1c:[?25h[?0c1 delete _
[?25l[?1c
~                                                                               [?25h[?0c[?25l[?1c:[?25h[?0cw! test.out
[?25l[?1c"test.out" [New File] 5 lines, 34 characters written[?25h[?0c[?25l[?1c:[?25h[?0cqa!
[?25l[?1c[?25h[?0c# For flaky tests retry one time.
# Check if the test.out file matches test.ok.
rm -rf X* test.ok viminfo
VIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -u runtest.vim test_assert.vim
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25l[?1cfunction Test_assert_equal()

function Test_assert_false()

function Test_assert_true()

"test_assert.res" [New File]

"test_assert.res" [New File] 0 lines, 0 characters written

Executed 3 tests

[?25h[?0cVIMRUNTIME=../../runtime; export VIMRUNTIME;  ../vim -f -u unix.vim -U NONE --noplugin -u runtest.vim test_alot.vim
Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
[?25l[?1cfunction Test_global_local_lispwords()

function Test_global_local_undolevels()

function Test_sort_numeric()

function Test_sort_numbers()

function Test_sort_strings()
"one" [New File]
6 fewer lines; before #8  0 seconds ago
"two" [New File]
3 fewer lines; before #11  0 seconds ago
"three" [New File]est_alot.res" [New File][New] 0L, 0C written

Executed 5 tests

[?25h[?0c
Test results:
ALL DONE
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic/testdir'
/usr/bin/make -f Makefile unittest
make[2]: Entering directory '/«PKGBUILDDIR»/src/vim-basic'
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        -o objects/memfile_test.o memfile_test.c
gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        version.c -o objects/version.o
version.c:52:43: warning: macro "__DATE__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                           ^
version.c:52:56: warning: macro "__TIME__" might prevent reproducible builds [-Wdate-time]
 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")";
                                                        ^
link.sh: $LINK_AS_NEEDED set to 'yes': invoking linker directly.
  gcc   -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 	-o memfile_test objects/buffer.o objects/blowfish.o objects/charset.o objects/crypt.o objects/crypt_zip.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o  objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o  objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o           objects/netbeans.o  objects/memfile_test.o        -lm -ltinfo -lnsl  -lselinux -lacl -lattr -lgpm -ldl           
link.sh: Linked fine
memfile_test passed
make[2]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic'
make[1]: Leaving directory '/«PKGBUILDDIR»/src/vim-basic'
# installvimbin installs the vim binary under debian/tmp but we install
# it into the vim package from src/.  Need to rm it from debian/tmp so
# that dh_install doesn't fail
rm -f debian/tmp/usr/bin/vim
mv src/vim-basic/vim src/vim-basic/vim.basic
for L in fr it pl ru ja; do \
  if [ -d "/«PKGBUILDDIR»/debian/tmp/usr/share/man/$L.UTF-8" ]; then \
    rm -rf "/«PKGBUILDDIR»/debian/tmp/usr/share/man/$L"; \
    mv "/«PKGBUILDDIR»/debian/tmp/usr/share/man/$L.UTF-8" "/«PKGBUILDDIR»/debian/tmp/usr/share/man/$L"; \
  fi; \
  rm -rf "/«PKGBUILDDIR»/debian/tmp/usr/share/man/$L."*; \
done
# rm stuff handled by alternatives
rm -f /«PKGBUILDDIR»/debian/tmp/usr/bin/ex /«PKGBUILDDIR»/debian/tmp/usr/bin/view
for f in $(find /«PKGBUILDDIR»/debian/tmp/usr/share/man -name view.1 -o -name ex.1); do \
  rm -f $f; \
done
# rm stuff handled by our own symlinks
for f in $(find /«PKGBUILDDIR»/debian/tmp/usr/share/man -name rvim.1 -o -name rview.1); do \
  rm -f $f; \
done
# helpztags manpage
pod2man -c "User Commands" -s 1 -q none -r "vim 7.4" \
	-d "August 2010" debian/helpztags debian/helpztags.1
# variant-related installations for package "vim"
# to be kept in sync with those in "install-stamp-%" target
for x in install postinst prerm links lintian-overrides ; do \
  sed -e "s:@PKG@:vim:;s:@VARIANT@:basic:g" \
      -e "s:@COMMON@:vim-common:" \
      debian/vim-variant.$x > debian/vim.$x ;\
done
for L in fr it pl ru ja; do \
  sed -e "s:\(.*\)@LANG_ALTS@:\1--slave \$mandir/$L/man1/\$i.1.gz \$i.$L.1.gz \$mandir/$L/man1/vim.1.gz \\\\\n&:" \
      -i debian/vim.postinst; \
done
sed -i "/@LANG_ALTS@/d" debian/vim.postinst
# Generate language-specific sections of
# vim-{runtime,common,gui-common}.install files
for L in fr it pl ru ja; do \
  echo debian/tmp/usr/share/man/$L/man1/vimtutor.1  \
    usr/share/man/$L/man1/ >>debian/vim-runtime.install; \
  for f in vim xxd vimdiff; do \
    echo debian/tmp/usr/share/man/$L/man1/$f.1 \
      usr/share/man/$L/man1/ >>debian/vim-common.install; \
  done; \
  echo debian/tmp/usr/share/man/$L/man1/evim.1  \
    usr/share/man/$L/man1/ >>debian/vim-gui-common.install; \
done
# Icons
for sz in 16 32 48; do \
  cp runtime/vim${sz}x${sz}.xpm debian/vim-common/usr/share/pixmaps/vim-${sz}.xpm; \
done
gs -sDefaultCMYKProfile=ps_cmyk.icc -sOutputICCProfile=ps_rgb.icc \
    -dSAFER -dEPSCrop -dBATCH -dNOPAUSE \
    -sDEVICE=ps2write -sOutputFile=debian/tmplogo.ps runtime/vimlogo.eps
GPL Ghostscript 9.16 (2015-03-30)
Copyright (C) 2015 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
ps2pdf debian/tmplogo.ps debian/tmplogo.pdf
pdf2svg debian/tmplogo.pdf debian/vim-common/usr/share/pixmaps/gvim.svg
cp debian/vim-common/usr/share/pixmaps/gvim.svg \
   debian/vim-common/usr/share/icons/hicolor/scalable/apps/gvim.svg
dh_installman
dh_install --fail-missing -X/tools/
# adjust things for vim-gui-common
cp debian/vim-common/usr/share/man/man1/vim.1 \
   debian/vim-gui-common/usr/share/man/man1/gvim.1
cp debian/vim-common/usr/share/man/man1/vimdiff.1 \
   debian/vim-gui-common/usr/share/man/man1/gvimdiff.1
cp debian/vim-runtime/usr/share/man/man1/vimtutor.1 \
   debian/vim-gui-common/usr/share/man/man1/gvimtutor.1
for L in fr it pl ru ja; do \
  cp debian/vim-common/usr/share/man/$L/man1/vim.1 \
     debian/vim-gui-common/usr/share/man/$L/man1/gvim.1; \
  cp debian/vim-common/usr/share/man/$L/man1/vimdiff.1 \
     debian/vim-gui-common/usr/share/man/$L/man1/gvimdiff.1; \
  cp debian/vim-runtime/usr/share/man/$L/man1/vimtutor.1 \
     debian/vim-gui-common/usr/share/man/$L/man1/gvimtutor.1; \
done
# Generate language-specific sections of
# vim-{runtime,common,gui-common}.links files
for L in fr it pl ru ja; do \
  for p in rvim rview; do \
    echo usr/share/man/$L/man1/vim.1  \
      usr/share/man/$L/man1/$p.1 >>debian/vim-common.links; \
  done; \
  for p in gview rgvim rgview; do \
    echo usr/share/man/$L/man1/gvim.1  \
      usr/share/man/$L/man1/$p.1 >>debian/vim-gui-common.links; \
  done; \
  echo usr/share/man/$L/man1/evim.1 \
    usr/share/man/$L/man1/eview.1 >>debian/vim-gui-common.links; \
done
dh_link
# all excepts vim
dh_installchangelogs -Nvim -pvim-dbg debian/changelog.upstream
dh_installdocs -pvim-dbg
dh_installmime
env -u DH_OPTIONS dh_bugfiles -A -pvim
touch install-stamp-vim-basic
dh_testdir
dh_testroot
dh_strip --dbg-package=vim-dbg
dh_compress
dh_fixperms
dh_lintian
dh_installdeb
dh_shlibdeps
dh_gencontrol
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
dh_builddeb -- -Zxz
dpkg-deb: building package 'vim' in '../vim_7.4.963-1_armhf.deb'.
dpkg-deb: building package 'vim-common' in '../vim-common_7.4.963-1_armhf.deb'.
dh_testdir
dh_testroot
dh_compress
dh_fixperms
dh_lintian
dh_installdeb
dh_gencontrol
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dh_md5sums
dh_builddeb -- -Zxz
dpkg-deb: building package 'vim-dbg' in '../vim-dbg_7.4.963-1_armhf.deb'.
 dpkg-genchanges -B -mRaspbian nitrogen6x test autobuilder <root@raspbian.org> >../vim_7.4.963-1_armhf.changes
dpkg-genchanges: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build vim-7.4.963
dpkg-buildpackage: binary-only upload (no source included)
────────────────────────────────────────────────────────────────────────────────
Build finished at 20160118-1622

Finished
────────

I: Built successfully

┌──────────────────────────────────────────────────────────────────────────────┐
│ Post Build Chroot                                                            │
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ Changes                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘


vim_7.4.963-1_armhf.changes:
────────────────────────────

Format: 1.8
Date: Wed, 09 Dec 2015 23:31:36 -0500
Source: vim
Binary: vim-common vim-gui-common vim-runtime vim-doc vim-tiny vim vim-dbg vim-gtk vim-nox vim-athena vim-gnome
Architecture: armhf
Version: 2:7.4.963-1
Distribution: stretch-staging
Urgency: medium
Maintainer: Raspbian nitrogen6x test autobuilder <root@raspbian.org>
Changed-By: James McCoy <jamessan@debian.org>
Description:
 vim        - Vi IMproved - enhanced vi editor
 vim-athena - Vi IMproved - enhanced vi editor - with Athena GUI
 vim-common - Vi IMproved - Common files
 vim-dbg    - Vi IMproved - enhanced vi editor (debugging symbols)
 vim-doc    - Vi IMproved - HTML documentation
 vim-gnome  - Vi IMproved - enhanced vi editor - with GNOME2 GUI
 vim-gtk    - Vi IMproved - enhanced vi editor - with GTK2 GUI
 vim-gui-common - Vi IMproved - Common GUI files
 vim-nox    - Vi IMproved - enhanced vi editor - with scripting languages suppo
 vim-runtime - Vi IMproved - Runtime files
 vim-tiny   - Vi IMproved - enhanced vi editor - compact version
Closes: 622827 713066 773531 806535 806785
Changes:
 vim (2:7.4.963-1) unstable; urgency=medium
 .
   * Merge upstream tag v7.4.963.
     + Remove merged patches:
       - Typo in Spanish translation of swapfile recovery.
     + Highlighted changes:
       - 7.4.849: New Insert mode command to maintain the undo sequence across
         cursor movements (c.f., :help i_CTRL-G_U).
       - 7.4.858: New quickfix-related commands (:ldo, :lfdo, :cdo, and :cfdo).
       - indent/yaml.vim: Maintain indent of mapping key when mapping is
         contained in a list.  (Closes: #713066)
       - 7.4.941: New 'tagcase' option to control whether tag searches are case
         insensitive.
   * Rewrite vim-tiny's help.txt.
     + Clarify the reasoning for the package and why the help isn't available.
     + Explicitly mention what the more featureful Vim packages are.
     + Point to vimhelp.appspot.com for online help, since it is better kept
       updated.
   * Update Vcs-* URLs to point to Git.
   * Install upstream's patchlist as the changelog.  (Closes: #622827)
   * Fix a typo in vim-policy.  Thanks to Jakuyo Friel for the patch.  (Closes:
     #773531)
   * Fix FTBFS when running “dpkg-buildpackage -A”.  (Closes: #806785)
   * Stop installing menu files.
   * Install upstream's desktop files and drop the ones from debian/.
   * Mark vim-runtime/vim-gui-common as Multi-Arch: foreign.  (Closes: #806535)
Checksums-Sha1:
 3dd8e2ae8e50c035d6c0f7fb802cf47ea918a6b4 995440 vim-athena_7.4.963-1_armhf.deb
 2a40d2c17a4a590ca7996caf0fdcfc02226479c7 209248 vim-common_7.4.963-1_armhf.deb
 badd9e6df9cba9477f468572944d8f619d3a2fd4 13444040 vim-dbg_7.4.963-1_armhf.deb
 a344e157e6d79d55802d2cf848335f77ce60d5b1 1006446 vim-gnome_7.4.963-1_armhf.deb
 d62e39e50cc11b8412ba4e333ab0017674b04675 1001924 vim-gtk_7.4.963-1_armhf.deb
 184b7b0b53551583971e5aebcaeb1f71f986af4a 904408 vim-nox_7.4.963-1_armhf.deb
 e7091d87344959f1aa45da01c84d6abeec6f47d9 364116 vim-tiny_7.4.963-1_armhf.deb
 2d0fe91cdf92a6c2bd3e591bb41408dad54b8d9f 826862 vim_7.4.963-1_armhf.deb
Checksums-Sha256:
 d69a53e3bf98cbf0cdeb3b071cc32a22ea909a57944f71143d1c10d4aa45561d 995440 vim-athena_7.4.963-1_armhf.deb
 8df28cf4eba8fc8c6f56c25a72fb3e77758dba54351876d71cb2252e2c271011 209248 vim-common_7.4.963-1_armhf.deb
 ad0bcfbf88bb3f0e74fb49480144a581da2fca4f379c61c58190506efb57cfa2 13444040 vim-dbg_7.4.963-1_armhf.deb
 abb2c312745f086bb18bd1367b1602baa85369d791c659fc0304b50a45b8c30a 1006446 vim-gnome_7.4.963-1_armhf.deb
 460a88805721c2f7deb78d89e8b27ca336e24f6af726170da829b53e10d827ec 1001924 vim-gtk_7.4.963-1_armhf.deb
 c39762a527fc027a51b891a42f6458ea192d80c34802f3b184d0ab39103078b3 904408 vim-nox_7.4.963-1_armhf.deb
 a0edc84acc88102f25d38f0bddffb2f09181ba3b41e8e2b1e6fc8cfd62bd3238 364116 vim-tiny_7.4.963-1_armhf.deb
 09307c53c331488e6ca8c4a81e470b7f0e8867e9b14b798c551b522f10d04e04 826862 vim_7.4.963-1_armhf.deb
Files:
 5713d5a27722a95c63a9a5f9c7c20252 995440 editors extra vim-athena_7.4.963-1_armhf.deb
 c28198b1d2a0ba6de24c838fc5d26a11 209248 editors important vim-common_7.4.963-1_armhf.deb
 32f94a3515fcc3c5e76f4009790f634a 13444040 debug extra vim-dbg_7.4.963-1_armhf.deb
 a4f4d49a3348f8b6b820c1b6cce39d04 1006446 editors extra vim-gnome_7.4.963-1_armhf.deb
 56b7bab3e4c2438eb5a06acc5b24867f 1001924 editors extra vim-gtk_7.4.963-1_armhf.deb
 a11a3334c0a89713524482735e08e481 904408 editors extra vim-nox_7.4.963-1_armhf.deb
 2d7e7de36e8116bc45f9253ffd7c48d2 364116 editors important vim-tiny_7.4.963-1_armhf.deb
 cad2341c35605ed1b0c8b8b7388df26b 826862 editors optional vim_7.4.963-1_armhf.deb

┌──────────────────────────────────────────────────────────────────────────────┐
│ Package contents                                                             │
└──────────────────────────────────────────────────────────────────────────────┘


vim-athena_7.4.963-1_armhf.deb
──────────────────────────────

 new debian package, version 2.0.
 size 995440 bytes: control archive=1976 bytes.
    1170 bytes,    21 lines      control              
     259 bytes,     4 lines      md5sums              
    2479 bytes,    78 lines   *  postinst             #!/bin/sh
    1226 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim-athena
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 2446
 Depends: vim-gui-common (= 2:7.4.963-1), vim-common (= 2:7.4.963-1), vim-runtime (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.4), libice6 (>= 1:1.0.0), liblua5.2-0, libperl5.22 (>= 5.22.1), libpython2.7 (>= 2.7), libruby2.2 (>= 2.2.0~1), libselinux1 (>= 1.32), libsm6, libtcl8.6 (>= 8.6.0), libtinfo5 (>= 6), libx11-6, libxaw7, libxmu6, libxpm4, libxt6
 Suggests: cscope, vim-doc
 Provides: editor, gvim, vim, vim-lua, vim-perl, vim-python, vim-ruby, vim-tcl
 Section: editors
 Priority: extra
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor - with Athena GUI
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  Many new features have been added: multi level undo, syntax
  highlighting, command line history, on-line help, filename
  completion, block operations, folding, Unicode support, etc.
  .
  This package contains a version of vim compiled with a Athena GUI
  and support for scripting with Lua, Perl, Python, Ruby, and Tcl.

drwxr-xr-x root/root         0 2016-01-18 16:14 ./
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/bin/
-rwxr-xr-x root/root   2485168 2016-01-18 16:14 ./usr/bin/vim.athena
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/vim-athena/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim-athena/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim-athena/script
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/doc/vim-athena -> vim-gui-common
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       146 2016-01-18 16:14 ./usr/share/lintian/overrides/vim-athena


vim-common_7.4.963-1_armhf.deb
──────────────────────────────

 new debian package, version 2.0.
 size 209248 bytes: control archive=2131 bytes.
      15 bytes,     1 lines      conffiles            
     719 bytes,    19 lines      control              
    2557 bytes,    38 lines      md5sums              
     795 bytes,    30 lines   *  preinst              #!/bin/sh
 Package: vim-common
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 345
 Depends: libc6 (>= 2.4)
 Recommends: vim | vim-gnome | vim-gtk | vim-athena | vim-nox | vim-tiny
 Breaks: vim-gui-common (<< 2:7.4.488-4~)
 Replaces: vim-gui-common (<< 2:7.4.488-4~)
 Section: editors
 Priority: important
 Homepage: http://www.vim.org/
 Description: Vi IMproved - Common files
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  This package contains files shared by all non GUI-enabled vim variants
  available in Debian.  Examples of such shared files are: manpages,
  common executables like xxd, and configuration files.

drwxr-xr-x root/root         0 2016-01-18 16:21 ./
drwxr-xr-x root/root         0 2016-01-18 16:20 ./etc/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./etc/vim/
-rw-r--r-- root/root      2125 2015-12-10 04:32 ./etc/vim/vimrc
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/bin/
-rwxr-xr-x root/root      2480 2015-12-10 04:32 ./usr/bin/helpztags
-rwxr-xr-x root/root     17948 2016-01-18 16:21 ./usr/bin/xxd
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/mime/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/mime/packages/
-rw-r--r-- root/root       346 2015-12-10 04:32 ./usr/lib/mime/packages/vim-common
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/applications/
-rw-r--r-- root/root      3595 2016-01-18 16:15 ./usr/share/applications/vim.desktop
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/doc/vim-common/
-rw-r--r-- root/root      1366 2015-12-10 04:32 ./usr/share/doc/vim-common/NEWS.Debian.gz
-rw-r--r-- root/root      1723 2015-12-10 04:32 ./usr/share/doc/vim-common/README.Debian
-rw-r--r-- root/root     83992 2015-12-10 04:32 ./usr/share/doc/vim-common/changelog.Debian.gz
-rw-r--r-- root/root     23459 2015-12-10 04:32 ./usr/share/doc/vim-common/changelog.gz
-rw-r--r-- root/root     10927 2015-12-10 04:32 ./usr/share/doc/vim-common/copyright
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/16x16/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/16x16/apps/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/32x32/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/32x32/apps/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/48x48/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/icons/hicolor/48x48/apps/
-rw-r--r-- root/root       474 2016-01-18 16:15 ./usr/share/icons/hicolor/48x48/apps/gvim.png
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/hicolor/scalable/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/icons/hicolor/scalable/apps/
-rw-r--r-- root/root     18526 2016-01-18 16:20 ./usr/share/icons/hicolor/scalable/apps/gvim.svg
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/locolor/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/locolor/16x16/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/locolor/16x16/apps/
-rw-r--r-- root/root       226 2016-01-18 16:15 ./usr/share/icons/locolor/16x16/apps/gvim.png
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/locolor/32x32/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/icons/locolor/32x32/apps/
-rw-r--r-- root/root       347 2016-01-18 16:15 ./usr/share/icons/locolor/32x32/apps/gvim.png
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       126 2015-12-10 04:32 ./usr/share/lintian/overrides/vim-common
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/fr/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/fr/man1/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/fr/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/fr/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      6527 2016-01-18 16:15 ./usr/share/man/fr/man1/vim.1.gz
-rw-r--r-- root/root       999 2016-01-18 16:15 ./usr/share/man/fr/man1/vimdiff.1.gz
-rw-r--r-- root/root      4905 2016-01-18 16:15 ./usr/share/man/fr/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/it/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/it/man1/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/it/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/it/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      6101 2016-01-18 16:15 ./usr/share/man/it/man1/vim.1.gz
-rw-r--r-- root/root       754 2016-01-18 16:15 ./usr/share/man/it/man1/vimdiff.1.gz
-rw-r--r-- root/root      4819 2016-01-18 16:15 ./usr/share/man/it/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/ja/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/ja/man1/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/ja/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/ja/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      5931 2016-01-18 16:15 ./usr/share/man/ja/man1/vim.1.gz
-rw-r--r-- root/root       860 2016-01-18 16:15 ./usr/share/man/ja/man1/vimdiff.1.gz
-rw-r--r-- root/root      4595 2016-01-18 16:15 ./usr/share/man/ja/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/man1/
-rw-r--r-- root/root      2201 2016-01-18 16:20 ./usr/share/man/man1/helpztags.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      5421 2016-01-18 16:15 ./usr/share/man/man1/vim.1.gz
-rw-r--r-- root/root       701 2016-01-18 16:15 ./usr/share/man/man1/vimdiff.1.gz
-rw-r--r-- root/root      4309 2016-01-18 16:15 ./usr/share/man/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/pl/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/pl/man1/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/pl/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/pl/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      6296 2016-01-18 16:15 ./usr/share/man/pl/man1/vim.1.gz
-rw-r--r-- root/root       790 2016-01-18 16:15 ./usr/share/man/pl/man1/vimdiff.1.gz
-rw-r--r-- root/root      4642 2016-01-18 16:15 ./usr/share/man/pl/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/man/ru/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/man/ru/man1/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/ru/man1/rview.1.gz -> vim.1.gz
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/man/ru/man1/rvim.1.gz -> vim.1.gz
-rw-r--r-- root/root      7130 2016-01-18 16:15 ./usr/share/man/ru/man1/vim.1.gz
-rw-r--r-- root/root      1230 2016-01-18 16:15 ./usr/share/man/ru/man1/vimdiff.1.gz
-rw-r--r-- root/root      6117 2016-01-18 16:15 ./usr/share/man/ru/man1/xxd.1.gz
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/pixmaps/
-rw-r--r-- root/root     18526 2016-01-18 16:20 ./usr/share/pixmaps/gvim.svg
-rw-r--r-- root/root       490 2016-01-18 16:20 ./usr/share/pixmaps/vim-16.xpm
-rw-r--r-- root/root      1322 2016-01-18 16:20 ./usr/share/pixmaps/vim-32.xpm
-rw-r--r-- root/root      2666 2016-01-18 16:20 ./usr/share/pixmaps/vim-48.xpm
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/vim/
drwxr-xr-x root/root         0 2016-01-18 16:20 ./usr/share/vim/vim74/
-rw-r--r-- root/root      1864 2016-01-18 16:14 ./usr/share/vim/vim74/debian.vim
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/vim/vimfiles -> /etc/vim
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/vim/vimrc -> /etc/vim/vimrc
drwxr-xr-x root/root         0 2016-01-18 16:15 ./var/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./var/lib/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./var/lib/vim/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./var/lib/vim/addons/


vim-dbg_7.4.963-1_armhf.deb
───────────────────────────

 new debian package, version 2.0.
 size 13444040 bytes: control archive=1028 bytes.
     676 bytes,    15 lines      control              
    1024 bytes,    11 lines      md5sums              
 Package: vim-dbg
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 14802
 Depends: vim (= 2:7.4.963-1) | vim-gtk (= 2:7.4.963-1) | vim-gnome (= 2:7.4.963-1) | vim-nox (= 2:7.4.963-1) | vim-common (= 2:7.4.963-1) | vim-athena (= 2:7.4.963-1) | vim-tiny (= 2:7.4.963-1)
 Section: debug
 Priority: extra
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor (debugging symbols)
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  This package contains gdb debugging symbols for the vim packages.
 Build-Ids: 4b6bf6d63ca942729cdb2cbb197048c43a76524e

drwxr-xr-x root/root         0 2016-01-18 16:21 ./
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/debug/.build-id/0d/
-rw-r--r-- root/root   2336908 2016-01-18 16:21 ./usr/lib/debug/.build-id/0d/4d6f3496992c148cfa2f35280ffcdc13292f2b.debug
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/debug/.build-id/4b/
-rw-r--r-- root/root   2931344 2016-01-18 16:14 ./usr/lib/debug/.build-id/4b/6bf6d63ca942729cdb2cbb197048c43a76524e.debug
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/lib/debug/.build-id/62/
-rw-r--r-- root/root     14440 2016-01-18 16:21 ./usr/lib/debug/.build-id/62/65c1a110fa877636a029e404fc4eb12c0acbf9.debug
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/debug/.build-id/65/
-rw-r--r-- root/root   3099088 2016-01-18 16:14 ./usr/lib/debug/.build-id/65/e8b11569ba3ae330aa3b194c60a36c779976b5.debug
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/lib/debug/.build-id/66/
-rw-r--r-- root/root    960320 2016-01-18 16:15 ./usr/lib/debug/.build-id/66/7cbf80e580df7fc72db4e3bd8cb330337ea81e.debug
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/debug/.build-id/88/
-rw-r--r-- root/root   2570596 2016-01-18 16:14 ./usr/lib/debug/.build-id/88/5cbe31afefacafb1718b603962e4e41f8ba001.debug
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/lib/debug/.build-id/b8/
-rw-r--r-- root/root   3102136 2016-01-18 16:14 ./usr/lib/debug/.build-id/b8/f5da9789579fa383d79beb0e6cfba295563d57.debug
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/doc/vim-dbg/
-rw-r--r-- root/root      1366 2015-12-10 04:32 ./usr/share/doc/vim-dbg/NEWS.Debian.gz
-rw-r--r-- root/root     83992 2015-12-10 04:32 ./usr/share/doc/vim-dbg/changelog.Debian.gz
-rw-r--r-- root/root     23459 2015-12-10 04:32 ./usr/share/doc/vim-dbg/changelog.gz
-rw-r--r-- root/root     10927 2015-12-10 04:32 ./usr/share/doc/vim-dbg/copyright


vim-gnome_7.4.963-1_armhf.deb
─────────────────────────────

 new debian package, version 2.0.
 size 1006446 bytes: control archive=2041 bytes.
    1353 bytes,    21 lines      control              
     255 bytes,     4 lines      md5sums              
    2477 bytes,    78 lines   *  postinst             #!/bin/sh
    1224 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim-gnome
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 2485
 Depends: vim-gui-common (= 2:7.4.963-1), vim-common (= 2:7.4.963-1), vim-runtime (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libbonoboui2-0 (>= 2.15.1), libc6 (>= 2.15), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.12.0), libgnome-2-0, libgnomeui-0 (>= 2.22.0), libgpm2 (>= 1.20.4), libgtk2.0-0 (>= 2.24.0), libice6 (>= 1:1.0.0), liblua5.2-0, libpango-1.0-0 (>= 1.32.4), libperl5.22 (>= 5.22.1), libpython2.7 (>= 2.7), libruby2.2 (>= 2.2.0~1), libselinux1 (>= 1.32), libsm6, libtcl8.6 (>= 8.6.0), libtinfo5 (>= 6), libx11-6, libxt6
 Suggests: cscope, vim-doc, fonts-dejavu, gnome-icon-theme
 Provides: editor, gvim, vim, vim-lua, vim-perl, vim-python, vim-ruby, vim-tcl
 Section: editors
 Priority: extra
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor - with GNOME2 GUI
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  Many new features have been added: multi level undo, syntax
  highlighting, command line history, on-line help, filename
  completion, block operations, folding, Unicode support, etc.
  .
  This package contains a version of vim compiled with a GNOME2 GUI
  and support for scripting with Lua, Perl, Python, Ruby, and Tcl.

drwxr-xr-x root/root         0 2016-01-18 16:14 ./
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/bin/
-rwxr-xr-x root/root   2524556 2016-01-18 16:14 ./usr/bin/vim.gnome
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/vim-gnome/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim-gnome/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim-gnome/script
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/doc/vim-gnome -> vim-gui-common
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       144 2016-01-18 16:14 ./usr/share/lintian/overrides/vim-gnome


vim-gtk_7.4.963-1_armhf.deb
───────────────────────────

 new debian package, version 2.0.
 size 1001924 bytes: control archive=2015 bytes.
    1279 bytes,    21 lines      control              
     247 bytes,     4 lines      md5sums              
    2473 bytes,    78 lines   *  postinst             #!/bin/sh
    1220 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim-gtk
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 2477
 Depends: vim-gui-common (= 2:7.4.963-1), vim-common (= 2:7.4.963-1), vim-runtime (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.12.0), libgpm2 (>= 1.20.4), libgtk2.0-0 (>= 2.24.0), libice6 (>= 1:1.0.0), liblua5.2-0, libpango-1.0-0 (>= 1.32.4), libperl5.22 (>= 5.22.1), libpython2.7 (>= 2.7), libruby2.2 (>= 2.2.0~1), libselinux1 (>= 1.32), libsm6, libtcl8.6 (>= 8.6.0), libtinfo5 (>= 6), libx11-6, libxt6
 Suggests: cscope, vim-doc, fonts-dejavu, gnome-icon-theme
 Provides: editor, gvim, vim, vim-lua, vim-perl, vim-python, vim-ruby, vim-tcl
 Section: editors
 Priority: extra
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor - with GTK2 GUI
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  Many new features have been added: multi level undo, syntax
  highlighting, command line history, on-line help, filename
  completion, block operations, folding, Unicode support, etc.
  .
  This package contains a version of vim compiled with a GTK2 GUI
  and support for scripting with Lua, Perl, Python, Ruby, and Tcl.

drwxr-xr-x root/root         0 2016-01-18 16:14 ./
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/bin/
-rwxr-xr-x root/root   2516364 2016-01-18 16:14 ./usr/bin/vim.gtk
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/vim-gtk/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim-gtk/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim-gtk/script
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/doc/vim-gtk -> vim-gui-common
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       140 2016-01-18 16:14 ./usr/share/lintian/overrides/vim-gtk


vim-nox_7.4.963-1_armhf.deb
───────────────────────────

 new debian package, version 2.0.
 size 904408 bytes: control archive=1939 bytes.
    1065 bytes,    21 lines      control              
     247 bytes,     4 lines      md5sums              
    2473 bytes,    78 lines   *  postinst             #!/bin/sh
    1220 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim-nox
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 2204
 Depends: vim-common (= 2:7.4.963-1), vim-runtime (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.4), liblua5.2-0, libperl5.22 (>= 5.22.1), libpython2.7 (>= 2.7), libruby2.2 (>= 2.2.0~1), libselinux1 (>= 1.32), libtcl8.6 (>= 8.6.0), libtinfo5 (>= 6)
 Suggests: cscope, vim-doc
 Provides: editor, vim, vim-lua, vim-perl, vim-python, vim-ruby, vim-tcl
 Section: editors
 Priority: extra
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor - with scripting languages support
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  Many new features have been added: multi level undo, syntax
  highlighting, command line history, on-line help, filename
  completion, block operations, folding, Unicode support, etc.
  .
  This package contains a version of vim compiled with support for
  scripting with Lua, Perl, Python, Ruby, and Tcl but no GUI.

drwxr-xr-x root/root         0 2016-01-18 16:14 ./
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/bin/
-rwxr-xr-x root/root   2236736 2016-01-18 16:14 ./usr/bin/vim.nox
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/vim-nox/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim-nox/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim-nox/script
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/doc/vim-nox -> vim-common
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       140 2016-01-18 16:14 ./usr/share/lintian/overrides/vim-nox


vim-tiny_7.4.963-1_armhf.deb
────────────────────────────

 new debian package, version 2.0.
 size 364116 bytes: control archive=1956 bytes.
      20 bytes,     1 lines      conffiles            
     832 bytes,    21 lines      control              
     453 bytes,     7 lines      md5sums              
    2475 bytes,    78 lines   *  postinst             #!/bin/sh
    1222 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim-tiny
 Source: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 918
 Depends: vim-common (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libselinux1 (>= 1.32), libtinfo5 (>= 6)
 Suggests: indent
 Provides: editor
 Section: editors
 Priority: important
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor - compact version
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  This package contains a minimal version of Vim compiled with no GUI and
  a small subset of features. This package's sole purpose is to provide
  the vi binary for base installations.
  .
  If a vim binary is wanted, try one of the following more featureful
  packages: vim, vim-nox, vim-athena, vim-gtk, or vim-gnome.

drwxr-xr-x root/root         0 2016-01-18 16:15 ./
drwxr-xr-x root/root         0 2016-01-18 16:14 ./etc/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./etc/vim/
-rw-r--r-- root/root       662 2016-01-18 16:14 ./etc/vim/vimrc.tiny
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/bin/
-rwxr-xr-x root/root    907360 2016-01-18 16:15 ./usr/bin/vim.tiny
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/bug/vim-tiny/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim-tiny/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim-tiny/script
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/doc/vim-tiny -> vim-common
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:15 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       142 2016-01-18 16:14 ./usr/share/lintian/overrides/vim-tiny
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/vim/
drwxr-xr-x root/root         0 2016-01-18 16:14 ./usr/share/vim/vim74/
drwxr-xr-x root/root         0 2015-12-10 04:32 ./usr/share/vim/vim74/doc/
-rw-r--r-- root/root       324 2015-12-10 04:32 ./usr/share/vim/vim74/doc/README.Debian
-rw-r--r-- root/root      1432 2015-12-10 04:32 ./usr/share/vim/vim74/doc/help.txt
-rw-r--r-- root/root        30 2015-12-10 04:32 ./usr/share/vim/vim74/doc/tags
lrwxrwxrwx root/root         0 2016-01-18 16:14 ./usr/share/vim/vimrc.tiny -> /etc/vim/vimrc.tiny


vim_7.4.963-1_armhf.deb
───────────────────────

 new debian package, version 2.0.
 size 826862 bytes: control archive=1893 bytes.
     942 bytes,    22 lines      control              
     237 bytes,     4 lines      md5sums              
    2471 bytes,    78 lines   *  postinst             #!/bin/sh
    1218 bytes,    57 lines   *  prerm                #!/bin/sh
 Package: vim
 Version: 2:7.4.963-1
 Architecture: armhf
 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 Installed-Size: 1998
 Depends: vim-common (= 2:7.4.963-1), vim-runtime (= 2:7.4.963-1), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.4), libselinux1 (>= 1.32), libtinfo5 (>= 6)
 Suggests: ctags, vim-doc, vim-scripts
 Provides: editor
 Section: editors
 Priority: optional
 Homepage: http://www.vim.org/
 Description: Vi IMproved - enhanced vi editor
  Vim is an almost compatible version of the UNIX editor Vi.
  .
  Many new features have been added: multi level undo, syntax
  highlighting, command line history, on-line help, filename
  completion, block operations, folding, Unicode support, etc.
  .
  This package contains a version of vim compiled with a rather
  standard set of features.  This package does not provide a GUI
  version of Vim.  See the other vim-* packages if you need more
  (or less).

drwxr-xr-x root/root         0 2016-01-18 16:21 ./
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/bin/
-rwxr-xr-x root/root   2026044 2016-01-18 16:21 ./usr/bin/vim.basic
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/bug/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/bug/vim/
-rw-r--r-- root/root       516 2015-12-10 04:32 ./usr/share/bug/vim/presubj
-rwxr-xr-x root/root       204 2015-12-10 04:32 ./usr/share/bug/vim/script
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-01-18 16:21 ./usr/share/doc/vim -> vim-common
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-01-18 16:21 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       138 2016-01-18 16:20 ./usr/share/lintian/overrides/vim


┌──────────────────────────────────────────────────────────────────────────────┐
│ Post Build                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ Cleanup                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘

Purging /«BUILDDIR»
Not cleaning session: cloned chroot in use

┌──────────────────────────────────────────────────────────────────────────────┐
│ Summary                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘

Build Architecture: armhf
Build-Space: 312772
Build-Time: 2065
Distribution: stretch-staging
Host Architecture: armhf
Install-Time: 1380
Job: vim_2:7.4.963-1
Machine Architecture: armhf
Package: vim
Package-Time: 3499
Source-Version: 2:7.4.963-1
Space: 312772
Status: successful
Version: 2:7.4.963-1
────────────────────────────────────────────────────────────────────────────────
Finished at 20160118-1622
Build needed 00:58:19, 312772k disc space