Unsorted entries in PLIST files have generated a pkglint warning for at
least 12 years. Somewhat more recently, pkglint has learned to sort
PLIST files automatically. Since pkglint 5.4.23, the sorting is only
done in obvious, simple cases. These have been applied by running:
pkglint -Cnone,PLIST -Wnone,plist-sort -r -F
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
This package uses the distinfo and patches from editors/vile which was
recently updated to version 9.8. Unfortunately it doesn't use a
common makefile so there was a version mismatch. In the end, it didn't
matter because the PLIST had to be significantly modified as well.
These patches move xvile to version 9,8 and fixes build on DragonFly as
a side benefit.
to trigger/signal a rebuild for the transition 5.10.1 -> 5.12.1.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=..."), minus the packages updated after
the perl package update.
sno@ was right after all, obache@ kindly asked and he@ led the
way. Thanks!
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
feature improvements (remove obsolete filters, improve ruby filter,
improved syntax highlighting, some locale/encoding fixes, etc.)
In pkgsrc, add DESTDIR support to xvile. While here, include
libXt and libXmu so that xvile will build if XAW_TYPE=xpm.
Changes from the previous version:
Changes for vile 9.6 (released Thu Dec 27 2007)
> Tom Dickey:
+ update makefile.blc, adding charsets.c, eightbit.c and wcwidth.c
+ build-fix for OS/2 IBM CSet (define a delay function for catnap).
+ minor build-fixes for VMS:
+ modify vmsbuild.com to simplify workaround for broken MMS 3.8
+ provide dummy variables for xvile to reflect modularization changes
with respect to vmsvt.c
+ documentation updates.
+ minor fix to manfilt.c to pass-through UTF-8 codes by testing with
both iswprint() and isprint().
20071224 (u)
> Tom Dickey:
+ separate vile's ttputc from termcap prototype to pass integer param
rather than just a char on Solaris.
+ fix computation of columns needed to show UTF-8 codes in POSIX
locale.
+ modify manfilt.c to provide UTF-8 output in a UTF-8 locale.
+ minor fix to CF_FUNC_ICONV to link iconv on cygwin (noting that
cygwin has no useful locale support, it may someday).
20071202 (t)
> Tom Dickey:
+ modify filters makefile "clean" rule to accommodate OSF/1 4.0D
whose make program leaves intermediate ".c" files for each lexer.
+ change order of restore-flags and switch-buffer in
restore_buffer_state, avoiding an unnecessary prompt to discard
changes when attempting to read a buffer that cannot be read.
+ increase a few table sizes to work with AIX 5.1 lex.
+ modify check for lex version to avoid hanging on older platforms
where it would try to read from standard input even if it does not
recognize the option.
20071125 (s)
> Tom Dickey:
+ several changes to provide usable Unicode support:
+ add mode percent-utf8 to set a threshold for file-encoding mode
"auto" detection of UTF-16/UTF-32 files.
+ file-encoding mode can be set to "auto", to detect UTF-16 files,
which are loaded as UTF-8.
+ UTF-8 files are detected based on the file-encoding mode as well.
+ Unicode values are displayed (where no locale controls) as "\uXXXX"
in 4 hexadecimal digits.
+ add unicode-as-hex mode to override locale, forcing Unicode values
to display as "\uXXXX".
+ for buffers with UTF-8 encoding, show illegal bytes as "\?XX".
+ Unicode values can be inserted into buffers using ^VuXXXX form.
Limitations:
+ terminal drivers support Unicode display in varying degrees:
+ winvile - multicolumn characters, depends on font selection
+ termcap/terminfo - relies on terminal emulator, knows about
multicolumn characters
+ xvile - displays only single-column characters
+ curses - depends on the curses library, e.g., ncursesw
+ win32 console - not yet implemented
+ combining characters are not combined.
+ registers hold byte data, will show the UTF-8 encoding for data
rather than a \uXXXX (unless the file-encoding for [Registers]
is changed).
+ some "characters" such as the report for yanked text is still
really a byte-count.
+ inserting a \uXXXX into the minibuffer will display the UTF-8
encoding.
+ regular expressions are not wide-character aware.
+ UTF-16 and UTF-32 files are detected based on BOM and/or the
contents of the first line of the file.
+ external syntax filters do not handle BOM or UTF-16, UTF-32.
+ improve name-completion by saving/restoring the original window and
buffer when [Completions] closes, rather than the closest window.
+ add output from rcshist to diffmode.
+ add ".vbp" files to inimode.
+ modify configure script to omit lex-filt.l from build if lex is not
really flex, since the tables are too large for the older program.
+ modify spell.pm to use a temporary file to work with newer Perl's
that do not handle tied variables exactly as filehandles.
+ update Kevin Buettner's email address.
+ add -class option to xvile.
+ remove a redundant XtDestroyWidget() from x_close() to quiet a
warning from XtRemoveGrab() when doing a ":q" from Xm-vile
(report by Chris Green).
+ use va_copy() in dofmt() to work with Linux on powerpc
(report by Paul van Tilburg).
+ add docbookmode
+ improve 9.5m/9.5q check for file ownership, adding a warning message
for files which are ignored (report by Chris Green).
+ change default for --with-locale configure option to mesh with
--disable-extensions.
+ improve paste-performance in winvile by passing whole-line chunks
to the insert-function.
+ improved cppmode's identifier-expr (report by Gerry Fredette).
+ correct order of evaluation from 9.4w when setting record-separator,
which was setting "crlf" ending temporarily when computing the buffer
size, even when "lf" was intended. That would cause an immediate
write from winvile (without change) for a buffer to write too many
characters.
+ add syntax filter conffilt.l, for "ordinary" config-files.
+ add "rectangle-insert-mode".
+ fill in several omitted items in init_mode_value().
+ add "describe-&functions" and "describe-$variables" commands.
(The latter is a stub for later).
+ improve repainting in winvile while processing external command.
also modify keyboard handling to provide type-ahead while processing
external command.
+ remove obsolete $tpause variable.
+ modify majormode inferencing to check preamble for [Standard Input]
and [Output] buffers.
+ add ">motion" function for scripts.
+ improve handling of enumerated values by forcing all to lowercase,
e.g., to eliminate the need for the special case in 9.1x to handle
"TRUE" and "true".
+ revise lstrinsert() and associated logic which implements changes
to rectangles, e.g., with c^Aq, to ensure that it pads the change
with blanks rather than nulls (report by Paul van Tilburg).
+ improve modeline support by ignoring strict "vi" modeline options
that are not recognized by vile, rather than reporting an error.
+ use new module blist (binary search of lists) to reduce linear
searches in the places where btree is not already used.
+ change rename-other-buffer command to other-buffer-rename, to avoid
name-completion conflict with rename-command (feedback from Steve
Lembark).
+ remove obsolete check for ANSI qsort.
+ improve vilefilt.l, highlighting mode names and displaying error
for unknown mode, function and state variables.
+ fix typo in manpage.rc which broke use of pod2man in 9.5m
+ add &pquote in manpage.rc, to allow it to format html output when
vile-manfilt, etc., reside in directories containing spaces in their
name.
+ add ".reg" filetypes to inimode.
+ add several package-related suffixes to sqlmode.
+ add xpmmode
Based on patch provided by L. Schmidt in PR 36973.
pkgsrc changes:
share distinfo and patch with editor/vile
XXXX: Should also share Makefile and PLIST.
Changes from 9.5 to 9.5r:
20070603 (r)
+ amend makefile.in change for $(SRC) to use a translation rule that
works with IRIX64 (and some broken BSD) make programs.
+ correct parsing/removal of "-i" option in winvile, taking into
account double-quoting of parameters and also options which have
parameters.
+ make configure --with-no-leaks work for external filters, e.g., using
valgrind.
+ add configure script check for tdelete(), provide a replacement if
not found (report by Gary Jennejohn).
20070528 (q)
+ change configure script to check for ispell before aspell; Fedora 5's
problem with aspell was eventually fixed.
+ make cursor-adjustment after paste in xvile dependent on whether the
pasted text ended with a newline (request by Eric Krohn).
+ cleanup the bottom line on the screen when exiting the curses driver,
to match the termcap/terminfo driver (report by Chris Green).
+ fixes for pl-filt.c (perl highlighter):
+ allow blanks before tag for here-document, e.g.,
cat << 'TAG'
+ allow '~' as a quote-delimiter (this is used by linklint).
+ modify CF_IMAKE_CFLAGS to work with Solaris sed, which (unlike a
standard UNIX implementation) does not honor nested subexpressions.
+ add rename-other-buffer command, use that to modify spell.rc so it
can work with scratch buffers which otherwise would be lost, e.g.,
"[Help]".
+ add modelines for winvile.rc and w32ole.rc to set the majormode to
rcmode, and modify a special case in main.c to make "vile winvile.rc"
get the corresponding majormode.
+ add some null-pointer checks in filters for result from flt_alloc().
+ add a check in flt_alloc() in case the pointer has not been
allocated.
+ derive $(SRC) from $(OBJ) in makefile.in, to avoid losing trace.c
in tags rule.
+ check for empty/default "put" in line.c's PutChar() to avoid
attempting to remove a trailing newline from that, since the
corresponding line has already been freed as part of the undo process
(report by Paul Fox).
+ use O_NONBLOCK if O_NDELAY is undefined, needed for a few platforms
which have the POSIX definition but not the legacy, e.g., Minix and
OS X.
+ make autocolor work for curses-driver, e.g., --with-screen=ncurses
(report by Chris Green).
+ widen the check for "winvile" in vileinit's initialization for win32
shifted cursor bind-key's.
+ modify spell filter so that it can get VILE_SPELL_FILT from the
registry on win32.
+ improve spell filter camelcasing that when parsing things like
"UXTerm" it splits off the "Term" as a possible word.
+ amend 9.5m change to check for file ownership to ensure this is
only done for files that might be source'd. It was checking files
for read/write too.
+ correct syntax highlighting for end of JavaScript embedded in HTML,
which did not allow for the marker in an inline comment.
+ modify "filename" shown in :show-filtermsgs to use the buffer name
if no filename is available.
+ modify preamble patterns for shell modes such as awk, etc., to allow
for programs without an absolute pathname, e.g., "#! awk".
+ modify the symbol-table lookup in filters.c to use tsearch() when
available. For an 8Mb rtf file this improved performance by about
a factor of two (on Linux - Visual C++ has no tsearch).
+ add configure check for getc_unlocked(), putc_unlocked() and
tsearch() to use in performance improvements for syntax filters.
+ add syntax filter for RTF files.
+ improve autocolor on win32 by not allowing the cursor to be repainted
while autocoloring is in progress.
+ modify winvile's command-line parsing, adding "-i" option to perform
the case used for "Send To": use the part of the command line after
options as the filename and change working directory to match
(request by Larry Gensch).
20070425 (p)
> Tom Dickey:
+ modify spell- and txt-filters to allow users to add words to their
respective ".keywords" files to override the builtin highlighting.
+ correct check of return of ffread() in spellflt.l's workaround for
platforms such as win32 which have no usable popen(). That made
spelling checks require two ^X-i presses.
+ modify spellflt.l to chop words according to Camel-case, so
tokens such as "ChopWords" are treated by the spell checker as
multiple words.
+ fix a limit check in argc/argv[] parsing for winvile (report by
Larry Gensch).
+ modify wvwrap.exe to work with pathnames containing "$", "&" and "'".
+ change OPT_MULTIBYTE definition to depend on OPT_LOCALE.
20070115 (o)
> Tom Dickey:
+ change Inno Setup script to not put version numbers on the SendTo
and context-menu entries.
+ start adding support for UTF-8 (modes "byteorder-mark" and
"file-encoding"). The byteorder-mark is workable, but the
file-encoding is a stub. This works to strip the BOM from files
as they are loaded, making syntax highlighting work for XML files.
+ correct two places in exec.c which used skip_blanks() rather than
skip_space_tab() from 9.5l changes. This caused the command
parser to treat ^K as a blank, breaking digraph.rc which uses
that character (report by Gary Jennejohn).
20070108 (n)
> Tom Dickey:
+ add a character-class check to find_b_file() to prevent names such
as "<vile.1>" from being canonicalized into "vile.1" on win32 via
FindFirstFile(). This fixes a problem where ^X-n would sometimes
display the wrong buffer.
+ add shifted-cursor-key bindings for winvile, like xterm.
+ amend cursor-tokens mode so that ^X-e in a directory-buffer always
uses the whole line (no regular expressions).
+ fix a null-pointer dereference in the cursor-tokens mode.
+ minor fix to sh-filt.l to handle lines like
: ${BUILD_CC:='${CC}'}
+ improve iss-flt.l to highlight preprocessor lines.
+ improve winvile.iss (Inno Setup):
+ use values in patchlev.h to set the package version information.
+ add context menu and Send To shortcuts
+ install the keyword files
+ add configure --with-valgrind option.
20061212 (m)
> Tom Dickey:
+ add showvariables mode, for testing expressions used in [Variables].
+ correct comparisons used for handling bounds in regular expressions,
e.g., the "2" in "\(this\|[l-m]\)\{2\}".
+ change behavior of regular expression OR'd alternatives - only the
first match was used rather than the longest one.
+ fix configure script macros which omitted X_EXTRA_LIBS in one case,
and repeated libs in another.
+ fill in complete list of event names for xres.key from Xt/TMParse.c
+ make ShowFormatted macro more configurable by allowing environment
variables $VILE_NROFF_FILT and $VILE_TABLE_FILT to override the
choice of programs therein.
+ disallow source'ing from the current directory if the source'd file
might be writable by other users.
+ improve fences in vbs- and vbmode.
+ fix xresfilt.l; X resource files do not have embedded comments.
+ minor improvements/fixes to &default, to allow it to assume that
'$' is implied for modes.
+ modify locale initialization to work with koi8rxterm.
+ add character classes [:ident:], [:octal:] and [:path:], and change
the association of \w and \W to [:ident:], making [:alnum:] no longer
include "_".
+ add cursor-tokens mode to control whether vile uses regular
expressions, character classes or a combination to obtain tokens
from the screen.
+ add $buf-fname-expr to show the combined bufname-expr, pathname-expr
used to interpret ^X-e.
+ add bufname-expr, identifier-expr and pathname-expr buffer modes to
provide regular expression parsing of $bufname, $identifier and
$pathname in the show-variables command as well as for the related
expansion of tokens from the cursor position. If the expressions are
empty, the code falls through to use the corresponding older
character-class parsing. Default values are provided for each *-expr
mode.
+ fix a case where set-window might remove the only window before
attempting to put a file in it.
+ quote "$HOME" in CF_SUBDIR_PATH, for cygwin users.
20061107 (l)
> Tom Dickey:
+ modify ":describe-bindings" to show whether the command accepts a
range, and whether it is undoable.
+ add ":goto-percent" function.
+ add (nvi/vim) ex-commands: a!, c!, i!
+ add ":c" as alias for ":change-til" (nvi/vim).
+ change unimplemented ":c" to ":co" (reference O'Reilly vi-book)
+ fix makefile dependency for tags
+ review/update use of "CNT" in describe-bindings
+ revised command-line option parsing to use scripting more effectively:
+ multiple startup files are allowed.
+ most command-line options are translated to their equivalent script
and executed, rather than saving state for the most recent of each
option. This makes the -s, -S, -g, -G options obsolete (but still
accepted).
+ add "-c" option (the POSIX form of "+").
+ modify configure script to use ncurses5-config, etc., if found when
handling the --with-screen=ncurses or --with-screen=ncursesw options.
It also is checked when handling the --with-ncurses option for the
termcap/terminfo driver.
+ add suffix/name rules for "Jam" files.
+ fix preamble pattern for pymode so it does not match a ":" line
which should be shmode.
+ implement patterns as line-specifiers in ex-mode.
(this does not work with history-scrolling yet).
+ remove incorrect check for empty parameter from which-menu from 9.4m
changes.
+ check xvile menu to ensure that "C" header is given, adding a
dummy one if not (report by Chris Green).
+ add checks to ensure that neither modelines nor majormodes can alter
these modes: all, crypt, readonly, viewonly.
+ implement vi-style modeline, limited to setting buffer- and window-
modes, or majormodes.
+ add "#" as an alias for number-lines-til
+ improve highlighting of comment-lines (denoted by "--") in txtmode.
+ fixes for termcap syntax highlighter (tcmode):
+ allow description field to be empty
+ color the "|" between aliases.
+ improve string- and escape-parsing
+ fixes for terminfo syntax highlighter (timode):
+ allow description field to be empty
+ color the "|" between aliases.
+ allow aliases to contain blanks.
20060924 (k)
> Paul van Tilburg
+ add syntax filter (mcrl) for mCRL/mCRL2 modeling language.
> Tom Dickey:
+ modify fileread() to ensure that the error-buffer is reset after
reading (or re-reading) a shell/pipe command, e.g., using ":e!".
+ fix configure --disable-largefile option (from ncurses).
+ minor fixes for nroff filter to improve rendition of groff's macros.
+ add configure check for ncurses 5.2(sic) on FreeBSD, which was broken
by an incomplete set of changes to wchar.h (report by Chris Green).
+ add configure check for aspell, whose attempt at a compatibility
script for ispell does not recognize ispell's options.
+ workaround for breakage in FreeBSD's header files: updates to wchar.h
were not reflected in updates to curses.h (report by Chris Green).
+ remove reference to obsolete http://www.vile.cx from README (report
by Paul Fox).
+ update config.guess, config.sub
20060625 (j)
> Tom Dickey:
+ fix expression for shmode $mode-filename to match ".profile".
+ various small build-fixes (prompted by reports by Paul Fox, Clark
Morgan).
+ amend 20050214 change to set_files_to_edit(), which caused partly-
read buffer to be discarded if ffgetline() was interrupted, e.g.,
by a ^C during a slow pipe read. Now the buffer contents are
retained.
+ update config.guess, config.sub
20060531 (i)
> Tom Dickey:
+ fix error-reporting for a "~break" without a preceding "~while"
(report by Clark Morgan).
+ minor fixes for tc-filt.l (termcap mode).
+ fix x11.c for Motif broken in 9.5f cleanup (reported by Paul Fox).
+ improve bas-filt.l by not highlighting incidental matches in the
attribute section of a Visual Basic form-file.
+ correct parsing of hexadecimal constants in bas-filt.l
+ add .ctl suffix for vbmode
+ fix a case in bsizes() which subtracted line-ending from zero-sized
buffer when nonewline mode was set (Debian #368007).
20060521 (h)
> Clark Morgan:
+ document write-all-buffers command.
+ add echo-to-clipboard mode for Win32 hosts:
all text selected with the mouse is automatically
copied to the Windows clipboard. (U)
> Paul Fox:
+ updated contact information in README, vile.1 and vile.hlp
> Tom Dickey:
+ allow a version number in rbmode (ruby) preamble.
+ add check in m4-filt.c for unbalanced quote, show the affected area
as an error.
+ add ".ddl" suffix to sqlmode.
+ add ".dsr" suffix to vbmode.
+ fix makefile.blc, broken in 9.5f cleanup.
+ fixes for 64-bit warnings of Visual Studio .NET 2003:
+ modify Member_Offset() macro to cast the difference between
addresses to a long rather than casting a pointer to a long.
Use this flavor for Visual C++.
+ size_t is not necessarily the same size as unsigned - modify code
to use size_t where it is consistent, otherwise cast as needed.
+ updated for python keywords
+ modify some lex filters, e.g., sql, to exclude \r in the places that
exclude \n, since \r should not be colored.
+ fix for tb_enquote(); a value pointed to memory that had been
reallocated.
+ make OBJEXT configure feature work for optional objects such as api.o
+ updated configure macros CF_CURSES_CPPFLAGS, CF_CURSES_LIBS,
CF_NCURSES_CPPFLAGS, CF_PATH_SYNTAX, CF_WITH_IMAKE_CFLAGS,
CF_XOPEN_SOURCE.
+ update config.guess, config.sub
20060402 (g)
> Tom Dickey:
+ minor fixes to make most of the lex filters build with "old" lex,
e.g.,
http://heirloom.sourceforge.net/devtools.html
Note: the lex-filt.l file is too complex for some older lex's.
+ add lua mode
+ save/restore curgoal variable in b2vprintf() to avoid side effects
when invoking "backward-row" or "forward-row" commands (report
by Chris Green).
+ add delphi mode
+ add "*.cs" files to grep macros on win32 platform
+ improve csmode by making the section macros look for function
headers.
20060219 (f)
> Clark Morgan:
+ update vile.hlp for %n and %N title format changes.
> Tom Dickey:
+ fix sh-filt.l for parameter substitutions containing an escaped
quote, e.g.,
VERSION=${VERSION#*VERSION \"}
VERSION=${VERSION%\"*}
+ add csmode (for C# ".cs" files) and cs.key, using vile-c-filter for
parsing.
+ modify ntwinio.c to invoke build_recent_file_and_folder_menus() in
the WM_INITMENUPOPUP event rather than WM_SYSCOMMAND. This makes
winvile initialize the recent-folders and recent-files if one uses a
right-click on the title of the window.
+ change winvile's registry subkey for recent-folders and recent-files
to match environment variable settings from 9.4r, e.g., change
"Software\winvile\MRUFiles"
to
"Software\VI Like Emacs\MRUFiles"
+ add new symbols $return and $_ which can be used to implement simple
functions (request by William James).
+ fix filters/makefile.2nd to allow build for gcov
+ improve majormodes for complex fences by initializing the (non-string)
buffer mode values for submode groups according to the values in
the submode. This makes ignorecase work as expected in the complex
fence matching for vbmode.
+ add complex fences to vbmode.
+ minor fix to bat-filt.l to avoid highlighting ".bat" as a string in
call foo.bat
+ change htmlfilt.l to highlight character- and URI-references as
numbers to make them distinct from strings with ordinary text.
+ add makefile rules for installing/uninstalling files from doc
directory:
install-doc
uninstall-doc
as well as installing/uninstalling macros
install-macros
uninstall-macros
uninstall-perl
+ correct logic for goto-char, broken in 9.4za (report by William
James).
+ fix change to cpp.key in 9.5e, which put the C keywords in the wrong
table.
+ add spell.rc to makefile.wnt install rule.
+ add test_io.exe rule to vmsbuild.com
+ add TERM.clean(), TERM.unclean(), TERM.openup() to help move diverse
code out of termio.c
+ modify var_TITLEFORMAT() only call set_editor_title() when setting
$title-format, and modify get_statevar_val() to handle some limited
recursion just in case there are other cases where it could be called
from the statevar.c module while retrieving a value. This fixes a
bug introduced in 9.5e (report by Clark Morgan).
+ update title when doing a "cd", in case it uses %r substitution.
+ change %n in modeline substitutions to use file name (pathleaf)
rather than relative path (shorten_path). Use %r for the latter.
(request by Clark Morgan).
+ move VMS-specific code from termio.c to vmsvt.c
+ remove unused start_debug_log() and mallocdbg() from main.c
+ correct typo in ifdef for Visual Studio C++ 6.0 ifdef in w32ole.cpp
from 9.5e changes.
+ move 9.5c check for stdout not a tty on startup to allow "vile -V"
to pipe to other programs.
+ split-out nullterm.c
+ add test_io stub, to help isolate dependencies of the I/O drivers.
20060109 (e)
> Clark Morgan:
+ improved winvile's "flash".
+ several changes to w32reg.c:
+ if at all possible, don't register ole-enabled winvile using the
path ".\winvile.exe" (obscure cygwin corner case).
+ remove use of toUpper(), which is not legit for winvile in this
context because the underlying mapping array is apparently _not_
initialized. With this fix, "winvile -Ou" now displays the
editor's name in MessageBox text (rather than "").
+ fixed lots of misuses of registry APIs (not properly testing return
code). With fixes in place, winvile -Ou/-Or now properly reports
an error when registration/unregistration is attempted by an
account with insufficient privileges.
+ add section definitions to vbmode.
+ fix: wvwrap caused winvile to show an 8.3 folder name in Recent
Folders list.
+ fix: when CD'ing to a directory stored in winvile's "recent folders"
list, the cursor stayed in the mini-buffer following a call to pwd().
> Tom Dickey:
+ adjust makefile dependencies to allow "make -j4" when building the
loadable filter configuration (report by Ciaran McCreesh).
+ add "+", ",", "&", "@" and ";" to URL patterns in filters.
+ modify nr-filt.l to allow for optional blanks between the leading
"." and the command. This is common in nroff library macros, not
in manpages, etc.
+ improve lex-filt.l, allowing for some flex extensions:
+ allow code in action rules to not have curly braces
+ allow curly-braces to surround chunks of flex actions
+ "*" as a state name.
+ add named marks for decimal digits (request by George Eccles).
+ fix stray ^@'s on the winvile popup menu resulting from changes to
kcod2prc() for xterm-fkeys mode (report by Clark Morgan).
+ add a call to set_editor_title() at the end of swbuffer_lfl() to
make title updates work properly with termcap configuration.
+ add %n and %N substitutions for $title-format (prompted by Clark
Morgan comments).
+ modify FreeBuffer() to clear window's buffer-pointers that point to
the freed buffer, e.g., to prevent reference to free memory in title
updates (report by Clark Morgan).
+ check file descriptors in stdin_data_available() to avoid doing a
fdopen() on an invalid descriptor.
+ add "#import" in cpp.key
+ modify preamble for xml- and html-modes to ensure that the first
tag determines the type.
+ fixes to makefile.wnt and mkprlenv.wnt to work with Visual C++ 7.
+ correct padding of subtitle line for "Temporary variables" in
[Variables] buffer, which was applied to all temporary variable
lines.
20051129 (d)
> Tom Dickey:
+ fix vl_ctype.h to avoid redefinition of UCHAR (reports by Clark
Morgan, Mark Robinson).
+ fix lex-filt.l to build with lex (report by Dave Rolfe).
+ fix include-path in makefile.wnt, makefile.djg makefile.icc to work
with split-out headers for regexp.c
+ remove code for DISP_IBMPC
+ remove makefile.emx and config.emx (obsolete).
+ remove makefile.wat and makefile.tbc, since they used ibmpc.c
20051123 (c)
> Clark Morgan:
+ remove an obsolete comment in macros.doc regarding underscore in
macro names.
> Paul Fox:
+ correct logic for check_percent_crlf(), ensuring that empty buffers
are not counted as having CRLF endings.
> Tom Dickey:
+ fix to_tabstop() function used for :describe-bindings to ensure that
a binding that happens to be 8 columns will still have a tab after
it.
+ add a fflush() to ensure that the control string to reset xterm mouse
mode is written during ^Z handling (report by Fabien Coutant).
+ add a call to term.kopen() in rtfrmshell(), making ^Z/resume work
properly with the curses driver (report by Fabien Coutant).
+ make mouse work for curses driver just like the termcap/terminfo
driver.
+ split xterm-specific code out of tcap.c as xterm.c, to share with
curses.c
+ indent'd borland.c
+ remove ibmpc.c (obsolete)
+ check if stdout is not a tty on startup, print error message and
exit (request by Paul Fox).
+ add mode xterm-fkeys, to allow termcap driver to generate
shift/control/alt modifiers for function keys.
+ modify regexp.c so tab is not matched by \p or [[:print:]] for
consistency with POSIX regular expressions.
+ modified regexp.c, add headers vl_regex.h, vl_alloc.h and vl_ctype.h
to allow it to be easily built outside vile (request by Adrian Kole).
+ add KEY_BackTab to the output of show-key-names
+ fix kcod2prc() so that a shifted-tab is converted to "Shift+^I"
rather than emitting a literal tab in the result.
+ update vilemenu.rc fonts to work on Debian/testing.
+ improve scrollbar/cursor tracking in winvile by calling
gui_update_scrollbar() when WFMOVE flag is set (report by Deraj
Puma).
+ add a simple csvmode for ".csv" files.
+ add ".ebuild" suffix for shmode.
+ improve mode-pathname for xresmode to handle things like KOI8Term.
20051002 (b)
> Tom Dickey:
+ update config.guess, config.sub
+ improve os2vio.c, adding a check to distinguish between fullscreen
and VIO to allow using bright background colors in the latter (report
by George Eccles).
+ add KEY_xxx definitions to OS/2 and Win32 drivers, defining up to
KEY_F35 for the former and KEY_F24 for the latter (report by George
Eccles).
+ several improvements and fixes to lex-filt.l
+ expressions for regular expression parsing are more complete, which
allows separating patterns from state lists. That allows some
error-checking in the rules section to flag spurious whitespace
after a regular expression. The more-complete regular expressions
make the parser much larger (about 5 times the original size).
A rewrite in C might be shorter.
+ ignore case of "%s" vs "%S" or "%state", etc.
+ parse the pattern names, applying highlighting to the names where
they are embedded in regular expressions.
+ parse the "%s" (state) lists, applying highlighting to the states.
+ handle flex's <<EOF>> token.
+ handle character classes in the RANGE pattern.
+ remove an update() call from the logic in input.c which decodes
hex/octal input after a ^V. That caused the screen to move the view
according to the address in the command, e.g.,
:%s/^Vx12
would scroll to the bottom on entry of the "x" (report by Daniel L
Ashbrook).
+ correct behavior of set-dos command, which did not recompute the
buffer-size.
+ make end-of-token test for store-proc consistent with bind-key,
i.e., alphanumerics and hyphen. Amend that test to allow underscore
(report by George Eccles).
20050905 (a)
> Tom Dickey:
+ review/improve vl-filt.l based on Verilog LRM draft
+ add configure check for lex's which support character classes, and
add filters/noclass.sh to work around those which do not.
+ improvements to configure script from ncurses:
+ improve check for Intel compiler warnings
+ improve check for gcc version
+ define _QNX_SOURCE for QNX
+ revert part of 9.4n, which caused readin() to return false if there
was no filename associated with the buffer. Doing this broke some
macros such as which-keywords (using buffer constructed by the
macro). Previously it returned true, indicating success.
+ improve parsing of range expressions in lex-filt.l, fixes a case
exposed by css-filt.l
+ correct a case where slowread() in dosmode would compute a correct
buffer size.
+ modify bat-filt.l to highlight "echo." consistently with M$ usage.
+ modify bat-filt.l to highlight "%*".
+ add syntax filters for bnf, css, midl, php and wbt (WinBatch).
+ modify syntax filters to use flex's character classes
packages with the modular Xorg equivalent. Those are falling back
to the old location by default, so this commmit doesn't change
dependencies.
graphics/xpm ==> x11/libXpm
fonts/Xft2 ==> x11/libXft
x11/Xfixes ==> x11/libXfixes
x11/xcursor ==> x11/libXcursor
x11/Xrender ==> x11/libXrender
x11/Xrandr ==> libXrandr
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
Several changes are involved since they are all interrelated. These
changes affect about 1000 files.
The first major change is rewriting bsd.builtin.mk as well as all of
the builtin.mk files to follow the new example in bsd.builtin.mk.
The loop to include all of the builtin.mk files needed by the package
is moved from bsd.builtin.mk and into bsd.buildlink3.mk. bsd.builtin.mk
is now included by each of the individual builtin.mk files and provides
some common logic for all of the builtin.mk files. Currently, this
includes the computation for whether the native or pkgsrc version of
the package is preferred. This causes USE_BUILTIN.* to be correctly
set when one builtin.mk file includes another.
The second major change is teach the builtin.mk files to consider
files under ${LOCALBASE} to be from pkgsrc-controlled packages. Most
of the builtin.mk files test for the presence of built-in software by
checking for the existence of certain files, e.g. <pthread.h>, and we
now assume that if that file is under ${LOCALBASE}, then it must be
from pkgsrc. This modification is a nod toward LOCALBASE=/usr. The
exceptions to this new check are the X11 distribution packages, which
are handled specially as noted below.
The third major change is providing builtin.mk and version.mk files
for each of the X11 distribution packages in pkgsrc. The builtin.mk
file can detect whether the native X11 distribution is the same as
the one provided by pkgsrc, and the version.mk file computes the
version of the X11 distribution package, whether it's built-in or not.
The fourth major change is that the buildlink3.mk files for X11 packages
that install parts which are part of X11 distribution packages, e.g.
Xpm, Xcursor, etc., now use imake to query the X11 distribution for
whether the software is already provided by the X11 distribution.
This is more accurate than grepping for a symbol name in the imake
config files. Using imake required sprinkling various builtin-imake.mk
helper files into pkgsrc directories. These files are used as input
to imake since imake can't use stdin for that purpose.
The fifth major change is in how packages note that they use X11.
Instead of setting USE_X11, package Makefiles should now include
x11.buildlink3.mk instead. This causes the X11 package buildlink3
and builtin logic to be executed at the correct place for buildlink3.mk
and builtin.mk files that previously set USE_X11, and fixes packages
that relied on buildlink3.mk files to implicitly note that X11 is
needed. Package buildlink3.mk should also include x11.buildlink3.mk
when linking against the package libraries requires also linking
against the X11 libraries. Where it was obvious, redundant inclusions
of x11.buildlink3.mk have been removed.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
Changes:
Highlights since 9.3:
+ Bug fixes, lots. See the CHANGES file for details.
General changes
===============
+ regular expressions and searches allow null characters.
+ minibuffer editing commands are more complete, implementing all of the
inline cursor search- and motion-commands.
+ implement new editing commands in the minibuffer: r, ~, x, X.
+ use insert-mode bindings when mini-edit mode is active. Use insert-key
to toggle, rather than set mini-edit mode.
+ modify buffer- and filename-completion on Unix to escape backslashes
which are stored in the [Completions] buffer. Doing this allows one
to complete a buffer or filename containing a backslash.
+ improve history-editing by quoting tokens which contain embedded blanks
or other special characters, using that to retrieve tokens from the
history buffer unambiguously.
+ save/restore window modes such as linewrap when rereading a file,
or when executing a shell command.
+ use realpath() if it is available, and "$VILE_PWD" environment variable
rather than "." as parameter to getcwd() if it is valid, to speed up
operation on quasi-filesystems such as ClearCase.
+ add configure option --with-screen=XawPlus for XawPlus library.
+ add configure option --with-screen=ncursesw to allow building the
curses driver using the wide-character version of ncurses.
+ add check in tcap.c for terminfo kmous capability like xterm, in case
we are running in screen, which also supports xterm mouse protocol.
+ modify support for "^X-e" to make it use the whole line if the current
buffer is a directory.
Locale Improvements
===================
+ change default for --with-locale option to yes. Note that this
option is only tested if locale support is found, and it is becoming
less common to encounter systems with broken locale support.
+ add "locale" to the "$cfgopts" variable if vile is compiled with
locale support.
+ modify vile-manfilt to decode UTF-8 emitted by groff 1.18
+ in UTF-8 locale, adjust termcap driver to use UTF-8 to display codes
in the 160-255 range, setting vile's locale to non-UTF-8 locale.
(yes, this is a short-term fix).
+ add configure check for wctype functions, to work around defect in
glibc's ctype functions: in UTF-8 locale, the latter return useless
information on character classes. This works on Solaris.
+ move upper/lower case-conversion into tables so that locale support can
augment the built-in translation.
New Commands
============
+ "which-keywords" macro shows the location of files containing keywords
for the given majormode.
+ "edit-buffer" simplifies "which-keywords" and similar macros.
+ "encode-attributes-til" and "write-encoded-til" convert the syntax
highlighting in a region back to control/A sequences, or write the
corresponding data to a file. There is a corresponding alias
"decode-attributes-til" for "attribute-cntl_a-sequences-til".
+ "substitute-all-til" implements the "^X-s" binding.
New Modes
=========
+ add "overlap-matches" mode, to control whether highlighting for the
visual-matches mode should skip to the next character, or past the
current match when checking.
+ add "percent-crlf" mode, which controls the threshold at which the
whole file will be considered DOS-format (CRLF record separators)
if the given percentage already ends with CR/LF.
+ "yankmotion" mode controls whether the cursor should be moved as in vi
after yanking text.
+ add "xterm-title" mode.
+ add logmode majormode, to distinguish some makefiles from logfiles.
+ add "texmode" majormode, as a variation of latexmode.
New Variables and Functions
===========================
+ add several short-named relational operators "&geq", ">", "&leq",
"<", "&neq", "&sgeq", "&sgt", "&sleq", "&slt", "&sneq" to reduce
the need for "¬".
+ add "$pathname-separator" variable.
Syntax Filters
==============
+ add Ruby syntax filter.
+ add syntax filter for rpm ".spec" files.
+ add syntax filter for PostScript ".ps" files.
+ add syntax filter for enscript ".st" files.
+ add xml-filter based on html-filter.
+ add pot-filt.l, to highlight ".po" files. Using sh-filt.l was
not satisfactory since the quoting rules were not close enough.
+ add syntax filters and corresponding modes for assembler (GNU and M$),
info and texinfo.
+ add -j option to c-filt.c, to implement some java-specific features
such as "$" as part of an identifier, and \u escapes.
+ add un-filters (atr2ansi, atr2html, atr2text) which convert encoded
control/A text to different forms.
+ modify spell.rc, spellflt.l and select.c to allow spell filter to
work as a built-in filter.
+ modify built-in spell filter to work with encrypted files.
+ add a -t option to filters, to pass tabstop value. Use this in
makefilt.l to provide better highlighting of problems with leading
whitespace.
+ modify manpage.rc to check if the current buffer is perl, and if so,
to render contents using pod2man or pod2text.
+ set "vilemode" for [History] buffer.
+ reorder lex-based filters to allow building with flex 2.5.31, which
introduces several incompatibilities with respect to flex 2.5.4
and lex.
+ add configure check/warning for flex 2.5.31, which has broken support
for the "-P" option used for built-in filters.