Widen before executing code in lisp tags
[muse-el.git] / ChangeLog
blob13edb7b3bdd59d4598e396a68b36954b99818c4f
1 2007-07-15  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse-journal.el (muse-journal-html-entry-template)
4         (muse-journal-rdf-entry-template)
5         (muse-journal-rss-entry-template): Mention that this can be text
6         or a filename.
7         (muse-journal-rdf-entry-template, muse-journal-rss-header)
8         (muse-journal-rss-footer, muse-journal-rss-entry-template): Add
9         newlines to make the output look nicer.
10         (muse-journal-html-munge-buffer, muse-journal-rss-munge-buffer):
11         Use muse-insert-file-or-string for the entry templates, rather
12         than muse-insert-markup.  This allows <lisp> and <markup> tags to
13         be acted on.  Thanks to Scott Hyde for the report.
14         (muse-journal-html-munge-buffer): Escape quote of the day using
15         entire-document specials before snarfing it.  Mark entire template
16         as read-only -- this fixes an incorrect escaping bug.  Remove
17         read-only properties before replacing template matches so that
18         they can still be escaped with entire-document specials later on.
19         (muse-journal-rss-munge-buffer): Make sure that title is escaped
20         properly.
21         (muse-journal-markup-tags): Rename from
22         muse-journal-latex-markup-tags, because we will use it for
23         journal-rss-entry as well.
24         (muse-journal-qotd-tag): Move higher.  Use begin-quote-item and
25         end-quote-item.
26         (muse-journal-rss-munge-buffer): Use journal-rss-entry rather than
27         html.
28         ("journal-latex", "journal-pdf", "journal-book-latex")
29         ("journal-book-pdf"): Use muse-journal-markup-tags rather than
30         muse-journal-latex-markup-tags.
31         ("journal-rss-entry"): New style that is used by journal-rss and
32         journal-rdf to mark up individual entries.  It is needed so that
33         we can do something meaningful with the qotd tag.
34         (muse-journal-rdf-summarize-entries): Set this to nil by default,
35         because it is annoying.  Update docs to mention this.
36         (muse-journal-rss-summarize-entries): Docfix.
38         * lisp/muse-publish.el (muse-insert-file-or-string): Use
39         muse-publish-markup-header-footer-tags.  I'm not quite sure how
40         this change got reverted.
41         (muse-markup-tag-info): Make into a function.  Move common code
42         here, rather than duplicating it in two places.  Deal with case
43         where muse-publish-use-header-footer-tags is non-nil.
44         (muse-publish-markup-specials, muse-publish-inhibit-style-hooks)
45         (muse-inhibit-style-tags): Move higher to avoid byte-compiler
46         warning.
47         (muse-publish-use-header-footer-tags): New variable that indicates
48         whether we should use just the header and footer tags, rather than
49         the full set.
50         (muse-insert-file-or-string): Bind
51         muse-publish-use-header-footer-tags to t.
52         (muse-publish-markup-tag, muse-publish-call-tag-on-buffer):
53         Simplify call to muse-markup-tag-info.
54         (muse-publish-mark-up-tag): Bind
55         muse-publish-use-header-footer-tags to nil.
57         * texi/muse.texi (Journal): Update for recent changes.
59 2007-07-14  Michael Olson  <mwolson@gnu.org>
61         * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Don't
62         delete the remainder of the buffer, since this causes the
63         resulting RDF to have invalid syntax.  Thanks to Phillip Lord for
64         the report and the suggested fix.
66         * lisp/muse-publish.el (muse-publish-markup-regexps): Add "^" to
67         beginning of table-el regexp.  This fixes a bug where Muse stalls
68         when trying to publish a malformed table.  Thanks to Ye Wenbin for
69         the report and the suggested fix.
71 2007-07-12  Michael Olson  <mwolson@gnu.org>
73         * lisp/muse-wiki.el (muse-wiki-interwiki-regexp): Set to nil by
74         default, rather than the empty string.  This really fixes the bug
75         that occurred when using Muse with muse-project-alist set to nil.
76         Thanks to Jonathan Underwood for the report.
77         (muse-wiki-update-interwiki-regexp): Set
78         muse-wiki-interwiki-regexp to nil if muse-project-alist is not
79         defined.
80         (muse-wiki-handle-implicit-interwiki)
81         (muse-wiki-handle-explicit-interwiki): Handle case where
82         muse-wiki-interwiki-regexp is nil.
84 2007-07-10  Michael Olson  <mwolson@gnu.org>
86         * lisp/muse-mode.el (muse-grep): Abort search if the current
87         project contains no directories.
89         * lisp/muse-project.el (muse-project-file-alist): If
90         muse-project-alist is not defined, or project is nil, return nil
91         right away.  This ought to fix a bug that occurred when using Muse
92         with muse-project-alist set to nil.
93         (muse-project-of-file): Make sure muse-project-alist is not nil.
94         (muse-project-save-buffers): Make sure project is not nil.
96         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Deal with
97         case where muse-project-alist is nil.
99         * lisp/muse.el (muse-replace-regexp-in-string): Explicitly check
100         for XEmacs, since color-theme.el is poorly behaved, and defines
101         its own replace-in-string.  Bad color-theme.el -- no cookie for
102         you.
104 2007-07-01  Michael Olson  <mwolson@gnu.org>
106         * Makefile (.PHONY): Update for new debian package rules.
108         * lisp/muse-book.el (muse-book-latex-footer): Wrap long line.
110         * lisp/muse-docbook.el (muse-docbook-fixup-citations): Re-indent.
111         Use save-restriction properly.
112         (muse-docbook-entities, muse-docbook-bibliography): : Re-indent.
114         * lisp/muse-latex.el (muse-latex-footer): Wrap long line.
115         (muse-latex-fixup-citations): Re-indent.  Use save-restriction
116         properly.
117         (muse-latex-bibliography): Re-indent.
119         * lisp/muse-publish.el (muse-publish-get-and-delete-attr): Move
120         higher.  This fixes an error at startup with some versions of
121         Emacs.
122         (muse-publish-cite-tag): Re-indent.
124         * lisp/muse-wiki.el (muse-wiki-handle-explicit-interwiki): Narrow
125         to the end of the link part, so as to exclude the description from
126         the match.  This fixes a bug with three-part links that have
127         descriptions.  Thanks to everyone who pointed it out.
129 2007-06-18  Michael Olson  <mwolson@gnu.org>
131         * lisp/muse-html.el (muse-html-markup-strings): Add anchor.
132         (muse-xhtml1.1-markup-strings): New option that specifies XHTML
133         1.1 specific markup strings.
134         (muse-html-insert-anchor): Use 'anchor string, rather than
135         hard-coding it.  Thanks to Chris Corsair for the suggestion.
136         ("xhtml1.0"): New style that is an alias for the xhtml style.
137         ("xhtml1.1"): New style that publishes XHTML 1.1 compliant output.
139 2007-06-17  Michael Olson  <mwolson@gnu.org>
141         * examples/QuickStart.muse: Make images local so that the Info
142         version of this document works.  Add <example> for the Literal
143         paragraphs chapter, so that it is clear what is happening.
145         * Makefile: Add elpa target, which is used for building an ELPA
146         package for Muse.
148         * Makefile.defs (ELPADIR, ELPADESC): New variables used for
149         building ELPA packages.
151         * examples/Makefile (%.html, %.pdf, %.info): Add message to
152         indicate what we are publishing.
153         (realclean distclean fullclean): Remove all TeX crud.
155         * examples/emacs-muse.png, examples/muse-made-with.png: Include so
156         that the Info version of QuickStart can publish correctly.
158         * lisp/muse-latex.el (muse-latex-slides-header)
159         (muse-latex-lecture-notes-header): Docfix.
161         * lisp/muse-project.el (muse-project-ignore-regexp): Add .git to
162         the list of things to ignore.
164         * lisp/muse-publish.el (muse-publish-markup-list): Remove unused
165         variable.
167         * lisp/muse-texinfo.el (muse-texinfo-process-natively): Set
168         default to nil, since texinfmt.el is a serious nuisance.
169         (muse-texinfo-markup-strings): Add newlines to begin-example and
170         end-example.
171         (muse-texinfo-decide-specials): Also escape URL-type specials in a
172         whole slew of other contexts.
174         * lisp/muse-xml-common.el (muse-xml-encoding-map): Change group to
175         muse-xml.
177         * lisp/muse-xml.el (muse-xml-footer): Docfix.
179         * lisp/muse.el (muse-version): Release Emacs Muse version 3.03.
181 2007-06-16  Michael Olson  <mwolson@gnu.org>
183         * etc/IDEAS.muse: Add some ideas from David D. Smith.
185         * examples/QuickStart.muse: Overhaul.
187         * lisp/muse-project.el (muse-project): Call the last part of a
188         muse-project-alist entry "Output styles" rather than "styles".
190         * lisp/muse-publish.el (muse-publish-table-fields): Handle case
191         where we have a pipe character at the beginning of line.
193         * lisp/muse-xml-common.el (muse-xml-sort-table): Fix typo that was
194         causing tables to not be sorted at all.
196         * texi/muse.texi: Overhaul.  It would be too time-consuming to
197         list all of the changes here.  The "Getting Started" and
198         "Projects" chapters, in particular, were heavily revised.
200 2007-06-15  Michael Olson  <mwolson@gnu.org>
202         * NEWS: Update.
204         * examples/QuickStart.muse: Mention new features.
206         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Docfix.
207         Remove C-c C-i keybinding, since it conflicts with C-c TAB in the
208         terminal, and C-c TAB is more important.  Most people will not
209         want to toggle images on and off that often.
211         * lisp/muse-mode.el (muse-mode-map): Bind muse-insert-thing to C-c
212         C-i as well, so that it works in the terminal.
214         * lisp/muse-publish.el (muse-publish-literal-tag): Make the output
215         look a bit tidier when removing the region.
217         * lisp/muse-regexps.el (muse-list-item-regexp): Put definition
218         list regexp part before other parts.
219         (muse-ol-item-regexp): New regexp that specifies how to match an
220         ordered list item.
221         (muse-ul-item-regexp): New regexp that specifies how to match an
222         unordered list item.
223         (muse-table-field-regexp): New regexp that specifies how to match
224         a definition list entry.
226         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Work around
227         lack of support for @headitem in texinfmt.el.
229         * lisp/muse.el: Wrap muse-line-beginning-position and
230         muse-line-end-position in `eval-and-compile', since they are now
231         used in muse.el.
232         (muse-list-item-type): Use a simpler algorithm for detecting which
233         kind of list item we have.  This fixes a bug where a number in a
234         definition list term was being detected incorrectly as an ordered
235         list item.  Fixes bug #6250.
236         (muse-forward-list-item): Get the entire line with the list item.
237         For some reason, Emacs 21 was not populating match 2 correctly,
238         unlike Emacs 22, so this workaround was needed.
240         * texi/muse.texi: (Keystroke Summary): Remove C-c
241         C-i (`muse-insert-tag') documentation, and mention C-c C-i as an
242         alternative keybinding to the C-c TAB stuff.  Mention
243         muse-colors-toggle-inline-images.
245 2007-06-14  Michael Olson  <mwolson@gnu.org>
247         * README: Mention that RelaxNG schema is in etc/ directory.
249         * etc/emacs-wiki-migration.txt: New document that explains how to
250         migrate from emacs-wiki to Muse.
252         * etc/muse.rnc: Increment version number to 1.0.  Fix several
253         nested emphasis and nested lists edge cases.  Move here from
254         examples/.
256         * lisp/muse-mode.el (muse-mode-map): Permit C-c C-M-t to do the
257         same thing as C-c C-S-t, since the former works better in the
258         console.  Thanks to Leo for the suggestion.
260         * lisp/muse-publish.el (muse-publish-markup-table)
261         (muse-publish-markup-table-el): Include a newline in the return
262         string, so that paragraph detection does not get confused.
264         * lisp/muse.el (muse-with-temp-buffer): Docfix.
266         * texi/muse.texi (Keystroke Summary): Document the C-c C-M-t
267         keybinding.
269 2007-06-13  Michael Olson  <mwolson@gnu.org>
271         * etc/IDEAS.muse: Mark three-part-links item as done.
273         * experimental/muse-message.el: Remove guard for muse-define-style
274         calls.
276         * lisp/muse-colors.el (muse-configure-highlighting): Fix bug where
277         markup rules were being interpreted in reverse order.  This should
278         make implicit interwiki links work properly again.
279         (muse-link-face): Strip anchor from end of a path, so that this
280         works with anchors in interwiki links.
281         (muse-colors-insert-image): Catch error that occurs in Emacs 21
282         when an image does not exist.
284         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Permit
285         anchors.
286         (muse-wiki-handle-implicit-interwiki): Docfix.  Make anchors in
287         interwiki links work.  Thanks to Jim Ottaway for the initial
288         implementation.
289         (muse-wiki-handle-explicit-interwiki): Make anchors in interwiki
290         links work.
292         * lisp/muse.el (muse-handle-implicit-link): Docfix: only care
293         about match 0.
294         (muse-handle-explicit-link): Docfix: this does not modify the
295         match data.
296         (muse-file-remote-p): In Emacs 21, ange-ftp-name-format is a list
297         that has the regexp in its car.
299 2007-06-12  Michael Olson  <mwolson@gnu.org>
301         * README: Document new etc/ directory.
303         * etc/IDEAS.muse: Install things from new contributors just after
304         the 3.03 release, since I won't have time to review the code
305         before the release.  Move to new etc/ directory.  Slides
306         publishing has been installed.
308         * lisp/muse-latex.el (muse-latex-slides-header): New option that
309         determines the header to use for publishing slides.
310         (muse-latex-lecture-notes-header): New option that determines the
311         header to use for publishing lecture notes.
312         (muse-latex-slides-markup-tags): New option containing tags to use
313         when publishing slides.
314         (muse-latex-permit-contents-tag): Move higher in file.
315         (muse-latex-slide-tag): New function to publish the <slide> tag.
316         ("slides", "slides-pdf"): New publishing styles that create slides
317         using Beamer.
318         ("lecture-notes", "lecture-notes-pdf"): New publishing styles that
319         create lecture notes using Beamer.
321         * lisp/muse.el: Re-add the auto-mode-alist part to top-level,
322         since otherwise Planner is not happy when `plan' is called during
323         init.  Remove stray quote from autoload snippet.
325 2007-06-11  Michael Olson  <mwolson@gnu.org>
327         * lisp/muse.el: Make the add-to-list 'auto-mode-alist part an
328         autoload, rather than having it exist at top-level.  Thanks to Leo
329         for the suggestion.
330         (muse-update-file-extension): Docfix.
332 2007-06-10  Michael Olson  <mwolson@gnu.org>
334         * lisp/muse-publish.el (muse-publish-strip-URL): Fix bug where
335         URLs were being removed during publishing.  Thanks to everyone who
336         reported this.
338 2007-06-09  Markus Hoenicka <markus.hoenicka@mhoenicka.de>
340         * lisp/muse-book.el
341         * lisp/muse-docbook.el
342         * lisp/muse-latex.el
343         * lisp/muse-publish.el: added support for <cite> element which
344         denotes in-text citations
346         * lisp/muse-html.el
347         * lisp/muse-groff.el
348         * lisp/muse-texinfo.el
349         * lisp/muse-xml.el: added support for <cite> element (stub)
351 2007-06-06  Michael Olson  <mwolson@gnu.org>
353         * lisp/muse-regexps.el (muse-table-line-regexp)
354         (muse-table-hline-regexp, muse-table-el-border-regexp): Fix
355         regexps so that they work with XEmacs 21.  Thanks to Adrian
356         Tritschler for the report.
358         * texi/muse.texi: Update copyright years.
359         (HTML): Document muse-xhtml-style-sheet.  Thanks
360         to thorne for noticing.
361         (Development): Change archive year to 2006.  Thanks to Adrian
362         Tritschler for noticing.  So *that's* why some people had the 2005
363         version ....
365 2007-06-05  Michael Olson  <mwolson@gnu.org>
367         * Makefile (install-info): Remove $(MANUAL).info part, since this
368         is taken care of already by texi/Makefile.  Thanks to Leo for the
369         report.
371         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Add
372         read-only properties to qotd contents, so that they don't get
373         double-escaped.  Thanks to Leo for the report.
375 2007-06-04  Michael Olson  <mwolson@gnu.org>
377         * lisp/muse-colors.el (muse-link-face): If the link is to a remote
378         -- that is, Tramp or ange-ftp -- file, then do not call
379         file-exists-p on it.  Thanks to Jim Ottaway for the suggestion.
380         Fixes bug #5115.
382         * lisp/muse-html.el (muse-html-insert-contents): Add
383         documentation.  Handle case where heading is read-only, but has
384         muse-contents property.  Remove the muse-contents property for any
385         heading we come across so as to avoid double-including an item in
386         an outer table of contents.
387         (muse-html-denote-headings): New function that denotes whether a
388         heading is not read-only by adding the muse-contents property to
389         it.
390         (muse-html-munge-buffer): If we are not to generate contents,
391         still denote headings, in case some outer layer wants to generate
392         contents for our headings.  This should fix a bug with table of
393         contents and the <include> tag.  Thanks to thorne for the report.
395         * lisp/muse-publish.el (muse-publish-markup-region): Let-bind
396         muse-publish-generate-contents and set it to nil.  This should
397         do the right thing when using <include> tags.
399 2007-06-02  Michael Olson  <mwolson@gnu.org>
401         * NEWS: Update for non-inlined image change and support for
402         table.el style tables.
404         * examples/Makefile (clean): Clean backup files.
406         * examples/QuickStart.muse (Images): New section that describes
407         how to inline and not inline images.
409         * lisp/muse-colors.el (muse-colors-resolve-image-file): Don't
410         touch images that have "URL:" in front of them.
412         * lisp/muse-protocols.el (muse-url-protocols): Add handler for
413         "URL:".  Use the identity function to resolve, since we don't want
414         to rip "URL:" out while publishing, due to some magic that depends
415         on that text.
416         (muse-browse-url-url): New function that browses URLs that have
417         "URL:" in front of them, by removing the "URL:" part and
418         reprocessing the remainder.
420         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
421         (muse-publish-url): Recognize images in the description before
422         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
423         for the suggested workaround.
424         (muse-publish-desc-transforms): Add `muse-publish-strip-URL' as a
425         default value.
426         (muse-publish-classify-url): If target begins with "URL:" return
427         type url.
428         (muse-publish-strip-URL): New function that strips "URL:" from the
429         beginning of a string.  This is used to remove URL: from the link
430         description.  * texi/muse.texi (Markup Strings): Clarify the
431         meanings of image-link, link, and link-and-anchor.
432         (muse-publish-markup-regexps): Move normal table rule to 2350.
433         Rule 2300 is now a regexp that matches table.el-style tables.
434         (muse-publish-markup-functions): Add table-el entry.
435         (muse-publish-table-el-table): New function that given a variant,
436         publishes a table.el-style table using the table in the matched
437         region.
438         (muse-publish-markup-table-el): New function that determines
439         whether the table.el-style table can be published, and what
440         variant to use.
442         * lisp/muse-regexps.el (muse-tag-regexp): New regexp that matches
443         the borders of table.el-style tables.
445         * lisp/muse-xml-common.el (muse-xml-markup-table): Make sure that
446         the table has sufficient whitespace in front of it.
448         * texi/muse.texi (Images): Update for new non-inlined image
449         ability and provide example.
451 2007-05-31  Michael Olson  <mwolson@gnu.org>
453         * NEWS: Add example for setting `muse-html-table-attributes'.
455         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
456         Publish multiple tbody tags if there is a horizontal separator
457         after the heading, because that is valid HTML after all.
459 2007-05-30  Michael Olson  <mwolson@gnu.org>
461         * NEWS: Update.
463         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
464         horizontal separators in tables.
466         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
467         horizontal separators in tables.
468         (muse-publish-trim-table): New function to remove initial and
469         final blank columns from a table.
470         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
471         with horizontal separators, aka "hlines".
473         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
474         defines the syntax of a horizontal separator in a table.
476         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
477         horizontal separators.  Publish header lines correctly.
479         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
480         where we have nonnumbers as a row type.  This ignores sorting for
481         hlines.
482         (muse-xml-markup-table): Deal with horizontal separators.  If the
483         markup supports table groups, make hlines separate table groups.
484         Otherwise, ignore them, since they cannot be marked up.  Together,
485         these changes allow us to support orgtbl-mode tables.  Thanks to
486         Carsten Dominik for the suggestion.
488 2007-05-26  Michael Olson  <mwolson@gnu.org>
490         * lisp/muse-project.el (muse-project-alist-styles): Allow for
491         other things to be added to each generated style as well.  For
492         example, this permits me to add
493         :base-url "http://blog.mwolson.org/"
494         for my blog.
496 2007-05-25  Michael Olson  <mwolson@gnu.org>
498         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
499         way of building Debian packages that preserves the original
500         release tarball and is more modular.
501         (debrevision, debrelease): Remove.
502         (dist): No need to remove the debian/ directory, since it is now
503         in its own branch.
504         (debprepare): Copy over debian/ directory properly.
506         * NEWS: Update.
508         * examples/Makefile (clean): Remove QuickStart.texi, in case
509         something went wrong during the build.
510         (%.pdf): Publish the example using the normal pdf style, rather
511         than info-pdf.
513         * examples/QuickStart.muse: Add myself to the authors list.
515         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
516         sufficient blank lines before the tag.
518         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
519         we have sufficient blank lines before the tag.
521         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
522         specifies the program to call in order to generate PDF content
523         from LaTeX content.
524         (muse-latex-pdf-cruft): New option that specifies the extensions
525         of files to remove after generating PDF output successfully.
526         (muse-latex-pdf-generate): Use these new options.  Work around the
527         annoying edge case where a tilde character exists in the filename
528         or directory path -- now this can only error out when the relative
529         path from the output file to the source file contains a tilde,
530         which is far less likely.
532         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
533         muse-publish-ensure-block here after all, because <lisp> et al may
534         occur inline as part of other things.
536         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
537         occur after full-document escaping, rather than before.  This
538         prevents automatically-inserted Texinfo code from being escaped.
539         (muse-texinfo-pdf-generate): Rewrite to call
540         `muse-latex-pdf-generate' with pdftex as the generating binary,
541         because texi2pdf suffers irredeemably from the tilde edge case
542         mentioned above.
544 2007-05-24  Michael Olson  <mwolson@gnu.org>
546         * NEWS: Drop vague entries and position interesting entries closer
547         to the top of each section.  Update for new changes.
549         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
550         and bzr metadata directories to the list of things to ignore.
552         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
553         `muse-publish-ensure-block-tag', since we will use it for more
554         than just tags.
555         (muse-publish-markup-list, muse-publish-verse-tag)
556         (muse-publish-quote-tag, muse-publish-example-tag)
557         (muse-publish-markup-attribute): Use it.  This fixes a bug that
558         can occur when these types of markup occur immediately after a
559         paragraph.  It's good to have defined behavior!
561         * texi/muse.texi (Markup Strings): Mention new argument for
562         link-and-anchor.
564 2007-05-19  Michael Olson  <mwolson@gnu.org>
566         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
567         published footnotes and footnote references.  Thanks to Scott
568         Jaderholm for the idea.
570         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
571         link-and-anchor, on the recommendation of the original submitter.
573 2007-05-14  Michael Olson  <mwolson@gnu.org>
575         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
576         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
577         suggestion.
579         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
580         file extension as the fourth argument.
582         * README, texi/muse.texi (Getting Help and Reporting Bugs):
583         Mention the new muse-el-logs mailing list.
585 2007-05-13  Michael Olson  <mwolson@gnu.org>
587         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
588         "\`" here.  This fixes a problem with publishing custom URLs.
590 2007-05-12  Michael Olson  <mwolson@gnu.org>
592         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
593         update the list if the current buffer is associated with a file.
594         This fixes a bug with M-x muse-publish-region in a temporary
595         buffer.
597 2007-05-01  Michael Olson  <mwolson@gnu.org>
599         * lisp/muse-publish.el (muse-publish-region): Remove read-only
600         properties from the published buffer, so that the results can be
601         manually tweaked.
603 2007-04-23  Michael Olson  <mwolson@gnu.org>
605         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
606         find the footnote that goes with a reference, leave the reference
607         as-is.  This fixes an error where control characters could be
608         placed in a published document.
610 2007-04-22  Michael Olson  <mwolson@gnu.org>
612         * IDEAS.muse: Add muse-slides.el to list of things to include
613         before release.
615         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
616         character.
617         (muse-protocol-find): Find protocols correctly.  Rewrite to use
618         catch/throw.
619         (muse-browse-url): Don't concatenate "\`" here.  Together, this
620         fixes a bug with browsing woman:// links.
622         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
623         where entry-dir has a trailing backslash.
624         (muse-project-publish-file): If a style is malformed, skip it and
625         display a warning message.  This should help people figure out
626         where the problem is.
628 2007-04-21  Michael Olson  <mwolson@gnu.org>
630         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
631         yet-to-be-included "contex" publishing style, use "$$" rather
632         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
633         this out.
635 2007-04-20  Michael Olson  <mwolson@gnu.org>
637         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
638         variable that causes the :before and :before-end hooks to be
639         ignored when non-nil.
640         (muse-publish-markup-region): Use it.  Also, guarantee that point
641         is at end of region after publishing.
642         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
643         variable.
645 2007-04-19  Michael Olson  <mwolson@gnu.org>
647         * IDEAS.muse: New file containing a list of ideas we have for new
648         features, or patches that have yet to be applied.
650         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
651         be so confusing.
653         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
654         docstring.
656         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
657         <literal> tags with muse-publish-literal-tag, rather than
658         muse-publish-mark-read-only.
659         (muse-publish-literal-tag): New function that publishes the
660         <literal> tag.  It adds the ability to add the optional "style"
661         and "exact" elements, which cause text to only be included if the
662         current publishing style matches some criteria.  The text will be
663         removed otherwise.  Thanks to Jim Ottaway for the implementation.
664         (muse-publish-mark-up-tag): Let the <markup> tag take the
665         additional optional elements "style" and "exact", with much the
666         same effect as the <literal> improvements, but after calling
667         "function" or publishing the region first.  Make it possible to
668         put <content> tags in <markup> regions in HTML publishing.
670 2007-04-12  Michael Olson  <mwolson@gnu.org>
672         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
673         that a blank line always exists after a heading.  This fixes a bug
674         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
675         for the report.
677         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
678         detection regexp to that which is used in Docbook and HTML
679         publishing styles.
681 2007-04-02  Michael Olson  <mwolson@gnu.org>
683         * README (muse-el-announce): Make a listing of mailing lists,
684         rather than pointing to the old EmacsWikiMailingList page.  Thanks
685         to Andreas Roehler for noticing.
687 2007-04-01  Michael Olson  <mwolson@gnu.org>
689         * lisp/muse-publish.el (muse-publish-date-format): Add
690 `       customization type and group.
691         (muse-publish-region): New interactive function that publishes a
692         region to a new buffer.
694         * texi/muse.texi: Use "document" rather than "manual".
696 2007-03-31  Michael Olson  <mwolson@gnu.org>
698         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
699         expression (muse-style-derived-p "latex" (muse-style "latex"))
700         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
701         for the catch.
703 2007-02-25  Michael Olson  <mwolson@gnu.org>
705         * lisp/muse-publish.el (muse-publish-date-format): New option that
706         specifies how to format the date when publishing Muse pages.
707         Thanks to Thomas Gehrlein for the suggestion.
708         (muse-publish-markup-buffer): Use it.
710 2007-02-23  Michael Olson  <mwolson@gnu.org>
712         * README: Add Prerequisites section to mention which versions of
713         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
714         the suggestion.  Update link destination for Muse's page on
715         emacswiki.org.
717 2007-02-15  Michael Olson  <mwolson@gnu.org>
719         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
720         be not just at beginning of line.  This fixes an error with the
721         <class> tag.  Thanks to Jim Pivarski for the report.
723 2007-02-14  Michael Olson  <mwolson@gnu.org>
725         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
726         whether something is an image before checking to see if it is a
727         URL.  Thanks to ITSUMI ken-ichi for the report.
729 2007-02-13  Michael Olson  <mwolson@gnu.org>
731         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
732         comments that have no text better.  Thanks to fang.lungang for the
733         report.
734         (muse-publish-markup-comment): Deal with case where no comment
735         text is provided.
737 2007-01-23  Michael Olson  <mwolson@gnu.org>
739         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
740         that ensures that at least one blank line exists at the given
741         position.  This is used to avoid paragraph detection problems when
742         block-level tags like <example> immediately follow a paragraph.
743         Thanks to Hans Ekbrand for the report.
744         (muse-publish-example-tag): Use it.
746 2007-01-19  Michael Olson  <mwolson@gnu.org>
748         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
749         previous blank line if we are publishing in Latex.  Otherwise,
750         that wouldn't be the right thing, so leave it be.
752 2007-01-17  Michael Olson  <mwolson@gnu.org>
754         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
755         multiple centered math lines on the same line; keep them on
756         different lines.  Use \[ math-text \] instead of $$math-text$$,
757         since the latter seems to be deprecated.  Thanks to Jody Klymak
758         for the pointer.
760 2007-01-15  Michael Olson  <mwolson@gnu.org>
762         * lisp/muse-latex2png.el (muse-publish-latex-tag)
763         (muse-publish-math-tag): Publish region read-only when current
764         style is Latex-derived, so that Muse does not escape it.
765         (muse-publish-math-tag): If 6 or more spaces come before the tag,
766         surround the region with "$$" rather than "$".  This is the Muse
767         syntax for something centered, so it should be a good fit.
769 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
771         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
772         protocol.
773         (muse-browse-url-man): Change man page URL format.  The code is
774         simpler when the section is left inside parentheses.
775         (muse-browse-url-woman): New function.
777 2007-01-14  Michael Olson  <mwolson@gnu.org>
779         * AUTHORS: Bookkeeping.
781         * lisp/muse-latex2png.el: Associate <math> tag with
782         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
783         Klymak for the report.
784         (muse-publish-math-tag): Use muse-insert-markup for the "$"
785         characters, so they don't get escaped.
787         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
788         make muse-style-derived-p easier to implement.
789         (muse-style-derived-p): If the style is not provided, fetch it and
790         check to see if the car is a string.  This should fix the other
791         problem that was reported.
793         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
794         explains a case where setting muse-file-extension to nil can cause
795         unexpected behavior.
797 2007-01-09  Michael Olson  <mwolson@gnu.org>
799         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
800         comments higher priority than tags.  Thanks to Stefan van der Walt
801         for the report.
803 2007-01-08  Michael Olson  <mwolson@gnu.org>
805         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
806         argument rather than calling match-string.  Thanks to Stefan van
807         der Walt for the report.  This should fix a bug with publishing
808         <include file="..." markup="example">.
810 2007-01-06  Michael Olson  <mwolson@gnu.org>
812         * Makefile (debclean): New rule split from debrevision and
813         debrelease.
814         (debbuild): Take distributor into account.
816         * Makefile.defs (DISTRIBUTOR): New field that tracks what
817         vendor/distributor we are building for.
819 2007-01-04  Michael Olson  <mwolson@gnu.org>
821         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
822         line.
824         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
825         point to muse-publish-src-tag by default, since <src> and
826         <example> have different parameters.
827         (muse-publish-src-tag): New barebones publishing function for
828         <src>, which is superseded when publishing in an HTML-based style.
830 2007-01-03  Michael Olson  <mwolson@gnu.org>
832         * lisp/muse-html.el (muse-html-src-tag): Document.
834         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
835         command that calls a given tag on the current buffer.  Attributes
836         may be passed.
837         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
838         it.
839         (muse-publish-srcify-buffer): New function that allows
840         markup="src" in the <include> tag.
841         (muse-publish-get-and-delete-attr): New macro that gets an
842         attribute from a list and removes the first instance of that
843         attribute from said list.
844         (muse-publish-markup-attribute): Handle markup="src".
845         (muse-publish-command-tag, muse-publish-include-tag): Use
846         muse-publish-get-and-delete-attr.  This allows the remaining
847         attributes to be passed.
849         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
850         as changes to <command> and <include>.
852 2006-12-30  Michael Olson  <mwolson@gnu.org>
854         * NEWS: Update.
856         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
857         from muse-publish-math-tag to avoid conflict with
858         muse-latex2png.el.
860 2006-12-23  Michael Olson  <mwolson@gnu.org>
862         * lisp/muse-latex2png.el: Update header, since this has been
863         rewritten sufficiently to not need an assignment from the original
864         author.
865         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
866         (muse-latex2png): Use two underscores to separate prefix and hash.
867         (muse-latex2png-region): New function split from
868         muse-publish-latex-tag that can be used easily by other code.
869         Detect whether we are using an HTML-based publishing style, and
870         insert a simpler markup if we are not.  If we are using a
871         Latex-based publishing style, do not generate an image, and leave
872         the region alone.  Return the path of the generated image, in case
873         other functions want to use this programmatically.
874         (muse-publish-latex-tag): Set a default prefix based on the name
875         of the current file.
876         (muse-publish-math-tag): New tag that surrounds the region with
877         "$" characters, so that it becomes a Latex math region, and then
878         publishes it.
880         * lisp/muse-publish.el (muse-style-derived-p): New function that
881         returns non-nil if a given style, or the current style if omitted,
882         is equal to or derived from the given base style.  This is useful
883         in <lisp> tags, because it allows the user to specify markup that
884         is only to be inserted for one particular style.
886 2006-12-22  Michael Olson  <mwolson@gnu.org>
888         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
889         (muse-html-src-tag): New function which publishes the <src> tag.
890         Thanks to Clinton Ebadi and Charles Wang for the initial
891         implementations.
893         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
895 2006-12-21  Michael Olson  <mwolson@gnu.org>
897         * examples/johnw/muse-johnw.el: Update for preferred
898         muse-derive-style usage.  Rename to muse-init.el.
900         * examples/mwolson/muse-init.el: Update.
902         * lisp/muse-book.el (muse-book-publish): New function split from
903         muse-book-publish-project.  This is used in the definitions for
904         the book-latex and book-pdf styles.
905         (muse-book-publish-p): New function split from muse-book-publish.
906         (muse-book-get-directives): New function that retrieves the
907         publishing directives from the given file.
908         (muse-book-publish): Use muse-book-get-directives to set the title
909         if no title was specified.
911         * lisp/muse-project.el (muse-project): Add :publish-project entry
912         to widget.
913         (muse-read-project, muse-project-find-file): Message fix.
914         (muse-project-publish-file-default): New function split from
915         muse-project-publish-file.
916         (muse-project-publish-file): Allow file-level publishing function
917         to be specified by the :publish element.  The default is
918         muse-project-publish-file-default.
919         (muse-project-publish-default): New function split from
920         muse-project-publish.
921         (muse-project-publish): Allow project-level publishing function to
922         be specified by :publish-project element.  The default is
923         muse-project-publish-default.
925         * lisp/muse-publish.el (muse-publish-file): Message fix.
927         * texi/muse.texi (Book): Mention new way to publish books and
928         provide an example, since the process may be non-obvious.
930 2006-12-20  Michael Olson  <mwolson@gnu.org>
932         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
933         content-modifying code from the rest of
934         muse-docbook-finalize-buffer.
936         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
937         muse-groff-finalize-buffer, since it adds content to the buffer.
939         * lisp/muse-html.el (muse-html-munge-buffer): Split out
940         content-modifying code from the rest of muse-html-finalize-buffer.
941         This fixes a bug when using <include> with <content> tags.
943         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
944         (muse-journal-latex-munge-buffer)
945         (muse-journal-rss-munge-buffer): Rename, since they add content to
946         the buffer.
948         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
949         muse-latex-finalize-buffer, since it adds content to the buffer.
951         * lisp/muse-mode.el:
952         * lisp/muse-project.el:
953         * lisp/muse-publish.el:
954         * lisp/muse.el: Fix recursive load error.
956         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
957         muse-texinfo-finalize-buffer, since it adds content to the buffer.
959         * lisp/muse-wiki.el: Comment cleanup.
961         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
963 2006-12-17  Michael Olson  <mwolson@gnu.org>
965         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
966         Remove the definition of \comment, since Latex already has comment
967         syntax.
968         (muse-latex-markup-strings): Use the Latex comment syntax, rather
969         than our own.  Thanks to Ryan Stutsman for pointing this out.
971 2006-12-02  Michael Olson  <mwolson@gnu.org>
973         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
974         that this can generate a proper table of contents for Planner HTML
975         publishing.
977 2006-12-01  Michael Olson  <mwolson@gnu.org>
979         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
980         using a very old Emacs, avoid an infinite loop that could occur
981         when the regexp is an empty string.
983 2006-11-26  Michael Olson  <mwolson@gnu.org>
985         * NEWS: Bring up to date.
987         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
988         list issues and multiple-stanza verse issues.  This takes care of
989         all of the markup issues I was worried about.
991         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
992         (muse-project-publish-private-files): New option that indicates
993         whether files with private filesystem permissions should be
994         published.  The default is to publish them, since it avoids
995         confusion in new users.
996         (muse-project-private-p): Use it.
998 2006-11-19  Michael Olson  <mwolson@gnu.org>
1000         * lisp/muse-project.el (muse-project-resolve-link): If no remote
1001         style is found, which means that the link is not a Muse page, do
1002         not add a suffix or prefix to it.  This should fix the
1003         "[[thing.owl]]" bug that Phillip Lord reported.
1005         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
1006         removing unused 2nd argument.
1008 2006-11-17  Michael Olson  <mwolson@gnu.org>
1010         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
1011         latex publishing where nested enumerated lists would be squashed
1012         together at the end.
1014 2006-11-16  Michael Olson  <mwolson@gnu.org>
1016         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
1017         list embedded in a definition list look right.  This also allows
1018         for definitions to be separated from their terms, much like the
1019         way HTML does it by default, if the user puts a blank line or a
1020         line break between the term and the definition.  If the term and
1021         definition are on the same line, they will be that way in the
1022         output as well.
1024 2006-11-11  Michael Olson  <mwolson@gnu.org>
1026         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
1027         for the report.
1028         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
1030 2006-11-07  Michael Olson  <mwolson@gnu.org>
1032         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
1033         release candidate for Muse 3.03, available.
1035         * NEWS: Update.
1037 2006-11-06  Michael Olson  <mwolson@gnu.org>
1039         * lisp/muse-project.el (muse-project-find-file): Fix bug when
1040         following a relative link worked even when the path was incorrect.
1042 2006-11-04  John Sullivan  <john@wjsullivan.net>
1044         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
1045         muse-follow-name-at-point to reduce collisions with other
1046         modes (Planner).
1048         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
1050 2006-11-04  Michael Olson  <mwolson@gnu.org>
1052         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
1053         optional, and make interwiki delimiter a regular rather than shy
1054         group.
1055         (muse-wiki-handle-implicit-interwiki): Rename from
1056         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
1057         (muse-wiki-handle-explicit-interwiki): New function that is
1058         smarter about where an explicit link ends in a buffer.  This
1059         allows you to refer to page names with invalid Wiki characters,
1060         such as underscores and dashes, merely by enclosing them in double
1061         brackets.  Also, a bug with recognizing project names too loosely
1062         has been fixed.
1064 2006-11-03  Michael Olson  <mwolson@gnu.org>
1066         * lisp/muse-project.el (muse-project-page-file): Make relative
1067         links work as expected, hopefully.
1069         * lisp/muse-publish.el (muse-publish-this-file): Set the current
1070         output style manually, since it will differ from anything in the
1071         publishing style list.
1073 2006-10-30  Michael Olson  <mwolson@gnu.org>
1075         * lisp/muse-colors.el (muse-colors-markup): Remove note about
1076         grouping elements, since that no longer applies.
1077         (muse-colors-custom-tags): Explicitly match against
1078         muse-tag-regexp to get the match-data set the way we want.  This
1079         really fixes the <example> highlighting bug that Stefan reported.
1080         (muse-configure-highlighting): Set the original value to the
1081         symbol, not the modified value.  Re-use modified rules properly.
1083         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
1084         introduced yesterday.
1086 2006-10-29  Michael Olson  <mwolson@gnu.org>
1088         * examples/mwolson: Update my example configuration.
1090         * NEWS: Update.
1092         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
1093         without a regexp in the first position before iterating through
1094         them to build muse-colors-vector.  This fixes a bug with the
1095         display of <example> tags.  Thanks to Stefan Reichör for the
1096         report.
1098         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
1099         files in projects to be linked to.
1101         * lisp/muse-publish.el (muse-publish-url): Allow the original link
1102         to serve as a description for a URL, as long as it differs from
1103         the destination URL.  This fixes the description of WikPage links
1104         in PDF output.
1105         (muse-publish-link-file): Check to see whether the given link
1106         points at a valid file.  If so, return it.  Otherwise, apply other
1107         transforms like prefix and link suffix.
1109         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
1110         "/", it is a file or directory, not a Muse page.  Thanks to
1111         Phillip Lord for the suggestion.
1113         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
1114         of the current page as the local path, instead of duplicating the
1115         remote file's path.  This probably fixes at least one reported
1116         bug. since it's quite major.
1117         (muse-wiki-update-project-file-regexp)
1118         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
1119         passed to regexp-opt, since that can cause Emacs 21 to throw an
1120         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
1121         DOT edu for the report.
1122         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
1124 2006-10-28  Michael Olson  <mwolson@gnu.org>
1126         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
1127         (muse-project-resolve-link): If the given style does not have a
1128         link-suffix, default to suffix.  This fixes a bug I was noticing
1129         when linking to a file that was published in both PDF and HTML
1130         form.
1132         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
1133         function that is used as a callback to determine the initial
1134         amount of indentation that the current dl item has.
1135         (muse-publish-surround-dl): Use it.  Pass the initial indent value
1136         and the post-indent value, instead of trying to determine them
1137         both.
1138         (muse-publish-strip-list-indentation): New function stripped from
1139         `muse-publish-surround-text' for readability.
1140         (muse-publish-surround-text): Instead of taking a determine-indent
1141         value, take a determine-indent-func function, which is called just
1142         after finding the next list item.  If we are asked to determine
1143         the amount of indentation, concatenate indent and post-indent the
1144         first time around.  This effectively fixes all known definition
1145         list issues.
1147 2006-10-16  Michael Olson  <mwolson@gnu.org>
1149         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
1150         other software -- namely, Planner -- can detect whether they are
1151         using a version of Muse that supports nested tags.
1152         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
1153         muse-publish-goto-tag-end.
1155         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
1156         Adapt for nested tags.
1158         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
1159         <class> tag is nestable.  Thanks to Phillip Lord for noticing
1160         this.
1162         * lisp/muse-publish.el (muse-publish-markup-tag)
1163         (muse-publish-quote-tag): Use muse-goto-tag-end.
1165         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
1167 2006-10-15  Michael Olson  <mwolson@gnu.org>
1169         * AUTHORS: Bookkeeping.
1171         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
1172         tag.
1174         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
1175         tags.
1177         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
1179         * lisp/muse-import-docbook.el (muse-import-docbook)
1180         (muse-import-docbook-files): Docfix.
1181         (muse-import-docbook-get-title): Remove cl.el-ism.
1183         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
1185         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
1187         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
1189         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
1190         (muse-next-reference, muse-previous-reference): Minor whitespace
1191         changes.
1192         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
1193         the suggestion.
1195         * lisp/muse-poem.el (muse-poem-tag): Ditto.
1197         * lisp/muse-publish.el (muse-publish-markup-tags)
1198         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
1199         element and make 4th element determine whether tags are nestable.
1200         (muse-publish-goto-tag-end): New function that moves to the end of
1201         a tag.  Handle nested tags when NESTED is non-nil.
1202         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
1203         5th element for function.
1204         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
1205         this on several scenarios, and it seems to work.
1206         (muse-publish-surround-text): Accept new optional argument
1207         LIST-ITEM which determines the regexp to use for list items.  The
1208         default is to use muse-list-item-regexp.
1210         * muse.texi (Markup Tags): Mention nestable tags.
1212         * NEWS: Mention new files.
1214 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
1216         * lisp/muse-import-docbook.el: New file that converts Docbook XML
1217         into Muse format.
1219         * lisp/muse-import-xml.el: New file that provides helper routines
1220         for converting XML-ish files to Muse format.
1222 2006-10-10  Michael Olson  <mwolson@gnu.org>
1224         * NEWS: Update for 3.02.7 bugfix release.
1226 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
1228         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
1229         using the value in the muse #date directive.
1230         (muse-blosxom-use-metadate): New option that determines whether or
1231         not to use the #postdate directive.
1232         (muse-blosxom-format-date): Convert a date string to PyBlosxom
1233         metadate plugin format.
1235 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
1237         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
1238         recognised URLs.
1240         * muse.texi: Clarify handling of implicit links by mentioning
1241         which characters can prevent Muse from recognizing something as an
1242         implicit link.
1244 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
1246         * lisp/muse-mode.el (muse-next-reference)
1247         (muse-previous-reference): Fix bug #6367 by moving point to the
1248         beginning of the link.
1250 2006-09-26  Michael Olson  <mwolson@gnu.org>
1252         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
1253         beginning-of-line.  This should fix a bug that was noticed in
1254         recent Emacs 22 builds.
1256         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
1257         eval-and-compile block to avoid a compiler warning.
1259 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
1261         * lisp/muse-backlink.el (muse-backlink-split-string):
1262         Compatibility with Emacs versions < 22
1263         (muse-backlink-pending): New internal variable
1264         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
1265         that backlinks are inserted at the right time.
1266         (muse-backlink-insert-hook-func): Remove unwind-protection; check
1267         for pending backlink, and that this is the targe page.
1268         (muse-backlink-handle-link): Don’t handle the link if we are
1269         already handling one. Return the link as well as the parent links.
1271 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
1273         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
1274         #6942 - muse-blosxom-new-entry fails when using tags.
1276 2006-09-14  Michael Olson  <mwolson@gnu.org>
1278         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
1279         compiler warning.
1281 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
1283         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
1284         function: Protect all wikiwords from START to END from further
1285         processing.
1286         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
1288 2006-09-13  Michael Olson  <mwolson@gnu.org>
1290         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
1291         adopted from Jim Ottaway's patch.  It removes links from the
1292         heading, and then marks the region read-only to inhibit WikiWord
1293         detection.
1295 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
1297         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
1298         special handling for headings.
1299         (muse-texinfo-remove-links): New function that removes explicit
1300         links from the given strings, replacing them with a description.
1302 2006-09-11  Michael Olson  <mwolson@gnu.org>
1304         * muse.texi (Getting Help and Reporting Bugs): Mention the
1305         muse-el-internationalization mailing list.
1307         * lisp/muse.el (muse-path-sans-extension): New function that acts
1308         like file-name-sans-extension, but guarantees to never modify the
1309         directory part of the path.  Thanks to Evan Monroig for
1310         investigating this.
1312         * lisp/muse-book.el (muse-book-publish-project): Use
1313         muse-path-sans-extension instead of file-name-sans-extension.
1315         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
1316         Ditto.
1318 2006-08-30  Michael Olson  <mwolson@gnu.org>
1320         * muse.texi (Blosxom Requirements): Fix typo.
1322         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
1323         directories for bzr and darcs.
1325         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
1326         contrib/pyblosxom/getstamps.py: Update version and headers.
1328 2006-08-27  Michael Olson  <mwolson@gnu.org>
1330         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
1331         nil values before they get to mapconcat.  This fixes a lockup when
1332         muse-wiki-match-all-project-files is nil.
1334         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
1335         (muse-wiki-ignore-implicit-links-to-current-page)
1336         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
1337         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
1338         (muse-wiki-publish-small-title-words)
1339         (muse-wiki-publish-pretty-title): Docfix.
1340         (muse-wiki-update-local-wikiword-regexp): Rename from
1341         muse-wiki-update-local-wikiword-regexp.  Set
1342         muse-wiki-project-file-regexp instead of
1343         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
1344         take muse-wiki-use-wikiword into account, since this is a
1345         different concept now.
1346         (muse-wiki-update-wikiword-regexp): Remove.
1347         (muse-wiki-wikiword-regexp): In-line the :set function.
1348         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
1350 2006-08-26  Michael Olson  <mwolson@gnu.org>
1352         * lisp/muse-publish.el (muse-publish-surround-text): When looking
1353         for indented list items, ignore blank lines.
1355         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
1356         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
1357         mapconcat.  This should hopefully fix a problem with large amounts
1358         of files with spaces in their name.  Thanks to Greg Detre for the
1359         report.
1361 2006-08-24  Michael Olson  <mwolson@gnu.org>
1363         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
1364         numbers from the argument to format-time-string.  This fixes an
1365         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
1367 2006-08-18  Michael Olson  <mwolson@gnu.org>
1369         * lisp/muse-project.el (muse-project-file-entries): Since we are
1370         given a full path, match against the filename as well.  This fixes
1371         an issue where backup files were being added to the file alist.
1373         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
1374         from muse-html.el.
1376 2006-08-12  Michael Olson  <mwolson@gnu.org>
1378         * Makefile (.PHONY): Don't use line continuations.
1379         (realclean fullclean): Call realclean in subdirs, not distclean.
1380         (distclean): Don't call realclean, since this would wipe out our
1381         autoloads file.
1382         (dist): Use correct path to autoloads file.
1384         * NEWS: Catch up with the latest changes.
1386         * experimental/Makefile (.PHONY): Wrap long line.
1388         * lisp/Makefile (distclean): Do the same thing as "clean", not
1389         "realclean".
1391         * lisp/muse-project.el (muse-project-get-applicable-style):
1392         Indentation tweak.
1393         (muse-project-ignore-regexp, muse-project-recurse-directory):
1394         Docfix.
1395         (muse-project-of-file): Try the ignored files regexp against the
1396         base filename as well as the entire path.
1398         * lisp/muse-publish.el (muse-publish-this-file): Display message
1399         if the buffer is not associated with any file, so that we avoid
1400         errors later on.
1401         (muse-publish-url-desc): New function taken from muse-publish-url
1402         that causes a URL description to be transformed.
1403         (muse-publish-url): Call muse-publish-url-desc on either the
1404         description or the original URL if it will be used as a
1405         description.  Accept the original URL as an argument, in case it
1406         was transformed earlier.
1407         (muse-publish-insert-url): Pass original URL as an argument.
1408         (muse-publish-markup-link): Make this somewhat easier to follow.
1409         Pass original URL as argument.
1410         (muse-publish-get-style): If the same style is used to publish to
1411         two different directories, prompt the user for which directory to
1412         use.
1413         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
1414         latest changes.
1415         (muse-publish-markup-url): Pass original URL as an argument.  This
1416         fixes the "nil" description for bare URLs that was in 3.02.91.
1417         Nothing like finding a bug just after completing the announcement
1418         of a release.
1420         * lisp/muse.el: Use defalias whenever convenient.
1421         (muse-version): Set version to 3.02.92 (3.03 RC2).
1423 2006-08-10  Michael Olson  <mwolson@gnu.org>
1425         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
1426         style does not derive from any other class, return `t' here.
1427         This, along with the corresponding change to muse-publish.el,
1428         fixes a problem with the table of contents getting inserted
1429         multiple times for custom html-based styles.
1430         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
1431         smarter method for table centering that works with XHTML.
1433         * lisp/muse-latex2png.el Rename all functions to have a
1434         "muse-latex2png" prefix.  Turn all variables into customizable
1435         options in the muse-latex2png group.
1436         (muse-latex2png-img-dest): New option specifying where to place
1437         the images.
1438         (muse-latex2png-template): New option containing the template to
1439         use for the surrounding LaTeX code.
1440         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
1441         compliance.
1442         (muse-latex2png-move2pubdir): Avoid multiple redundant error
1443         messages when something else goes wrong.  Create the image
1444         subdirectory if it doesn't exist already -- thanks to Christian
1445         Straßer for the report.  Expand the filename properly.
1446         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
1447         and filename expansion.
1448         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
1449         the default directory properly.
1451         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
1452         do not run the same function twice.
1454 2006-08-08  Michael Olson  <mwolson@gnu.org>
1456         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
1457         introduced wrong-type-argument error.
1459         * lisp/muse-html.el (muse-html-markup-strings)
1460         (muse-xhtml-markup-string): Cause table definition that contains
1461         image to be center-aligned.  This should fix an issue with images
1462         not being centered when captions are very long.
1464         * lisp/muse-publish.el (muse-publish-table-fields): Trim
1465         whitespace from fields once we have split them up.
1467         * lisp/muse.el (muse-trim-whitespace): New function that strips
1468         leading and trailing whitespace from a string.
1470 2006-08-07  Michael Olson  <mwolson@gnu.org>
1472         * NEWS: Update through patch-95.
1474         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
1475         to match the tags.
1476         (muse-colors-explicit-link): Show images in link descriptions if
1477         inlined images are enabled.
1479         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
1480         definitions for 'image-with-desc, 'image, and 'image-link.
1481         (muse-docbook-markup-paragraph): If an inlined image begins a
1482         paragraph, insert <para> before it.
1483         (muse-docbook-fixup-images): New function that upper-cases the
1484         "format" attribute of the <imagedata> tag.
1485         (muse-docbook-finalize-buffer): Call it.
1487         * lisp/muse-html.el (muse-html-markup-strings): Publish images
1488         with descriptions as centered tables, with a centered caption
1489         underneath.  The resulting look is consistent with the way that
1490         they are published in the LaTeX style.  Thanks to Jody Klymak for
1491         the suggestion.
1492         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
1493         valid way to center a table.
1494         (muse-html-markup-paragraph): Use class="image" instead of
1495         "image-link" for paragraphs that start with an embedded image.
1497         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
1498         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
1499         suggestion.
1500         (muse-latex-markup-specials-image): New option that enables
1501         escaping of specials in images.  This was split from the URL
1502         specials.
1503         (muse-latex-decide-specials): Handle 'image context.
1504         (muse-latex-fixup-dquotes): Go to beginning of document, instead
1505         of relying on caller to do this for us.
1507         * lisp/muse-publish.el (muse-publish-escape-specials): Document
1508         'image context.
1509         (muse-publish-url): Use 'image context for images.  Use 'image
1510         instead of 'image-link and 'image-link in place of
1511         'url-with-image.  Separate the image file from its extension so
1512         that docbook and texinfo can publish images correctly.
1513         (muse-publish-markup-link): Don't force a description if one is
1514         not given.  This fixes a bug where images without descriptions
1515         were being published as 'image-with-desc instead of 'image.
1517         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
1518         images the same as URLs.
1519         (muse-texinfo-markup-strings): Improve image markup to achieve an
1520         effect similar to that of the LaTeX publishing style.  Simplify
1521         'url string.
1523         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
1525         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
1526         when we have to use the custom version of this function.
1528         * muse.texi (Images): Explain how to toggle inlining of images and
1529         give better examples.  Mention captions and that captioned images
1530         should not be used inside of text paragraphs.
1531         (Markup Strings): Bring up-to-date with the changes made since
1532         3.02.
1534 2006-08-06  Michael Olson  <mwolson@gnu.org>
1536         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
1537         in the Emacs source tree.
1539         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
1540         in the Emacs source tree.
1542         * ChangeLog.3: New file created from the old ChangeLog.
1544         * Makefile.defs (VERSION): Set to 3.02.91.
1546         * NEWS: Update through patch-84.
1548         * lisp/muse.el (muse-version): Set to 3.02.91.
1550         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
1551         attributes.
1552         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
1553         delimiter are instead of hard-coding it.
1555         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
1556         (muse-mode): Make filling definition lists work better.  This
1557         should fix #5359.
1559         * lisp/muse-publish.el (muse-style-run-hooks): Use
1560         `muse-style-element' instead of `muse-get-keyword' here.  This
1561         should fix #6399.
1563         * muse.texi: Set version to 3.02.91 (3.02 RC2).
1565 See ChangeLog.3 for earlier changes.
1567 ;; Local Variables:
1568 ;; coding: utf-8
1569 ;; End: