Remove buggy fallback code in muse-replace-regexp-in-string
[muse-el.git] / ChangeLog
blob46245d281ec242de8dd9f14845b7ae5531f3bb99
1 2007-09-19  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse.el (muse-replace-regexp-in-string): Remove fallback
4         code, since it is not needed in any version of Emacs we support,
5         and it also has a couple of bugs that I don't want to waste time
6         fixing.
8 2007-09-18  Michael Olson  <mwolson@gnu.org>
10         * lisp/muse-mode.el (muse-mode): Fix bug involving filling and
11         paragraphs next to headings.  Thanks to Gregory Collins for the
12         initial patch, which I modified.
14 2007-09-17  Michael Olson  <mwolson@gnu.org>
16         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Display
17         message about how images are now displayed.
19 2007-09-10  Michael Olson  <mwolson@gnu.org>
21         * Makefile (elpa): Use texi/dir-template rather than echoing lines
22         to the ELPA dir file for Muse.
24         * texi/dir-template: New file containing template to use when
25         making ELPA dir files.  This fixes a corrupt dir file bug for the
26         Muse ELPA package.  Thanks to Tom Tromey for the report.
28 2007-09-06  Michael Olson  <mwolson@gnu.org>
30         * lisp/muse-html.el (muse-html-class-tag): Fix bug where nested
31         class tags were not working.  We move to just after the beginning
32         of the first class tag, so that we can detect any remaining class
33         tags.  Thanks to Florian Beck for the report.  Fix error that
34         occurred when class tag has no name element.  Thanks to Peter
35         Baranyi for the report.  The correct behavior in this case is to
36         not publish the tag at all.
38         * lisp/muse.el (muse-goto-tag-end): Fix bug where nested tags with
39         arguments were not being detected properly.
41 2007-09-05  Michael Olson  <mwolson@gnu.org>
43         * lisp/muse-context.el (muse-context-decide-specials): Add
44         footnote.
46         * lisp/muse-latex.el (muse-latex-decide-specials): Add footnote.
48         * lisp/muse-publish.el (muse-publish-escape-specials): Mention
49         'footnote in docstring.
50         (muse-publish-markup-footnote): Minor docstring fix.  Escape
51         footnote text properly.  Thanks to Jean Magnan de Bornier for
52         noticing.
53         (muse-publish-url): When checking to see if this is just a plain
54         URL without a description, compare the strings as they were before
55         doing escaping.  This fixes a bug where plain URLs could sometimes
56         be published as if they were URLs with descriptions.
58         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Add
59         footnote.
61 2007-08-29  Michael Olson  <mwolson@gnu.org>
63         * lisp/muse.el (muse-update-values): Reset the value of
64         muse-current-project in all Muse buffers.  This updates the rules
65         in case you want to publish a file after changing its associated
66         muse-project-alist entry.
68 2007-08-27  Michael Olson  <mwolson@gnu.org>
70         * lisp/muse.el (muse-update-values): New function that the user
71         can call after changing muse-project-alist, in order to update
72         various autogenerated values.
74         * texi/muse.texi (Keystroke Summary): Document it.
76 2007-08-25  Michael Olson  <mwolson@gnu.org>
78         * examples/QuickStart.muse: Fix typo in first paragraph.  Thanks
79         to Karl Berry for reporting this.
81         * lisp/muse-mode.el (muse-visit-link-default): Fix bug with
82         browsing anchors that come after a link to them.
84         * texi/muse.texi (Poem): Fix typo in spelling of LaTeX.  Thanks to
85         Karl Berry for reporting this.
87 2007-08-24  Michael Olson  <mwolson@gnu.org>
89         * Release Emacs Muse 3.11.
91         * AUTHORS: Add new authors for contrib files.
93         * NEWS: Add entries for Muse 3.11.
95         * README: Mention that contents of contrib/blosxom and
96         contrib/pyblosxom have different licenses than the rest of Muse.
98         * contrib/blosxom/getstamps.pl: New file that implements fetching
99         timestamps from published Muse files and placing them in a single
100         timestamps file.  That file can then be used by blosxom's metadate
101         plugin.  Thanks to Michael Welle for providing this file, as well
102         as instructions on how to use Muse with Blosxom.
104         * contrib/blosxom/metadate_0_0_3: New file implementing the
105         metadate plugin for blosxom.
107         * contrib/pyblosxom/getstamps.py: Add license text.  It seems safe
108         to assume that the original author wanted this to be distributed
109         with Pyblosxom, and hence use the MIT license like the rest of
110         Pyblosxom.
112         * contrib/pyblosxom/hardcodedates.py: Add license text.
114         * contrib/pyblosxom/make-blog: Change license text to be "This
115         file may be used, distributed, and modified without restriction."
117         * contrib/pyblosxom/metadate.py: New file that implements the
118         PyBlosxom metadate plugin.  Since this can no longer be found at
119         the original author's website, I have included it with Muse.
121         * lisp/muse-blosxom.el: Update location of metadate plugin in
122         header.
124         * lisp/muse-wiki.el (muse-wiki-project-file-regexp): Fix typo in
125         docstring.
127         * texi/muse.texi (Blosxom Requirements): Organize information by
128         subheading and subsubheading, and document how to use the metadate
129         plugin.  Briefly document using Blosxom to serve Muse entries.
131 2007-08-23  Michael Olson  <mwolson@gnu.org>
133         * lisp/muse-html.el (muse-html-insert-contents): Escape heading
134         title just before extracting it.
136         * lisp/muse-latex.el (muse-latex-fixup-headings): New function
137         that removes footnotes from headers, since they are invalid in
138         LaTeX.
139         (muse-latex-munge-buffer): Call it.
141         * lisp/muse-publish.el (muse-publish-markup-heading): Don't escape
142         specials here.  This fixes a bug involving links in headings.
144         * lisp/muse.el (muse-update-file-extension): Simplify, and handle
145         some edge cases.
146         (muse-update-file-extension-after-init): Temporarily bind
147         muse-file-extension to "muse", so that muse-update-file-extension
148         knows what the old value was.  This should fix a bug reported by
149         Jean Magnan de Bornier.
151 2007-08-21  Michael Olson  <mwolson@gnu.org>
153         * lisp/muse-texinfo.el (muse-texinfo-markup-strings): Try to make
154         url, link, and link-and-anchor look better in texi2html output.
155         Thanks to thorne for the report.
157 2007-08-20  Michael Olson  <mwolson@gnu.org>
159         * lisp/muse-journal.el (muse-journal-anchorize-title): Revamp to
160         escape characters rather than discard them.  Use muse-regexp-alnum
161         rather than listing out the characters and numbers.  Thanks to
162         Shunsuke OKANO for the report.
163         (muse-journal-rss-munge-buffer): Make sure that <![CDATA[ stuff is
164         used when generating a summary.
166 2007-08-19  Michael Olson  <mwolson@gnu.org>
168         * examples/mwolson: Update my example settings.
170         * lisp/muse-colors.el (muse-colors-region): Bind
171         muse-colors-region-end to the end of the last line.  This avoids a
172         bug where lines that had emphasis would suddenly become
173         unhighlighted when moving around the buffer.
175         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix bug
176         involving paragraphs after literallayout markup, which is used in
177         <verse> tags.  Thanks to Shunsuke OKANO for the report.
179         * lisp/muse-html.el (muse-html-src-tag): Use
180         muse-delete-and-extract-region.
182         * lisp/muse-import-xml.el: Add require statement.
183         (muse-import-xml-parse-node): Use muse-replace-regexp-in-string.
185         * lisp/muse-protocols.el (muse-browse-url-man): Add require
186         statement.
187         (muse-browse-url-woman): Add require statement.
189         * lisp/muse-publish.el (muse-publish-surround-text): Fix serious
190         bug in definition list publishing.  We were skipping past the
191         initial indented line, and that was causing an erroneous
192         blockquote to be inserted.  This alone merits a new release.
194         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Fix bug with
195         XEmacs' return value for shell-command.
197         * lisp/muse.el (muse-delete-and-extract-region): New compatibility
198         function to deal with XEmacs' lack of the
199         delete-and-extract-region function.
201 2007-08-18  Michael Olson  <mwolson@gnu.org>
203         * AUTHORS: Update.
205         * lisp/muse-publish.el (muse-publish-include-tag): Switch from
206         copy-tree to copy-alist, since Emacs21 does not have the former,
207         and the latter does what we want.
209         * lisp/muse.el: Force-require 'derived, since Emacs21 does not
210         have derived-mode-p in subr.el like Emacs22 does.
212 2007-08-17  Michael Olson  <mwolson@gnu.org>
214         * etc/muse.rnc: Add the <cite> tag.
216         * lisp/muse-context.el (muse-context-slides-header): Clarify what
217         "mystyle" is.
219         * lisp/muse-xml.el (muse-xml-markup-strings): Mark up citations as
220         <cite type="something">.  We'll leave it to the post processing
221         tools to interpret that.
223         * texi/muse.texi (Directives, Blosxom Entries): Use @code{} for
224         directives.
225         (Citations): New section that explains further how to use the
226         <cite> tag.  The text was taken from Marcus Hoenicka's
227         documentation at http://refdb.sourceforge.net/muse.html and
228         modified.
229         (Tag Summary): Link to the Citations section in the entry for
230         <cite>.
231         (ConTeXt): Update the documentation for
232         muse-context-slides-header.
234 2007-08-17  Jean Magnan de Bornier  <jean@bornier.net>
236         * lisp/muse-context.el (muse-context-slides-header): Use #module
237         directive, if it is provided.
238         (muse-context-slides-header): Mention how to use #module.
240 2007-08-16  Michael Olson  <mwolson@gnu.org>
242         * Release Emacs Muse 3.10.
244         * Makefile (dist, debprepare): Pass HEAD argument to git-archive.
245         (upload): Don't depend on release rule.
247         * NEWS: Document remaining changes.
249 2007-08-15  Michael Olson  <mwolson@gnu.org>
251         * NEWS: Document items through 2007-08-12.
253         * lisp/muse-colors.el: Split the muse-directive-or-comment
254         property into two separate properties that are muse-directive and
255         muse-comment.
256         (muse-colors-region-end): Make buffer-local.
257         (muse-colors-delayed-commands): New variable that contains a list
258         of commands to run immediately after highlighting.  This is meant
259         to allow highlighting functions to delay code until later.
260         (muse-colors-region): Apply commands in
261         muse-colors-delayed-commands.
262         (muse-colors-inhibit-tags-in-directives): New variable that
263         determines whether tags are allowed in directives.
264         (muse-colors-custom-tags): Take
265         muse-colors-inhibit-tags-in-directives into account.
266         (muse-unhighlight-region): Remove muse-directive and muse-comment
267         properties.
268         (muse-colors-title): Modify muse-colors-delayed-commands.
269         (muse-colors-title-lisp): New command that gets called after
270         highlighting other things.  This interprets <lisp> tags, and is
271         passed arguments specifying the beginning and end of the region.
272         Thanks to Junichi Uekawa for the report.  The reason we want to do
273         things this way is because this is the behavior we get already
274         when publishing the page.
276         * lisp/muse.el (muse-goto-tag-end): Change to use muse-comment
277         property rather than muse-directive-or-comment.
279 2007-08-14  Michael Olson  <mwolson@gnu.org>
281         * lisp/muse-colors.el: Document all functions and variables.
282         (muse-colors-emphasized, muse-colors-underlined)
283         (muse-colors-verbatim, muse-colors-custom-tags)
284         (muse-colors-explicit-link, muse-colors-implicit-link): Don't trod
285         on comments or the #title directive.
286         (muse-colors-markup): Add comment rule.
287         (muse-colors-implicit-link): Only remove flyspell overlay after we
288         decide whether this is an implicit link, rather than before.
289         (muse-colors-title): Add the muse-directive-or-comment property.
290         (muse-colors-comment): New function that colorizes comments using
291         font-lock-comment-face.
292         (muse-colors-region-end): New variable indicating the end of the
293         region that is currently being font-locked.  This removes the need
294         for an ugly "defvar end" hack.
295         (muse-colors-emphasized, muse-colors-underlined)
296         (muse-colors-verbatim): Use it.
297         (muse-colors-region): Let-bind it.
299         * lisp/muse-mode.el (muse-list-edit-minor-mode): Grammar fix in
300         docstring.
302         * lisp/muse-publish.el (muse-publish-markup-heading): Escape
303         specials in heading now, rather than waiting on the whole-document
304         pass later on.  This lets <contents> generation work without
305         validation errors.  Thanks to Reid van Melle for the report.
307         * texi/muse.texi (Tag Summary): Document <cite> tag.
308         (Miscellaneous): New chapter containing "Muse List Edit Minor
309         Mode" section.
310         (Muse List Edit Minor Mode): New section that documents
311         muse-list-edit-minor-mode.
312         (Development): Mention the MuseDevlopment page on emacswiki.org.
314         * lisp/muse.el (muse-goto-tag-end): Deal with case where we are
315         font-locking and the end or beginning of a tag is in a comment or
316         directive.
318 2007-08-12  Michael Olson  <mwolson@gnu.org>
320         * lisp/muse-html.el (muse-html-strip-links): New function that
321         strips HTML links from a string.
322         (muse-html-insert-contents): Use it, instead of
323         muse-publish-strip-tags.  This fixes a bug reported by Xin Shi
324         involving the use of <sup> in section titles.
326         * lisp/muse-project.el (muse-project-resolve-directory): New
327         function that figures out the directory part of the path that
328         provides a link to a page.
329         (muse-project-resolve-link): Expand docstring.  Use the new
330         function.  Don't call muse-publish-link-file, because that does
331         the wrong thing when we have muse-file-extension set to nil.
332         Thanks to Sebastian Obermanns for the report.
333         (muse-project-publish-this-file): Let-bind muse-current-project.
334         Also, if the file is not associated with a project, fall back to
335         muse-publish-this-file.
336         (muse-project-set-variables): Add this to
337         muse-before-publish-hook, so that it gets called.  This fixes a
338         bug where project-specific variables were being used in Muse mode,
339         but ignored when publishing.
341         * lisp/muse-publish.el (muse-publish-link-name)
342         (muse-publish-link-file, muse-publish-link-page): Add docstrings
343         so that I can remember what each of these things do.
344         (muse-publish-strip-tags): Remove, since it is no longer used.
345         (muse-publish-cite-tag): Don't let-bind
346         muse-publishing-directives, because there is no need to do so.
347         Fix code indentation.
348         (muse-publish-markup-attribute): Avoid multiple evaluation of
349         attrs argument, in case it is list value instead of a symbol.  Use
350         sexp instead of form in the edebug-form-spec.
351         (muse-publish-include-tag): Make a full copy of
352         muse-publishing-directives, since it can be modified with setcdr.
353         This fixes a bug where #title and some other directives were
354         leaking out of an included region.
355         (muse-publish-mark-up-tag): Don't let-bind
356         muse-publishing-directives, because there is no need to do so.
358         * lisp/muse.el (muse-page-name): Improve docstring.
360         * texi/muse.texi (Development): Mention the http method for
361         anonymous git access to the shared repo.
363 2007-08-10  Michael Olson  <mwolson@gnu.org>
365         * Makefile (dist, debprepare): Use git instead of tla.
367         * contrib/httpd.el (httpd-send-file): Use insert-file-contents.
369         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
370         Use muse-insert-file-contents.
372         * experimental/muse-split.el (muse-publish-file)
373         (muse-publish-presplit-publish, muse-publish-no-split-function)
374         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
375         muse-insert-file-contents.
377         * lisp/muse-book.el (muse-book-publish-chapter)
378         (muse-book-get-directives): Use muse-insert-file-contents.
380         * lisp/muse-http.el (muse-http-render-page): Use
381         muse-insert-file-contents.
383         * lisp/muse-poem.el (muse-poem-markup-tag): Use
384         muse-insert-file-contents.
386         * lisp/muse-publish.el (muse-insert-file-or-string)
387         (muse-publish-file, muse-publish-include-tag)
388         (muse-published-contents): Use muse-insert-file-contents.
390         * lisp/muse.el (muse-insert-file-contents): New function that
391         inserts a file with character code conversion, but none of the
392         other frivolities.  Since insert-file-contents-literally does not
393         do character code conversion, it is not suitable for us.
394         (muse-with-temp-buffer): Mention muse-insert-file-contents rather
395         than insert-file-contents-literally.
397 2007-08-09  Michael Olson  <mwolson@gnu.org>
399         * lisp/muse.el (muse-write-file): Pay attention to
400         coding-system-for-write and save-buffer-coding-system.  This
401         should fix a recently-introduced bug with writing Muse pages in
402         different coding systems.
404 2007-08-08  Michael Olson  <mwolson@gnu.org>
406         * README (Prerequisites): Fix typo.
407         (Compilation, Installation): Update.
408         (Documentation, Further Documentation): Update URLs.
409         (Further Documentation): Add quick blurb on how to participate in
410         Muse development or track changes.
412         * texi/muse.texi (Releases): Use gna.org URL for downloading the
413         latest release, rather than my website.
414         (Development): Change instructions to use git instead of
415         Arch. Mention where to get a Windows binary for git.  Improve the
416         look of the listing.  Add section with instructions for Becoming a
417         Muse developer.
418         (Installation): Update instructions for Makefile.defs.default and
419         XEmacs.  Add index entries.  Add section for ELPA, since Muse
420         ought to be distributed in ELPA after the 3.10 release.  Fix typo
421         and clarify wording.
423 2007-08-06  Michael Olson  <mwolson@gnu.org>
425         * texi/muse.texi: Make sure that attributes are marked up with
426         @option{} rather than @code{} or @samp{} for consistency.
427         (Journal): Add "muse-project-alist-considerations" subheading,
428         along with a mention of :base-url.
430 2007-08-05  Michael Olson  <mwolson@gnu.org>
432         * .gitignore: Add texi/muse.html and the DVC log edit file.
434         * Makefile.defs.default (install_info): Rename from INSTALLINFO.
435         Turn this into something that can be called like a command, due to
436         needing to deal with XEmacs, which has different argument order.
437         Thanks to Terrence Brannon for the report.
439         * lisp/muse-project.el (muse-project-of-file): Simplify by using
440         catch, throw, and dolist.  Look for exact matches before
441         considering any subdirectories.  If no exact matches are found,
442         then pick the longest match.
444         * lisp/muse.el (muse-sort-by-rating): Mention default test in
445         documentation.
447         * scripts/muse-build.el: Avoid interference from VC.el in the
448         build process.
450         * texi/Makefile (install): Call install_info.
452 2007-08-03  Michael Olson  <mwolson@gnu.org>
454         * lisp/muse-project.el (muse-project-applicable-styles): Remove
455         useless argument ignore-regexp.  Use saner logic.  This fixes a
456         bug where a file could potentially not exist but still appear in
457         the used-styles list.  Thanks to John Wiegley for the fix.
458         (muse-project-publish-file): Don't take ignore-reegxp argument.
460 2007-08-02  Michael Olson  <mwolson@gnu.org>
462         * lisp/muse-publish.el (muse-batch-publish-files): Don't activate
463         VC when publishing files in batch.  This avoids some annoying
464         messages when building QuickStart in the examples directory.
466         * lisp/muse-mode.el (muse-mode): Don't try to indent line before
467         inserting a comment.
469 2007-07-31  Michael Olson  <mwolson@gnu.org>
471         * lisp/Makefile: Add dependencies between Emacs Lisp files, so
472         that Muse can be recompiled without running "make clean" after an
473         update.
475         * lisp/muse-publish.el (muse-publish-verse-tag): Unconditionally
476         delete forward one character, since we are guaranteed to be on a
477         blank line.  Don't delete all initial whitespace of the first
478         line.  This fixes an issue where the output from the verse tag did
479         not match the output from Muse's verse syntax.
481 2007-07-29  Michael Olson  <mwolson@gnu.org>
483         * Relicense to GPLv3.
485         * Makefile.defs.default: Rename from Makefile.defs.  This allows
486         people to copy this file to Makefile.defs and make changes,
487         without having the changes be accidentally committed.  If
488         Makefile.defs does not exist, this file is read instead, in order
489         to minimize inconvenience to the casual user.
491         * Makefile, contrib/Makefile, examples/Makefile,
492         experimental/Makefile, lisp/Makefile, texi/Makefile: Use either
493         Makefile.defs.default or Makefile.defs.
495         * lisp/muse-mode.el (muse-list-edit-minor-mode-map): Use new
496         function names.
497         (muse-l-e-m-m-insert-list-item): Add real documentation.
498         (muse-l-e-m-m-increase-list-item-indent)
499         (muse-l-e-m-m-decrease-list-item-indent): Rename for clarity.  Add
500         real documentation.
501         (muse-list-edit-minor-mode): Improve documentation.
503         * texi/doclicense.texi (GNU Free Documentation License): Use
504         pristine copy from Emacs source tree.
506         * texi/muse.texi (Contributors): Move node and appendix indicators
507         here, rather than doclicense.texi.
509 2007-07-29  Jean Magnan de Bornier  <jean@bornier.net>
511         * lisp/muse-latex.el (muse-latex-markup-strings): Change rule
512         command which did not work correctly
514         * lisp/muse-context.el (muse-context-markup-strings): Change rule
515         command which did not work correctly; defined verse commands
516         (muse-context-markup-specials-literal): Eliminate all unuseful entries
518 2007-07-29  Michael Olson  <mwolson@gnu.org>
520         * contrib/httpd.el (httpd-send-file): Use
521         insert-file-contents-literally instead of insert-file-contents.
523         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
524         Use insert-file-contents-literally instead of
525         insert-file-contents.
527         * experimental/muse-split.el (muse-publish-file)
528         (muse-publish-presplit-publish, muse-publish-no-split-function)
529         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
530         insert-file-contents-literally instead of insert-file-contents.
532         * lisp/muse-book.el (muse-book-publish-chapter)
533         (muse-book-get-directives): Use insert-file-contents-literally
534         instead of insert-file-contents.
536         * lisp/muse-http.el (muse-http-render-page): Use
537         insert-file-contents-literally instead of insert-file-contents.
539         * lisp/muse-import-latex.el (muse-import-latex): Set marker to
540         nowhere when done, since they can slow things down.
542         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Set
543         marker to nowhere when done, since they can slow things down.
545         * lisp/muse-poem.el (muse-poem-markup-tag): Set marker to nowhere
546         when done, since they can slow things down.  Use
547         insert-file-contents-literally instead of insert-file-contents.
549         * lisp/muse-publish.el (muse-publish-markup-tag)
550         (muse-publish-markup-word, muse-publish-markup-footnote)
551         (muse-publish-call-tag-on-buffer): Set markers to nowhere when
552         done, since they can slow things down.
553         (muse-insert-file-or-string, muse-publish-file)
554         (muse-publish-include-tag, muse-published-contents): Use
555         insert-file-contents-literally instead of insert-file-contents.
556         (muse-publish-surround-dl): Remove unused variable.  Track whether
557         a term has been found, and handle that case well.
558         (muse-publish-ensure-blank-line): Use a marker, so that we don't
559         lose our place when adding a newline.  This really fixes the
560         definition list item bug.
561         (muse-publish-markup-list): Since people do seem to want
562         definition lists with no terms, allow this.
563         (muse-batch-publish-files): Set muse-current-output-style.
565         * lisp/muse.el (muse-with-temp-buffer): Mention
566         `insert-file-contents-literally'.
568 2007-07-28  Michael Olson  <mwolson@gnu.org>
570         * lisp/muse-mode.el (muse-browse-result): Set
571         muse-current-output-style.
572         (muse-mode): Don't duplicate the paragraph-start regexp
573         unnecessarily.
574         (muse-list-edit-minor-mode-map): New variable containing the
575         keymap for Muse list edit minor mode.
576         (muse-l-e-m-m-list-item-regexp): New variable that matches list
577         items for Muse list edit minor mode.
578         (muse-l-e-m-m-insert-list-item,
579         muse-l-e-m-m-i-list-item-indentation)
580         (muse-l-e-m-m-d-list-item-indentation): Variants of existing list
581         item functions that change the list item regexp before calling the
582         existing function.
583         (muse-l-e-m-m-data): New variable that keeps track of the fill
584         data that we overwrite when activating Muse list edit minor mode,
585         so that we can restore it if the minor mode is toggled off.
586         (muse-list-edit-minor-mode): New minor mode that is useful for
587         editing lists in other major modes.
588         (turn-on-muse-list-edit-minor-mode)
589         (turn-off-muse-list-edit-minor-mode): New interactive functions
590         that turn Muse list edit minor mode on and off, respectively.
591         (muse-on-blank-line, muse-get-paragraph-start): Simplify some
592         regexps.
594         * lisp/muse-project.el (muse-project-publish-this-file): Set
595         muse-current-output-style.  This fixes a bug when publishing to a
596         style that is not first in the list of styles.  Thanks to Jean
597         Magnan de Bornier for the report.
599         * lisp/muse-publish.el (muse-publish-ensure-blank-line): New
600         function that ensures that a blank line exists in the line before
601         point.
602         (muse-publish-markup-list): Use it, rather than
603         `muse-publish-ensure-block'.  This fixes a bug with definition
604         list publishing.  Thanks to meandtheshell for reporting this.
606         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): If the
607         project argument is nil, default to the current project instead of
608         the first project entry in muse-project-alist.  This seems much
609         more sane to me.
611         * lisp/muse.el (muse-forward-list-item): Only check the 'face
612         property if we are in Muse mode or one of its derivatives.  This
613         allows movement on nested lists to work in other modes, and fixes
614         an issue with altering list indentation in
615         muse-list-edit-minor-mode.
617 2007-07-27  Michael Olson  <mwolson@gnu.org>
619         * AUTHORS: Add new authors.
621         * README: Permit Muse to be called "Emacs-Muse".
623         * etc/IDEAS.muse: Remove now-implemented ideas and duplicate idea.
625         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug
626         involving list items that have an extra blank line in front.
628         * texi/muse.texi (Introduction): Mention that Emacs Muse, Muse,
629         and Emacs-Muse are the same thing.
631 2007-07-27  Jean Magnan de Bornier  <jean@bornier.net>
633         * lisp/muse-context.el (muse-context-header): Put
634         starttext after the modules who must be in preamble.
635         (muse-context-markup-strings): Fixed mistake in begin-example and
636         end-example.
638         * lisp/muse-latex2png.el (muse-publish-math-tag): Replaced the
639         math environment in ConTeXt when centered: "$$ $$" has to be
640         "\startformula \stopformula".
642 2007-07-26  Michael Olson  <mwolson@gnu.org>
644         * lisp/muse-xml-common.el (muse-xml-escape-url): Do not escape
645         parentheses in URLs.
647 2007-07-24  Michael Olson  <mwolson@gnu.org>
649         * examples/QuickStart.muse (Images): Fix typo where some text
650         existed in the output but not in the example region.
651         (Source Code): Fix another typo.  Explain that publishing from
652         console or X can make a difference.
654         * lisp/muse-context.el (muse-context-pdf-program): New option that
655         determines the program to use for generating PDF files for
656         ConTeXt.
657         (muse-context-pdf-cruft): New option that specifies the extensions
658         of files to remove after generating PDF output successfully.
659         (muse-context-slides-header): Docfix.
660         (muse-context-pdf-generate): Use new options.
662         * lisp/muse-publish.el (muse-publish-lisp-tag): Add missing
663         save-restriction call.  This was causing a world of hurt when
664         using <lisp> inside of <include>.
666         * texi/muse.texi (ConTeXt): New section that documents how to use
667         the ConTeXt publishing styles.
669 2007-07-23  Michael Olson  <mwolson@gnu.org>
671         * lisp/muse-context.el: New file that provides support for
672         publishing documents to the ConTeXt format.  Thanks to Jean Magnan
673         de Bornier for his work on this.
675         * lisp/muse-docbook.el (muse-docbook-entities)
676         (muse-docbook-bibliography): Remove unneeded save-restriction use.
678         * lisp/muse-latex2png.el (muse-publish-latex-tag):
679         s/contex/context/.
681         * lisp/muse-latex.el (muse-latex-fixup-citations): Add docstring.
682         (muse-latex-bibliography): Remove call to `widen', since it is not
683         needed anymore.  Remove unneeded save-restriction use.
684         ("slides", "slides-pdf"): Indent elements uniformly.
686 2007-07-22  Michael Olson  <mwolson@gnu.org>
688         * lisp/muse-blosxom.el (muse-blosxom-new-entry):
689         * lisp/muse-mode.el (muse-insert-tag):
690         * lisp/muse-project.el (muse-read-project)
691         (muse-read-project-file):
692         * lisp/muse-publish.el (muse-publish-get-style): Use
693         muse-completing-read-function.
695         * lisp/muse-latex2png.el (muse-publish-latex-tag)
696         (muse-publish-math-tag): Allow the context style -- which I plan
697         to include soon -- to work with these tags.
699         * lisp/muse.el (muse-completing-read-function): New option that
700         determines which function to call when doing a completing-read.
702 2007-07-15  Michael Olson  <mwolson@gnu.org>
704         * lisp/muse-journal.el (muse-journal-html-entry-template)
705         (muse-journal-rdf-entry-template)
706         (muse-journal-rss-entry-template): Mention that this can be text
707         or a filename.
708         (muse-journal-rdf-entry-template, muse-journal-rss-header)
709         (muse-journal-rss-footer, muse-journal-rss-entry-template): Add
710         newlines to make the output look nicer.
711         (muse-journal-html-munge-buffer, muse-journal-rss-munge-buffer):
712         Use muse-insert-file-or-string for the entry templates, rather
713         than muse-insert-markup.  This allows <lisp> and <markup> tags to
714         be acted on.  Thanks to Scott Hyde for the report.
715         (muse-journal-html-munge-buffer): Escape quote of the day using
716         entire-document specials before snarfing it.  Mark entire template
717         as read-only -- this fixes an incorrect escaping bug.  Remove
718         read-only properties before replacing template matches so that
719         they can still be escaped with entire-document specials later on.
720         (muse-journal-rss-munge-buffer): Make sure that title is escaped
721         properly.
722         (muse-journal-markup-tags): Rename from
723         muse-journal-latex-markup-tags, because we will use it for
724         journal-rss-entry as well.
725         (muse-journal-qotd-tag): Move higher.  Use begin-quote-item and
726         end-quote-item.
727         (muse-journal-rss-munge-buffer): Use journal-rss-entry rather than
728         html.
729         ("journal-latex", "journal-pdf", "journal-book-latex")
730         ("journal-book-pdf"): Use muse-journal-markup-tags rather than
731         muse-journal-latex-markup-tags.
732         ("journal-rss-entry"): New style that is used by journal-rss and
733         journal-rdf to mark up individual entries.  It is needed so that
734         we can do something meaningful with the qotd tag.
735         (muse-journal-rdf-summarize-entries): Set this to nil by default,
736         because it is annoying.  Update docs to mention this.
737         (muse-journal-rss-summarize-entries): Docfix.
739         * lisp/muse-publish.el (muse-insert-file-or-string): Use
740         muse-publish-markup-header-footer-tags.  I'm not quite sure how
741         this change got reverted.
742         (muse-markup-tag-info): Make into a function.  Move common code
743         here, rather than duplicating it in two places.  Deal with case
744         where muse-publish-use-header-footer-tags is non-nil.
745         (muse-publish-markup-specials, muse-publish-inhibit-style-hooks)
746         (muse-inhibit-style-tags): Move higher to avoid byte-compiler
747         warning.
748         (muse-publish-use-header-footer-tags): New variable that indicates
749         whether we should use just the header and footer tags, rather than
750         the full set.
751         (muse-insert-file-or-string): Bind
752         muse-publish-use-header-footer-tags to t.
753         (muse-publish-markup-tag, muse-publish-call-tag-on-buffer):
754         Simplify call to muse-markup-tag-info.
755         (muse-publish-mark-up-tag): Bind
756         muse-publish-use-header-footer-tags to nil.
758         * texi/muse.texi (Journal): Update for recent changes.
760 2007-07-14  Michael Olson  <mwolson@gnu.org>
762         * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Don't
763         delete the remainder of the buffer, since this causes the
764         resulting RDF to have invalid syntax.  Thanks to Phillip Lord for
765         the report and the suggested fix.
767         * lisp/muse-publish.el (muse-publish-markup-regexps): Add "^" to
768         beginning of table-el regexp.  This fixes a bug where Muse stalls
769         when trying to publish a malformed table.  Thanks to Ye Wenbin for
770         the report and the suggested fix.
772 2007-07-12  Michael Olson  <mwolson@gnu.org>
774         * lisp/muse-wiki.el (muse-wiki-interwiki-regexp): Set to nil by
775         default, rather than the empty string.  This really fixes the bug
776         that occurred when using Muse with muse-project-alist set to nil.
777         Thanks to Jonathan Underwood for the report.
778         (muse-wiki-update-interwiki-regexp): Set
779         muse-wiki-interwiki-regexp to nil if muse-project-alist is not
780         defined.
781         (muse-wiki-handle-implicit-interwiki)
782         (muse-wiki-handle-explicit-interwiki): Handle case where
783         muse-wiki-interwiki-regexp is nil.
785 2007-07-10  Michael Olson  <mwolson@gnu.org>
787         * lisp/muse-mode.el (muse-grep): Abort search if the current
788         project contains no directories.
790         * lisp/muse-project.el (muse-project-file-alist): If
791         muse-project-alist is not defined, or project is nil, return nil
792         right away.  This ought to fix a bug that occurred when using Muse
793         with muse-project-alist set to nil.
794         (muse-project-of-file): Make sure muse-project-alist is not nil.
795         (muse-project-save-buffers): Make sure project is not nil.
797         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Deal with
798         case where muse-project-alist is nil.
800         * lisp/muse.el (muse-replace-regexp-in-string): Explicitly check
801         for XEmacs, since color-theme.el is poorly behaved, and defines
802         its own replace-in-string.  Bad color-theme.el -- no cookie for
803         you.
805 2007-07-01  Michael Olson  <mwolson@gnu.org>
807         * Makefile (.PHONY): Update for new debian package rules.
809         * lisp/muse-book.el (muse-book-latex-footer): Wrap long line.
811         * lisp/muse-docbook.el (muse-docbook-fixup-citations): Re-indent.
812         Use save-restriction properly.
813         (muse-docbook-entities, muse-docbook-bibliography): : Re-indent.
815         * lisp/muse-latex.el (muse-latex-footer): Wrap long line.
816         (muse-latex-fixup-citations): Re-indent.  Use save-restriction
817         properly.
818         (muse-latex-bibliography): Re-indent.
820         * lisp/muse-publish.el (muse-publish-get-and-delete-attr): Move
821         higher.  This fixes an error at startup with some versions of
822         Emacs.
823         (muse-publish-cite-tag): Re-indent.
825         * lisp/muse-wiki.el (muse-wiki-handle-explicit-interwiki): Narrow
826         to the end of the link part, so as to exclude the description from
827         the match.  This fixes a bug with three-part links that have
828         descriptions.  Thanks to everyone who pointed it out.
830 2007-06-18  Michael Olson  <mwolson@gnu.org>
832         * lisp/muse-html.el (muse-html-markup-strings): Add anchor.
833         (muse-xhtml1.1-markup-strings): New option that specifies XHTML
834         1.1 specific markup strings.
835         (muse-html-insert-anchor): Use 'anchor string, rather than
836         hard-coding it.  Thanks to Chris Corsair for the suggestion.
837         ("xhtml1.0"): New style that is an alias for the xhtml style.
838         ("xhtml1.1"): New style that publishes XHTML 1.1 compliant output.
840 2007-06-17  Michael Olson  <mwolson@gnu.org>
842         * examples/QuickStart.muse: Make images local so that the Info
843         version of this document works.  Add <example> for the Literal
844         paragraphs chapter, so that it is clear what is happening.
846         * Makefile: Add elpa target, which is used for building an ELPA
847         package for Muse.
849         * Makefile.defs (ELPADIR, ELPADESC): New variables used for
850         building ELPA packages.
852         * examples/Makefile (%.html, %.pdf, %.info): Add message to
853         indicate what we are publishing.
854         (realclean distclean fullclean): Remove all TeX crud.
856         * examples/emacs-muse.png, examples/muse-made-with.png: Include so
857         that the Info version of QuickStart can publish correctly.
859         * lisp/muse-latex.el (muse-latex-slides-header)
860         (muse-latex-lecture-notes-header): Docfix.
862         * lisp/muse-project.el (muse-project-ignore-regexp): Add .git to
863         the list of things to ignore.
865         * lisp/muse-publish.el (muse-publish-markup-list): Remove unused
866         variable.
868         * lisp/muse-texinfo.el (muse-texinfo-process-natively): Set
869         default to nil, since texinfmt.el is a serious nuisance.
870         (muse-texinfo-markup-strings): Add newlines to begin-example and
871         end-example.
872         (muse-texinfo-decide-specials): Also escape URL-type specials in a
873         whole slew of other contexts.
875         * lisp/muse-xml-common.el (muse-xml-encoding-map): Change group to
876         muse-xml.
878         * lisp/muse-xml.el (muse-xml-footer): Docfix.
880         * lisp/muse.el (muse-version): Release Emacs Muse version 3.03.
882 2007-06-16  Michael Olson  <mwolson@gnu.org>
884         * etc/IDEAS.muse: Add some ideas from David D. Smith.
886         * examples/QuickStart.muse: Overhaul.
888         * lisp/muse-project.el (muse-project): Call the last part of a
889         muse-project-alist entry "Output styles" rather than "styles".
891         * lisp/muse-publish.el (muse-publish-table-fields): Handle case
892         where we have a pipe character at the beginning of line.
894         * lisp/muse-xml-common.el (muse-xml-sort-table): Fix typo that was
895         causing tables to not be sorted at all.
897         * texi/muse.texi: Overhaul.  It would be too time-consuming to
898         list all of the changes here.  The "Getting Started" and
899         "Projects" chapters, in particular, were heavily revised.
901 2007-06-15  Michael Olson  <mwolson@gnu.org>
903         * NEWS: Update.
905         * examples/QuickStart.muse: Mention new features.
907         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Docfix.
908         Remove C-c C-i keybinding, since it conflicts with C-c TAB in the
909         terminal, and C-c TAB is more important.  Most people will not
910         want to toggle images on and off that often.
912         * lisp/muse-mode.el (muse-mode-map): Bind muse-insert-thing to C-c
913         C-i as well, so that it works in the terminal.
915         * lisp/muse-publish.el (muse-publish-literal-tag): Make the output
916         look a bit tidier when removing the region.
918         * lisp/muse-regexps.el (muse-list-item-regexp): Put definition
919         list regexp part before other parts.
920         (muse-ol-item-regexp): New regexp that specifies how to match an
921         ordered list item.
922         (muse-ul-item-regexp): New regexp that specifies how to match an
923         unordered list item.
924         (muse-table-field-regexp): New regexp that specifies how to match
925         a definition list entry.
927         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Work around
928         lack of support for @headitem in texinfmt.el.
930         * lisp/muse.el: Wrap muse-line-beginning-position and
931         muse-line-end-position in `eval-and-compile', since they are now
932         used in muse.el.
933         (muse-list-item-type): Use a simpler algorithm for detecting which
934         kind of list item we have.  This fixes a bug where a number in a
935         definition list term was being detected incorrectly as an ordered
936         list item.  Fixes bug #6250.
937         (muse-forward-list-item): Get the entire line with the list item.
938         For some reason, Emacs 21 was not populating match 2 correctly,
939         unlike Emacs 22, so this workaround was needed.
941         * texi/muse.texi: (Keystroke Summary): Remove C-c
942         C-i (`muse-insert-tag') documentation, and mention C-c C-i as an
943         alternative keybinding to the C-c TAB stuff.  Mention
944         muse-colors-toggle-inline-images.
946 2007-06-14  Michael Olson  <mwolson@gnu.org>
948         * README: Mention that RelaxNG schema is in etc/ directory.
950         * etc/emacs-wiki-migration.txt: New document that explains how to
951         migrate from emacs-wiki to Muse.
953         * etc/muse.rnc: Increment version number to 1.0.  Fix several
954         nested emphasis and nested lists edge cases.  Move here from
955         examples/.
957         * lisp/muse-mode.el (muse-mode-map): Permit C-c C-M-t to do the
958         same thing as C-c C-S-t, since the former works better in the
959         console.  Thanks to Leo for the suggestion.
961         * lisp/muse-publish.el (muse-publish-markup-table)
962         (muse-publish-markup-table-el): Include a newline in the return
963         string, so that paragraph detection does not get confused.
965         * lisp/muse.el (muse-with-temp-buffer): Docfix.
967         * texi/muse.texi (Keystroke Summary): Document the C-c C-M-t
968         keybinding.
970 2007-06-13  Michael Olson  <mwolson@gnu.org>
972         * etc/IDEAS.muse: Mark three-part-links item as done.
974         * experimental/muse-message.el: Remove guard for muse-define-style
975         calls.
977         * lisp/muse-colors.el (muse-configure-highlighting): Fix bug where
978         markup rules were being interpreted in reverse order.  This should
979         make implicit interwiki links work properly again.
980         (muse-link-face): Strip anchor from end of a path, so that this
981         works with anchors in interwiki links.
982         (muse-colors-insert-image): Catch error that occurs in Emacs 21
983         when an image does not exist.
985         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Permit
986         anchors.
987         (muse-wiki-handle-implicit-interwiki): Docfix.  Make anchors in
988         interwiki links work.  Thanks to Jim Ottaway for the initial
989         implementation.
990         (muse-wiki-handle-explicit-interwiki): Make anchors in interwiki
991         links work.
993         * lisp/muse.el (muse-handle-implicit-link): Docfix: only care
994         about match 0.
995         (muse-handle-explicit-link): Docfix: this does not modify the
996         match data.
997         (muse-file-remote-p): In Emacs 21, ange-ftp-name-format is a list
998         that has the regexp in its car.
1000 2007-06-12  Michael Olson  <mwolson@gnu.org>
1002         * README: Document new etc/ directory.
1004         * etc/IDEAS.muse: Install things from new contributors just after
1005         the 3.03 release, since I won't have time to review the code
1006         before the release.  Move to new etc/ directory.  Slides
1007         publishing has been installed.
1009         * lisp/muse-latex.el (muse-latex-slides-header): New option that
1010         determines the header to use for publishing slides.
1011         (muse-latex-lecture-notes-header): New option that determines the
1012         header to use for publishing lecture notes.
1013         (muse-latex-slides-markup-tags): New option containing tags to use
1014         when publishing slides.
1015         (muse-latex-permit-contents-tag): Move higher in file.
1016         (muse-latex-slide-tag): New function to publish the <slide> tag.
1017         ("slides", "slides-pdf"): New publishing styles that create slides
1018         using Beamer.
1019         ("lecture-notes", "lecture-notes-pdf"): New publishing styles that
1020         create lecture notes using Beamer.
1022         * lisp/muse.el: Re-add the auto-mode-alist part to top-level,
1023         since otherwise Planner is not happy when `plan' is called during
1024         init.  Remove stray quote from autoload snippet.
1026 2007-06-11  Michael Olson  <mwolson@gnu.org>
1028         * lisp/muse.el: Make the add-to-list 'auto-mode-alist part an
1029         autoload, rather than having it exist at top-level.  Thanks to Leo
1030         for the suggestion.
1031         (muse-update-file-extension): Docfix.
1033 2007-06-10  Michael Olson  <mwolson@gnu.org>
1035         * lisp/muse-publish.el (muse-publish-strip-URL): Fix bug where
1036         URLs were being removed during publishing.  Thanks to everyone who
1037         reported this.
1039 2007-06-09  Markus Hoenicka <markus.hoenicka@mhoenicka.de>
1041         * lisp/muse-book.el
1042         * lisp/muse-docbook.el
1043         * lisp/muse-latex.el
1044         * lisp/muse-publish.el: added support for <cite> element which
1045         denotes in-text citations
1047         * lisp/muse-html.el
1048         * lisp/muse-groff.el
1049         * lisp/muse-texinfo.el
1050         * lisp/muse-xml.el: added support for <cite> element (stub)
1052 2007-06-06  Michael Olson  <mwolson@gnu.org>
1054         * lisp/muse-regexps.el (muse-table-line-regexp)
1055         (muse-table-hline-regexp, muse-table-el-border-regexp): Fix
1056         regexps so that they work with XEmacs 21.  Thanks to Adrian
1057         Tritschler for the report.
1059         * texi/muse.texi: Update copyright years.
1060         (HTML): Document muse-xhtml-style-sheet.  Thanks
1061         to thorne for noticing.
1062         (Development): Change archive year to 2006.  Thanks to Adrian
1063         Tritschler for noticing.  So *that's* why some people had the 2005
1064         version ....
1066 2007-06-05  Michael Olson  <mwolson@gnu.org>
1068         * Makefile (install-info): Remove $(MANUAL).info part, since this
1069         is taken care of already by texi/Makefile.  Thanks to Leo for the
1070         report.
1072         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Add
1073         read-only properties to qotd contents, so that they don't get
1074         double-escaped.  Thanks to Leo for the report.
1076 2007-06-04  Michael Olson  <mwolson@gnu.org>
1078         * lisp/muse-colors.el (muse-link-face): If the link is to a remote
1079         -- that is, Tramp or ange-ftp -- file, then do not call
1080         file-exists-p on it.  Thanks to Jim Ottaway for the suggestion.
1081         Fixes bug #5115.
1083         * lisp/muse-html.el (muse-html-insert-contents): Add
1084         documentation.  Handle case where heading is read-only, but has
1085         muse-contents property.  Remove the muse-contents property for any
1086         heading we come across so as to avoid double-including an item in
1087         an outer table of contents.
1088         (muse-html-denote-headings): New function that denotes whether a
1089         heading is not read-only by adding the muse-contents property to
1090         it.
1091         (muse-html-munge-buffer): If we are not to generate contents,
1092         still denote headings, in case some outer layer wants to generate
1093         contents for our headings.  This should fix a bug with table of
1094         contents and the <include> tag.  Thanks to thorne for the report.
1096         * lisp/muse-publish.el (muse-publish-markup-region): Let-bind
1097         muse-publish-generate-contents and set it to nil.  This should
1098         do the right thing when using <include> tags.
1100 2007-06-02  Michael Olson  <mwolson@gnu.org>
1102         * NEWS: Update for non-inlined image change and support for
1103         table.el style tables.
1105         * examples/Makefile (clean): Clean backup files.
1107         * examples/QuickStart.muse (Images): New section that describes
1108         how to inline and not inline images.
1110         * lisp/muse-colors.el (muse-colors-resolve-image-file): Don't
1111         touch images that have "URL:" in front of them.
1113         * lisp/muse-protocols.el (muse-url-protocols): Add handler for
1114         "URL:".  Use the identity function to resolve, since we don't want
1115         to rip "URL:" out while publishing, due to some magic that depends
1116         on that text.
1117         (muse-browse-url-url): New function that browses URLs that have
1118         "URL:" in front of them, by removing the "URL:" part and
1119         reprocessing the remainder.
1121         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
1122         (muse-publish-url): Recognize images in the description before
1123         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
1124         for the suggested workaround.
1125         (muse-publish-desc-transforms): Add `muse-publish-strip-URL' as a
1126         default value.
1127         (muse-publish-classify-url): If target begins with "URL:" return
1128         type url.
1129         (muse-publish-strip-URL): New function that strips "URL:" from the
1130         beginning of a string.  This is used to remove URL: from the link
1131         description.  * texi/muse.texi (Markup Strings): Clarify the
1132         meanings of image-link, link, and link-and-anchor.
1133         (muse-publish-markup-regexps): Move normal table rule to 2350.
1134         Rule 2300 is now a regexp that matches table.el-style tables.
1135         (muse-publish-markup-functions): Add table-el entry.
1136         (muse-publish-table-el-table): New function that given a variant,
1137         publishes a table.el-style table using the table in the matched
1138         region.
1139         (muse-publish-markup-table-el): New function that determines
1140         whether the table.el-style table can be published, and what
1141         variant to use.
1143         * lisp/muse-regexps.el (muse-tag-regexp): New regexp that matches
1144         the borders of table.el-style tables.
1146         * lisp/muse-xml-common.el (muse-xml-markup-table): Make sure that
1147         the table has sufficient whitespace in front of it.
1149         * texi/muse.texi (Images): Update for new non-inlined image
1150         ability and provide example.
1152 2007-05-31  Michael Olson  <mwolson@gnu.org>
1154         * NEWS: Add example for setting `muse-html-table-attributes'.
1156         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
1157         Publish multiple tbody tags if there is a horizontal separator
1158         after the heading, because that is valid HTML after all.
1160 2007-05-30  Michael Olson  <mwolson@gnu.org>
1162         * NEWS: Update.
1164         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
1165         horizontal separators in tables.
1167         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
1168         horizontal separators in tables.
1169         (muse-publish-trim-table): New function to remove initial and
1170         final blank columns from a table.
1171         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
1172         with horizontal separators, aka "hlines".
1174         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
1175         defines the syntax of a horizontal separator in a table.
1177         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
1178         horizontal separators.  Publish header lines correctly.
1180         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
1181         where we have nonnumbers as a row type.  This ignores sorting for
1182         hlines.
1183         (muse-xml-markup-table): Deal with horizontal separators.  If the
1184         markup supports table groups, make hlines separate table groups.
1185         Otherwise, ignore them, since they cannot be marked up.  Together,
1186         these changes allow us to support orgtbl-mode tables.  Thanks to
1187         Carsten Dominik for the suggestion.
1189 2007-05-26  Michael Olson  <mwolson@gnu.org>
1191         * lisp/muse-project.el (muse-project-alist-styles): Allow for
1192         other things to be added to each generated style as well.  For
1193         example, this permits me to add
1194         :base-url "http://blog.mwolson.org/"
1195         for my blog.
1197 2007-05-25  Michael Olson  <mwolson@gnu.org>
1199         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
1200         way of building Debian packages that preserves the original
1201         release tarball and is more modular.
1202         (debrevision, debrelease): Remove.
1203         (dist): No need to remove the debian/ directory, since it is now
1204         in its own branch.
1205         (debprepare): Copy over debian/ directory properly.
1207         * NEWS: Update.
1209         * examples/Makefile (clean): Remove QuickStart.texi, in case
1210         something went wrong during the build.
1211         (%.pdf): Publish the example using the normal pdf style, rather
1212         than info-pdf.
1214         * examples/QuickStart.muse: Add myself to the authors list.
1216         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
1217         sufficient blank lines before the tag.
1219         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
1220         we have sufficient blank lines before the tag.
1222         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
1223         specifies the program to call in order to generate PDF content
1224         from LaTeX content.
1225         (muse-latex-pdf-cruft): New option that specifies the extensions
1226         of files to remove after generating PDF output successfully.
1227         (muse-latex-pdf-generate): Use these new options.  Work around the
1228         annoying edge case where a tilde character exists in the filename
1229         or directory path -- now this can only error out when the relative
1230         path from the output file to the source file contains a tilde,
1231         which is far less likely.
1233         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
1234         muse-publish-ensure-block here after all, because <lisp> et al may
1235         occur inline as part of other things.
1237         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
1238         occur after full-document escaping, rather than before.  This
1239         prevents automatically-inserted Texinfo code from being escaped.
1240         (muse-texinfo-pdf-generate): Rewrite to call
1241         `muse-latex-pdf-generate' with pdftex as the generating binary,
1242         because texi2pdf suffers irredeemably from the tilde edge case
1243         mentioned above.
1245 2007-05-24  Michael Olson  <mwolson@gnu.org>
1247         * NEWS: Drop vague entries and position interesting entries closer
1248         to the top of each section.  Update for new changes.
1250         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
1251         and bzr metadata directories to the list of things to ignore.
1253         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
1254         `muse-publish-ensure-block-tag', since we will use it for more
1255         than just tags.
1256         (muse-publish-markup-list, muse-publish-verse-tag)
1257         (muse-publish-quote-tag, muse-publish-example-tag)
1258         (muse-publish-markup-attribute): Use it.  This fixes a bug that
1259         can occur when these types of markup occur immediately after a
1260         paragraph.  It's good to have defined behavior!
1262         * texi/muse.texi (Markup Strings): Mention new argument for
1263         link-and-anchor.
1265 2007-05-19  Michael Olson  <mwolson@gnu.org>
1267         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
1268         published footnotes and footnote references.  Thanks to Scott
1269         Jaderholm for the idea.
1271         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
1272         link-and-anchor, on the recommendation of the original submitter.
1274 2007-05-14  Michael Olson  <mwolson@gnu.org>
1276         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
1277         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
1278         suggestion.
1280         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
1281         file extension as the fourth argument.
1283         * README, texi/muse.texi (Getting Help and Reporting Bugs):
1284         Mention the new muse-el-logs mailing list.
1286 2007-05-13  Michael Olson  <mwolson@gnu.org>
1288         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
1289         "\`" here.  This fixes a problem with publishing custom URLs.
1291 2007-05-12  Michael Olson  <mwolson@gnu.org>
1293         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
1294         update the list if the current buffer is associated with a file.
1295         This fixes a bug with M-x muse-publish-region in a temporary
1296         buffer.
1298 2007-05-01  Michael Olson  <mwolson@gnu.org>
1300         * lisp/muse-publish.el (muse-publish-region): Remove read-only
1301         properties from the published buffer, so that the results can be
1302         manually tweaked.
1304 2007-04-23  Michael Olson  <mwolson@gnu.org>
1306         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
1307         find the footnote that goes with a reference, leave the reference
1308         as-is.  This fixes an error where control characters could be
1309         placed in a published document.
1311 2007-04-22  Michael Olson  <mwolson@gnu.org>
1313         * IDEAS.muse: Add muse-slides.el to list of things to include
1314         before release.
1316         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
1317         character.
1318         (muse-protocol-find): Find protocols correctly.  Rewrite to use
1319         catch/throw.
1320         (muse-browse-url): Don't concatenate "\`" here.  Together, this
1321         fixes a bug with browsing woman:// links.
1323         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
1324         where entry-dir has a trailing backslash.
1325         (muse-project-publish-file): If a style is malformed, skip it and
1326         display a warning message.  This should help people figure out
1327         where the problem is.
1329 2007-04-21  Michael Olson  <mwolson@gnu.org>
1331         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
1332         yet-to-be-included "contex" publishing style, use "$$" rather
1333         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
1334         this out.
1336 2007-04-20  Michael Olson  <mwolson@gnu.org>
1338         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
1339         variable that causes the :before and :before-end hooks to be
1340         ignored when non-nil.
1341         (muse-publish-markup-region): Use it.  Also, guarantee that point
1342         is at end of region after publishing.
1343         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
1344         variable.
1346 2007-04-19  Michael Olson  <mwolson@gnu.org>
1348         * IDEAS.muse: New file containing a list of ideas we have for new
1349         features, or patches that have yet to be applied.
1351         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
1352         be so confusing.
1354         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
1355         docstring.
1357         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
1358         <literal> tags with muse-publish-literal-tag, rather than
1359         muse-publish-mark-read-only.
1360         (muse-publish-literal-tag): New function that publishes the
1361         <literal> tag.  It adds the ability to add the optional "style"
1362         and "exact" elements, which cause text to only be included if the
1363         current publishing style matches some criteria.  The text will be
1364         removed otherwise.  Thanks to Jim Ottaway for the implementation.
1365         (muse-publish-mark-up-tag): Let the <markup> tag take the
1366         additional optional elements "style" and "exact", with much the
1367         same effect as the <literal> improvements, but after calling
1368         "function" or publishing the region first.  Make it possible to
1369         put <content> tags in <markup> regions in HTML publishing.
1371 2007-04-12  Michael Olson  <mwolson@gnu.org>
1373         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
1374         that a blank line always exists after a heading.  This fixes a bug
1375         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
1376         for the report.
1378         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
1379         detection regexp to that which is used in Docbook and HTML
1380         publishing styles.
1382 2007-04-02  Michael Olson  <mwolson@gnu.org>
1384         * README (muse-el-announce): Make a listing of mailing lists,
1385         rather than pointing to the old EmacsWikiMailingList page.  Thanks
1386         to Andreas Roehler for noticing.
1388 2007-04-01  Michael Olson  <mwolson@gnu.org>
1390         * lisp/muse-publish.el (muse-publish-date-format): Add
1391 `       customization type and group.
1392         (muse-publish-region): New interactive function that publishes a
1393         region to a new buffer.
1395         * texi/muse.texi: Use "document" rather than "manual".
1397 2007-03-31  Michael Olson  <mwolson@gnu.org>
1399         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
1400         expression (muse-style-derived-p "latex" (muse-style "latex"))
1401         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
1402         for the catch.
1404 2007-02-25  Michael Olson  <mwolson@gnu.org>
1406         * lisp/muse-publish.el (muse-publish-date-format): New option that
1407         specifies how to format the date when publishing Muse pages.
1408         Thanks to Thomas Gehrlein for the suggestion.
1409         (muse-publish-markup-buffer): Use it.
1411 2007-02-23  Michael Olson  <mwolson@gnu.org>
1413         * README: Add Prerequisites section to mention which versions of
1414         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
1415         the suggestion.  Update link destination for Muse's page on
1416         emacswiki.org.
1418 2007-02-15  Michael Olson  <mwolson@gnu.org>
1420         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
1421         be not just at beginning of line.  This fixes an error with the
1422         <class> tag.  Thanks to Jim Pivarski for the report.
1424 2007-02-14  Michael Olson  <mwolson@gnu.org>
1426         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
1427         whether something is an image before checking to see if it is a
1428         URL.  Thanks to ITSUMI ken-ichi for the report.
1430 2007-02-13  Michael Olson  <mwolson@gnu.org>
1432         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
1433         comments that have no text better.  Thanks to fang.lungang for the
1434         report.
1435         (muse-publish-markup-comment): Deal with case where no comment
1436         text is provided.
1438 2007-01-23  Michael Olson  <mwolson@gnu.org>
1440         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
1441         that ensures that at least one blank line exists at the given
1442         position.  This is used to avoid paragraph detection problems when
1443         block-level tags like <example> immediately follow a paragraph.
1444         Thanks to Hans Ekbrand for the report.
1445         (muse-publish-example-tag): Use it.
1447 2007-01-19  Michael Olson  <mwolson@gnu.org>
1449         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
1450         previous blank line if we are publishing in Latex.  Otherwise,
1451         that wouldn't be the right thing, so leave it be.
1453 2007-01-17  Michael Olson  <mwolson@gnu.org>
1455         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
1456         multiple centered math lines on the same line; keep them on
1457         different lines.  Use \[ math-text \] instead of $$math-text$$,
1458         since the latter seems to be deprecated.  Thanks to Jody Klymak
1459         for the pointer.
1461 2007-01-15  Michael Olson  <mwolson@gnu.org>
1463         * lisp/muse-latex2png.el (muse-publish-latex-tag)
1464         (muse-publish-math-tag): Publish region read-only when current
1465         style is Latex-derived, so that Muse does not escape it.
1466         (muse-publish-math-tag): If 6 or more spaces come before the tag,
1467         surround the region with "$$" rather than "$".  This is the Muse
1468         syntax for something centered, so it should be a good fit.
1470 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
1472         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
1473         protocol.
1474         (muse-browse-url-man): Change man page URL format.  The code is
1475         simpler when the section is left inside parentheses.
1476         (muse-browse-url-woman): New function.
1478 2007-01-14  Michael Olson  <mwolson@gnu.org>
1480         * AUTHORS: Bookkeeping.
1482         * lisp/muse-latex2png.el: Associate <math> tag with
1483         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
1484         Klymak for the report.
1485         (muse-publish-math-tag): Use muse-insert-markup for the "$"
1486         characters, so they don't get escaped.
1488         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
1489         make muse-style-derived-p easier to implement.
1490         (muse-style-derived-p): If the style is not provided, fetch it and
1491         check to see if the car is a string.  This should fix the other
1492         problem that was reported.
1494         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
1495         explains a case where setting muse-file-extension to nil can cause
1496         unexpected behavior.
1498 2007-01-09  Michael Olson  <mwolson@gnu.org>
1500         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
1501         comments higher priority than tags.  Thanks to Stefan van der Walt
1502         for the report.
1504 2007-01-08  Michael Olson  <mwolson@gnu.org>
1506         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
1507         argument rather than calling match-string.  Thanks to Stefan van
1508         der Walt for the report.  This should fix a bug with publishing
1509         <include file="..." markup="example">.
1511 2007-01-06  Michael Olson  <mwolson@gnu.org>
1513         * Makefile (debclean): New rule split from debrevision and
1514         debrelease.
1515         (debbuild): Take distributor into account.
1517         * Makefile.defs (DISTRIBUTOR): New field that tracks what
1518         vendor/distributor we are building for.
1520 2007-01-04  Michael Olson  <mwolson@gnu.org>
1522         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
1523         line.
1525         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
1526         point to muse-publish-src-tag by default, since <src> and
1527         <example> have different parameters.
1528         (muse-publish-src-tag): New barebones publishing function for
1529         <src>, which is superseded when publishing in an HTML-based style.
1531 2007-01-03  Michael Olson  <mwolson@gnu.org>
1533         * lisp/muse-html.el (muse-html-src-tag): Document.
1535         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
1536         command that calls a given tag on the current buffer.  Attributes
1537         may be passed.
1538         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
1539         it.
1540         (muse-publish-srcify-buffer): New function that allows
1541         markup="src" in the <include> tag.
1542         (muse-publish-get-and-delete-attr): New macro that gets an
1543         attribute from a list and removes the first instance of that
1544         attribute from said list.
1545         (muse-publish-markup-attribute): Handle markup="src".
1546         (muse-publish-command-tag, muse-publish-include-tag): Use
1547         muse-publish-get-and-delete-attr.  This allows the remaining
1548         attributes to be passed.
1550         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
1551         as changes to <command> and <include>.
1553 2006-12-30  Michael Olson  <mwolson@gnu.org>
1555         * NEWS: Update.
1557         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
1558         from muse-publish-math-tag to avoid conflict with
1559         muse-latex2png.el.
1561 2006-12-23  Michael Olson  <mwolson@gnu.org>
1563         * lisp/muse-latex2png.el: Update header, since this has been
1564         rewritten sufficiently to not need an assignment from the original
1565         author.
1566         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
1567         (muse-latex2png): Use two underscores to separate prefix and hash.
1568         (muse-latex2png-region): New function split from
1569         muse-publish-latex-tag that can be used easily by other code.
1570         Detect whether we are using an HTML-based publishing style, and
1571         insert a simpler markup if we are not.  If we are using a
1572         Latex-based publishing style, do not generate an image, and leave
1573         the region alone.  Return the path of the generated image, in case
1574         other functions want to use this programmatically.
1575         (muse-publish-latex-tag): Set a default prefix based on the name
1576         of the current file.
1577         (muse-publish-math-tag): New tag that surrounds the region with
1578         "$" characters, so that it becomes a Latex math region, and then
1579         publishes it.
1581         * lisp/muse-publish.el (muse-style-derived-p): New function that
1582         returns non-nil if a given style, or the current style if omitted,
1583         is equal to or derived from the given base style.  This is useful
1584         in <lisp> tags, because it allows the user to specify markup that
1585         is only to be inserted for one particular style.
1587 2006-12-22  Michael Olson  <mwolson@gnu.org>
1589         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
1590         (muse-html-src-tag): New function which publishes the <src> tag.
1591         Thanks to Clinton Ebadi and Charles Wang for the initial
1592         implementations.
1594         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
1596 2006-12-21  Michael Olson  <mwolson@gnu.org>
1598         * examples/johnw/muse-johnw.el: Update for preferred
1599         muse-derive-style usage.  Rename to muse-init.el.
1601         * examples/mwolson/muse-init.el: Update.
1603         * lisp/muse-book.el (muse-book-publish): New function split from
1604         muse-book-publish-project.  This is used in the definitions for
1605         the book-latex and book-pdf styles.
1606         (muse-book-publish-p): New function split from muse-book-publish.
1607         (muse-book-get-directives): New function that retrieves the
1608         publishing directives from the given file.
1609         (muse-book-publish): Use muse-book-get-directives to set the title
1610         if no title was specified.
1612         * lisp/muse-project.el (muse-project): Add :publish-project entry
1613         to widget.
1614         (muse-read-project, muse-project-find-file): Message fix.
1615         (muse-project-publish-file-default): New function split from
1616         muse-project-publish-file.
1617         (muse-project-publish-file): Allow file-level publishing function
1618         to be specified by the :publish element.  The default is
1619         muse-project-publish-file-default.
1620         (muse-project-publish-default): New function split from
1621         muse-project-publish.
1622         (muse-project-publish): Allow project-level publishing function to
1623         be specified by :publish-project element.  The default is
1624         muse-project-publish-default.
1626         * lisp/muse-publish.el (muse-publish-file): Message fix.
1628         * texi/muse.texi (Book): Mention new way to publish books and
1629         provide an example, since the process may be non-obvious.
1631 2006-12-20  Michael Olson  <mwolson@gnu.org>
1633         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
1634         content-modifying code from the rest of
1635         muse-docbook-finalize-buffer.
1637         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
1638         muse-groff-finalize-buffer, since it adds content to the buffer.
1640         * lisp/muse-html.el (muse-html-munge-buffer): Split out
1641         content-modifying code from the rest of muse-html-finalize-buffer.
1642         This fixes a bug when using <include> with <content> tags.
1644         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
1645         (muse-journal-latex-munge-buffer)
1646         (muse-journal-rss-munge-buffer): Rename, since they add content to
1647         the buffer.
1649         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
1650         muse-latex-finalize-buffer, since it adds content to the buffer.
1652         * lisp/muse-mode.el:
1653         * lisp/muse-project.el:
1654         * lisp/muse-publish.el:
1655         * lisp/muse.el: Fix recursive load error.
1657         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
1658         muse-texinfo-finalize-buffer, since it adds content to the buffer.
1660         * lisp/muse-wiki.el: Comment cleanup.
1662         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
1664 2006-12-17  Michael Olson  <mwolson@gnu.org>
1666         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
1667         Remove the definition of \comment, since Latex already has comment
1668         syntax.
1669         (muse-latex-markup-strings): Use the Latex comment syntax, rather
1670         than our own.  Thanks to Ryan Stutsman for pointing this out.
1672 2006-12-02  Michael Olson  <mwolson@gnu.org>
1674         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
1675         that this can generate a proper table of contents for Planner HTML
1676         publishing.
1678 2006-12-01  Michael Olson  <mwolson@gnu.org>
1680         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
1681         using a very old Emacs, avoid an infinite loop that could occur
1682         when the regexp is an empty string.
1684 2006-11-26  Michael Olson  <mwolson@gnu.org>
1686         * NEWS: Bring up to date.
1688         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
1689         list issues and multiple-stanza verse issues.  This takes care of
1690         all of the markup issues I was worried about.
1692         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
1693         (muse-project-publish-private-files): New option that indicates
1694         whether files with private filesystem permissions should be
1695         published.  The default is to publish them, since it avoids
1696         confusion in new users.
1697         (muse-project-private-p): Use it.
1699 2006-11-19  Michael Olson  <mwolson@gnu.org>
1701         * lisp/muse-project.el (muse-project-resolve-link): If no remote
1702         style is found, which means that the link is not a Muse page, do
1703         not add a suffix or prefix to it.  This should fix the
1704         "[[thing.owl]]" bug that Phillip Lord reported.
1706         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
1707         removing unused 2nd argument.
1709 2006-11-17  Michael Olson  <mwolson@gnu.org>
1711         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
1712         latex publishing where nested enumerated lists would be squashed
1713         together at the end.
1715 2006-11-16  Michael Olson  <mwolson@gnu.org>
1717         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
1718         list embedded in a definition list look right.  This also allows
1719         for definitions to be separated from their terms, much like the
1720         way HTML does it by default, if the user puts a blank line or a
1721         line break between the term and the definition.  If the term and
1722         definition are on the same line, they will be that way in the
1723         output as well.
1725 2006-11-11  Michael Olson  <mwolson@gnu.org>
1727         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
1728         for the report.
1729         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
1731 2006-11-07  Michael Olson  <mwolson@gnu.org>
1733         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
1734         release candidate for Muse 3.03, available.
1736         * NEWS: Update.
1738 2006-11-06  Michael Olson  <mwolson@gnu.org>
1740         * lisp/muse-project.el (muse-project-find-file): Fix bug when
1741         following a relative link worked even when the path was incorrect.
1743 2006-11-04  John Sullivan  <john@wjsullivan.net>
1745         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
1746         muse-follow-name-at-point to reduce collisions with other
1747         modes (Planner).
1749         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
1751 2006-11-04  Michael Olson  <mwolson@gnu.org>
1753         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
1754         optional, and make interwiki delimiter a regular rather than shy
1755         group.
1756         (muse-wiki-handle-implicit-interwiki): Rename from
1757         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
1758         (muse-wiki-handle-explicit-interwiki): New function that is
1759         smarter about where an explicit link ends in a buffer.  This
1760         allows you to refer to page names with invalid Wiki characters,
1761         such as underscores and dashes, merely by enclosing them in double
1762         brackets.  Also, a bug with recognizing project names too loosely
1763         has been fixed.
1765 2006-11-03  Michael Olson  <mwolson@gnu.org>
1767         * lisp/muse-project.el (muse-project-page-file): Make relative
1768         links work as expected, hopefully.
1770         * lisp/muse-publish.el (muse-publish-this-file): Set the current
1771         output style manually, since it will differ from anything in the
1772         publishing style list.
1774 2006-10-30  Michael Olson  <mwolson@gnu.org>
1776         * lisp/muse-colors.el (muse-colors-markup): Remove note about
1777         grouping elements, since that no longer applies.
1778         (muse-colors-custom-tags): Explicitly match against
1779         muse-tag-regexp to get the match-data set the way we want.  This
1780         really fixes the <example> highlighting bug that Stefan reported.
1781         (muse-configure-highlighting): Set the original value to the
1782         symbol, not the modified value.  Re-use modified rules properly.
1784         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
1785         introduced yesterday.
1787 2006-10-29  Michael Olson  <mwolson@gnu.org>
1789         * examples/mwolson: Update my example configuration.
1791         * NEWS: Update.
1793         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
1794         without a regexp in the first position before iterating through
1795         them to build muse-colors-vector.  This fixes a bug with the
1796         display of <example> tags.  Thanks to Stefan Reichör for the
1797         report.
1799         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
1800         files in projects to be linked to.
1802         * lisp/muse-publish.el (muse-publish-url): Allow the original link
1803         to serve as a description for a URL, as long as it differs from
1804         the destination URL.  This fixes the description of WikPage links
1805         in PDF output.
1806         (muse-publish-link-file): Check to see whether the given link
1807         points at a valid file.  If so, return it.  Otherwise, apply other
1808         transforms like prefix and link suffix.
1810         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
1811         "/", it is a file or directory, not a Muse page.  Thanks to
1812         Phillip Lord for the suggestion.
1814         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
1815         of the current page as the local path, instead of duplicating the
1816         remote file's path.  This probably fixes at least one reported
1817         bug. since it's quite major.
1818         (muse-wiki-update-project-file-regexp)
1819         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
1820         passed to regexp-opt, since that can cause Emacs 21 to throw an
1821         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
1822         DOT edu for the report.
1823         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
1825 2006-10-28  Michael Olson  <mwolson@gnu.org>
1827         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
1828         (muse-project-resolve-link): If the given style does not have a
1829         link-suffix, default to suffix.  This fixes a bug I was noticing
1830         when linking to a file that was published in both PDF and HTML
1831         form.
1833         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
1834         function that is used as a callback to determine the initial
1835         amount of indentation that the current dl item has.
1836         (muse-publish-surround-dl): Use it.  Pass the initial indent value
1837         and the post-indent value, instead of trying to determine them
1838         both.
1839         (muse-publish-strip-list-indentation): New function stripped from
1840         `muse-publish-surround-text' for readability.
1841         (muse-publish-surround-text): Instead of taking a determine-indent
1842         value, take a determine-indent-func function, which is called just
1843         after finding the next list item.  If we are asked to determine
1844         the amount of indentation, concatenate indent and post-indent the
1845         first time around.  This effectively fixes all known definition
1846         list issues.
1848 2006-10-16  Michael Olson  <mwolson@gnu.org>
1850         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
1851         other software -- namely, Planner -- can detect whether they are
1852         using a version of Muse that supports nested tags.
1853         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
1854         muse-publish-goto-tag-end.
1856         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
1857         Adapt for nested tags.
1859         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
1860         <class> tag is nestable.  Thanks to Phillip Lord for noticing
1861         this.
1863         * lisp/muse-publish.el (muse-publish-markup-tag)
1864         (muse-publish-quote-tag): Use muse-goto-tag-end.
1866         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
1868 2006-10-15  Michael Olson  <mwolson@gnu.org>
1870         * AUTHORS: Bookkeeping.
1872         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
1873         tag.
1875         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
1876         tags.
1878         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
1880         * lisp/muse-import-docbook.el (muse-import-docbook)
1881         (muse-import-docbook-files): Docfix.
1882         (muse-import-docbook-get-title): Remove cl.el-ism.
1884         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
1886         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
1888         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
1890         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
1891         (muse-next-reference, muse-previous-reference): Minor whitespace
1892         changes.
1893         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
1894         the suggestion.
1896         * lisp/muse-poem.el (muse-poem-tag): Ditto.
1898         * lisp/muse-publish.el (muse-publish-markup-tags)
1899         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
1900         element and make 4th element determine whether tags are nestable.
1901         (muse-publish-goto-tag-end): New function that moves to the end of
1902         a tag.  Handle nested tags when NESTED is non-nil.
1903         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
1904         5th element for function.
1905         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
1906         this on several scenarios, and it seems to work.
1907         (muse-publish-surround-text): Accept new optional argument
1908         LIST-ITEM which determines the regexp to use for list items.  The
1909         default is to use muse-list-item-regexp.
1911         * muse.texi (Markup Tags): Mention nestable tags.
1913         * NEWS: Mention new files.
1915 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
1917         * lisp/muse-import-docbook.el: New file that converts Docbook XML
1918         into Muse format.
1920         * lisp/muse-import-xml.el: New file that provides helper routines
1921         for converting XML-ish files to Muse format.
1923 2006-10-10  Michael Olson  <mwolson@gnu.org>
1925         * NEWS: Update for 3.02.7 bugfix release.
1927 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
1929         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
1930         using the value in the muse #date directive.
1931         (muse-blosxom-use-metadate): New option that determines whether or
1932         not to use the #postdate directive.
1933         (muse-blosxom-format-date): Convert a date string to PyBlosxom
1934         metadate plugin format.
1936 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
1938         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
1939         recognised URLs.
1941         * muse.texi: Clarify handling of implicit links by mentioning
1942         which characters can prevent Muse from recognizing something as an
1943         implicit link.
1945 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
1947         * lisp/muse-mode.el (muse-next-reference)
1948         (muse-previous-reference): Fix bug #6367 by moving point to the
1949         beginning of the link.
1951 2006-09-26  Michael Olson  <mwolson@gnu.org>
1953         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
1954         beginning-of-line.  This should fix a bug that was noticed in
1955         recent Emacs 22 builds.
1957         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
1958         eval-and-compile block to avoid a compiler warning.
1960 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
1962         * lisp/muse-backlink.el (muse-backlink-split-string):
1963         Compatibility with Emacs versions < 22
1964         (muse-backlink-pending): New internal variable
1965         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
1966         that backlinks are inserted at the right time.
1967         (muse-backlink-insert-hook-func): Remove unwind-protection; check
1968         for pending backlink, and that this is the targe page.
1969         (muse-backlink-handle-link): Don’t handle the link if we are
1970         already handling one. Return the link as well as the parent links.
1972 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
1974         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
1975         #6942 - muse-blosxom-new-entry fails when using tags.
1977 2006-09-14  Michael Olson  <mwolson@gnu.org>
1979         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
1980         compiler warning.
1982 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
1984         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
1985         function: Protect all wikiwords from START to END from further
1986         processing.
1987         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
1989 2006-09-13  Michael Olson  <mwolson@gnu.org>
1991         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
1992         adopted from Jim Ottaway's patch.  It removes links from the
1993         heading, and then marks the region read-only to inhibit WikiWord
1994         detection.
1996 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
1998         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
1999         special handling for headings.
2000         (muse-texinfo-remove-links): New function that removes explicit
2001         links from the given strings, replacing them with a description.
2003 2006-09-11  Michael Olson  <mwolson@gnu.org>
2005         * muse.texi (Getting Help and Reporting Bugs): Mention the
2006         muse-el-internationalization mailing list.
2008         * lisp/muse.el (muse-path-sans-extension): New function that acts
2009         like file-name-sans-extension, but guarantees to never modify the
2010         directory part of the path.  Thanks to Evan Monroig for
2011         investigating this.
2013         * lisp/muse-book.el (muse-book-publish-project): Use
2014         muse-path-sans-extension instead of file-name-sans-extension.
2016         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
2017         Ditto.
2019 2006-08-30  Michael Olson  <mwolson@gnu.org>
2021         * muse.texi (Blosxom Requirements): Fix typo.
2023         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
2024         directories for bzr and darcs.
2026         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
2027         contrib/pyblosxom/getstamps.py: Update version and headers.
2029 2006-08-27  Michael Olson  <mwolson@gnu.org>
2031         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
2032         nil values before they get to mapconcat.  This fixes a lockup when
2033         muse-wiki-match-all-project-files is nil.
2035         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
2036         (muse-wiki-ignore-implicit-links-to-current-page)
2037         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
2038         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
2039         (muse-wiki-publish-small-title-words)
2040         (muse-wiki-publish-pretty-title): Docfix.
2041         (muse-wiki-update-local-wikiword-regexp): Rename from
2042         muse-wiki-update-local-wikiword-regexp.  Set
2043         muse-wiki-project-file-regexp instead of
2044         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
2045         take muse-wiki-use-wikiword into account, since this is a
2046         different concept now.
2047         (muse-wiki-update-wikiword-regexp): Remove.
2048         (muse-wiki-wikiword-regexp): In-line the :set function.
2049         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
2051 2006-08-26  Michael Olson  <mwolson@gnu.org>
2053         * lisp/muse-publish.el (muse-publish-surround-text): When looking
2054         for indented list items, ignore blank lines.
2056         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
2057         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
2058         mapconcat.  This should hopefully fix a problem with large amounts
2059         of files with spaces in their name.  Thanks to Greg Detre for the
2060         report.
2062 2006-08-24  Michael Olson  <mwolson@gnu.org>
2064         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
2065         numbers from the argument to format-time-string.  This fixes an
2066         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
2068 2006-08-18  Michael Olson  <mwolson@gnu.org>
2070         * lisp/muse-project.el (muse-project-file-entries): Since we are
2071         given a full path, match against the filename as well.  This fixes
2072         an issue where backup files were being added to the file alist.
2074         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
2075         from muse-html.el.
2077 2006-08-12  Michael Olson  <mwolson@gnu.org>
2079         * Makefile (.PHONY): Don't use line continuations.
2080         (realclean fullclean): Call realclean in subdirs, not distclean.
2081         (distclean): Don't call realclean, since this would wipe out our
2082         autoloads file.
2083         (dist): Use correct path to autoloads file.
2085         * NEWS: Catch up with the latest changes.
2087         * experimental/Makefile (.PHONY): Wrap long line.
2089         * lisp/Makefile (distclean): Do the same thing as "clean", not
2090         "realclean".
2092         * lisp/muse-project.el (muse-project-get-applicable-style):
2093         Indentation tweak.
2094         (muse-project-ignore-regexp, muse-project-recurse-directory):
2095         Docfix.
2096         (muse-project-of-file): Try the ignored files regexp against the
2097         base filename as well as the entire path.
2099         * lisp/muse-publish.el (muse-publish-this-file): Display message
2100         if the buffer is not associated with any file, so that we avoid
2101         errors later on.
2102         (muse-publish-url-desc): New function taken from muse-publish-url
2103         that causes a URL description to be transformed.
2104         (muse-publish-url): Call muse-publish-url-desc on either the
2105         description or the original URL if it will be used as a
2106         description.  Accept the original URL as an argument, in case it
2107         was transformed earlier.
2108         (muse-publish-insert-url): Pass original URL as an argument.
2109         (muse-publish-markup-link): Make this somewhat easier to follow.
2110         Pass original URL as argument.
2111         (muse-publish-get-style): If the same style is used to publish to
2112         two different directories, prompt the user for which directory to
2113         use.
2114         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
2115         latest changes.
2116         (muse-publish-markup-url): Pass original URL as an argument.  This
2117         fixes the "nil" description for bare URLs that was in 3.02.91.
2118         Nothing like finding a bug just after completing the announcement
2119         of a release.
2121         * lisp/muse.el: Use defalias whenever convenient.
2122         (muse-version): Set version to 3.02.92 (3.03 RC2).
2124 2006-08-10  Michael Olson  <mwolson@gnu.org>
2126         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
2127         style does not derive from any other class, return `t' here.
2128         This, along with the corresponding change to muse-publish.el,
2129         fixes a problem with the table of contents getting inserted
2130         multiple times for custom html-based styles.
2131         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
2132         smarter method for table centering that works with XHTML.
2134         * lisp/muse-latex2png.el Rename all functions to have a
2135         "muse-latex2png" prefix.  Turn all variables into customizable
2136         options in the muse-latex2png group.
2137         (muse-latex2png-img-dest): New option specifying where to place
2138         the images.
2139         (muse-latex2png-template): New option containing the template to
2140         use for the surrounding LaTeX code.
2141         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
2142         compliance.
2143         (muse-latex2png-move2pubdir): Avoid multiple redundant error
2144         messages when something else goes wrong.  Create the image
2145         subdirectory if it doesn't exist already -- thanks to Christian
2146         Straßer for the report.  Expand the filename properly.
2147         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
2148         and filename expansion.
2149         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
2150         the default directory properly.
2152         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
2153         do not run the same function twice.
2155 2006-08-08  Michael Olson  <mwolson@gnu.org>
2157         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
2158         introduced wrong-type-argument error.
2160         * lisp/muse-html.el (muse-html-markup-strings)
2161         (muse-xhtml-markup-string): Cause table definition that contains
2162         image to be center-aligned.  This should fix an issue with images
2163         not being centered when captions are very long.
2165         * lisp/muse-publish.el (muse-publish-table-fields): Trim
2166         whitespace from fields once we have split them up.
2168         * lisp/muse.el (muse-trim-whitespace): New function that strips
2169         leading and trailing whitespace from a string.
2171 2006-08-07  Michael Olson  <mwolson@gnu.org>
2173         * NEWS: Update through patch-95.
2175         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
2176         to match the tags.
2177         (muse-colors-explicit-link): Show images in link descriptions if
2178         inlined images are enabled.
2180         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
2181         definitions for 'image-with-desc, 'image, and 'image-link.
2182         (muse-docbook-markup-paragraph): If an inlined image begins a
2183         paragraph, insert <para> before it.
2184         (muse-docbook-fixup-images): New function that upper-cases the
2185         "format" attribute of the <imagedata> tag.
2186         (muse-docbook-finalize-buffer): Call it.
2188         * lisp/muse-html.el (muse-html-markup-strings): Publish images
2189         with descriptions as centered tables, with a centered caption
2190         underneath.  The resulting look is consistent with the way that
2191         they are published in the LaTeX style.  Thanks to Jody Klymak for
2192         the suggestion.
2193         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
2194         valid way to center a table.
2195         (muse-html-markup-paragraph): Use class="image" instead of
2196         "image-link" for paragraphs that start with an embedded image.
2198         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
2199         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
2200         suggestion.
2201         (muse-latex-markup-specials-image): New option that enables
2202         escaping of specials in images.  This was split from the URL
2203         specials.
2204         (muse-latex-decide-specials): Handle 'image context.
2205         (muse-latex-fixup-dquotes): Go to beginning of document, instead
2206         of relying on caller to do this for us.
2208         * lisp/muse-publish.el (muse-publish-escape-specials): Document
2209         'image context.
2210         (muse-publish-url): Use 'image context for images.  Use 'image
2211         instead of 'image-link and 'image-link in place of
2212         'url-with-image.  Separate the image file from its extension so
2213         that docbook and texinfo can publish images correctly.
2214         (muse-publish-markup-link): Don't force a description if one is
2215         not given.  This fixes a bug where images without descriptions
2216         were being published as 'image-with-desc instead of 'image.
2218         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
2219         images the same as URLs.
2220         (muse-texinfo-markup-strings): Improve image markup to achieve an
2221         effect similar to that of the LaTeX publishing style.  Simplify
2222         'url string.
2224         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
2226         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
2227         when we have to use the custom version of this function.
2229         * muse.texi (Images): Explain how to toggle inlining of images and
2230         give better examples.  Mention captions and that captioned images
2231         should not be used inside of text paragraphs.
2232         (Markup Strings): Bring up-to-date with the changes made since
2233         3.02.
2235 2006-08-06  Michael Olson  <mwolson@gnu.org>
2237         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
2238         in the Emacs source tree.
2240         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
2241         in the Emacs source tree.
2243         * ChangeLog.3: New file created from the old ChangeLog.
2245         * Makefile.defs (VERSION): Set to 3.02.91.
2247         * NEWS: Update through patch-84.
2249         * lisp/muse.el (muse-version): Set to 3.02.91.
2251         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
2252         attributes.
2253         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
2254         delimiter are instead of hard-coding it.
2256         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
2257         (muse-mode): Make filling definition lists work better.  This
2258         should fix #5359.
2260         * lisp/muse-publish.el (muse-style-run-hooks): Use
2261         `muse-style-element' instead of `muse-get-keyword' here.  This
2262         should fix #6399.
2264         * muse.texi: Set version to 3.02.91 (3.02 RC2).
2266 See ChangeLog.3 for earlier changes.
2268 ;; Local Variables:
2269 ;; coding: utf-8
2270 ;; End: