manual: Clarify what image-link, link, and link-and-anchor mean
[muse-el.git] / ChangeLog
blob72249d15d1fb32487acc31a408ad715d60fe4681
1 2007-06-02  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse-publish.el (muse-publish-classify-url): Docfix.
4         (muse-publish-url): Recognize images in the description before
5         images in the link.  Fixes bug #5112.  Thanks to Thomas Kappler
6         for the suggested workaround.
8         * texi/muse.texi (Markup Strings): Clarify the meanings of
9         image-link, link, and link-and-anchor.
11 2007-05-31  Michael Olson  <mwolson@gnu.org>
13         * NEWS: Add example for setting `muse-html-table-attributes'.
15         * lisp/muse-xml-common.el (muse-xml-markup-table): Add docstring.
16         Publish multiple tbody tags if there is a horizontal separator
17         after the heading, because that is valid HTML after all.
19 2007-05-30  Michael Olson  <mwolson@gnu.org>
21         * NEWS: Update.
23         * lisp/muse-latex.el (muse-latex-markup-table): Deal with
24         horizontal separators in tables.
26         * lisp/muse-publish.el (muse-publish-markup-regexps): Recognize
27         horizontal separators in tables.
28         (muse-publish-trim-table): New function to remove initial and
29         final blank columns from a table.
30         (muse-publish-table-fields): Call `muse-publish-trim-table'.  Deal
31         with horizontal separators, aka "hlines".
33         * lisp/muse-regexps.el (muse-table-hline-regexp): New regexp that
34         defines the syntax of a horizontal separator in a table.
36         * lisp/muse-texinfo.el (muse-texinfo-markup-table): Deal with
37         horizontal separators.  Publish header lines correctly.
39         * lisp/muse-xml-common.el (muse-xml-sort-table): Deal with case
40         where we have nonnumbers as a row type.  This ignores sorting for
41         hlines.
42         (muse-xml-markup-table): Deal with horizontal separators.  If the
43         markup supports table groups, make hlines separate table groups.
44         Otherwise, ignore them, since they cannot be marked up.  Together,
45         these changes allow us to support orgtbl-mode tables.  Thanks to
46         Carsten Dominik for the suggestion.
48 2007-05-26  Michael Olson  <mwolson@gnu.org>
50         * lisp/muse-project.el (muse-project-alist-styles): Allow for
51         other things to be added to each generated style as well.  For
52         example, this permits me to add
53         :base-url "http://blog.mwolson.org/"
54         for my blog.
56 2007-05-25  Michael Olson  <mwolson@gnu.org>
58         * Makefile (debclean, debprepare, debbuild, debinstall, deb): New
59         way of building Debian packages that preserves the original
60         release tarball and is more modular.
61         (debrevision, debrelease): Remove.
62         (dist): No need to remove the debian/ directory, since it is now
63         in its own branch.
64         (debprepare): Copy over debian/ directory properly.
66         * NEWS: Update.
68         * examples/Makefile (clean): Remove QuickStart.texi, in case
69         something went wrong during the build.
70         (%.pdf): Publish the example using the normal pdf style, rather
71         than info-pdf.
73         * examples/QuickStart.muse: Add myself to the authors list.
75         * lisp/muse-html.el (muse-html-src-tag): Ensure that we have
76         sufficient blank lines before the tag.
78         * lisp/muse-journal.el (muse-journal-latex-qotd-tag): Ensure that
79         we have sufficient blank lines before the tag.
81         * lisp/muse-latex.el (muse-latex-pdf-program): New option that
82         specifies the program to call in order to generate PDF content
83         from LaTeX content.
84         (muse-latex-pdf-cruft): New option that specifies the extensions
85         of files to remove after generating PDF output successfully.
86         (muse-latex-pdf-generate): Use these new options.  Work around the
87         annoying edge case where a tilde character exists in the filename
88         or directory path -- now this can only error out when the relative
89         path from the output file to the source file contains a tilde,
90         which is far less likely.
92         * lisp/muse-publish.el (muse-publish-markup-attribute): Don't use
93         muse-publish-ensure-block here after all, because <lisp> et al may
94         occur inline as part of other things.
96         * lisp/muse-texinfo.el ("texi"): Make muse-texinfo-munge-buffer
97         occur after full-document escaping, rather than before.  This
98         prevents automatically-inserted Texinfo code from being escaped.
99         (muse-texinfo-pdf-generate): Rewrite to call
100         `muse-latex-pdf-generate' with pdftex as the generating binary,
101         because texi2pdf suffers irredeemably from the tilde edge case
102         mentioned above.
104 2007-05-24  Michael Olson  <mwolson@gnu.org>
106         * NEWS: Drop vague entries and position interesting entries closer
107         to the top of each section.  Update for new changes.
109         * lisp/muse-project.el (muse-project-ignore-regexp): Add Mercurial
110         and bzr metadata directories to the list of things to ignore.
112         * lisp/muse-publish.el (muse-publish-ensure-block): Rename from
113         `muse-publish-ensure-block-tag', since we will use it for more
114         than just tags.
115         (muse-publish-markup-list, muse-publish-verse-tag)
116         (muse-publish-quote-tag, muse-publish-example-tag)
117         (muse-publish-markup-attribute): Use it.  This fixes a bug that
118         can occur when these types of markup occur immediately after a
119         paragraph.  It's good to have defined behavior!
121         * texi/muse.texi (Markup Strings): Mention new argument for
122         link-and-anchor.
124 2007-05-19  Michael Olson  <mwolson@gnu.org>
126         * lisp/muse-html.el (muse-html-markup-footnote): Add class tags to
127         published footnotes and footnote references.  Thanks to Scott
128         Jaderholm for the idea.
130         * lisp/muse-latex.el (muse-latex-markup-strings): Revert change to
131         link-and-anchor, on the recommendation of the original submitter.
133 2007-05-14  Michael Olson  <mwolson@gnu.org>
135         * lisp/muse-latex.el (muse-latex-markup-strings): Use better
136         link-and-anchor markup.  Thanks to Jean Magnan de Bornier for the
137         suggestion.
139         * lisp/muse-publish.el (muse-publish-url): Pass the url without a
140         file extension as the fourth argument.
142         * README, texi/muse.texi (Getting Help and Reporting Bugs):
143         Mention the new muse-el-logs mailing list.
145 2007-05-13  Michael Olson  <mwolson@gnu.org>
147         * lisp/muse-protocols.el (muse-resolve-url): Don't concatenate
148         "\`" here.  This fixes a problem with publishing custom URLs.
150 2007-05-12  Michael Olson  <mwolson@gnu.org>
152         * lisp/muse-blosxom.el (muse-blosxom-update-page-date-alist): Only
153         update the list if the current buffer is associated with a file.
154         This fixes a bug with M-x muse-publish-region in a temporary
155         buffer.
157 2007-05-01  Michael Olson  <mwolson@gnu.org>
159         * lisp/muse-publish.el (muse-publish-region): Remove read-only
160         properties from the published buffer, so that the results can be
161         manually tweaked.
163 2007-04-23  Michael Olson  <mwolson@gnu.org>
165         * lisp/muse-publish.el (muse-publish-markup-footnote): If we can't
166         find the footnote that goes with a reference, leave the reference
167         as-is.  This fixes an error where control characters could be
168         placed in a published document.
170 2007-04-22  Michael Olson  <mwolson@gnu.org>
172         * IDEAS.muse: Add muse-slides.el to list of things to include
173         before release.
175         * lisp/muse-protocols.el (muse-url-protocols): Remove stray quote
176         character.
177         (muse-protocol-find): Find protocols correctly.  Rewrite to use
178         catch/throw.
179         (muse-browse-url): Don't concatenate "\`" here.  Together, this
180         fixes a bug with browsing woman:// links.
182         * lisp/muse-project.el (muse-project-alist-styles): Deal with case
183         where entry-dir has a trailing backslash.
184         (muse-project-publish-file): If a style is malformed, skip it and
185         display a warning message.  This should help people figure out
186         where the problem is.
188 2007-04-21  Michael Olson  <mwolson@gnu.org>
190         * lisp/muse-latex2png.el (muse-publish-math-tag): If using the
191         yet-to-be-included "contex" publishing style, use "$$" rather
192         than "\[" and "\]".  Thanks to Jean Magnan de Bornier for pointing
193         this out.
195 2007-04-20  Michael Olson  <mwolson@gnu.org>
197         * lisp/muse-publish.el (muse-publish-inhibit-style-hooks): New
198         variable that causes the :before and :before-end hooks to be
199         ignored when non-nil.
200         (muse-publish-markup-region): Use it.  Also, guarantee that point
201         is at end of region after publishing.
202         (muse-publish-mark-up-tag): Simplify, taking advantage of the new
203         variable.
205 2007-04-19  Michael Olson  <mwolson@gnu.org>
207         * IDEAS.muse: New file containing a list of ideas we have for new
208         features, or patches that have yet to be applied.
210         * README: Call it "Emacs Muse", not "the Emacs Muse".  No need to
211         be so confusing.
213         * lisp/muse-html.el (muse-html-table-attributes): Fix typo in
214         docstring.
216         * lisp/muse-publish.el (muse-publish-markup-tags): Handle
217         <literal> tags with muse-publish-literal-tag, rather than
218         muse-publish-mark-read-only.
219         (muse-publish-literal-tag): New function that publishes the
220         <literal> tag.  It adds the ability to add the optional "style"
221         and "exact" elements, which cause text to only be included if the
222         current publishing style matches some criteria.  The text will be
223         removed otherwise.  Thanks to Jim Ottaway for the implementation.
224         (muse-publish-mark-up-tag): Let the <markup> tag take the
225         additional optional elements "style" and "exact", with much the
226         same effect as the <literal> improvements, but after calling
227         "function" or publishing the region first.  Make it possible to
228         put <content> tags in <markup> regions in HTML publishing.
230 2007-04-12  Michael Olson  <mwolson@gnu.org>
232         * lisp/muse-publish.el (muse-publish-markup-heading): Make sure
233         that a blank line always exists after a heading.  This fixes a bug
234         in Docbook paragraph detection.  Thanks to Jean Magnan de Bornier
235         for the report.
237         * lisp/muse-xml.el (muse-xml-markup-regexps): Update paragraph
238         detection regexp to that which is used in Docbook and HTML
239         publishing styles.
241 2007-04-02  Michael Olson  <mwolson@gnu.org>
243         * README (muse-el-announce): Make a listing of mailing lists,
244         rather than pointing to the old EmacsWikiMailingList page.  Thanks
245         to Andreas Roehler for noticing.
247 2007-04-01  Michael Olson  <mwolson@gnu.org>
249         * lisp/muse-publish.el (muse-publish-date-format): Add
250 `       customization type and group.
251         (muse-publish-region): New interactive function that publishes a
252         region to a new buffer.
254         * texi/muse.texi: Use "document" rather than "manual".
256 2007-03-31  Michael Olson  <mwolson@gnu.org>
258         * lisp/muse-publish.el (muse-style-derived-p): Fix bug where the
259         expression (muse-style-derived-p "latex" (muse-style "latex"))
260         yielded nil.  It now yields t, as expected.  Thanks to Jim Ottaway
261         for the catch.
263 2007-02-25  Michael Olson  <mwolson@gnu.org>
265         * lisp/muse-publish.el (muse-publish-date-format): New option that
266         specifies how to format the date when publishing Muse pages.
267         Thanks to Thomas Gehrlein for the suggestion.
268         (muse-publish-markup-buffer): Use it.
270 2007-02-23  Michael Olson  <mwolson@gnu.org>
272         * README: Add Prerequisites section to mention which versions of
273         Emacs work with Muse.  Thanks to Exal de Jesus Garcia Carrillo for
274         the suggestion.  Update link destination for Muse's page on
275         emacswiki.org.
277 2007-02-15  Michael Olson  <mwolson@gnu.org>
279         * lisp/muse.el (muse-goto-tag-end): Modify regexp to allow tags to
280         be not just at beginning of line.  This fixes an error with the
281         <class> tag.  Thanks to Jim Pivarski for the report.
283 2007-02-14  Michael Olson  <mwolson@gnu.org>
285         * lisp/muse-publish.el (muse-publish-classify-url): Check to see
286         whether something is an image before checking to see if it is a
287         URL.  Thanks to ITSUMI ken-ichi for the report.
289 2007-02-13  Michael Olson  <mwolson@gnu.org>
291         * lisp/muse-publish.el (muse-publish-markup-regexps): Handle
292         comments that have no text better.  Thanks to fang.lungang for the
293         report.
294         (muse-publish-markup-comment): Deal with case where no comment
295         text is provided.
297 2007-01-23  Michael Olson  <mwolson@gnu.org>
299         * lisp/muse-publish.el (muse-publish-ensure-block-tag): New macro
300         that ensures that at least one blank line exists at the given
301         position.  This is used to avoid paragraph detection problems when
302         block-level tags like <example> immediately follow a paragraph.
303         Thanks to Hans Ekbrand for the report.
304         (muse-publish-example-tag): Use it.
306 2007-01-19  Michael Olson  <mwolson@gnu.org>
308         * lisp/muse-latex2png.el (muse-publish-math-tag): Only remove the
309         previous blank line if we are publishing in Latex.  Otherwise,
310         that wouldn't be the right thing, so leave it be.
312 2007-01-17  Michael Olson  <mwolson@gnu.org>
314         * lisp/muse-latex2png.el (muse-publish-math-tag): Don't put
315         multiple centered math lines on the same line; keep them on
316         different lines.  Use \[ math-text \] instead of $$math-text$$,
317         since the latter seems to be deprecated.  Thanks to Jody Klymak
318         for the pointer.
320 2007-01-15  Michael Olson  <mwolson@gnu.org>
322         * lisp/muse-latex2png.el (muse-publish-latex-tag)
323         (muse-publish-math-tag): Publish region read-only when current
324         style is Latex-derived, so that Muse does not escape it.
325         (muse-publish-math-tag): If 6 or more spaces come before the tag,
326         surround the region with "$$" rather than "$".  This is the Muse
327         syntax for something centered, so it should be a good fit.
329 2007-01-15  Valery V. Vorotyntsev  <valery.vv@gmail.com>
331         * lisp/muse-protocols.el (muse-url-protocols): Add "woman://"
332         protocol.
333         (muse-browse-url-man): Change man page URL format.  The code is
334         simpler when the section is left inside parentheses.
335         (muse-browse-url-woman): New function.
337 2007-01-14  Michael Olson  <mwolson@gnu.org>
339         * AUTHORS: Bookkeeping.
341         * lisp/muse-latex2png.el: Associate <math> tag with
342         muse-publish-math-tag, not muse-publish-latex-tag.  Thanks to Jody
343         Klymak for the report.
344         (muse-publish-math-tag): Use muse-insert-markup for the "$"
345         characters, so they don't get escaped.
347         * lisp/muse-publish.el (muse-style-derived-p-1): New function to
348         make muse-style-derived-p easier to implement.
349         (muse-style-derived-p): If the style is not provided, fetch it and
350         check to see if the car is a string.  This should fix the other
351         problem that was reported.
353         * texi/muse.texi (Projects): Apply patch from Bradley M. Kuhn that
354         explains a case where setting muse-file-extension to nil can cause
355         unexpected behavior.
357 2007-01-09  Michael Olson  <mwolson@gnu.org>
359         * lisp/muse-publish.el (muse-publish-markup-regexps): Make
360         comments higher priority than tags.  Thanks to Stefan van der Walt
361         for the report.
363 2007-01-08  Michael Olson  <mwolson@gnu.org>
365         * lisp/muse-publish.el (muse-markup-tag-info): Use the given
366         argument rather than calling match-string.  Thanks to Stefan van
367         der Walt for the report.  This should fix a bug with publishing
368         <include file="..." markup="example">.
370 2007-01-06  Michael Olson  <mwolson@gnu.org>
372         * Makefile (debclean): New rule split from debrevision and
373         debrelease.
374         (debbuild): Take distributor into account.
376         * Makefile.defs (DISTRIBUTOR): New field that tracks what
377         vendor/distributor we are building for.
379 2007-01-04  Michael Olson  <mwolson@gnu.org>
381         * lisp/muse-html.el (muse-html-src-tag): Remove initial blank
382         line.
384         * lisp/muse-publish.el (muse-publish-markup-tags): Make "src"
385         point to muse-publish-src-tag by default, since <src> and
386         <example> have different parameters.
387         (muse-publish-src-tag): New barebones publishing function for
388         <src>, which is superseded when publishing in an HTML-based style.
390 2007-01-03  Michael Olson  <mwolson@gnu.org>
392         * lisp/muse-html.el (muse-html-src-tag): Document.
394         * lisp/muse-publish.el (muse-publish-call-tag-on-buffer): New
395         command that calls a given tag on the current buffer.  Attributes
396         may be passed.
397         (muse-publish-examplify-buffer, muse-publish-versify-buffer): Use
398         it.
399         (muse-publish-srcify-buffer): New function that allows
400         markup="src" in the <include> tag.
401         (muse-publish-get-and-delete-attr): New macro that gets an
402         attribute from a list and removes the first instance of that
403         attribute from said list.
404         (muse-publish-markup-attribute): Handle markup="src".
405         (muse-publish-command-tag, muse-publish-include-tag): Use
406         muse-publish-get-and-delete-attr.  This allows the remaining
407         attributes to be passed.
409         * texi/muse.texi (Tag Summary): Update for new <src> tag as well
410         as changes to <command> and <include>.
412 2006-12-30  Michael Olson  <mwolson@gnu.org>
414         * NEWS: Update.
416         * experimental/muse-mathml.el (muse-publish-mathml-tag): Rename
417         from muse-publish-math-tag to avoid conflict with
418         muse-latex2png.el.
420 2006-12-23  Michael Olson  <mwolson@gnu.org>
422         * lisp/muse-latex2png.el: Update header, since this has been
423         rewritten sufficiently to not need an assignment from the original
424         author.
425         (muse-latex2png-use-xhtml): Remove, since we now autodetect this.
426         (muse-latex2png): Use two underscores to separate prefix and hash.
427         (muse-latex2png-region): New function split from
428         muse-publish-latex-tag that can be used easily by other code.
429         Detect whether we are using an HTML-based publishing style, and
430         insert a simpler markup if we are not.  If we are using a
431         Latex-based publishing style, do not generate an image, and leave
432         the region alone.  Return the path of the generated image, in case
433         other functions want to use this programmatically.
434         (muse-publish-latex-tag): Set a default prefix based on the name
435         of the current file.
436         (muse-publish-math-tag): New tag that surrounds the region with
437         "$" characters, so that it becomes a Latex math region, and then
438         publishes it.
440         * lisp/muse-publish.el (muse-style-derived-p): New function that
441         returns non-nil if a given style, or the current style if omitted,
442         is equal to or derived from the given base style.  This is useful
443         in <lisp> tags, because it allows the user to specify markup that
444         is only to be inserted for one particular style.
446 2006-12-22  Michael Olson  <mwolson@gnu.org>
448         * lisp/muse-html.el (muse-html-markup-tags): Add <src> tag.
449         (muse-html-src-tag): New function which publishes the <src> tag.
450         Thanks to Clinton Ebadi and Charles Wang for the initial
451         implementations.
453         * lisp/muse-publish.el (muse-publish-markup-tags): Add <src> tag.
455 2006-12-21  Michael Olson  <mwolson@gnu.org>
457         * examples/johnw/muse-johnw.el: Update for preferred
458         muse-derive-style usage.  Rename to muse-init.el.
460         * examples/mwolson/muse-init.el: Update.
462         * lisp/muse-book.el (muse-book-publish): New function split from
463         muse-book-publish-project.  This is used in the definitions for
464         the book-latex and book-pdf styles.
465         (muse-book-publish-p): New function split from muse-book-publish.
466         (muse-book-get-directives): New function that retrieves the
467         publishing directives from the given file.
468         (muse-book-publish): Use muse-book-get-directives to set the title
469         if no title was specified.
471         * lisp/muse-project.el (muse-project): Add :publish-project entry
472         to widget.
473         (muse-read-project, muse-project-find-file): Message fix.
474         (muse-project-publish-file-default): New function split from
475         muse-project-publish-file.
476         (muse-project-publish-file): Allow file-level publishing function
477         to be specified by the :publish element.  The default is
478         muse-project-publish-file-default.
479         (muse-project-publish-default): New function split from
480         muse-project-publish.
481         (muse-project-publish): Allow project-level publishing function to
482         be specified by :publish-project element.  The default is
483         muse-project-publish-default.
485         * lisp/muse-publish.el (muse-publish-file): Message fix.
487         * texi/muse.texi (Book): Mention new way to publish books and
488         provide an example, since the process may be non-obvious.
490 2006-12-20  Michael Olson  <mwolson@gnu.org>
492         * lisp/muse-docbook.el (muse-docbook-munge-buffer): Split out
493         content-modifying code from the rest of
494         muse-docbook-finalize-buffer.
496         * lisp/muse-groff.el (muse-groff-munge-buffer): Rename from
497         muse-groff-finalize-buffer, since it adds content to the buffer.
499         * lisp/muse-html.el (muse-html-munge-buffer): Split out
500         content-modifying code from the rest of muse-html-finalize-buffer.
501         This fixes a bug when using <include> with <content> tags.
503         * lisp/muse-journal.el (muse-journal-html-munge-buffer)
504         (muse-journal-latex-munge-buffer)
505         (muse-journal-rss-munge-buffer): Rename, since they add content to
506         the buffer.
508         * lisp/muse-latex.el (muse-latex-munge-buffer): Rename from
509         muse-latex-finalize-buffer, since it adds content to the buffer.
511         * lisp/muse-mode.el:
512         * lisp/muse-project.el:
513         * lisp/muse-publish.el:
514         * lisp/muse.el: Fix recursive load error.
516         * lisp/muse-texinfo.el (muse-texinfo-munge-buffer): Rename from
517         muse-texinfo-finalize-buffer, since it adds content to the buffer.
519         * lisp/muse-wiki.el: Comment cleanup.
521         * lisp/muse-xml.el (muse-xml-charset-default): Docfix.
523 2006-12-17  Michael Olson  <mwolson@gnu.org>
525         * lisp/muse-latex.el (muse-latex-header, muse-latexcjk-header):
526         Remove the definition of \comment, since Latex already has comment
527         syntax.
528         (muse-latex-markup-strings): Use the Latex comment syntax, rather
529         than our own.  Thanks to Ryan Stutsman for pointing this out.
531 2006-12-02  Michael Olson  <mwolson@gnu.org>
533         * lisp/muse-html.el (muse-html-insert-contents): Tweak regexp so
534         that this can generate a proper table of contents for Planner HTML
535         publishing.
537 2006-12-01  Michael Olson  <mwolson@gnu.org>
539         * lisp/muse.el (muse-replace-regexp-in-string): In case someone is
540         using a very old Emacs, avoid an infinite loop that could occur
541         when the regexp is an empty string.
543 2006-11-26  Michael Olson  <mwolson@gnu.org>
545         * NEWS: Bring up to date.
547         * lisp/muse-docbook.el (muse-docbook-markup-paragraph): Fix nested
548         list issues and multiple-stanza verse issues.  This takes care of
549         all of the markup issues I was worried about.
551         * lisp/muse-project.el (muse-project-ignore-regexp): Minor docfix.
552         (muse-project-publish-private-files): New option that indicates
553         whether files with private filesystem permissions should be
554         published.  The default is to publish them, since it avoids
555         confusion in new users.
556         (muse-project-private-p): Use it.
558 2006-11-19  Michael Olson  <mwolson@gnu.org>
560         * lisp/muse-project.el (muse-project-resolve-link): If no remote
561         style is found, which means that the link is not a Muse page, do
562         not add a suffix or prefix to it.  This should fix the
563         "[[thing.owl]]" bug that Phillip Lord reported.
565         * lisp/muse-publish.el (muse-publish-link-file): Simplify by
566         removing unused 2nd argument.
568 2006-11-17  Michael Olson  <mwolson@gnu.org>
570         * lisp/muse-publish.el (muse-publish-surround-text): Fix bug in
571         latex publishing where nested enumerated lists would be squashed
572         together at the end.
574 2006-11-16  Michael Olson  <mwolson@gnu.org>
576         * lisp/muse-latex.el (muse-latex-markup-strings): Make an ordered
577         list embedded in a definition list look right.  This also allows
578         for definitions to be separated from their terms, much like the
579         way HTML does it by default, if the user puts a blank line or a
580         line break between the term and the definition.  If the term and
581         definition are on the same line, they will be that way in the
582         output as well.
584 2006-11-11  Michael Olson  <mwolson@gnu.org>
586         * muse.texi (Markup Strings): Fix typo.  Thanks to Haiyong Zheng
587         for the report.
588         (Getting Help and Reporting Bugs): Fix emacswiki.org page URL.
590 2006-11-07  Michael Olson  <mwolson@gnu.org>
592         * lisp/muse.el (muse-version): Make Emacs Muse 3.02.93, the third
593         release candidate for Muse 3.03, available.
595         * NEWS: Update.
597 2006-11-06  Michael Olson  <mwolson@gnu.org>
599         * lisp/muse-project.el (muse-project-find-file): Fix bug when
600         following a relative link worked even when the path was incorrect.
602 2006-11-04  John Sullivan  <john@wjsullivan.net>
604         * lisp/muse-mode.el (muse-mode-map): Remove C-c C-c binding for
605         muse-follow-name-at-point to reduce collisions with other
606         modes (Planner).
608         * muse.texi (Keystroke Summary): Remove C-c C-c binding.
610 2006-11-04  Michael Olson  <mwolson@gnu.org>
612         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
613         optional, and make interwiki delimiter a regular rather than shy
614         group.
615         (muse-wiki-handle-implicit-interwiki): Rename from
616         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
617         (muse-wiki-handle-explicit-interwiki): New function that is
618         smarter about where an explicit link ends in a buffer.  This
619         allows you to refer to page names with invalid Wiki characters,
620         such as underscores and dashes, merely by enclosing them in double
621         brackets.  Also, a bug with recognizing project names too loosely
622         has been fixed.
624 2006-11-03  Michael Olson  <mwolson@gnu.org>
626         * lisp/muse-project.el (muse-project-page-file): Make relative
627         links work as expected, hopefully.
629         * lisp/muse-publish.el (muse-publish-this-file): Set the current
630         output style manually, since it will differ from anything in the
631         publishing style list.
633 2006-10-30  Michael Olson  <mwolson@gnu.org>
635         * lisp/muse-colors.el (muse-colors-markup): Remove note about
636         grouping elements, since that no longer applies.
637         (muse-colors-custom-tags): Explicitly match against
638         muse-tag-regexp to get the match-data set the way we want.  This
639         really fixes the <example> highlighting bug that Stefan reported.
640         (muse-configure-highlighting): Set the original value to the
641         symbol, not the modified value.  Re-use modified rules properly.
643         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
644         introduced yesterday.
646 2006-10-29  Michael Olson  <mwolson@gnu.org>
648         * examples/mwolson: Update my example configuration.
650         * NEWS: Update.
652         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
653         without a regexp in the first position before iterating through
654         them to build muse-colors-vector.  This fixes a bug with the
655         display of <example> tags.  Thanks to Stefan Reichör for the
656         report.
658         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
659         files in projects to be linked to.
661         * lisp/muse-publish.el (muse-publish-url): Allow the original link
662         to serve as a description for a URL, as long as it differs from
663         the destination URL.  This fixes the description of WikPage links
664         in PDF output.
665         (muse-publish-link-file): Check to see whether the given link
666         points at a valid file.  If so, return it.  Otherwise, apply other
667         transforms like prefix and link suffix.
669         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
670         "/", it is a file or directory, not a Muse page.  Thanks to
671         Phillip Lord for the suggestion.
673         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
674         of the current page as the local path, instead of duplicating the
675         remote file's path.  This probably fixes at least one reported
676         bug. since it's quite major.
677         (muse-wiki-update-project-file-regexp)
678         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
679         passed to regexp-opt, since that can cause Emacs 21 to throw an
680         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
681         DOT edu for the report.
682         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
684 2006-10-28  Michael Olson  <mwolson@gnu.org>
686         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
687         (muse-project-resolve-link): If the given style does not have a
688         link-suffix, default to suffix.  This fixes a bug I was noticing
689         when linking to a file that was published in both PDF and HTML
690         form.
692         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
693         function that is used as a callback to determine the initial
694         amount of indentation that the current dl item has.
695         (muse-publish-surround-dl): Use it.  Pass the initial indent value
696         and the post-indent value, instead of trying to determine them
697         both.
698         (muse-publish-strip-list-indentation): New function stripped from
699         `muse-publish-surround-text' for readability.
700         (muse-publish-surround-text): Instead of taking a determine-indent
701         value, take a determine-indent-func function, which is called just
702         after finding the next list item.  If we are asked to determine
703         the amount of indentation, concatenate indent and post-indent the
704         first time around.  This effectively fixes all known definition
705         list issues.
707 2006-10-16  Michael Olson  <mwolson@gnu.org>
709         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
710         other software -- namely, Planner -- can detect whether they are
711         using a version of Muse that supports nested tags.
712         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
713         muse-publish-goto-tag-end.
715         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
716         Adapt for nested tags.
718         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
719         <class> tag is nestable.  Thanks to Phillip Lord for noticing
720         this.
722         * lisp/muse-publish.el (muse-publish-markup-tag)
723         (muse-publish-quote-tag): Use muse-goto-tag-end.
725         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
727 2006-10-15  Michael Olson  <mwolson@gnu.org>
729         * AUTHORS: Bookkeeping.
731         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
732         tag.
734         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
735         tags.
737         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
739         * lisp/muse-import-docbook.el (muse-import-docbook)
740         (muse-import-docbook-files): Docfix.
741         (muse-import-docbook-get-title): Remove cl.el-ism.
743         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
745         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
747         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
749         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
750         (muse-next-reference, muse-previous-reference): Minor whitespace
751         changes.
752         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
753         the suggestion.
755         * lisp/muse-poem.el (muse-poem-tag): Ditto.
757         * lisp/muse-publish.el (muse-publish-markup-tags)
758         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
759         element and make 4th element determine whether tags are nestable.
760         (muse-publish-goto-tag-end): New function that moves to the end of
761         a tag.  Handle nested tags when NESTED is non-nil.
762         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
763         5th element for function.
764         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
765         this on several scenarios, and it seems to work.
766         (muse-publish-surround-text): Accept new optional argument
767         LIST-ITEM which determines the regexp to use for list items.  The
768         default is to use muse-list-item-regexp.
770         * muse.texi (Markup Tags): Mention nestable tags.
772         * NEWS: Mention new files.
774 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
776         * lisp/muse-import-docbook.el: New file that converts Docbook XML
777         into Muse format.
779         * lisp/muse-import-xml.el: New file that provides helper routines
780         for converting XML-ish files to Muse format.
782 2006-10-10  Michael Olson  <mwolson@gnu.org>
784         * NEWS: Update for 3.02.7 bugfix release.
786 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
788         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
789         using the value in the muse #date directive.
790         (muse-blosxom-use-metadate): New option that determines whether or
791         not to use the #postdate directive.
792         (muse-blosxom-format-date): Convert a date string to PyBlosxom
793         metadate plugin format.
795 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
797         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
798         recognised URLs.
800         * muse.texi: Clarify handling of implicit links by mentioning
801         which characters can prevent Muse from recognizing something as an
802         implicit link.
804 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
806         * lisp/muse-mode.el (muse-next-reference)
807         (muse-previous-reference): Fix bug #6367 by moving point to the
808         beginning of the link.
810 2006-09-26  Michael Olson  <mwolson@gnu.org>
812         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
813         beginning-of-line.  This should fix a bug that was noticed in
814         recent Emacs 22 builds.
816         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
817         eval-and-compile block to avoid a compiler warning.
819 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
821         * lisp/muse-backlink.el (muse-backlink-split-string):
822         Compatibility with Emacs versions < 22
823         (muse-backlink-pending): New internal variable
824         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
825         that backlinks are inserted at the right time.
826         (muse-backlink-insert-hook-func): Remove unwind-protection; check
827         for pending backlink, and that this is the targe page.
828         (muse-backlink-handle-link): Don’t handle the link if we are
829         already handling one. Return the link as well as the parent links.
831 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
833         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
834         #6942 - muse-blosxom-new-entry fails when using tags.
836 2006-09-14  Michael Olson  <mwolson@gnu.org>
838         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
839         compiler warning.
841 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
843         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
844         function: Protect all wikiwords from START to END from further
845         processing.
846         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
848 2006-09-13  Michael Olson  <mwolson@gnu.org>
850         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
851         adopted from Jim Ottaway's patch.  It removes links from the
852         heading, and then marks the region read-only to inhibit WikiWord
853         detection.
855 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
857         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
858         special handling for headings.
859         (muse-texinfo-remove-links): New function that removes explicit
860         links from the given strings, replacing them with a description.
862 2006-09-11  Michael Olson  <mwolson@gnu.org>
864         * muse.texi (Getting Help and Reporting Bugs): Mention the
865         muse-el-internationalization mailing list.
867         * lisp/muse.el (muse-path-sans-extension): New function that acts
868         like file-name-sans-extension, but guarantees to never modify the
869         directory part of the path.  Thanks to Evan Monroig for
870         investigating this.
872         * lisp/muse-book.el (muse-book-publish-project): Use
873         muse-path-sans-extension instead of file-name-sans-extension.
875         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
876         Ditto.
878 2006-08-30  Michael Olson  <mwolson@gnu.org>
880         * muse.texi (Blosxom Requirements): Fix typo.
882         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
883         directories for bzr and darcs.
885         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
886         contrib/pyblosxom/getstamps.py: Update version and headers.
888 2006-08-27  Michael Olson  <mwolson@gnu.org>
890         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
891         nil values before they get to mapconcat.  This fixes a lockup when
892         muse-wiki-match-all-project-files is nil.
894         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
895         (muse-wiki-ignore-implicit-links-to-current-page)
896         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
897         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
898         (muse-wiki-publish-small-title-words)
899         (muse-wiki-publish-pretty-title): Docfix.
900         (muse-wiki-update-local-wikiword-regexp): Rename from
901         muse-wiki-update-local-wikiword-regexp.  Set
902         muse-wiki-project-file-regexp instead of
903         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
904         take muse-wiki-use-wikiword into account, since this is a
905         different concept now.
906         (muse-wiki-update-wikiword-regexp): Remove.
907         (muse-wiki-wikiword-regexp): In-line the :set function.
908         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
910 2006-08-26  Michael Olson  <mwolson@gnu.org>
912         * lisp/muse-publish.el (muse-publish-surround-text): When looking
913         for indented list items, ignore blank lines.
915         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
916         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
917         mapconcat.  This should hopefully fix a problem with large amounts
918         of files with spaces in their name.  Thanks to Greg Detre for the
919         report.
921 2006-08-24  Michael Olson  <mwolson@gnu.org>
923         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
924         numbers from the argument to format-time-string.  This fixes an
925         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
927 2006-08-18  Michael Olson  <mwolson@gnu.org>
929         * lisp/muse-project.el (muse-project-file-entries): Since we are
930         given a full path, match against the filename as well.  This fixes
931         an issue where backup files were being added to the file alist.
933         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
934         from muse-html.el.
936 2006-08-12  Michael Olson  <mwolson@gnu.org>
938         * Makefile (.PHONY): Don't use line continuations.
939         (realclean fullclean): Call realclean in subdirs, not distclean.
940         (distclean): Don't call realclean, since this would wipe out our
941         autoloads file.
942         (dist): Use correct path to autoloads file.
944         * NEWS: Catch up with the latest changes.
946         * experimental/Makefile (.PHONY): Wrap long line.
948         * lisp/Makefile (distclean): Do the same thing as "clean", not
949         "realclean".
951         * lisp/muse-project.el (muse-project-get-applicable-style):
952         Indentation tweak.
953         (muse-project-ignore-regexp, muse-project-recurse-directory):
954         Docfix.
955         (muse-project-of-file): Try the ignored files regexp against the
956         base filename as well as the entire path.
958         * lisp/muse-publish.el (muse-publish-this-file): Display message
959         if the buffer is not associated with any file, so that we avoid
960         errors later on.
961         (muse-publish-url-desc): New function taken from muse-publish-url
962         that causes a URL description to be transformed.
963         (muse-publish-url): Call muse-publish-url-desc on either the
964         description or the original URL if it will be used as a
965         description.  Accept the original URL as an argument, in case it
966         was transformed earlier.
967         (muse-publish-insert-url): Pass original URL as an argument.
968         (muse-publish-markup-link): Make this somewhat easier to follow.
969         Pass original URL as argument.
970         (muse-publish-get-style): If the same style is used to publish to
971         two different directories, prompt the user for which directory to
972         use.
973         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
974         latest changes.
975         (muse-publish-markup-url): Pass original URL as an argument.  This
976         fixes the "nil" description for bare URLs that was in 3.02.91.
977         Nothing like finding a bug just after completing the announcement
978         of a release.
980         * lisp/muse.el: Use defalias whenever convenient.
981         (muse-version): Set version to 3.02.92 (3.03 RC2).
983 2006-08-10  Michael Olson  <mwolson@gnu.org>
985         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
986         style does not derive from any other class, return `t' here.
987         This, along with the corresponding change to muse-publish.el,
988         fixes a problem with the table of contents getting inserted
989         multiple times for custom html-based styles.
990         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
991         smarter method for table centering that works with XHTML.
993         * lisp/muse-latex2png.el Rename all functions to have a
994         "muse-latex2png" prefix.  Turn all variables into customizable
995         options in the muse-latex2png group.
996         (muse-latex2png-img-dest): New option specifying where to place
997         the images.
998         (muse-latex2png-template): New option containing the template to
999         use for the surrounding LaTeX code.
1000         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
1001         compliance.
1002         (muse-latex2png-move2pubdir): Avoid multiple redundant error
1003         messages when something else goes wrong.  Create the image
1004         subdirectory if it doesn't exist already -- thanks to Christian
1005         Straßer for the report.  Expand the filename properly.
1006         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
1007         and filename expansion.
1008         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
1009         the default directory properly.
1011         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
1012         do not run the same function twice.
1014 2006-08-08  Michael Olson  <mwolson@gnu.org>
1016         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
1017         introduced wrong-type-argument error.
1019         * lisp/muse-html.el (muse-html-markup-strings)
1020         (muse-xhtml-markup-string): Cause table definition that contains
1021         image to be center-aligned.  This should fix an issue with images
1022         not being centered when captions are very long.
1024         * lisp/muse-publish.el (muse-publish-table-fields): Trim
1025         whitespace from fields once we have split them up.
1027         * lisp/muse.el (muse-trim-whitespace): New function that strips
1028         leading and trailing whitespace from a string.
1030 2006-08-07  Michael Olson  <mwolson@gnu.org>
1032         * NEWS: Update through patch-95.
1034         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
1035         to match the tags.
1036         (muse-colors-explicit-link): Show images in link descriptions if
1037         inlined images are enabled.
1039         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
1040         definitions for 'image-with-desc, 'image, and 'image-link.
1041         (muse-docbook-markup-paragraph): If an inlined image begins a
1042         paragraph, insert <para> before it.
1043         (muse-docbook-fixup-images): New function that upper-cases the
1044         "format" attribute of the <imagedata> tag.
1045         (muse-docbook-finalize-buffer): Call it.
1047         * lisp/muse-html.el (muse-html-markup-strings): Publish images
1048         with descriptions as centered tables, with a centered caption
1049         underneath.  The resulting look is consistent with the way that
1050         they are published in the LaTeX style.  Thanks to Jody Klymak for
1051         the suggestion.
1052         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
1053         valid way to center a table.
1054         (muse-html-markup-paragraph): Use class="image" instead of
1055         "image-link" for paragraphs that start with an embedded image.
1057         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
1058         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
1059         suggestion.
1060         (muse-latex-markup-specials-image): New option that enables
1061         escaping of specials in images.  This was split from the URL
1062         specials.
1063         (muse-latex-decide-specials): Handle 'image context.
1064         (muse-latex-fixup-dquotes): Go to beginning of document, instead
1065         of relying on caller to do this for us.
1067         * lisp/muse-publish.el (muse-publish-escape-specials): Document
1068         'image context.
1069         (muse-publish-url): Use 'image context for images.  Use 'image
1070         instead of 'image-link and 'image-link in place of
1071         'url-with-image.  Separate the image file from its extension so
1072         that docbook and texinfo can publish images correctly.
1073         (muse-publish-markup-link): Don't force a description if one is
1074         not given.  This fixes a bug where images without descriptions
1075         were being published as 'image-with-desc instead of 'image.
1077         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
1078         images the same as URLs.
1079         (muse-texinfo-markup-strings): Improve image markup to achieve an
1080         effect similar to that of the LaTeX publishing style.  Simplify
1081         'url string.
1083         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
1085         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
1086         when we have to use the custom version of this function.
1088         * muse.texi (Images): Explain how to toggle inlining of images and
1089         give better examples.  Mention captions and that captioned images
1090         should not be used inside of text paragraphs.
1091         (Markup Strings): Bring up-to-date with the changes made since
1092         3.02.
1094 2006-08-06  Michael Olson  <mwolson@gnu.org>
1096         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
1097         in the Emacs source tree.
1099         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
1100         in the Emacs source tree.
1102         * ChangeLog.3: New file created from the old ChangeLog.
1104         * Makefile.defs (VERSION): Set to 3.02.91.
1106         * NEWS: Update through patch-84.
1108         * lisp/muse.el (muse-version): Set to 3.02.91.
1110         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
1111         attributes.
1112         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
1113         delimiter are instead of hard-coding it.
1115         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
1116         (muse-mode): Make filling definition lists work better.  This
1117         should fix #5359.
1119         * lisp/muse-publish.el (muse-style-run-hooks): Use
1120         `muse-style-element' instead of `muse-get-keyword' here.  This
1121         should fix #6399.
1123         * muse.texi: Set version to 3.02.91 (3.02 RC2).
1125 See ChangeLog.3 for earlier changes.
1127 ;; Local Variables:
1128 ;; coding: utf-8
1129 ;; End: