Merged from mwolson@gnu.org--2006/muse--main--1.0 (patch 402-403)
[muse-el.git] / ChangeLog
blob13b0c15528e12663bfc75ea3191192de4a142ed1
1 2007-07-24  Michael Olson  <mwolson@gnu.org>
3         * examples/QuickStart.muse (Images): Fix typo where some text
4         existed in the output but not in the example region.
6         * lisp/muse-context.el (muse-context-pdf-program): New option that
7         determines the program to use for generating PDF files for
8         ConTeXt.
9         (muse-context-pdf-cruft): New option that specifies the extensions
10         of files to remove after generating PDF output successfully.
11         (muse-context-slides-header): Docfix.
12         (muse-context-pdf-generate): Use new options.
14         * lisp/muse-publish.el (muse-publish-lisp-tag): Add missing
15         save-restriction call.  This was causing a world of hurt when
16         using <lisp> inside of <include>.
18         * texi/muse.texi (ConTeXt): New section that documents how to use
19         the ConTeXt publishing styles.
21 2007-07-23  Michael Olson  <mwolson@gnu.org>
23         * lisp/muse-context.el: New file that provides support for
24         publishing documents to the ConTeXt format.  Thanks to Jean Magnan
25         de Bornier for his work on this.
27         * lisp/muse-docbook.el (muse-docbook-entities)
28         (muse-docbook-bibliography): Remove unneeded save-restriction use.
30         * lisp/muse-latex2png.el (muse-publish-latex-tag):
31         s/contex/context/.
33         * lisp/muse-latex.el (muse-latex-fixup-citations): Add docstring.
34         (muse-latex-bibliography): Remove call to `widen', since it is not
35         needed anymore.  Remove unneeded save-restriction use.
36         ("slides", "slides-pdf"): Indent elements uniformly.
38 2007-07-22  Michael Olson  <mwolson@gnu.org>
40         * lisp/muse-blosxom.el (muse-blosxom-new-entry):
41         * lisp/muse-mode.el (muse-insert-tag):
42         * lisp/muse-project.el (muse-read-project)
43         (muse-read-project-file):
44         * lisp/muse-publish.el (muse-publish-get-style): Use
45         muse-completing-read-function.
47         * lisp/muse-latex2png.el (muse-publish-latex-tag)
48         (muse-publish-math-tag): Allow the contex style -- which I plan to
49         include soon -- to work with these tags.
51         * lisp/muse.el (muse-completing-read-function): New option that
52         determines which function to call when doing a completing-read.
54 2007-07-15  Michael Olson  <mwolson@gnu.org>
56         * lisp/muse-journal.el (muse-journal-html-entry-template)
57         (muse-journal-rdf-entry-template)
58         (muse-journal-rss-entry-template): Mention that this can be text
59         or a filename.
60         (muse-journal-rdf-entry-template, muse-journal-rss-header)
61         (muse-journal-rss-footer, muse-journal-rss-entry-template): Add
62         newlines to make the output look nicer.
63         (muse-journal-html-munge-buffer, muse-journal-rss-munge-buffer):
64         Use muse-insert-file-or-string for the entry templates, rather
65         than muse-insert-markup.  This allows <lisp> and <markup> tags to
66         be acted on.  Thanks to Scott Hyde for the report.
67         (muse-journal-html-munge-buffer): Escape quote of the day using
68         entire-document specials before snarfing it.  Mark entire template
69         as read-only -- this fixes an incorrect escaping bug.  Remove
70         read-only properties before replacing template matches so that
71         they can still be escaped with entire-document specials later on.
72         (muse-journal-rss-munge-buffer): Make sure that title is escaped
73         properly.
74         (muse-journal-markup-tags): Rename from
75         muse-journal-latex-markup-tags, because we will use it for
76         journal-rss-entry as well.
77         (muse-journal-qotd-tag): Move higher.  Use begin-quote-item and
78         end-quote-item.
79         (muse-journal-rss-munge-buffer): Use journal-rss-entry rather than
80         html.
81         ("journal-latex", "journal-pdf", "journal-book-latex")
82         ("journal-book-pdf"): Use muse-journal-markup-tags rather than
83         muse-journal-latex-markup-tags.
84         ("journal-rss-entry"): New style that is used by journal-rss and
85         journal-rdf to mark up individual entries.  It is needed so that
86         we can do something meaningful with the qotd tag.
87         (muse-journal-rdf-summarize-entries): Set this to nil by default,
88         because it is annoying.  Update docs to mention this.
89         (muse-journal-rss-summarize-entries): Docfix.
91         * lisp/muse-publish.el (muse-insert-file-or-string): Use
92         muse-publish-markup-header-footer-tags.  I'm not quite sure how
93         this change got reverted.
94         (muse-markup-tag-info): Make into a function.  Move common code
95         here, rather than duplicating it in two places.  Deal with case
96         where muse-publish-use-header-footer-tags is non-nil.
97         (muse-publish-markup-specials, muse-publish-inhibit-style-hooks)
98         (muse-inhibit-style-tags): Move higher to avoid byte-compiler
99         warning.
100         (muse-publish-use-header-footer-tags): New variable that indicates
101         whether we should use just the header and footer tags, rather than
102         the full set.
103         (muse-insert-file-or-string): Bind
104         muse-publish-use-header-footer-tags to t.
105         (muse-publish-markup-tag, muse-publish-call-tag-on-buffer):
106         Simplify call to muse-markup-tag-info.
107         (muse-publish-mark-up-tag): Bind
108         muse-publish-use-header-footer-tags to nil.
110         * texi/muse.texi (Journal): Update for recent changes.
112 2007-07-14  Michael Olson  <mwolson@gnu.org>
114         * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Don't
115         delete the remainder of the buffer, since this causes the
116         resulting RDF to have invalid syntax.  Thanks to Phillip Lord for
117         the report and the suggested fix.
119         * lisp/muse-publish.el (muse-publish-markup-regexps): Add "^" to
120         beginning of table-el regexp.  This fixes a bug where Muse stalls
121         when trying to publish a malformed table.  Thanks to Ye Wenbin for
122         the report and the suggested fix.
124 2007-07-12  Michael Olson  <mwolson@gnu.org>
126         * lisp/muse-wiki.el (muse-wiki-interwiki-regexp): Set to nil by
127         default, rather than the empty string.  This really fixes the bug
128         that occurred when using Muse with muse-project-alist set to nil.
129         Thanks to Jonathan Underwood for the report.
130         (muse-wiki-update-interwiki-regexp): Set
131         muse-wiki-interwiki-regexp to nil if muse-project-alist is not
132         defined.
133         (muse-wiki-handle-implicit-interwiki)
134         (muse-wiki-handle-explicit-interwiki): Handle case where
135         muse-wiki-interwiki-regexp is nil.
137 2007-07-10  Michael Olson  <mwolson@gnu.org>
139         * lisp/muse-mode.el (muse-grep): Abort search if the current
140         project contains no directories.
142         * lisp/muse-project.el (muse-project-file-alist): If
143         muse-project-alist is not defined, or project is nil, return nil
144         right away.  This ought to fix a bug that occurred when using Muse
145         with muse-project-alist set to nil.
146         (muse-project-of-file): Make sure muse-project-alist is not nil.
147         (muse-project-save-buffers): Make sure project is not nil.
149         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Deal with
150         case where muse-project-alist is nil.
152         * lisp/muse.el (muse-replace-regexp-in-string): Explicitly check
153         for XEmacs, since color-theme.el is poorly behaved, and defines
154         its own replace-in-string.  Bad color-theme.el -- no cookie for
155         you.
157 2007-07-01  Michael Olson  <mwolson@gnu.org>
159         * Makefile (.PHONY): Update for new debian package rules.
161         * lisp/muse-book.el (muse-book-latex-footer): Wrap long line.
163         * lisp/muse-docbook.el (muse-docbook-fixup-citations): Re-indent.
164         Use save-restriction properly.
165         (muse-docbook-entities, muse-docbook-bibliography): : Re-indent.
167         * lisp/muse-latex.el (muse-latex-footer): Wrap long line.
168         (muse-latex-fixup-citations): Re-indent.  Use save-restriction
169         properly.
170         (muse-latex-bibliography): Re-indent.
172         * lisp/muse-publish.el (muse-publish-get-and-delete-attr): Move
173         higher.  This fixes an error at startup with some versions of
174         Emacs.
175         (muse-publish-cite-tag): Re-indent.
177         * lisp/muse-wiki.el (muse-wiki-handle-explicit-interwiki): Narrow
178         to the end of the link part, so as to exclude the description from
179         the match.  This fixes a bug with three-part links that have
180         descriptions.  Thanks to everyone who pointed it out.
182 2007-06-18  Michael Olson  <mwolson@gnu.org>
184         * lisp/muse-html.el (muse-html-markup-strings): Add anchor.
185         (muse-xhtml1.1-markup-strings): New option that specifies XHTML
186         1.1 specific markup strings.
187         (muse-html-insert-anchor): Use 'anchor string, rather than
188         hard-coding it.  Thanks to Chris Corsair for the suggestion.
189         ("xhtml1.0"): New style that is an alias for the xhtml style.
190         ("xhtml1.1"): New style that publishes XHTML 1.1 compliant output.
192 2007-06-17  Michael Olson  <mwolson@gnu.org>
194         * examples/QuickStart.muse: Make images local so that the Info
195         version of this document works.  Add <example> for the Literal
196         paragraphs chapter, so that it is clear what is happening.
198         * Makefile: Add elpa target, which is used for building an ELPA
199         package for Muse.
201         * Makefile.defs (ELPADIR, ELPADESC): New variables used for
202         building ELPA packages.
204         * examples/Makefile (%.html, %.pdf, %.info): Add message to
205         indicate what we are publishing.
206         (realclean distclean fullclean): Remove all TeX crud.
208         * examples/emacs-muse.png, examples/muse-made-with.png: Include so
209         that the Info version of QuickStart can publish correctly.
211         * lisp/muse-latex.el (muse-latex-slides-header)
212         (muse-latex-lecture-notes-header): Docfix.
214         * lisp/muse-project.el (muse-project-ignore-regexp): Add .git to
215         the list of things to ignore.
217         * lisp/muse-publish.el (muse-publish-markup-list): Remove unused
218         variable.
220         * lisp/muse-texinfo.el (muse-texinfo-process-natively): Set
221         default to nil, since texinfmt.el is a serious nuisance.
222         (muse-texinfo-markup-strings): Add newlines to begin-example and
223         end-example.
224         (muse-texinfo-decide-specials): Also escape URL-type specials in a
225         whole slew of other contexts.
227         * lisp/muse-xml-common.el (muse-xml-encoding-map): Change group to
228         muse-xml.
230         * lisp/muse-xml.el (muse-xml-footer): Docfix.
232         * lisp/muse.el (muse-version): Release Emacs Muse version 3.03.
234 2007-06-16  Michael Olson  <mwolson@gnu.org>
236         * etc/IDEAS.muse: Add some ideas from David D. Smith.
238         * examples/QuickStart.muse: Overhaul.
240         * lisp/muse-project.el (muse-project): Call the last part of a
241         muse-project-alist entry "Output styles" rather than "styles".
243         * lisp/muse-publish.el (muse-publish-table-fields): Handle case
244         where we have a pipe character at the beginning of line.
246         * lisp/muse-xml-common.el (muse-xml-sort-table): Fix typo that was
247         causing tables to not be sorted at all.
249         * texi/muse.texi: Overhaul.  It would be too time-consuming to
250         list all of the changes here.  The "Getting Started" and
251         "Projects" chapters, in particular, were heavily revised.
253 2007-06-15  Michael Olson  <mwolson@gnu.org>
255         * NEWS: Update.
257         * examples/QuickStart.muse: Mention new features.
259         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Docfix.
260         Remove C-c C-i keybinding, since it conflicts with C-c TAB in the
261         terminal, and C-c TAB is more important.  Most people will not
262         want to toggle images on and off that often.
264         * lisp/muse-mode.el (muse-mode-map): Bind muse-insert-thing to C-c
265         C-i as well, so that it works in the terminal.
267         * lisp/muse-publish.el (muse-publish-literal-tag): Make the output
268         look a bit tidier when removing the region.
270         * lisp/muse-regexps.el (muse-list-item-regexp): Put definition
271         list regexp part before other parts.
272         (muse-ol-item-regexp): New regexp that specifies how to match an
273         ordered list item.
274         (muse-ul-item-regexp): New regexp that specifies how to match an
275         unordered list item.
276         (muse-table-field-regexp): New regexp that specifies how to match
277         a definition list entry.
279         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Work around
280         lack of support for @headitem in texinfmt.el.
282         * lisp/muse.el: Wrap muse-line-beginning-position and
283         muse-line-end-position in `eval-and-compile', since they are now
284         used in muse.el.
285         (muse-list-item-type): Use a simpler algorithm for detecting which
286         kind of list item we have.  This fixes a bug where a number in a
287         definition list term was being detected incorrectly as an ordered
288         list item.  Fixes bug #6250.
289         (muse-forward-list-item): Get the entire line with the list item.
290         For some reason, Emacs 21 was not populating match 2 correctly,
291         unlike Emacs 22, so this workaround was needed.
293         * texi/muse.texi: (Keystroke Summary): Remove C-c
294         C-i (`muse-insert-tag') documentation, and mention C-c C-i as an
295         alternative keybinding to the C-c TAB stuff.  Mention
296         muse-colors-toggle-inline-images.
298 2007-06-14  Michael Olson  <mwolson@gnu.org>
300         * README: Mention that RelaxNG schema is in etc/ directory.
302         * etc/emacs-wiki-migration.txt: New document that explains how to
303         migrate from emacs-wiki to Muse.
305         * etc/muse.rnc: Increment version number to 1.0.  Fix several
306         nested emphasis and nested lists edge cases.  Move here from
307         examples/.
309         * lisp/muse-mode.el (muse-mode-map): Permit C-c C-M-t to do the
310         same thing as C-c C-S-t, since the former works better in the
311         console.  Thanks to Leo for the suggestion.
313         * lisp/muse-publish.el (muse-publish-markup-table)
314         (muse-publish-markup-table-el): Include a newline in the return
315         string, so that paragraph detection does not get confused.
317         * lisp/muse.el (muse-with-temp-buffer): Docfix.
319         * texi/muse.texi (Keystroke Summary): Document the C-c C-M-t
320         keybinding.
322 2007-06-13  Michael Olson  <mwolson@gnu.org>
324         * etc/IDEAS.muse: Mark three-part-links item as done.
326         * experimental/muse-message.el: Remove guard for muse-define-style
327         calls.
329         * lisp/muse-colors.el (muse-configure-highlighting): Fix bug where
330         markup rules were being interpreted in reverse order.  This should
331         make implicit interwiki links work properly again.
332         (muse-link-face): Strip anchor from end of a path, so that this
333         works with anchors in interwiki links.
334         (muse-colors-insert-image): Catch error that occurs in Emacs 21
335         when an image does not exist.
337         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Permit
338         anchors.
339         (muse-wiki-handle-implicit-interwiki): Docfix.  Make anchors in
340         interwiki links work.  Thanks to Jim Ottaway for the initial
341         implementation.
342         (muse-wiki-handle-explicit-interwiki): Make anchors in interwiki
343         links work.
345         * lisp/muse.el (muse-handle-implicit-link): Docfix: only care
346         about match 0.
347         (muse-handle-explicit-link): Docfix: this does not modify the
348         match data.
349         (muse-file-remote-p): In Emacs 21, ange-ftp-name-format is a list
350         that has the regexp in its car.
352 2007-06-12  Michael Olson  <mwolson@gnu.org>
354         * README: Document new etc/ directory.
356         * etc/IDEAS.muse: Install things from new contributors just after
357         the 3.03 release, since I won't have time to review the code
358         before the release.  Move to new etc/ directory.  Slides
359         publishing has been installed.
361         * lisp/muse-latex.el (muse-latex-slides-header): New option that
362         determines the header to use for publishing slides.
363         (muse-latex-lecture-notes-header): New option that determines the
364         header to use for publishing lecture notes.
365         (muse-latex-slides-markup-tags): New option containing tags to use
366         when publishing slides.
367         (muse-latex-permit-contents-tag): Move higher in file.
368         (muse-latex-slide-tag): New function to publish the <slide> tag.
369         ("slides", "slides-pdf"): New publishing styles that create slides
370         using Beamer.
371         ("lecture-notes", "lecture-notes-pdf"): New publishing styles that
372         create lecture notes using Beamer.
374         * lisp/muse.el: Re-add the auto-mode-alist part to top-level,
375         since otherwise Planner is not happy when `plan' is called during
376         init.  Remove stray quote from autoload snippet.
378 2007-06-11  Michael Olson  <mwolson@gnu.org>
380         * lisp/muse.el: Make the add-to-list 'auto-mode-alist part an
381         autoload, rather than having it exist at top-level.  Thanks to Leo
382         for the suggestion.
383         (muse-update-file-extension): Docfix.
385 2007-06-10  Michael Olson  <mwolson@gnu.org>
387         * lisp/muse-publish.el (muse-publish-strip-URL): Fix bug where
388         URLs were being removed during publishing.  Thanks to everyone who
389         reported this.
391 2007-06-09  Markus Hoenicka <markus.hoenicka@mhoenicka.de>
393         * lisp/muse-book.el
394         * lisp/muse-docbook.el
395         * lisp/muse-latex.el
396         * lisp/muse-publish.el: added support for <cite> element which
397         denotes in-text citations
399         * lisp/muse-html.el
400         * lisp/muse-groff.el
401         * lisp/muse-texinfo.el
402         * lisp/muse-xml.el: added support for <cite> element (stub)
404 2007-06-06  Michael Olson  <mwolson@gnu.org>
406         * lisp/muse-regexps.el (muse-table-line-regexp)
407         (muse-table-hline-regexp, muse-table-el-border-regexp): Fix
408         regexps so that they work with XEmacs 21.  Thanks to Adrian
409         Tritschler for the report.
411         * texi/muse.texi: Update copyright years.
412         (HTML): Document muse-xhtml-style-sheet.  Thanks
413         to thorne for noticing.
414         (Development): Change archive year to 2006.  Thanks to Adrian
415         Tritschler for noticing.  So *that's* why some people had the 2005
416         version ....
418 2007-06-05  Michael Olson  <mwolson@gnu.org>
420         * Makefile (install-info): Remove $(MANUAL).info part, since this
421         is taken care of already by texi/Makefile.  Thanks to Leo for the
422         report.
424         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Add
425         read-only properties to qotd contents, so that they don't get
426         double-escaped.  Thanks to Leo for the report.
428 2007-06-04  Michael Olson  <mwolson@gnu.org>
430         * lisp/muse-colors.el (muse-link-face): If the link is to a remote
431         -- that is, Tramp or ange-ftp -- file, then do not call
432         file-exists-p on it.  Thanks to Jim Ottaway for the suggestion.
433         Fixes bug #5115.
435         * lisp/muse-html.el (muse-html-insert-contents): Add
436         documentation.  Handle case where heading is read-only, but has
437         muse-contents property.  Remove the muse-contents property for any
438         heading we come across so as to avoid double-including an item in
439         an outer table of contents.
440         (muse-html-denote-headings): New function that denotes whether a
441         heading is not read-only by adding the muse-contents property to
442         it.
443         (muse-html-munge-buffer): If we are not to generate contents,
444         still denote headings, in case some outer layer wants to generate
445         contents for our headings.  This should fix a bug with table of
446         contents and the <include> tag.  Thanks to thorne for the report.
448         * lisp/muse-publish.el (muse-publish-markup-region): Let-bind
449         muse-publish-generate-contents and set it to nil.  This should
450         do the right thing when using <include> tags.
452 2007-06-02  Michael Olson  <mwolson@gnu.org>
454         * NEWS: Update for non-inlined image change and support for
455         table.el style tables.
457         * examples/Makefile (clean): Clean backup files.
459         * examples/QuickStart.muse (Images): New section that describes
460         how to inline and not inline images.
462         * lisp/muse-colors.el (muse-colors-resolve-image-file): Don't
463         touch images that have "URL:" in front of them.
465         * lisp/muse-protocols.el (muse-url-protocols): Add handler for
466         "URL:".  Use the identity function to resolve, since we don't want
467         to rip "URL:" out while publishing, due to some magic that depends
468         on that text.
469         (muse-browse-url-url): New function that browses URLs that have
470         "URL:" in front of them, by removing the "URL:" part and
471         reprocessing the remainder.
473         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
474         (muse-publish-url): Recognize images in the description before
475         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
476         for the suggested workaround.
477         (muse-publish-desc-transforms): Add `muse-publish-strip-URL' as a
478         default value.
479         (muse-publish-classify-url): If target begins with "URL:" return
480         type url.
481         (muse-publish-strip-URL): New function that strips "URL:" from the
482         beginning of a string.  This is used to remove URL: from the link
483         description.  * texi/muse.texi (Markup Strings): Clarify the
484         meanings of image-link, link, and link-and-anchor.
485         (muse-publish-markup-regexps): Move normal table rule to 2350.
486         Rule 2300 is now a regexp that matches table.el-style tables.
487         (muse-publish-markup-functions): Add table-el entry.
488         (muse-publish-table-el-table): New function that given a variant,
489         publishes a table.el-style table using the table in the matched
490         region.
491         (muse-publish-markup-table-el): New function that determines
492         whether the table.el-style table can be published, and what
493         variant to use.
495         * lisp/muse-regexps.el (muse-tag-regexp): New regexp that matches
496         the borders of table.el-style tables.
498         * lisp/muse-xml-common.el (muse-xml-markup-table): Make sure that
499         the table has sufficient whitespace in front of it.
501         * texi/muse.texi (Images): Update for new non-inlined image
502         ability and provide example.
504 2007-05-31  Michael Olson  <mwolson@gnu.org>
506         * NEWS: Add example for setting `muse-html-table-attributes'.
508         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
509         Publish multiple tbody tags if there is a horizontal separator
510         after the heading, because that is valid HTML after all.
512 2007-05-30  Michael Olson  <mwolson@gnu.org>
514         * NEWS: Update.
516         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
517         horizontal separators in tables.
519         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
520         horizontal separators in tables.
521         (muse-publish-trim-table): New function to remove initial and
522         final blank columns from a table.
523         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
524         with horizontal separators, aka "hlines".
526         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
527         defines the syntax of a horizontal separator in a table.
529         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
530         horizontal separators.  Publish header lines correctly.
532         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
533         where we have nonnumbers as a row type.  This ignores sorting for
534         hlines.
535         (muse-xml-markup-table): Deal with horizontal separators.  If the
536         markup supports table groups, make hlines separate table groups.
537         Otherwise, ignore them, since they cannot be marked up.  Together,
538         these changes allow us to support orgtbl-mode tables.  Thanks to
539         Carsten Dominik for the suggestion.
541 2007-05-26  Michael Olson  <mwolson@gnu.org>
543         * lisp/muse-project.el (muse-project-alist-styles): Allow for
544         other things to be added to each generated style as well.  For
545         example, this permits me to add
546         :base-url "http://blog.mwolson.org/"
547         for my blog.
549 2007-05-25  Michael Olson  <mwolson@gnu.org>
551         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
552         way of building Debian packages that preserves the original
553         release tarball and is more modular.
554         (debrevision, debrelease): Remove.
555         (dist): No need to remove the debian/ directory, since it is now
556         in its own branch.
557         (debprepare): Copy over debian/ directory properly.
559         * NEWS: Update.
561         * examples/Makefile (clean): Remove QuickStart.texi, in case
562         something went wrong during the build.
563         (%.pdf): Publish the example using the normal pdf style, rather
564         than info-pdf.
566         * examples/QuickStart.muse: Add myself to the authors list.
568         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
569         sufficient blank lines before the tag.
571         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
572         we have sufficient blank lines before the tag.
574         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
575         specifies the program to call in order to generate PDF content
576         from LaTeX content.
577         (muse-latex-pdf-cruft): New option that specifies the extensions
578         of files to remove after generating PDF output successfully.
579         (muse-latex-pdf-generate): Use these new options.  Work around the
580         annoying edge case where a tilde character exists in the filename
581         or directory path -- now this can only error out when the relative
582         path from the output file to the source file contains a tilde,
583         which is far less likely.
585         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
586         muse-publish-ensure-block here after all, because <lisp> et al may
587         occur inline as part of other things.
589         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
590         occur after full-document escaping, rather than before.  This
591         prevents automatically-inserted Texinfo code from being escaped.
592         (muse-texinfo-pdf-generate): Rewrite to call
593         `muse-latex-pdf-generate' with pdftex as the generating binary,
594         because texi2pdf suffers irredeemably from the tilde edge case
595         mentioned above.
597 2007-05-24  Michael Olson  <mwolson@gnu.org>
599         * NEWS: Drop vague entries and position interesting entries closer
600         to the top of each section.  Update for new changes.
602         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
603         and bzr metadata directories to the list of things to ignore.
605         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
606         `muse-publish-ensure-block-tag', since we will use it for more
607         than just tags.
608         (muse-publish-markup-list, muse-publish-verse-tag)
609         (muse-publish-quote-tag, muse-publish-example-tag)
610         (muse-publish-markup-attribute): Use it.  This fixes a bug that
611         can occur when these types of markup occur immediately after a
612         paragraph.  It's good to have defined behavior!
614         * texi/muse.texi (Markup Strings): Mention new argument for
615         link-and-anchor.
617 2007-05-19  Michael Olson  <mwolson@gnu.org>
619         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
620         published footnotes and footnote references.  Thanks to Scott
621         Jaderholm for the idea.
623         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
624         link-and-anchor, on the recommendation of the original submitter.
626 2007-05-14  Michael Olson  <mwolson@gnu.org>
628         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
629         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
630         suggestion.
632         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
633         file extension as the fourth argument.
635         * README, texi/muse.texi (Getting Help and Reporting Bugs):
636         Mention the new muse-el-logs mailing list.
638 2007-05-13  Michael Olson  <mwolson@gnu.org>
640         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
641         "\`" here.  This fixes a problem with publishing custom URLs.
643 2007-05-12  Michael Olson  <mwolson@gnu.org>
645         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
646         update the list if the current buffer is associated with a file.
647         This fixes a bug with M-x muse-publish-region in a temporary
648         buffer.
650 2007-05-01  Michael Olson  <mwolson@gnu.org>
652         * lisp/muse-publish.el (muse-publish-region): Remove read-only
653         properties from the published buffer, so that the results can be
654         manually tweaked.
656 2007-04-23  Michael Olson  <mwolson@gnu.org>
658         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
659         find the footnote that goes with a reference, leave the reference
660         as-is.  This fixes an error where control characters could be
661         placed in a published document.
663 2007-04-22  Michael Olson  <mwolson@gnu.org>
665         * IDEAS.muse: Add muse-slides.el to list of things to include
666         before release.
668         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
669         character.
670         (muse-protocol-find): Find protocols correctly.  Rewrite to use
671         catch/throw.
672         (muse-browse-url): Don't concatenate "\`" here.  Together, this
673         fixes a bug with browsing woman:// links.
675         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
676         where entry-dir has a trailing backslash.
677         (muse-project-publish-file): If a style is malformed, skip it and
678         display a warning message.  This should help people figure out
679         where the problem is.
681 2007-04-21  Michael Olson  <mwolson@gnu.org>
683         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
684         yet-to-be-included "contex" publishing style, use "$$" rather
685         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
686         this out.
688 2007-04-20  Michael Olson  <mwolson@gnu.org>
690         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
691         variable that causes the :before and :before-end hooks to be
692         ignored when non-nil.
693         (muse-publish-markup-region): Use it.  Also, guarantee that point
694         is at end of region after publishing.
695         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
696         variable.
698 2007-04-19  Michael Olson  <mwolson@gnu.org>
700         * IDEAS.muse: New file containing a list of ideas we have for new
701         features, or patches that have yet to be applied.
703         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
704         be so confusing.
706         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
707         docstring.
709         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
710         <literal> tags with muse-publish-literal-tag, rather than
711         muse-publish-mark-read-only.
712         (muse-publish-literal-tag): New function that publishes the
713         <literal> tag.  It adds the ability to add the optional "style"
714         and "exact" elements, which cause text to only be included if the
715         current publishing style matches some criteria.  The text will be
716         removed otherwise.  Thanks to Jim Ottaway for the implementation.
717         (muse-publish-mark-up-tag): Let the <markup> tag take the
718         additional optional elements "style" and "exact", with much the
719         same effect as the <literal> improvements, but after calling
720         "function" or publishing the region first.  Make it possible to
721         put <content> tags in <markup> regions in HTML publishing.
723 2007-04-12  Michael Olson  <mwolson@gnu.org>
725         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
726         that a blank line always exists after a heading.  This fixes a bug
727         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
728         for the report.
730         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
731         detection regexp to that which is used in Docbook and HTML
732         publishing styles.
734 2007-04-02  Michael Olson  <mwolson@gnu.org>
736         * README (muse-el-announce): Make a listing of mailing lists,
737         rather than pointing to the old EmacsWikiMailingList page.  Thanks
738         to Andreas Roehler for noticing.
740 2007-04-01  Michael Olson  <mwolson@gnu.org>
742         * lisp/muse-publish.el (muse-publish-date-format): Add
743 `       customization type and group.
744         (muse-publish-region): New interactive function that publishes a
745         region to a new buffer.
747         * texi/muse.texi: Use "document" rather than "manual".
749 2007-03-31  Michael Olson  <mwolson@gnu.org>
751         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
752         expression (muse-style-derived-p "latex" (muse-style "latex"))
753         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
754         for the catch.
756 2007-02-25  Michael Olson  <mwolson@gnu.org>
758         * lisp/muse-publish.el (muse-publish-date-format): New option that
759         specifies how to format the date when publishing Muse pages.
760         Thanks to Thomas Gehrlein for the suggestion.
761         (muse-publish-markup-buffer): Use it.
763 2007-02-23  Michael Olson  <mwolson@gnu.org>
765         * README: Add Prerequisites section to mention which versions of
766         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
767         the suggestion.  Update link destination for Muse's page on
768         emacswiki.org.
770 2007-02-15  Michael Olson  <mwolson@gnu.org>
772         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
773         be not just at beginning of line.  This fixes an error with the
774         <class> tag.  Thanks to Jim Pivarski for the report.
776 2007-02-14  Michael Olson  <mwolson@gnu.org>
778         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
779         whether something is an image before checking to see if it is a
780         URL.  Thanks to ITSUMI ken-ichi for the report.
782 2007-02-13  Michael Olson  <mwolson@gnu.org>
784         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
785         comments that have no text better.  Thanks to fang.lungang for the
786         report.
787         (muse-publish-markup-comment): Deal with case where no comment
788         text is provided.
790 2007-01-23  Michael Olson  <mwolson@gnu.org>
792         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
793         that ensures that at least one blank line exists at the given
794         position.  This is used to avoid paragraph detection problems when
795         block-level tags like <example> immediately follow a paragraph.
796         Thanks to Hans Ekbrand for the report.
797         (muse-publish-example-tag): Use it.
799 2007-01-19  Michael Olson  <mwolson@gnu.org>
801         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
802         previous blank line if we are publishing in Latex.  Otherwise,
803         that wouldn't be the right thing, so leave it be.
805 2007-01-17  Michael Olson  <mwolson@gnu.org>
807         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
808         multiple centered math lines on the same line; keep them on
809         different lines.  Use \[ math-text \] instead of $$math-text$$,
810         since the latter seems to be deprecated.  Thanks to Jody Klymak
811         for the pointer.
813 2007-01-15  Michael Olson  <mwolson@gnu.org>
815         * lisp/muse-latex2png.el (muse-publish-latex-tag)
816         (muse-publish-math-tag): Publish region read-only when current
817         style is Latex-derived, so that Muse does not escape it.
818         (muse-publish-math-tag): If 6 or more spaces come before the tag,
819         surround the region with "$$" rather than "$".  This is the Muse
820         syntax for something centered, so it should be a good fit.
822 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
824         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
825         protocol.
826         (muse-browse-url-man): Change man page URL format.  The code is
827         simpler when the section is left inside parentheses.
828         (muse-browse-url-woman): New function.
830 2007-01-14  Michael Olson  <mwolson@gnu.org>
832         * AUTHORS: Bookkeeping.
834         * lisp/muse-latex2png.el: Associate <math> tag with
835         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
836         Klymak for the report.
837         (muse-publish-math-tag): Use muse-insert-markup for the "$"
838         characters, so they don't get escaped.
840         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
841         make muse-style-derived-p easier to implement.
842         (muse-style-derived-p): If the style is not provided, fetch it and
843         check to see if the car is a string.  This should fix the other
844         problem that was reported.
846         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
847         explains a case where setting muse-file-extension to nil can cause
848         unexpected behavior.
850 2007-01-09  Michael Olson  <mwolson@gnu.org>
852         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
853         comments higher priority than tags.  Thanks to Stefan van der Walt
854         for the report.
856 2007-01-08  Michael Olson  <mwolson@gnu.org>
858         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
859         argument rather than calling match-string.  Thanks to Stefan van
860         der Walt for the report.  This should fix a bug with publishing
861         <include file="..." markup="example">.
863 2007-01-06  Michael Olson  <mwolson@gnu.org>
865         * Makefile (debclean): New rule split from debrevision and
866         debrelease.
867         (debbuild): Take distributor into account.
869         * Makefile.defs (DISTRIBUTOR): New field that tracks what
870         vendor/distributor we are building for.
872 2007-01-04  Michael Olson  <mwolson@gnu.org>
874         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
875         line.
877         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
878         point to muse-publish-src-tag by default, since <src> and
879         <example> have different parameters.
880         (muse-publish-src-tag): New barebones publishing function for
881         <src>, which is superseded when publishing in an HTML-based style.
883 2007-01-03  Michael Olson  <mwolson@gnu.org>
885         * lisp/muse-html.el (muse-html-src-tag): Document.
887         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
888         command that calls a given tag on the current buffer.  Attributes
889         may be passed.
890         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
891         it.
892         (muse-publish-srcify-buffer): New function that allows
893         markup="src" in the <include> tag.
894         (muse-publish-get-and-delete-attr): New macro that gets an
895         attribute from a list and removes the first instance of that
896         attribute from said list.
897         (muse-publish-markup-attribute): Handle markup="src".
898         (muse-publish-command-tag, muse-publish-include-tag): Use
899         muse-publish-get-and-delete-attr.  This allows the remaining
900         attributes to be passed.
902         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
903         as changes to <command> and <include>.
905 2006-12-30  Michael Olson  <mwolson@gnu.org>
907         * NEWS: Update.
909         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
910         from muse-publish-math-tag to avoid conflict with
911         muse-latex2png.el.
913 2006-12-23  Michael Olson  <mwolson@gnu.org>
915         * lisp/muse-latex2png.el: Update header, since this has been
916         rewritten sufficiently to not need an assignment from the original
917         author.
918         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
919         (muse-latex2png): Use two underscores to separate prefix and hash.
920         (muse-latex2png-region): New function split from
921         muse-publish-latex-tag that can be used easily by other code.
922         Detect whether we are using an HTML-based publishing style, and
923         insert a simpler markup if we are not.  If we are using a
924         Latex-based publishing style, do not generate an image, and leave
925         the region alone.  Return the path of the generated image, in case
926         other functions want to use this programmatically.
927         (muse-publish-latex-tag): Set a default prefix based on the name
928         of the current file.
929         (muse-publish-math-tag): New tag that surrounds the region with
930         "$" characters, so that it becomes a Latex math region, and then
931         publishes it.
933         * lisp/muse-publish.el (muse-style-derived-p): New function that
934         returns non-nil if a given style, or the current style if omitted,
935         is equal to or derived from the given base style.  This is useful
936         in <lisp> tags, because it allows the user to specify markup that
937         is only to be inserted for one particular style.
939 2006-12-22  Michael Olson  <mwolson@gnu.org>
941         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
942         (muse-html-src-tag): New function which publishes the <src> tag.
943         Thanks to Clinton Ebadi and Charles Wang for the initial
944         implementations.
946         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
948 2006-12-21  Michael Olson  <mwolson@gnu.org>
950         * examples/johnw/muse-johnw.el: Update for preferred
951         muse-derive-style usage.  Rename to muse-init.el.
953         * examples/mwolson/muse-init.el: Update.
955         * lisp/muse-book.el (muse-book-publish): New function split from
956         muse-book-publish-project.  This is used in the definitions for
957         the book-latex and book-pdf styles.
958         (muse-book-publish-p): New function split from muse-book-publish.
959         (muse-book-get-directives): New function that retrieves the
960         publishing directives from the given file.
961         (muse-book-publish): Use muse-book-get-directives to set the title
962         if no title was specified.
964         * lisp/muse-project.el (muse-project): Add :publish-project entry
965         to widget.
966         (muse-read-project, muse-project-find-file): Message fix.
967         (muse-project-publish-file-default): New function split from
968         muse-project-publish-file.
969         (muse-project-publish-file): Allow file-level publishing function
970         to be specified by the :publish element.  The default is
971         muse-project-publish-file-default.
972         (muse-project-publish-default): New function split from
973         muse-project-publish.
974         (muse-project-publish): Allow project-level publishing function to
975         be specified by :publish-project element.  The default is
976         muse-project-publish-default.
978         * lisp/muse-publish.el (muse-publish-file): Message fix.
980         * texi/muse.texi (Book): Mention new way to publish books and
981         provide an example, since the process may be non-obvious.
983 2006-12-20  Michael Olson  <mwolson@gnu.org>
985         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
986         content-modifying code from the rest of
987         muse-docbook-finalize-buffer.
989         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
990         muse-groff-finalize-buffer, since it adds content to the buffer.
992         * lisp/muse-html.el (muse-html-munge-buffer): Split out
993         content-modifying code from the rest of muse-html-finalize-buffer.
994         This fixes a bug when using <include> with <content> tags.
996         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
997         (muse-journal-latex-munge-buffer)
998         (muse-journal-rss-munge-buffer): Rename, since they add content to
999         the buffer.
1001         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
1002         muse-latex-finalize-buffer, since it adds content to the buffer.
1004         * lisp/muse-mode.el:
1005         * lisp/muse-project.el:
1006         * lisp/muse-publish.el:
1007         * lisp/muse.el: Fix recursive load error.
1009         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
1010         muse-texinfo-finalize-buffer, since it adds content to the buffer.
1012         * lisp/muse-wiki.el: Comment cleanup.
1014         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
1016 2006-12-17  Michael Olson  <mwolson@gnu.org>
1018         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
1019         Remove the definition of \comment, since Latex already has comment
1020         syntax.
1021         (muse-latex-markup-strings): Use the Latex comment syntax, rather
1022         than our own.  Thanks to Ryan Stutsman for pointing this out.
1024 2006-12-02  Michael Olson  <mwolson@gnu.org>
1026         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
1027         that this can generate a proper table of contents for Planner HTML
1028         publishing.
1030 2006-12-01  Michael Olson  <mwolson@gnu.org>
1032         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
1033         using a very old Emacs, avoid an infinite loop that could occur
1034         when the regexp is an empty string.
1036 2006-11-26  Michael Olson  <mwolson@gnu.org>
1038         * NEWS: Bring up to date.
1040         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
1041         list issues and multiple-stanza verse issues.  This takes care of
1042         all of the markup issues I was worried about.
1044         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
1045         (muse-project-publish-private-files): New option that indicates
1046         whether files with private filesystem permissions should be
1047         published.  The default is to publish them, since it avoids
1048         confusion in new users.
1049         (muse-project-private-p): Use it.
1051 2006-11-19  Michael Olson  <mwolson@gnu.org>
1053         * lisp/muse-project.el (muse-project-resolve-link): If no remote
1054         style is found, which means that the link is not a Muse page, do
1055         not add a suffix or prefix to it.  This should fix the
1056         "[[thing.owl]]" bug that Phillip Lord reported.
1058         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
1059         removing unused 2nd argument.
1061 2006-11-17  Michael Olson  <mwolson@gnu.org>
1063         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
1064         latex publishing where nested enumerated lists would be squashed
1065         together at the end.
1067 2006-11-16  Michael Olson  <mwolson@gnu.org>
1069         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
1070         list embedded in a definition list look right.  This also allows
1071         for definitions to be separated from their terms, much like the
1072         way HTML does it by default, if the user puts a blank line or a
1073         line break between the term and the definition.  If the term and
1074         definition are on the same line, they will be that way in the
1075         output as well.
1077 2006-11-11  Michael Olson  <mwolson@gnu.org>
1079         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
1080         for the report.
1081         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
1083 2006-11-07  Michael Olson  <mwolson@gnu.org>
1085         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
1086         release candidate for Muse 3.03, available.
1088         * NEWS: Update.
1090 2006-11-06  Michael Olson  <mwolson@gnu.org>
1092         * lisp/muse-project.el (muse-project-find-file): Fix bug when
1093         following a relative link worked even when the path was incorrect.
1095 2006-11-04  John Sullivan  <john@wjsullivan.net>
1097         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
1098         muse-follow-name-at-point to reduce collisions with other
1099         modes (Planner).
1101         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
1103 2006-11-04  Michael Olson  <mwolson@gnu.org>
1105         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
1106         optional, and make interwiki delimiter a regular rather than shy
1107         group.
1108         (muse-wiki-handle-implicit-interwiki): Rename from
1109         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
1110         (muse-wiki-handle-explicit-interwiki): New function that is
1111         smarter about where an explicit link ends in a buffer.  This
1112         allows you to refer to page names with invalid Wiki characters,
1113         such as underscores and dashes, merely by enclosing them in double
1114         brackets.  Also, a bug with recognizing project names too loosely
1115         has been fixed.
1117 2006-11-03  Michael Olson  <mwolson@gnu.org>
1119         * lisp/muse-project.el (muse-project-page-file): Make relative
1120         links work as expected, hopefully.
1122         * lisp/muse-publish.el (muse-publish-this-file): Set the current
1123         output style manually, since it will differ from anything in the
1124         publishing style list.
1126 2006-10-30  Michael Olson  <mwolson@gnu.org>
1128         * lisp/muse-colors.el (muse-colors-markup): Remove note about
1129         grouping elements, since that no longer applies.
1130         (muse-colors-custom-tags): Explicitly match against
1131         muse-tag-regexp to get the match-data set the way we want.  This
1132         really fixes the <example> highlighting bug that Stefan reported.
1133         (muse-configure-highlighting): Set the original value to the
1134         symbol, not the modified value.  Re-use modified rules properly.
1136         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
1137         introduced yesterday.
1139 2006-10-29  Michael Olson  <mwolson@gnu.org>
1141         * examples/mwolson: Update my example configuration.
1143         * NEWS: Update.
1145         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
1146         without a regexp in the first position before iterating through
1147         them to build muse-colors-vector.  This fixes a bug with the
1148         display of <example> tags.  Thanks to Stefan Reichör for the
1149         report.
1151         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
1152         files in projects to be linked to.
1154         * lisp/muse-publish.el (muse-publish-url): Allow the original link
1155         to serve as a description for a URL, as long as it differs from
1156         the destination URL.  This fixes the description of WikPage links
1157         in PDF output.
1158         (muse-publish-link-file): Check to see whether the given link
1159         points at a valid file.  If so, return it.  Otherwise, apply other
1160         transforms like prefix and link suffix.
1162         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
1163         "/", it is a file or directory, not a Muse page.  Thanks to
1164         Phillip Lord for the suggestion.
1166         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
1167         of the current page as the local path, instead of duplicating the
1168         remote file's path.  This probably fixes at least one reported
1169         bug. since it's quite major.
1170         (muse-wiki-update-project-file-regexp)
1171         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
1172         passed to regexp-opt, since that can cause Emacs 21 to throw an
1173         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
1174         DOT edu for the report.
1175         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
1177 2006-10-28  Michael Olson  <mwolson@gnu.org>
1179         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
1180         (muse-project-resolve-link): If the given style does not have a
1181         link-suffix, default to suffix.  This fixes a bug I was noticing
1182         when linking to a file that was published in both PDF and HTML
1183         form.
1185         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
1186         function that is used as a callback to determine the initial
1187         amount of indentation that the current dl item has.
1188         (muse-publish-surround-dl): Use it.  Pass the initial indent value
1189         and the post-indent value, instead of trying to determine them
1190         both.
1191         (muse-publish-strip-list-indentation): New function stripped from
1192         `muse-publish-surround-text' for readability.
1193         (muse-publish-surround-text): Instead of taking a determine-indent
1194         value, take a determine-indent-func function, which is called just
1195         after finding the next list item.  If we are asked to determine
1196         the amount of indentation, concatenate indent and post-indent the
1197         first time around.  This effectively fixes all known definition
1198         list issues.
1200 2006-10-16  Michael Olson  <mwolson@gnu.org>
1202         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
1203         other software -- namely, Planner -- can detect whether they are
1204         using a version of Muse that supports nested tags.
1205         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
1206         muse-publish-goto-tag-end.
1208         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
1209         Adapt for nested tags.
1211         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
1212         <class> tag is nestable.  Thanks to Phillip Lord for noticing
1213         this.
1215         * lisp/muse-publish.el (muse-publish-markup-tag)
1216         (muse-publish-quote-tag): Use muse-goto-tag-end.
1218         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
1220 2006-10-15  Michael Olson  <mwolson@gnu.org>
1222         * AUTHORS: Bookkeeping.
1224         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
1225         tag.
1227         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
1228         tags.
1230         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
1232         * lisp/muse-import-docbook.el (muse-import-docbook)
1233         (muse-import-docbook-files): Docfix.
1234         (muse-import-docbook-get-title): Remove cl.el-ism.
1236         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
1238         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
1240         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
1242         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
1243         (muse-next-reference, muse-previous-reference): Minor whitespace
1244         changes.
1245         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
1246         the suggestion.
1248         * lisp/muse-poem.el (muse-poem-tag): Ditto.
1250         * lisp/muse-publish.el (muse-publish-markup-tags)
1251         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
1252         element and make 4th element determine whether tags are nestable.
1253         (muse-publish-goto-tag-end): New function that moves to the end of
1254         a tag.  Handle nested tags when NESTED is non-nil.
1255         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
1256         5th element for function.
1257         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
1258         this on several scenarios, and it seems to work.
1259         (muse-publish-surround-text): Accept new optional argument
1260         LIST-ITEM which determines the regexp to use for list items.  The
1261         default is to use muse-list-item-regexp.
1263         * muse.texi (Markup Tags): Mention nestable tags.
1265         * NEWS: Mention new files.
1267 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
1269         * lisp/muse-import-docbook.el: New file that converts Docbook XML
1270         into Muse format.
1272         * lisp/muse-import-xml.el: New file that provides helper routines
1273         for converting XML-ish files to Muse format.
1275 2006-10-10  Michael Olson  <mwolson@gnu.org>
1277         * NEWS: Update for 3.02.7 bugfix release.
1279 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
1281         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
1282         using the value in the muse #date directive.
1283         (muse-blosxom-use-metadate): New option that determines whether or
1284         not to use the #postdate directive.
1285         (muse-blosxom-format-date): Convert a date string to PyBlosxom
1286         metadate plugin format.
1288 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
1290         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
1291         recognised URLs.
1293         * muse.texi: Clarify handling of implicit links by mentioning
1294         which characters can prevent Muse from recognizing something as an
1295         implicit link.
1297 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
1299         * lisp/muse-mode.el (muse-next-reference)
1300         (muse-previous-reference): Fix bug #6367 by moving point to the
1301         beginning of the link.
1303 2006-09-26  Michael Olson  <mwolson@gnu.org>
1305         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
1306         beginning-of-line.  This should fix a bug that was noticed in
1307         recent Emacs 22 builds.
1309         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
1310         eval-and-compile block to avoid a compiler warning.
1312 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
1314         * lisp/muse-backlink.el (muse-backlink-split-string):
1315         Compatibility with Emacs versions < 22
1316         (muse-backlink-pending): New internal variable
1317         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
1318         that backlinks are inserted at the right time.
1319         (muse-backlink-insert-hook-func): Remove unwind-protection; check
1320         for pending backlink, and that this is the targe page.
1321         (muse-backlink-handle-link): Don’t handle the link if we are
1322         already handling one. Return the link as well as the parent links.
1324 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
1326         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
1327         #6942 - muse-blosxom-new-entry fails when using tags.
1329 2006-09-14  Michael Olson  <mwolson@gnu.org>
1331         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
1332         compiler warning.
1334 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
1336         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
1337         function: Protect all wikiwords from START to END from further
1338         processing.
1339         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
1341 2006-09-13  Michael Olson  <mwolson@gnu.org>
1343         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
1344         adopted from Jim Ottaway's patch.  It removes links from the
1345         heading, and then marks the region read-only to inhibit WikiWord
1346         detection.
1348 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
1350         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
1351         special handling for headings.
1352         (muse-texinfo-remove-links): New function that removes explicit
1353         links from the given strings, replacing them with a description.
1355 2006-09-11  Michael Olson  <mwolson@gnu.org>
1357         * muse.texi (Getting Help and Reporting Bugs): Mention the
1358         muse-el-internationalization mailing list.
1360         * lisp/muse.el (muse-path-sans-extension): New function that acts
1361         like file-name-sans-extension, but guarantees to never modify the
1362         directory part of the path.  Thanks to Evan Monroig for
1363         investigating this.
1365         * lisp/muse-book.el (muse-book-publish-project): Use
1366         muse-path-sans-extension instead of file-name-sans-extension.
1368         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
1369         Ditto.
1371 2006-08-30  Michael Olson  <mwolson@gnu.org>
1373         * muse.texi (Blosxom Requirements): Fix typo.
1375         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
1376         directories for bzr and darcs.
1378         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
1379         contrib/pyblosxom/getstamps.py: Update version and headers.
1381 2006-08-27  Michael Olson  <mwolson@gnu.org>
1383         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
1384         nil values before they get to mapconcat.  This fixes a lockup when
1385         muse-wiki-match-all-project-files is nil.
1387         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
1388         (muse-wiki-ignore-implicit-links-to-current-page)
1389         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
1390         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
1391         (muse-wiki-publish-small-title-words)
1392         (muse-wiki-publish-pretty-title): Docfix.
1393         (muse-wiki-update-local-wikiword-regexp): Rename from
1394         muse-wiki-update-local-wikiword-regexp.  Set
1395         muse-wiki-project-file-regexp instead of
1396         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
1397         take muse-wiki-use-wikiword into account, since this is a
1398         different concept now.
1399         (muse-wiki-update-wikiword-regexp): Remove.
1400         (muse-wiki-wikiword-regexp): In-line the :set function.
1401         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
1403 2006-08-26  Michael Olson  <mwolson@gnu.org>
1405         * lisp/muse-publish.el (muse-publish-surround-text): When looking
1406         for indented list items, ignore blank lines.
1408         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
1409         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
1410         mapconcat.  This should hopefully fix a problem with large amounts
1411         of files with spaces in their name.  Thanks to Greg Detre for the
1412         report.
1414 2006-08-24  Michael Olson  <mwolson@gnu.org>
1416         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
1417         numbers from the argument to format-time-string.  This fixes an
1418         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
1420 2006-08-18  Michael Olson  <mwolson@gnu.org>
1422         * lisp/muse-project.el (muse-project-file-entries): Since we are
1423         given a full path, match against the filename as well.  This fixes
1424         an issue where backup files were being added to the file alist.
1426         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
1427         from muse-html.el.
1429 2006-08-12  Michael Olson  <mwolson@gnu.org>
1431         * Makefile (.PHONY): Don't use line continuations.
1432         (realclean fullclean): Call realclean in subdirs, not distclean.
1433         (distclean): Don't call realclean, since this would wipe out our
1434         autoloads file.
1435         (dist): Use correct path to autoloads file.
1437         * NEWS: Catch up with the latest changes.
1439         * experimental/Makefile (.PHONY): Wrap long line.
1441         * lisp/Makefile (distclean): Do the same thing as "clean", not
1442         "realclean".
1444         * lisp/muse-project.el (muse-project-get-applicable-style):
1445         Indentation tweak.
1446         (muse-project-ignore-regexp, muse-project-recurse-directory):
1447         Docfix.
1448         (muse-project-of-file): Try the ignored files regexp against the
1449         base filename as well as the entire path.
1451         * lisp/muse-publish.el (muse-publish-this-file): Display message
1452         if the buffer is not associated with any file, so that we avoid
1453         errors later on.
1454         (muse-publish-url-desc): New function taken from muse-publish-url
1455         that causes a URL description to be transformed.
1456         (muse-publish-url): Call muse-publish-url-desc on either the
1457         description or the original URL if it will be used as a
1458         description.  Accept the original URL as an argument, in case it
1459         was transformed earlier.
1460         (muse-publish-insert-url): Pass original URL as an argument.
1461         (muse-publish-markup-link): Make this somewhat easier to follow.
1462         Pass original URL as argument.
1463         (muse-publish-get-style): If the same style is used to publish to
1464         two different directories, prompt the user for which directory to
1465         use.
1466         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
1467         latest changes.
1468         (muse-publish-markup-url): Pass original URL as an argument.  This
1469         fixes the "nil" description for bare URLs that was in 3.02.91.
1470         Nothing like finding a bug just after completing the announcement
1471         of a release.
1473         * lisp/muse.el: Use defalias whenever convenient.
1474         (muse-version): Set version to 3.02.92 (3.03 RC2).
1476 2006-08-10  Michael Olson  <mwolson@gnu.org>
1478         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
1479         style does not derive from any other class, return `t' here.
1480         This, along with the corresponding change to muse-publish.el,
1481         fixes a problem with the table of contents getting inserted
1482         multiple times for custom html-based styles.
1483         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
1484         smarter method for table centering that works with XHTML.
1486         * lisp/muse-latex2png.el Rename all functions to have a
1487         "muse-latex2png" prefix.  Turn all variables into customizable
1488         options in the muse-latex2png group.
1489         (muse-latex2png-img-dest): New option specifying where to place
1490         the images.
1491         (muse-latex2png-template): New option containing the template to
1492         use for the surrounding LaTeX code.
1493         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
1494         compliance.
1495         (muse-latex2png-move2pubdir): Avoid multiple redundant error
1496         messages when something else goes wrong.  Create the image
1497         subdirectory if it doesn't exist already -- thanks to Christian
1498         Straßer for the report.  Expand the filename properly.
1499         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
1500         and filename expansion.
1501         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
1502         the default directory properly.
1504         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
1505         do not run the same function twice.
1507 2006-08-08  Michael Olson  <mwolson@gnu.org>
1509         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
1510         introduced wrong-type-argument error.
1512         * lisp/muse-html.el (muse-html-markup-strings)
1513         (muse-xhtml-markup-string): Cause table definition that contains
1514         image to be center-aligned.  This should fix an issue with images
1515         not being centered when captions are very long.
1517         * lisp/muse-publish.el (muse-publish-table-fields): Trim
1518         whitespace from fields once we have split them up.
1520         * lisp/muse.el (muse-trim-whitespace): New function that strips
1521         leading and trailing whitespace from a string.
1523 2006-08-07  Michael Olson  <mwolson@gnu.org>
1525         * NEWS: Update through patch-95.
1527         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
1528         to match the tags.
1529         (muse-colors-explicit-link): Show images in link descriptions if
1530         inlined images are enabled.
1532         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
1533         definitions for 'image-with-desc, 'image, and 'image-link.
1534         (muse-docbook-markup-paragraph): If an inlined image begins a
1535         paragraph, insert <para> before it.
1536         (muse-docbook-fixup-images): New function that upper-cases the
1537         "format" attribute of the <imagedata> tag.
1538         (muse-docbook-finalize-buffer): Call it.
1540         * lisp/muse-html.el (muse-html-markup-strings): Publish images
1541         with descriptions as centered tables, with a centered caption
1542         underneath.  The resulting look is consistent with the way that
1543         they are published in the LaTeX style.  Thanks to Jody Klymak for
1544         the suggestion.
1545         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
1546         valid way to center a table.
1547         (muse-html-markup-paragraph): Use class="image" instead of
1548         "image-link" for paragraphs that start with an embedded image.
1550         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
1551         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
1552         suggestion.
1553         (muse-latex-markup-specials-image): New option that enables
1554         escaping of specials in images.  This was split from the URL
1555         specials.
1556         (muse-latex-decide-specials): Handle 'image context.
1557         (muse-latex-fixup-dquotes): Go to beginning of document, instead
1558         of relying on caller to do this for us.
1560         * lisp/muse-publish.el (muse-publish-escape-specials): Document
1561         'image context.
1562         (muse-publish-url): Use 'image context for images.  Use 'image
1563         instead of 'image-link and 'image-link in place of
1564         'url-with-image.  Separate the image file from its extension so
1565         that docbook and texinfo can publish images correctly.
1566         (muse-publish-markup-link): Don't force a description if one is
1567         not given.  This fixes a bug where images without descriptions
1568         were being published as 'image-with-desc instead of 'image.
1570         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
1571         images the same as URLs.
1572         (muse-texinfo-markup-strings): Improve image markup to achieve an
1573         effect similar to that of the LaTeX publishing style.  Simplify
1574         'url string.
1576         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
1578         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
1579         when we have to use the custom version of this function.
1581         * muse.texi (Images): Explain how to toggle inlining of images and
1582         give better examples.  Mention captions and that captioned images
1583         should not be used inside of text paragraphs.
1584         (Markup Strings): Bring up-to-date with the changes made since
1585         3.02.
1587 2006-08-06  Michael Olson  <mwolson@gnu.org>
1589         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
1590         in the Emacs source tree.
1592         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
1593         in the Emacs source tree.
1595         * ChangeLog.3: New file created from the old ChangeLog.
1597         * Makefile.defs (VERSION): Set to 3.02.91.
1599         * NEWS: Update through patch-84.
1601         * lisp/muse.el (muse-version): Set to 3.02.91.
1603         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
1604         attributes.
1605         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
1606         delimiter are instead of hard-coding it.
1608         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
1609         (muse-mode): Make filling definition lists work better.  This
1610         should fix #5359.
1612         * lisp/muse-publish.el (muse-style-run-hooks): Use
1613         `muse-style-element' instead of `muse-get-keyword' here.  This
1614         should fix #6399.
1616         * muse.texi: Set version to 3.02.91 (3.02 RC2).
1618 See ChangeLog.3 for earlier changes.
1620 ;; Local Variables:
1621 ;; coding: utf-8
1622 ;; End: