# patch by Thomas E. Dickey <dickey@invisible-island.net>
# created  Sun Jun 15 00:40:39 UTC 2008
# ------------------------------------------------------------------------------
# CHANGES                |   20 ++---
# MANIFEST               |    4 -
# README                 |  181 ++++++++++++++++++++++++++++++++++++++++++++++-
# makefile.djg           |    6 +
# makefile.wnt           |    3 
# package/winvile.nsi    |    4 -
# patchlev.h             |    4 -
# revlist                |   22 ++---
# vile-9.7/vile-9.7.spec |  128 +++++++++++++++++++++++++++++++++
# vile.hlp               |    4 -
# vmsbuild.com           |    4 -
# 11 files changed, 344 insertions(+), 36 deletions(-)
# ------------------------------------------------------------------------------
# Please remove the following file before applying this patch.
# (You can feed this patch to 'sh' to do so.)

rm -f vile-9.6.spec
exit

Index: CHANGES
--- vile-9.6o+/CHANGES	2008-06-02 00:46:28.000000000 +0000
+++ vile-9.7/CHANGES	2008-06-14 12:21:39.000000000 +0000
@@ -1,9 +1,9 @@
-Changes for vile 9.7 (released ??? ??? ?? ????)
+Changes for vile 9.7 (released Sat Jun 14 2008)
 
  20080601 (o)
 	> Tom Dickey:
 	+ simplify wvlwrap.exe by disabling globbing temporarily.  This allows
-	  opening files whose names contain square brackets. 
+	  opening files whose names contain square brackets.
 	+ improve checks in SetVarValue() and PromptAndSet() to ensure that a
 	  mode is actually found, and checking whether a '$' prefix is used.
 	+ modify fsm_complete() to lowercase the test-string, making it
@@ -28,14 +28,14 @@
 	  + match keywords containing '!' '?' and '=' depending on the context
 	    (based on my best guesses as to the most common uses, which work
 	    99% of the time - otherwise the entire ruby parser would need to be
-	    integrated to correctly mimic these syntax quirks). 
-	+ remove unmatchable characters from the list of those matched
-	  following $. 
-	+ change the instance variable matching to @@?{KEYWORD} instead of
-	  @+{KEYWORD}. 
-        + matching symbols as literals.                                         
-        + constants (keywords beginning with a capital) are highlighted with    
-          the Type attribute. 
+	    integrated to correctly mimic these syntax quirks).
+	  + remove unmatchable characters from the list of those matched
+	    following $.
+	  + change the instance variable matching to @@?{KEYWORD} instead of
+	    @+{KEYWORD}.
+	  + matching symbols as literals.
+	  + constants (keywords beginning with a capital) are highlighted with
+            the Type attribute.
 	> Tom Dickey:
 	+ modify ruby syntax filter to highlight binary integers (such as
 	  0b10101).
Index: MANIFEST
--- vile-9.6o+/MANIFEST	2008-06-02 00:47:49.000000000 +0000
+++ vile-9.7/MANIFEST	2008-06-15 00:39:19.000000000 +0000
@@ -1,4 +1,4 @@
-MANIFEST for vile, version v9_6o
+MANIFEST for vile, version v9_7
 --------------------------------------------------------------------------------
 MANIFEST                        this file
 CHANGES                         Change-log for VILE
@@ -118,7 +118,7 @@
 ucrypt.c                        interface to Unix crypt(1)
 undo.c                          support for "undo"
 version.c                       version & usage messages
-vile-9.6.spec                   sample RPM spec file for vile 9.6
+vile-9.7.spec                   sample RPM spec file for vile 9.7
 vile.1                          man-page for VILE
 vile.hlp                        help-file
 vile.wmconfig                   windowmaker config file for vile
Index: README
Prereq:  1.100 
--- vile-9.6o+/README	2007-12-28 03:22:22.000000000 +0000
+++ vile-9.7/README	2008-06-14 12:52:39.000000000 +0000
@@ -1,5 +1,5 @@
 
-README for vile, version 9.6
+README for vile, version 9.7
 ----------------------------
 
 vile is a text editor which is extremely compatible with vi in terms
@@ -1553,6 +1553,183 @@
     + add configure check for getc_unlocked(), putc_unlocked() and
       tsearch() to use in performance improvements for syntax filters.
 
+June 2008,
+    vile 9.7 is released.  While the goal for this release is to fix
+    regressions and new bugs since 9.5; there are some new/modified features. 
+    Highlights since 9.6 (aside from build- and bug-fixes):
+
+    General changes:
+
+	+ modify prompt for new mode value to consistently show the mode's full
+	  name.
+
+	+ modify wrapmargin mode to use negative values as a count from the
+	  left of the screen.
+
+	+ modify behavior of ":ww!" to act like ":w!", allowing it to write
+	  all files.
+
+	+ trim trailing blanks from text handled in modelines in case there
+	  was a ^M.
+
+	+ modify treatment of ":setl dos" to behave the same as ":set-dos".
+	  That makes it possible to put a "vile:dos" in a modeline and make
+	  vile convert the line-endings.
+
+	+ flush the standard output before writing version message using the
+	  standard error, in case there was some output pending.
+
+	+ modify curses-driver to avoid a curses-refresh (repainting the
+	  whole screen) between a shell command and the "Press return to
+	  continue" message.
+
+	+ improved scripting, making it simpler to save a boolean mode-value in
+	  a variable and restore it by assignment.
+
+    Locale Improvements:
+
+	+ improve locale initialization, checking if there is no installed
+	  narrow locale corresponding to the given (wide) locale.  In that
+	  case, default to either ISO-8859-1 or ASCII, depending on whether
+	  there was actually a wide locale whose encoding is UTF-8 or
+	  ISO-8859-1, or neither.
+
+	+ force the [Printable Chars] buffer to use file-encoding=8bit,
+	  makes it display consistently legal codes in the second column.
+
+	+ make ISO-8859-1 data display consistently in UTF-8 buffer as "\?xx".
+
+	+ provide workaround for systems without nl_langinfo(CODESET)).
+
+	+ make transpose-characters work for wide-characters.
+
+	+ make "~" (flip-character) and related case-conversion work for
+	  Unicode in 0..255 range.
+
+    New Commands:
+
+	none
+
+    New Modes:
+
+	+ modify mktbls to allow special-case alias for modes which have no
+	  convenient abbreviation.
+
+	+ add "fk" alias for file-encoding mode.
+
+	+ add a "locale" value for file-encoding, use that as the default.
+
+    New Variables and Functions:
+
+	+ add $buf-encoding symbol, to show the actual encoding used by the
+	  current buffer vs the file-encoding which is one of vile's internal
+	  names such as "8bit" or "locale".
+
+    Syntax Filters:
+
+	+ modify parsing of keyword files to accept an empty parameter for
+	  "abbrev" and "brief", to disable the "*" and "?" feature.
+
+	+ remove obsolete lex-filters for perl and ruby (only the C versions
+	  have been supported).
+
+	+ improved lisp filter:
+
+	  + change class color of parentheses to "Action" to make them easier
+	    to distinguish from "String".
+
+	  + color binary, octal and hexadecimal constants, as well as parse
+	    the "#\" patterns.
+
+	+ improved perl syntax filter:
+
+	  + make perlpod sections more readable by highlighting the control
+	    lines.
+
+	  + add double-quote to quote-delimitors.
+
+	  + show interpreted symbols in double-quoted regular expressions.
+
+	  + if "/e" modifier is set for regular expression, show interpreted
+	    symbols for that.
+
+	  + show regular expression modifiers in keyword-attribute, not string
+
+	  + color &foo as a variable.
+
+	  + color both class and member in variables such as $foo::bar
+
+	  + add ".t" to perlmode, using $mode-pathname
+
+	+ improved ruby syntax filter:
+
+	  + match keywords containing '!' '?' and '=' depending on the context.
+
+	  + remove unmatchable characters from the list of those matched
+	    following $. 
+
+	  + change the instance variable matching to @@?{KEYWORD} instead of
+	    @+{KEYWORD}. 
+
+          + highlight constants (keywords beginning with a capital) with    
+            the Type attribute. 
+
+	  + highlight binary integers (such as 0b10101).
+
+	  + disable "*" and "?" abbreviation feature in ruby.key, allowing
+	    match of "defined?", etc.
+
+        Other improvements to filters:
+
+	  + make vile's symbol-tables accessible to vilemode in winvile.
+
+	  + minor improvement to vbmode's fence-if to ignore lines with
+	    continuations.
+
+	  + improve here-document parsing in sh-filt.l to work with "words"
+	    which contain blanks.
+
+    Other improvements to majormodes:
+
+	+ strip redundant "mode" from majormode names, avoiding the potential
+	  for creating foomodemode when the script says
+		  define-majormode foomode
+
+	+ remove ".scm" from c-suffixes pattern.
+
+	+ add schememode.
+
+    X11 changes:
+
+	+ update input-method code, from xterm.
+
+	+ add xvile resource setting "openIm" to control whether it tries to
+	  open input-method.
+
+	+ improved handling of runtime X errors, xvile will attempt to save
+	  buffers.
+
+    Win32 changes:
+
+	+ simplify wvlwrap.exe by disabling globbing temporarily.  This allows
+	  opening files whose names contain square brackets. 
+
+	+ suppress part of wildcard expansion in call to expand_wild_args(),
+	  e.g., for command-line of winvile, since that interferes with
+	  reading files whose names contain square brackets.
+
+    VMS changes:
+
+	none
+
+    Other portability:
+
+	+ improve configure checks for iconv.
+
+    Performance:
+
+	none
+
 -------------------------------
-$Header: /usr/build/vile/vile/RCS/README,v 1.100 2007/12/28 03:22:22 tom Exp $
+$Header: /usr/build/vile/vile/RCS/README,v 1.102 2008/06/14 12:52:39 tom Exp $
 -------------------------------
Index: makefile.djg
Prereq:  1.36 
--- vile-9.6o+/makefile.djg	2007-08-10 21:16:06.000000000 +0000
+++ vile-9.7/makefile.djg	2008-06-14 14:26:39.000000000 +0000
@@ -3,7 +3,7 @@
 #
 # T.DANG (dang@cogit.ign.fr)
 #
-# $Header: /usr/build/vile/vile/RCS/makefile.djg,v 1.36 2007/08/10 21:16:06 tom Exp $
+# $Header: /usr/build/vile/vile/RCS/makefile.djg,v 1.37 2008/06/14 14:26:39 tom Exp $
 #
 #
 
@@ -56,7 +56,9 @@
 	coff2exe vile
 #	-stubedit vile.exe globbing=no
 	zip pcvile.zip readme.pc readme vile.exe vile.hlp 
-	cd macros
+	cd filters
+	zip ..\pcvile.zip *.rc 
+	cd ..\macros
 	zip ..\pcvile.zip *.rc 
 	cd ..
 	zip pcvile.zip \\djgpp\\bin\\go32-v2.exe
Index: makefile.wnt
Prereq:  1.98 
--- vile-9.6o+/makefile.wnt	2007-10-14 21:09:35.000000000 +0000
+++ vile-9.7/makefile.wnt	2008-06-14 14:29:16.000000000 +0000
@@ -1,7 +1,7 @@
 #
 # makefile for vile on WIN32 using Microsoft Visual C++
 #
-# $Header: /usr/build/vile/vile/RCS/makefile.wnt,v 1.98 2007/10/14 21:09:35 tom Exp $
+# $Header: /usr/build/vile/vile/RCS/makefile.wnt,v 1.99 2008/06/14 14:29:16 tom Exp $
 #
 #
 !include <ntwin32.mak>
@@ -356,6 +356,7 @@
 	cd macros
 	zip ..\$(ZIPFILE) *.rc
 	cd ..\filters
+	zip ..\$(ZIPFILE) *.rc
 	$(MAKE) -f makefile.wnt $@ $(MAKE_FLT)
 	cd ..
 
Index: package/winvile.nsi
Prereq:  1.4 
--- vile-9.6o+/package/winvile.nsi	2007-12-28 03:23:28.000000000 +0000
+++ vile-9.7/package/winvile.nsi	2008-06-14 12:07:42.000000000 +0000
@@ -1,9 +1,9 @@
-; $Id: winvile.nsi,v 1.4 2007/12/28 03:23:28 tom Exp $
+; $Id: winvile.nsi,v 1.5 2008/06/14 12:07:42 tom Exp $
 ; Script generated with the Venis Install Wizard
 
 ; Define your application name
 !define APPNAME "WinVile"
-!define APPNAMEANDVERSION "WinVile 9.6"
+!define APPNAMEANDVERSION "WinVile 9.7"
 
 ; Main Install settings
 Name "${APPNAMEANDVERSION}"
Index: patchlev.h
--- vile-9.6o+/patchlev.h	2008-05-26 09:46:44.000000000 +0000
+++ vile-9.7/patchlev.h	2008-06-14 12:08:07.000000000 +0000
@@ -1,3 +1,3 @@
 #define VILE_RELEASE "9"
-#define VILE_VERSION "6"
-#define VILE_PATCHLEVEL "o"
+#define VILE_VERSION "7"
+#define VILE_PATCHLEVEL ""
Index: revlist
--- vile-9.6o+/revlist	2008-06-02 00:47:17.000000000 +0000
+++ vile-9.7/revlist	2008-06-15 00:37:32.000000000 +0000
@@ -1,4 +1,4 @@
-revlist for vile, version v9_6o
+revlist for vile, version v9_7
 --------------------------------------------------------------------------------
 aclocal.m4	1.183
 ansi.c	1.49
@@ -14,7 +14,7 @@
 buffer.c	1.330
 buglist	1.411
 builtflt.c	1.63
-CHANGES	1.1148
+CHANGES	1.1150
 CHANGES.R3	1.1
 CHANGES.R4	1.1
 CHANGES.R5	1.1
@@ -64,10 +64,10 @@
 makeargv.c	1.3
 makeargv.h	1.3
 makefile.blc	1.22
-makefile.djg	1.36
+makefile.djg	1.37
 makefile.icc	1.17
 makefile.in	1.210
-makefile.wnt	1.98
+makefile.wnt	1.99
 MANIFEST	none
 map.c	1.112
 menu.c	1.51
@@ -86,7 +86,7 @@
 os2keys.h	1.2
 os2pipe.c	1.5
 os2vio.c	1.36
-patchlev.h	1.374
+patchlev.h	1.375
 path.c	1.161
 perl.xs	1.110
 plugin.c	1.1
@@ -95,12 +95,12 @@
 pscreen.h	1.2
 ptypemap	1.7
 random.c	1.319
-README	1.100
+README	1.102
 README.PC	1.33
 README.VMS	1.5
 regexp.c	1.139
 region.c	1.149
-revlist	v9_6o
+revlist	v9_7
 search.c	1.146
 select.c	1.167
 sinstall.sh	1.1
@@ -118,15 +118,15 @@
 undo.c	1.96
 version.c	1.65
 vile.1	1.37
-vile-9.6.spec	1.16
-vile.hlp	1.652
+vile-9.7.spec	1.2
+vile.hlp	1.653
 vile.wmconfig	1.1
 vl_alloc.h	1.1
 vl_ctype.h	1.15
 vl_regex.h	1.4
 vl_stdio.h	1.4
 vms2unix.c	1.42
-vmsbuild.com	1.49
+vmsbuild.com	1.50
 vmspipe.c	1.14
 vmsvt.c	1.65
 w32cbrd.c	1.32
@@ -371,7 +371,7 @@
 macros/which.rc	1.15
 macros/XVile.ad	1.1
 package/winvile.iss	1.11
-package/winvile.nsi	1.4
+package/winvile.nsi	1.5
 perl/Breadcrumbs.pm	1.4
 perl/CaptHook.pm	1.1
 perl/capture.pm	1.2
Index: vile-9.7.spec
--- /dev/null	2008-06-15 00:26:41.404576250 +0000
+++ vile-9.7/vile-9.7.spec	2008-06-14 12:11:27.000000000 +0000
@@ -0,0 +1,128 @@
+Summary: VILE VI Like Emacs editor
+# $Header: /usr/build/vile/vile/RCS/vile-9.7.spec,v 1.2 2008/06/14 12:11:27 tom Exp $
+Name: vile
+Version: 9.7
+# each patch should update the version
+Release: 1
+License: GPLv2
+Group: Applications/Editors
+URL: ftp://invisible-island.net/vile
+Source0: vile-9.7.tgz
+# each patch should add itself to this list
+Packager: Thomas Dickey <dickey@invisible-island.net>
+BuildRoot: %{_tmppath}/%{name}-root
+
+%description
+Vile is a text editor which is extremely compatible with vi in terms of
+"finger feel".  In addition, it has extended capabilities in many areas,
+notably multi-file editing and viewing, syntax highlighting, key
+rebinding, and real X window system support.
+
+%prep
+%setup -q -n vile-9.7
+# each patch should add itself to this list
+
+%build
+EXTRA_CFLAGS="$RPM_OPT_FLAGS" INSTALL_PROGRAM='${INSTALL} -s' ./configure --target %{_target_platform} --prefix=%{_prefix} --with-locale --with-builtin-filters --with-screen=x11 --with-xpm
+make xvile
+EXTRA_CFLAGS="$RPM_OPT_FLAGS" INSTALL_PROGRAM='${INSTALL} -s' ./configure --target %{_target_platform} --prefix=%{_prefix} --with-locale --with-builtin-filters --with-screen=ncurses --mandir=%{_mandir}
+touch x11.o menu.o
+make
+touch xvile
+
+%install
+[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+make install prefix=$RPM_BUILD_ROOT/%{_prefix}
+make TARGET=xvile install-xvile prefix=$RPM_BUILD_ROOT/%{_prefix}/X11R6
+
+strip $RPM_BUILD_ROOT/%{_prefix}/X11R6/bin/xvile
+strip $RPM_BUILD_ROOT/%{_bindir}/vile
+strip $RPM_BUILD_ROOT/%{_libdir}/vile/vile-*filt
+
+./mkdirs.sh $RPM_BUILD_ROOT/%{_prefix}/X11R6/man/man1  
+install -m 644 vile.1 $RPM_BUILD_ROOT/%{_prefix}/X11R6/man/man1/xvile.1  
+./mkdirs.sh $RPM_BUILD_ROOT/%{_mandir}/man1  
+install -m 644 vile.1 $RPM_BUILD_ROOT/%{_mandir}/man1/vile.1  
+
+./mkdirs.sh $RPM_BUILD_ROOT/%{_sysconfdir}/X11/wmconfig  
+install vile.wmconfig $RPM_BUILD_ROOT/%{_sysconfdir}/X11/wmconfig/vile  
+install xvile.wmconfig $RPM_BUILD_ROOT/%{_sysconfdir}/X11/wmconfig/xvile  
+  
+%clean
+[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root)
+%doc CHANGES*
+%doc COPYING INSTALL MANIFEST README*
+%doc doc/*
+%doc macros
+%config(missingok) %{_sysconfdir}/X11/wmconfig/vile
+%config(missingok) %{_sysconfdir}/X11/wmconfig/xvile
+%{_prefix}/X11R6/bin/xvile
+%{_prefix}/X11R6/bin/vile-pager
+%{_prefix}/X11R6/man/man1/xvile.*
+%{_prefix}/X11R6/share/vile
+%{_bindir}/vile
+%{_bindir}/vile-pager
+%{_mandir}/man1/vile.*
+%{_datadir}/vile/
+%{_libdir}/vile/
+
+%changelog
+# each patch should add its ChangeLog entries here
+
+* Sat Jun 14 2008 Thomas Dickey
+- release 9.7
+
+* Mon May 26 2008 Thomas Dickey
+- added patch for 9.6o
+
+* Sun May 25 2008 Thomas Dickey
+- added patch for 9.6n
+
+* Sun Apr 27 2008 Thomas Dickey
+- added patch for 9.6m
+
+* Mon Apr 14 2008 Thomas Dickey
+- added patch for 9.6l
+
+* Wed Mar 26 2008 Thomas Dickey
+- added patch for 9.6k
+
+* Wed Mar 19 2008 Thomas Dickey
+- added patch for 9.6j
+
+* Wed Mar 12 2008 Thomas Dickey
+- added patch for 9.6i
+
+* Wed Mar 05 2008 Thomas Dickey
+- added patch for 9.6h
+
+* Fri Feb 22 2008 Thomas Dickey
+- added patch for 9.6g
+
+* Sat Feb 09 2008 Thomas Dickey
+- added patch for 9.6f
+
+* Mon Feb 04 2008 Thomas Dickey
+- added patch for 9.6e
+
+* Sat Jan 12 2008 Thomas Dickey
+- added patch for 9.6d
+
+* Sat Jan 12 2008 Thomas Dickey
+- added patch for 9.6c
+
+* Sun Jan 06 2008 Thomas Dickey
+- added patch for 9.6b
+
+* Mon Dec 31 2007 Thomas Dickey
+- added patch for 9.6a
+
+* Tue Dec 27 2007 Thomas Dickey
+- 9.6 release
+
+* Tue Dec 25 2007 Thomas Dickey
+- added patch for 9.6
+
Index: vile.hlp
Prereq:  1.652 
--- vile-9.6o+/vile.hlp	2008-05-26 14:50:03.000000000 +0000
+++ vile-9.7/vile.hlp	2008-06-14 12:07:27.000000000 +0000
@@ -1,5 +1,5 @@
 
-Getting along with vile						(version 9.6)
+Getting along with vile						(version 9.7)
 -----------------------						-------------
 
 	Use Ctrl-D and Ctrl-U to scroll through this help information.
@@ -6459,4 +6459,4 @@
 
 Copyright 1995-2007,2008 by Paul Fox, Thomas Dickey, and Kevin Buettner
 --------------------------------------------------------------------
- $Header: /usr/build/vile/vile/RCS/vile.hlp,v 1.652 2008/05/26 14:50:03 tom Exp $
+ $Header: /usr/build/vile/vile/RCS/vile.hlp,v 1.653 2008/06/14 12:07:27 tom Exp $
Index: vmsbuild.com
Prereq:  1.49 
--- vile-9.6o+/vmsbuild.com	2007-12-27 16:47:23.000000000 +0000
+++ vile-9.7/vmsbuild.com	2008-06-14 12:07:33.000000000 +0000
@@ -1,4 +1,4 @@
-$! $Header: /usr/build/vile/vile/RCS/vmsbuild.com,v 1.49 2007/12/27 16:47:23 tom Exp $
+$! $Header: /usr/build/vile/vile/RCS/vmsbuild.com,v 1.50 2008/06/14 12:07:33 tom Exp $
 $! VMS build-script for vile.  Requires installed C compiler
 $!
 $! Screen Configurations
@@ -58,7 +58,7 @@
 $!      Build the option-file
 $!
 $ open/write optf vms_link.opt
-$ write optf "Identification=""Vile 9.6"""
+$ write optf "Identification=""Vile 9.7"""
 $ write optf "basic.obj"
 $ write optf "bind.obj"
 $ write optf "blist.obj"
