Notes-mode: 4. History

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

# 4. History

More about notes-mode than you wanted to know, and some thanks.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 4.1 Notes-mode history

Briefly, I started keeping notes on-line shortly after I got a portable computer in January, 1994. After a month-and-a-half of notes, I realized that one does not live by grep alone, so I started adding indexing facilities.

In June of 1995 some other Ficus-project members started keeping and indexing on-line notes using other home-grown systems. After some discussion, we generalized my notes-mode work and they started using it.

Over the next 18 months notes-mode grew. Finally, in April, 1996 I wrote documentation, guaranteeing that innovation on notes-mode will now cease or the documentation will become out of date.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 4.2 Credits

I (John Heidemann, <johnh@isi.edu>) started, documented, and currently maintain notes-mode. I take ultimate responsibility for the code, especially for the ugly parts that I won’t let others change.

Ashvin Goel <ashvin@ficus.cs.ucla.edu> has been a very enthusiastic notes-mode user and contributor. He is responsible for at least the ideas behind `notes-summarize-subject` and the ideas and initial implementations of some of the original generalization and modularity improvements, `notes-follow-next-link` and `notes-follow-prev-link`, `notes-goto-index-entry`, programmed subject completion, and context-sensitive mouse-2 handling. In addition, he is an invaluable second opinion about what and how things should be done (even if I don’t always agree with him).

Geoff Kuenning <geoff@ficus.cs.ucla.edu> has been another enthusiastic notes-mode user and victim. He is responsible for finding several bugs, motivation for mouse-less operation, comments about the documentation, the day-of-week convention, and an initial implementation and the idea of multiple entries with the same subjects in a single notes-file.

Ramesh Govindan <govindan@isi.edu> did the xemacs port.

Since it’s release on Usenet in April 1996 several other folks have contributed. Thanks to David Weisman <weisman@app1.osf.org>, Martin L. Smith <martin@ner.com>, Jason Bastek <jason@aai.com>, Ulrich Herbst <Ulrich.Herbst@t-systems.com>. See the next section (See section Changes.) for details of their exploits.

Thanks to Larry Ayers <layers@marktwain.net> for popularizing notes-mode with reviews in the Linux Gazette (at <http://www.linuxgazette.com/issue22/notes-mode.html> and <http://www.linuxgazette.com/issue35/ayers.html>).

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 4.3 Changes

For the bored:

First semi-public release. 12-Jul-95: version 0.1 Shared a version with Ashvin and Geoff.

Changed 6-Dec-95: version 0.3 Ashvin’s changes for note traversal added (C-c C-p and C-c C-n now move to the prev/next note in note-mode). URL parsing changed so that "localhost" is optional.

Changed 19-Dec-95: version 0.4 More robust prev/next code added, both to handle going back and forward in the middle of chains through the index file, and to handle back/forward in a single file. URL parsing changed so that notes-goto-index-entry correctly handles lookups on notes names such as "252A".

Changed 20-Dec-95: version 0.5. Fixed a missing variable in notes-url.el. Added a work-around to a bug in emacs-19.30’s define-derived-mode.

Changed 24-Dec-95: version 0.6. Prev/next code re-re-written to be more robust.

Changed 26-Dec-96: version 0.7. Bug fix release.

Changed 23-Jan-96: version 0.8. Initialization code added to set up a new note. New variable: notes-bin-dir.

I’m skipping version 0.9 because I erroneously release version 0.1 as version 0.9 (only on the web, not on Usenet).

I’m bumping from version "0" to version "1" since the code is has been in production use for more than a year by several people. Minor numbers are the same.

Changed 26-Mar-96: version 1.10. Setup code completely re-written. Several incompatible changes have been made: - the lisp and Perl code must be installed via make install, not by copying. - some data is specified in a .notesrc file; copy and modify sample.notesrc. - several internal elisp changes. - catsubject added (bound to C-cC-s): collect all notes about the current subject. - new notes-files are initialized with fields based on the prior day’s notes; see mknew for details. - daily_work is gone; mkall is rewritten to use .notesrc.

Changed 29-Apr-96: version 1.11. Real documentation. Mknew caching added.

Changed 9-Aug-96: version 1.12. Added notesinit to do all setup for new users.

Changed 24-Aug-96: version 1.13. Minor documentation fixes.

Changed 20-Dec-97: version 1.14. Autoconf support.

Fontification of the index buffer is now pre-computed in perl other than done when the file is needed (in elisp with slow regular expressions). 2000-line index files are now 1-2 seconds rather than 15-30 on a 100MHz Pentium. If necessary (the pre-computed version isn’t up-to-date) we fall back on the slower code.

Related work improved (suggestion by David Weisman <weisman@app1.osf.org>).

Documentation improvement (problem found by Martin L. Smith <martin@ner.com>).

Installation improved (code by Jason Bastek <jason@aai.com>).

Bug in notes-index mode with subjects containing colons fixed (johnh).

Encryption now supports mailcrypt.el.

Support for emacs 20 (a small font-lock change).

Changed 5-Jan-98: version 1.15. Bug in decryption for non-PAM users fixed (suggestion by Kevin Davidson <tkld@quadstone.com>).

Y2K statement added (suggestion by Kevin Davidson <tkld@quadstone.com>).

Pointer to mailcrypt added (as a supported encryption package). Problem pointed out by K. Ueda <kueda@jupiter.qse.tohoku.ac.jp>.

Changed 4-Nov-98: version 1.16. Bug in kill-ring handling of notes-old-underline-line fixed by Tim Potter <timp@jna.com.au>. Bug in whitespace handling after PGP encryption fixed by Tim Potter. Bugs in handling of entries with hash signs in their name fixed (found by Tim Potter). Fontification of index buffer further improved (mapcar is your friend). Xemacs support added based on code contributed by Ramesh Govindan.

Changed 28-Feb-99: version 1.17: Improvement: notes-electric-return now fixes up the prev/next links of new entries (only). Code contributed by Takashi Nishimoto.

Bug fix: reversed options -batch and -q in configure.in to placate XEmacs 20.0; changed notesinit to not downcase the pathname (bugs found by Thierry Bezecourt).

Clarification: Autofilling of new notes more clear in the manual (hopefully, suggested by Solofo Ramangalahy).

Bug fix: a y2k bug in was found and fixed in mkindex. Sigh.

New: Two mailing lists for notes-mode have been created: ‘`notes-mode-announce@heidemann.la.ca.us`’ and ‘`notes-mode-talk@heidemann.la.ca.us`’. Send the line “subscribe notes-mode-announce” (or “subscribe notes-mode-talk”) to ‘`majordomo@heidemann.la.ca.us`’ to join them. [These instructions are now superceeded; to subscribe, go to ‘`http://www.heidemann.la.ca.us/mailman/listinfo/notes-mode-talk`’ and ‘`http://www.heidemann.la.ca.us/mailman/listinfo/notes-mode-announce`’.]

Changed 6-Oct-99: version 1.18: Bug fix: handling of electric-prevnext is better when there are existing prev/next links.

Clarification: I added some pointers in the code to the installation instructions. (Apparently people can’t RTF README.)

Extension: mailcrypt-3.5.x suported including pgp, pgp5 and gpg.

Changed (date 23-Dec-00): version 1.19: Bug fix (cosmetic): suppress comments in encrypted nodes.

Install fixes from Kannan Varadhan: elisp directories changed on install.

Added C-j as a synonym for RET in notes-mode to parallel C++ or perl mode. (Suggested by Fred Jaggi ‘`jaggi@rsn.hp.com`’.)

Outline-minor-mode support added and documented. (Suggested by Tim Carroll ‘`tim@boomboom.com`’.)

Bug/typo fixes in gpg support (Contributed by William A. Perkins ‘`wa_perkins@pnl.gov`’, with separate patches from Knut Anders Hatlen ‘`kahatlen@online.no`’.)

Installation improvements suggested by Christophe Troestler ‘`Ch.Troestler@linkline.be`’: use install-info to update the info dir, warn users of –prefix that lisp files go elsewhere.

Changed (date 1-Feb-01): version 1.20: Bug fix: missing file notes-first.el added to the distribution. (Bug found by Michael Totschnig ‘`michaelt@supernet.ca`’.)

Changed ( 5-Dec-01): version 1.21: (backed-out—didn’t work with spaced URLs) URL lookup now uses thing-at-point.

Fix to make notes-mode work with emacs-21.1 (Fix from Klaus Zeitler ‘`kzeitler@lucent.com`’.)

Changed ( 3-Jan-02): version 1.22: Several bugs in ‘`notesinit`’ for stricter Perl implementations (bug found by Paul Craven" ‘`pcraven@yorku.ca`’, and Kasper van Wijk ‘`kasper@acoustics.mines.edu`’) and to make it run cleanly more often.

Notes-first now autoinitializes notes mode from emacs. (As instisted by rms, unfortunately about two years later than requested.)

Changed (20-Feb-05): version 1.23: Outline mode is now forcebly turned on to avoid interactions with user’s text-mode hooks (bug and fix from Nils Ackermann ‘`nils@nieback.de`’).

Install bug involving ordering of scripts and byte-compilation fixed (bug and fix from Mark Allman ‘`mallman@grc.nasa.gov`’).

Fix obscure bug in configure, reported by Klaus Zeitler ‘`kzeitler@lucent.com`’.

Fix for notes-summarize-subject when no subject is specified (bug and fix from Geoff Kuenning).

Changed (14-Jan-06): version 1.24:

install-info bug documented with the Debian install-info (bug reported by Aaron Falk ‘`falk@isi.edu`’).

Automatic date completion in new days is now done in the current locale, so it should now work for non-English languages. Bug reported by Torsten Bronger ‘`bronger@physik.rwth-aachen.de`’.

Fixed a bug in mkindexcache, triggered by subjects with percent signs in them. Bug reported by Philip Austin ‘`paustin@eos.ubc.ca`’.

We’re a bit more robust about subjects, I hope. Warnings should appear about embedded number signs, and leading spaces should be filtered. Bug reported by Philip Austin ‘`paustin@eos.ubc.ca`’.

Notes-mode now dervies from indented-text-mode rather than paragraph-indent-text mode. Unfortunatley this is not customizable because of limitations of define-derived-mode. Change suggested by Aaron Falk ‘`falk@isi.edu`’.

Provide better hints about how to get started after installation or running notes-mode in emacs for the first time.

In notes init, the default path for dir was the full path, not the tilde version of the path. Now it defaults to using tidle for home directory. Bug reported by Mark Allman ‘`allman@icir.org`’.

Changed (26-May-06): version 1.25:

fixed a bug in the release tar.gz file that had a additional copies copy nested.

Changed (30-Jun-08): version 1.26:

Force unicode I/O in ‘`mkindexcache`’ to fix highlighting mis-alignment when using emacs-21 with unicode subject lines.

Changed mkprevnext and mkrawindex to optionally take the list of notes files to index from stdin rather than from the command line. Yes, I finally have 4093 notes files, overflowing the Unix command line buffer.

Changes notes-mode.el to put path in quotes, allowing spaces to appear in home directory names (bug fix from Ulrich Herbst).

Added a suggested features section.

Changed ( 8-Aug-08): version 1.27:

Change I/O in ‘`mkindexcache`’ to use locale (the sadly correct thing) rather than forcing utf-8 (the Righteous Path). Bug report from Geoff Kuenning, a man with an older Unix environment than I.

Changed (20-Jun-10): version 1.28:

Changed a regular expression in ‘`notes-index-mode.el`’ that was causing emacs-v23 (a pre-release version) to regular expression infinite recursion.

Changed (2012-04-04): version 1.29

(2011-08-23) Changed `run-hooks` to `run-mode-hooks`. Bug report from Geoff Kuenning.

Changed some handling of PGP encryption to account for some apparent API changes.

(2012-04-04) Fixed encyrption to handle encrypting empty notes at the end of buffers without going into an infinite loop. Clearly wrong code, but you have to ask this guy for why he tried: Bug report from Geoff Kuenning.

Changed (2014-12-19): version 1.30

Added support for EasyPG. Support for mailcrypt remains, but that library has seen no progress since 2002. Support for npgp is gone.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 4.4 Suggested features

Features suggested by users but not yet implemented:

21-Feb-08: (from Xavier Maillard): should support “disconnected” notes that are indexed but not date-based.

21-Feb-08: (from John Heidemann): should switch all notes files to have an extension (maybe ‘`.notes`’).

[ << ] | [ >> ] |  |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

This document was generated on December 19, 2014 using texi2html 1.82.