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