Karsten Hopp 3bab9d
To: vim_dev@googlegroups.com
Karsten Hopp 3bab9d
Subject: Patch 7.3.1285
Karsten Hopp 3bab9d
Fcc: outbox
Karsten Hopp 3bab9d
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 3bab9d
Mime-Version: 1.0
Karsten Hopp 3bab9d
Content-Type: text/plain; charset=UTF-8
Karsten Hopp 3bab9d
Content-Transfer-Encoding: 8bit
Karsten Hopp 3bab9d
------------
Karsten Hopp 3bab9d
Karsten Hopp 3bab9d
Patch 7.3.1285
Karsten Hopp 3bab9d
Problem:    No tests for picking a window when selecting an entry in a
Karsten Hopp 3bab9d
	    location list.  Not picking the right window sometimes.
Karsten Hopp 3bab9d
Solution:   Add test 96. Set usable_win appropriately. (Lech Lorens)
Karsten Hopp 3bab9d
Files:	    src/quickfix.c, src/testdir/Makefile, src/testdir/test96.in,
Karsten Hopp 3bab9d
	    src/testdir/test96.ok, src/testdir/Make_amiga.mak,
Karsten Hopp 3bab9d
	    src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
Karsten Hopp 3bab9d
	    src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
Karsten Hopp 3bab9d
Karsten Hopp 3bab9d
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/quickfix.c	2013-06-30 13:57:40.000000000 +0200
Karsten Hopp 3bab9d
--- src/quickfix.c	2013-07-01 21:16:44.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 1635,1641 ****
Karsten Hopp 3bab9d
--- 1635,1644 ----
Karsten Hopp 3bab9d
  	    FOR_ALL_WINDOWS(usable_win_ptr)
Karsten Hopp 3bab9d
  		if (usable_win_ptr->w_llist == ll_ref
Karsten Hopp 3bab9d
  			&& usable_win_ptr->w_buffer->b_p_bt[0] != 'q')
Karsten Hopp 3bab9d
+ 		{
Karsten Hopp 3bab9d
+ 		    usable_win = 1;
Karsten Hopp 3bab9d
  		    break;
Karsten Hopp 3bab9d
+ 		}
Karsten Hopp 3bab9d
  	}
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  	if (!usable_win)
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Makefile	2013-05-19 19:16:25.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Makefile	2013-07-01 21:16:44.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 29,35 ****
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS_GUI = test16.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
--- 29,35 ----
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS_GUI = test16.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/test96.in	2013-07-01 21:24:26.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/test96.in	2013-07-01 21:18:43.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 0 ****
Karsten Hopp 3bab9d
--- 1,139 ----
Karsten Hopp 3bab9d
+ This will test for problems in quickfix:
Karsten Hopp 3bab9d
+ A. incorrectly copying location lists which caused the location list to show a
Karsten Hopp 3bab9d
+    different name than the file that was actually being displayed.
Karsten Hopp 3bab9d
+ B. not reusing the window for which the location list window is opened but
Karsten Hopp 3bab9d
+    instead creating new windows.
Karsten Hopp 3bab9d
+ C. make sure that the location list window is not reused instead of the window
Karsten Hopp 3bab9d
+    it belongs to.
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ Note: to debug a problem comment out the last ":b 1" in a test and testing will
Karsten Hopp 3bab9d
+ stop at this point.
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ STARTTEST
Karsten Hopp 3bab9d
+ :so small.vim
Karsten Hopp 3bab9d
+ : enew
Karsten Hopp 3bab9d
+ : w! test.out
Karsten Hopp 3bab9d
+ : b 1
Karsten Hopp 3bab9d
+ : " Set up the test environment:
Karsten Hopp 3bab9d
+ : function! ReadTestProtocol(name)
Karsten Hopp 3bab9d
+ :   let base = substitute(a:name, '\v^test://(.*)%(\.[^.]+)?', '\1', '')
Karsten Hopp 3bab9d
+ :   let word = substitute(base, '\v(.*)\..*', '\1', '')
Karsten Hopp 3bab9d
+ :
Karsten Hopp 3bab9d
+ :   setl modifiable
Karsten Hopp 3bab9d
+ :   setl noreadonly
Karsten Hopp 3bab9d
+ :   setl noswapfile
Karsten Hopp 3bab9d
+ :   setl bufhidden=delete
Karsten Hopp 3bab9d
+ :   %del _
Karsten Hopp 3bab9d
+ :   " For problem 2:
Karsten Hopp 3bab9d
+ :   " 'buftype' has to be set to reproduce the constant opening of new windows
Karsten Hopp 3bab9d
+ :   setl buftype=nofile
Karsten Hopp 3bab9d
+ :
Karsten Hopp 3bab9d
+ :   call setline(1, word)
Karsten Hopp 3bab9d
+ :
Karsten Hopp 3bab9d
+ :   setl nomodified
Karsten Hopp 3bab9d
+ :   setl nomodifiable
Karsten Hopp 3bab9d
+ :   setl readonly
Karsten Hopp 3bab9d
+ :   exe 'doautocmd BufRead ' . substitute(a:name, '\v^test://(.*)', '\1', '')
Karsten Hopp 3bab9d
+ : endfunction
Karsten Hopp 3bab9d
+ : augroup testgroup
Karsten Hopp 3bab9d
+ :   au!
Karsten Hopp 3bab9d
+ :   autocmd BufReadCmd test://* call ReadTestProtocol(expand("<amatch>"))
Karsten Hopp 3bab9d
+ : augroup END
Karsten Hopp 3bab9d
+ : let words = [ "foo", "bar", "baz", "quux", "shmoo", "spam", "eggs" ]
Karsten Hopp 3bab9d
+ :
Karsten Hopp 3bab9d
+ : let qflist = []
Karsten Hopp 3bab9d
+ : for word in words
Karsten Hopp 3bab9d
+ :   call add(qflist, {'filename': 'test://' . word . '.txt', 'text': 'file ' . word . '.txt', })
Karsten Hopp 3bab9d
+ :   " NOTE: problem 1:
Karsten Hopp 3bab9d
+ :   " intentionally not setting 'lnum' so that the quickfix entries are not
Karsten Hopp 3bab9d
+ :   " valid
Karsten Hopp 3bab9d
+ :   call setloclist(0, qflist, ' ')
Karsten Hopp 3bab9d
+ : endfor
Karsten Hopp 3bab9d
+ ENDTEST
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ Test A:
Karsten Hopp 3bab9d
+ STARTTEST
Karsten Hopp 3bab9d
+ :lrewind
Karsten Hopp 3bab9d
+ :enew
Karsten Hopp 3bab9d
+ :lopen
Karsten Hopp 3bab9d
+ :lnext
Karsten Hopp 3bab9d
+ :lnext
Karsten Hopp 3bab9d
+ :lnext
Karsten Hopp 3bab9d
+ :lnext
Karsten Hopp 3bab9d
+ :vert split
Karsten Hopp 3bab9d
+ :wincmd L
Karsten Hopp 3bab9d
+ :lopen
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :lnext
Karsten Hopp 3bab9d
+ :"b 1
Karsten Hopp 3bab9d
+ :let fileName = expand("%")
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :let locationListFileName = substitute(getline(line('.')), '\([^|]*\)|.*', '\1', '')
Karsten Hopp 3bab9d
+ :wincmd n
Karsten Hopp 3bab9d
+ :wincmd K
Karsten Hopp 3bab9d
+ :b test.out
Karsten Hopp 3bab9d
+ :call append(line('$'), "Test A:")
Karsten Hopp 3bab9d
+ :call append(line('$'), "  - file name displayed: " . fileName)
Karsten Hopp 3bab9d
+ :call append(line('$'), "  - quickfix claims that the file name displayed is: " . locationListFileName)
Karsten Hopp 3bab9d
+ :w
Karsten Hopp 3bab9d
+ :wincmd o
Karsten Hopp 3bab9d
+ :b 1
Karsten Hopp 3bab9d
+ ENDTEST
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ Test B:
Karsten Hopp 3bab9d
+ STARTTEST
Karsten Hopp 3bab9d
+ :lrewind
Karsten Hopp 3bab9d
+ :lopen
Karsten Hopp 3bab9d
+ :2
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :3
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :4
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :let numberOfWindowsOpen = winnr('$')
Karsten Hopp 3bab9d
+ :wincmd n
Karsten Hopp 3bab9d
+ :wincmd K
Karsten Hopp 3bab9d
+ :b test.out
Karsten Hopp 3bab9d
+ :call append(line('$'), "Test B:")
Karsten Hopp 3bab9d
+ :call append(line('$'), "  - number of window open: " . numberOfWindowsOpen)
Karsten Hopp 3bab9d
+ :w
Karsten Hopp 3bab9d
+ :wincmd o
Karsten Hopp 3bab9d
+ :b 1
Karsten Hopp 3bab9d
+ ENDTEST
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ Test C:
Karsten Hopp 3bab9d
+ STARTTEST
Karsten Hopp 3bab9d
+ :lrewind
Karsten Hopp 3bab9d
+ :lopen
Karsten Hopp 3bab9d
+ :" Let's move the location list window to the top to check whether it (the first
Karsten Hopp 3bab9d
+ :" window found) will be reused when we try to open new windows:
Karsten Hopp 3bab9d
+ :wincmd K
Karsten Hopp 3bab9d
+ :2
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :3
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :wincmd p
Karsten Hopp 3bab9d
+ :4
Karsten Hopp 3bab9d
+ :exe "normal \<CR>"
Karsten Hopp 3bab9d
+ :1wincmd w
Karsten Hopp 3bab9d
+ :let locationListWindowBufType = &buftype
Karsten Hopp 3bab9d
+ :2wincmd w
Karsten Hopp 3bab9d
+ :let bufferName = expand("%")
Karsten Hopp 3bab9d
+ :wincmd n
Karsten Hopp 3bab9d
+ :wincmd K
Karsten Hopp 3bab9d
+ :b test.out
Karsten Hopp 3bab9d
+ :call append(line('$'), "Test C:")
Karsten Hopp 3bab9d
+ :call append(line('$'), "  - 'buftype' of the location list window: " . locationListWindowBufType)
Karsten Hopp 3bab9d
+ :call append(line('$'), "  - buffer displayed in the 2nd window: " . bufferName)
Karsten Hopp 3bab9d
+ :w
Karsten Hopp 3bab9d
+ :wincmd o
Karsten Hopp 3bab9d
+ :b 1
Karsten Hopp 3bab9d
+ ENDTEST
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ STARTTEST
Karsten Hopp 3bab9d
+ :qa
Karsten Hopp 3bab9d
+ ENDTEST
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/test96.ok	2013-07-01 21:24:26.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/test96.ok	2013-07-01 21:16:44.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 0 ****
Karsten Hopp 3bab9d
--- 1,9 ----
Karsten Hopp 3bab9d
+ 
Karsten Hopp 3bab9d
+ Test A:
Karsten Hopp 3bab9d
+   - file name displayed: test://bar.txt
Karsten Hopp 3bab9d
+   - quickfix claims that the file name displayed is: test://bar.txt
Karsten Hopp 3bab9d
+ Test B:
Karsten Hopp 3bab9d
+   - number of window open: 2
Karsten Hopp 3bab9d
+ Test C:
Karsten Hopp 3bab9d
+   - 'buftype' of the location list window: quickfix
Karsten Hopp 3bab9d
+   - buffer displayed in the 2nd window: test://quux.txt
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Make_amiga.mak	2013-05-19 19:16:25.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Make_amiga.mak	2013-07-01 21:20:38.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 33,39 ****
Karsten Hopp 3bab9d
  		test76.out test77.out test78.out test79.out test80.out \
Karsten Hopp 3bab9d
  		test81.out test82.out test83.out test84.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  .SUFFIXES: .in .out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
--- 33,39 ----
Karsten Hopp 3bab9d
  		test76.out test77.out test78.out test79.out test80.out \
Karsten Hopp 3bab9d
  		test81.out test82.out test83.out test84.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  .SUFFIXES: .in .out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 145,147 ****
Karsten Hopp 3bab9d
--- 145,148 ----
Karsten Hopp 3bab9d
  test93.out: test93.in
Karsten Hopp 3bab9d
  test94.out: test94.in
Karsten Hopp 3bab9d
  test95.out: test95.in
Karsten Hopp 3bab9d
+ test96.out: test96.in
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Make_dos.mak	2013-06-17 21:53:33.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Make_dos.mak	2013-07-01 21:20:47.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 32,38 ****
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS32 =	test50.out test70.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
--- 32,38 ----
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS32 =	test50.out test70.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Make_ming.mak	2013-05-19 19:16:25.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Make_ming.mak	2013-07-01 21:20:52.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 52,58 ****
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS32 =	test50.out test70.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
--- 52,58 ----
Karsten Hopp 3bab9d
  		test79.out test80.out test81.out test82.out test83.out \
Karsten Hopp 3bab9d
  		test84.out test85.out test86.out test87.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  SCRIPTS32 =	test50.out test70.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Make_os2.mak	2013-05-19 19:16:25.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Make_os2.mak	2013-07-01 21:20:58.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 33,39 ****
Karsten Hopp 3bab9d
  		test76.out test77.out test78.out test79.out test80.out \
Karsten Hopp 3bab9d
  		test81.out test82.out test83.out test84.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  .SUFFIXES: .in .out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
--- 33,39 ----
Karsten Hopp 3bab9d
  		test76.out test77.out test78.out test79.out test80.out \
Karsten Hopp 3bab9d
  		test81.out test82.out test83.out test84.out test88.out \
Karsten Hopp 3bab9d
  		test89.out test90.out test91.out test92.out test93.out \
Karsten Hopp 3bab9d
! 		test94.out test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  .SUFFIXES: .in .out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/testdir/Make_vms.mms	2013-05-19 19:16:25.000000000 +0200
Karsten Hopp 3bab9d
--- src/testdir/Make_vms.mms	2013-07-01 21:21:04.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 4,10 ****
Karsten Hopp 3bab9d
  # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
Karsten Hopp 3bab9d
  #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
Karsten Hopp 3bab9d
  #
Karsten Hopp 3bab9d
! # Last change:  2013 May 18
Karsten Hopp 3bab9d
  #
Karsten Hopp 3bab9d
  # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
Karsten Hopp 3bab9d
  # Edit the lines in the Configuration section below to select.
Karsten Hopp 3bab9d
--- 4,10 ----
Karsten Hopp 3bab9d
  # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
Karsten Hopp 3bab9d
  #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
Karsten Hopp 3bab9d
  #
Karsten Hopp 3bab9d
! # Last change:  2013 Jul 01
Karsten Hopp 3bab9d
  #
Karsten Hopp 3bab9d
  # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
Karsten Hopp 3bab9d
  # Edit the lines in the Configuration section below to select.
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 78,84 ****
Karsten Hopp 3bab9d
  	 test77.out test78.out test79.out test80.out test81.out \
Karsten Hopp 3bab9d
  	 test82.out test83.out test84.out test88.out test89.out \
Karsten Hopp 3bab9d
  	 test90.out test91.out test92.out test93.out test94.out \
Karsten Hopp 3bab9d
! 	 test95.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  # Known problems:
Karsten Hopp 3bab9d
  # Test 30: a problem around mac format - unknown reason
Karsten Hopp 3bab9d
--- 78,84 ----
Karsten Hopp 3bab9d
  	 test77.out test78.out test79.out test80.out test81.out \
Karsten Hopp 3bab9d
  	 test82.out test83.out test84.out test88.out test89.out \
Karsten Hopp 3bab9d
  	 test90.out test91.out test92.out test93.out test94.out \
Karsten Hopp 3bab9d
! 	 test95.out test96.out
Karsten Hopp 3bab9d
  
Karsten Hopp 3bab9d
  # Known problems:
Karsten Hopp 3bab9d
  # Test 30: a problem around mac format - unknown reason
Karsten Hopp 3bab9d
*** ../vim-7.3.1284/src/version.c	2013-07-01 21:08:44.000000000 +0200
Karsten Hopp 3bab9d
--- src/version.c	2013-07-01 21:18:12.000000000 +0200
Karsten Hopp 3bab9d
***************
Karsten Hopp 3bab9d
*** 730,731 ****
Karsten Hopp 3bab9d
--- 730,733 ----
Karsten Hopp 3bab9d
  {   /* Add new patch number below this line */
Karsten Hopp 3bab9d
+ /**/
Karsten Hopp 3bab9d
+     1285,
Karsten Hopp 3bab9d
  /**/
Karsten Hopp 3bab9d
Karsten Hopp 3bab9d
-- 
Karsten Hopp 3bab9d
No letters of the alphabet were harmed in the creation of this message.
Karsten Hopp 3bab9d
Karsten Hopp 3bab9d
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 3bab9d
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 3bab9d
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp 3bab9d
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///