Fix bug with using different muse-file-extension
[muse-el.git] / ChangeLog
blob1e9ca09db24884b9eed9be8e801d7d4aed469a5c
1 2007-08-23  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse-html.el (muse-html-insert-contents): Escape heading
4         title just before extracting it.
6         * lisp/muse-latex.el (muse-latex-fixup-headings): New function
7         that removes footnotes from headers, since they are invalid in
8         LaTeX.
9         (muse-latex-munge-buffer): Call it.
11         * lisp/muse-publish.el (muse-publish-markup-heading): Don't escape
12         specials here.  This fixes a bug involving links in headings.
14         * lisp/muse.el (muse-update-file-extension): Simplify, and handle
15         some edge cases.
16         (muse-update-file-extension-after-init): Temporarily bind
17         muse-file-extension to "muse", so that muse-update-file-extension
18         knows what the old value was.  This should fix a bug reported by
19         Jean Magnan de Bornier.
21 2007-08-21  Michael Olson  <mwolson@gnu.org>
23         * lisp/muse-texinfo.el (muse-texinfo-markup-strings): Try to make
24         url, link, and link-and-anchor look better in texi2html output.
25         Thanks to thorne for the report.
27 2007-08-20  Michael Olson  <mwolson@gnu.org>
29         * lisp/muse-journal.el (muse-journal-anchorize-title): Revamp to
30         escape characters rather than discard them.  Use muse-regexp-alnum
31         rather than listing out the characters and numbers.  Thanks to
32         Shunsuke OKANO for the report.
33         (muse-journal-rss-munge-buffer): Make sure that <![CDATA[ stuff is
34         used when generating a summary.
36 2007-08-19  Michael Olson  <mwolson@gnu.org>
38         * examples/mwolson: Update my example settings.
40         * lisp/muse-colors.el (muse-colors-region): Bind
41         muse-colors-region-end to the end of the last line.  This avoids a
42         bug where lines that had emphasis would suddenly become
43         unhighlighted when moving around the buffer.
45         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix bug
46         involving paragraphs after literallayout markup, which is used in
47         <verse> tags.  Thanks to Shunsuke OKANO for the report.
49         * lisp/muse-html.el (muse-html-src-tag): Use
50         muse-delete-and-extract-region.
52         * lisp/muse-import-xml.el: Add require statement.
53         (muse-import-xml-parse-node): Use muse-replace-regexp-in-string.
55         * lisp/muse-protocols.el (muse-browse-url-man): Add require
56         statement.
57         (muse-browse-url-woman): Add require statement.
59         * lisp/muse-publish.el (muse-publish-surround-text): Fix serious
60         bug in definition list publishing.  We were skipping past the
61         initial indented line, and that was causing an erroneous
62         blockquote to be inserted.  This alone merits a new release.
64         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Fix bug with
65         XEmacs' return value for shell-command.
67         * lisp/muse.el (muse-delete-and-extract-region): New compatibility
68         function to deal with XEmacs' lack of the
69         delete-and-extract-region function.
71 2007-08-18  Michael Olson  <mwolson@gnu.org>
73         * AUTHORS: Update.
75         * lisp/muse-publish.el (muse-publish-include-tag): Switch from
76         copy-tree to copy-alist, since Emacs21 does not have the former,
77         and the latter does what we want.
79         * lisp/muse.el: Force-require 'derived, since Emacs21 does not
80         have derived-mode-p in subr.el like Emacs22 does.
82 2007-08-17  Michael Olson  <mwolson@gnu.org>
84         * etc/muse.rnc: Add the <cite> tag.
86         * lisp/muse-context.el (muse-context-slides-header): Clarify what
87         "mystyle" is.
89         * lisp/muse-xml.el (muse-xml-markup-strings): Mark up citations as
90         <cite type="something">.  We'll leave it to the post processing
91         tools to interpret that.
93         * texi/muse.texi (Directives, Blosxom Entries): Use @code{} for
94         directives.
95         (Citations): New section that explains further how to use the
96         <cite> tag.  The text was taken from Marcus Hoenicka's
97         documentation at http://refdb.sourceforge.net/muse.html and
98         modified.
99         (Tag Summary): Link to the Citations section in the entry for
100         <cite>.
101         (ConTeXt): Update the documentation for
102         muse-context-slides-header.
104 2007-08-17  Jean Magnan de Bornier  <jean@bornier.net>
106         * lisp/muse-context.el (muse-context-slides-header): Use #module
107         directive, if it is provided.
108         (muse-context-slides-header): Mention how to use #module.
110 2007-08-16  Michael Olson  <mwolson@gnu.org>
112         * Release Emacs Muse 3.10.
114         * Makefile (dist, debprepare): Pass HEAD argument to git-archive.
115         (upload): Don't depend on release rule.
117         * NEWS: Document remaining changes.
119 2007-08-15  Michael Olson  <mwolson@gnu.org>
121         * NEWS: Document items through 2007-08-12.
123         * lisp/muse-colors.el: Split the muse-directive-or-comment
124         property into two separate properties that are muse-directive and
125         muse-comment.
126         (muse-colors-region-end): Make buffer-local.
127         (muse-colors-delayed-commands): New variable that contains a list
128         of commands to run immediately after highlighting.  This is meant
129         to allow highlighting functions to delay code until later.
130         (muse-colors-region): Apply commands in
131         muse-colors-delayed-commands.
132         (muse-colors-inhibit-tags-in-directives): New variable that
133         determines whether tags are allowed in directives.
134         (muse-colors-custom-tags): Take
135         muse-colors-inhibit-tags-in-directives into account.
136         (muse-unhighlight-region): Remove muse-directive and muse-comment
137         properties.
138         (muse-colors-title): Modify muse-colors-delayed-commands.
139         (muse-colors-title-lisp): New command that gets called after
140         highlighting other things.  This interprets <lisp> tags, and is
141         passed arguments specifying the beginning and end of the region.
142         Thanks to Junichi Uekawa for the report.  The reason we want to do
143         things this way is because this is the behavior we get already
144         when publishing the page.
146         * lisp/muse.el (muse-goto-tag-end): Change to use muse-comment
147         property rather than muse-directive-or-comment.
149 2007-08-14  Michael Olson  <mwolson@gnu.org>
151         * lisp/muse-colors.el: Document all functions and variables.
152         (muse-colors-emphasized, muse-colors-underlined)
153         (muse-colors-verbatim, muse-colors-custom-tags)
154         (muse-colors-explicit-link, muse-colors-implicit-link): Don't trod
155         on comments or the #title directive.
156         (muse-colors-markup): Add comment rule.
157         (muse-colors-implicit-link): Only remove flyspell overlay after we
158         decide whether this is an implicit link, rather than before.
159         (muse-colors-title): Add the muse-directive-or-comment property.
160         (muse-colors-comment): New function that colorizes comments using
161         font-lock-comment-face.
162         (muse-colors-region-end): New variable indicating the end of the
163         region that is currently being font-locked.  This removes the need
164         for an ugly "defvar end" hack.
165         (muse-colors-emphasized, muse-colors-underlined)
166         (muse-colors-verbatim): Use it.
167         (muse-colors-region): Let-bind it.
169         * lisp/muse-mode.el (muse-list-edit-minor-mode): Grammar fix in
170         docstring.
172         * lisp/muse-publish.el (muse-publish-markup-heading): Escape
173         specials in heading now, rather than waiting on the whole-document
174         pass later on.  This lets <contents> generation work without
175         validation errors.  Thanks to Reid van Melle for the report.
177         * texi/muse.texi (Tag Summary): Document <cite> tag.
178         (Miscellaneous): New chapter containing "Muse List Edit Minor
179         Mode" section.
180         (Muse List Edit Minor Mode): New section that documents
181         muse-list-edit-minor-mode.
182         (Development): Mention the MuseDevlopment page on emacswiki.org.
184         * lisp/muse.el (muse-goto-tag-end): Deal with case where we are
185         font-locking and the end or beginning of a tag is in a comment or
186         directive.
188 2007-08-12  Michael Olson  <mwolson@gnu.org>
190         * lisp/muse-html.el (muse-html-strip-links): New function that
191         strips HTML links from a string.
192         (muse-html-insert-contents): Use it, instead of
193         muse-publish-strip-tags.  This fixes a bug reported by Xin Shi
194         involving the use of <sup> in section titles.
196         * lisp/muse-project.el (muse-project-resolve-directory): New
197         function that figures out the directory part of the path that
198         provides a link to a page.
199         (muse-project-resolve-link): Expand docstring.  Use the new
200         function.  Don't call muse-publish-link-file, because that does
201         the wrong thing when we have muse-file-extension set to nil.
202         Thanks to Sebastian Obermanns for the report.
203         (muse-project-publish-this-file): Let-bind muse-current-project.
204         Also, if the file is not associated with a project, fall back to
205         muse-publish-this-file.
206         (muse-project-set-variables): Add this to
207         muse-before-publish-hook, so that it gets called.  This fixes a
208         bug where project-specific variables were being used in Muse mode,
209         but ignored when publishing.
211         * lisp/muse-publish.el (muse-publish-link-name)
212         (muse-publish-link-file, muse-publish-link-page): Add docstrings
213         so that I can remember what each of these things do.
214         (muse-publish-strip-tags): Remove, since it is no longer used.
215         (muse-publish-cite-tag): Don't let-bind
216         muse-publishing-directives, because there is no need to do so.
217         Fix code indentation.
218         (muse-publish-markup-attribute): Avoid multiple evaluation of
219         attrs argument, in case it is list value instead of a symbol.  Use
220         sexp instead of form in the edebug-form-spec.
221         (muse-publish-include-tag): Make a full copy of
222         muse-publishing-directives, since it can be modified with setcdr.
223         This fixes a bug where #title and some other directives were
224         leaking out of an included region.
225         (muse-publish-mark-up-tag): Don't let-bind
226         muse-publishing-directives, because there is no need to do so.
228         * lisp/muse.el (muse-page-name): Improve docstring.
230         * texi/muse.texi (Development): Mention the http method for
231         anonymous git access to the shared repo.
233 2007-08-10  Michael Olson  <mwolson@gnu.org>
235         * Makefile (dist, debprepare): Use git instead of tla.
237         * contrib/httpd.el (httpd-send-file): Use insert-file-contents.
239         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
240         Use muse-insert-file-contents.
242         * experimental/muse-split.el (muse-publish-file)
243         (muse-publish-presplit-publish, muse-publish-no-split-function)
244         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
245         muse-insert-file-contents.
247         * lisp/muse-book.el (muse-book-publish-chapter)
248         (muse-book-get-directives): Use muse-insert-file-contents.
250         * lisp/muse-http.el (muse-http-render-page): Use
251         muse-insert-file-contents.
253         * lisp/muse-poem.el (muse-poem-markup-tag): Use
254         muse-insert-file-contents.
256         * lisp/muse-publish.el (muse-insert-file-or-string)
257         (muse-publish-file, muse-publish-include-tag)
258         (muse-published-contents): Use muse-insert-file-contents.
260         * lisp/muse.el (muse-insert-file-contents): New function that
261         inserts a file with character code conversion, but none of the
262         other frivolities.  Since insert-file-contents-literally does not
263         do character code conversion, it is not suitable for us.
264         (muse-with-temp-buffer): Mention muse-insert-file-contents rather
265         than insert-file-contents-literally.
267 2007-08-09  Michael Olson  <mwolson@gnu.org>
269         * lisp/muse.el (muse-write-file): Pay attention to
270         coding-system-for-write and save-buffer-coding-system.  This
271         should fix a recently-introduced bug with writing Muse pages in
272         different coding systems.
274 2007-08-08  Michael Olson  <mwolson@gnu.org>
276         * README (Prerequisites): Fix typo.
277         (Compilation, Installation): Update.
278         (Documentation, Further Documentation): Update URLs.
279         (Further Documentation): Add quick blurb on how to participate in
280         Muse development or track changes.
282         * texi/muse.texi (Releases): Use gna.org URL for downloading the
283         latest release, rather than my website.
284         (Development): Change instructions to use git instead of
285         Arch. Mention where to get a Windows binary for git.  Improve the
286         look of the listing.  Add section with instructions for Becoming a
287         Muse developer.
288         (Installation): Update instructions for Makefile.defs.default and
289         XEmacs.  Add index entries.  Add section for ELPA, since Muse
290         ought to be distributed in ELPA after the 3.10 release.  Fix typo
291         and clarify wording.
293 2007-08-06  Michael Olson  <mwolson@gnu.org>
295         * texi/muse.texi: Make sure that attributes are marked up with
296         @option{} rather than @code{} or @samp{} for consistency.
297         (Journal): Add "muse-project-alist-considerations" subheading,
298         along with a mention of :base-url.
300 2007-08-05  Michael Olson  <mwolson@gnu.org>
302         * .gitignore: Add texi/muse.html and the DVC log edit file.
304         * Makefile.defs.default (install_info): Rename from INSTALLINFO.
305         Turn this into something that can be called like a command, due to
306         needing to deal with XEmacs, which has different argument order.
307         Thanks to Terrence Brannon for the report.
309         * lisp/muse-project.el (muse-project-of-file): Simplify by using
310         catch, throw, and dolist.  Look for exact matches before
311         considering any subdirectories.  If no exact matches are found,
312         then pick the longest match.
314         * lisp/muse.el (muse-sort-by-rating): Mention default test in
315         documentation.
317         * scripts/muse-build.el: Avoid interference from VC.el in the
318         build process.
320         * texi/Makefile (install): Call install_info.
322 2007-08-03  Michael Olson  <mwolson@gnu.org>
324         * lisp/muse-project.el (muse-project-applicable-styles): Remove
325         useless argument ignore-regexp.  Use saner logic.  This fixes a
326         bug where a file could potentially not exist but still appear in
327         the used-styles list.  Thanks to John Wiegley for the fix.
328         (muse-project-publish-file): Don't take ignore-reegxp argument.
330 2007-08-02  Michael Olson  <mwolson@gnu.org>
332         * lisp/muse-publish.el (muse-batch-publish-files): Don't activate
333         VC when publishing files in batch.  This avoids some annoying
334         messages when building QuickStart in the examples directory.
336         * lisp/muse-mode.el (muse-mode): Don't try to indent line before
337         inserting a comment.
339 2007-07-31  Michael Olson  <mwolson@gnu.org>
341         * lisp/Makefile: Add dependencies between Emacs Lisp files, so
342         that Muse can be recompiled without running "make clean" after an
343         update.
345         * lisp/muse-publish.el (muse-publish-verse-tag): Unconditionally
346         delete forward one character, since we are guaranteed to be on a
347         blank line.  Don't delete all initial whitespace of the first
348         line.  This fixes an issue where the output from the verse tag did
349         not match the output from Muse's verse syntax.
351 2007-07-29  Michael Olson  <mwolson@gnu.org>
353         * Relicense to GPLv3.
355         * Makefile.defs.default: Rename from Makefile.defs.  This allows
356         people to copy this file to Makefile.defs and make changes,
357         without having the changes be accidentally committed.  If
358         Makefile.defs does not exist, this file is read instead, in order
359         to minimize inconvenience to the casual user.
361         * Makefile, contrib/Makefile, examples/Makefile,
362         experimental/Makefile, lisp/Makefile, texi/Makefile: Use either
363         Makefile.defs.default or Makefile.defs.
365         * lisp/muse-mode.el (muse-list-edit-minor-mode-map): Use new
366         function names.
367         (muse-l-e-m-m-insert-list-item): Add real documentation.
368         (muse-l-e-m-m-increase-list-item-indent)
369         (muse-l-e-m-m-decrease-list-item-indent): Rename for clarity.  Add
370         real documentation.
371         (muse-list-edit-minor-mode): Improve documentation.
373         * texi/doclicense.texi (GNU Free Documentation License): Use
374         pristine copy from Emacs source tree.
376         * texi/muse.texi (Contributors): Move node and appendix indicators
377         here, rather than doclicense.texi.
379 2007-07-29  Jean Magnan de Bornier  <jean@bornier.net>
381         * lisp/muse-latex.el (muse-latex-markup-strings): Change rule
382         command which did not work correctly
384         * lisp/muse-context.el (muse-context-markup-strings): Change rule
385         command which did not work correctly; defined verse commands
386         (muse-context-markup-specials-literal): Eliminate all unuseful entries
388 2007-07-29  Michael Olson  <mwolson@gnu.org>
390         * contrib/httpd.el (httpd-send-file): Use
391         insert-file-contents-literally instead of insert-file-contents.
393         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
394         Use insert-file-contents-literally instead of
395         insert-file-contents.
397         * experimental/muse-split.el (muse-publish-file)
398         (muse-publish-presplit-publish, muse-publish-no-split-function)
399         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
400         insert-file-contents-literally instead of insert-file-contents.
402         * lisp/muse-book.el (muse-book-publish-chapter)
403         (muse-book-get-directives): Use insert-file-contents-literally
404         instead of insert-file-contents.
406         * lisp/muse-http.el (muse-http-render-page): Use
407         insert-file-contents-literally instead of insert-file-contents.
409         * lisp/muse-import-latex.el (muse-import-latex): Set marker to
410         nowhere when done, since they can slow things down.
412         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Set
413         marker to nowhere when done, since they can slow things down.
415         * lisp/muse-poem.el (muse-poem-markup-tag): Set marker to nowhere
416         when done, since they can slow things down.  Use
417         insert-file-contents-literally instead of insert-file-contents.
419         * lisp/muse-publish.el (muse-publish-markup-tag)
420         (muse-publish-markup-word, muse-publish-markup-footnote)
421         (muse-publish-call-tag-on-buffer): Set markers to nowhere when
422         done, since they can slow things down.
423         (muse-insert-file-or-string, muse-publish-file)
424         (muse-publish-include-tag, muse-published-contents): Use
425         insert-file-contents-literally instead of insert-file-contents.
426         (muse-publish-surround-dl): Remove unused variable.  Track whether
427         a term has been found, and handle that case well.
428         (muse-publish-ensure-blank-line): Use a marker, so that we don't
429         lose our place when adding a newline.  This really fixes the
430         definition list item bug.
431         (muse-publish-markup-list): Since people do seem to want
432         definition lists with no terms, allow this.
433         (muse-batch-publish-files): Set muse-current-output-style.
435         * lisp/muse.el (muse-with-temp-buffer): Mention
436         `insert-file-contents-literally'.
438 2007-07-28  Michael Olson  <mwolson@gnu.org>
440         * lisp/muse-mode.el (muse-browse-result): Set
441         muse-current-output-style.
442         (muse-mode): Don't duplicate the paragraph-start regexp
443         unnecessarily.
444         (muse-list-edit-minor-mode-map): New variable containing the
445         keymap for Muse list edit minor mode.
446         (muse-l-e-m-m-list-item-regexp): New variable that matches list
447         items for Muse list edit minor mode.
448         (muse-l-e-m-m-insert-list-item,
449         muse-l-e-m-m-i-list-item-indentation)
450         (muse-l-e-m-m-d-list-item-indentation): Variants of existing list
451         item functions that change the list item regexp before calling the
452         existing function.
453         (muse-l-e-m-m-data): New variable that keeps track of the fill
454         data that we overwrite when activating Muse list edit minor mode,
455         so that we can restore it if the minor mode is toggled off.
456         (muse-list-edit-minor-mode): New minor mode that is useful for
457         editing lists in other major modes.
458         (turn-on-muse-list-edit-minor-mode)
459         (turn-off-muse-list-edit-minor-mode): New interactive functions
460         that turn Muse list edit minor mode on and off, respectively.
461         (muse-on-blank-line, muse-get-paragraph-start): Simplify some
462         regexps.
464         * lisp/muse-project.el (muse-project-publish-this-file): Set
465         muse-current-output-style.  This fixes a bug when publishing to a
466         style that is not first in the list of styles.  Thanks to Jean
467         Magnan de Bornier for the report.
469         * lisp/muse-publish.el (muse-publish-ensure-blank-line): New
470         function that ensures that a blank line exists in the line before
471         point.
472         (muse-publish-markup-list): Use it, rather than
473         `muse-publish-ensure-block'.  This fixes a bug with definition
474         list publishing.  Thanks to meandtheshell for reporting this.
476         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): If the
477         project argument is nil, default to the current project instead of
478         the first project entry in muse-project-alist.  This seems much
479         more sane to me.
481         * lisp/muse.el (muse-forward-list-item): Only check the 'face
482         property if we are in Muse mode or one of its derivatives.  This
483         allows movement on nested lists to work in other modes, and fixes
484         an issue with altering list indentation in
485         muse-list-edit-minor-mode.
487 2007-07-27  Michael Olson  <mwolson@gnu.org>
489         * AUTHORS: Add new authors.
491         * README: Permit Muse to be called "Emacs-Muse".
493         * etc/IDEAS.muse: Remove now-implemented ideas and duplicate idea.
495         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug
496         involving list items that have an extra blank line in front.
498         * texi/muse.texi (Introduction): Mention that Emacs Muse, Muse,
499         and Emacs-Muse are the same thing.
501 2007-07-27  Jean Magnan de Bornier  <jean@bornier.net>
503         * lisp/muse-context.el (muse-context-header): Put
504         starttext after the modules who must be in preamble.
505         (muse-context-markup-strings): Fixed mistake in begin-example and
506         end-example.
508         * lisp/muse-latex2png.el (muse-publish-math-tag): Replaced the
509         math environment in ConTeXt when centered: "$$ $$" has to be
510         "\startformula \stopformula".
512 2007-07-26  Michael Olson  <mwolson@gnu.org>
514         * lisp/muse-xml-common.el (muse-xml-escape-url): Do not escape
515         parentheses in URLs.
517 2007-07-24  Michael Olson  <mwolson@gnu.org>
519         * examples/QuickStart.muse (Images): Fix typo where some text
520         existed in the output but not in the example region.
521         (Source Code): Fix another typo.  Explain that publishing from
522         console or X can make a difference.
524         * lisp/muse-context.el (muse-context-pdf-program): New option that
525         determines the program to use for generating PDF files for
526         ConTeXt.
527         (muse-context-pdf-cruft): New option that specifies the extensions
528         of files to remove after generating PDF output successfully.
529         (muse-context-slides-header): Docfix.
530         (muse-context-pdf-generate): Use new options.
532         * lisp/muse-publish.el (muse-publish-lisp-tag): Add missing
533         save-restriction call.  This was causing a world of hurt when
534         using <lisp> inside of <include>.
536         * texi/muse.texi (ConTeXt): New section that documents how to use
537         the ConTeXt publishing styles.
539 2007-07-23  Michael Olson  <mwolson@gnu.org>
541         * lisp/muse-context.el: New file that provides support for
542         publishing documents to the ConTeXt format.  Thanks to Jean Magnan
543         de Bornier for his work on this.
545         * lisp/muse-docbook.el (muse-docbook-entities)
546         (muse-docbook-bibliography): Remove unneeded save-restriction use.
548         * lisp/muse-latex2png.el (muse-publish-latex-tag):
549         s/contex/context/.
551         * lisp/muse-latex.el (muse-latex-fixup-citations): Add docstring.
552         (muse-latex-bibliography): Remove call to `widen', since it is not
553         needed anymore.  Remove unneeded save-restriction use.
554         ("slides", "slides-pdf"): Indent elements uniformly.
556 2007-07-22  Michael Olson  <mwolson@gnu.org>
558         * lisp/muse-blosxom.el (muse-blosxom-new-entry):
559         * lisp/muse-mode.el (muse-insert-tag):
560         * lisp/muse-project.el (muse-read-project)
561         (muse-read-project-file):
562         * lisp/muse-publish.el (muse-publish-get-style): Use
563         muse-completing-read-function.
565         * lisp/muse-latex2png.el (muse-publish-latex-tag)
566         (muse-publish-math-tag): Allow the context style -- which I plan
567         to include soon -- to work with these tags.
569         * lisp/muse.el (muse-completing-read-function): New option that
570         determines which function to call when doing a completing-read.
572 2007-07-15  Michael Olson  <mwolson@gnu.org>
574         * lisp/muse-journal.el (muse-journal-html-entry-template)
575         (muse-journal-rdf-entry-template)
576         (muse-journal-rss-entry-template): Mention that this can be text
577         or a filename.
578         (muse-journal-rdf-entry-template, muse-journal-rss-header)
579         (muse-journal-rss-footer, muse-journal-rss-entry-template): Add
580         newlines to make the output look nicer.
581         (muse-journal-html-munge-buffer, muse-journal-rss-munge-buffer):
582         Use muse-insert-file-or-string for the entry templates, rather
583         than muse-insert-markup.  This allows <lisp> and <markup> tags to
584         be acted on.  Thanks to Scott Hyde for the report.
585         (muse-journal-html-munge-buffer): Escape quote of the day using
586         entire-document specials before snarfing it.  Mark entire template
587         as read-only -- this fixes an incorrect escaping bug.  Remove
588         read-only properties before replacing template matches so that
589         they can still be escaped with entire-document specials later on.
590         (muse-journal-rss-munge-buffer): Make sure that title is escaped
591         properly.
592         (muse-journal-markup-tags): Rename from
593         muse-journal-latex-markup-tags, because we will use it for
594         journal-rss-entry as well.
595         (muse-journal-qotd-tag): Move higher.  Use begin-quote-item and
596         end-quote-item.
597         (muse-journal-rss-munge-buffer): Use journal-rss-entry rather than
598         html.
599         ("journal-latex", "journal-pdf", "journal-book-latex")
600         ("journal-book-pdf"): Use muse-journal-markup-tags rather than
601         muse-journal-latex-markup-tags.
602         ("journal-rss-entry"): New style that is used by journal-rss and
603         journal-rdf to mark up individual entries.  It is needed so that
604         we can do something meaningful with the qotd tag.
605         (muse-journal-rdf-summarize-entries): Set this to nil by default,
606         because it is annoying.  Update docs to mention this.
607         (muse-journal-rss-summarize-entries): Docfix.
609         * lisp/muse-publish.el (muse-insert-file-or-string): Use
610         muse-publish-markup-header-footer-tags.  I'm not quite sure how
611         this change got reverted.
612         (muse-markup-tag-info): Make into a function.  Move common code
613         here, rather than duplicating it in two places.  Deal with case
614         where muse-publish-use-header-footer-tags is non-nil.
615         (muse-publish-markup-specials, muse-publish-inhibit-style-hooks)
616         (muse-inhibit-style-tags): Move higher to avoid byte-compiler
617         warning.
618         (muse-publish-use-header-footer-tags): New variable that indicates
619         whether we should use just the header and footer tags, rather than
620         the full set.
621         (muse-insert-file-or-string): Bind
622         muse-publish-use-header-footer-tags to t.
623         (muse-publish-markup-tag, muse-publish-call-tag-on-buffer):
624         Simplify call to muse-markup-tag-info.
625         (muse-publish-mark-up-tag): Bind
626         muse-publish-use-header-footer-tags to nil.
628         * texi/muse.texi (Journal): Update for recent changes.
630 2007-07-14  Michael Olson  <mwolson@gnu.org>
632         * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Don't
633         delete the remainder of the buffer, since this causes the
634         resulting RDF to have invalid syntax.  Thanks to Phillip Lord for
635         the report and the suggested fix.
637         * lisp/muse-publish.el (muse-publish-markup-regexps): Add "^" to
638         beginning of table-el regexp.  This fixes a bug where Muse stalls
639         when trying to publish a malformed table.  Thanks to Ye Wenbin for
640         the report and the suggested fix.
642 2007-07-12  Michael Olson  <mwolson@gnu.org>
644         * lisp/muse-wiki.el (muse-wiki-interwiki-regexp): Set to nil by
645         default, rather than the empty string.  This really fixes the bug
646         that occurred when using Muse with muse-project-alist set to nil.
647         Thanks to Jonathan Underwood for the report.
648         (muse-wiki-update-interwiki-regexp): Set
649         muse-wiki-interwiki-regexp to nil if muse-project-alist is not
650         defined.
651         (muse-wiki-handle-implicit-interwiki)
652         (muse-wiki-handle-explicit-interwiki): Handle case where
653         muse-wiki-interwiki-regexp is nil.
655 2007-07-10  Michael Olson  <mwolson@gnu.org>
657         * lisp/muse-mode.el (muse-grep): Abort search if the current
658         project contains no directories.
660         * lisp/muse-project.el (muse-project-file-alist): If
661         muse-project-alist is not defined, or project is nil, return nil
662         right away.  This ought to fix a bug that occurred when using Muse
663         with muse-project-alist set to nil.
664         (muse-project-of-file): Make sure muse-project-alist is not nil.
665         (muse-project-save-buffers): Make sure project is not nil.
667         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Deal with
668         case where muse-project-alist is nil.
670         * lisp/muse.el (muse-replace-regexp-in-string): Explicitly check
671         for XEmacs, since color-theme.el is poorly behaved, and defines
672         its own replace-in-string.  Bad color-theme.el -- no cookie for
673         you.
675 2007-07-01  Michael Olson  <mwolson@gnu.org>
677         * Makefile (.PHONY): Update for new debian package rules.
679         * lisp/muse-book.el (muse-book-latex-footer): Wrap long line.
681         * lisp/muse-docbook.el (muse-docbook-fixup-citations): Re-indent.
682         Use save-restriction properly.
683         (muse-docbook-entities, muse-docbook-bibliography): : Re-indent.
685         * lisp/muse-latex.el (muse-latex-footer): Wrap long line.
686         (muse-latex-fixup-citations): Re-indent.  Use save-restriction
687         properly.
688         (muse-latex-bibliography): Re-indent.
690         * lisp/muse-publish.el (muse-publish-get-and-delete-attr): Move
691         higher.  This fixes an error at startup with some versions of
692         Emacs.
693         (muse-publish-cite-tag): Re-indent.
695         * lisp/muse-wiki.el (muse-wiki-handle-explicit-interwiki): Narrow
696         to the end of the link part, so as to exclude the description from
697         the match.  This fixes a bug with three-part links that have
698         descriptions.  Thanks to everyone who pointed it out.
700 2007-06-18  Michael Olson  <mwolson@gnu.org>
702         * lisp/muse-html.el (muse-html-markup-strings): Add anchor.
703         (muse-xhtml1.1-markup-strings): New option that specifies XHTML
704         1.1 specific markup strings.
705         (muse-html-insert-anchor): Use 'anchor string, rather than
706         hard-coding it.  Thanks to Chris Corsair for the suggestion.
707         ("xhtml1.0"): New style that is an alias for the xhtml style.
708         ("xhtml1.1"): New style that publishes XHTML 1.1 compliant output.
710 2007-06-17  Michael Olson  <mwolson@gnu.org>
712         * examples/QuickStart.muse: Make images local so that the Info
713         version of this document works.  Add <example> for the Literal
714         paragraphs chapter, so that it is clear what is happening.
716         * Makefile: Add elpa target, which is used for building an ELPA
717         package for Muse.
719         * Makefile.defs (ELPADIR, ELPADESC): New variables used for
720         building ELPA packages.
722         * examples/Makefile (%.html, %.pdf, %.info): Add message to
723         indicate what we are publishing.
724         (realclean distclean fullclean): Remove all TeX crud.
726         * examples/emacs-muse.png, examples/muse-made-with.png: Include so
727         that the Info version of QuickStart can publish correctly.
729         * lisp/muse-latex.el (muse-latex-slides-header)
730         (muse-latex-lecture-notes-header): Docfix.
732         * lisp/muse-project.el (muse-project-ignore-regexp): Add .git to
733         the list of things to ignore.
735         * lisp/muse-publish.el (muse-publish-markup-list): Remove unused
736         variable.
738         * lisp/muse-texinfo.el (muse-texinfo-process-natively): Set
739         default to nil, since texinfmt.el is a serious nuisance.
740         (muse-texinfo-markup-strings): Add newlines to begin-example and
741         end-example.
742         (muse-texinfo-decide-specials): Also escape URL-type specials in a
743         whole slew of other contexts.
745         * lisp/muse-xml-common.el (muse-xml-encoding-map): Change group to
746         muse-xml.
748         * lisp/muse-xml.el (muse-xml-footer): Docfix.
750         * lisp/muse.el (muse-version): Release Emacs Muse version 3.03.
752 2007-06-16  Michael Olson  <mwolson@gnu.org>
754         * etc/IDEAS.muse: Add some ideas from David D. Smith.
756         * examples/QuickStart.muse: Overhaul.
758         * lisp/muse-project.el (muse-project): Call the last part of a
759         muse-project-alist entry "Output styles" rather than "styles".
761         * lisp/muse-publish.el (muse-publish-table-fields): Handle case
762         where we have a pipe character at the beginning of line.
764         * lisp/muse-xml-common.el (muse-xml-sort-table): Fix typo that was
765         causing tables to not be sorted at all.
767         * texi/muse.texi: Overhaul.  It would be too time-consuming to
768         list all of the changes here.  The "Getting Started" and
769         "Projects" chapters, in particular, were heavily revised.
771 2007-06-15  Michael Olson  <mwolson@gnu.org>
773         * NEWS: Update.
775         * examples/QuickStart.muse: Mention new features.
777         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Docfix.
778         Remove C-c C-i keybinding, since it conflicts with C-c TAB in the
779         terminal, and C-c TAB is more important.  Most people will not
780         want to toggle images on and off that often.
782         * lisp/muse-mode.el (muse-mode-map): Bind muse-insert-thing to C-c
783         C-i as well, so that it works in the terminal.
785         * lisp/muse-publish.el (muse-publish-literal-tag): Make the output
786         look a bit tidier when removing the region.
788         * lisp/muse-regexps.el (muse-list-item-regexp): Put definition
789         list regexp part before other parts.
790         (muse-ol-item-regexp): New regexp that specifies how to match an
791         ordered list item.
792         (muse-ul-item-regexp): New regexp that specifies how to match an
793         unordered list item.
794         (muse-table-field-regexp): New regexp that specifies how to match
795         a definition list entry.
797         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Work around
798         lack of support for @headitem in texinfmt.el.
800         * lisp/muse.el: Wrap muse-line-beginning-position and
801         muse-line-end-position in `eval-and-compile', since they are now
802         used in muse.el.
803         (muse-list-item-type): Use a simpler algorithm for detecting which
804         kind of list item we have.  This fixes a bug where a number in a
805         definition list term was being detected incorrectly as an ordered
806         list item.  Fixes bug #6250.
807         (muse-forward-list-item): Get the entire line with the list item.
808         For some reason, Emacs 21 was not populating match 2 correctly,
809         unlike Emacs 22, so this workaround was needed.
811         * texi/muse.texi: (Keystroke Summary): Remove C-c
812         C-i (`muse-insert-tag') documentation, and mention C-c C-i as an
813         alternative keybinding to the C-c TAB stuff.  Mention
814         muse-colors-toggle-inline-images.
816 2007-06-14  Michael Olson  <mwolson@gnu.org>
818         * README: Mention that RelaxNG schema is in etc/ directory.
820         * etc/emacs-wiki-migration.txt: New document that explains how to
821         migrate from emacs-wiki to Muse.
823         * etc/muse.rnc: Increment version number to 1.0.  Fix several
824         nested emphasis and nested lists edge cases.  Move here from
825         examples/.
827         * lisp/muse-mode.el (muse-mode-map): Permit C-c C-M-t to do the
828         same thing as C-c C-S-t, since the former works better in the
829         console.  Thanks to Leo for the suggestion.
831         * lisp/muse-publish.el (muse-publish-markup-table)
832         (muse-publish-markup-table-el): Include a newline in the return
833         string, so that paragraph detection does not get confused.
835         * lisp/muse.el (muse-with-temp-buffer): Docfix.
837         * texi/muse.texi (Keystroke Summary): Document the C-c C-M-t
838         keybinding.
840 2007-06-13  Michael Olson  <mwolson@gnu.org>
842         * etc/IDEAS.muse: Mark three-part-links item as done.
844         * experimental/muse-message.el: Remove guard for muse-define-style
845         calls.
847         * lisp/muse-colors.el (muse-configure-highlighting): Fix bug where
848         markup rules were being interpreted in reverse order.  This should
849         make implicit interwiki links work properly again.
850         (muse-link-face): Strip anchor from end of a path, so that this
851         works with anchors in interwiki links.
852         (muse-colors-insert-image): Catch error that occurs in Emacs 21
853         when an image does not exist.
855         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Permit
856         anchors.
857         (muse-wiki-handle-implicit-interwiki): Docfix.  Make anchors in
858         interwiki links work.  Thanks to Jim Ottaway for the initial
859         implementation.
860         (muse-wiki-handle-explicit-interwiki): Make anchors in interwiki
861         links work.
863         * lisp/muse.el (muse-handle-implicit-link): Docfix: only care
864         about match 0.
865         (muse-handle-explicit-link): Docfix: this does not modify the
866         match data.
867         (muse-file-remote-p): In Emacs 21, ange-ftp-name-format is a list
868         that has the regexp in its car.
870 2007-06-12  Michael Olson  <mwolson@gnu.org>
872         * README: Document new etc/ directory.
874         * etc/IDEAS.muse: Install things from new contributors just after
875         the 3.03 release, since I won't have time to review the code
876         before the release.  Move to new etc/ directory.  Slides
877         publishing has been installed.
879         * lisp/muse-latex.el (muse-latex-slides-header): New option that
880         determines the header to use for publishing slides.
881         (muse-latex-lecture-notes-header): New option that determines the
882         header to use for publishing lecture notes.
883         (muse-latex-slides-markup-tags): New option containing tags to use
884         when publishing slides.
885         (muse-latex-permit-contents-tag): Move higher in file.
886         (muse-latex-slide-tag): New function to publish the <slide> tag.
887         ("slides", "slides-pdf"): New publishing styles that create slides
888         using Beamer.
889         ("lecture-notes", "lecture-notes-pdf"): New publishing styles that
890         create lecture notes using Beamer.
892         * lisp/muse.el: Re-add the auto-mode-alist part to top-level,
893         since otherwise Planner is not happy when `plan' is called during
894         init.  Remove stray quote from autoload snippet.
896 2007-06-11  Michael Olson  <mwolson@gnu.org>
898         * lisp/muse.el: Make the add-to-list 'auto-mode-alist part an
899         autoload, rather than having it exist at top-level.  Thanks to Leo
900         for the suggestion.
901         (muse-update-file-extension): Docfix.
903 2007-06-10  Michael Olson  <mwolson@gnu.org>
905         * lisp/muse-publish.el (muse-publish-strip-URL): Fix bug where
906         URLs were being removed during publishing.  Thanks to everyone who
907         reported this.
909 2007-06-09  Markus Hoenicka <markus.hoenicka@mhoenicka.de>
911         * lisp/muse-book.el
912         * lisp/muse-docbook.el
913         * lisp/muse-latex.el
914         * lisp/muse-publish.el: added support for <cite> element which
915         denotes in-text citations
917         * lisp/muse-html.el
918         * lisp/muse-groff.el
919         * lisp/muse-texinfo.el
920         * lisp/muse-xml.el: added support for <cite> element (stub)
922 2007-06-06  Michael Olson  <mwolson@gnu.org>
924         * lisp/muse-regexps.el (muse-table-line-regexp)
925         (muse-table-hline-regexp, muse-table-el-border-regexp): Fix
926         regexps so that they work with XEmacs 21.  Thanks to Adrian
927         Tritschler for the report.
929         * texi/muse.texi: Update copyright years.
930         (HTML): Document muse-xhtml-style-sheet.  Thanks
931         to thorne for noticing.
932         (Development): Change archive year to 2006.  Thanks to Adrian
933         Tritschler for noticing.  So *that's* why some people had the 2005
934         version ....
936 2007-06-05  Michael Olson  <mwolson@gnu.org>
938         * Makefile (install-info): Remove $(MANUAL).info part, since this
939         is taken care of already by texi/Makefile.  Thanks to Leo for the
940         report.
942         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Add
943         read-only properties to qotd contents, so that they don't get
944         double-escaped.  Thanks to Leo for the report.
946 2007-06-04  Michael Olson  <mwolson@gnu.org>
948         * lisp/muse-colors.el (muse-link-face): If the link is to a remote
949         -- that is, Tramp or ange-ftp -- file, then do not call
950         file-exists-p on it.  Thanks to Jim Ottaway for the suggestion.
951         Fixes bug #5115.
953         * lisp/muse-html.el (muse-html-insert-contents): Add
954         documentation.  Handle case where heading is read-only, but has
955         muse-contents property.  Remove the muse-contents property for any
956         heading we come across so as to avoid double-including an item in
957         an outer table of contents.
958         (muse-html-denote-headings): New function that denotes whether a
959         heading is not read-only by adding the muse-contents property to
960         it.
961         (muse-html-munge-buffer): If we are not to generate contents,
962         still denote headings, in case some outer layer wants to generate
963         contents for our headings.  This should fix a bug with table of
964         contents and the <include> tag.  Thanks to thorne for the report.
966         * lisp/muse-publish.el (muse-publish-markup-region): Let-bind
967         muse-publish-generate-contents and set it to nil.  This should
968         do the right thing when using <include> tags.
970 2007-06-02  Michael Olson  <mwolson@gnu.org>
972         * NEWS: Update for non-inlined image change and support for
973         table.el style tables.
975         * examples/Makefile (clean): Clean backup files.
977         * examples/QuickStart.muse (Images): New section that describes
978         how to inline and not inline images.
980         * lisp/muse-colors.el (muse-colors-resolve-image-file): Don't
981         touch images that have "URL:" in front of them.
983         * lisp/muse-protocols.el (muse-url-protocols): Add handler for
984         "URL:".  Use the identity function to resolve, since we don't want
985         to rip "URL:" out while publishing, due to some magic that depends
986         on that text.
987         (muse-browse-url-url): New function that browses URLs that have
988         "URL:" in front of them, by removing the "URL:" part and
989         reprocessing the remainder.
991         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
992         (muse-publish-url): Recognize images in the description before
993         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
994         for the suggested workaround.
995         (muse-publish-desc-transforms): Add `muse-publish-strip-URL' as a
996         default value.
997         (muse-publish-classify-url): If target begins with "URL:" return
998         type url.
999         (muse-publish-strip-URL): New function that strips "URL:" from the
1000         beginning of a string.  This is used to remove URL: from the link
1001         description.  * texi/muse.texi (Markup Strings): Clarify the
1002         meanings of image-link, link, and link-and-anchor.
1003         (muse-publish-markup-regexps): Move normal table rule to 2350.
1004         Rule 2300 is now a regexp that matches table.el-style tables.
1005         (muse-publish-markup-functions): Add table-el entry.
1006         (muse-publish-table-el-table): New function that given a variant,
1007         publishes a table.el-style table using the table in the matched
1008         region.
1009         (muse-publish-markup-table-el): New function that determines
1010         whether the table.el-style table can be published, and what
1011         variant to use.
1013         * lisp/muse-regexps.el (muse-tag-regexp): New regexp that matches
1014         the borders of table.el-style tables.
1016         * lisp/muse-xml-common.el (muse-xml-markup-table): Make sure that
1017         the table has sufficient whitespace in front of it.
1019         * texi/muse.texi (Images): Update for new non-inlined image
1020         ability and provide example.
1022 2007-05-31  Michael Olson  <mwolson@gnu.org>
1024         * NEWS: Add example for setting `muse-html-table-attributes'.
1026         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
1027         Publish multiple tbody tags if there is a horizontal separator
1028         after the heading, because that is valid HTML after all.
1030 2007-05-30  Michael Olson  <mwolson@gnu.org>
1032         * NEWS: Update.
1034         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
1035         horizontal separators in tables.
1037         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
1038         horizontal separators in tables.
1039         (muse-publish-trim-table): New function to remove initial and
1040         final blank columns from a table.
1041         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
1042         with horizontal separators, aka "hlines".
1044         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
1045         defines the syntax of a horizontal separator in a table.
1047         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
1048         horizontal separators.  Publish header lines correctly.
1050         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
1051         where we have nonnumbers as a row type.  This ignores sorting for
1052         hlines.
1053         (muse-xml-markup-table): Deal with horizontal separators.  If the
1054         markup supports table groups, make hlines separate table groups.
1055         Otherwise, ignore them, since they cannot be marked up.  Together,
1056         these changes allow us to support orgtbl-mode tables.  Thanks to
1057         Carsten Dominik for the suggestion.
1059 2007-05-26  Michael Olson  <mwolson@gnu.org>
1061         * lisp/muse-project.el (muse-project-alist-styles): Allow for
1062         other things to be added to each generated style as well.  For
1063         example, this permits me to add
1064         :base-url "http://blog.mwolson.org/"
1065         for my blog.
1067 2007-05-25  Michael Olson  <mwolson@gnu.org>
1069         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
1070         way of building Debian packages that preserves the original
1071         release tarball and is more modular.
1072         (debrevision, debrelease): Remove.
1073         (dist): No need to remove the debian/ directory, since it is now
1074         in its own branch.
1075         (debprepare): Copy over debian/ directory properly.
1077         * NEWS: Update.
1079         * examples/Makefile (clean): Remove QuickStart.texi, in case
1080         something went wrong during the build.
1081         (%.pdf): Publish the example using the normal pdf style, rather
1082         than info-pdf.
1084         * examples/QuickStart.muse: Add myself to the authors list.
1086         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
1087         sufficient blank lines before the tag.
1089         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
1090         we have sufficient blank lines before the tag.
1092         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
1093         specifies the program to call in order to generate PDF content
1094         from LaTeX content.
1095         (muse-latex-pdf-cruft): New option that specifies the extensions
1096         of files to remove after generating PDF output successfully.
1097         (muse-latex-pdf-generate): Use these new options.  Work around the
1098         annoying edge case where a tilde character exists in the filename
1099         or directory path -- now this can only error out when the relative
1100         path from the output file to the source file contains a tilde,
1101         which is far less likely.
1103         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
1104         muse-publish-ensure-block here after all, because <lisp> et al may
1105         occur inline as part of other things.
1107         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
1108         occur after full-document escaping, rather than before.  This
1109         prevents automatically-inserted Texinfo code from being escaped.
1110         (muse-texinfo-pdf-generate): Rewrite to call
1111         `muse-latex-pdf-generate' with pdftex as the generating binary,
1112         because texi2pdf suffers irredeemably from the tilde edge case
1113         mentioned above.
1115 2007-05-24  Michael Olson  <mwolson@gnu.org>
1117         * NEWS: Drop vague entries and position interesting entries closer
1118         to the top of each section.  Update for new changes.
1120         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
1121         and bzr metadata directories to the list of things to ignore.
1123         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
1124         `muse-publish-ensure-block-tag', since we will use it for more
1125         than just tags.
1126         (muse-publish-markup-list, muse-publish-verse-tag)
1127         (muse-publish-quote-tag, muse-publish-example-tag)
1128         (muse-publish-markup-attribute): Use it.  This fixes a bug that
1129         can occur when these types of markup occur immediately after a
1130         paragraph.  It's good to have defined behavior!
1132         * texi/muse.texi (Markup Strings): Mention new argument for
1133         link-and-anchor.
1135 2007-05-19  Michael Olson  <mwolson@gnu.org>
1137         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
1138         published footnotes and footnote references.  Thanks to Scott
1139         Jaderholm for the idea.
1141         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
1142         link-and-anchor, on the recommendation of the original submitter.
1144 2007-05-14  Michael Olson  <mwolson@gnu.org>
1146         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
1147         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
1148         suggestion.
1150         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
1151         file extension as the fourth argument.
1153         * README, texi/muse.texi (Getting Help and Reporting Bugs):
1154         Mention the new muse-el-logs mailing list.
1156 2007-05-13  Michael Olson  <mwolson@gnu.org>
1158         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
1159         "\`" here.  This fixes a problem with publishing custom URLs.
1161 2007-05-12  Michael Olson  <mwolson@gnu.org>
1163         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
1164         update the list if the current buffer is associated with a file.
1165         This fixes a bug with M-x muse-publish-region in a temporary
1166         buffer.
1168 2007-05-01  Michael Olson  <mwolson@gnu.org>
1170         * lisp/muse-publish.el (muse-publish-region): Remove read-only
1171         properties from the published buffer, so that the results can be
1172         manually tweaked.
1174 2007-04-23  Michael Olson  <mwolson@gnu.org>
1176         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
1177         find the footnote that goes with a reference, leave the reference
1178         as-is.  This fixes an error where control characters could be
1179         placed in a published document.
1181 2007-04-22  Michael Olson  <mwolson@gnu.org>
1183         * IDEAS.muse: Add muse-slides.el to list of things to include
1184         before release.
1186         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
1187         character.
1188         (muse-protocol-find): Find protocols correctly.  Rewrite to use
1189         catch/throw.
1190         (muse-browse-url): Don't concatenate "\`" here.  Together, this
1191         fixes a bug with browsing woman:// links.
1193         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
1194         where entry-dir has a trailing backslash.
1195         (muse-project-publish-file): If a style is malformed, skip it and
1196         display a warning message.  This should help people figure out
1197         where the problem is.
1199 2007-04-21  Michael Olson  <mwolson@gnu.org>
1201         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
1202         yet-to-be-included "contex" publishing style, use "$$" rather
1203         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
1204         this out.
1206 2007-04-20  Michael Olson  <mwolson@gnu.org>
1208         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
1209         variable that causes the :before and :before-end hooks to be
1210         ignored when non-nil.
1211         (muse-publish-markup-region): Use it.  Also, guarantee that point
1212         is at end of region after publishing.
1213         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
1214         variable.
1216 2007-04-19  Michael Olson  <mwolson@gnu.org>
1218         * IDEAS.muse: New file containing a list of ideas we have for new
1219         features, or patches that have yet to be applied.
1221         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
1222         be so confusing.
1224         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
1225         docstring.
1227         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
1228         <literal> tags with muse-publish-literal-tag, rather than
1229         muse-publish-mark-read-only.
1230         (muse-publish-literal-tag): New function that publishes the
1231         <literal> tag.  It adds the ability to add the optional "style"
1232         and "exact" elements, which cause text to only be included if the
1233         current publishing style matches some criteria.  The text will be
1234         removed otherwise.  Thanks to Jim Ottaway for the implementation.
1235         (muse-publish-mark-up-tag): Let the <markup> tag take the
1236         additional optional elements "style" and "exact", with much the
1237         same effect as the <literal> improvements, but after calling
1238         "function" or publishing the region first.  Make it possible to
1239         put <content> tags in <markup> regions in HTML publishing.
1241 2007-04-12  Michael Olson  <mwolson@gnu.org>
1243         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
1244         that a blank line always exists after a heading.  This fixes a bug
1245         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
1246         for the report.
1248         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
1249         detection regexp to that which is used in Docbook and HTML
1250         publishing styles.
1252 2007-04-02  Michael Olson  <mwolson@gnu.org>
1254         * README (muse-el-announce): Make a listing of mailing lists,
1255         rather than pointing to the old EmacsWikiMailingList page.  Thanks
1256         to Andreas Roehler for noticing.
1258 2007-04-01  Michael Olson  <mwolson@gnu.org>
1260         * lisp/muse-publish.el (muse-publish-date-format): Add
1261 `       customization type and group.
1262         (muse-publish-region): New interactive function that publishes a
1263         region to a new buffer.
1265         * texi/muse.texi: Use "document" rather than "manual".
1267 2007-03-31  Michael Olson  <mwolson@gnu.org>
1269         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
1270         expression (muse-style-derived-p "latex" (muse-style "latex"))
1271         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
1272         for the catch.
1274 2007-02-25  Michael Olson  <mwolson@gnu.org>
1276         * lisp/muse-publish.el (muse-publish-date-format): New option that
1277         specifies how to format the date when publishing Muse pages.
1278         Thanks to Thomas Gehrlein for the suggestion.
1279         (muse-publish-markup-buffer): Use it.
1281 2007-02-23  Michael Olson  <mwolson@gnu.org>
1283         * README: Add Prerequisites section to mention which versions of
1284         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
1285         the suggestion.  Update link destination for Muse's page on
1286         emacswiki.org.
1288 2007-02-15  Michael Olson  <mwolson@gnu.org>
1290         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
1291         be not just at beginning of line.  This fixes an error with the
1292         <class> tag.  Thanks to Jim Pivarski for the report.
1294 2007-02-14  Michael Olson  <mwolson@gnu.org>
1296         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
1297         whether something is an image before checking to see if it is a
1298         URL.  Thanks to ITSUMI ken-ichi for the report.
1300 2007-02-13  Michael Olson  <mwolson@gnu.org>
1302         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
1303         comments that have no text better.  Thanks to fang.lungang for the
1304         report.
1305         (muse-publish-markup-comment): Deal with case where no comment
1306         text is provided.
1308 2007-01-23  Michael Olson  <mwolson@gnu.org>
1310         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
1311         that ensures that at least one blank line exists at the given
1312         position.  This is used to avoid paragraph detection problems when
1313         block-level tags like <example> immediately follow a paragraph.
1314         Thanks to Hans Ekbrand for the report.
1315         (muse-publish-example-tag): Use it.
1317 2007-01-19  Michael Olson  <mwolson@gnu.org>
1319         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
1320         previous blank line if we are publishing in Latex.  Otherwise,
1321         that wouldn't be the right thing, so leave it be.
1323 2007-01-17  Michael Olson  <mwolson@gnu.org>
1325         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
1326         multiple centered math lines on the same line; keep them on
1327         different lines.  Use \[ math-text \] instead of $$math-text$$,
1328         since the latter seems to be deprecated.  Thanks to Jody Klymak
1329         for the pointer.
1331 2007-01-15  Michael Olson  <mwolson@gnu.org>
1333         * lisp/muse-latex2png.el (muse-publish-latex-tag)
1334         (muse-publish-math-tag): Publish region read-only when current
1335         style is Latex-derived, so that Muse does not escape it.
1336         (muse-publish-math-tag): If 6 or more spaces come before the tag,
1337         surround the region with "$$" rather than "$".  This is the Muse
1338         syntax for something centered, so it should be a good fit.
1340 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
1342         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
1343         protocol.
1344         (muse-browse-url-man): Change man page URL format.  The code is
1345         simpler when the section is left inside parentheses.
1346         (muse-browse-url-woman): New function.
1348 2007-01-14  Michael Olson  <mwolson@gnu.org>
1350         * AUTHORS: Bookkeeping.
1352         * lisp/muse-latex2png.el: Associate <math> tag with
1353         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
1354         Klymak for the report.
1355         (muse-publish-math-tag): Use muse-insert-markup for the "$"
1356         characters, so they don't get escaped.
1358         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
1359         make muse-style-derived-p easier to implement.
1360         (muse-style-derived-p): If the style is not provided, fetch it and
1361         check to see if the car is a string.  This should fix the other
1362         problem that was reported.
1364         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
1365         explains a case where setting muse-file-extension to nil can cause
1366         unexpected behavior.
1368 2007-01-09  Michael Olson  <mwolson@gnu.org>
1370         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
1371         comments higher priority than tags.  Thanks to Stefan van der Walt
1372         for the report.
1374 2007-01-08  Michael Olson  <mwolson@gnu.org>
1376         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
1377         argument rather than calling match-string.  Thanks to Stefan van
1378         der Walt for the report.  This should fix a bug with publishing
1379         <include file="..." markup="example">.
1381 2007-01-06  Michael Olson  <mwolson@gnu.org>
1383         * Makefile (debclean): New rule split from debrevision and
1384         debrelease.
1385         (debbuild): Take distributor into account.
1387         * Makefile.defs (DISTRIBUTOR): New field that tracks what
1388         vendor/distributor we are building for.
1390 2007-01-04  Michael Olson  <mwolson@gnu.org>
1392         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
1393         line.
1395         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
1396         point to muse-publish-src-tag by default, since <src> and
1397         <example> have different parameters.
1398         (muse-publish-src-tag): New barebones publishing function for
1399         <src>, which is superseded when publishing in an HTML-based style.
1401 2007-01-03  Michael Olson  <mwolson@gnu.org>
1403         * lisp/muse-html.el (muse-html-src-tag): Document.
1405         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
1406         command that calls a given tag on the current buffer.  Attributes
1407         may be passed.
1408         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
1409         it.
1410         (muse-publish-srcify-buffer): New function that allows
1411         markup="src" in the <include> tag.
1412         (muse-publish-get-and-delete-attr): New macro that gets an
1413         attribute from a list and removes the first instance of that
1414         attribute from said list.
1415         (muse-publish-markup-attribute): Handle markup="src".
1416         (muse-publish-command-tag, muse-publish-include-tag): Use
1417         muse-publish-get-and-delete-attr.  This allows the remaining
1418         attributes to be passed.
1420         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
1421         as changes to <command> and <include>.
1423 2006-12-30  Michael Olson  <mwolson@gnu.org>
1425         * NEWS: Update.
1427         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
1428         from muse-publish-math-tag to avoid conflict with
1429         muse-latex2png.el.
1431 2006-12-23  Michael Olson  <mwolson@gnu.org>
1433         * lisp/muse-latex2png.el: Update header, since this has been
1434         rewritten sufficiently to not need an assignment from the original
1435         author.
1436         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
1437         (muse-latex2png): Use two underscores to separate prefix and hash.
1438         (muse-latex2png-region): New function split from
1439         muse-publish-latex-tag that can be used easily by other code.
1440         Detect whether we are using an HTML-based publishing style, and
1441         insert a simpler markup if we are not.  If we are using a
1442         Latex-based publishing style, do not generate an image, and leave
1443         the region alone.  Return the path of the generated image, in case
1444         other functions want to use this programmatically.
1445         (muse-publish-latex-tag): Set a default prefix based on the name
1446         of the current file.
1447         (muse-publish-math-tag): New tag that surrounds the region with
1448         "$" characters, so that it becomes a Latex math region, and then
1449         publishes it.
1451         * lisp/muse-publish.el (muse-style-derived-p): New function that
1452         returns non-nil if a given style, or the current style if omitted,
1453         is equal to or derived from the given base style.  This is useful
1454         in <lisp> tags, because it allows the user to specify markup that
1455         is only to be inserted for one particular style.
1457 2006-12-22  Michael Olson  <mwolson@gnu.org>
1459         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
1460         (muse-html-src-tag): New function which publishes the <src> tag.
1461         Thanks to Clinton Ebadi and Charles Wang for the initial
1462         implementations.
1464         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
1466 2006-12-21  Michael Olson  <mwolson@gnu.org>
1468         * examples/johnw/muse-johnw.el: Update for preferred
1469         muse-derive-style usage.  Rename to muse-init.el.
1471         * examples/mwolson/muse-init.el: Update.
1473         * lisp/muse-book.el (muse-book-publish): New function split from
1474         muse-book-publish-project.  This is used in the definitions for
1475         the book-latex and book-pdf styles.
1476         (muse-book-publish-p): New function split from muse-book-publish.
1477         (muse-book-get-directives): New function that retrieves the
1478         publishing directives from the given file.
1479         (muse-book-publish): Use muse-book-get-directives to set the title
1480         if no title was specified.
1482         * lisp/muse-project.el (muse-project): Add :publish-project entry
1483         to widget.
1484         (muse-read-project, muse-project-find-file): Message fix.
1485         (muse-project-publish-file-default): New function split from
1486         muse-project-publish-file.
1487         (muse-project-publish-file): Allow file-level publishing function
1488         to be specified by the :publish element.  The default is
1489         muse-project-publish-file-default.
1490         (muse-project-publish-default): New function split from
1491         muse-project-publish.
1492         (muse-project-publish): Allow project-level publishing function to
1493         be specified by :publish-project element.  The default is
1494         muse-project-publish-default.
1496         * lisp/muse-publish.el (muse-publish-file): Message fix.
1498         * texi/muse.texi (Book): Mention new way to publish books and
1499         provide an example, since the process may be non-obvious.
1501 2006-12-20  Michael Olson  <mwolson@gnu.org>
1503         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
1504         content-modifying code from the rest of
1505         muse-docbook-finalize-buffer.
1507         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
1508         muse-groff-finalize-buffer, since it adds content to the buffer.
1510         * lisp/muse-html.el (muse-html-munge-buffer): Split out
1511         content-modifying code from the rest of muse-html-finalize-buffer.
1512         This fixes a bug when using <include> with <content> tags.
1514         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
1515         (muse-journal-latex-munge-buffer)
1516         (muse-journal-rss-munge-buffer): Rename, since they add content to
1517         the buffer.
1519         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
1520         muse-latex-finalize-buffer, since it adds content to the buffer.
1522         * lisp/muse-mode.el:
1523         * lisp/muse-project.el:
1524         * lisp/muse-publish.el:
1525         * lisp/muse.el: Fix recursive load error.
1527         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
1528         muse-texinfo-finalize-buffer, since it adds content to the buffer.
1530         * lisp/muse-wiki.el: Comment cleanup.
1532         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
1534 2006-12-17  Michael Olson  <mwolson@gnu.org>
1536         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
1537         Remove the definition of \comment, since Latex already has comment
1538         syntax.
1539         (muse-latex-markup-strings): Use the Latex comment syntax, rather
1540         than our own.  Thanks to Ryan Stutsman for pointing this out.
1542 2006-12-02  Michael Olson  <mwolson@gnu.org>
1544         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
1545         that this can generate a proper table of contents for Planner HTML
1546         publishing.
1548 2006-12-01  Michael Olson  <mwolson@gnu.org>
1550         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
1551         using a very old Emacs, avoid an infinite loop that could occur
1552         when the regexp is an empty string.
1554 2006-11-26  Michael Olson  <mwolson@gnu.org>
1556         * NEWS: Bring up to date.
1558         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
1559         list issues and multiple-stanza verse issues.  This takes care of
1560         all of the markup issues I was worried about.
1562         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
1563         (muse-project-publish-private-files): New option that indicates
1564         whether files with private filesystem permissions should be
1565         published.  The default is to publish them, since it avoids
1566         confusion in new users.
1567         (muse-project-private-p): Use it.
1569 2006-11-19  Michael Olson  <mwolson@gnu.org>
1571         * lisp/muse-project.el (muse-project-resolve-link): If no remote
1572         style is found, which means that the link is not a Muse page, do
1573         not add a suffix or prefix to it.  This should fix the
1574         "[[thing.owl]]" bug that Phillip Lord reported.
1576         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
1577         removing unused 2nd argument.
1579 2006-11-17  Michael Olson  <mwolson@gnu.org>
1581         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
1582         latex publishing where nested enumerated lists would be squashed
1583         together at the end.
1585 2006-11-16  Michael Olson  <mwolson@gnu.org>
1587         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
1588         list embedded in a definition list look right.  This also allows
1589         for definitions to be separated from their terms, much like the
1590         way HTML does it by default, if the user puts a blank line or a
1591         line break between the term and the definition.  If the term and
1592         definition are on the same line, they will be that way in the
1593         output as well.
1595 2006-11-11  Michael Olson  <mwolson@gnu.org>
1597         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
1598         for the report.
1599         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
1601 2006-11-07  Michael Olson  <mwolson@gnu.org>
1603         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
1604         release candidate for Muse 3.03, available.
1606         * NEWS: Update.
1608 2006-11-06  Michael Olson  <mwolson@gnu.org>
1610         * lisp/muse-project.el (muse-project-find-file): Fix bug when
1611         following a relative link worked even when the path was incorrect.
1613 2006-11-04  John Sullivan  <john@wjsullivan.net>
1615         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
1616         muse-follow-name-at-point to reduce collisions with other
1617         modes (Planner).
1619         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
1621 2006-11-04  Michael Olson  <mwolson@gnu.org>
1623         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
1624         optional, and make interwiki delimiter a regular rather than shy
1625         group.
1626         (muse-wiki-handle-implicit-interwiki): Rename from
1627         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
1628         (muse-wiki-handle-explicit-interwiki): New function that is
1629         smarter about where an explicit link ends in a buffer.  This
1630         allows you to refer to page names with invalid Wiki characters,
1631         such as underscores and dashes, merely by enclosing them in double
1632         brackets.  Also, a bug with recognizing project names too loosely
1633         has been fixed.
1635 2006-11-03  Michael Olson  <mwolson@gnu.org>
1637         * lisp/muse-project.el (muse-project-page-file): Make relative
1638         links work as expected, hopefully.
1640         * lisp/muse-publish.el (muse-publish-this-file): Set the current
1641         output style manually, since it will differ from anything in the
1642         publishing style list.
1644 2006-10-30  Michael Olson  <mwolson@gnu.org>
1646         * lisp/muse-colors.el (muse-colors-markup): Remove note about
1647         grouping elements, since that no longer applies.
1648         (muse-colors-custom-tags): Explicitly match against
1649         muse-tag-regexp to get the match-data set the way we want.  This
1650         really fixes the <example> highlighting bug that Stefan reported.
1651         (muse-configure-highlighting): Set the original value to the
1652         symbol, not the modified value.  Re-use modified rules properly.
1654         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
1655         introduced yesterday.
1657 2006-10-29  Michael Olson  <mwolson@gnu.org>
1659         * examples/mwolson: Update my example configuration.
1661         * NEWS: Update.
1663         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
1664         without a regexp in the first position before iterating through
1665         them to build muse-colors-vector.  This fixes a bug with the
1666         display of <example> tags.  Thanks to Stefan Reichör for the
1667         report.
1669         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
1670         files in projects to be linked to.
1672         * lisp/muse-publish.el (muse-publish-url): Allow the original link
1673         to serve as a description for a URL, as long as it differs from
1674         the destination URL.  This fixes the description of WikPage links
1675         in PDF output.
1676         (muse-publish-link-file): Check to see whether the given link
1677         points at a valid file.  If so, return it.  Otherwise, apply other
1678         transforms like prefix and link suffix.
1680         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
1681         "/", it is a file or directory, not a Muse page.  Thanks to
1682         Phillip Lord for the suggestion.
1684         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
1685         of the current page as the local path, instead of duplicating the
1686         remote file's path.  This probably fixes at least one reported
1687         bug. since it's quite major.
1688         (muse-wiki-update-project-file-regexp)
1689         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
1690         passed to regexp-opt, since that can cause Emacs 21 to throw an
1691         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
1692         DOT edu for the report.
1693         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
1695 2006-10-28  Michael Olson  <mwolson@gnu.org>
1697         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
1698         (muse-project-resolve-link): If the given style does not have a
1699         link-suffix, default to suffix.  This fixes a bug I was noticing
1700         when linking to a file that was published in both PDF and HTML
1701         form.
1703         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
1704         function that is used as a callback to determine the initial
1705         amount of indentation that the current dl item has.
1706         (muse-publish-surround-dl): Use it.  Pass the initial indent value
1707         and the post-indent value, instead of trying to determine them
1708         both.
1709         (muse-publish-strip-list-indentation): New function stripped from
1710         `muse-publish-surround-text' for readability.
1711         (muse-publish-surround-text): Instead of taking a determine-indent
1712         value, take a determine-indent-func function, which is called just
1713         after finding the next list item.  If we are asked to determine
1714         the amount of indentation, concatenate indent and post-indent the
1715         first time around.  This effectively fixes all known definition
1716         list issues.
1718 2006-10-16  Michael Olson  <mwolson@gnu.org>
1720         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
1721         other software -- namely, Planner -- can detect whether they are
1722         using a version of Muse that supports nested tags.
1723         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
1724         muse-publish-goto-tag-end.
1726         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
1727         Adapt for nested tags.
1729         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
1730         <class> tag is nestable.  Thanks to Phillip Lord for noticing
1731         this.
1733         * lisp/muse-publish.el (muse-publish-markup-tag)
1734         (muse-publish-quote-tag): Use muse-goto-tag-end.
1736         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
1738 2006-10-15  Michael Olson  <mwolson@gnu.org>
1740         * AUTHORS: Bookkeeping.
1742         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
1743         tag.
1745         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
1746         tags.
1748         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
1750         * lisp/muse-import-docbook.el (muse-import-docbook)
1751         (muse-import-docbook-files): Docfix.
1752         (muse-import-docbook-get-title): Remove cl.el-ism.
1754         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
1756         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
1758         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
1760         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
1761         (muse-next-reference, muse-previous-reference): Minor whitespace
1762         changes.
1763         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
1764         the suggestion.
1766         * lisp/muse-poem.el (muse-poem-tag): Ditto.
1768         * lisp/muse-publish.el (muse-publish-markup-tags)
1769         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
1770         element and make 4th element determine whether tags are nestable.
1771         (muse-publish-goto-tag-end): New function that moves to the end of
1772         a tag.  Handle nested tags when NESTED is non-nil.
1773         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
1774         5th element for function.
1775         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
1776         this on several scenarios, and it seems to work.
1777         (muse-publish-surround-text): Accept new optional argument
1778         LIST-ITEM which determines the regexp to use for list items.  The
1779         default is to use muse-list-item-regexp.
1781         * muse.texi (Markup Tags): Mention nestable tags.
1783         * NEWS: Mention new files.
1785 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
1787         * lisp/muse-import-docbook.el: New file that converts Docbook XML
1788         into Muse format.
1790         * lisp/muse-import-xml.el: New file that provides helper routines
1791         for converting XML-ish files to Muse format.
1793 2006-10-10  Michael Olson  <mwolson@gnu.org>
1795         * NEWS: Update for 3.02.7 bugfix release.
1797 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
1799         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
1800         using the value in the muse #date directive.
1801         (muse-blosxom-use-metadate): New option that determines whether or
1802         not to use the #postdate directive.
1803         (muse-blosxom-format-date): Convert a date string to PyBlosxom
1804         metadate plugin format.
1806 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
1808         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
1809         recognised URLs.
1811         * muse.texi: Clarify handling of implicit links by mentioning
1812         which characters can prevent Muse from recognizing something as an
1813         implicit link.
1815 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
1817         * lisp/muse-mode.el (muse-next-reference)
1818         (muse-previous-reference): Fix bug #6367 by moving point to the
1819         beginning of the link.
1821 2006-09-26  Michael Olson  <mwolson@gnu.org>
1823         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
1824         beginning-of-line.  This should fix a bug that was noticed in
1825         recent Emacs 22 builds.
1827         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
1828         eval-and-compile block to avoid a compiler warning.
1830 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
1832         * lisp/muse-backlink.el (muse-backlink-split-string):
1833         Compatibility with Emacs versions < 22
1834         (muse-backlink-pending): New internal variable
1835         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
1836         that backlinks are inserted at the right time.
1837         (muse-backlink-insert-hook-func): Remove unwind-protection; check
1838         for pending backlink, and that this is the targe page.
1839         (muse-backlink-handle-link): Don’t handle the link if we are
1840         already handling one. Return the link as well as the parent links.
1842 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
1844         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
1845         #6942 - muse-blosxom-new-entry fails when using tags.
1847 2006-09-14  Michael Olson  <mwolson@gnu.org>
1849         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
1850         compiler warning.
1852 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
1854         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
1855         function: Protect all wikiwords from START to END from further
1856         processing.
1857         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
1859 2006-09-13  Michael Olson  <mwolson@gnu.org>
1861         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
1862         adopted from Jim Ottaway's patch.  It removes links from the
1863         heading, and then marks the region read-only to inhibit WikiWord
1864         detection.
1866 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
1868         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
1869         special handling for headings.
1870         (muse-texinfo-remove-links): New function that removes explicit
1871         links from the given strings, replacing them with a description.
1873 2006-09-11  Michael Olson  <mwolson@gnu.org>
1875         * muse.texi (Getting Help and Reporting Bugs): Mention the
1876         muse-el-internationalization mailing list.
1878         * lisp/muse.el (muse-path-sans-extension): New function that acts
1879         like file-name-sans-extension, but guarantees to never modify the
1880         directory part of the path.  Thanks to Evan Monroig for
1881         investigating this.
1883         * lisp/muse-book.el (muse-book-publish-project): Use
1884         muse-path-sans-extension instead of file-name-sans-extension.
1886         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
1887         Ditto.
1889 2006-08-30  Michael Olson  <mwolson@gnu.org>
1891         * muse.texi (Blosxom Requirements): Fix typo.
1893         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
1894         directories for bzr and darcs.
1896         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
1897         contrib/pyblosxom/getstamps.py: Update version and headers.
1899 2006-08-27  Michael Olson  <mwolson@gnu.org>
1901         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
1902         nil values before they get to mapconcat.  This fixes a lockup when
1903         muse-wiki-match-all-project-files is nil.
1905         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
1906         (muse-wiki-ignore-implicit-links-to-current-page)
1907         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
1908         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
1909         (muse-wiki-publish-small-title-words)
1910         (muse-wiki-publish-pretty-title): Docfix.
1911         (muse-wiki-update-local-wikiword-regexp): Rename from
1912         muse-wiki-update-local-wikiword-regexp.  Set
1913         muse-wiki-project-file-regexp instead of
1914         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
1915         take muse-wiki-use-wikiword into account, since this is a
1916         different concept now.
1917         (muse-wiki-update-wikiword-regexp): Remove.
1918         (muse-wiki-wikiword-regexp): In-line the :set function.
1919         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
1921 2006-08-26  Michael Olson  <mwolson@gnu.org>
1923         * lisp/muse-publish.el (muse-publish-surround-text): When looking
1924         for indented list items, ignore blank lines.
1926         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
1927         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
1928         mapconcat.  This should hopefully fix a problem with large amounts
1929         of files with spaces in their name.  Thanks to Greg Detre for the
1930         report.
1932 2006-08-24  Michael Olson  <mwolson@gnu.org>
1934         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
1935         numbers from the argument to format-time-string.  This fixes an
1936         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
1938 2006-08-18  Michael Olson  <mwolson@gnu.org>
1940         * lisp/muse-project.el (muse-project-file-entries): Since we are
1941         given a full path, match against the filename as well.  This fixes
1942         an issue where backup files were being added to the file alist.
1944         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
1945         from muse-html.el.
1947 2006-08-12  Michael Olson  <mwolson@gnu.org>
1949         * Makefile (.PHONY): Don't use line continuations.
1950         (realclean fullclean): Call realclean in subdirs, not distclean.
1951         (distclean): Don't call realclean, since this would wipe out our
1952         autoloads file.
1953         (dist): Use correct path to autoloads file.
1955         * NEWS: Catch up with the latest changes.
1957         * experimental/Makefile (.PHONY): Wrap long line.
1959         * lisp/Makefile (distclean): Do the same thing as "clean", not
1960         "realclean".
1962         * lisp/muse-project.el (muse-project-get-applicable-style):
1963         Indentation tweak.
1964         (muse-project-ignore-regexp, muse-project-recurse-directory):
1965         Docfix.
1966         (muse-project-of-file): Try the ignored files regexp against the
1967         base filename as well as the entire path.
1969         * lisp/muse-publish.el (muse-publish-this-file): Display message
1970         if the buffer is not associated with any file, so that we avoid
1971         errors later on.
1972         (muse-publish-url-desc): New function taken from muse-publish-url
1973         that causes a URL description to be transformed.
1974         (muse-publish-url): Call muse-publish-url-desc on either the
1975         description or the original URL if it will be used as a
1976         description.  Accept the original URL as an argument, in case it
1977         was transformed earlier.
1978         (muse-publish-insert-url): Pass original URL as an argument.
1979         (muse-publish-markup-link): Make this somewhat easier to follow.
1980         Pass original URL as argument.
1981         (muse-publish-get-style): If the same style is used to publish to
1982         two different directories, prompt the user for which directory to
1983         use.
1984         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
1985         latest changes.
1986         (muse-publish-markup-url): Pass original URL as an argument.  This
1987         fixes the "nil" description for bare URLs that was in 3.02.91.
1988         Nothing like finding a bug just after completing the announcement
1989         of a release.
1991         * lisp/muse.el: Use defalias whenever convenient.
1992         (muse-version): Set version to 3.02.92 (3.03 RC2).
1994 2006-08-10  Michael Olson  <mwolson@gnu.org>
1996         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
1997         style does not derive from any other class, return `t' here.
1998         This, along with the corresponding change to muse-publish.el,
1999         fixes a problem with the table of contents getting inserted
2000         multiple times for custom html-based styles.
2001         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
2002         smarter method for table centering that works with XHTML.
2004         * lisp/muse-latex2png.el Rename all functions to have a
2005         "muse-latex2png" prefix.  Turn all variables into customizable
2006         options in the muse-latex2png group.
2007         (muse-latex2png-img-dest): New option specifying where to place
2008         the images.
2009         (muse-latex2png-template): New option containing the template to
2010         use for the surrounding LaTeX code.
2011         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
2012         compliance.
2013         (muse-latex2png-move2pubdir): Avoid multiple redundant error
2014         messages when something else goes wrong.  Create the image
2015         subdirectory if it doesn't exist already -- thanks to Christian
2016         Straßer for the report.  Expand the filename properly.
2017         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
2018         and filename expansion.
2019         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
2020         the default directory properly.
2022         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
2023         do not run the same function twice.
2025 2006-08-08  Michael Olson  <mwolson@gnu.org>
2027         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
2028         introduced wrong-type-argument error.
2030         * lisp/muse-html.el (muse-html-markup-strings)
2031         (muse-xhtml-markup-string): Cause table definition that contains
2032         image to be center-aligned.  This should fix an issue with images
2033         not being centered when captions are very long.
2035         * lisp/muse-publish.el (muse-publish-table-fields): Trim
2036         whitespace from fields once we have split them up.
2038         * lisp/muse.el (muse-trim-whitespace): New function that strips
2039         leading and trailing whitespace from a string.
2041 2006-08-07  Michael Olson  <mwolson@gnu.org>
2043         * NEWS: Update through patch-95.
2045         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
2046         to match the tags.
2047         (muse-colors-explicit-link): Show images in link descriptions if
2048         inlined images are enabled.
2050         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
2051         definitions for 'image-with-desc, 'image, and 'image-link.
2052         (muse-docbook-markup-paragraph): If an inlined image begins a
2053         paragraph, insert <para> before it.
2054         (muse-docbook-fixup-images): New function that upper-cases the
2055         "format" attribute of the <imagedata> tag.
2056         (muse-docbook-finalize-buffer): Call it.
2058         * lisp/muse-html.el (muse-html-markup-strings): Publish images
2059         with descriptions as centered tables, with a centered caption
2060         underneath.  The resulting look is consistent with the way that
2061         they are published in the LaTeX style.  Thanks to Jody Klymak for
2062         the suggestion.
2063         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
2064         valid way to center a table.
2065         (muse-html-markup-paragraph): Use class="image" instead of
2066         "image-link" for paragraphs that start with an embedded image.
2068         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
2069         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
2070         suggestion.
2071         (muse-latex-markup-specials-image): New option that enables
2072         escaping of specials in images.  This was split from the URL
2073         specials.
2074         (muse-latex-decide-specials): Handle 'image context.
2075         (muse-latex-fixup-dquotes): Go to beginning of document, instead
2076         of relying on caller to do this for us.
2078         * lisp/muse-publish.el (muse-publish-escape-specials): Document
2079         'image context.
2080         (muse-publish-url): Use 'image context for images.  Use 'image
2081         instead of 'image-link and 'image-link in place of
2082         'url-with-image.  Separate the image file from its extension so
2083         that docbook and texinfo can publish images correctly.
2084         (muse-publish-markup-link): Don't force a description if one is
2085         not given.  This fixes a bug where images without descriptions
2086         were being published as 'image-with-desc instead of 'image.
2088         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
2089         images the same as URLs.
2090         (muse-texinfo-markup-strings): Improve image markup to achieve an
2091         effect similar to that of the LaTeX publishing style.  Simplify
2092         'url string.
2094         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
2096         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
2097         when we have to use the custom version of this function.
2099         * muse.texi (Images): Explain how to toggle inlining of images and
2100         give better examples.  Mention captions and that captioned images
2101         should not be used inside of text paragraphs.
2102         (Markup Strings): Bring up-to-date with the changes made since
2103         3.02.
2105 2006-08-06  Michael Olson  <mwolson@gnu.org>
2107         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
2108         in the Emacs source tree.
2110         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
2111         in the Emacs source tree.
2113         * ChangeLog.3: New file created from the old ChangeLog.
2115         * Makefile.defs (VERSION): Set to 3.02.91.
2117         * NEWS: Update through patch-84.
2119         * lisp/muse.el (muse-version): Set to 3.02.91.
2121         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
2122         attributes.
2123         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
2124         delimiter are instead of hard-coding it.
2126         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
2127         (muse-mode): Make filling definition lists work better.  This
2128         should fix #5359.
2130         * lisp/muse-publish.el (muse-style-run-hooks): Use
2131         `muse-style-element' instead of `muse-get-keyword' here.  This
2132         should fix #6399.
2134         * muse.texi: Set version to 3.02.91 (3.02 RC2).
2136 See ChangeLog.3 for earlier changes.
2138 ;; Local Variables:
2139 ;; coding: utf-8
2140 ;; End: