source: ChangeLog @ 486688f

Last change on this file since 486688f was 486688f, checked in by Erik Nygren <>, 21 years ago
Will attempt to keep the current message as close as possible to the previous current message after an expunge. "set <variable>" and "unset <variable>" now work for boolean variables. (although I'm not totally happy with how I implemented it.)
  • Property mode set to 100644
File size: 27.0 KB
4        Started adding code for newmsgproc.  It doesn't fully work yet!
5          Don't use it.
6        Added search, '/' and '?' to basic help.
7        Will attempt to keep the current message as close as possible
8             to the previous current message after an expunge.
9        "set <variable>" and "unset <variable>" now work for boolean variables.
12        Patch to fix memory bug in replying to CC messages
13        If we're on Athena and have static krb (or other) libraries, use
14          them
15        Added "athstatic" program to the release, which handles the above
16        Cast to an int for isspace, to make gcc -Wall quiet
17        Added 'zlist' and 'l' to basic help.
20        'zlog in' will now take an optional thrid argument to set the
21             'tty' variable before setting the zlocation
22        There is now a 'zlist' command that acts like 'znol -l'
23        'l' is bound to 'zlist'
24        Fixed memory leak uninitialzed memory read in fmtext
25        viewwin will now say "End" instead of "More" when at the end
26        Added a debugging message indicating the result of topmsg
27          calculations
28        You can now use %me% in filters
29        The built-in personal filter is updated to do so
30        Fixed a bug in moving the pointer after an expunge
31        Fixed up the normal scrolling code.  Now it should always
32          land on a message, but it's still not optimal.
33        Added the variable 'smartstrip' which will strip kerberos
34          instances out for the 'reply' command.
35        Added -R/usr/athena/lib to the build for Athena
36        Started updating the intro document
37        Small changes to help / about
38        The 'subscribe' and 'unsubscribe' commands (and their aliases) now
39          update .zephyr.subs by default.  If either is given the '-t'
40          (for "temporary") option the .zephyr.subs will not be updated
41        Turned off beeping for hitting the top or bottom of the list of
42          messages
43        Made daemon.webzephyr a special case for smartstrip
44        Added 'out' as a default filter for outgoing messages
47        Added filters "ping", "auto" and "login" by default.
48        Added "body" as a valid field to match on in a filter.
49        Temporary fix to bug where C-SPACE would cause the key handler to
50             lock up.
51        Messages now have a direciton (in, out or none).  Filters can
52             match on this direction
53        Outbound messages are no longer type 'admin' but are of the
54             appropriate message type (i.e. 'zephyr') and are direction
55             'out'.
56        Smartnarrow now works on outgoing messages
57        'info' updated to show more information for admin and outgoing
58             messages
59        Renamed pretty_sender to short_zuser and renamed long_sender to
60             long_zuser
61        Moved zsig generation to the zwrite object
62        Print the zsig used for outgoing messages
63        The tty variable now controls the zephyr location tty name
66        Added the 'search' command.
67        '/' is a keybinding for 'search'
68        '?' is a keybinding for 'search -r'
69        Fixed stristr, which was completely broken
70        renamed owl_fmtext_ztext_stylestrip to owl_function_ztext_styletsrip
71             and put it in functions.c
72        Attempts to stay near the current message when switching views.
73             When switching from an empty view to one we've previously
74             been in, the new current message position will attempt
75             to be close to the current position from the last
76             time we visited that view.
77        Fixed bug in readconfig.c that prevented building under perl 5.005.
78        Switched "C-x C-x" to only "startcommand quit"
79        'getsubs' prints closer to the order you sub in.
80        Modified the behavior of last so that "> >" will clear the screen.
81        The new behavior of last is:
82              Moves the pointer to the last message in the view.
83              If we are already at the last message in the view,
84              blanks the screen and moves just past the end of the view
85              so that new messages will appear starting at the top
86              of the screen.
87        Fixed a typo in the help for smartzpunt.
88        Fixed functions to handle curmsg being past the end of the view.
91        New framework for command handling.
92        New framework for keymap handling.
93        Added commands for everything that is bound
94             to a key (do 'show commands' to get the full list).
95        Added 'multi' and '(' commands to allow multiple commands
96             to be specified on a line.             
97        Added user keybindings with bindkey command.
98        Added command aliases (eg, "alias foo bar").
99        Added undelete command that parallels the delete command.
100        Added additional options to delete command.
101        The reply command now takes arguments.
102        Added 'edit:insert-text' command.
103        Added 'show zpunts' to show active punt filters.
104        Added 'show variable <name>' and 'show variables'.
105        Added 'show command <name>' and 'show commands'.
106        Added 'show keymap <name>' and 'show keymaps'.
107        Added 'M-u' to undelete all messages in current view.
108        Fixed dotsend so that the zephyr will still send if there
109             is whitespace after the dot but not on the same line.
110             This should resolve an issue where dotsend wouldn't work
111             if you'd gone up and edited a zephyr.
112        Bug in page down fixed
113        C-t will transpose characters
114        Fix the scrolling bug where we would sometimes fail to scroll
115             the screen down, leaving the current message off
116             the bottom of the screen.
117        Refixed 'login or login' typo in help
118        Fixed M-u description
119        Removed 'first' and 'last' from basic command help
120        Added M-N to basic key help
121        Added M-D, M-u to basic key help
122        Fixed a quoting problem in
123        Changed top of help to use 'show' instead of M-x
124        Fixed a bug in the summary field for user-created aliases
125        Added "reply zaway" which sends a zaway response to the current msg.
126        Added "edit:delete-prev-word" command and bound M-BACKSPACE to it.
127        Some buffer overruns fixed
128        Variables now have a summary and a long description.
129                Only the summary is shown with help.
130                The long description is shown with "show variable foo".
131        Added a 'scrollmode' variable which determines how the screen
132             will scroll as the cursor moves.  The default behaves
133             identically to previous versions of owl.
134             The following modes are supported:
135             normal      - This is the owl default.  Scrolling happens
136                           when it needs to, and an attempt is made to
137                           keep the current message roughly near
138                           the middle of the screen.  (default)
139             top         - The current message will always be the
140                           the top message displayed.
141             neartop     - The current message will be one down
142                           from the top message displayed,
143                           where possible.
144             center      - An attempt is made to keep the current
145                           message near the center of the screen.
146             paged       - The top message displayed only changes
147                           when user moves the cursor to the top
148                           or bottom of the screen.  When it moves,
149                           the screen will be paged up or down and
150                           the cursor will be near the top or
151                           the bottom.
152             pagedcenter - The top message displayed only changes
153                           when user moves the cursor to the top
154                           or bottom of the screen.  When it moves,
155                           the screen will be paged up or down and
156                           the cursor will be near the center.
157        Added owl_sprintf which returns the formatted string, or NULL.
158                The caller must free this string.
159                This will allocate enough memory and thus
160                avoid potential some buffer overrun situations.
161        Simple implementation of 'zwrite -m' (doesn't yet log an outgoing
162                message as having been sent.)
163        The "Not logged in or subscribing to messages" error
164                now includes the name of the recipient.
165        The "disable-ctrl-d" variable may also be set to "middle"
166                which will result in ctrl-d only sending at the
167                end of the message.  This is now the default.
168                This also added a command "editmulti:done-or-delete".
169        Fixed a bug in the "reply -e" command.
170        Always clear the command buffer before executing the command.
171                (So that interactive commands can sanely do start-command.)
172        Fixed preservation of e->dotsend across owl_editwin_clear().
173        Added history for multiline edit windows (eg, for zephyr composition).
174                The M-n and M-p keys will cycle through the history ring.
175                In particular, it is now possible to edit the command line
176                of a zephyr being composed:  C-c it and restart it
177                and then M-p to get the aborted composition back.
178        Added owl::send_zwrite(command, message) to the perl glue
179                to allow for the direct sending of multi-line messages.
180                For example:  owl::send_zwrite("-c foo -i bar", "hello");
181        Changed owl_fmtext_print_plain to return an alloc'd string to
182                avoid buffer overrun risks.
183        Added owl::ztext_stylestrip("...") function to perlglue
184                 which returns the ztext with formatting stripped out.
185        Added colorztext variable which can be used to disable @color()
186                 strings arriving in messages after it is set.
187                 (Currently, changing its value won't reformat messages).
188        Outgoing zephyr logging now obeys the logpath variable.
189        The '~' character in logpath and classlogpath now gets
190                 replaced with the user's home directory.
191        Added simple implementation of smartnarrow-to-admin that
192                 creates a "type-admin" autofilter.
193                 This was done mostly so that M-C-n and M-C-p do something
194                 sane on admin messages.
195        Added opera to the allowed options to the webbrowser variable.
196        Fixed some buffer overruns in the "reply" command.
197        When repying to "all" on a message that begins with "CC:" (eg, sent
198                 with "zwrite -C", the reply line will be constructed
199                 from the sender and the usernames on the CC: line
200                 of the message being replied to.
201        There is no such thing as C-R, so left C-r as it is but added:
202                 M-r --- edit reply to all
203                 M-R --- edit reply to sender
204        Added RCS Id strings to all files.
205        'show keymaps' shows details of all keymaps after summary list.
206        Added --no-move option to delete command.
207                In particular, delete-and-always-move-down may now
208                be implemented with
209                '( delete --no-move ; next --skip-deleted )'.
210        Folded the nextmsg and prevmsg commands and functions together into
211                one command which takes arguments.
212                Added '--filter <name>' option (eg, for next_personal),
213                '--skip-deleted' option, and
214                '--last-if-none'/'--first-if-none' options.
215                Help updated accordingly. 
216                In particular, the 'personal' filter is now used
217                for 'next personal'. 
218                Added --smart-filter and --smart-filter-instance options
219                to the next and prev commands.
220        Updated examples/owlconf.erik with the above.
221        Made owl_function_fast*filt return a string and not do the
222                narrowing, to make it more general.
223        Added a smartfilter command that creates a filter
224                based on the current message and returns the name
225                of the filter.
226        Added M-C-n and M-C-p keybindings to "move to next message
227                matching current" and "move to previous message
228                matching current"
229        Added variables edit:maxfillcols and edit:maxwrapcols which
230                will limit how wide editing paragraphs may get before
231                they get wrapped.  This is a max and may be narrower
232                depending on the current size of the window.
233                If 0, the max is unlimited.  Default is 70 columns for
234                edit:maxfillcols and unlimited for edit:maxwrapcols.
235        Added smartzpunt command with key binding of "C-x k".
236                This starts a zpunt command filled in with
237                the proposed zpunt.
238        Fixed a memory reference bug in delete and undelete commands.
239        Added support for perl to call directly back into owl.
240        Changed the implementation of owl::command("...") to immediately
241                call back into owl.  This allows perl to get the return
242                value of strings returned by owl commands.
243        Added the getview command which returns the name of the current
244                view's filter. 
245        Added the getvar command which returns the value of a variable.
246        Added an example to examples/owlconf.erik which uses TAB to
247                narrow and restore the view. 
248        Added an example to examples/owlconf.erik which uses M-c to
249                color messages matching the current one green.
250        Integrated change to fix problem with popup blinking on new zephyrs.
251        C-l and resizes will now refresh an open viewwin (eg, help).
252        Updated doc/code.txt to include info about filters, commands,
253                contexts, and keybindings.
254        Exec commands cleaned up to not have buffer-size limitations
255                and to not mess up spaces.  exec also returns a string
256                of the output now.
257        Integrated changes from 1.1.3, and added docs for "zlocate -d"
258                and new show commands.
259        Show with arguments produces help on show.
260        Fix a bug in readconfig caught by efence (where we'd try to read before
261                the beginning of a string if it was empty).
262        The perl command doesn't do makemsg directly, but instead
263             returns the string and it will get printed if it
264             was run interactively.
267        'show subs' and 'show subscriptions' are now the same as 'getsubs'
268        zlocate now takes an optional -d argument
269        'show terminal' / 'show term'
270        '>' / last doesn't set the last message at the top of the screen now
271        implemented _followlast as an unsupported feature
272        include 'default' in the 'show colors' list
273        added help for 'zpunt' and 'zunpunt'
274        changed the bug address in the startup message
275        can now do 'show status'
276        can now do 'show version'
277        'status' / 'show status' includes the owl version number now
278        'show terminal' includes whether the terminal can change colors
279        fixed off by one bugs in paging / scrolling viewwin
280        don't downcase the sender when getting the log name for personals
281        support @owl::fields as well as @fields
282        downcase class/inst filter names in auto filters
285        Fixed memory mishandling bug
286        Fixed bug in redfining the filter attached to the current view
287        M-n will narrow to message, instance on non-personal, class
288             MESSAGE messages
289        M-N behavies like M-n except that on class messages it narrows
290            to class and instance
291        line wrap earlier, to account for tabbing
292        fixed typo in help
293        'status' command now displays info on terminal color support
294        zephyr @ formatting is now case independant
295        added support for color terminals
296        zephyr @color(foo) now works
297        'D' for deleted messages is now not bold, unless it's the current
298          message
299        F1 displays the help screen
300        added filter colors
301        added the 'colorview' command
302        added the 'show colors' command
303        users who don't have a .zephyr.subs get a simpler format for
304          incoming messages
305        If colors are available 'show filters' will show a filter in the
306          color associated with it.
307        Added the zpunt and zunpunt commands
308        Lines in the subs file starting with '-' are zpunted
309        Include login/logout messages in auto user filters
310        'V' changes to the home view ('all' by default)
313        Fixed perl, aperl, and pperl commands to deal with quoting
314              and spaces in a saner manner.
315        Removed all owl_get_* methods for booleans and switched
316              cases where they were used to owl_is_*
317        Changes to owlconf.erik to use some new features.
318        Increased the size of the help buffer (as it
319              was overflowing and truncating the help message).
320        Variables prefixed with a _ are not shown in help
321              or by printallvars (and prefixed Not Yet Implemented
322              variables with this).
323        Fix typo in help
324        include stdio.h in functions.c
325        remove stale "q to quit" from bottom of info message
326        fix downward scrolling more than a page
327        use authentication for zlocate, by default
328        fixed buffer over run in info command on long messages
329        call 'perl <file>' from Makefile to avoid hardcoding perl paths
330        in Makefile don't build owl_prototypes.h unless necessary
331        store the time for admin messages
332        display admin message time in 'info' command
333        fixed an editwin M-> last character bug
336        reply is a normal function now
337        'R' does reply to sender
338        'T' tells you how many messages were marked for deletion
339        local realm removed from login / logout messages
340        added command history
341        better runtime / starttime reporting in 'status' command
342        leave the pointer near the current message after expunge
343        C-l recenters editwin
344        implemented zlocate
345        @italic works the same as @i
346        on reply only quote class / instance when necessary
347        C-r allows you to edit the reply line
348        don't use unecessary options in reply line
349        display 'info' errors in msgwin, not popup
350        impelemnted aexec, pexec commands
351        the zsig now goes through ztext formatting
352        messages have id numbers now
353        'info' prints the msgid
354        added the 'filter' command
355        added the 'view' command
356        added the 'show filter' command
357        added the 'viewclass' (and 'vc') commands
358        added the 'viewuser' (and 'vu') commands
359        M-n will filter to the current class or user
360        'v' starts a view command
361        M-D will delete all messages in current view
362        added the 'delete' (and 'del') command
363        load-subs with no argument loads the default subs file
364        '<truncated>' is now when the *current* message is truncated
365        the reply-lockout filter (with default) specifices messages that
366           cannot be replied to.
367        in the configfile owl::receive_msg is run whenever a message is
368          received
369        added the beep command
370        added the contributors file
371        declare ZGetSubscriptions and ZGetLocations since the includes
372          don't seem to
373        fixed bug in displaying last line in popwin if no final '\n'
374        'T' uses the 'trash' filter now
375        zaway_msg, zaway_msg_default and zaway are all user variables now.
376        zsig variable overrides zsigproc
377        If there's no appendtosepbar don't interfear with the sepbar
378        Changed: owl_message_get_numlines will return 0 of m is NULL
379        Added login messages to messages marked by owl_function_delete_automsgs
380        Added owl_function_delete_by_id(id) which acts independent of view
381        Added "-id <id>" option to delete command
382        Fixed an arg checking bug in delete command
383        Added owl::id to perl namespace with message id
384        Fixed a memory corruption bug in readconfig.c (where right
385              after the strdup to "out", we'd strcat a \n onto the end.
386              This would be triggered whenever owl::format_msg returned
387              a string not ending in a newline
388        Added 'X' keybinding which expunges and then switches to
389              a view defined by the variable "view_home" which defaults
390              to "all"
391        Consolidated readconfig.c somewhat to remove duplication.
392              owl_config_execute now returns a string.
393        Added an example config file that does vt-style formatting.
394              (examples/owlconf.vtformat)
395        Added the 'perl', 'aperl', and 'pperl' commands which will
396              evaluate perl expressions.
397        Fixed bug where pclose zsigproc would cause zombies
398        Can set zsigproc or zsig to "" to disable
399        Added support for multiple browsers (galeon and none were added).
400              Configure with the "webbrowser" variable.
401        Changing typewinsize height triggers resize event.
402        Added zsig variable which will be used if no zsigproc and non-empty.
403        Added "make test" rule to Makefile which will run regression tests,
404              and added regression testing framework to tester
405        Fixed to ignore static declarations.
406        Added dict.c which contains string->ptr dictionary routines
407              and the owl_dict type.
408              These include regression tests.
409        Overhaul/rewrite of variable handling.  Variables are now managed
410              in an owl_vardict (in g.vars) which contains a dictionary
411              of owl_variable's.  Each owl_variable has dispatch functions
412              for validating values, setting it and getting it,
413              and for setting it to and from string values.
414              The variable.c file contains the list of variables.
415              Stubs for the owl_global_<varname>_get functions and friends
416              are generated from variable.c by
417              The help.c messages for variables now calls into variable.c
418              so all information about most variables is in one place.   
419        Cleaned out code from global.c and command.c that was made obselete
420              by variable overhaul.
421        The set command now takes a -q option to not log a message.
422        Fixed a bug where set and print with no arguments would
423              print "Undefined variable" in addition
424              to running owl_function_printallvars.
425        debug is now a variable that can be turned on and off.
426        Fixed mail,inbox message parsing in examples/owlconf.erik
427        Made zaway_msg and zaway_msg_default into variables
428        Changed owl_function_makemsg and owl_function_debugmsg
429               to use varargs (ie, so they can now take a format
430               string with args).
431        Don't allow " and \ characters in URLs with the "w" command.
432        Removed lots of build warnings.
433        Popwins are wider by default so help messages fit better.
434        Added an atokenize_free function.
435        Fixes to work with an older version of libzephyr.
436        Added dependencies on header files to
437        Added pageup and pagedown key bindings to message list
438        Added pageup and pagedown to viewwin
439        Added configfile section to doc/intro.txt (from example config file)
440        Added appendtosepbar variable which may contain text which will
441              be appended to the sepbar.  This allows the configfile
442              to put information about pings and logins into
443              the sepbar.  (It may be worth also providing a variable
444              which enables this by default, but for now this allows
445              for experimenting with what works well.)
446        Added doc/code.txt which gives a brief overview of the code.
447        Added tags makefile rule and added TAGS to distclean rule.
450        fix frees in loadsubs and loadloginsubs
451        don't return in owl_free
454        'print' and 'set' with no arguments prints all variables
455        Added the 'unsubscribe' and 'unsub' command
456        Renamed the 'unsub' command to 'unsuball'
457        Added the 'getsubs' command which is like zctl ret
458        Fixed bug in logging messages sent to more than one recipient
459        Support '-C', '-O', and '-n' options to zwrite
460        Fixed bug in owl_editwin_delete_char when there are no later chars
461          after the cursor
462        Make "more" and "truncated" work in the status bar
463        enable printing of zsigproc and loginsubs variables
464        only allow message scrolling if the message is actually off the
465          screen
466        'T' will mark all automated message for deletion
467        'P' will go to the next personal message
468        'M-P' will go to the previous personal message
469        replying to a login message goes to the user now
470        added a status command
471        added the intro doc to the release
472        fixed off by one bug in viewwin
473        added complete online help
474        pass $owl::realm in configfile
475        fixed editwin wordwrapping on the last line
476        fixed editwin problem with key_right past the last char
477        print an error and quit if the configfile can't be parsed
478        got rid of owl_mainwin_calculate_topmsg
479        fixed off by one error in calculating topmsg upwards
480        you can now reply to an admin message
481        don't display an error about keypress on window resize
484        fixed bug in viewing messages longer than the screen
485        indicate in the sepbar if there is a non zero vert offset
486        send on '.' on a line by itself
487        added disable-ctrl-d variable
488        fixed bug where C-k did not delete the last \n in the buffer
489        make non-character meta keys work
490        use ZSendNotice instead of ZSendList
491        implemented <, >, M-< and M-> in viewwin
492        removed the spaces at the bottom of viewwin
493        added 'about' command
494        fixed bug using 'M' with no current message
495        changed message object to use char *'s to save on memory
496        change malloc, realloc, strdup and free to use owl hooks so that
497           debugging can be added
500        fixed a trailing space bug in the parser
501        impelemented the "burning ears" feature
502        have admin messages do ztext parsing
503        fixed bug in reporting which M- key was pressed
504        C-g will now cancel commands like C-c
507        implemented owl_function_full_redisplay().
508        C-l uses owl_function_full_redisplay().
509        when a popwin exists to a full redisplay.  (fixes bug)
510        improved the owl_editwin_process_char logic
511        removed all unnecessary wrefresh's and replaced with wnoutrefesh
512        owl_editwin_redisplay now takes an argument to optionally doupdate()
513        improved the cut-and-paste speed by not doing a usleep the first
514          time through the loop after getting a keypress.
515        nuked typwin.c and associated stuff.  It's useless now.
516        added viewwin code for paging windows
517        curly braces work for zephyr formatting
518        @i in zephyr formatting will be displayed as underlined text
519        turned off idlok
520        implemented viewwin
521        implemented viewwi in popwin for pageable popwins
522        help, info now use pageable popwins
523        bound 'M' to bring the current message up in a popwin
524        return, space bar, 'b' and backspace now scroll within a message
525        turned off resize message
526        C-v and M-v page the main window
527        implemented owl_message_is_mail
528        some build cleanup
532        added owl_message_is_personal and have things use it
533        added owl_message_is_private
534        fixed 'print personalbell' and have 'set personalbell'
535           print a message
536        bold only on message_is_personal
537        display the realm if not local
538        implemented M-f, M-b, M-d, M-<, M-> in editwin
539        implemnted word wrapping in editwin
540        implemented M-q (paragraph-fill) in editwin
541        fixed bug that caused owl to segfault logging a 'weird' class
542        M-x is a keysym for ':'
543        added smart bolding and userclue
544        fixed a bug causing pings to beep even if rxping is off
547        fixed bug in logging code
550        implemented personal logging
551        implemented class logging
552        implemented resize of typewin
553        fixed the backspace problem
554        -v command line option prints the version number
557        load-subs will report error opening file
558        skip comment lines in loadsubs and loadloginsubs
559        changed internal references to rxping and txping
560        fix replying to a blank instance
561        added subscribe command
562        subscribe to login messages from .anyone by default
563        'loginsubs' variarble controlls automated login messages
564        redisplay the editwin after a resize
565        leave the cursor in the editwin if active
566        fix problems in the build system
567        added displayoutgoing variable
568        temporarily removed error printing for zlog in / out
571        fixed bug in "message sent to <foo>" for zwrite
574        help updated
575        zaway key set to caps A
576        support zephyring other realms
577        rxping variable for receiving pings
578        txping variable for sending pings
579        function in place to resize typwin
580        C-l to refresh
581        personal bell variable
582        beta message now an admin message
585        Added the debug command and flag
586        Fixed bug in printing fields in info command
587        Added owl_fmtext_append_ztext and use it
588        Better formating for pings and login zephyrs
589        make tester depends on proto
Note: See TracBrowser for help on using the repository browser.