Subject: CVS commit: pkgsrc/editors/vile
From: Thomas Klausner
Date: 2019-02-15 20:50:27
Message id: 20190215195027.A0D37FB16@cvs.NetBSD.org

Log Message:
vile: update to 9.8t.

Provided by Thomas Dickey in private email.

 20181112 (t)
	> Adam Denton:
	+ fix a typo in tcap.h (Savannah #52872).
	> Jeff Morriss:
	+ use strncpy() rather than memcpy() for copying hashed key from
	  crypt(), to work with Fedora 28 which does not necessarily use a
	  fixed-size buffer.
	> Wayne Cuddy:
	+ modify x11.c to avoid clearing the window manager flags that control
	  focus behavior, to work with ctwm.
	> Tom Dickey:
	+ add WinVile64 package script for Inno Setup.
	+ show "win64" for $os symbol if built for 64-bit Windows.
	+ add ifdef in winvile.iss to accommodate changes with Inno Setup 5.6.1
	+ use GetModuleFileNameEx() in preference to looking for winvile's
	  registry keys or the PATH when finding the executable path for
	  the "-Or" option.
	+ improve coloring of "\f" font markers in the nroff filter.
	+ fix a mis-setting in api.c from 9.8q cleanup.
	+ document winvile registry settings in the help-file.
	+ create symbolic links for the utility program's manual pages, point
	  to the base manpage.
	+ document the utility programs and scripts which normally are packaged
	  in the manual page.
	+ if $VILE_LIBDIR_PATH is set, prefer that in vile-libdir-path
	+ corrected glob expression for vile-libdir-path
	+ several fixes using Visual Studio 2017 code analysis, including
	  + w32cmd.c, correct if-statement for IsDialogMessage call
	  + w32misc.c, correct size of allocation for buffer
	  + ensure no leak on failed realloc
	  + modify casts to avoid truncation
	  Some parts of the analysis are false positives; it appears to have
	  problems in the flow analysis for reporting uninitialized values and
	  dereferencing null pointers.  In particular, it does not understand
	  the idiom for reallocating an array of types.
	+ build-fix for Visual Studio 2012 and later: the "FILE" struct is
	  opaque.
	+ use registry value for PaddedBorderWidth in winvile to account for
	  misleading results from GetSystemMetrics introduced by Vista.
	+ modify makefile.wnt to allow build with Visual Studio 2012 and later,
	  which omit the Win32.mak file.
	+ fix a couple of unescaped "?" in suffixes for majormodes, e.g., in
	  mvmnmode.
	+ add vcproj and vcxproj majormodes.
	+ add a "report" target in makefile.wnt to show the symbols used in
	  a build to help troubleshoot upgrades to newer Visual Studio.  For
	  instance, it is possible to build using Visual Studio Express 2012
	  with Windows SDK 7.1 by setting APPVER to "5.01".
	+ reorder a comparison in regmatch() to avoid indexing past limits in
	  some cases of multibyte characters.
	+ add a check in set_vattrs() to ensure loop limit is greater than zero
	  to handle a boundary case with double-width characters.
	+ fix or work around gcc8 warnings.
	+ improve initialization of hashed-key for crypt() using memset() on
	  the buffers rather than assuming the hash is the documented length.
	  Even with this, valgrind warns about buffer mismanagement within
	  libcrypt.so.
	+ check for _nc_free_tinfo() for leak-checking with ncurses' tinfo
	  library.
	+ modify perl/ruby filters to ensure the in-memory file ends with nul.
	+ add filters for yaml, rust-modes to develop for a tutorial.
	+ improve iss-filt.l, handling named constants such as {app}.
	+ update iss.key, e.g., setup-directives and runtime functions.
	+ compiler-warning fixes for gcc 7.2.1 with SuSE.
	+ regenerate doc/*.doc from Debian 7 to Debian 8; the table-width
	  changed from links 2.7 to 2.8
	+ add dummy "]]" in sh-filt.l to work around breakage with flex 2.6.1,
	  which insists on preprocessing C source using m4.
	+ modify character class assumed for tags, to check for graphic
	  characters.  Previously that used qident (cf: 9.7g), which did not
	  allow for dots in filenames which could be present in a ctags file if
	  it were generated using "ctags --extra=+f *" (Savannah #51774).
	+ update ftp site url
	+ improved configure macros:
	  CF_ADD_CFLAGS, CF_ADD_INCDIR, CF_BUILD_CC, CF_CC_ENV_FLAGS,
	  CF_CURSES_CPPFLAGS, CF_CURSES_FUNCS, CF_CURSES_LIBS, CF_FIND_LINKAGE,
	  CF_GCC_WARNINGS, CF_GNU_SOURCE, CF_LARGEFILE, CF_MAKEFLAGS,
	  CF_MKSTEMP, CF_NCURSES_CONFIG, CF_NCURSES_VERSION, CF_POSIX_C_SOURCE,
	  CF_PROG_EXT, CF_PROG_GROFF, CF_SIZECHANGE, CF_STRUCT_TERMIOS,
	  CF_TRY_XOPEN_SOURCE, CF_WITH_ICON_THEME, CF_WITH_MAN2HTML,
	  CF_XOPEN_CURSES, CF_XOPEN_SOURCE, CF_X_ATHENA_CPPFLAGS
	+ modify ti-filt.l to allow hexadecimal, as per X/Open Curses
	  documentation.  This is different from termcap, which (like terminfo)
	  supports octal and decimal numbers.
	+ build-fixes for Visual Studio 2015
	+ build-fixes to allow test-compile with ActiveState Perl 5.24.1, which
	  does not work with winvile because its DLL does not provide
	  COM entrypoints, e.g., CoTaskMemFree and CoRegisterClassObject
	+ update config.guess, config.sub

 20161217 (s)
	> Brendan O'Dea:
	+ add command-line parsing for "--" token, assumed by visudo in the
	  1.8.12 - 1.8.16 changes (report by Wayne Cuddy).
	> Tom Dickey:
	+ recompute majormode order when "after", "before" or \ 
"qualifiers" is
	  modified for a majormode.
	+ add yamlmode (discussion with Steve Lembark)
	+ modify DSTRING definition in lex-filter to handle continuation lines.
	+ modify cfgmode to reduce false-matches with random ".cfg" files.
	+ improve ps syntax filter
	  + interpret %%BeginData / %%EndData keywords
	  + interpret %%BeginPreview / %%EndPreview keywords
	+ add ".mcrl2" as suffix for mcrlmode.
	+ fixes from test-script: conf, hs, nr, rc, rcs, txt, xq, xml
	+ improved regression test-script to check for places where the syntax
	  filter might have mixed buffered- and unbuffered-calls in the same
	  state, causing tokens in the markup to "move".
	+ remove a statement from flt_putc in the standalone filters that
	  converted a bare ^A to ^A?.
	+ remove escaping from digraphs.rc, since change in 9.7zg made that
	  both unnecessary and incorrect (reports by Marc Simpson, Brendan
	  O'Dea).
	+ improve tcl syntax filter
	  + color backslash-escapes in double-quotes.
	  + add rules to handle regexp and regsub regular expressions.  This
	    does not yet handle -regexp switch cases.
	  + add call to flt_bfr_error to flag unbalanced quotes here and in
	    a few other filters.
	  + modify newline patterns to allow for cr/lf endings in continuations
	  + add special case for literals like "{\1}" and "{\\1}".
	  + add special case for html entities such as "{{}" and \ 
"{&foo;}"
	+ improve sh syntax filter
	  + allow quoted strings within '${' parameter, a detail that can
	    happen with ksh brace groups (report by j.  van den hoff).
	  + handle ksh's "ANSI C quotes", i.e., "$'xxx'" using \ 
single quotes
	    after a dollar sign.
	  + use the ksh ("-K") option for bashmode and zshmode syntax.
	  + interpret "$name" within '${' parameter
	  + don't warn for inline-here documents
	  + handle special case where matching tag for a here-document is on
	    the same line as a closing ")" in $(xxx) command.
	  + highlight ksh's "[[", "((", "$((" bracketing \ 
like "{".
	  + handle ksh's "((" and "$((" arithmetic expressions.
	  + handle ksh's base#value numbers
	+ improve perl syntax highlighter:
	  + fix state used to guess where a pattern might occur, e.g., after
	    an "if" keyword with no preceding operator to account for line
	    breaks.
	  + correct a check for illegal numbers, which flagged hexadecimal
	    numbers containing "e".
	  + distinguish special case of "format =" vs "format =>".
	  + allow pod to begin without a preceding blank line, but warn.
	  + allow for case where pod mode is turned on/off with only one blank
	    line between the directives.
	  + check for simple patterns that may follow operators such as "map".
	  + allow '$', '+' or '&' as a quote or substitution delimiter
	  + allow angle brackets for quotes after 'q', etc.
	  + fix highlighting when square-brackets are used as delimiters in a
	    perl substitution, e.g., s[foo[bar]xxx][yyy]
	+ quiet some unnecessary compiler warnings with glibc > 2.20 by adding
	  _DEFAULT_SOURCE as needed.
	+ improve version-comparison for "new" flex to allow for 2.6.0, and
	  accept that for built-in filters.  Also modify filters/mk-2nd.awk
	  to work with "new" flex ifdef's to ignore yywrap (Debian #832973).
	+ correct long-name for filename-ic mode (report Marc Simpson).

 20160727 (r)
	> Marc Simpson:
	+ correct a typo in skipblanksb() which caused up-paragraph "{{" to
	  get stuck (Savannah #47211).
	> Tom Dickey:
	+ fix an off-by-one in argument list for wvwrap vs winvile that broke
	  edit-with operation from file explorer.
	+ correct expression for QIDENT in rpm-filt.l, sh-filt.l, which could
	  match multiple tokens rather than a single one and interfere with
	  states for here-document.
	+ use CF_PROG_LINT, which checks for cppcheck.  Alternatively, this
	  works, though the "$(LIBS)" used in the lint-rule has to be removed:
		export LINT=cppcheck
		export LINT_OPTS="--enable=all"
	+ add error-patterns for cppcheck.
	+ updates for configure macros
	+ CF_CC_ENV_FLAGS - don't limit the check to -I, -U and -D options,
	  since the added options can include various compiler options before
	  and after preprocessor options.
	+ CF_FUNC_DLSYM add braces around calls to CF_ADD_LIB which follow a
	  test "&&" operator since the macro uses multiple statements
	+ CF_LD_RPATH_OPT change FreeBSD to use -Wl,-rpath rather than -rpath
	  option.  According to FreeBSD #178732, either works since FreeBSD
	  4.x; however scons does not accept anything except the -Wl,-rpath
	  form.
	+ CF_LIB_PREFIX build-fixes for OS/2
	+ CF_WITH_MAN2HTML use configured shell
	+ CF_XOPEN_CURSES improve check, making it define NCURSES_WIDECHAR if
	  we happen to be building on a platform (such as OSX) where we do not
	  define _XOPEN_SOURCE or _XOPEN_SOURCE_EXTENDED
	+ CF_XOPEN_SOURCE build-fixes for OS/2
	+ modify configuration so that "--no-leaks" does not imply
	  "--with-trace", since that is not necessary when using valgrind.
	+ add null-pointer checks in vile-manfilt for some unusual erasures.
	+ promote $filename-ic to a global mode, using this to allow users to
	  do filename-completion on any system ignoring the case of filenames
	  (discussion on vile mailing list started by Marc Simpson).
	+ modify noautobuffer mode to update the "last" buffer when the user
	  jumps around, e.g., using ":e" or the "historical-buffer" \ 
toggle
	  (discussion on vile mailing list started by Hymie).
	+ add examples for which-exec and which-source to vile.hlp to show
	  what the popup-buffer might look like when a numeric parameter
	  precedes these commands.
	+ modify parsing of VILE_STARTUP_PATH to accept colon-separated list
	  (report by Chris Green).
	+ improve formatting of vile.hlp (report by Paul Fox).
	+ add mode "keep-position" to allow changing the behavior after
	  applying a command to a range, to better match the nvi (BSD) and
	  vi (Solaris) flavors (prompted by report by Marc Simpson).
	+ reset "$_" before executing each top-level command (report by Marc
	  Simpson).
	+ improve workarounds for building with "new" flex, in particular the
	  change of return-type for yyget_leng() (report by Martin Ward).
	+ make special case when locating the copy of vile which was run, to
	  not warn and skip because it was found in a group-writable
	  directory (discussion with Steve Lembark).
	+ update config.guess, config.sub

 20150907 (q)
	> Brendan O'Dea:
	+ corrected initialization for Vileserv in vileperl.rc (report by
	  Chris Green).
	> Tom Dickey:
	+ add command-line options -u and -U to set $system-crlf variable
	  before the "unnamed" buffer is initialized.
	+ add $system-crlf to allow override of compiled-in default for "dos"
	  mode so that winvile can be told to create the "unnamed" buffer with
	  linefeed endings (Savannah #44773).
	+ add variable $system-name to show the name used in version message
	+ add checks after write-hook is run in case the script set $return to
	  anything except true or sortoftrue, or if the script set the buffer
	  to "view".  In either case, do not proceed to write the buffer
	  (report by Matthew White).
	+ modify prompts for register name to support name-completion, and
	  recognize "register" as a typed macro-parameter (prompted by
	  discussion with Wayne Cuddy).
	+ modify configure macros to use the configured shell rather than just
	  /bin/sh, to accommodate deprecation of non-POSIX shells such as that
	  used in Solaris.
	+ add configure option --with-man2html, use in generating vile-man.html
	+ modify wvwrap to ensure that it does not pass options to winvile
	  as filenames (Savannah #44774).
	+ update autoconf macros from ongoing work in lynx, ncurses and xterm
	  for testing ncurses6.
	+ fix special case of ^G toggling in minibuffer versus '\' escaping
	  (report by Wayne Cuddy).
	+ cleanup logic which sets DOT.o to the beginning of a line, to
	  ensure that the left-margin is used rather than just the first
	  position on a line.
	+ changes in 9.8p for global substitutions with "^" exposed at least
	  one place, e.g., in oneliner.c where DOT was moved to the next line
	  without ensuring that its offset was reset.  Review and amend several
	  other occurrences where DOT moves to next or previous line (report by
	  Jan Wells).

 20150201 (p)
	> from https://github.com/ricksladkey/vile (Rick Sladkey):
	  + check in ntconio.c if running in ConEmu, e.g., ConEmuPID variable
	    is set, and if so, allow its bold/italic extensions.
	  + modify ntconio.c to honor Unicode keyboard input.
	  + amend GetCurrentDirectory() buffer size for Unicode.
	> Tom Dickey:
	+ add configure check for stricmp, omitted from recent Cygwin.
	+ partial fix for recalling from history this command:
		'a,.s/$/;/
	  With the fix, one can edit the previous command, and issue minor
	  variations.
	+ improve suffix rules for mvn mode by allowing a version number in
	  the filename.
	+ improve ant, mvn modes to highlight user-defined tags, e.g., within
	  "${" and "}".
	+ update mvnmode keywords to maven 3.2.5
	+ modify vile-xml-filt to color property names according to the new
	  "xmlprops" table.
	+ update antmode keywords to ant 1.9.4, including a representative set
	  of property names.  The updated table also attempts to distinguish
	  between tasks and subtasks.
	+ add the more useful types/macros from c99 headers to c.key
	+ repaint all windows on an "unnamed" buffer if told to reread and
	  discard changes (report by Hymie on mailing list).
	+ modify logic used in global substitutions to ensure that "^" for
	  beginning of the line is matched only once (report by Wayne Cuddy).
	+ fix a few build problems with --disable-extensions
	+ modify configure macro CF_WITH_APP_DEFAULTS to check OSX-related
	  pathnames for MacPorts and Apple's variant.
	+ improve configure macro CF_SUBDIR_PATH, changing it to a loop, adding
	  /usr/pkg (NetBSD) and /opt/local (Mac OSX)
	+ update yacc.key for current byacc keywords.
	+ modify yaccfilt.l to handle escaped newlines in quoted strings.
	+ build-fix for xvile without multibyte support.
	+ add error patterns for bison and byacc.
	+ correct workaround in manfilt.c for bullet characters from 9.8g;
	  they were lost when using UTF-8 encoding.
	+ improve tcl-filt.l handling of single character between curly braces,
	  showing that as string-attribute.
	+ modify tcl-filt.l to handle square brackets quoted by curly braces
	  (report by Wayne Cuddy).

 20141002 (o)
	> Tom Dickey:
	+ fix some leaks, etc., reported by valgrind and Coverity.
	+ correct filtername setting for issmode, which used ini-filter.
	+ add ":" and "#" to ini-filter as aliases for \ 
"=" and ";"
	+ add desktop-mode, using ini-filter.
	+ revise ldel_chars() function to restore feature of backspacelimit
	  to delete newlines while backspacing.  This was lost in 9.5s changes
	  (Savannah #43291).
	+ add case to CF_XOPEN_SOURCE for Unixware, from lynx.
	+ modify configure script to define _NETBSD_SOURCE for Minix, because
	  its header files put the POSIX.1-2001 prototypes, such as isblank,
	  there.
	+ add vile-to-html, vile-libdir-path to uninstall rule
	+ modify configure script to supply default "-o" option for the install
	  program, since MINIX's does not provide a useful default.
	+ other tweaks to work around deficiencies in Ash's parser, e.g., not
	  counting tokens until after dequoting.
	+ modify configure script to avoid using "expr", fixing problem using
	  this with MINIX3.2, which uses Ash - a shell which omits the "<",
	  "<=", etc., comparison operators which POSIX specifies for \ 
"expr".
	+ CF_ADD_LIBS workaround in CF_X_TOOLKIT uses pkgconfig, whose files
	  generally are using incomplete dependencies - in turn introducing
	  lots of duplication.  filter out the duplicates.
	+ CF_CURSES_FUNCS improve workaround for weak-linkage, seems to fix
	  tests with NetBSD 6.1
	+ CF_X_ATHENA add --with-Xaw3dxft option
	+ CF_X_TOOLKIT add workaround for breakage in XQuartz upgrades
	+ update config.sub

 20140706 (n)
	> Brendan O'Dea:
	+ use INT2PTR and PTR2IV macros rather than an explicit cast in perl.xs
	  and ptypemap.
	> Tom Dickey:
	+ improve description of search-list for syntax filter keywords in
	  vile.hlp; add links/anchors to improve navigation in vile-hlp.html,
	  config.html and macros.html
	+ modify error-pattern to work with the GNU make 4.0 change to
	  quotes
	+ modify makemode mode-filename pattern to match BSDMakefile and
	  GNUMakefile
	+ add vile-to-html, vile-libdir-path
	+ modify manfilt.c to recognize aixterm-style SGR 90-97 as colors 8-15.
	+ correct off-by-one count in decoding "meta" markup from 9.8l changes
	  which did not work with external filters.
	+ add note in config.doc recommending ncursesw for screen option over
	  curses/ncurses, for UTF-8 support.
	+ modify DisableHook/EnableHook to let their return-value be usable as
	  the latch condition.
	+ if configure check for gcc -rdynamic option fails, fallback to the
	  built-in filter configuration.
	+ suppress -rdynamic option-check for clang, because its error
	  reporting is unreliable.
	+ correct logic in nextbuffer() when autobuffer mode is unset.  Similar
	  fix for prevbuffer() (report by Hymie on mailing list).
	+ modify test for stuttering in vile_op(), to check if a count precedes
	  the final letter in a command.  With this change,
	  	^All
	  stutters as before, making the command in terms of lines.  However
	  	^Al5l
	  will act on the next 5 characters.  Note that
	  	^Al1l
	  will act on a single character (Savannah #42147).
	+ fix a double-free in bclear(), when the buffer is marked noundoable
	  (report by Paul Fox).
	+ update config.guess, config.sub

 20140330 (m)
	> Kevin Buettner:
	+ add missing "break" in DATA() macro in x11.c from 9.8j changes.
	> Tom Dickey:
	+ fix configure check if curses.h is needed, by suppressing external
	  reference to vl_strncpy.
	+ build-fix for --disable-extensions by providing dummy set_tagsmode()
	+ modify [ShowFormatted] to also handle logmode the same as
	  typescript files
	+ modify makefile.wnt to show version-details in wvwrap.exe
	+ minor fix to make-hlp.pl, to complete underlining of project
	  hierarchy section of vile.hlp
	+ clarify in vile.hlp how to suppress "press any key to continue"
	  message in winvile when running external shell-commands.
	+ build-fix when configuring --with-external-filters when only flex
	  2.5.35 / 2.5.37 is available (report by Kevin Buettner).
	+ fix crash in winvile in "select-all" command (Savannah #41943).
	+ update gnreight.h from Debian/testing libc6 2.17-97
	+ update xvile.desktop with improvements from Fedora package.

 20140131 (l)
	> Derek Woolverton:
	+ add new keywords for C++11
	> Rick Sladkey:
	+ change initialization in ntconio.c to improve use with ConEmu, e.g.,
	  when the window is resized.
	> Tom Dickey:
	+ add version details to win32 executables.
	+ improve rpm spec-file filter:
	  + add checks for "%" markers in unexpected places, e.g., in comments.
	  + change %package to not begin quoted text; it should be a one-liner
	+ modify ^X-n to filter typescript files like vile-pager.
	+ fill in pod descriptions for undocumented perl modules.
	+ additional change for Savannah #37988 to update screen when removing
	  a newline which was inserted initially by the "o" command.
	+ modify mode-pathname for makemode to work with arbitrary level of
	  directory; it assumed something like "/usr/lib/pkgconfig".
	+ minor fix to tcap.c to restore colors after completing a loop which
	  turns off attributes.  The directory.pm script caused the driver to
	  reset reverse-video and bold, but the driver was restoring colors
	  only after the first reset.
	+ minor fixes for perl modules:
	  + correct off-by-one position of highlighting for spell.pm
	  + modify spell.pm to remember the last replacement made for a given
	    word and offer that as the first choice on followup changes.
	  + modify dirlist.pm to reposition the window on completion so that
	    the last lines written to the buffer will always be visible.
	  + modify hgrep.pm to set $search so that for instance, visual-matches
	    works.
	+ modify perl modules to use strict feature.
	+ add ".pp" to pasmode / Pascal and ".shtml" to htmlmode \ 
(suggested by
	  Radek Liboska).
	+ add requires/provides for Perl modules in vile.spec (suggested by
	  Radek Liboska).
	+ correct a sign-extension bug in column_sizes(), which caused
	  incorrect cursor-movement for some 8-bit encodings (report by Radek
	  Liboska).
	+ add still more keywords for C++11
	+ fix for 9.8j change to manfilt.c; reset the overstrike link to null
	  in erase_cell(), to avoid freeing memory twice.
	+ modify internal links of html documentation to fix linklint warnings
	+ fix most issues reported by rpmlint for package/vile.spec:
	  + add configure option "--disable-stripping"
	  + strip executables during install by adding "-s" normally
	  + make the wmconfig files non-executable
	  + update FSF address in several files
	+ modify -F option to ensure that output uses \n consistently for the
	  line-separator verus \r\n.
	+ minor fix to sh-filt.l's stripping of leading blanks in a here-
	  document.
	+ updated ftp-mirror to http://invisible-mirror.net/archives/vile
	+ add a new attribute markup, "M" for "meta" which is \ 
ignored by vile.
	  Modified filters to emit their command-line using this markup so
	  that applications can determine which filter was invoked when the -F
	  option is used to provided marked-up files.
	+ build-fixes to allow "new" flex 2.5.35 to be used to build the
	  various filter configurations, noting that the recommended
	  tool is still "reflex" (report by Joran Ahlback).
	+ add convile.nsi and minvile.nsi scripts to use for creating
	  installers from convile and minvile via cross-compiling.  NSIS is far
	  less capable than Inno Setup, so the latter still gives the
	  recommended packages.
	+ move ignoresuffix setting from cmode to global settings, i.e., to
	  use for other filetypes.
	+ modify tags logic to set "tagsmode" if it is defined, and assuming
	  that, to test the local check-modtime value, i.e., that managed via
	  the majormode to allow tags files to be selectively reloaded when
	  their content changes (discussion with Wayne Cuddy).
	+ modify sh-filt.l to recognize ksh93/bash here-strings, noting that
	  they are not standardized.
	+ review/improve tcl syntax highlighter (report by Wayne Cuddy):
	  + do not treat single-quote specially
	  + allow newlines in double-quotes
	  + recognize square brackets in double-quotes to denote nested
	    commands.
	  + fix ambiguity between "-option" and "-number".
	  + show sprintf-codes with string color.
	  + highlight "#" prefixing hexadecimal digits as a number.
	  + do not color args for unknown verbs.
	  + update keywords to tcl/tk 8.6.0
	+ add ".nsh" suffix to nsis mode.
	+ fix for "-F" option when filtered file has no syntax highlighting;
	  the MK variable was not set, causing getregion() to fail.
	+ update config.guess, config.sub

 20130707 (k)
	> Brendan O'Dea:
	+ correct a couple of places in api.c which used characters rather
	  than bytes, which made
		:%perldo s/^/X/
	  do the wrong thing for UTF-8 encoding.
	+ change perl.xs to use bullets in a few cases to work with newer
	  Perl's POD parser.  Also add a "back" tag (Debian #708027).
	+ improve configure script for perl by locating xsubpp by the same
	  process as the module is loaded, e.g., using @INC (prompted by
	  discussion of Gentoo #380741).
	> Tom Dickey:
	+ add "&regex-escape" function to allow a literal string to be \ 
assigned
	  to "$search" without confusion (discussion with Wayne Cuddy).
	+ add ".tmac" suffix to nrmode
	+ modify ins_anytime() to request a screen update on completion so that
	  temporary changes to the screen such as empty lines for the "o"
	  command will be undone if needed (Savannah #37988).
	+ add powershell mode
	+ convert non-generated html documentation to HTML4-strict; change
	  font-coloring to use css.
	+ amend change for Savannah #37806 to exclude buffers where the file
	  encoding is 8bit, fixing a mispositioning of the cursor, e.g., for
	  ISO-8859-2 encoding (report by Radek Liboska).
	+ add json mode

 20130414 (j)
	> Brendan O'Dea:
	+ correct warnings from pod2text
	> Tom Dickey:
	+ add configure options --enable-freetype and --enable-fontsets, to
	  support proposed refactoring of x11.c
	+ modify manfilt.c to interpret ANSI erase-line, insert/delete
	  character and inline cursor-movement controls.
	+ modify manfilt.c to improve parsing of SGR sequences, allowing for
	  expansion to simple cursor movement as would be used in line-editing
	  for bash and tcsh (prompted by discussion with Joel Winteregg).
	+ improve/fix ruby syntax highlighter:
	  + add missing logic needed to make binary numbers parse
	  + track curly-brace level in var_embedded().
	  + improve parsing/highlighting of %r{pattern}
	  + handle special token :`
	  + stop highlighting after __END__
	  + interpret extended mode for regular expressions, showing comments
	    in different color.
	  + corrected logic for here-document delimiter when it happens to be a
	    quoted string.
	  + recognize ruby 1.8's ?a syntax for ASCII character.
	  + accept floating point constant without decimal point.
	  + handle CR/LF endings for lines with here-document tags.
	  + improve parsing of embedded expressions in strings, e.g., "#{1+2}".
	  + improve parsing of extended-quoting, e.g., %|foo|
	  + add ruby.key as alias for rb.key, to simplify use of the filter
	    as a standalone program.
	  + add mode for special case of embedded-ruby used in Rails, call that
	    "erb" mode, activated by the "-e" option of the filter.
	+ apply consistent stylesheet and website links to html documentation.
	+ add commands to show bound commands ordered by the key to which they
	  are bound:
	  describe-all-keys,
	  describe-all-cmdmode-keys,
	  describe-all-insmode-keys,
	  describe-all-selmode-keys
	  (prompted by discussion with Chris Green).
	+ modify htmlfilt.l to highlight embedded php, improve its parsing
	  of embedded css.
	+ modify definition of istype() to ensure that it returns true only if
	  the character parameter is actually in the range 0..255 (Savannah
	  #38342).
	+ amend change made to alt-tabpos in 9.7u for multibyte characters to
	  make tab and other control characters work as they did before
	  (Savannah #37806).
	+ fixes for issues reported by Coverity:
	  + modify ctype-tables to allow for -1 as a character value, since
	    that may be used in CharAtDot().
	  + use setjmp/longjmp for recovering from fatal errors in lexers.
	  + undo change to wrap-word from 5.6t, allowing a parameter which is
	    interpreted as a number of spaces to append after the cursor when
	    the line is split.
	  + various minor resource leaks.
	+ start refactoring x11.c, making the current text-drawer x11plain.c
	+ merge/adapt Brendan's current scripts to add perl documentation
	  to the vile-common Debian package for test-builds.  This also makes
	  the ".xpm" file consistent with the desktop icons.
	+ add "divert" to m4 preamble to work with sendmail's ".mc" \ 
files.
	+ use shape-mask and correct visual depth for window-decoration icon
	  in xvile.
	+ the "-i" option is available in most filters now.  Ignore it when
	  checking for unknown options in the wrapper for external filters
	  (report by Wayne Cuddy).
	+ updates for configure script macros:
	  + add 3rd parameter to AC_DEFINE's to allow autoheader to run
	  + remove unused macros
	+ update config.guess, config.sub

 20120923 (i)
	> Tom Dickey:
	+ fix build for minvile, whose icon path was broken in 9.8h
	+ amend fix for Savannah #36801 to make a special case for the calls
	  via "execute-named-command" which limits the quoting to search
	  commands and shell-commands by testing the first character of the
	  command-line (report by Wayne Cuddy).
	+ update configure script to support --datarootdir option.
	+ improve dependencies for rpm package by adding extra patterns for
	  vile's mime.pl and plugins.pl scripts.
	+ improve ToggleMode macro, making it set the local value as ToggleList
	  does (report by Wayne Cuddy).

 20120807 (h)
	> Tom Dickey:
	+ document icon options in config.doc
	  NOTE: the meaning of the --with-icondir option changes with this
	  version; --with-pixmapdir replaces that usage, while --with-icondir
	  is used to support icon themes.
	+ update vile.mini.xpm to add 32x32 and 48x48 sizes.
	+ add configure --with-icon-name option.
	+ add iconName resource, which can override the compiled-in pixmap.
	+ revise xvile configure options with improved versions from xterm.
	+ add .png and .svg icons, for use in icon-themes.
	+ add fences to rpmmode.
	+ restore highlighting of xpmmode, lost in 9.8g changes.
	+ modify vile.spec to conditionally incorporate the perl features.
	  NOTE: this omits dict.pm due to limitations of the rpm program.
	+ improve pattern used for regular expressions in awk-filt.l
	+ improve check in c-filt.c for quoted strings to ensure that a
	  backslash is given for continuation-lines.
	+ modify ecrypt.c to reset seed/salt before each file, so that a set
	  of files can be decrypted with a wildcard.
	+ improved lex-filt.l:
	  + do not treat a line consisting only of whitespace as indented-code.
	  + amend CODE1 state to handle indented comments between patterns.
	+ modify initialization of [vileinit] to quote parameters passed from
	  the command-line, e.g., for the "-s" option so that embedded blanks
	  are retained (report by Greg McFarlane, Savannah #36801).
	+ modify hist_show() to return correct index for "#" buffer when
	  autobuffer mode is turned off (Savannah #36739).
	+ correct logic in special_formatter() for L_CURL case so that
	  expressions such as
		setv $modeline-format "%{&cat 'ignorecase is ' $ignorecase}"
	  work (patch by Adam Denton, Savannah #35288).
	+ corrected highlighting of continuation-lines for double-quoted
	  strings in awk, tcl filters (prompted by report by Wayne Cuddy).
	+ reduce sh.key to POSIX shell keywords and utilities.
	+ add zshmode and bashmode, for consistency.
	+ add kshmode, to address slight syntax differences between Korn
	  (ksh93) and Bourne shell scripts.
	+ add new command "derive-majormode", which is used to make a new
	  mode initially copying another mode's settings.
	+ improved sh-filt.l:
	  + "<<<" short-form here-document.
	  + add "-K" option to support Korn shell's "vnames", which \ 
allows one
	    to define a variable containing "." if there already exists a
	    variable consisting of the part before the ".".
	  + exclude backtic from a pattern in here-documents, which prevented
	    embedded backtic's from being recognized.
	  + extend the list of operators for brace substitution.
	+ use autoconf 2.52.20120310, to work around Intel 12.x compiler.
	+ add configure check for clang, to improve compiler warnings.
	+ build-fix for HP-UX 10.20 lex, which prototyped main() without params

 20120309 (g)
	> Tom Dickey:
	+ relax conditions for displaying saved message just before starting
	  full screen mode, to allow the default help-summary to show (report
	  by Paul Fox).
	+ modify logic for [vileinit] and [vileopts] buffers which are used
	  during startup, to first close their window if possible, eliminating
	  a message that interfered with other startup messages (report by
	  Paul Fox).
	+ improve insert-exec mode by filtering out characters which have
	  special meaning in insert-mode.
	+ add ToggleMode macro (prompted by question by Wayne).
	+ add complete.rc GetCompletion macro as an example of how to do
	  insert-completion.
	+ add "show-user-variables" command.
	+ implement "describe-$variables" command.
	+ add alias "describe-user-functions" for \ 
"describe-&functions"
	+ add alias "describe-state-variables" for "describe-$variables"
	+ add variables $get-at-dot, $get-it-all, $get-length and $get-offset
	  to simplify scripting of &get-completion and similar features.
	+ modify vilefilt.l to highlight functions using "-" character.
	+ add aliases &get-key, &get-motion, &get-sequence as more readable
	  names for &gtkey, &gtmotion and &gtsequence.
	+ add &get-completion function to support macros that can handle
	  name-completion in insert mode (prompted by mailing list discussion).
	+ reset video-attributes for linebreak when computing the left/right
	  scrolling offset, fixing a case from 9.8f which left stray highlights
	+ updated nsis.key
	+ modify conffilt.l to match leading keywords that may begin with a
	  leading punctuation mark, other than the existing comment markers or
	  brackets.
	+ modify nsis mode to ignore case of keywords.
	+ add -i option to most syntax filters to control whether keyword
	  matching is done ignoring case.  The exceptions are html, imake and
	  make, which use special logic for deciding which to use.
	  NOTE: this is an incompatible change which can affect user-defined
	  majormodes that use the affected filters.  However, presetting the
	  -i option on about a third of the syntax filters would be more
	  confusing than making this explicit in filters.rc
	+ modify configure script to support cross-compiling, tested with
	  cross-compiler to mingw using convile and minvile targets.
	+ add null-pointer checks for "nohl" fix in 9.8f, needed for the case
	  when no majormode is in effect.
	+ modify vile-manfilt to accept 0xb7 bullet character used in some
	  manpages.
	+ updates for configure macros CF_NCURSES_CONFIG, CF_XOPEN_SOURCE

 20111127 (f)
	> Tom Dickey:
	+ trim unneeded loader flags added in Mandriva 2010.2's rpmbuild, since
	  those prevent the loadable filters from linking.
	+ modify symlinking of manpages in vile.spec to avoid using absolute
	  links, since those may be removed in rpmbuild.
	+ change makefile.wnt to add WIDE knob to define UNICODE, and also for
	  the OLE configuration to use comsuppw.lib rather than comsupp.lib
	+ drop -G4 option from makefile.wnt, which was an optmization to favor
	  486 processors phased out in Visual C++ 5.0, and with 9.0 produces
	  a warning.
	+ change return type of TERM.setpal from void to int, since the return
	  value is used with the win32 platform.
	+ modify special case for "dos" setting in a submode introduced in
	  8.3q, recognizing "nodos" also.  This allows overriding a submode
	  that is previously defined, e.g., in modes.rc, by a user's .vilerc
	  (report by Wayne).
	+ correct "nohl" when used in a submode.  As a side-effect, vile frees
	  video attributes for the buffers, but in this special case it did not
	  limit the freeing to buffers using the majormode whose highlight
	  submode was turned off (report by Wayne).
	+ add force-empty-lines operator.
	+ add delete-empty-lines operator (request by Wayne).
	+ change tabstop within [Printable Chars] to keep the result within
	  80 columns.
	+ improved rpm syntax highlighter:
	  + modify number pattern to add dots and dashes for version numbers.
	  + match keywords in more places by checking for the name in %name and
	    %{name} patterns when the first match fails.
	  + add keywords %exclude, %makeinstall and %run_ldconfig
	+ add vile-pager to dpkg package script for vile.
	+ add ".pod" files to perlmode.
	+ change default in basic.key to Keyword for consistency.
	+ modify xresfilt.l to check for continuation-lines of comments.
	+ add "YI" capability to tc.key, per ncurses fix.
	+ add extra-colors settings for linenumber and linebreak, as well
	  as the normal "<" and ">" markers.
	+ modify makemode to use tabinsert, allowing notabinsert to be a
	  default in other mode (patch by Anthony Shipman).
	+ add erlang syntax highlighter and majormode (patch by Anthony
	  Shipman).
	+ add linebreak mode, like vim (request by Paul Van Tilburg).
	  This does NOT yet work with color highlighting, but does work with
	  wide-characters.
	+ fill in a missing chunk of logic for wrapping double-width characters
	  (report by Sukegawa Shigeyuki).
	+ modify debian/rules to work around a quoting problem in Brendan
	  O'Dea's build environment.
	+ fix a typo in help-file description of modeline (report by Wayne).
	+ adapt/use multi-package feature of Fedora rpm script.
	+ modify dpkg and rpm scripts to install lxvile.
	+ add build-dependency for dpkg test-script against libperl-dev
	+ several configure macro updates, from lynx/ncurses/tctest/xterm:
	  + CF_ANSI_CC_CHECK - do a sanity check on $CC; occasional users add
	    options directly to it rather than follow the standards by setting
	    $CFLAGS and/or $CPPFLAGS.
	  + CF_CURSES_CPPFLAGS - make checks for special libraries on hpux10
	    and sunos4 optional
	  + CF_CURSES_FUNCS - workaround for bug in gcc 4.2.1 (FreeBSD 8.1)
	    which caused part of test program to be omitted, i.e., when it saw
	    two return-statements in a row it omitted the _first_ one.  Also
	    add expression to pointer check to help FreeBSD's linker decide it
	    should be validated.  Just an assignment was not enough.
	  + CF_CURSES_LIBS - add check for NetBSD's otermcap
	  + CF_CURSES_HEADER - change order for curses.h / ncurses.h pairs to
	    put ncurses.h first, which will tend to provide the same #define's
	    as in CF_NCURSES_HEADER (report by Dennis Preiser).
	  + CF_CURSES_LIBS - make checks for special libraries on hpux10 and
	    sunos4 optional
	  + CF_CURSES_TERM_H - modify to avoid spurious check for
	    <curses.hterm.h> if there is no ncurses version.  Look for
	    ncurses's term.h anyway, to work around breakage by packagers who
	    separate ncurses' header files.
	  + CF_DISABLE_RPATH_HACK - fix garbled message
	  + CF_LD_RPATH_OPT - add cases for DragonFlyBSD and MirBSD
	  + CF_MAKEFLAGS - filter out GNU make's entering/leaving messages.
	    This only appeared when using the macro in a dpkg script, though it
	    should have in other cases.
	  + CF_PKG_CONFIG - modify to allow autoconf-2.13 or autoconf-2.52
	    configurations.
	  + CF_RPATH_HACK - add a check for libraries not found, e.g., from
	    suppressed functionality of gcc in linking from /usr/local/lib, and
	    add a -L option to help work around this.
	  + CF_STRUCT_TERMIOS - relax ncurses-oriented change to make this work
	    as fixup after CF_XOPEN_SOURCE
	  + CF_TERMCAP_LIBS - modify the workaround for old AIX system (e.g.,
	    from 1997 or before) to not set $cf_cv_termlib if it succeeds in
	    finding initscr in libcurses.  Doing that confused a check in tin's
	    configure.in which looks at that variable to decide if
	    termcap/terminfo library was found.  The check for tgoto in
	    libtermcap on the next line is the actual check which is needed,
	    and should fail if there is no termcap library installed.
	  + CF_XOPEN_CURSES - fix typo in the workaround for
	    _XOPEN_SOURCE_EXTENDED
	  + CF_XOPEN_SOURCE - extend aix case to aix 7.x, modify checks to
	    prefer _XOPEN_SOURCE vs _XOPEN_SOURCE_EXTENDED.
	  + CF_X_ATHENA_LIBS - DragonFlyBSD's pkgsrc combines Xaw6 and Xaw7
	    into a single package, and doesn't provide a plain "libXaw.so"
	    symlink.  Work around by testing for the 6/7 versions.
	+ restore delphi keyword file.
	+ amend change from 9.7w to install rule for vileget, making it use
	  the normal INSTALL_SCRIPT symbol.  Some platforms' "strip" utility
	  do not error if the file happens to be a shell script.
	+ amend build-fix for cygwin to fix winvile OLE.

 20110411 (e)
	> Tom Dickey:
	+ improve ada syntax highlighter by parsing attributes, adding a list
	  of the predefined attributes to its keyword file.
	+ fix character-type initialization to allow built-in locales in 9.7d
	  to work (report by Ramil Farkhshatov).
	+ amend a change from 9.7zd which lost the repeat-count for single-byte
	  characters in "r" and other uses of lins_chars() (report by Hymie on
	  mailing list).
	+ build-fixes for --disable-extensions
	+ add tables, modify functions, to support name-completion for the
	  ":g" global commands.  Previously, name-completion used the entire
	  table, which is about 7 times longer.
	+ add "describe-globals" command.
	+ add the "pp" operator to documentation of :g in help-file (report by
	  Wayne on mailing list)
	+ change backup-style from universal to buffer-mode (request by Wayne
	  on mailing list).
	+ add a check in bytes_at0() to ensure that the offset is positive.
	+ modify logic used when cursor-tokens is set, to extract the token
	  from the screen.  It was only searching for the first token which
	  began on or after the current position.  Now it searches for tokens
	  which may begin before the current position (report by Ian Watson).
	+ build-fix for xvile with cygwin, broken in 9.8a changes to
	  consolidate w32vile.h includes.

 20101228 (d)
	> Tom Dickey:
	+ modify expression used for "path" type in regexp.c to avoid matching
	  non-ASCII punctuation characters.
	+ merge changes from Debian package script for 9.8c
	+ add preamble patterns for Emacs "text" and "Autotest" modes.
	+ minor improvements to performance by inlining as macros some
	  frequently used functions.
	+ apply the same improvement for line-deletion to these functions:
	  attributereqion(), find_release_attr(), update_window_attrs().
	+ improve performance of line-deletion by eliminating a search for
	  region-pointer, using data already collected (report by Gary
	  Jennejohn).
	+ modify CAPNAME expression in tc-filt.l to accept "#2", etc.
	+ extend generate set of single-byte encodings to include those listed
	  by iconv for which there is no predefined locale, e.g., the Windows
	  codepages.
	+ modify several places which check for special characters, e.g., when
	  parsing repeat-counts in normal mode, to also exclude multibyte
	  characters (report by Ramil Farkhshatov).
	+ use the generated single-byte encodings from 9.8c to improve UTF-8
	  support for platforms without iconv, i.e., by relating the narrow
	  and wide encodings.
	+ add $kbd-encoding variable, to control whether the keyboard uses the
	  same encoding as the display and/or locale.

 20101206 (c)
	> Rick Sladkey
	+ add Unicode support to the vile Win32 console driver.
	> Tom Dickey:
	+ add generated set of single-byte encodings, to replace the ASCII and
	  ISO-8859-1 fallbacks used when no suitable 8-bit "narrow" locale can
	  be setup.  The tables also have the corresponding set of locale names,
	  which provides a fallback for cases when the locale support is
	  incomplete (prompted by report by Ramil Farkhshatov).
	+ modify CF_WITH_CURSES_DIR and related macros so the --with-curses-dir
	  option applies to both ncurses and curses.
	+ modify CF_X_ATHENA and CF_X_TOOLKIT autoconf macros to accomodate
	  changes in xorg package scripts.
	+ modify several autoconf macros to lessen use of legacy
	  "${name-value}" feature in favor of standard \ 
"${name:-value}", since
	  it is broken in recent version of bash.
	+ remove a spurious '\' in backreference for sed in CF_LEX_VERSION
	  macro (report by Mark McKinstry)
	+ add ".yy" suffix to yaccmode.
	+ add ".gperf" and ".ll" suffixes to lexmode.
	+ ncu-indent is now provided by "cindent" at
	  http://invisible-island.net/cindent/
	+ set pointsize in output from atr2html.
	+ use cindent to format the ".c"-files.
	+ use cindent to format the lex-files.
	+ correct description of "copy-to-clipboard" in cmdtbl.
	+ update config.guess, config.sub

 20100915 (b)
	> Tom Dickey:
	+ correct a check in the combination of showchar mode with the
	  :show-printable command when the global file-encoding mode is set to
	  locale.  Also make this combination apply whether or not the ruler
	  mode is set.
	+ correct setting of reg_utf8flag when the global file-encoding mode is
	  set to locale, e.g., for UTF-8 encoding.
	+ add "%" to syntax highlighting of makefile target patterns.
	+ add configure --enable-link-prefix, which is used to trim unneeded
	  libraries from link-commands, to reduce package dependencies.
	+ build-fix for Ubuntu package, which must ensure that -lcrypt is
	  added when building vile-crypt due to weak-linkage issues.

 20100908 (a)
	> Tom Dickey:
	+ modify configure check for gcc's -r dynamic option to include the
	  message from QNX's gcc 2.95.2, which simply ignores the "dynamic".
	+ modify RPM spec-file to remove the doc-directories' scripts at build
	  time, since rpmbuild 4.4.2.3 on Centos 5.5 automatically adds unwanted
	  dependencies on the Perl scripts found there as part of the package's
	  requirements for installing.
	+ fix many strict gcc compiler warnings.
	+ remove support for OpenLook.
	+ add configure --enable-colored-menus option (discussion with Chris
	  Green).
	+ modify makefiles for winvile so that it supports unix-style
	  encryption.
	+ modify vile-crypt to accept a "-u" option for unix-style encryption.
	+ add Jochen Obalek's unix-style crypt function for platforms without
	  that, e.g., win32 and OS/2.
	+ modify perl.xs to build/work with perl 5.004 (cf: 9.7e).
	+ add configure workaround for perl 5.004's prototype for main().
	+ drop two symbols from embedded-Perl configure check, since they did
	  not appear in 5.004, and are not used by perl.xs
	+ build-fix for OS/2 EMX:
	  + remove a '/' after $(DESTDIR), to work with DOS devices.
	  + suppress unsupported "inline" definition for icc compiler.
	+ build/runtime fixes for DJGPP:
	  + provide fallback for intptr_t type.
	  + amend a change from 9.7h which assigned a non-malloc'd pointer to
	    context where it was later freed.

Files:
RevisionActionfile
1.69modifypkgsrc/editors/vile/Makefile
1.12modifypkgsrc/editors/vile/PLIST
1.15modifypkgsrc/editors/vile/distinfo
1.2modifypkgsrc/editors/vile/patches/patch-makefile.in
1.2removepkgsrc/editors/vile/patches/patch-filters_filters.h