key thing (i.e., check whether display->tagnext is defined).
-----------------------------------------------------------------------------
Fixed in 2.2b-alpha:
/ In "man" display mode, any blank lines before a .P or similar command will
confuse elvis, preventing you from moving the cursor upward over a paragraph
boundary.
/ The :browse and :sbrowse commands need to be tweaked. They contain a
work-around for a minor bug in the "html" display mode, but that bug has
now been fixed, so the workaround (an extra space after )
should be removed.
/ Modify lowline() and lowoffset() so that if looking for a line near the end
of a block, the newlines are counted from the end of the block instead of
the beginning. That should be faster.
/ Add an "%%Orientation: Landscape" comment to ps2 output after "%%CreationDate"
/ UNC ("\\host\dir\file") names still don't work correctly under Windows.
This turned out to be due to a bug in the way elvis was checking
Cygwin's mount table. The bug only affected Cygwin users who had
something mounted as "/". For example, if "C:\" was mounted as "/"
then "\\host\dir\file" was being interpreted as "C:\host\dir\file."
/ On terminals with "brain damaged newlines" (the :xn: termcap flag),
modifying the last column on a line would have unpredictable results.
/ Add color support to the "html" lptype. ...
/ Can't print HTML documents via "-c" anymore? It dumps core.
/ lptype=html produces bad output. ">" is output as ">" without a ";".
Also, since 2.2a-alpha, it has been changing the font for each character,
instead of only between fonts.
/ Bug: Can't interrupt elvis with ^C or anything else, with any interface.
/ New features for searches:
/ 'i' flag for ignorecase, 'c' for noignorecase, 's' for smartcase.
/ 'w' flag to imply \< \> around regexp.
/ 'x' flag to imply ^ $ around regexp.
/ Vim's smartcase. Regexps that contain any uppercase letters force off
the "ignorecase" option temporarily.
/ Support for \i and \I character classes. \I is any char that can start
an identifier, and \i is any character that can appear later in an
identifier.
/ Vim's hlsearch option -- highlight *ALL* matches, without selecting them.
/ From Merijn Brand:
Something is broke in syntax highlighting. Try this on an excerpt from
the ColourChooser module [using ":display syntax perl"]:
$colour[1] =~ s/\s+//g ; # Colourname
$colour[2] = lc $colour ; # colour name
$colour[3] = $colour[2] ;
$colour[3] =~ s/\b(\w)/\u$1/g ; # Colour Name
$colour[4] = $colour[3] ;
$colour[4] =~ s/\s+//g ; # ColourName
for my $i ( 5..9 ) {
$colour[$i] =~ s/\d+$// ; # Remove trailing digits
}
and see what happens :-( to the first line.
now change the s/\s+//g to s/\d+//g. Ooooops!
/ ":color role1 like roll2 etc" includes all following text in the "roll2"
name. The "roll2" name *SHOULD* be exactly one word long every time.
/ On last line of a file, do "$v^=" to evaluate an expression. The expression
is stored on the last line, but the final newline is missing.
/ Add a :safely command. It temporarily sets the safer flag (like :safer)
while executing the rest of the line as an ex command (like :try or :then).
This would be handy if the "ex" protocol was implemented via a :readex
alias -- the alias could be smart enough to make "ex" links safe.
/ Add the :push command already! Like :e, except that it saves previous
position on the tag stack.
/ In "windows" GUI, after ":set number" you can't highlight whole lines via
the mouse. (The strip along the left edge of the window goes away?)
/ In "x11", the scrollwheel only works right in the text area. Other windows
treat it like any other mouse click. All wheel events should be treated
as though they occurred in the text area.
Fixed... but the statusbar never requests mouse events, so that area
is dead to scrollwheel events too. That's okay. I mostly wanted
to make sure scrollwheel events wouldn't do anything disastrous in
the toolbar.
/ Add a new() function, which creates a buffer but not a window, and returns
the name of the buffer. Optional argument is a desired buffer name, else
it uses "Elvis untitled %d".
This is the first time that functions will have side-effects. If you want
to evaluate an expression without displaying the result, just to get the
side-effect, then you could use the :if command without a :then.
/ "make clean" should remove the executables.
-----------------------------------------------------------------------------
Fixed in 2.2a-alpha:
/ Font/color changes:
/ Support the new :color syntax
/ :color can add other attributes: bold, italic, underlined, boxed, fixed.
/ This only specifies *CHANGES* to colors or attributes. Unspecified
colors are retained from previous font. Attributes are ORed.
/ Limits: 128 font names (so we can have standout versions).
/ Each font is stored as a struct containing a pointer to its name,
fgcolor index, bgcolor index, attribute bitmap. The name-to-index
conversion can be slow -- it is only used when a display mode initializes
itself.
/ When constructing a new screen image, for each character we store a font
index, optionally with a bit set to indicate a selection. This is compact
and should be good enough when comparing images.
/ After an image is generated, it is combined with the "normal" font to
inherit from it any colors/attributes which are not explicitly set.
elsewhere. The can also be an "idle" font.
/ Change all display modes to use new font convention.
/ Change all GUIs to use new font convention.
(Except "vio", for now.)
/ Change all printer drivers to use new font convention.
(Except "windows" is untested.)
/ Update the manual.
/ In input mode, make ^Z move rightward across any backspaced text, keeping
it instead of deleting it.
/ Change the version number to 2.2a-alpha
/ Add smartargs option for displaying a function's arguments.
/ Modify "ref" to look through elvispath. Put a file of ANSI C stubs into
elvis' lib directory and generate a "tags" file from it. This will allow
"ref" to act as a reference for the standard library.