Fix corrupt dir entry in ELPA package for Muse
[muse-el.git] / ChangeLog
blobe2af41a0a7302ab3ee71e80ced8fc83b842af269
1 2007-09-10  Michael Olson  <mwolson@gnu.org>
3         * Makefile (elpa): Use texi/dir-template rather than echoing lines
4         to the ELPA dir file for Muse.
6         * texi/dir-template: New file containing template to use when
7         making ELPA dir files.  This fixes a corrupt dir file bug for the
8         Muse ELPA package.  Thanks to Tom Tromey for the report.
10 2007-09-06  Michael Olson  <mwolson@gnu.org>
12         * lisp/muse-html.el (muse-html-class-tag): Fix bug where nested
13         class tags were not working.  We move to just after the beginning
14         of the first class tag, so that we can detect any remaining class
15         tags.  Thanks to Florian Beck for the report.  Fix error that
16         occurred when class tag has no name element.  Thanks to Peter
17         Baranyi for the report.  The correct behavior in this case is to
18         not publish the tag at all.
20         * lisp/muse.el (muse-goto-tag-end): Fix bug where nested tags with
21         arguments were not being detected properly.
23 2007-09-05  Michael Olson  <mwolson@gnu.org>
25         * lisp/muse-context.el (muse-context-decide-specials): Add
26         footnote.
28         * lisp/muse-latex.el (muse-latex-decide-specials): Add footnote.
30         * lisp/muse-publish.el (muse-publish-escape-specials): Mention
31         'footnote in docstring.
32         (muse-publish-markup-footnote): Minor docstring fix.  Escape
33         footnote text properly.  Thanks to Jean Magnan de Bornier for
34         noticing.
35         (muse-publish-url): When checking to see if this is just a plain
36         URL without a description, compare the strings as they were before
37         doing escaping.  This fixes a bug where plain URLs could sometimes
38         be published as if they were URLs with descriptions.
40         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Add
41         footnote.
43 2007-08-29  Michael Olson  <mwolson@gnu.org>
45         * lisp/muse.el (muse-update-values): Reset the value of
46         muse-current-project in all Muse buffers.  This updates the rules
47         in case you want to publish a file after changing its associated
48         muse-project-alist entry.
50 2007-08-27  Michael Olson  <mwolson@gnu.org>
52         * lisp/muse.el (muse-update-values): New function that the user
53         can call after changing muse-project-alist, in order to update
54         various autogenerated values.
56         * texi/muse.texi (Keystroke Summary): Document it.
58 2007-08-25  Michael Olson  <mwolson@gnu.org>
60         * examples/QuickStart.muse: Fix typo in first paragraph.  Thanks
61         to Karl Berry for reporting this.
63         * lisp/muse-mode.el (muse-visit-link-default): Fix bug with
64         browsing anchors that come after a link to them.
66         * texi/muse.texi (Poem): Fix typo in spelling of LaTeX.  Thanks to
67         Karl Berry for reporting this.
69 2007-08-24  Michael Olson  <mwolson@gnu.org>
71         * Release Emacs Muse 3.11.
73         * AUTHORS: Add new authors for contrib files.
75         * NEWS: Add entries for Muse 3.11.
77         * README: Mention that contents of contrib/blosxom and
78         contrib/pyblosxom have different licenses than the rest of Muse.
80         * contrib/blosxom/getstamps.pl: New file that implements fetching
81         timestamps from published Muse files and placing them in a single
82         timestamps file.  That file can then be used by blosxom's metadate
83         plugin.  Thanks to Michael Welle for providing this file, as well
84         as instructions on how to use Muse with Blosxom.
86         * contrib/blosxom/metadate_0_0_3: New file implementing the
87         metadate plugin for blosxom.
89         * contrib/pyblosxom/getstamps.py: Add license text.  It seems safe
90         to assume that the original author wanted this to be distributed
91         with Pyblosxom, and hence use the MIT license like the rest of
92         Pyblosxom.
94         * contrib/pyblosxom/hardcodedates.py: Add license text.
96         * contrib/pyblosxom/make-blog: Change license text to be "This
97         file may be used, distributed, and modified without restriction."
99         * contrib/pyblosxom/metadate.py: New file that implements the
100         PyBlosxom metadate plugin.  Since this can no longer be found at
101         the original author's website, I have included it with Muse.
103         * lisp/muse-blosxom.el: Update location of metadate plugin in
104         header.
106         * lisp/muse-wiki.el (muse-wiki-project-file-regexp): Fix typo in
107         docstring.
109         * texi/muse.texi (Blosxom Requirements): Organize information by
110         subheading and subsubheading, and document how to use the metadate
111         plugin.  Briefly document using Blosxom to serve Muse entries.
113 2007-08-23  Michael Olson  <mwolson@gnu.org>
115         * lisp/muse-html.el (muse-html-insert-contents): Escape heading
116         title just before extracting it.
118         * lisp/muse-latex.el (muse-latex-fixup-headings): New function
119         that removes footnotes from headers, since they are invalid in
120         LaTeX.
121         (muse-latex-munge-buffer): Call it.
123         * lisp/muse-publish.el (muse-publish-markup-heading): Don't escape
124         specials here.  This fixes a bug involving links in headings.
126         * lisp/muse.el (muse-update-file-extension): Simplify, and handle
127         some edge cases.
128         (muse-update-file-extension-after-init): Temporarily bind
129         muse-file-extension to "muse", so that muse-update-file-extension
130         knows what the old value was.  This should fix a bug reported by
131         Jean Magnan de Bornier.
133 2007-08-21  Michael Olson  <mwolson@gnu.org>
135         * lisp/muse-texinfo.el (muse-texinfo-markup-strings): Try to make
136         url, link, and link-and-anchor look better in texi2html output.
137         Thanks to thorne for the report.
139 2007-08-20  Michael Olson  <mwolson@gnu.org>
141         * lisp/muse-journal.el (muse-journal-anchorize-title): Revamp to
142         escape characters rather than discard them.  Use muse-regexp-alnum
143         rather than listing out the characters and numbers.  Thanks to
144         Shunsuke OKANO for the report.
145         (muse-journal-rss-munge-buffer): Make sure that <![CDATA[ stuff is
146         used when generating a summary.
148 2007-08-19  Michael Olson  <mwolson@gnu.org>
150         * examples/mwolson: Update my example settings.
152         * lisp/muse-colors.el (muse-colors-region): Bind
153         muse-colors-region-end to the end of the last line.  This avoids a
154         bug where lines that had emphasis would suddenly become
155         unhighlighted when moving around the buffer.
157         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix bug
158         involving paragraphs after literallayout markup, which is used in
159         <verse> tags.  Thanks to Shunsuke OKANO for the report.
161         * lisp/muse-html.el (muse-html-src-tag): Use
162         muse-delete-and-extract-region.
164         * lisp/muse-import-xml.el: Add require statement.
165         (muse-import-xml-parse-node): Use muse-replace-regexp-in-string.
167         * lisp/muse-protocols.el (muse-browse-url-man): Add require
168         statement.
169         (muse-browse-url-woman): Add require statement.
171         * lisp/muse-publish.el (muse-publish-surround-text): Fix serious
172         bug in definition list publishing.  We were skipping past the
173         initial indented line, and that was causing an erroneous
174         blockquote to be inserted.  This alone merits a new release.
176         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Fix bug with
177         XEmacs' return value for shell-command.
179         * lisp/muse.el (muse-delete-and-extract-region): New compatibility
180         function to deal with XEmacs' lack of the
181         delete-and-extract-region function.
183 2007-08-18  Michael Olson  <mwolson@gnu.org>
185         * AUTHORS: Update.
187         * lisp/muse-publish.el (muse-publish-include-tag): Switch from
188         copy-tree to copy-alist, since Emacs21 does not have the former,
189         and the latter does what we want.
191         * lisp/muse.el: Force-require 'derived, since Emacs21 does not
192         have derived-mode-p in subr.el like Emacs22 does.
194 2007-08-17  Michael Olson  <mwolson@gnu.org>
196         * etc/muse.rnc: Add the <cite> tag.
198         * lisp/muse-context.el (muse-context-slides-header): Clarify what
199         "mystyle" is.
201         * lisp/muse-xml.el (muse-xml-markup-strings): Mark up citations as
202         <cite type="something">.  We'll leave it to the post processing
203         tools to interpret that.
205         * texi/muse.texi (Directives, Blosxom Entries): Use @code{} for
206         directives.
207         (Citations): New section that explains further how to use the
208         <cite> tag.  The text was taken from Marcus Hoenicka's
209         documentation at http://refdb.sourceforge.net/muse.html and
210         modified.
211         (Tag Summary): Link to the Citations section in the entry for
212         <cite>.
213         (ConTeXt): Update the documentation for
214         muse-context-slides-header.
216 2007-08-17  Jean Magnan de Bornier  <jean@bornier.net>
218         * lisp/muse-context.el (muse-context-slides-header): Use #module
219         directive, if it is provided.
220         (muse-context-slides-header): Mention how to use #module.
222 2007-08-16  Michael Olson  <mwolson@gnu.org>
224         * Release Emacs Muse 3.10.
226         * Makefile (dist, debprepare): Pass HEAD argument to git-archive.
227         (upload): Don't depend on release rule.
229         * NEWS: Document remaining changes.
231 2007-08-15  Michael Olson  <mwolson@gnu.org>
233         * NEWS: Document items through 2007-08-12.
235         * lisp/muse-colors.el: Split the muse-directive-or-comment
236         property into two separate properties that are muse-directive and
237         muse-comment.
238         (muse-colors-region-end): Make buffer-local.
239         (muse-colors-delayed-commands): New variable that contains a list
240         of commands to run immediately after highlighting.  This is meant
241         to allow highlighting functions to delay code until later.
242         (muse-colors-region): Apply commands in
243         muse-colors-delayed-commands.
244         (muse-colors-inhibit-tags-in-directives): New variable that
245         determines whether tags are allowed in directives.
246         (muse-colors-custom-tags): Take
247         muse-colors-inhibit-tags-in-directives into account.
248         (muse-unhighlight-region): Remove muse-directive and muse-comment
249         properties.
250         (muse-colors-title): Modify muse-colors-delayed-commands.
251         (muse-colors-title-lisp): New command that gets called after
252         highlighting other things.  This interprets <lisp> tags, and is
253         passed arguments specifying the beginning and end of the region.
254         Thanks to Junichi Uekawa for the report.  The reason we want to do
255         things this way is because this is the behavior we get already
256         when publishing the page.
258         * lisp/muse.el (muse-goto-tag-end): Change to use muse-comment
259         property rather than muse-directive-or-comment.
261 2007-08-14  Michael Olson  <mwolson@gnu.org>
263         * lisp/muse-colors.el: Document all functions and variables.
264         (muse-colors-emphasized, muse-colors-underlined)
265         (muse-colors-verbatim, muse-colors-custom-tags)
266         (muse-colors-explicit-link, muse-colors-implicit-link): Don't trod
267         on comments or the #title directive.
268         (muse-colors-markup): Add comment rule.
269         (muse-colors-implicit-link): Only remove flyspell overlay after we
270         decide whether this is an implicit link, rather than before.
271         (muse-colors-title): Add the muse-directive-or-comment property.
272         (muse-colors-comment): New function that colorizes comments using
273         font-lock-comment-face.
274         (muse-colors-region-end): New variable indicating the end of the
275         region that is currently being font-locked.  This removes the need
276         for an ugly "defvar end" hack.
277         (muse-colors-emphasized, muse-colors-underlined)
278         (muse-colors-verbatim): Use it.
279         (muse-colors-region): Let-bind it.
281         * lisp/muse-mode.el (muse-list-edit-minor-mode): Grammar fix in
282         docstring.
284         * lisp/muse-publish.el (muse-publish-markup-heading): Escape
285         specials in heading now, rather than waiting on the whole-document
286         pass later on.  This lets <contents> generation work without
287         validation errors.  Thanks to Reid van Melle for the report.
289         * texi/muse.texi (Tag Summary): Document <cite> tag.
290         (Miscellaneous): New chapter containing "Muse List Edit Minor
291         Mode" section.
292         (Muse List Edit Minor Mode): New section that documents
293         muse-list-edit-minor-mode.
294         (Development): Mention the MuseDevlopment page on emacswiki.org.
296         * lisp/muse.el (muse-goto-tag-end): Deal with case where we are
297         font-locking and the end or beginning of a tag is in a comment or
298         directive.
300 2007-08-12  Michael Olson  <mwolson@gnu.org>
302         * lisp/muse-html.el (muse-html-strip-links): New function that
303         strips HTML links from a string.
304         (muse-html-insert-contents): Use it, instead of
305         muse-publish-strip-tags.  This fixes a bug reported by Xin Shi
306         involving the use of <sup> in section titles.
308         * lisp/muse-project.el (muse-project-resolve-directory): New
309         function that figures out the directory part of the path that
310         provides a link to a page.
311         (muse-project-resolve-link): Expand docstring.  Use the new
312         function.  Don't call muse-publish-link-file, because that does
313         the wrong thing when we have muse-file-extension set to nil.
314         Thanks to Sebastian Obermanns for the report.
315         (muse-project-publish-this-file): Let-bind muse-current-project.
316         Also, if the file is not associated with a project, fall back to
317         muse-publish-this-file.
318         (muse-project-set-variables): Add this to
319         muse-before-publish-hook, so that it gets called.  This fixes a
320         bug where project-specific variables were being used in Muse mode,
321         but ignored when publishing.
323         * lisp/muse-publish.el (muse-publish-link-name)
324         (muse-publish-link-file, muse-publish-link-page): Add docstrings
325         so that I can remember what each of these things do.
326         (muse-publish-strip-tags): Remove, since it is no longer used.
327         (muse-publish-cite-tag): Don't let-bind
328         muse-publishing-directives, because there is no need to do so.
329         Fix code indentation.
330         (muse-publish-markup-attribute): Avoid multiple evaluation of
331         attrs argument, in case it is list value instead of a symbol.  Use
332         sexp instead of form in the edebug-form-spec.
333         (muse-publish-include-tag): Make a full copy of
334         muse-publishing-directives, since it can be modified with setcdr.
335         This fixes a bug where #title and some other directives were
336         leaking out of an included region.
337         (muse-publish-mark-up-tag): Don't let-bind
338         muse-publishing-directives, because there is no need to do so.
340         * lisp/muse.el (muse-page-name): Improve docstring.
342         * texi/muse.texi (Development): Mention the http method for
343         anonymous git access to the shared repo.
345 2007-08-10  Michael Olson  <mwolson@gnu.org>
347         * Makefile (dist, debprepare): Use git instead of tla.
349         * contrib/httpd.el (httpd-send-file): Use insert-file-contents.
351         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
352         Use muse-insert-file-contents.
354         * experimental/muse-split.el (muse-publish-file)
355         (muse-publish-presplit-publish, muse-publish-no-split-function)
356         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
357         muse-insert-file-contents.
359         * lisp/muse-book.el (muse-book-publish-chapter)
360         (muse-book-get-directives): Use muse-insert-file-contents.
362         * lisp/muse-http.el (muse-http-render-page): Use
363         muse-insert-file-contents.
365         * lisp/muse-poem.el (muse-poem-markup-tag): Use
366         muse-insert-file-contents.
368         * lisp/muse-publish.el (muse-insert-file-or-string)
369         (muse-publish-file, muse-publish-include-tag)
370         (muse-published-contents): Use muse-insert-file-contents.
372         * lisp/muse.el (muse-insert-file-contents): New function that
373         inserts a file with character code conversion, but none of the
374         other frivolities.  Since insert-file-contents-literally does not
375         do character code conversion, it is not suitable for us.
376         (muse-with-temp-buffer): Mention muse-insert-file-contents rather
377         than insert-file-contents-literally.
379 2007-08-09  Michael Olson  <mwolson@gnu.org>
381         * lisp/muse.el (muse-write-file): Pay attention to
382         coding-system-for-write and save-buffer-coding-system.  This
383         should fix a recently-introduced bug with writing Muse pages in
384         different coding systems.
386 2007-08-08  Michael Olson  <mwolson@gnu.org>
388         * README (Prerequisites): Fix typo.
389         (Compilation, Installation): Update.
390         (Documentation, Further Documentation): Update URLs.
391         (Further Documentation): Add quick blurb on how to participate in
392         Muse development or track changes.
394         * texi/muse.texi (Releases): Use gna.org URL for downloading the
395         latest release, rather than my website.
396         (Development): Change instructions to use git instead of
397         Arch. Mention where to get a Windows binary for git.  Improve the
398         look of the listing.  Add section with instructions for Becoming a
399         Muse developer.
400         (Installation): Update instructions for Makefile.defs.default and
401         XEmacs.  Add index entries.  Add section for ELPA, since Muse
402         ought to be distributed in ELPA after the 3.10 release.  Fix typo
403         and clarify wording.
405 2007-08-06  Michael Olson  <mwolson@gnu.org>
407         * texi/muse.texi: Make sure that attributes are marked up with
408         @option{} rather than @code{} or @samp{} for consistency.
409         (Journal): Add "muse-project-alist-considerations" subheading,
410         along with a mention of :base-url.
412 2007-08-05  Michael Olson  <mwolson@gnu.org>
414         * .gitignore: Add texi/muse.html and the DVC log edit file.
416         * Makefile.defs.default (install_info): Rename from INSTALLINFO.
417         Turn this into something that can be called like a command, due to
418         needing to deal with XEmacs, which has different argument order.
419         Thanks to Terrence Brannon for the report.
421         * lisp/muse-project.el (muse-project-of-file): Simplify by using
422         catch, throw, and dolist.  Look for exact matches before
423         considering any subdirectories.  If no exact matches are found,
424         then pick the longest match.
426         * lisp/muse.el (muse-sort-by-rating): Mention default test in
427         documentation.
429         * scripts/muse-build.el: Avoid interference from VC.el in the
430         build process.
432         * texi/Makefile (install): Call install_info.
434 2007-08-03  Michael Olson  <mwolson@gnu.org>
436         * lisp/muse-project.el (muse-project-applicable-styles): Remove
437         useless argument ignore-regexp.  Use saner logic.  This fixes a
438         bug where a file could potentially not exist but still appear in
439         the used-styles list.  Thanks to John Wiegley for the fix.
440         (muse-project-publish-file): Don't take ignore-reegxp argument.
442 2007-08-02  Michael Olson  <mwolson@gnu.org>
444         * lisp/muse-publish.el (muse-batch-publish-files): Don't activate
445         VC when publishing files in batch.  This avoids some annoying
446         messages when building QuickStart in the examples directory.
448         * lisp/muse-mode.el (muse-mode): Don't try to indent line before
449         inserting a comment.
451 2007-07-31  Michael Olson  <mwolson@gnu.org>
453         * lisp/Makefile: Add dependencies between Emacs Lisp files, so
454         that Muse can be recompiled without running "make clean" after an
455         update.
457         * lisp/muse-publish.el (muse-publish-verse-tag): Unconditionally
458         delete forward one character, since we are guaranteed to be on a
459         blank line.  Don't delete all initial whitespace of the first
460         line.  This fixes an issue where the output from the verse tag did
461         not match the output from Muse's verse syntax.
463 2007-07-29  Michael Olson  <mwolson@gnu.org>
465         * Relicense to GPLv3.
467         * Makefile.defs.default: Rename from Makefile.defs.  This allows
468         people to copy this file to Makefile.defs and make changes,
469         without having the changes be accidentally committed.  If
470         Makefile.defs does not exist, this file is read instead, in order
471         to minimize inconvenience to the casual user.
473         * Makefile, contrib/Makefile, examples/Makefile,
474         experimental/Makefile, lisp/Makefile, texi/Makefile: Use either
475         Makefile.defs.default or Makefile.defs.
477         * lisp/muse-mode.el (muse-list-edit-minor-mode-map): Use new
478         function names.
479         (muse-l-e-m-m-insert-list-item): Add real documentation.
480         (muse-l-e-m-m-increase-list-item-indent)
481         (muse-l-e-m-m-decrease-list-item-indent): Rename for clarity.  Add
482         real documentation.
483         (muse-list-edit-minor-mode): Improve documentation.
485         * texi/doclicense.texi (GNU Free Documentation License): Use
486         pristine copy from Emacs source tree.
488         * texi/muse.texi (Contributors): Move node and appendix indicators
489         here, rather than doclicense.texi.
491 2007-07-29  Jean Magnan de Bornier  <jean@bornier.net>
493         * lisp/muse-latex.el (muse-latex-markup-strings): Change rule
494         command which did not work correctly
496         * lisp/muse-context.el (muse-context-markup-strings): Change rule
497         command which did not work correctly; defined verse commands
498         (muse-context-markup-specials-literal): Eliminate all unuseful entries
500 2007-07-29  Michael Olson  <mwolson@gnu.org>
502         * contrib/httpd.el (httpd-send-file): Use
503         insert-file-contents-literally instead of insert-file-contents.
505         * examples/mwolson/muse-init.el (my-muse-prepare-entry-for-xanga):
506         Use insert-file-contents-literally instead of
507         insert-file-contents.
509         * experimental/muse-split.el (muse-publish-file)
510         (muse-publish-presplit-publish, muse-publish-no-split-function)
511         (muse-journal-split-by-entry, muse-journal-split-by-month): Use
512         insert-file-contents-literally instead of insert-file-contents.
514         * lisp/muse-book.el (muse-book-publish-chapter)
515         (muse-book-get-directives): Use insert-file-contents-literally
516         instead of insert-file-contents.
518         * lisp/muse-http.el (muse-http-render-page): Use
519         insert-file-contents-literally instead of insert-file-contents.
521         * lisp/muse-import-latex.el (muse-import-latex): Set marker to
522         nowhere when done, since they can slow things down.
524         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Set
525         marker to nowhere when done, since they can slow things down.
527         * lisp/muse-poem.el (muse-poem-markup-tag): Set marker to nowhere
528         when done, since they can slow things down.  Use
529         insert-file-contents-literally instead of insert-file-contents.
531         * lisp/muse-publish.el (muse-publish-markup-tag)
532         (muse-publish-markup-word, muse-publish-markup-footnote)
533         (muse-publish-call-tag-on-buffer): Set markers to nowhere when
534         done, since they can slow things down.
535         (muse-insert-file-or-string, muse-publish-file)
536         (muse-publish-include-tag, muse-published-contents): Use
537         insert-file-contents-literally instead of insert-file-contents.
538         (muse-publish-surround-dl): Remove unused variable.  Track whether
539         a term has been found, and handle that case well.
540         (muse-publish-ensure-blank-line): Use a marker, so that we don't
541         lose our place when adding a newline.  This really fixes the
542         definition list item bug.
543         (muse-publish-markup-list): Since people do seem to want
544         definition lists with no terms, allow this.
545         (muse-batch-publish-files): Set muse-current-output-style.
547         * lisp/muse.el (muse-with-temp-buffer): Mention
548         `insert-file-contents-literally'.
550 2007-07-28  Michael Olson  <mwolson@gnu.org>
552         * lisp/muse-mode.el (muse-browse-result): Set
553         muse-current-output-style.
554         (muse-mode): Don't duplicate the paragraph-start regexp
555         unnecessarily.
556         (muse-list-edit-minor-mode-map): New variable containing the
557         keymap for Muse list edit minor mode.
558         (muse-l-e-m-m-list-item-regexp): New variable that matches list
559         items for Muse list edit minor mode.
560         (muse-l-e-m-m-insert-list-item,
561         muse-l-e-m-m-i-list-item-indentation)
562         (muse-l-e-m-m-d-list-item-indentation): Variants of existing list
563         item functions that change the list item regexp before calling the
564         existing function.
565         (muse-l-e-m-m-data): New variable that keeps track of the fill
566         data that we overwrite when activating Muse list edit minor mode,
567         so that we can restore it if the minor mode is toggled off.
568         (muse-list-edit-minor-mode): New minor mode that is useful for
569         editing lists in other major modes.
570         (turn-on-muse-list-edit-minor-mode)
571         (turn-off-muse-list-edit-minor-mode): New interactive functions
572         that turn Muse list edit minor mode on and off, respectively.
573         (muse-on-blank-line, muse-get-paragraph-start): Simplify some
574         regexps.
576         * lisp/muse-project.el (muse-project-publish-this-file): Set
577         muse-current-output-style.  This fixes a bug when publishing to a
578         style that is not first in the list of styles.  Thanks to Jean
579         Magnan de Bornier for the report.
581         * lisp/muse-publish.el (muse-publish-ensure-blank-line): New
582         function that ensures that a blank line exists in the line before
583         point.
584         (muse-publish-markup-list): Use it, rather than
585         `muse-publish-ensure-block'.  This fixes a bug with definition
586         list publishing.  Thanks to meandtheshell for reporting this.
588         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): If the
589         project argument is nil, default to the current project instead of
590         the first project entry in muse-project-alist.  This seems much
591         more sane to me.
593         * lisp/muse.el (muse-forward-list-item): Only check the 'face
594         property if we are in Muse mode or one of its derivatives.  This
595         allows movement on nested lists to work in other modes, and fixes
596         an issue with altering list indentation in
597         muse-list-edit-minor-mode.
599 2007-07-27  Michael Olson  <mwolson@gnu.org>
601         * AUTHORS: Add new authors.
603         * README: Permit Muse to be called "Emacs-Muse".
605         * etc/IDEAS.muse: Remove now-implemented ideas and duplicate idea.
607         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug
608         involving list items that have an extra blank line in front.
610         * texi/muse.texi (Introduction): Mention that Emacs Muse, Muse,
611         and Emacs-Muse are the same thing.
613 2007-07-27  Jean Magnan de Bornier  <jean@bornier.net>
615         * lisp/muse-context.el (muse-context-header): Put
616         starttext after the modules who must be in preamble.
617         (muse-context-markup-strings): Fixed mistake in begin-example and
618         end-example.
620         * lisp/muse-latex2png.el (muse-publish-math-tag): Replaced the
621         math environment in ConTeXt when centered: "$$ $$" has to be
622         "\startformula \stopformula".
624 2007-07-26  Michael Olson  <mwolson@gnu.org>
626         * lisp/muse-xml-common.el (muse-xml-escape-url): Do not escape
627         parentheses in URLs.
629 2007-07-24  Michael Olson  <mwolson@gnu.org>
631         * examples/QuickStart.muse (Images): Fix typo where some text
632         existed in the output but not in the example region.
633         (Source Code): Fix another typo.  Explain that publishing from
634         console or X can make a difference.
636         * lisp/muse-context.el (muse-context-pdf-program): New option that
637         determines the program to use for generating PDF files for
638         ConTeXt.
639         (muse-context-pdf-cruft): New option that specifies the extensions
640         of files to remove after generating PDF output successfully.
641         (muse-context-slides-header): Docfix.
642         (muse-context-pdf-generate): Use new options.
644         * lisp/muse-publish.el (muse-publish-lisp-tag): Add missing
645         save-restriction call.  This was causing a world of hurt when
646         using <lisp> inside of <include>.
648         * texi/muse.texi (ConTeXt): New section that documents how to use
649         the ConTeXt publishing styles.
651 2007-07-23  Michael Olson  <mwolson@gnu.org>
653         * lisp/muse-context.el: New file that provides support for
654         publishing documents to the ConTeXt format.  Thanks to Jean Magnan
655         de Bornier for his work on this.
657         * lisp/muse-docbook.el (muse-docbook-entities)
658         (muse-docbook-bibliography): Remove unneeded save-restriction use.
660         * lisp/muse-latex2png.el (muse-publish-latex-tag):
661         s/contex/context/.
663         * lisp/muse-latex.el (muse-latex-fixup-citations): Add docstring.
664         (muse-latex-bibliography): Remove call to `widen', since it is not
665         needed anymore.  Remove unneeded save-restriction use.
666         ("slides", "slides-pdf"): Indent elements uniformly.
668 2007-07-22  Michael Olson  <mwolson@gnu.org>
670         * lisp/muse-blosxom.el (muse-blosxom-new-entry):
671         * lisp/muse-mode.el (muse-insert-tag):
672         * lisp/muse-project.el (muse-read-project)
673         (muse-read-project-file):
674         * lisp/muse-publish.el (muse-publish-get-style): Use
675         muse-completing-read-function.
677         * lisp/muse-latex2png.el (muse-publish-latex-tag)
678         (muse-publish-math-tag): Allow the context style -- which I plan
679         to include soon -- to work with these tags.
681         * lisp/muse.el (muse-completing-read-function): New option that
682         determines which function to call when doing a completing-read.
684 2007-07-15  Michael Olson  <mwolson@gnu.org>
686         * lisp/muse-journal.el (muse-journal-html-entry-template)
687         (muse-journal-rdf-entry-template)
688         (muse-journal-rss-entry-template): Mention that this can be text
689         or a filename.
690         (muse-journal-rdf-entry-template, muse-journal-rss-header)
691         (muse-journal-rss-footer, muse-journal-rss-entry-template): Add
692         newlines to make the output look nicer.
693         (muse-journal-html-munge-buffer, muse-journal-rss-munge-buffer):
694         Use muse-insert-file-or-string for the entry templates, rather
695         than muse-insert-markup.  This allows <lisp> and <markup> tags to
696         be acted on.  Thanks to Scott Hyde for the report.
697         (muse-journal-html-munge-buffer): Escape quote of the day using
698         entire-document specials before snarfing it.  Mark entire template
699         as read-only -- this fixes an incorrect escaping bug.  Remove
700         read-only properties before replacing template matches so that
701         they can still be escaped with entire-document specials later on.
702         (muse-journal-rss-munge-buffer): Make sure that title is escaped
703         properly.
704         (muse-journal-markup-tags): Rename from
705         muse-journal-latex-markup-tags, because we will use it for
706         journal-rss-entry as well.
707         (muse-journal-qotd-tag): Move higher.  Use begin-quote-item and
708         end-quote-item.
709         (muse-journal-rss-munge-buffer): Use journal-rss-entry rather than
710         html.
711         ("journal-latex", "journal-pdf", "journal-book-latex")
712         ("journal-book-pdf"): Use muse-journal-markup-tags rather than
713         muse-journal-latex-markup-tags.
714         ("journal-rss-entry"): New style that is used by journal-rss and
715         journal-rdf to mark up individual entries.  It is needed so that
716         we can do something meaningful with the qotd tag.
717         (muse-journal-rdf-summarize-entries): Set this to nil by default,
718         because it is annoying.  Update docs to mention this.
719         (muse-journal-rss-summarize-entries): Docfix.
721         * lisp/muse-publish.el (muse-insert-file-or-string): Use
722         muse-publish-markup-header-footer-tags.  I'm not quite sure how
723         this change got reverted.
724         (muse-markup-tag-info): Make into a function.  Move common code
725         here, rather than duplicating it in two places.  Deal with case
726         where muse-publish-use-header-footer-tags is non-nil.
727         (muse-publish-markup-specials, muse-publish-inhibit-style-hooks)
728         (muse-inhibit-style-tags): Move higher to avoid byte-compiler
729         warning.
730         (muse-publish-use-header-footer-tags): New variable that indicates
731         whether we should use just the header and footer tags, rather than
732         the full set.
733         (muse-insert-file-or-string): Bind
734         muse-publish-use-header-footer-tags to t.
735         (muse-publish-markup-tag, muse-publish-call-tag-on-buffer):
736         Simplify call to muse-markup-tag-info.
737         (muse-publish-mark-up-tag): Bind
738         muse-publish-use-header-footer-tags to nil.
740         * texi/muse.texi (Journal): Update for recent changes.
742 2007-07-14  Michael Olson  <mwolson@gnu.org>
744         * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Don't
745         delete the remainder of the buffer, since this causes the
746         resulting RDF to have invalid syntax.  Thanks to Phillip Lord for
747         the report and the suggested fix.
749         * lisp/muse-publish.el (muse-publish-markup-regexps): Add "^" to
750         beginning of table-el regexp.  This fixes a bug where Muse stalls
751         when trying to publish a malformed table.  Thanks to Ye Wenbin for
752         the report and the suggested fix.
754 2007-07-12  Michael Olson  <mwolson@gnu.org>
756         * lisp/muse-wiki.el (muse-wiki-interwiki-regexp): Set to nil by
757         default, rather than the empty string.  This really fixes the bug
758         that occurred when using Muse with muse-project-alist set to nil.
759         Thanks to Jonathan Underwood for the report.
760         (muse-wiki-update-interwiki-regexp): Set
761         muse-wiki-interwiki-regexp to nil if muse-project-alist is not
762         defined.
763         (muse-wiki-handle-implicit-interwiki)
764         (muse-wiki-handle-explicit-interwiki): Handle case where
765         muse-wiki-interwiki-regexp is nil.
767 2007-07-10  Michael Olson  <mwolson@gnu.org>
769         * lisp/muse-mode.el (muse-grep): Abort search if the current
770         project contains no directories.
772         * lisp/muse-project.el (muse-project-file-alist): If
773         muse-project-alist is not defined, or project is nil, return nil
774         right away.  This ought to fix a bug that occurred when using Muse
775         with muse-project-alist set to nil.
776         (muse-project-of-file): Make sure muse-project-alist is not nil.
777         (muse-project-save-buffers): Make sure project is not nil.
779         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Deal with
780         case where muse-project-alist is nil.
782         * lisp/muse.el (muse-replace-regexp-in-string): Explicitly check
783         for XEmacs, since color-theme.el is poorly behaved, and defines
784         its own replace-in-string.  Bad color-theme.el -- no cookie for
785         you.
787 2007-07-01  Michael Olson  <mwolson@gnu.org>
789         * Makefile (.PHONY): Update for new debian package rules.
791         * lisp/muse-book.el (muse-book-latex-footer): Wrap long line.
793         * lisp/muse-docbook.el (muse-docbook-fixup-citations): Re-indent.
794         Use save-restriction properly.
795         (muse-docbook-entities, muse-docbook-bibliography): : Re-indent.
797         * lisp/muse-latex.el (muse-latex-footer): Wrap long line.
798         (muse-latex-fixup-citations): Re-indent.  Use save-restriction
799         properly.
800         (muse-latex-bibliography): Re-indent.
802         * lisp/muse-publish.el (muse-publish-get-and-delete-attr): Move
803         higher.  This fixes an error at startup with some versions of
804         Emacs.
805         (muse-publish-cite-tag): Re-indent.
807         * lisp/muse-wiki.el (muse-wiki-handle-explicit-interwiki): Narrow
808         to the end of the link part, so as to exclude the description from
809         the match.  This fixes a bug with three-part links that have
810         descriptions.  Thanks to everyone who pointed it out.
812 2007-06-18  Michael Olson  <mwolson@gnu.org>
814         * lisp/muse-html.el (muse-html-markup-strings): Add anchor.
815         (muse-xhtml1.1-markup-strings): New option that specifies XHTML
816         1.1 specific markup strings.
817         (muse-html-insert-anchor): Use 'anchor string, rather than
818         hard-coding it.  Thanks to Chris Corsair for the suggestion.
819         ("xhtml1.0"): New style that is an alias for the xhtml style.
820         ("xhtml1.1"): New style that publishes XHTML 1.1 compliant output.
822 2007-06-17  Michael Olson  <mwolson@gnu.org>
824         * examples/QuickStart.muse: Make images local so that the Info
825         version of this document works.  Add <example> for the Literal
826         paragraphs chapter, so that it is clear what is happening.
828         * Makefile: Add elpa target, which is used for building an ELPA
829         package for Muse.
831         * Makefile.defs (ELPADIR, ELPADESC): New variables used for
832         building ELPA packages.
834         * examples/Makefile (%.html, %.pdf, %.info): Add message to
835         indicate what we are publishing.
836         (realclean distclean fullclean): Remove all TeX crud.
838         * examples/emacs-muse.png, examples/muse-made-with.png: Include so
839         that the Info version of QuickStart can publish correctly.
841         * lisp/muse-latex.el (muse-latex-slides-header)
842         (muse-latex-lecture-notes-header): Docfix.
844         * lisp/muse-project.el (muse-project-ignore-regexp): Add .git to
845         the list of things to ignore.
847         * lisp/muse-publish.el (muse-publish-markup-list): Remove unused
848         variable.
850         * lisp/muse-texinfo.el (muse-texinfo-process-natively): Set
851         default to nil, since texinfmt.el is a serious nuisance.
852         (muse-texinfo-markup-strings): Add newlines to begin-example and
853         end-example.
854         (muse-texinfo-decide-specials): Also escape URL-type specials in a
855         whole slew of other contexts.
857         * lisp/muse-xml-common.el (muse-xml-encoding-map): Change group to
858         muse-xml.
860         * lisp/muse-xml.el (muse-xml-footer): Docfix.
862         * lisp/muse.el (muse-version): Release Emacs Muse version 3.03.
864 2007-06-16  Michael Olson  <mwolson@gnu.org>
866         * etc/IDEAS.muse: Add some ideas from David D. Smith.
868         * examples/QuickStart.muse: Overhaul.
870         * lisp/muse-project.el (muse-project): Call the last part of a
871         muse-project-alist entry "Output styles" rather than "styles".
873         * lisp/muse-publish.el (muse-publish-table-fields): Handle case
874         where we have a pipe character at the beginning of line.
876         * lisp/muse-xml-common.el (muse-xml-sort-table): Fix typo that was
877         causing tables to not be sorted at all.
879         * texi/muse.texi: Overhaul.  It would be too time-consuming to
880         list all of the changes here.  The "Getting Started" and
881         "Projects" chapters, in particular, were heavily revised.
883 2007-06-15  Michael Olson  <mwolson@gnu.org>
885         * NEWS: Update.
887         * examples/QuickStart.muse: Mention new features.
889         * lisp/muse-colors.el (muse-colors-toggle-inline-images): Docfix.
890         Remove C-c C-i keybinding, since it conflicts with C-c TAB in the
891         terminal, and C-c TAB is more important.  Most people will not
892         want to toggle images on and off that often.
894         * lisp/muse-mode.el (muse-mode-map): Bind muse-insert-thing to C-c
895         C-i as well, so that it works in the terminal.
897         * lisp/muse-publish.el (muse-publish-literal-tag): Make the output
898         look a bit tidier when removing the region.
900         * lisp/muse-regexps.el (muse-list-item-regexp): Put definition
901         list regexp part before other parts.
902         (muse-ol-item-regexp): New regexp that specifies how to match an
903         ordered list item.
904         (muse-ul-item-regexp): New regexp that specifies how to match an
905         unordered list item.
906         (muse-table-field-regexp): New regexp that specifies how to match
907         a definition list entry.
909         * lisp/muse-texinfo.el (muse-texinfo-info-generate): Work around
910         lack of support for @headitem in texinfmt.el.
912         * lisp/muse.el: Wrap muse-line-beginning-position and
913         muse-line-end-position in `eval-and-compile', since they are now
914         used in muse.el.
915         (muse-list-item-type): Use a simpler algorithm for detecting which
916         kind of list item we have.  This fixes a bug where a number in a
917         definition list term was being detected incorrectly as an ordered
918         list item.  Fixes bug #6250.
919         (muse-forward-list-item): Get the entire line with the list item.
920         For some reason, Emacs 21 was not populating match 2 correctly,
921         unlike Emacs 22, so this workaround was needed.
923         * texi/muse.texi: (Keystroke Summary): Remove C-c
924         C-i (`muse-insert-tag') documentation, and mention C-c C-i as an
925         alternative keybinding to the C-c TAB stuff.  Mention
926         muse-colors-toggle-inline-images.
928 2007-06-14  Michael Olson  <mwolson@gnu.org>
930         * README: Mention that RelaxNG schema is in etc/ directory.
932         * etc/emacs-wiki-migration.txt: New document that explains how to
933         migrate from emacs-wiki to Muse.
935         * etc/muse.rnc: Increment version number to 1.0.  Fix several
936         nested emphasis and nested lists edge cases.  Move here from
937         examples/.
939         * lisp/muse-mode.el (muse-mode-map): Permit C-c C-M-t to do the
940         same thing as C-c C-S-t, since the former works better in the
941         console.  Thanks to Leo for the suggestion.
943         * lisp/muse-publish.el (muse-publish-markup-table)
944         (muse-publish-markup-table-el): Include a newline in the return
945         string, so that paragraph detection does not get confused.
947         * lisp/muse.el (muse-with-temp-buffer): Docfix.
949         * texi/muse.texi (Keystroke Summary): Document the C-c C-M-t
950         keybinding.
952 2007-06-13  Michael Olson  <mwolson@gnu.org>
954         * etc/IDEAS.muse: Mark three-part-links item as done.
956         * experimental/muse-message.el: Remove guard for muse-define-style
957         calls.
959         * lisp/muse-colors.el (muse-configure-highlighting): Fix bug where
960         markup rules were being interpreted in reverse order.  This should
961         make implicit interwiki links work properly again.
962         (muse-link-face): Strip anchor from end of a path, so that this
963         works with anchors in interwiki links.
964         (muse-colors-insert-image): Catch error that occurs in Emacs 21
965         when an image does not exist.
967         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Permit
968         anchors.
969         (muse-wiki-handle-implicit-interwiki): Docfix.  Make anchors in
970         interwiki links work.  Thanks to Jim Ottaway for the initial
971         implementation.
972         (muse-wiki-handle-explicit-interwiki): Make anchors in interwiki
973         links work.
975         * lisp/muse.el (muse-handle-implicit-link): Docfix: only care
976         about match 0.
977         (muse-handle-explicit-link): Docfix: this does not modify the
978         match data.
979         (muse-file-remote-p): In Emacs 21, ange-ftp-name-format is a list
980         that has the regexp in its car.
982 2007-06-12  Michael Olson  <mwolson@gnu.org>
984         * README: Document new etc/ directory.
986         * etc/IDEAS.muse: Install things from new contributors just after
987         the 3.03 release, since I won't have time to review the code
988         before the release.  Move to new etc/ directory.  Slides
989         publishing has been installed.
991         * lisp/muse-latex.el (muse-latex-slides-header): New option that
992         determines the header to use for publishing slides.
993         (muse-latex-lecture-notes-header): New option that determines the
994         header to use for publishing lecture notes.
995         (muse-latex-slides-markup-tags): New option containing tags to use
996         when publishing slides.
997         (muse-latex-permit-contents-tag): Move higher in file.
998         (muse-latex-slide-tag): New function to publish the <slide> tag.
999         ("slides", "slides-pdf"): New publishing styles that create slides
1000         using Beamer.
1001         ("lecture-notes", "lecture-notes-pdf"): New publishing styles that
1002         create lecture notes using Beamer.
1004         * lisp/muse.el: Re-add the auto-mode-alist part to top-level,
1005         since otherwise Planner is not happy when `plan' is called during
1006         init.  Remove stray quote from autoload snippet.
1008 2007-06-11  Michael Olson  <mwolson@gnu.org>
1010         * lisp/muse.el: Make the add-to-list 'auto-mode-alist part an
1011         autoload, rather than having it exist at top-level.  Thanks to Leo
1012         for the suggestion.
1013         (muse-update-file-extension): Docfix.
1015 2007-06-10  Michael Olson  <mwolson@gnu.org>
1017         * lisp/muse-publish.el (muse-publish-strip-URL): Fix bug where
1018         URLs were being removed during publishing.  Thanks to everyone who
1019         reported this.
1021 2007-06-09  Markus Hoenicka <markus.hoenicka@mhoenicka.de>
1023         * lisp/muse-book.el
1024         * lisp/muse-docbook.el
1025         * lisp/muse-latex.el
1026         * lisp/muse-publish.el: added support for <cite> element which
1027         denotes in-text citations
1029         * lisp/muse-html.el
1030         * lisp/muse-groff.el
1031         * lisp/muse-texinfo.el
1032         * lisp/muse-xml.el: added support for <cite> element (stub)
1034 2007-06-06  Michael Olson  <mwolson@gnu.org>
1036         * lisp/muse-regexps.el (muse-table-line-regexp)
1037         (muse-table-hline-regexp, muse-table-el-border-regexp): Fix
1038         regexps so that they work with XEmacs 21.  Thanks to Adrian
1039         Tritschler for the report.
1041         * texi/muse.texi: Update copyright years.
1042         (HTML): Document muse-xhtml-style-sheet.  Thanks
1043         to thorne for noticing.
1044         (Development): Change archive year to 2006.  Thanks to Adrian
1045         Tritschler for noticing.  So *that's* why some people had the 2005
1046         version ....
1048 2007-06-05  Michael Olson  <mwolson@gnu.org>
1050         * Makefile (install-info): Remove $(MANUAL).info part, since this
1051         is taken care of already by texi/Makefile.  Thanks to Leo for the
1052         report.
1054         * lisp/muse-journal.el (muse-journal-html-munge-buffer): Add
1055         read-only properties to qotd contents, so that they don't get
1056         double-escaped.  Thanks to Leo for the report.
1058 2007-06-04  Michael Olson  <mwolson@gnu.org>
1060         * lisp/muse-colors.el (muse-link-face): If the link is to a remote
1061         -- that is, Tramp or ange-ftp -- file, then do not call
1062         file-exists-p on it.  Thanks to Jim Ottaway for the suggestion.
1063         Fixes bug #5115.
1065         * lisp/muse-html.el (muse-html-insert-contents): Add
1066         documentation.  Handle case where heading is read-only, but has
1067         muse-contents property.  Remove the muse-contents property for any
1068         heading we come across so as to avoid double-including an item in
1069         an outer table of contents.
1070         (muse-html-denote-headings): New function that denotes whether a
1071         heading is not read-only by adding the muse-contents property to
1072         it.
1073         (muse-html-munge-buffer): If we are not to generate contents,
1074         still denote headings, in case some outer layer wants to generate
1075         contents for our headings.  This should fix a bug with table of
1076         contents and the <include> tag.  Thanks to thorne for the report.
1078         * lisp/muse-publish.el (muse-publish-markup-region): Let-bind
1079         muse-publish-generate-contents and set it to nil.  This should
1080         do the right thing when using <include> tags.
1082 2007-06-02  Michael Olson  <mwolson@gnu.org>
1084         * NEWS: Update for non-inlined image change and support for
1085         table.el style tables.
1087         * examples/Makefile (clean): Clean backup files.
1089         * examples/QuickStart.muse (Images): New section that describes
1090         how to inline and not inline images.
1092         * lisp/muse-colors.el (muse-colors-resolve-image-file): Don't
1093         touch images that have "URL:" in front of them.
1095         * lisp/muse-protocols.el (muse-url-protocols): Add handler for
1096         "URL:".  Use the identity function to resolve, since we don't want
1097         to rip "URL:" out while publishing, due to some magic that depends
1098         on that text.
1099         (muse-browse-url-url): New function that browses URLs that have
1100         "URL:" in front of them, by removing the "URL:" part and
1101         reprocessing the remainder.
1103         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
1104         (muse-publish-url): Recognize images in the description before
1105         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
1106         for the suggested workaround.
1107         (muse-publish-desc-transforms): Add `muse-publish-strip-URL' as a
1108         default value.
1109         (muse-publish-classify-url): If target begins with "URL:" return
1110         type url.
1111         (muse-publish-strip-URL): New function that strips "URL:" from the
1112         beginning of a string.  This is used to remove URL: from the link
1113         description.  * texi/muse.texi (Markup Strings): Clarify the
1114         meanings of image-link, link, and link-and-anchor.
1115         (muse-publish-markup-regexps): Move normal table rule to 2350.
1116         Rule 2300 is now a regexp that matches table.el-style tables.
1117         (muse-publish-markup-functions): Add table-el entry.
1118         (muse-publish-table-el-table): New function that given a variant,
1119         publishes a table.el-style table using the table in the matched
1120         region.
1121         (muse-publish-markup-table-el): New function that determines
1122         whether the table.el-style table can be published, and what
1123         variant to use.
1125         * lisp/muse-regexps.el (muse-tag-regexp): New regexp that matches
1126         the borders of table.el-style tables.
1128         * lisp/muse-xml-common.el (muse-xml-markup-table): Make sure that
1129         the table has sufficient whitespace in front of it.
1131         * texi/muse.texi (Images): Update for new non-inlined image
1132         ability and provide example.
1134 2007-05-31  Michael Olson  <mwolson@gnu.org>
1136         * NEWS: Add example for setting `muse-html-table-attributes'.
1138         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
1139         Publish multiple tbody tags if there is a horizontal separator
1140         after the heading, because that is valid HTML after all.
1142 2007-05-30  Michael Olson  <mwolson@gnu.org>
1144         * NEWS: Update.
1146         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
1147         horizontal separators in tables.
1149         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
1150         horizontal separators in tables.
1151         (muse-publish-trim-table): New function to remove initial and
1152         final blank columns from a table.
1153         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
1154         with horizontal separators, aka "hlines".
1156         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
1157         defines the syntax of a horizontal separator in a table.
1159         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
1160         horizontal separators.  Publish header lines correctly.
1162         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
1163         where we have nonnumbers as a row type.  This ignores sorting for
1164         hlines.
1165         (muse-xml-markup-table): Deal with horizontal separators.  If the
1166         markup supports table groups, make hlines separate table groups.
1167         Otherwise, ignore them, since they cannot be marked up.  Together,
1168         these changes allow us to support orgtbl-mode tables.  Thanks to
1169         Carsten Dominik for the suggestion.
1171 2007-05-26  Michael Olson  <mwolson@gnu.org>
1173         * lisp/muse-project.el (muse-project-alist-styles): Allow for
1174         other things to be added to each generated style as well.  For
1175         example, this permits me to add
1176         :base-url "http://blog.mwolson.org/"
1177         for my blog.
1179 2007-05-25  Michael Olson  <mwolson@gnu.org>
1181         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
1182         way of building Debian packages that preserves the original
1183         release tarball and is more modular.
1184         (debrevision, debrelease): Remove.
1185         (dist): No need to remove the debian/ directory, since it is now
1186         in its own branch.
1187         (debprepare): Copy over debian/ directory properly.
1189         * NEWS: Update.
1191         * examples/Makefile (clean): Remove QuickStart.texi, in case
1192         something went wrong during the build.
1193         (%.pdf): Publish the example using the normal pdf style, rather
1194         than info-pdf.
1196         * examples/QuickStart.muse: Add myself to the authors list.
1198         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
1199         sufficient blank lines before the tag.
1201         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
1202         we have sufficient blank lines before the tag.
1204         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
1205         specifies the program to call in order to generate PDF content
1206         from LaTeX content.
1207         (muse-latex-pdf-cruft): New option that specifies the extensions
1208         of files to remove after generating PDF output successfully.
1209         (muse-latex-pdf-generate): Use these new options.  Work around the
1210         annoying edge case where a tilde character exists in the filename
1211         or directory path -- now this can only error out when the relative
1212         path from the output file to the source file contains a tilde,
1213         which is far less likely.
1215         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
1216         muse-publish-ensure-block here after all, because <lisp> et al may
1217         occur inline as part of other things.
1219         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
1220         occur after full-document escaping, rather than before.  This
1221         prevents automatically-inserted Texinfo code from being escaped.
1222         (muse-texinfo-pdf-generate): Rewrite to call
1223         `muse-latex-pdf-generate' with pdftex as the generating binary,
1224         because texi2pdf suffers irredeemably from the tilde edge case
1225         mentioned above.
1227 2007-05-24  Michael Olson  <mwolson@gnu.org>
1229         * NEWS: Drop vague entries and position interesting entries closer
1230         to the top of each section.  Update for new changes.
1232         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
1233         and bzr metadata directories to the list of things to ignore.
1235         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
1236         `muse-publish-ensure-block-tag', since we will use it for more
1237         than just tags.
1238         (muse-publish-markup-list, muse-publish-verse-tag)
1239         (muse-publish-quote-tag, muse-publish-example-tag)
1240         (muse-publish-markup-attribute): Use it.  This fixes a bug that
1241         can occur when these types of markup occur immediately after a
1242         paragraph.  It's good to have defined behavior!
1244         * texi/muse.texi (Markup Strings): Mention new argument for
1245         link-and-anchor.
1247 2007-05-19  Michael Olson  <mwolson@gnu.org>
1249         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
1250         published footnotes and footnote references.  Thanks to Scott
1251         Jaderholm for the idea.
1253         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
1254         link-and-anchor, on the recommendation of the original submitter.
1256 2007-05-14  Michael Olson  <mwolson@gnu.org>
1258         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
1259         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
1260         suggestion.
1262         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
1263         file extension as the fourth argument.
1265         * README, texi/muse.texi (Getting Help and Reporting Bugs):
1266         Mention the new muse-el-logs mailing list.
1268 2007-05-13  Michael Olson  <mwolson@gnu.org>
1270         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
1271         "\`" here.  This fixes a problem with publishing custom URLs.
1273 2007-05-12  Michael Olson  <mwolson@gnu.org>
1275         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
1276         update the list if the current buffer is associated with a file.
1277         This fixes a bug with M-x muse-publish-region in a temporary
1278         buffer.
1280 2007-05-01  Michael Olson  <mwolson@gnu.org>
1282         * lisp/muse-publish.el (muse-publish-region): Remove read-only
1283         properties from the published buffer, so that the results can be
1284         manually tweaked.
1286 2007-04-23  Michael Olson  <mwolson@gnu.org>
1288         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
1289         find the footnote that goes with a reference, leave the reference
1290         as-is.  This fixes an error where control characters could be
1291         placed in a published document.
1293 2007-04-22  Michael Olson  <mwolson@gnu.org>
1295         * IDEAS.muse: Add muse-slides.el to list of things to include
1296         before release.
1298         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
1299         character.
1300         (muse-protocol-find): Find protocols correctly.  Rewrite to use
1301         catch/throw.
1302         (muse-browse-url): Don't concatenate "\`" here.  Together, this
1303         fixes a bug with browsing woman:// links.
1305         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
1306         where entry-dir has a trailing backslash.
1307         (muse-project-publish-file): If a style is malformed, skip it and
1308         display a warning message.  This should help people figure out
1309         where the problem is.
1311 2007-04-21  Michael Olson  <mwolson@gnu.org>
1313         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
1314         yet-to-be-included "contex" publishing style, use "$$" rather
1315         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
1316         this out.
1318 2007-04-20  Michael Olson  <mwolson@gnu.org>
1320         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
1321         variable that causes the :before and :before-end hooks to be
1322         ignored when non-nil.
1323         (muse-publish-markup-region): Use it.  Also, guarantee that point
1324         is at end of region after publishing.
1325         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
1326         variable.
1328 2007-04-19  Michael Olson  <mwolson@gnu.org>
1330         * IDEAS.muse: New file containing a list of ideas we have for new
1331         features, or patches that have yet to be applied.
1333         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
1334         be so confusing.
1336         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
1337         docstring.
1339         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
1340         <literal> tags with muse-publish-literal-tag, rather than
1341         muse-publish-mark-read-only.
1342         (muse-publish-literal-tag): New function that publishes the
1343         <literal> tag.  It adds the ability to add the optional "style"
1344         and "exact" elements, which cause text to only be included if the
1345         current publishing style matches some criteria.  The text will be
1346         removed otherwise.  Thanks to Jim Ottaway for the implementation.
1347         (muse-publish-mark-up-tag): Let the <markup> tag take the
1348         additional optional elements "style" and "exact", with much the
1349         same effect as the <literal> improvements, but after calling
1350         "function" or publishing the region first.  Make it possible to
1351         put <content> tags in <markup> regions in HTML publishing.
1353 2007-04-12  Michael Olson  <mwolson@gnu.org>
1355         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
1356         that a blank line always exists after a heading.  This fixes a bug
1357         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
1358         for the report.
1360         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
1361         detection regexp to that which is used in Docbook and HTML
1362         publishing styles.
1364 2007-04-02  Michael Olson  <mwolson@gnu.org>
1366         * README (muse-el-announce): Make a listing of mailing lists,
1367         rather than pointing to the old EmacsWikiMailingList page.  Thanks
1368         to Andreas Roehler for noticing.
1370 2007-04-01  Michael Olson  <mwolson@gnu.org>
1372         * lisp/muse-publish.el (muse-publish-date-format): Add
1373 `       customization type and group.
1374         (muse-publish-region): New interactive function that publishes a
1375         region to a new buffer.
1377         * texi/muse.texi: Use "document" rather than "manual".
1379 2007-03-31  Michael Olson  <mwolson@gnu.org>
1381         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
1382         expression (muse-style-derived-p "latex" (muse-style "latex"))
1383         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
1384         for the catch.
1386 2007-02-25  Michael Olson  <mwolson@gnu.org>
1388         * lisp/muse-publish.el (muse-publish-date-format): New option that
1389         specifies how to format the date when publishing Muse pages.
1390         Thanks to Thomas Gehrlein for the suggestion.
1391         (muse-publish-markup-buffer): Use it.
1393 2007-02-23  Michael Olson  <mwolson@gnu.org>
1395         * README: Add Prerequisites section to mention which versions of
1396         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
1397         the suggestion.  Update link destination for Muse's page on
1398         emacswiki.org.
1400 2007-02-15  Michael Olson  <mwolson@gnu.org>
1402         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
1403         be not just at beginning of line.  This fixes an error with the
1404         <class> tag.  Thanks to Jim Pivarski for the report.
1406 2007-02-14  Michael Olson  <mwolson@gnu.org>
1408         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
1409         whether something is an image before checking to see if it is a
1410         URL.  Thanks to ITSUMI ken-ichi for the report.
1412 2007-02-13  Michael Olson  <mwolson@gnu.org>
1414         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
1415         comments that have no text better.  Thanks to fang.lungang for the
1416         report.
1417         (muse-publish-markup-comment): Deal with case where no comment
1418         text is provided.
1420 2007-01-23  Michael Olson  <mwolson@gnu.org>
1422         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
1423         that ensures that at least one blank line exists at the given
1424         position.  This is used to avoid paragraph detection problems when
1425         block-level tags like <example> immediately follow a paragraph.
1426         Thanks to Hans Ekbrand for the report.
1427         (muse-publish-example-tag): Use it.
1429 2007-01-19  Michael Olson  <mwolson@gnu.org>
1431         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
1432         previous blank line if we are publishing in Latex.  Otherwise,
1433         that wouldn't be the right thing, so leave it be.
1435 2007-01-17  Michael Olson  <mwolson@gnu.org>
1437         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
1438         multiple centered math lines on the same line; keep them on
1439         different lines.  Use \[ math-text \] instead of $$math-text$$,
1440         since the latter seems to be deprecated.  Thanks to Jody Klymak
1441         for the pointer.
1443 2007-01-15  Michael Olson  <mwolson@gnu.org>
1445         * lisp/muse-latex2png.el (muse-publish-latex-tag)
1446         (muse-publish-math-tag): Publish region read-only when current
1447         style is Latex-derived, so that Muse does not escape it.
1448         (muse-publish-math-tag): If 6 or more spaces come before the tag,
1449         surround the region with "$$" rather than "$".  This is the Muse
1450         syntax for something centered, so it should be a good fit.
1452 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
1454         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
1455         protocol.
1456         (muse-browse-url-man): Change man page URL format.  The code is
1457         simpler when the section is left inside parentheses.
1458         (muse-browse-url-woman): New function.
1460 2007-01-14  Michael Olson  <mwolson@gnu.org>
1462         * AUTHORS: Bookkeeping.
1464         * lisp/muse-latex2png.el: Associate <math> tag with
1465         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
1466         Klymak for the report.
1467         (muse-publish-math-tag): Use muse-insert-markup for the "$"
1468         characters, so they don't get escaped.
1470         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
1471         make muse-style-derived-p easier to implement.
1472         (muse-style-derived-p): If the style is not provided, fetch it and
1473         check to see if the car is a string.  This should fix the other
1474         problem that was reported.
1476         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
1477         explains a case where setting muse-file-extension to nil can cause
1478         unexpected behavior.
1480 2007-01-09  Michael Olson  <mwolson@gnu.org>
1482         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
1483         comments higher priority than tags.  Thanks to Stefan van der Walt
1484         for the report.
1486 2007-01-08  Michael Olson  <mwolson@gnu.org>
1488         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
1489         argument rather than calling match-string.  Thanks to Stefan van
1490         der Walt for the report.  This should fix a bug with publishing
1491         <include file="..." markup="example">.
1493 2007-01-06  Michael Olson  <mwolson@gnu.org>
1495         * Makefile (debclean): New rule split from debrevision and
1496         debrelease.
1497         (debbuild): Take distributor into account.
1499         * Makefile.defs (DISTRIBUTOR): New field that tracks what
1500         vendor/distributor we are building for.
1502 2007-01-04  Michael Olson  <mwolson@gnu.org>
1504         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
1505         line.
1507         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
1508         point to muse-publish-src-tag by default, since <src> and
1509         <example> have different parameters.
1510         (muse-publish-src-tag): New barebones publishing function for
1511         <src>, which is superseded when publishing in an HTML-based style.
1513 2007-01-03  Michael Olson  <mwolson@gnu.org>
1515         * lisp/muse-html.el (muse-html-src-tag): Document.
1517         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
1518         command that calls a given tag on the current buffer.  Attributes
1519         may be passed.
1520         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
1521         it.
1522         (muse-publish-srcify-buffer): New function that allows
1523         markup="src" in the <include> tag.
1524         (muse-publish-get-and-delete-attr): New macro that gets an
1525         attribute from a list and removes the first instance of that
1526         attribute from said list.
1527         (muse-publish-markup-attribute): Handle markup="src".
1528         (muse-publish-command-tag, muse-publish-include-tag): Use
1529         muse-publish-get-and-delete-attr.  This allows the remaining
1530         attributes to be passed.
1532         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
1533         as changes to <command> and <include>.
1535 2006-12-30  Michael Olson  <mwolson@gnu.org>
1537         * NEWS: Update.
1539         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
1540         from muse-publish-math-tag to avoid conflict with
1541         muse-latex2png.el.
1543 2006-12-23  Michael Olson  <mwolson@gnu.org>
1545         * lisp/muse-latex2png.el: Update header, since this has been
1546         rewritten sufficiently to not need an assignment from the original
1547         author.
1548         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
1549         (muse-latex2png): Use two underscores to separate prefix and hash.
1550         (muse-latex2png-region): New function split from
1551         muse-publish-latex-tag that can be used easily by other code.
1552         Detect whether we are using an HTML-based publishing style, and
1553         insert a simpler markup if we are not.  If we are using a
1554         Latex-based publishing style, do not generate an image, and leave
1555         the region alone.  Return the path of the generated image, in case
1556         other functions want to use this programmatically.
1557         (muse-publish-latex-tag): Set a default prefix based on the name
1558         of the current file.
1559         (muse-publish-math-tag): New tag that surrounds the region with
1560         "$" characters, so that it becomes a Latex math region, and then
1561         publishes it.
1563         * lisp/muse-publish.el (muse-style-derived-p): New function that
1564         returns non-nil if a given style, or the current style if omitted,
1565         is equal to or derived from the given base style.  This is useful
1566         in <lisp> tags, because it allows the user to specify markup that
1567         is only to be inserted for one particular style.
1569 2006-12-22  Michael Olson  <mwolson@gnu.org>
1571         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
1572         (muse-html-src-tag): New function which publishes the <src> tag.
1573         Thanks to Clinton Ebadi and Charles Wang for the initial
1574         implementations.
1576         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
1578 2006-12-21  Michael Olson  <mwolson@gnu.org>
1580         * examples/johnw/muse-johnw.el: Update for preferred
1581         muse-derive-style usage.  Rename to muse-init.el.
1583         * examples/mwolson/muse-init.el: Update.
1585         * lisp/muse-book.el (muse-book-publish): New function split from
1586         muse-book-publish-project.  This is used in the definitions for
1587         the book-latex and book-pdf styles.
1588         (muse-book-publish-p): New function split from muse-book-publish.
1589         (muse-book-get-directives): New function that retrieves the
1590         publishing directives from the given file.
1591         (muse-book-publish): Use muse-book-get-directives to set the title
1592         if no title was specified.
1594         * lisp/muse-project.el (muse-project): Add :publish-project entry
1595         to widget.
1596         (muse-read-project, muse-project-find-file): Message fix.
1597         (muse-project-publish-file-default): New function split from
1598         muse-project-publish-file.
1599         (muse-project-publish-file): Allow file-level publishing function
1600         to be specified by the :publish element.  The default is
1601         muse-project-publish-file-default.
1602         (muse-project-publish-default): New function split from
1603         muse-project-publish.
1604         (muse-project-publish): Allow project-level publishing function to
1605         be specified by :publish-project element.  The default is
1606         muse-project-publish-default.
1608         * lisp/muse-publish.el (muse-publish-file): Message fix.
1610         * texi/muse.texi (Book): Mention new way to publish books and
1611         provide an example, since the process may be non-obvious.
1613 2006-12-20  Michael Olson  <mwolson@gnu.org>
1615         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
1616         content-modifying code from the rest of
1617         muse-docbook-finalize-buffer.
1619         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
1620         muse-groff-finalize-buffer, since it adds content to the buffer.
1622         * lisp/muse-html.el (muse-html-munge-buffer): Split out
1623         content-modifying code from the rest of muse-html-finalize-buffer.
1624         This fixes a bug when using <include> with <content> tags.
1626         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
1627         (muse-journal-latex-munge-buffer)
1628         (muse-journal-rss-munge-buffer): Rename, since they add content to
1629         the buffer.
1631         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
1632         muse-latex-finalize-buffer, since it adds content to the buffer.
1634         * lisp/muse-mode.el:
1635         * lisp/muse-project.el:
1636         * lisp/muse-publish.el:
1637         * lisp/muse.el: Fix recursive load error.
1639         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
1640         muse-texinfo-finalize-buffer, since it adds content to the buffer.
1642         * lisp/muse-wiki.el: Comment cleanup.
1644         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
1646 2006-12-17  Michael Olson  <mwolson@gnu.org>
1648         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
1649         Remove the definition of \comment, since Latex already has comment
1650         syntax.
1651         (muse-latex-markup-strings): Use the Latex comment syntax, rather
1652         than our own.  Thanks to Ryan Stutsman for pointing this out.
1654 2006-12-02  Michael Olson  <mwolson@gnu.org>
1656         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
1657         that this can generate a proper table of contents for Planner HTML
1658         publishing.
1660 2006-12-01  Michael Olson  <mwolson@gnu.org>
1662         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
1663         using a very old Emacs, avoid an infinite loop that could occur
1664         when the regexp is an empty string.
1666 2006-11-26  Michael Olson  <mwolson@gnu.org>
1668         * NEWS: Bring up to date.
1670         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
1671         list issues and multiple-stanza verse issues.  This takes care of
1672         all of the markup issues I was worried about.
1674         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
1675         (muse-project-publish-private-files): New option that indicates
1676         whether files with private filesystem permissions should be
1677         published.  The default is to publish them, since it avoids
1678         confusion in new users.
1679         (muse-project-private-p): Use it.
1681 2006-11-19  Michael Olson  <mwolson@gnu.org>
1683         * lisp/muse-project.el (muse-project-resolve-link): If no remote
1684         style is found, which means that the link is not a Muse page, do
1685         not add a suffix or prefix to it.  This should fix the
1686         "[[thing.owl]]" bug that Phillip Lord reported.
1688         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
1689         removing unused 2nd argument.
1691 2006-11-17  Michael Olson  <mwolson@gnu.org>
1693         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
1694         latex publishing where nested enumerated lists would be squashed
1695         together at the end.
1697 2006-11-16  Michael Olson  <mwolson@gnu.org>
1699         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
1700         list embedded in a definition list look right.  This also allows
1701         for definitions to be separated from their terms, much like the
1702         way HTML does it by default, if the user puts a blank line or a
1703         line break between the term and the definition.  If the term and
1704         definition are on the same line, they will be that way in the
1705         output as well.
1707 2006-11-11  Michael Olson  <mwolson@gnu.org>
1709         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
1710         for the report.
1711         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
1713 2006-11-07  Michael Olson  <mwolson@gnu.org>
1715         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
1716         release candidate for Muse 3.03, available.
1718         * NEWS: Update.
1720 2006-11-06  Michael Olson  <mwolson@gnu.org>
1722         * lisp/muse-project.el (muse-project-find-file): Fix bug when
1723         following a relative link worked even when the path was incorrect.
1725 2006-11-04  John Sullivan  <john@wjsullivan.net>
1727         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
1728         muse-follow-name-at-point to reduce collisions with other
1729         modes (Planner).
1731         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
1733 2006-11-04  Michael Olson  <mwolson@gnu.org>
1735         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
1736         optional, and make interwiki delimiter a regular rather than shy
1737         group.
1738         (muse-wiki-handle-implicit-interwiki): Rename from
1739         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
1740         (muse-wiki-handle-explicit-interwiki): New function that is
1741         smarter about where an explicit link ends in a buffer.  This
1742         allows you to refer to page names with invalid Wiki characters,
1743         such as underscores and dashes, merely by enclosing them in double
1744         brackets.  Also, a bug with recognizing project names too loosely
1745         has been fixed.
1747 2006-11-03  Michael Olson  <mwolson@gnu.org>
1749         * lisp/muse-project.el (muse-project-page-file): Make relative
1750         links work as expected, hopefully.
1752         * lisp/muse-publish.el (muse-publish-this-file): Set the current
1753         output style manually, since it will differ from anything in the
1754         publishing style list.
1756 2006-10-30  Michael Olson  <mwolson@gnu.org>
1758         * lisp/muse-colors.el (muse-colors-markup): Remove note about
1759         grouping elements, since that no longer applies.
1760         (muse-colors-custom-tags): Explicitly match against
1761         muse-tag-regexp to get the match-data set the way we want.  This
1762         really fixes the <example> highlighting bug that Stefan reported.
1763         (muse-configure-highlighting): Set the original value to the
1764         symbol, not the modified value.  Re-use modified rules properly.
1766         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
1767         introduced yesterday.
1769 2006-10-29  Michael Olson  <mwolson@gnu.org>
1771         * examples/mwolson: Update my example configuration.
1773         * NEWS: Update.
1775         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
1776         without a regexp in the first position before iterating through
1777         them to build muse-colors-vector.  This fixes a bug with the
1778         display of <example> tags.  Thanks to Stefan Reichör for the
1779         report.
1781         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
1782         files in projects to be linked to.
1784         * lisp/muse-publish.el (muse-publish-url): Allow the original link
1785         to serve as a description for a URL, as long as it differs from
1786         the destination URL.  This fixes the description of WikPage links
1787         in PDF output.
1788         (muse-publish-link-file): Check to see whether the given link
1789         points at a valid file.  If so, return it.  Otherwise, apply other
1790         transforms like prefix and link suffix.
1792         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
1793         "/", it is a file or directory, not a Muse page.  Thanks to
1794         Phillip Lord for the suggestion.
1796         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
1797         of the current page as the local path, instead of duplicating the
1798         remote file's path.  This probably fixes at least one reported
1799         bug. since it's quite major.
1800         (muse-wiki-update-project-file-regexp)
1801         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
1802         passed to regexp-opt, since that can cause Emacs 21 to throw an
1803         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
1804         DOT edu for the report.
1805         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
1807 2006-10-28  Michael Olson  <mwolson@gnu.org>
1809         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
1810         (muse-project-resolve-link): If the given style does not have a
1811         link-suffix, default to suffix.  This fixes a bug I was noticing
1812         when linking to a file that was published in both PDF and HTML
1813         form.
1815         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
1816         function that is used as a callback to determine the initial
1817         amount of indentation that the current dl item has.
1818         (muse-publish-surround-dl): Use it.  Pass the initial indent value
1819         and the post-indent value, instead of trying to determine them
1820         both.
1821         (muse-publish-strip-list-indentation): New function stripped from
1822         `muse-publish-surround-text' for readability.
1823         (muse-publish-surround-text): Instead of taking a determine-indent
1824         value, take a determine-indent-func function, which is called just
1825         after finding the next list item.  If we are asked to determine
1826         the amount of indentation, concatenate indent and post-indent the
1827         first time around.  This effectively fixes all known definition
1828         list issues.
1830 2006-10-16  Michael Olson  <mwolson@gnu.org>
1832         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
1833         other software -- namely, Planner -- can detect whether they are
1834         using a version of Muse that supports nested tags.
1835         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
1836         muse-publish-goto-tag-end.
1838         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
1839         Adapt for nested tags.
1841         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
1842         <class> tag is nestable.  Thanks to Phillip Lord for noticing
1843         this.
1845         * lisp/muse-publish.el (muse-publish-markup-tag)
1846         (muse-publish-quote-tag): Use muse-goto-tag-end.
1848         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
1850 2006-10-15  Michael Olson  <mwolson@gnu.org>
1852         * AUTHORS: Bookkeeping.
1854         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
1855         tag.
1857         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
1858         tags.
1860         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
1862         * lisp/muse-import-docbook.el (muse-import-docbook)
1863         (muse-import-docbook-files): Docfix.
1864         (muse-import-docbook-get-title): Remove cl.el-ism.
1866         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
1868         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
1870         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
1872         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
1873         (muse-next-reference, muse-previous-reference): Minor whitespace
1874         changes.
1875         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
1876         the suggestion.
1878         * lisp/muse-poem.el (muse-poem-tag): Ditto.
1880         * lisp/muse-publish.el (muse-publish-markup-tags)
1881         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
1882         element and make 4th element determine whether tags are nestable.
1883         (muse-publish-goto-tag-end): New function that moves to the end of
1884         a tag.  Handle nested tags when NESTED is non-nil.
1885         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
1886         5th element for function.
1887         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
1888         this on several scenarios, and it seems to work.
1889         (muse-publish-surround-text): Accept new optional argument
1890         LIST-ITEM which determines the regexp to use for list items.  The
1891         default is to use muse-list-item-regexp.
1893         * muse.texi (Markup Tags): Mention nestable tags.
1895         * NEWS: Mention new files.
1897 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
1899         * lisp/muse-import-docbook.el: New file that converts Docbook XML
1900         into Muse format.
1902         * lisp/muse-import-xml.el: New file that provides helper routines
1903         for converting XML-ish files to Muse format.
1905 2006-10-10  Michael Olson  <mwolson@gnu.org>
1907         * NEWS: Update for 3.02.7 bugfix release.
1909 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
1911         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
1912         using the value in the muse #date directive.
1913         (muse-blosxom-use-metadate): New option that determines whether or
1914         not to use the #postdate directive.
1915         (muse-blosxom-format-date): Convert a date string to PyBlosxom
1916         metadate plugin format.
1918 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
1920         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
1921         recognised URLs.
1923         * muse.texi: Clarify handling of implicit links by mentioning
1924         which characters can prevent Muse from recognizing something as an
1925         implicit link.
1927 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
1929         * lisp/muse-mode.el (muse-next-reference)
1930         (muse-previous-reference): Fix bug #6367 by moving point to the
1931         beginning of the link.
1933 2006-09-26  Michael Olson  <mwolson@gnu.org>
1935         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
1936         beginning-of-line.  This should fix a bug that was noticed in
1937         recent Emacs 22 builds.
1939         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
1940         eval-and-compile block to avoid a compiler warning.
1942 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
1944         * lisp/muse-backlink.el (muse-backlink-split-string):
1945         Compatibility with Emacs versions < 22
1946         (muse-backlink-pending): New internal variable
1947         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
1948         that backlinks are inserted at the right time.
1949         (muse-backlink-insert-hook-func): Remove unwind-protection; check
1950         for pending backlink, and that this is the targe page.
1951         (muse-backlink-handle-link): Don’t handle the link if we are
1952         already handling one. Return the link as well as the parent links.
1954 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
1956         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
1957         #6942 - muse-blosxom-new-entry fails when using tags.
1959 2006-09-14  Michael Olson  <mwolson@gnu.org>
1961         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
1962         compiler warning.
1964 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
1966         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
1967         function: Protect all wikiwords from START to END from further
1968         processing.
1969         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
1971 2006-09-13  Michael Olson  <mwolson@gnu.org>
1973         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
1974         adopted from Jim Ottaway's patch.  It removes links from the
1975         heading, and then marks the region read-only to inhibit WikiWord
1976         detection.
1978 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
1980         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
1981         special handling for headings.
1982         (muse-texinfo-remove-links): New function that removes explicit
1983         links from the given strings, replacing them with a description.
1985 2006-09-11  Michael Olson  <mwolson@gnu.org>
1987         * muse.texi (Getting Help and Reporting Bugs): Mention the
1988         muse-el-internationalization mailing list.
1990         * lisp/muse.el (muse-path-sans-extension): New function that acts
1991         like file-name-sans-extension, but guarantees to never modify the
1992         directory part of the path.  Thanks to Evan Monroig for
1993         investigating this.
1995         * lisp/muse-book.el (muse-book-publish-project): Use
1996         muse-path-sans-extension instead of file-name-sans-extension.
1998         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
1999         Ditto.
2001 2006-08-30  Michael Olson  <mwolson@gnu.org>
2003         * muse.texi (Blosxom Requirements): Fix typo.
2005         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
2006         directories for bzr and darcs.
2008         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
2009         contrib/pyblosxom/getstamps.py: Update version and headers.
2011 2006-08-27  Michael Olson  <mwolson@gnu.org>
2013         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
2014         nil values before they get to mapconcat.  This fixes a lockup when
2015         muse-wiki-match-all-project-files is nil.
2017         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
2018         (muse-wiki-ignore-implicit-links-to-current-page)
2019         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
2020         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
2021         (muse-wiki-publish-small-title-words)
2022         (muse-wiki-publish-pretty-title): Docfix.
2023         (muse-wiki-update-local-wikiword-regexp): Rename from
2024         muse-wiki-update-local-wikiword-regexp.  Set
2025         muse-wiki-project-file-regexp instead of
2026         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
2027         take muse-wiki-use-wikiword into account, since this is a
2028         different concept now.
2029         (muse-wiki-update-wikiword-regexp): Remove.
2030         (muse-wiki-wikiword-regexp): In-line the :set function.
2031         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
2033 2006-08-26  Michael Olson  <mwolson@gnu.org>
2035         * lisp/muse-publish.el (muse-publish-surround-text): When looking
2036         for indented list items, ignore blank lines.
2038         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
2039         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
2040         mapconcat.  This should hopefully fix a problem with large amounts
2041         of files with spaces in their name.  Thanks to Greg Detre for the
2042         report.
2044 2006-08-24  Michael Olson  <mwolson@gnu.org>
2046         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
2047         numbers from the argument to format-time-string.  This fixes an
2048         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
2050 2006-08-18  Michael Olson  <mwolson@gnu.org>
2052         * lisp/muse-project.el (muse-project-file-entries): Since we are
2053         given a full path, match against the filename as well.  This fixes
2054         an issue where backup files were being added to the file alist.
2056         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
2057         from muse-html.el.
2059 2006-08-12  Michael Olson  <mwolson@gnu.org>
2061         * Makefile (.PHONY): Don't use line continuations.
2062         (realclean fullclean): Call realclean in subdirs, not distclean.
2063         (distclean): Don't call realclean, since this would wipe out our
2064         autoloads file.
2065         (dist): Use correct path to autoloads file.
2067         * NEWS: Catch up with the latest changes.
2069         * experimental/Makefile (.PHONY): Wrap long line.
2071         * lisp/Makefile (distclean): Do the same thing as "clean", not
2072         "realclean".
2074         * lisp/muse-project.el (muse-project-get-applicable-style):
2075         Indentation tweak.
2076         (muse-project-ignore-regexp, muse-project-recurse-directory):
2077         Docfix.
2078         (muse-project-of-file): Try the ignored files regexp against the
2079         base filename as well as the entire path.
2081         * lisp/muse-publish.el (muse-publish-this-file): Display message
2082         if the buffer is not associated with any file, so that we avoid
2083         errors later on.
2084         (muse-publish-url-desc): New function taken from muse-publish-url
2085         that causes a URL description to be transformed.
2086         (muse-publish-url): Call muse-publish-url-desc on either the
2087         description or the original URL if it will be used as a
2088         description.  Accept the original URL as an argument, in case it
2089         was transformed earlier.
2090         (muse-publish-insert-url): Pass original URL as an argument.
2091         (muse-publish-markup-link): Make this somewhat easier to follow.
2092         Pass original URL as argument.
2093         (muse-publish-get-style): If the same style is used to publish to
2094         two different directories, prompt the user for which directory to
2095         use.
2096         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
2097         latest changes.
2098         (muse-publish-markup-url): Pass original URL as an argument.  This
2099         fixes the "nil" description for bare URLs that was in 3.02.91.
2100         Nothing like finding a bug just after completing the announcement
2101         of a release.
2103         * lisp/muse.el: Use defalias whenever convenient.
2104         (muse-version): Set version to 3.02.92 (3.03 RC2).
2106 2006-08-10  Michael Olson  <mwolson@gnu.org>
2108         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
2109         style does not derive from any other class, return `t' here.
2110         This, along with the corresponding change to muse-publish.el,
2111         fixes a problem with the table of contents getting inserted
2112         multiple times for custom html-based styles.
2113         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
2114         smarter method for table centering that works with XHTML.
2116         * lisp/muse-latex2png.el Rename all functions to have a
2117         "muse-latex2png" prefix.  Turn all variables into customizable
2118         options in the muse-latex2png group.
2119         (muse-latex2png-img-dest): New option specifying where to place
2120         the images.
2121         (muse-latex2png-template): New option containing the template to
2122         use for the surrounding LaTeX code.
2123         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
2124         compliance.
2125         (muse-latex2png-move2pubdir): Avoid multiple redundant error
2126         messages when something else goes wrong.  Create the image
2127         subdirectory if it doesn't exist already -- thanks to Christian
2128         Straßer for the report.  Expand the filename properly.
2129         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
2130         and filename expansion.
2131         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
2132         the default directory properly.
2134         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
2135         do not run the same function twice.
2137 2006-08-08  Michael Olson  <mwolson@gnu.org>
2139         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
2140         introduced wrong-type-argument error.
2142         * lisp/muse-html.el (muse-html-markup-strings)
2143         (muse-xhtml-markup-string): Cause table definition that contains
2144         image to be center-aligned.  This should fix an issue with images
2145         not being centered when captions are very long.
2147         * lisp/muse-publish.el (muse-publish-table-fields): Trim
2148         whitespace from fields once we have split them up.
2150         * lisp/muse.el (muse-trim-whitespace): New function that strips
2151         leading and trailing whitespace from a string.
2153 2006-08-07  Michael Olson  <mwolson@gnu.org>
2155         * NEWS: Update through patch-95.
2157         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
2158         to match the tags.
2159         (muse-colors-explicit-link): Show images in link descriptions if
2160         inlined images are enabled.
2162         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
2163         definitions for 'image-with-desc, 'image, and 'image-link.
2164         (muse-docbook-markup-paragraph): If an inlined image begins a
2165         paragraph, insert <para> before it.
2166         (muse-docbook-fixup-images): New function that upper-cases the
2167         "format" attribute of the <imagedata> tag.
2168         (muse-docbook-finalize-buffer): Call it.
2170         * lisp/muse-html.el (muse-html-markup-strings): Publish images
2171         with descriptions as centered tables, with a centered caption
2172         underneath.  The resulting look is consistent with the way that
2173         they are published in the LaTeX style.  Thanks to Jody Klymak for
2174         the suggestion.
2175         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
2176         valid way to center a table.
2177         (muse-html-markup-paragraph): Use class="image" instead of
2178         "image-link" for paragraphs that start with an embedded image.
2180         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
2181         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
2182         suggestion.
2183         (muse-latex-markup-specials-image): New option that enables
2184         escaping of specials in images.  This was split from the URL
2185         specials.
2186         (muse-latex-decide-specials): Handle 'image context.
2187         (muse-latex-fixup-dquotes): Go to beginning of document, instead
2188         of relying on caller to do this for us.
2190         * lisp/muse-publish.el (muse-publish-escape-specials): Document
2191         'image context.
2192         (muse-publish-url): Use 'image context for images.  Use 'image
2193         instead of 'image-link and 'image-link in place of
2194         'url-with-image.  Separate the image file from its extension so
2195         that docbook and texinfo can publish images correctly.
2196         (muse-publish-markup-link): Don't force a description if one is
2197         not given.  This fixes a bug where images without descriptions
2198         were being published as 'image-with-desc instead of 'image.
2200         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
2201         images the same as URLs.
2202         (muse-texinfo-markup-strings): Improve image markup to achieve an
2203         effect similar to that of the LaTeX publishing style.  Simplify
2204         'url string.
2206         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
2208         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
2209         when we have to use the custom version of this function.
2211         * muse.texi (Images): Explain how to toggle inlining of images and
2212         give better examples.  Mention captions and that captioned images
2213         should not be used inside of text paragraphs.
2214         (Markup Strings): Bring up-to-date with the changes made since
2215         3.02.
2217 2006-08-06  Michael Olson  <mwolson@gnu.org>
2219         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
2220         in the Emacs source tree.
2222         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
2223         in the Emacs source tree.
2225         * ChangeLog.3: New file created from the old ChangeLog.
2227         * Makefile.defs (VERSION): Set to 3.02.91.
2229         * NEWS: Update through patch-84.
2231         * lisp/muse.el (muse-version): Set to 3.02.91.
2233         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
2234         attributes.
2235         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
2236         delimiter are instead of hard-coding it.
2238         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
2239         (muse-mode): Make filling definition lists work better.  This
2240         should fix #5359.
2242         * lisp/muse-publish.el (muse-style-run-hooks): Use
2243         `muse-style-element' instead of `muse-get-keyword' here.  This
2244         should fix #6399.
2246         * muse.texi: Set version to 3.02.91 (3.02 RC2).
2248 See ChangeLog.3 for earlier changes.
2250 ;; Local Variables:
2251 ;; coding: utf-8
2252 ;; End: