source: ChangeLog @ 8e9acd2

Last change on this file since 8e9acd2 was 879e90dc, checked in by Nelson Elhage <>, 15 years ago
BarnOwl 1.1
  • Property mode set to 100644
File size: 67.8 KB
2 * Support building with -fstack-protector. -hartmans
3 * Don't save partial passwords in editwin history. -nelhage
4 * Improve IRC documentation. -nelhage
5 * Don't use the 'zsender' variable for personals. -geofft
6 * Implement irc-quote and irc-mode. -nelhage
7 * Leave a one-column margin when wordwrapping. -nelhage
8 * Remove some autotools-generated files. -andersk
9 * Include IRC in the default build. -nelhage
10 * Add a wordwrapping variant of the default style. -nelhage
11 * Don't send stderr to admin messages. -nelhage
12 * Remove a build-dependency on krb4. -hartmans
13 * Allow the creation of type zephyr messages from perl. -geofft
14 * Initialize Zephyr asynchronously at startup. -nelhage
17 * Implement initial support for real timers. -nelhage
18 * Fix some compile warnings. -nelhage
19 * Don't ignore the --datarootdir setting. -andersk
20 * Replace questionable sprintf(buf, "%s...", buf, ...) pattern. -andersk
21 * Show IRC /me messages with the conventional * instead of bold -andersk
22 * Rip out the openurl function and related variables. -andersk
23 * Stop leaking perl variables in :perl. -nelhage
24 * Display multi-line error messages as admin messages. -nelhage
25 * Fix a bug rendering multi-byte characters in the last column of the window. -andersk
26 * Map Esc-A/B/C/D like arrow keys everywhere. -geofft
27 * Fix a bug trying to disconnect from Jabber with no accounts connected. -asedeno
28 * Call perl_sys_init3 to make libperl work on several other platforms. -hartmans
29 * Bind the 'Delete' key to delete the next character. -andersk
30 * Fix a double-free in owl_zephyr_delsub. -geofft
31 * Don't fill-paragraph the ending dot of the buffer. -price
32 * Fix numerous unsafe uses of sprintf(). -nelhage
33        (Fixes CVE-2009-0363)
36 * Added a ':show quickstart' command. -geofft
37 * Allow filters that reference a sub filter more than once non-cyclically. -nelhage
38 * Make 'version' return 'BarnOwl' not 'Owl'
39 * Escape interpolated regexes in filters. -andersk
40 * Various code cleanups. -andersk
41 * Fix format string injection bugs. -andersk
42 * Clean up various code warnings. -nelhage
43 * Replace questionable sprintf(buf, "%s...", buf, ...) pattern. -andersk
44 * Show IRC /me messages with the conventional * instead of bold. -andersk
45 * Rip out the openurl function and webbrowser variable. -andersk
48 * Moved BarnOwl source control to git on github.
49 * Only call the zsig proc when we actually send a message. -asedeno
50 * Strip out BOMs from Jabber messages. -asedeno
51 * Fix logging of personal jabbers from JIDs containing / -nelhage
52 * Fix Jabber breakage under reload-modules. -asedeno
53 * Make reload-moduled correctly re-run startup hooks. -asedeno
54 * Squelch Jabbers with no bodies, such as typing notifications. -asedeno
55 * Various small spelling and grammar fixes. -geofft
56 * Fix a segfault when sending short zcrypted messages. -asedeno
59 * Fix :reload-module's interactions with PAR modules
[ddacb9c]62 * Fix a segfault on retrieving zephyr subs when the user doesn't
63   have any or has expired tickets. -asedeno
[dd28b51]64 * Don't complain about non-existant ~/.owl/startup when starting. -asedeno
[d8c456c]65 * Fix narrowing to personals in IRC. -alexmv
66 * Don't segfault retrieving subscriptions without valid tickets. -asedeno
67 * Load modules even if .owlconf doesn't run successfully. -nelhage
68 * Update the manpage for barnowl. -nelhage
69 * Better support for irc-names, irc-topic, and irc-whois. -geofft
70 * Display /quit messages in IRC -geofft.
71 * Add a new perl hook for all new messages. -geofft
72 * Fix a bug causing corrupted input in the editwin on end-of-line. -nelhage
73 * Add better support for adding hooks in perl that behave correctly
74       on module reload. -nelhage
75 * Added a :reload-module command to reload a single module. -nelhage
76 * Fixed quoting issues replying to jabber users or MUCs containing
77        whitespace or quites. -nelhage
80 * Remove an unneeded .orig file from libfaim/ - hartmans
81 * Update the copyright notice in ':show license' - nelhage
82 * Add a jabber:spew variable that controls whether unrecognized
83   Jabber messages (such as pubsub requests) are displayed. - nelhage
84 * Make the 'style' command assume the main:: package for
85   unqualified subroutine references. Reported by Jesse Vincent. - nelhage
86 * Rename doc/contributors to the more canonical AUTHORS - nelson
[6af4068]89 * Don't fail silently when sourcing a file; actually let the user know. - asedeno
[91258ca]90 * Only hang for 1s, rather than 10s, if there is no zhm - nelhage
[83b2ca6]91 * Merge the unicode branch to trunk. BarnOwl is now unicode aware
92   and can send, receive, input and display UTF-8 encoded
93   messages. Unicode changelog:
94   * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
95     variables. - nelhage
96   * Unicode branch: Fix building without zephyr. - asedeno
97   * Fix a unicode branch wordwrap problem. - asedeno
98   * Fixing an obscure wrapping bug that nelhage and I tracked down. - asedeno
99   * Rename to so Debian autoconf DTRT. - nelhage
100   *  Fix a bug in owl_editwin_move_to_previousword() which would skip over
101       single letter words. - asedeno
102   * I think I like this better. - asedeno
103   * Fix nelhage's key_left bug. Don't spin at the locktext boundary. - asedeno
104   * fix a typo in OWL_FMTEXT_UTF8_BGDEFAULT
105   * fix a parsing issue for attributes - asedeno
106   * Better compliance with UTF-8 processing. Stop trying
107     to pull in a UTF-8 character as soon as we know something has gone
108     wrong. - asedeno
109   * Removing more hackery I left behind after doing things
110     the right way. - asedeno
111   * editwin.c - fix a wrapping bug I introduced in the
112     last revision. It could leave us with a buffer that was not valid UTF-
113     8 - asedeno
114   * editwin.c - lots of utf-8 cleanup that I had been
115     putting off. util.c - a can we break here'' function based on perl's
116     Text::WrapI18N - asedeno
117   * Remove more bad hacks. - asedeno
118   * Remove a debug message I accidentally left in. Remove
119     the hours old check_utf8 hackery in favor of actually marking strings as
120     UTF-8 from the C side. - asedeno
121   * editwin.c: make locktext deal with UTF-8
122   * Jabber - More utf-8 sanitizing.
123   * Pet peeve - tabs. That should be the end of it for
124     now. - asedeno
125   * Shuffling a line of code to where it actually should
126     be. - asedeno
127   * Patches to jabber libraries for better UTF-8
128     handling. - asedeno
129   * fix a typo that was causing background problems
130   * pass defaults attributes through in the truncate functions - asedeno
131   * Eliminating a warning by un-internalizing a new fmtext
132     function. - asedeno
133   * Do not use bit 0x80 to indicate meta. We have other uses for that bit.
134   * shift it above ncurses's KEY_MAX instead. - asedeno
135   * drop unused struct member
136   * fixing post-processing in the editwin. - asedeno
137   * Preserve colors when highlighting search terms. - asedeno
138   * ignore KEY_RESIZE if we know what that is. We don't need an
139     unhandled keypress every time we resize the terminal. - asedeno
140   * more strict utf-8 byte fetching.
141     This probably still needs more work. - asedeno
142   * Strip formmating characters when dumping to
143     file. - asedeno
144   * fixing bugs in editwin bufflen calculations. - asedeno
145   * Fix search code so higlighting actually works. - asedeno
146   * Remove options for libcurses and libncurses. This really only works with
147     libncursesw. - asedeno
148   * text entry:
149    first pass at utf-8 text entry.
150   * Change wcwidth() calls to mk_wcwidth() - asedeno
151   * First pass at outbound zephyr -> iso-8859-1 sanitizing.
152     Not that we can input anything other than ascii yet...
153   * Fixing bug encountered when last field was not null-
154     terminated. - asedeno
155   * First pass at incoming zephyr -> UTF-8 sanitizing.
156     This only operates on incoming data so far. We still need to clean outgoing
157     data -- the plan is to attempt conversion to ISO-8859-1, and use that if it
158     works. - asedeno
159   * Reworked the fmtext format to use in-line formatting.  Characters used
160     for formatting are part of Unicode Supplemental Private Area-B, or
161     Plane 16.
162   * include wchar.h
163   * replace hand-rolled width detection with wcswidth.
164   * pad with space if we end up halfway into a character at the start of a line.
165   * UTF-8 - first pass
166   * make owl_text_truncate_cols() and owl_fmtext_truncate_cols() understand character width.
167     This may need more work. Some code duplication - see if we can refactor.
168   * stristr() rewritten to yse g_utf_casefold() instead of downstr(), and restructured to have a single return.
169   * only_whitespace() rewritten for unicode.
170 * Fix sending jabbers to JIDs beginning with `+' - nelhage
171 * Compile zcrypt.c with -w so I don't get all these warnings in my compile
172   output whenever I change any headers - nelhage
173 * Implement /me for outgoing IRC messages - geofft
174 * Add a makefile rule to support emacs flymake-mode - nelhage
175 * Bind the combinations the iPhone sends for arrow keys [probably other
176   terminals, too] - nelhage
177 * avoid null pointer dereference if msg is NULL (or a 0 length is
178   claimed) - shadow
179 * Move styles from the current mishmash of different options to a unified
180   perl object interface. - nelhage
181 * Refactor default style code somewhat to be more easily extensible - nelhage
182 * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
183   variables. - nelhage
184 * IRC: /list, /who, and /stats commands - geofft
185 * IRC: Make M-N mostly, rather than completely, useless. - geofft
186 * Fix two small bugs in styling pointed out by broder - nelhage
187 * Document create_style - nelhage
188 * Move time_hhmm into a format_time method - nelhage
189 * Remove prototypes from - nelhage
190 * Quote regexp filter elements with spaces in them. - asedeno
191 * Deal with smart-narrowing when the user's screenname has spaces in it. - asedeno
192 * Add a new struct member to the global to hold an escaped aim screenname.
193    populate the aforementioned new struct member. - asedeno
194 * Removed our debian subdirectory, per Debian guidelines, at broder's
195   request. - geofft
196 * Make `all' the first target so we build the modules by default - nelhage
197 * Commit inc/ under IRC so we build on systems with too old a M::I - nelhage
198 * updating contributors - nelhage
199 * Clean up licensing information and add a COPYING file - nelhage
200 * Update bugs email to a more professional looking address, and remove the
201   Development build warning. - nelhage
203BarnOwl r989 (2008-03-21)
204 * Stick modules on the beginning of @INC, not the end - nelhage
205 * Merge in the select branch. BarnOwl's main loop now uses a select()
206   based event loop rather than continually polling, and uses much less
207   CPU. - asedeno
208 * Fix a bug where an explicit (local) realm foiled
209   owl_message_get_cc_without_recipient(). (per quentin) - geofft
210 * HTML Filtering fix for BODY tag - austein
211 * Add parenthesis to fix a perl error in IRC - nelhage
212 * Make IRC admin messages actually display their content - nelhage
213 * Fix a file descriptor leak. - asedeno
214 * Fix loading PAR modules that weren't present at startup - nelhage
215 * Update documentation for the select() BarnOwl - nelhage
216 * Render IRC notices as normal messages - nelhage
217 * ensure that even if ioctl(,TIOCGWINSZ,) returns 0s we never set g->lines
218   (and g->cols) to 0 - shadow
219 * Generate less ugly error spew if a module fails to load - nelhage
220 * Added :webzephyr command with keybinding W. - geofft
221 * Fix a race condition in which zephyrs received during init are not noticed
222   until the next zephyr after entering the mainloop. - asedeno
224BarnOwl r941 (2008-02-18)
225 * unicode/glib branch Remove a debug message I accidentally left in. Remove
226   the hours old check_utf8 hackery in favor of actually marking strings as
227   UTF-8 from the C side. - asedeno
228 * unicode/glib branch Remove more bad hacks. - asedeno
229 * Rewrite ::Connection to not subclass Net::IRC::Connection to avoid stupid
230   namespace conflicts - nelhage
231 * svn:ignore for great justice - nelhage
232 * Attempt to load BarnOwl::MessageList::SQL and error if it fails. Note that
233   the aforementioned class n'existe pas - nelhage
234 * unicode/glib branch editwin.c - lots of utf-8 cleanup that I had been
235   putting off. util.c - a can we break here'' function based on perl's
236   Text::WrapI18N - asedeno
237 * unicode/glib branch editwin.c - fix a wrapping bug I introduced in the
238   last revision. It could leave us with a buffer that was not valid UTF-
239   8 - asedeno
240 * dropping one unnecessary time(NULL) call. - asedeno
241 * unicode/glib branch removing more hackery I left behind after doing things
242   the right way. - asedeno
243 * unicode/glib branch better compliance with UTF-8 processing. Stop trying
244   to pull in a UTF-8 character as soon as we know something has gone
245   wrong. - asedeno
246*        First prototype of a SQL-backed message list. This is probably
247        horribly broken, and is painfully slow at the moment. - nelhage
248 * minor changes to IRC
249 * Resizing should not leave the current message off screen. - asedeno
250 * Added initial IRC support. Not built or installed by default. - geofft
251 * Preserve colors when highlighting search terms. - asedeno
252 * Handle zephyrs to users on non -c message better [trac #39] - nelhage
253 * Make :reload-modules work correctly with PARs - nelhage
254 * Document (nearly) every public function in the BarnOwl:: namespace -
255   nelhage
256 * strip IRC coloring from IRC messages - nelhage
257 * Document ::Hook and ::Hooks - nelhage
258 * Nuke the stylefunc_default C code - nelhage
259 * Nuke some refs to owl_message_get_notice - nelhage
260 * Clearing the line should preserve the echochar. - asedeno
261 * Fix logins to - reported by gendalia - asedeno
262 * Move oneline style to perl. [trac #43] - nelhage
263 * Fix the error messages sending to users who don't exist or aren't signed
264   on. - nelhage
265 * Jabber Buddy Lists:
266  * Query the jabber:show_offline_buddies once when invoking onGetBuddyList()
267  * Don't bold online roster entries when hiding offline ones - asedeno
268 * Portability - removing C++ style comments. - asedeno
269 * Add the variable 'zsender' to customize the outgoing Zephyr
270   username. - geofft
271 * Bind M-left and M-right by default in the editor - nelhage
272 * eliminate a segfault. - asedeno
274BarnOwl r796 (2008-01-08)
275 * Define variables at the top of blocks for better ANSI C-ness (patch by
276   Chris Laas) [trac #18] - nelhage
277 * Implement :punt and :unpunt to punt arbitrary filters, rather than just z-
278   triplets. [trac #6] - nelhage
279 * Show non-personal pings like stock owl does. [trac #12] - nelhage
280 * Fix problems with jabber servers keeping the same stream id when
281   negotiating TLS tracked down by Greg Hudson. - asedeno
282 * When we're narrowing to an instance, properly include un-instances. This
283   fixes narrowing to any instance that starts with ``un-'' - nelhage
284 * Don't read before the start of the string for an instance - nelhage
285 * Adding an explicit -f - to the tar commands for FreeBSD compatibility
286   (reported by ecprice) - nelhage
287 * Some fixes for FreeBSD. - ecprice
288 * Do ~-expansion in :loadsubs. [trac #26] - nelhage
289 * Validate JIDs passed to jmuc join. [trac #25] - nelhage
290 * Show full JIDs for users in non-anonymous JIDs in :jmuc presence. [trac
291   #24] - nelhage
292 * Don't crash if we hit `i' on a zephyr containing non-ASCII iso-8859-
293   *. - nelhage
294 * added -m flag to aimwrite - matt
295 * aimwrite -m displays according to displayoutgoing - austein
296 * Make the usleep call more reasonable for less CPU usage - asedeno
297 * Add zip as build-depends - nelhage
298 * bind END in popless windows. [trac #41] - nelhage
299 * Allow C-r on outgoing messages (useful for CCs) - chmrr
300 * Identify ourselves as barnowl more consistently - chmrr
301 * Report subscription errors more accurately. - chmrr
303BarnOwl r751 (2007-08-01)
304 * Refactored message processing: All new messages, incoming or outgoing, get
305   added to the owl_global_messagequeue by protocol code, and then passed to
306   owl_proces_message, which serves as a single central code path for adding
307   messages to the message list. - nelhage
308 * Properly pass the usage when defining the jabberlogin command - nelhage
309 * Outgoing messages now log as much information as incoming messages - chmrr
310 * Fix a pointer corruption issue if we redefine the current style. - nelhage
311 * Adding 3 variables for the Jabber module: jabber:show_offline_buddies,
312   jabber:auto_away_timeout, jabber:auto_xa_timeout - asedeno
313 * Don't include self when replying to CC'd messages - chmrr
314 * Outgoing CC'd messages get logged to all recipients - chmrr
315 * Incoming CC'd zephyrs logged to all people they were sent to - chmrr
316 * Change the width at which we hard-wrap outgoing zephyrs by default so
317   that zephyrs will fit on screen with the default style. (suggested by
318   andersk) - nelhage
319 * Added a -s switch to change the location of the config dir (~/.owl) -
320   nelhage
321 * Don't allow you to go off the end of an empty message list. [trac
322   #9] - nelhage
323 * Allow you to send to -c message -i personal * - nelhage
324 * Make zephyr smartnarrow use the `personal' and `private' distinction
325   properly [trac #2] - nelhage
326 * Change the default personal filter to <message,personal,*> for
327   zephyr. - nelhage
328 * Display opcodes with the default style - nelhage
330BarnOwl r720 (2007-05-29)
331 * Correctly define a ``private'' zephyr as one that is sent to a
332    recipient that is neither empty nor starts with ``@'' - nelhage
333 * Fix builds under make -j - nelhage
334 * Fix sending of zcrypted zephyrs - nelhage
335 * Rewrite perl internals to factor out module loading. - nelhage
336 * Fix display of zephyrs with empty instances - nelhage
337 * Implemented a Module::Install plugin for building barnowl plugins - nelhage
338 * Modified the makefile to build and install perl modules - nelhage
339 * Fix the bug in which rejoining a MUC you're already in (nick change)
340   results in the MUC appearing multiple times when you show presence info for
341   all MUCs. - asedeno
342 * Implemented loading of both PAR and unpacked modules, and module
343   reloading. - nelhage
344 * Make the Makefile build and install perl modules on a clean install.
345   - nelhage
346 * Implemented an LRU cache of the message list fmtexts. This reduces
347   memory usage by roughly 1MB/kilo-zephyrs in steady state. - nelhage
348 * Escape $ in regexes (e.g. smartnarrowed instances)
349  - nelhage
350 * Adding 256-color support. This requires a version of ncurses that supports
351   ABI-6. Colors beyond the first eight are refered to by number. - asedeno
352 * Correctly escape {} and () in regular expressions - nelhage
353 * When generating filters, change single quotes and double quotes into
354   dots, so they line parser doesn't choke on them. This fixes problems
355   smart-narrowing to instances such as "this'll break it". - asedeno
356 * Improving the private/personal distinction:
357 * ``private'' means to/or from an individual, not a chat/class/etc.
358 * ``personal'' means ``matches the personal filter'' - nelhage
359 * Beep on personal messages, not private, by default.
360  - nelhage
361 * Some small doc fixes (thanks to jwalden for pointing them out). - nelhage
362 * Added the ability to define new variables from perl. - nelhage
363 * Documented said ability via BarnOwl::new_variable_* - nelhage
364 * Add a "setsearch" command which sets the search highlight string without
365   moving the cursor. - glasser
367BarnOwl r657 (2007-03-06)
368 * Fix libfaim to make it compile - nelhage
369 * Apply some memory leak patches by alexmv and yoz - nelhage
370 * Make smartnarrow un- and .d-aware - chmrr
371 * Add a `getstyle' command - asedeno
372 * Make Test failures print file/line numbers - nelhage
373 * Fixed regression tests for booleans variables. - asedeno
374 * Add a perl perl hook into owl's main loop. - asedeno
375 * Added the ability to install real commands from perl code - nelhage
376 * Fix a hang in owl_editwin_move_to_previousword - nelhage
377 * Updated the version number and startup message - nelhage
378 * Added initial support for creating and injecting messages into the display
379   from perl. - nelhage
380 * Added the ability for perl code to hang arbitrary reply commands off of
381   messages. - nelhage
382 * Expose the edit window hooks to perl - nelhage
383 * Removed references to -ldes - kchen
384 * Exposed owl_function_error and owl_function_makemsg as commands - nelhage
385 * Implemented initial Jabber support. - asedeno
386 * Implemented initial Jabber groupchat support. - asedeno
387 * Added a perl hook to the buddy list display - nelhage
388 * Added a get_data_dir function to the perl interface - hartmans
389 * Don't include the default typemap in xsubpp compile line - hartmans
390 * Cause perl to always be loaded, even if no owlconf is present. - hartmans
391 * Implemented an extensible perl module system - hartmans
392 * Exposed owl_fuction_popless_text() and owl_fuction_popless_ztext() to
393   perl - asedeno
394 * Support multiple simaltaneous Jabber connections - asedeno
395 * Fixed a segfault on subbing without a .zephyr.subs file - nelhage
396 * Implemented Jabber Roster support - asedeno
397 * Don't quit if we can't contact the hostmaster. - nelhage
398 * Support filters based on arbitrary message attributes - nelhage
399 * Rewrote and massively cleaned up the filter system internals. - nelhage
400 * Fixed the ``personal'' filter to work better with all protocols - nelhage
401 * Made `smartnarrow' more generic, and implemented it for jabber. - nelhage
402 * Changed executable name to "barnowl" - nelhage
403 * Renamed the `owl::' package to BarnOwl:: - nelhage
404 * Dynamically link perl libraries - nelhage
405 * Added background color support - asedeno
406 * Added idle-time tracking, and updated jabber to automatically set away
407   status - asedeno
408 * Implemented shortnames for jabber rosters and jwriting. - nelhage
409 * Fixed a crash when smartnarrowing to instances with lots of periods or
410   other regular expression metacharacters. - nelhage
411 * Support comments in ~/.owl/startup - asedeno
412 * Dispal tweaks for MIT's -c discuss messages. - asedeno
413 * Don't override perl's idea of the switches we need to do embedding. -
414   shadow
415 * Make the default style perl, rather than C. - nelhage
416 * Refactor the default style to be protocol generic - nelhage
417 * Prefer ~/.barnowlconf to .owlconf, if it exists. - nelhage
418 * Intern hostnames and message attribute keys for a slight memory
419   saving. - nelhage
420 * Use libncursesw when available - asedeno
423        Don't crash when sending/logging outgoing
424           AIM message and not logged in [BZ 90]
[0154e2d]425        Don't crash when senging to someone not on AIM buddy list [BZ 94]
426           (patch from Alex Vandiver)
[667a1b6]429        Don't crash doing zlocate with bad tickets. [BZ 12]
[7e6d1fd]430        Metion the path for the owlconf in intro.txt [BZ 54]
[95474d7]431        Print better error message if startup fails due to unreadable
[4e0f545]432           .owlconf [BZ 57]
[95474d7]433        In load-subs: Print an error message if the file is unreadable or
434          doesn't exist, UNLESS load-subs is called with no arguments.  In
435          that case only print an error if the file exists but isn't
436          readable.  Still prints an error either way if zephyr reports a
437          failure. [BZ 19]
[15b34fd]438        Fixed some small memory leaks in logging if files unwriteable
439        If the variable logfilter is set it names a filter.  Any messages
440          matching this filter are logged.  This is an independent
441          mechanism from the other logging variables.  If you want to
442          control all logging with logfilter the other variables must be
443          set to their default (off) settings. [BZ 37]
444        Relatively substantial changes made under the hood to support
445          filter logging.  Now have more consistent interfaces to
446          creating messages etc.  Still needs more work though.
[176d3443]447        Deal gracefully with being resized as small as 1x1 [BZ 3]
[8298425]450        Fix a new problem finding libdes425
[8232149]451        Don't crash on very long hostnames [BZ 52]
[74037d9]452        In 'sub' command, create .zephyr.subs if it doesn't exist [BZ 15]
[8232149]453        A fix for certain resize crashes (partly from alexmv) [BZ 55]
454        Turn off ISTRIP (gildea)
[fe39450]457        Include /usr/include/kerberosIV if it's found
[fe67f1f]460        Do OLC formatting for anything coming from olc.matisse
461        Improvements to popup size algorithm (from gildea)
[ca9142e]462        Improved 'show colors' with non-colored labels
[5e0b690]465        The colorclass command is added, to make colorization easy
[405d5e6]466        Handle MIT Athena OLC zephyrs correctly
467        Updated ktools website / bug address
[789462a]468        Do ntohs() when printing zephyr port in zephyr info
[f5729b7]469        Updated man page
[1bb1e67]472        Fixed three bugs found by Valgrind.
[d4b84c0]473        Fixed a case where doing "aim addbuddy" instead of "addbuddy aim"
474          would cause a segfault.
[afbf668]475        pexec will now incrimentally display data as it is output
476          by the child process.  Additionally, commands running under
477          pexec may now be killed by quitting out of the popless window.
478        Added muxevents select loop dispatcher.  File descriptors may
479          be registered with muxevents and handlers will be dispatched
480          to when data is available for non-blocking read/write/except.
481        Switched the stderr_redir stuff to use muxevents.
[948b942]482        Print C-\ correctly (from gildea)
483        Dropped first brace in muxevents functions for consistency
[fe1f605]484        Catch SIGHUP and SIGTERM and do a proper logout
[5ca5f8e]487        Added a licence
[5d365f6]488        The 'personalbell' variable can now be set to 'on' 'off' or
489          the name of a filter to match against
[e22f27c]490        The 'loglogins' variable now controls whether login/logout
491          messages are logged.  It is off by default.  For now this
492          affects only AIM messages, later zephyr login/logout messages
493          will also be logged if this is set to 'on'
[debb15d]494        Added 'show license'
[421c286f]497        Normalize and downcase AIM names for logging
[8ba37ec]498        Fixed a bug where sending a null zsig could cause a crash
499        Better 'away' toggling if only one protocol is away.
[32eed98]502        Added perl filter elements.  Similar to having "filter <subfilter>"
503          in a filter, you may also have "perl <functionname>"
504          where <functionname> is passed an owl::Message object and
505          returns 0 or 1 depending on whether the message matches
506          that element of the filter.
[4357be8]507        Don't print an error about loading subs if there is no
508          .zephyr.subs
509        Do the initial zephyr_buddy_check when pseduologin set to true.
[ddd02df]510        Updated man page
513        removed unused filter_depth variable
514        Fixed memory bug on receiving pings
[40458b9]517        Filters of filters now work.
[5c1393d]518        Removed the "possibly not readable" part of the config parsing
519          error
[330bcec]520        In the sepbar, reverse video the view name when it's not set to
521          view_home (as opposed to the static 'all').
[3895e23]522        The '!' key (bound to 'view -r') now creates a negative version of
523          the current view and switches to it.  i.e. "show me all the
524          messages that are not these"
[280ddc6]525        Added the 'ignorelogins' variable
[2b86d14]526        Log when outgoing personal message fails
[81634b6]527        Removed file descriptor from sigpipe catcher printer just for now,
528          since the field does not exist on OSX
529        Added an ifndef for socklen_t in libfaim/ft.c
[952bb256]530        Added the 'aim search' command.  The popup on callback may be
531          dangerous, should switch to an admin msg for results, or add a
532          new event queue
[9854278]533        First pass at AIM away messages.  It is a little different from
534          what most clients seem to do, in that an away reply is sent for
535          each message received.  Most clients only reply to the first one
[4b660cc]536          per away-session.
537        Now have a set of 'aaway' commands and variables just like the
538          'zaway' ones (except that changing the 'aaway' variable talks to
539          the server)
540        The new 'away' command does everything for both AIM *and* zephyr.
541          There is a known funkiness here, where if you turn one away on,
542          and then use 'away' (or 'A') to toggle, you will turn on off and
543          the other on.  Just leaving it for now.  Should do better in the
544          next patch.
545        The 'A' key is bound to 'away'
546        Status bar can now read AWAY, Z-AWAY or A-AWAY.
[8b16467]547        Changed C-n to scroll down just a line in popless
[c3acb0b]548        If the config exists but is not readable, print an error before
549          exiting
[e7bcd1b]550        Only print forced AIM logout message once.
[2674412]551        Don't bind F1 to help in edit context
[c8735aa]552        Fix bug in 'getsubs' with no tickets
[5a95b69]553        New code for getting users from .anyfile
554        Added the 'pseudologins' variable, and code to do it
555        new attributes 'pseudo' 'logintty' and 'loginhost'
[72836b5]556        Don't print extra new lines in popless_file
[b0430a6]557        New zephyr_get_field function
[d9b0b972]560        Fixed missing word in startup message
561        Better 'status' command
[ad96951]562        Use '+' for popwin corners when 'fancylines' is off
[b20de4f]563        Allow TERMINFO to be overridden in the envrionment
[a68f05d]564        Command line arg -D turns on debugging and deletes previous
565          debugging file
[f36222f]566        Do ~ expansion in 'dump' command.
[b6a7367]567        Current directory added to 'status' command
[b1fe407]568        Massive changes to libfaim and aim
[a0a5179]571        Changed startup message for new mailing list
[f1645da]572        blist now prints AIM info even if .anyone is unreadable
[c9e72d1]573        Catch SIGPIPE and print an error rather than crashing.
574                [It's possible that this may have some portability
575                issues under Solaris and we may need to add some
576                configure stuff around SA_SIGINFO...]
[1e34e40]577        Handle the case in aim_bstream_send where aim_send returns -1,
578                although there is likely an underlying problem here
579                that would lead to this case.
[f82e233]580        Print the username on aim login failure, not something random like
581                the password.  ;)
582        Un-word-wrap text when sending AIM messages.
[1fd4cd3e]583        Replace the main loop continue in the keyboard handler with an else.
[5a9f6fe]586        Command history now doesn't allow the last entry
587           to be repeated
588        If format_msg returns "" print "<unformatted message>"
[97cd00be]589        Better align oneline admin and loopback messages
[252a5c2]590        Print an admin message indicating when subscriptions can
591           not be loaded on startup
[1db061d]592        Set aim_ignorelogin_timer to 15 by default
593        Admin message on login/logout of AIM
[cee1f25]594        Fixed double quoting in smartzpunt
[c7041b3]595        Added timestamp to login/logout messages
[12c35df]596        Fixed replies to loopback messages
597        Fixed smartnarrow on classes/instances with spaces
598        Added the 'loggingdirection' variable
599        All loopback messages log to 'loopback' now
600        Print an error message if trying an invalid color for a filter
601        Fixed bug causing > not to go to end of editwin every time
[15283bb]604        Updated basic help
[db2dd3d]605        Display CC: in outgoing CC messages
[8c92848]606        More AIM logout detection
607        Don't proclaim "interfaces changed" on first build.
[37eab7f]608        Added the 'loopback' message type
609        Added the 'loopwrite' command
[25dd31a]610        Added a timestamp to the default style
[bc08664]611        Zpunt now works with weird regex characters
[995eb4b]612        Smart filters now work with weird regex characters
[49d467c]615        Allow 'hostname' in filters.
[269ed34]616        Fixed bug in reporting when no one is subbed to a class
617        Added an extral newline in logging incoming zephyrs
[1077753b]618        An admin message is displayed when you are logged out of AIM
[a836200]619        Print an error message and admin message if an AIM send fails
[c15bbfb]622        Added the 'fancylines' variable.
[f17bff98]623        Added the 'show startup' command.
[4664c96]624        Added feature for capturing stderr messages
625           from commands and displaying them in the errors buffer.
[9119a47]626        Create an admin message explaning that a zephyr couldn't
627           be sent
[27c3a93]628        Better reporting of perl errors (both into the errqueue
629                and also clearing the error after displaying it).
630        Allow default_style to be specified in config.
[6a50af2]631        Added errqueue
632        Added command "show errors"
633        Fixed bug removing newlines in backup files
[8a54409]636        Increased size of screen name field in buddy listing
[f4d0975]637        Fixed bug with idle times causing broken pipes.
638        New libfaim
[2404c3a]639        Added the 'source' command.
[282ec9b]640        Make sure that a newline is always at the end of messages
641                returned by perl style formatting functions.
[c82b055]642        Add owl::login and owl::auth to legacy variables populated for format_msg.
643        Additions to intro.txt and advanced.txt documents.  (Still in progress.)
[87c6ef1]644        Add base methods for login_host and login_tty
645                and others that return undef.
[f1e629d]646        New API for perl message formatting functions. 
[c5f3b46]647                Legacy variables are still supported for owl::format_msg
648                and owl::receive_msg, but these functions are now also
649                passed an owl::Message object which contains methods
650                for accessing the contents of the message.  See
[f1e629d]651                (and docs TBD) for the available methods.
652                *** WARNING:  The exact API for owl::Message has
653                *** not yet stabilized.
654        Added "style" command for creating new styles.
655                Usage:  style <name> perl <function_name>
656        Added support for "show styles".  Changed global style table
657                from list to dictionary.
658        Changed AIM password prompt from "Password:" to "AIM Password:".
659        Messages are reformatted after a window resize to allow styles
660                to take into account the width of the window.
661        When perl throws an error, the message is put in the msgwin
662                if possible.
663        Added perl functions for:       
664                owl::getcurmsg() -- returns an owl::Message object for
665                                    the active message
666                                    in the current view.
667                owl::getnumcols() -- returns the column width of the window
668                owl::zephyr_getrealm() -- returns the zephyr realm
669                owl::zephyr_getsender() -- returns the zephyr sender
670        Made owl::COMMAND("foo"); be syntactic sugar for
671                owl::command("COMMAND foo");
672        Added to contain perl code to be compiled into
673                the binary.  This is transformed into perlwrap.c by
675        Renamed readconfig.c to perlconfig.c and changed variables accordingly.
676        Minor bugfixes in cmd.c and commands.c
[6873455]677        Improved intro doc
680        Idletimes now appear in the buddylisting
[c045455]681        Failed AIM logins are now correctly reported
[a352335c]682        Owl will build now without zephyr, enabling it to act as a
[e6449bc]683          standalone AIM client.
[a352335c]684        There is now a zcrypt command
685        Replies to zcrypted messages now work
686        Don't allow zwrite if zephyr isn't present
[e6449bc]687        Cleaned up some warnings from linux gcc.
[210c261]688        Fixed bug that can cause response stuff to crash
[a352335c]689        Improved status command
690        Fixed bug in buddy stuff
[453bd70]693        aimlogin will now accept the screenname without a password and ask
694           for the password such that it is not echo'd to the terminal
[6a87084]695        'addbuddy aim' and 'delbuddy aim' now work
[e016fc2]696        Bug fix to make zwrite -m work with -c/-i
[7c9c847]697        Fixed documentation bug in aimwrite
698        Initialze $owl::auth
[e016fc2]699        Fix in autoconf for des425
[7c9c847]700        Reformatted editwin.c and added capability of doing password-style
[c9334b1]701           echoing
[0435c7d]704        Fix in finding des for building zcrypt
[b278973]705        Fixed description for alert_action variable
[e7cc1c3]706        More detailed usage from -h
707        Special cased replies for webzephyr users on classes and
708          login notifications for webzephyr users
[5bb6c21]709        Fixed bug that caused a crash on zpunt with '*' for an instance
[dff8d8a]710        AIM logout and then login now works.
[94e4899]711        Fixed bug causing view -d not to work.
[778d0a9]712        Added hostname and tty name to LOGIN/LOGOUT zephyrs on oneline
713          style
716        Made command line option -n actually work
717        Implemented styles, including the 'default' 'basic' and 'oneline'
718          styles.  A 'perl' style is available if a format_msg() function
719          is found in .owlconf
720        Added the 'default_style' variable
721        Added the 'toggle-oneline' command
722        The 'o' key is bound to 'toggle-oneline'
723        Internally, the one view now has a name, 'main', and message
724          recalcuations are done in place when its filter is changed.
[0c502e9]725        Added filter field 'login' which can take the values 'login'
726           'logout' or 'none'
727        Added the perl variable $owl::login, just as above
728        Updated the 'login' and 'trash' filters appropriately
[4d42508]729        Fix for checking for DES in build system
730        Bug fix in using makemsg when no curses window is present
731        The variable $owl::auth now exists in perl
732        Use new internal function to delete zephyr subs from file
733        New 'sepbar_disable' variable can turn off sepbar info display
[73624b4]734        Updated contributor info
[4d42508]735        Added the 'show view' command
[a6560fe]736        Bug fix in owl_regex
[79a0e82]737        Fixed personal aim messages logging to class directory
[4d42508]738        Log "LOGIN" or "LOGOUT" for AIM buddy messages
739        zwrite -m now correctly displays an outgoing message and logs
[ce7db4d]740        zwrite -s now works
[4d42508]741        Strip spaces in AIM usernames on aimwrite send
[e75713e]742        Removed libfaim/config.log from CVS
[a8938c7]743        Fixed some easy fixed-length buffers
[4d42508]744        Wordwrap incoming AIM messages
[ceb8cfb]745        Fixed bug causing buddies not to be added to buddy list during
746          ingorelogin timer
[8d24696]747        Translate &lt; &gt; &amp; &quot; &nbsp; &ensp, &emsp, &endash and
748           &emdash
[dafd919]751        Don't ring the terminal bell on mail messages.
752        Nuke <FONT>
[b2b0773]753        Make the build work a little better on OSX
[6bf73ce]754        Fixed a bug in fmtext
[6e05655]755        Expanded the size of the hostname buffer
758        Fixed bug in 'startup' command.
[aaf6071]761        Moved newmsgproc stuff to a function procedure
[2c8d62e]762        Added the 'newlinestrip' variable, on by default, that strips
[7e3e00a]763          leading and trailing newlines from incoming messages.
[a2641cd9]764        Fixed a case sensitivity probelm in owl_message_is_personal and
765           owl_message_is_private
[d0d65df]766        The message object now uses a list of attributes internally, in
767          prep. for supporting new messaging protocols
768        owl_function_info now uses fmtext instead of one staticly sized
769          buffer
[985f85b]770        in owl_message_get_cc() require that the colon be present after
771          cc.
[f2f9314]772        Added some defenses against resize crashes, and put in debug
773          messages if they're encountered
[89426ab]774        In filters 'true' and 'false' are now valid tokens.
775        The 'all' filter has been redefinied to be 'true' and there is a
776          'none' filter defined as 'false'
[060b3b4]777        Fixed bug in 'unsub' command that could cause file corruption
[ced25d1]778        In the zlist function, give a more detailed error message if
779          the file cannot be opened.
780        Renamed old instances of zsig_exec in the code to zsigproc
781        Don't print the stderr from zsigproc
[7933748]782        Added a 'loadloginsubs' command to load login subscriptions from a
783          file
784        Added a 'loadsubs' command to eventually phase out the 'load-subs'
785          command
[ed2412d]786        Made M-n work on classes and instances with spaces in them
[7c8060d0]787        Zaway now obeys the smart strip variable
[316962a]788        Hacked the build system to not have the -E link problem on Athena
[8262340]789        Added ZResetAuthentication in a number of places to fix problems
790          with stale tickets
791        Added some hooks for malloc debugging
[ecd5dc5]792        M-p is bound to 'view personal' by default
793        loadsubs and loadloginsubs only print messages if in interactive
794          mode
795        added the 'alert_filter' variable, defaults to 'none'.
796        added the 'alert_action' variable, which is an owl command that
797          will be executed when new messages arive that match the
798          alert_filter
799        added the 'term' command which takes the 'raise' and 'deiconify'
800          options.  It assumes xterm for now.
[e9b1f60]801        only 'make distclean' will nuke core and ~ files now
[d54838d]802        fixes to owl_function_do_newmsgproc from Stephen
803        converted functions.c to new code style, which I'm giving a shot
[ac70242]804 define DATADIR, for default owlconf.
805 provide "all" and "install" rules.
806 try also libdes and libkrb4, for people using heimdal
807 see if des_ecb_encrypt is already prototyped.
808 minor changes to work with new autoconf without needing acconfig.h.
809 find the install program.
810 test for use_default_colors since some versions of
811          solaris don't have it, so we can at least compile something
812          vaguely working there.
813        keypress.c: ifdefs for keys not defined on at least some solarises.
814        owl.c: don't call use_default_colors if we don't have it
815        readconfig.c: added *commented out* code to try to find a
816          system-default owlconf if the user doesn't have one.  Have to
817          ponder if I want this
818        zcrypt.c: don't prototype des_ecb_encrypt if there is a prototype in
819          des.h.
820        zcrypt.c: include owl.h so we get the configure-generated config.h
821        Change to to deal with new code style
[69894d2]822        Remove some ancient stuff from zcrypt.c
[aaf6071]823        General cleanup to
[f87c490]824        CTRL and META are now OWL_CTRL and OWL_META.  OWL_CTRL moved to
825          keypress.c
826        do_encrypt declaired static
[c269e22]827        if we don't have des functions, do not try to build in zcrypt
[d09e5a1]828        kill the newmsgproc function on exit
829        Added libfaim
830        Added basic AIM support, including the "aimlogin", "aimwrite" and
831           "aimlogout" commands
[31e48a3]832        New built-in filters 'aim' and 'zephyr'.
833        Do ZResetAuthentication() before zlog_in and zlog_out as well.
[fd93b41]834        Print AIM login / logout notifications
835        The 'alist' command prints a list of aim buddies logged in
836        The 'blist' command prints users from all protocols
837        The 'l' key is now bound to 'blist' instead of 'zlist'
838        Started work on 'addbuddy' and 'delbuddy' command but they DO NOT
839          WORK yet
840        Removed a bit of faim code that allowed commands to be executed.
[38cf544c]841        The 'B' key is now bound to 'alist'
842        Added the 'startup' and 'unstartup' commands
843        The $HOME/.owl directory is created on startup if it does not exist
[65ad073]844        Added the 'aim_ingorelogin_timer' variable
845        'addbuddy zephyr <user>' and 'delbuddy zephyr <user>' now work.
[5789230]846        'isloginout' and 'isprivate' are now message attributes
847        improved 'info' function lists seperate info for zephyr, aim and
848           also prints all message attributes
[aac889a]849        AIM logging (both in and out) now works
850        Disabled 'addbuddy' and 'delbuddy' for aim since it doesn't work yet
[dafd919]851        Hacked the Perl build stuff not to link with iconv
854        Class pings are displayed differently now
[ddb8252]855        Updated owlconf.simple example to format outgoing messages.
858        Outgoing messages now go through the config for formatting
[d023c25]859        Zaway now makes an outgoing message, instead of an admin message
[2527615]860        The 'zlocate' command can now handle multiple users
[aa2f6364]861        The simple user format for "To:" is in effect again
862        Prettyed up the zwrite line for using 'reply' on a zaway
[aecf3e6]863        Added a workaround for a libzephyr bug that caused zwrites to fail
864          if zephyrs were sent just before and just after renewing tickets
[d309eb3]865        Fixed a memory bug in getsubs
866        Added receive support for zcrypt messages
867        Added the 'zcrypt' variable which controls whether or not zcrypt
868          messages are decrypted
869        'reply' is disabled for zcrypt until sending zcrypt works
870        Started implementing zcrypt command
[a15a84f]871        More updates to the intro doc
874        Started adding code for newmsgproc.  It doesn't fully work yet!
875          Don't use it.
[55faab7]876        Added search, '/' and '?' to basic help.
[486688f]877        Will attempt to keep the current message as close as possible
878             to the previous current message after an expunge.
879        "set <variable>" and "unset <variable>" now work for boolean variables.
[88736cb]880        Fixed a bug in owl_function_calculate_topmsg_normal that caused a
881          segfault
882        Fixed some typos in the intro doc
[2adaf1d]883        Removed old zlog functions from zephyr.c
884        Implemented the dump command
885        New startup message
888        Patch to fix memory bug in replying to CC messages
889        If we're on Athena and have static krb (or other) libraries, use
890          them
891        Added "athstatic" program to the release, which handles the above
892        Cast to an int for isspace, to make gcc -Wall quiet
893        Added 'zlist' and 'l' to basic help.
896        'zlog in' will now take an optional thrid argument to set the
897             'tty' variable before setting the zlocation
[42abb10]898        There is now a 'zlist' command that acts like 'znol -l'
899        'l' is bound to 'zlist'
[62f24bc]900        Fixed memory leak uninitialzed memory read in fmtext
[3a2daac]901        viewwin will now say "End" instead of "More" when at the end
902        Added a debugging message indicating the result of topmsg
903          calculations
[65fc0900]904        You can now use %me% in filters
905        The built-in personal filter is updated to do so
[486688f]906        Fixed a bug in moving the pointer after an expunge
[f9c43ae]907        Fixed up the normal scrolling code.  Now it should always
908          land on a message, but it's still not optimal.
909        Added the variable 'smartstrip' which will strip kerberos
910          instances out for the 'reply' command.
911        Added -R/usr/athena/lib to the build for Athena
[bde7714]912        Started updating the intro document
913        Small changes to help / about
914        The 'subscribe' and 'unsubscribe' commands (and their aliases) now
915          update .zephyr.subs by default.  If either is given the '-t'
916          (for "temporary") option the .zephyr.subs will not be updated
[5a6e6b9]917        Turned off beeping for hitting the top or bottom of the list of
918          messages
919        Made daemon.webzephyr a special case for smartstrip
920        Added 'out' as a default filter for outgoing messages
923        Added filters "ping", "auto" and "login" by default.
[75be7c0]924        Added "body" as a valid field to match on in a filter.
[4b464a4]925        Temporary fix to bug where C-SPACE would cause the key handler to
926             lock up.
927        Messages now have a direciton (in, out or none).  Filters can
[5145235]928             match on this direction
[4b464a4]929        Outbound messages are no longer type 'admin' but are of the
930             appropriate message type (i.e. 'zephyr') and are direction
931             'out'.
932        Smartnarrow now works on outgoing messages
933        'info' updated to show more information for admin and outgoing
934             messages
935        Renamed pretty_sender to short_zuser and renamed long_sender to
936             long_zuser
[56330ff]937        Moved zsig generation to the zwrite object
938        Print the zsig used for outgoing messages
[61e79a9]939        The tty variable now controls the zephyr location tty name
942        Added the 'search' command.
943        '/' is a keybinding for 'search'
944        '?' is a keybinding for 'search -r'
945        Fixed stristr, which was completely broken
946        renamed owl_fmtext_ztext_stylestrip to owl_function_ztext_styletsrip
947             and put it in functions.c
[59cf91c]948        Attempts to stay near the current message when switching views.
949             When switching from an empty view to one we've previously
950             been in, the new current message position will attempt
951             to be close to the current position from the last
952             time we visited that view.
[67103d4]953        Fixed bug in readconfig.c that prevented building under perl 5.005.
954        Switched "C-x C-x" to only "startcommand quit"
[9bd2c17]955        'getsubs' prints closer to the order you sub in.
[5eeea3b]956        Modified the behavior of last so that "> >" will clear the screen.
957        The new behavior of last is:
958              Moves the pointer to the last message in the view.
959              If we are already at the last message in the view,
960              blanks the screen and moves just past the end of the view
961              so that new messages will appear starting at the top
962              of the screen.
963        Fixed a typo in the help for smartzpunt.
964        Fixed functions to handle curmsg being past the end of the view.
967        New framework for command handling.
968        New framework for keymap handling.
969        Added commands for everything that is bound
970             to a key (do 'show commands' to get the full list).
971        Added 'multi' and '(' commands to allow multiple commands
972             to be specified on a line.             
973        Added user keybindings with bindkey command.
974        Added command aliases (eg, "alias foo bar").
975        Added undelete command that parallels the delete command.
976        Added additional options to delete command.
977        The reply command now takes arguments.
978        Added 'edit:insert-text' command.
979        Added 'show zpunts' to show active punt filters.
980        Added 'show variable <name>' and 'show variables'.
981        Added 'show command <name>' and 'show commands'.
982        Added 'show keymap <name>' and 'show keymaps'.
983        Added 'M-u' to undelete all messages in current view.
984        Fixed dotsend so that the zephyr will still send if there
985             is whitespace after the dot but not on the same line.
986             This should resolve an issue where dotsend wouldn't work
987             if you'd gone up and edited a zephyr.
988        Bug in page down fixed
989        C-t will transpose characters
[aa2f33b3]990        Fix the scrolling bug where we would sometimes fail to scroll
991             the screen down, leaving the current message off
992             the bottom of the screen.
[8509c08]993        Refixed 'login or login' typo in help
994        Fixed M-u description
995        Removed 'first' and 'last' from basic command help
996        Added M-N to basic key help
997        Added M-D, M-u to basic key help
998        Fixed a quoting problem in
999        Changed top of help to use 'show' instead of M-x
1000        Fixed a bug in the summary field for user-created aliases
1001        Added "reply zaway" which sends a zaway response to the current msg.
1002        Added "edit:delete-prev-word" command and bound M-BACKSPACE to it.
1003        Some buffer overruns fixed
1004        Variables now have a summary and a long description.
1005                Only the summary is shown with help.
1006                The long description is shown with "show variable foo".
[aa2f33b3]1007        Added a 'scrollmode' variable which determines how the screen
[8509c08]1008             will scroll as the cursor moves.  The default behaves
1009             identically to previous versions of owl.
[aa2f33b3]1010             The following modes are supported:
[8509c08]1011             normal      - This is the owl default.  Scrolling happens
1012                           when it needs to, and an attempt is made to
1013                           keep the current message roughly near
1014                           the middle of the screen.  (default)
1015             top         - The current message will always be the
1016                           the top message displayed.
1017             neartop     - The current message will be one down
1018                           from the top message displayed,
1019                           where possible.
1020             center      - An attempt is made to keep the current
1021                           message near the center of the screen.
1022             paged       - The top message displayed only changes
1023                           when user moves the cursor to the top
1024                           or bottom of the screen.  When it moves,
1025                           the screen will be paged up or down and
1026                           the cursor will be near the top or
1027                           the bottom.
1028             pagedcenter - The top message displayed only changes
1029                           when user moves the cursor to the top
1030                           or bottom of the screen.  When it moves,
1031                           the screen will be paged up or down and
1032                           the cursor will be near the center.
1033        Added owl_sprintf which returns the formatted string, or NULL.
1034                The caller must free this string.
1035                This will allocate enough memory and thus
1036                avoid potential some buffer overrun situations.
1037        Simple implementation of 'zwrite -m' (doesn't yet log an outgoing
1038                message as having been sent.)
1039        The "Not logged in or subscribing to messages" error
1040                now includes the name of the recipient.
1041        The "disable-ctrl-d" variable may also be set to "middle"
1042                which will result in ctrl-d only sending at the
1043                end of the message.  This is now the default.
1044                This also added a command "editmulti:done-or-delete".
1045        Fixed a bug in the "reply -e" command.
1046        Always clear the command buffer before executing the command.
1047                (So that interactive commands can sanely do start-command.)
1048        Fixed preservation of e->dotsend across owl_editwin_clear().
1049        Added history for multiline edit windows (eg, for zephyr composition).
1050                The M-n and M-p keys will cycle through the history ring.
1051                In particular, it is now possible to edit the command line
1052                of a zephyr being composed:  C-c it and restart it
1053                and then M-p to get the aborted composition back.
1054        Added owl::send_zwrite(command, message) to the perl glue
1055                to allow for the direct sending of multi-line messages.
1056                For example:  owl::send_zwrite("-c foo -i bar", "hello");
1057        Changed owl_fmtext_print_plain to return an alloc'd string to
1058                avoid buffer overrun risks.
1059        Added owl::ztext_stylestrip("...") function to perlglue
1060                 which returns the ztext with formatting stripped out.
1061        Added colorztext variable which can be used to disable @color()
1062                 strings arriving in messages after it is set.
1063                 (Currently, changing its value won't reformat messages).
1064        Outgoing zephyr logging now obeys the logpath variable.
1065        The '~' character in logpath and classlogpath now gets
1066                 replaced with the user's home directory.
1067        Added simple implementation of smartnarrow-to-admin that
1068                 creates a "type-admin" autofilter.
1069                 This was done mostly so that M-C-n and M-C-p do something
1070                 sane on admin messages.
1071        Added opera to the allowed options to the webbrowser variable.
1072        Fixed some buffer overruns in the "reply" command.
1073        When repying to "all" on a message that begins with "CC:" (eg, sent
1074                 with "zwrite -C", the reply line will be constructed
1075                 from the sender and the usernames on the CC: line
1076                 of the message being replied to.
1077        There is no such thing as C-R, so left C-r as it is but added:
1078                 M-r --- edit reply to all
1079                 M-R --- edit reply to sender
1080        Added RCS Id strings to all files.
1081        'show keymaps' shows details of all keymaps after summary list.
1082        Added --no-move option to delete command.
1083                In particular, delete-and-always-move-down may now
1084                be implemented with
1085                '( delete --no-move ; next --skip-deleted )'.
1086        Folded the nextmsg and prevmsg commands and functions together into
1087                one command which takes arguments.
1088                Added '--filter <name>' option (eg, for next_personal),
1089                '--skip-deleted' option, and
1090                '--last-if-none'/'--first-if-none' options.
1091                Help updated accordingly. 
1092                In particular, the 'personal' filter is now used
1093                for 'next personal'. 
1094                Added --smart-filter and --smart-filter-instance options
1095                to the next and prev commands.
1096        Updated examples/owlconf.erik with the above.
1097        Made owl_function_fast*filt return a string and not do the
1098                narrowing, to make it more general.
1099        Added a smartfilter command that creates a filter
1100                based on the current message and returns the name
1101                of the filter.
1102        Added M-C-n and M-C-p keybindings to "move to next message
1103                matching current" and "move to previous message
1104                matching current"
1105        Added variables edit:maxfillcols and edit:maxwrapcols which
1106                will limit how wide editing paragraphs may get before
1107                they get wrapped.  This is a max and may be narrower
1108                depending on the current size of the window.
1109                If 0, the max is unlimited.  Default is 70 columns for
1110                edit:maxfillcols and unlimited for edit:maxwrapcols.
1111        Added smartzpunt command with key binding of "C-x k".
1112                This starts a zpunt command filled in with
1113                the proposed zpunt.
1114        Fixed a memory reference bug in delete and undelete commands.
1115        Added support for perl to call directly back into owl.
1116        Changed the implementation of owl::command("...") to immediately
1117                call back into owl.  This allows perl to get the return
1118                value of strings returned by owl commands.
1119        Added the getview command which returns the name of the current
1120                view's filter. 
1121        Added the getvar command which returns the value of a variable.
1122        Added an example to examples/owlconf.erik which uses TAB to
1123                narrow and restore the view. 
1124        Added an example to examples/owlconf.erik which uses M-c to
1125                color messages matching the current one green.
1126        Integrated change to fix problem with popup blinking on new zephyrs.
1127        C-l and resizes will now refresh an open viewwin (eg, help).
1128        Updated doc/code.txt to include info about filters, commands,
1129                contexts, and keybindings.
1130        Exec commands cleaned up to not have buffer-size limitations
1131                and to not mess up spaces.  exec also returns a string
1132                of the output now.
1133        Integrated changes from 1.1.3, and added docs for "zlocate -d"
1134                and new show commands.
1135        Show with arguments produces help on show.
1136        Fix a bug in readconfig caught by efence (where we'd try to read before
1137                the beginning of a string if it was empty).
[7d4fbcd]1138        The perl command doesn't do makemsg directly, but instead
[8509c08]1139             returns the string and it will get printed if it
1140             was run interactively.
1143        'show subs' and 'show subscriptions' are now the same as 'getsubs'
1144        zlocate now takes an optional -d argument
1145        'show terminal' / 'show term'
1146        '>' / last doesn't set the last message at the top of the screen now
1147        implemented _followlast as an unsupported feature
1148        include 'default' in the 'show colors' list
1149        added help for 'zpunt' and 'zunpunt'
1150        changed the bug address in the startup message
1151        can now do 'show status'
1152        can now do 'show version'
1153        'status' / 'show status' includes the owl version number now
1154        'show terminal' includes whether the terminal can change colors
1155        fixed off by one bugs in paging / scrolling viewwin
1156        don't downcase the sender when getting the log name for personals
1157        support @owl::fields as well as @fields
1158        downcase class/inst filter names in auto filters
1161        Fixed memory mishandling bug
1162        Fixed bug in redfining the filter attached to the current view
1163        M-n will narrow to message, instance on non-personal, class
1164             MESSAGE messages
1165        M-N behavies like M-n except that on class messages it narrows
1166            to class and instance
1167        line wrap earlier, to account for tabbing
1168        fixed typo in help
1169        'status' command now displays info on terminal color support
1170        zephyr @ formatting is now case independant
1171        added support for color terminals
1172        zephyr @color(foo) now works
1173        'D' for deleted messages is now not bold, unless it's the current
1174          message
1175        F1 displays the help screen
1176        added filter colors
1177        added the 'colorview' command
1178        added the 'show colors' command
1179        users who don't have a .zephyr.subs get a simpler format for
1180          incoming messages
1181        If colors are available 'show filters' will show a filter in the
1182          color associated with it.
1183        Added the zpunt and zunpunt commands
1184        Lines in the subs file starting with '-' are zpunted
1185        Include login/logout messages in auto user filters
1186        'V' changes to the home view ('all' by default)
1189        Fixed perl, aperl, and pperl commands to deal with quoting
1190              and spaces in a saner manner.
1191        Removed all owl_get_* methods for booleans and switched
1192              cases where they were used to owl_is_*
1193        Changes to owlconf.erik to use some new features.
1194        Increased the size of the help buffer (as it
1195              was overflowing and truncating the help message).
1196        Variables prefixed with a _ are not shown in help
1197              or by printallvars (and prefixed Not Yet Implemented
1198              variables with this).
1199        Fix typo in help
1200        include stdio.h in functions.c
1201        remove stale "q to quit" from bottom of info message
1202        fix downward scrolling more than a page
1203        use authentication for zlocate, by default
1204        fixed buffer over run in info command on long messages
1205        call 'perl <file>' from Makefile to avoid hardcoding perl paths
1206        in Makefile don't build owl_prototypes.h unless necessary
1207        store the time for admin messages
1208        display admin message time in 'info' command
1209        fixed an editwin M-> last character bug
1212        reply is a normal function now
1213        'R' does reply to sender
1214        'T' tells you how many messages were marked for deletion
1215        local realm removed from login / logout messages
1216        added command history
1217        better runtime / starttime reporting in 'status' command
1218        leave the pointer near the current message after expunge
1219        C-l recenters editwin
1220        implemented zlocate
1221        @italic works the same as @i
1222        on reply only quote class / instance when necessary
1223        C-r allows you to edit the reply line
1224        don't use unecessary options in reply line
1225        display 'info' errors in msgwin, not popup
1226        impelemnted aexec, pexec commands
1227        the zsig now goes through ztext formatting
1228        messages have id numbers now
1229        'info' prints the msgid
1230        added the 'filter' command
1231        added the 'view' command
1232        added the 'show filter' command
1233        added the 'viewclass' (and 'vc') commands
1234        added the 'viewuser' (and 'vu') commands
1235        M-n will filter to the current class or user
1236        'v' starts a view command
1237        M-D will delete all messages in current view
1238        added the 'delete' (and 'del') command
1239        load-subs with no argument loads the default subs file
1240        '<truncated>' is now when the *current* message is truncated
1241        the reply-lockout filter (with default) specifices messages that
1242           cannot be replied to.
1243        in the configfile owl::receive_msg is run whenever a message is
1244          received
1245        added the beep command
1246        added the contributors file
1247        declare ZGetSubscriptions and ZGetLocations since the includes
1248          don't seem to
1249        fixed bug in displaying last line in popwin if no final '\n'
1250        'T' uses the 'trash' filter now
1251        zaway_msg, zaway_msg_default and zaway are all user variables now.
1252        zsig variable overrides zsigproc
1253        If there's no appendtosepbar don't interfear with the sepbar
1254        Changed: owl_message_get_numlines will return 0 of m is NULL
1255        Added login messages to messages marked by owl_function_delete_automsgs
1256        Added owl_function_delete_by_id(id) which acts independent of view
1257        Added "-id <id>" option to delete command
1258        Fixed an arg checking bug in delete command
1259        Added owl::id to perl namespace with message id
1260        Fixed a memory corruption bug in readconfig.c (where right
1261              after the strdup to "out", we'd strcat a \n onto the end.
1262              This would be triggered whenever owl::format_msg returned
1263              a string not ending in a newline
1264        Added 'X' keybinding which expunges and then switches to
1265              a view defined by the variable "view_home" which defaults
1266              to "all"
1267        Consolidated readconfig.c somewhat to remove duplication.
1268              owl_config_execute now returns a string.
1269        Added an example config file that does vt-style formatting.
1270              (examples/owlconf.vtformat)
1271        Added the 'perl', 'aperl', and 'pperl' commands which will
1272              evaluate perl expressions.
1273        Fixed bug where pclose zsigproc would cause zombies
1274        Can set zsigproc or zsig to "" to disable
1275        Added support for multiple browsers (galeon and none were added).
1276              Configure with the "webbrowser" variable.
1277        Changing typewinsize height triggers resize event.
1278        Added zsig variable which will be used if no zsigproc and non-empty.
1279        Added "make test" rule to Makefile which will run regression tests,
1280              and added regression testing framework to tester
1281        Fixed to ignore static declarations.
1282        Added dict.c which contains string->ptr dictionary routines
1283              and the owl_dict type.
1284              These include regression tests.
1285        Overhaul/rewrite of variable handling.  Variables are now managed
1286              in an owl_vardict (in g.vars) which contains a dictionary
1287              of owl_variable's.  Each owl_variable has dispatch functions
1288              for validating values, setting it and getting it,
1289              and for setting it to and from string values.
1290              The variable.c file contains the list of variables.
1291              Stubs for the owl_global_<varname>_get functions and friends
1292              are generated from variable.c by
1293              The help.c messages for variables now calls into variable.c
1294              so all information about most variables is in one place.   
1295        Cleaned out code from global.c and command.c that was made obselete
1296              by variable overhaul.
1297        The set command now takes a -q option to not log a message.
1298        Fixed a bug where set and print with no arguments would
1299              print "Undefined variable" in addition
1300              to running owl_function_printallvars.
1301        debug is now a variable that can be turned on and off.
1302        Fixed mail,inbox message parsing in examples/owlconf.erik
1303        Made zaway_msg and zaway_msg_default into variables
1304        Changed owl_function_makemsg and owl_function_debugmsg
1305               to use varargs (ie, so they can now take a format
1306               string with args).
1307        Don't allow " and \ characters in URLs with the "w" command.
1308        Removed lots of build warnings.
1309        Popwins are wider by default so help messages fit better.
1310        Added an atokenize_free function.
1311        Fixes to work with an older version of libzephyr.
1312        Added dependencies on header files to
1313        Added pageup and pagedown key bindings to message list
1314        Added pageup and pagedown to viewwin
1315        Added configfile section to doc/intro.txt (from example config file)
1316        Added appendtosepbar variable which may contain text which will
1317              be appended to the sepbar.  This allows the configfile
1318              to put information about pings and logins into
1319              the sepbar.  (It may be worth also providing a variable
1320              which enables this by default, but for now this allows
1321              for experimenting with what works well.)
1322        Added doc/code.txt which gives a brief overview of the code.
1323        Added tags makefile rule and added TAGS to distclean rule.
1326        fix frees in loadsubs and loadloginsubs
1327        don't return in owl_free
1330        'print' and 'set' with no arguments prints all variables
1331        Added the 'unsubscribe' and 'unsub' command
1332        Renamed the 'unsub' command to 'unsuball'
1333        Added the 'getsubs' command which is like zctl ret
1334        Fixed bug in logging messages sent to more than one recipient
1335        Support '-C', '-O', and '-n' options to zwrite
1336        Fixed bug in owl_editwin_delete_char when there are no later chars
1337          after the cursor
1338        Make "more" and "truncated" work in the status bar
1339        enable printing of zsigproc and loginsubs variables
1340        only allow message scrolling if the message is actually off the
1341          screen
1342        'T' will mark all automated message for deletion
1343        'P' will go to the next personal message
1344        'M-P' will go to the previous personal message
1345        replying to a login message goes to the user now
1346        added a status command
1347        added the intro doc to the release
1348        fixed off by one bug in viewwin
1349        added complete online help
1350        pass $owl::realm in configfile
1351        fixed editwin wordwrapping on the last line
1352        fixed editwin problem with key_right past the last char
1353        print an error and quit if the configfile can't be parsed
1354        got rid of owl_mainwin_calculate_topmsg
1355        fixed off by one error in calculating topmsg upwards
1356        you can now reply to an admin message
1357        don't display an error about keypress on window resize
1360        fixed bug in viewing messages longer than the screen
1361        indicate in the sepbar if there is a non zero vert offset
1362        send on '.' on a line by itself
1363        added disable-ctrl-d variable
1364        fixed bug where C-k did not delete the last \n in the buffer
1365        make non-character meta keys work
1366        use ZSendNotice instead of ZSendList
1367        implemented <, >, M-< and M-> in viewwin
1368        removed the spaces at the bottom of viewwin
1369        added 'about' command
1370        fixed bug using 'M' with no current message
1371        changed message object to use char *'s to save on memory
1372        change malloc, realloc, strdup and free to use owl hooks so that
1373           debugging can be added
1376        fixed a trailing space bug in the parser
1377        impelemented the "burning ears" feature
1378        have admin messages do ztext parsing
1379        fixed bug in reporting which M- key was pressed
1380        C-g will now cancel commands like C-c
1383        implemented owl_function_full_redisplay().
1384        C-l uses owl_function_full_redisplay().
1385        when a popwin exists to a full redisplay.  (fixes bug)
1386        improved the owl_editwin_process_char logic
1387        removed all unnecessary wrefresh's and replaced with wnoutrefesh
1388        owl_editwin_redisplay now takes an argument to optionally doupdate()
1389        improved the cut-and-paste speed by not doing a usleep the first
1390          time through the loop after getting a keypress.
1391        nuked typwin.c and associated stuff.  It's useless now.
1392        added viewwin code for paging windows
1393        curly braces work for zephyr formatting
1394        @i in zephyr formatting will be displayed as underlined text
1395        turned off idlok
1396        implemented viewwin
1397        implemented viewwi in popwin for pageable popwins
1398        help, info now use pageable popwins
1399        bound 'M' to bring the current message up in a popwin
1400        return, space bar, 'b' and backspace now scroll within a message
1401        turned off resize message
1402        C-v and M-v page the main window
1403        implemented owl_message_is_mail
1404        some build cleanup
1408        added owl_message_is_personal and have things use it
1409        added owl_message_is_private
1410        fixed 'print personalbell' and have 'set personalbell'
1411           print a message
1412        bold only on message_is_personal
1413        display the realm if not local
1414        implemented M-f, M-b, M-d, M-<, M-> in editwin
1415        implemnted word wrapping in editwin
1416        implemented M-q (paragraph-fill) in editwin
1417        fixed bug that caused owl to segfault logging a 'weird' class
1418        M-x is a keysym for ':'
1419        added smart bolding and userclue
1420        fixed a bug causing pings to beep even if rxping is off
1423        fixed bug in logging code
1426        implemented personal logging
1427        implemented class logging
1428        implemented resize of typewin
1429        fixed the backspace problem
1430        -v command line option prints the version number
1433        load-subs will report error opening file
1434        skip comment lines in loadsubs and loadloginsubs
1435        changed internal references to rxping and txping
1436        fix replying to a blank instance
1437        added subscribe command
1438        subscribe to login messages from .anyone by default
1439        'loginsubs' variarble controlls automated login messages
1440        redisplay the editwin after a resize
1441        leave the cursor in the editwin if active
1442        fix problems in the build system
1443        added displayoutgoing variable
1444        temporarily removed error printing for zlog in / out
1447        fixed bug in "message sent to <foo>" for zwrite
1450        help updated
1451        zaway key set to caps A
1452        support zephyring other realms
1453        rxping variable for receiving pings
1454        txping variable for sending pings
1455        function in place to resize typwin
1456        C-l to refresh
1457        personal bell variable
1458        beta message now an admin message
1461        Added the debug command and flag
1462        Fixed bug in printing fields in info command
1463        Added owl_fmtext_append_ztext and use it
1464        Better formating for pings and login zephyrs
1465        make tester depends on proto
Note: See TracBrowser for help on using the repository browser.