Fix link-following bug with invalid relative links
[muse-el.git] / ChangeLog
blobc7c1058ad182c9f7ab5fc3f78a9e6169dfe82421
1 2006-11-06  Michael Olson  <mwolson@gnu.org>
3         * lisp/muse-project.el (muse-project-find-file): Fix bug when
4         following a relative link worked even when the path was incorrect.
6 2006-11-04  Michael Olson  <mwolson@gnu.org>
8         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Make page
9         optional, and make interwiki delimiter a regular rather than shy
10         group.
11         (muse-wiki-handle-implicit-interwiki): Rename from
12         muse-wiki-handle-interwiki.  Use match group 3 to get the page.
13         (muse-wiki-handle-explicit-interwiki): New function that is
14         smarter about where an explicit link ends in a buffer.  This
15         allows you to refer to page names with invalid Wiki characters,
16         such as underscores and dashes, merely by enclosing them in double
17         brackets.  Also, a bug with recognizing project names too loosely
18         has been fixed.
20 2006-11-03  Michael Olson  <mwolson@gnu.org>
22         * lisp/muse-project.el (muse-project-page-file): Make relative
23         links work as expected, hopefully.
25         * lisp/muse-publish.el (muse-publish-this-file): Set the current
26         output style manually, since it will differ from anything in the
27         publishing style list.
29 2006-10-30  Michael Olson  <mwolson@gnu.org>
31         * lisp/muse-colors.el (muse-colors-markup): Remove note about
32         grouping elements, since that no longer applies.
33         (muse-colors-custom-tags): Explicitly match against
34         muse-tag-regexp to get the match-data set the way we want.  This
35         really fixes the <example> highlighting bug that Stefan reported.
36         (muse-configure-highlighting): Set the original value to the
37         symbol, not the modified value.  Re-use modified rules properly.
39         * lisp/muse-wiki.el (muse-wiki-update-interwiki-regexp): Fix bug
40         introduced yesterday.
42 2006-10-29  Michael Olson  <mwolson@gnu.org>
44         * examples/mwolson: Update my example configuration.
46         * NEWS: Update.
48         * lisp/muse-colors.el (muse-configure-highlighting): Remove rules
49         without a regexp in the first position before iterating through
50         them to build muse-colors-vector.  This fixes a bug with the
51         display of <example> tags.  Thanks to Stefan Reichör for the
52         report.
54         * lisp/muse-project.el (muse-project-find-file): Permit non-Muse
55         files in projects to be linked to.
57         * lisp/muse-publish.el (muse-publish-url): Allow the original link
58         to serve as a description for a URL, as long as it differs from
59         the destination URL.  This fixes the description of WikPage links
60         in PDF output.
61         (muse-publish-link-file): Check to see whether the given link
62         points at a valid file.  If so, return it.  Otherwise, apply other
63         transforms like prefix and link suffix.
65         * lisp/muse-regexps.el (muse-file-regexp): If something ends in
66         "/", it is a file or directory, not a Muse page.  Thanks to
67         Phillip Lord for the suggestion.
69         * lisp/muse-wiki.el (muse-wiki-resolve-project-page): Use the path
70         of the current page as the local path, instead of duplicating the
71         remote file's path.  This probably fixes at least one reported
72         bug. since it's quite major.
73         (muse-wiki-update-project-file-regexp)
74         (muse-wiki-update-interwiki-regexp): Ensure that nil is never
75         passed to regexp-opt, since that can cause Emacs 21 to throw an
76         "maximum binding depth exceeded" error.  Thanks to xs32 AT cornell
77         DOT edu for the report.
78         (muse-wiki-handle-wikiword): Avoid a potential stringp error.
80 2006-10-28  Michael Olson  <mwolson@gnu.org>
82         * lisp/muse-project.el (muse-project-choose-style-by-link-suffix)
83         (muse-project-resolve-link): If the given style does not have a
84         link-suffix, default to suffix.  This fixes a bug I was noticing
85         when linking to a file that was published in both PDF and HTML
86         form.
88         * lisp/muse-publish.el (muse-publish-determine-dl-indent): New
89         function that is used as a callback to determine the initial
90         amount of indentation that the current dl item has.
91         (muse-publish-surround-dl): Use it.  Pass the initial indent value
92         and the post-indent value, instead of trying to determine them
93         both.
94         (muse-publish-strip-list-indentation): New function stripped from
95         `muse-publish-surround-text' for readability.
96         (muse-publish-surround-text): Instead of taking a determine-indent
97         value, take a determine-indent-func function, which is called just
98         after finding the next list item.  If we are asked to determine
99         the amount of indentation, concatenate indent and post-indent the
100         first time around.  This effectively fixes all known definition
101         list issues.
103 2006-10-16  Michael Olson  <mwolson@gnu.org>
105         * lisp/muse.el: Provide the 'muse-nested-tags feature so that
106         other software -- namely, Planner -- can detect whether they are
107         using a version of Muse that supports nested tags.
108         (muse-goto-tag-end): Moved from muse-publish.el and renamed from
109         muse-publish-goto-tag-end.
111         * lisp/muse-colors.el (muse-colors-tags, muse-colors-custom-tags):
112         Adapt for nested tags.
114         * lisp/muse-html.el (muse-html-markup-tags): Indicate that the
115         <class> tag is nestable.  Thanks to Phillip Lord for noticing
116         this.
118         * lisp/muse-publish.el (muse-publish-markup-tag)
119         (muse-publish-quote-tag): Use muse-goto-tag-end.
121         * lisp/muse-wiki.el ("muse-colors"): Adapt for nested tags.
123 2006-10-15  Michael Olson  <mwolson@gnu.org>
125         * AUTHORS: Bookkeeping.
127         * lisp/muse-blosxom.el (muse-blosxom-header): Indent code in lisp
128         tag.
130         * lisp/muse-groff.el (muse-groff-markup-tags): Adapt for nested
131         tags.
133         * lisp/muse-html.el (muse-html-markup-tags): Ditto.
135         * lisp/muse-import-docbook.el (muse-import-docbook)
136         (muse-import-docbook-files): Docfix.
137         (muse-import-docbook-get-title): Remove cl.el-ism.
139         * lisp/muse-import-xml.el (muse-import-xml): Fix compiler warning.
141         * lisp/muse-journal.el (muse-journal-latex-markup-tags): Ditto.
143         * lisp/muse-latex2png.el (muse-publish-markup-tags): Ditto.
145         * lisp/muse-mode.el (muse-previous-reference): Minor docfix.
146         (muse-next-reference, muse-previous-reference): Minor whitespace
147         changes.
148         (muse-mode-choose-mode): Add autoload cookie.  Thanks to Leo for
149         the suggestion.
151         * lisp/muse-poem.el (muse-poem-tag): Ditto.
153         * lisp/muse-publish.el (muse-publish-markup-tags)
154         (muse-publish-markup-header-footer-tags): Shift 4th element to 5th
155         element and make 4th element determine whether tags are nestable.
156         (muse-publish-goto-tag-end): New function that moves to the end of
157         a tag.  Handle nested tags when NESTED is non-nil.
158         (muse-publish-markup-tag): Call muse-publish-goto-tag-end.  Use
159         5th element for function.
160         (muse-publish-quote-tag): Handle nested quote tags.  I've tested
161         this on several scenarios, and it seems to work.
162         (muse-publish-surround-text): Accept new optional argument
163         LIST-ITEM which determines the regexp to use for list items.  The
164         default is to use muse-list-item-regexp.
166         * muse.texi (Markup Tags): Mention nestable tags.
168         * NEWS: Mention new files.
170 2006-10-15  Elena Pomohaci  <e.pomohaci@gmail.com>
172         * lisp/muse-import-docbook.el: New file that converts Docbook XML
173         into Muse format.
175         * lisp/muse-import-xml.el: New file that provides helper routines
176         for converting XML-ish files to Muse format.
178 2006-10-10  Michael Olson  <mwolson@gnu.org>
180         * NEWS: Update for 3.02.7 bugfix release.
182 2006-10-06  Sasha Kovar  <sasha@arcocene.org>
184         * lisp/muse-blosxom.el (muse-blosxom-header): Insert the date
185         using the value in the muse #date directive.
186         (muse-blosxom-use-metadate): New option that determines whether or
187         not to use the #postdate directive.
188         (muse-blosxom-format-date): Convert a date string to PyBlosxom
189         metadate plugin format.
191 2006-09-30  Stefan Schlee  <stefan_schlee@yahoo.com>
193         * lisp/muse-protocols.el: Fix bug #6741: Exclude colon in
194         recognised URLs.
196         * muse.texi: Clarify handling of implicit links by mentioning
197         which characters can prevent Muse from recognizing something as an
198         implicit link.
200 2006-09-26  Stefan Schlee  <stefan_schlee@yahoo.com>
202         * lisp/muse-mode.el (muse-next-reference)
203         (muse-previous-reference): Fix bug #6367 by moving point to the
204         beginning of the link.
206 2006-09-26  Michael Olson  <mwolson@gnu.org>
208         * lisp/muse-colors.el (muse-use-font-lock): Don't quote
209         beginning-of-line.  This should fix a bug that was noticed in
210         recent Emacs 22 builds.
212         * lisp/muse-backlink.el: Wrap muse-backlink-split-string in an
213         eval-and-compile block to avoid a compiler warning.
215 2006-09-25  Jim Ottaway  <j.ottaway@lse.ac.uk>
217         * lisp/muse-backlink.el (muse-backlink-split-string):
218         Compatibility with Emacs versions < 22
219         (muse-backlink-pending): New internal variable
220         (muse-backlink-get-mode-hook): Find the major mode hook to use, so
221         that backlinks are inserted at the right time.
222         (muse-backlink-insert-hook-func): Remove unwind-protection; check
223         for pending backlink, and that this is the targe page.
224         (muse-backlink-handle-link): Don’t handle the link if we are
225         already handling one. Return the link as well as the parent links.
227 2006-09-25  Sasha Kovar  <sasha@arcocene.org>
229         * lisp/muse-blosxom.el (muse-blosxom-new-entry): : Fix for bug
230         #6942 - muse-blosxom-new-entry fails when using tags.
232 2006-09-14  Michael Olson  <mwolson@gnu.org>
234         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): Silence
235         compiler warning.
237 2006-09-14  Jim Ottaway  <j.ottaway@lse.ac.uk>
239         * lisp/muse-texinfo.el (muse-texinfo-protect-wikiwords): New
240         function: Protect all wikiwords from START to END from further
241         processing.
242         (muse-texinfo-markup-heading): Use muse-texinfo-protect-wikiwords.
244 2006-09-13  Michael Olson  <mwolson@gnu.org>
246         * lisp/muse-texinfo.el (muse-texinfo-markup-heading): New function
247         adopted from Jim Ottaway's patch.  It removes links from the
248         heading, and then marks the region read-only to inhibit WikiWord
249         detection.
251 2006-09-13  Jim Ottaway  <j.ottaway@lse.ac.uk>
253         * lisp/muse-texinfo.el (muse-texinfo-markup-functions): Add
254         special handling for headings.
255         (muse-texinfo-remove-links): New function that removes explicit
256         links from the given strings, replacing them with a description.
258 2006-09-11  Michael Olson  <mwolson@gnu.org>
260         * muse.texi (Getting Help and Reporting Bugs): Mention the
261         muse-el-internationalization mailing list.
263         * lisp/muse.el (muse-path-sans-extension): New function that acts
264         like file-name-sans-extension, but guarantees to never modify the
265         directory part of the path.  Thanks to Evan Monroig for
266         investigating this.
268         * lisp/muse-book.el (muse-book-publish-project): Use
269         muse-path-sans-extension instead of file-name-sans-extension.
271         * lisp/muse-publish.el (muse-publish-file, muse-publish-url):
272         Ditto.
274 2006-08-30  Michael Olson  <mwolson@gnu.org>
276         * muse.texi (Blosxom Requirements): Fix typo.
278         * contrib/pyblosxom/getstamps.py (recurse): Ignore metadata
279         directories for bzr and darcs.
281         * contrib/pyblosxom/make-blog, contrib/pyblosxom/hardcodedates.py:
282         contrib/pyblosxom/getstamps.py: Update version and headers.
284 2006-08-27  Michael Olson  <mwolson@gnu.org>
286         * lisp/muse-colors.el (muse-configure-highlighting): Prune out any
287         nil values before they get to mapconcat.  This fixes a lockup when
288         muse-wiki-match-all-project-files is nil.
290         * lisp/muse-wiki.el (muse-wiki-match-all-project-files)
291         (muse-wiki-ignore-implicit-links-to-current-page)
292         (muse-wiki-interwiki-regexp, muse-wiki-interwiki-alist)
293         (muse-wiki-resolve-project-page, muse-wiki-handle-interwiki)
294         (muse-wiki-publish-small-title-words)
295         (muse-wiki-publish-pretty-title): Docfix.
296         (muse-wiki-update-local-wikiword-regexp): Rename from
297         muse-wiki-update-local-wikiword-regexp.  Set
298         muse-wiki-project-file-regexp instead of
299         muse-wiki-wikiword-regexp, as suggested by Per Sederberg.  Don't
300         take muse-wiki-use-wikiword into account, since this is a
301         different concept now.
302         (muse-wiki-update-wikiword-regexp): Remove.
303         (muse-wiki-wikiword-regexp): In-line the :set function.
304         (muse-wiki-handle-wikiword): Use muse-wiki-project-file-regexp.
306 2006-08-26  Michael Olson  <mwolson@gnu.org>
308         * lisp/muse-publish.el (muse-publish-surround-text): When looking
309         for indented list items, ignore blank lines.
311         * lisp/muse-wiki.el (muse-wiki-update-local-wikiword-regexp)
312         (muse-wiki-update-interwiki-regexp): Use regexp-opt instead of
313         mapconcat.  This should hopefully fix a problem with large amounts
314         of files with spaces in their name.  Thanks to Greg Detre for the
315         report.
317 2006-08-24  Michael Olson  <mwolson@gnu.org>
319         * lisp/muse-blosxom.el (muse-blosxom-new-entry): Remove the
320         numbers from the argument to format-time-string.  This fixes an
321         XEmacs bug.  Thanks to Michael Welle for the report and analysis.
323 2006-08-18  Michael Olson  <mwolson@gnu.org>
325         * lisp/muse-project.el (muse-project-file-entries): Since we are
326         given a full path, match against the filename as well.  This fixes
327         an issue where backup files were being added to the file alist.
329         * lisp/muse-docbook.el (muse-docbook-markup-regexps): Apply a fix
330         from muse-html.el.
332 2006-08-12  Michael Olson  <mwolson@gnu.org>
334         * Makefile (.PHONY): Don't use line continuations.
335         (realclean fullclean): Call realclean in subdirs, not distclean.
336         (distclean): Don't call realclean, since this would wipe out our
337         autoloads file.
338         (dist): Use correct path to autoloads file.
340         * NEWS: Catch up with the latest changes.
342         * experimental/Makefile (.PHONY): Wrap long line.
344         * lisp/Makefile (distclean): Do the same thing as "clean", not
345         "realclean".
347         * lisp/muse-project.el (muse-project-get-applicable-style):
348         Indentation tweak.
349         (muse-project-ignore-regexp, muse-project-recurse-directory):
350         Docfix.
351         (muse-project-of-file): Try the ignored files regexp against the
352         base filename as well as the entire path.
354         * lisp/muse-publish.el (muse-publish-this-file): Display message
355         if the buffer is not associated with any file, so that we avoid
356         errors later on.
357         (muse-publish-url-desc): New function taken from muse-publish-url
358         that causes a URL description to be transformed.
359         (muse-publish-url): Call muse-publish-url-desc on either the
360         description or the original URL if it will be used as a
361         description.  Accept the original URL as an argument, in case it
362         was transformed earlier.
363         (muse-publish-insert-url): Pass original URL as an argument.
364         (muse-publish-markup-link): Make this somewhat easier to follow.
365         Pass original URL as argument.
366         (muse-publish-get-style): If the same style is used to publish to
367         two different directories, prompt the user for which directory to
368         use.
369         (muse-publish-markup-header-footer-tags): Sync lisp tag with the
370         latest changes.
371         (muse-publish-markup-url): Pass original URL as an argument.  This
372         fixes the "nil" description for bare URLs that was in 3.02.91.
373         Nothing like finding a bug just after completing the announcement
374         of a release.
376         * lisp/muse.el: Use defalias whenever convenient.
377         (muse-version): Set version to 3.02.92 (3.03 RC2).
379 2006-08-10  Michael Olson  <mwolson@gnu.org>
381         * lisp/muse-html.el (muse-html-finalize-buffer): Since the html
382         style does not derive from any other class, return `t' here.
383         This, along with the corresponding change to muse-publish.el,
384         fixes a problem with the table of contents getting inserted
385         multiple times for custom html-based styles.
386         (muse-html-markup-strings, muse-xhtml-markup-strings): Use a
387         smarter method for table centering that works with XHTML.
389         * lisp/muse-latex2png.el Rename all functions to have a
390         "muse-latex2png" prefix.  Turn all variables into customizable
391         options in the muse-latex2png group.
392         (muse-latex2png-img-dest): New option specifying where to place
393         the images.
394         (muse-latex2png-template): New option containing the template to
395         use for the surrounding LaTeX code.
396         (muse-latex2png-use-xhtml): New option that toggles strict XHTML
397         compliance.
398         (muse-latex2png-move2pubdir): Avoid multiple redundant error
399         messages when something else goes wrong.  Create the image
400         subdirectory if it doesn't exist already -- thanks to Christian
401         Straßer for the report.  Expand the filename properly.
402         (muse-publish-latex-tag, muse-latex2png): Ditto on error messages
403         and filename expansion.
404         (muse-latex2png): Use the "muse-latex2png" prefix by default.  Set
405         the default directory properly.
407         * lisp/muse-publish.el (muse-style-run-hooks): Make sure that we
408         do not run the same function twice.
410 2006-08-08  Michael Olson  <mwolson@gnu.org>
412         * lisp/muse-colors.el (muse-colors-explicit-link): Fix recently
413         introduced wrong-type-argument error.
415         * lisp/muse-html.el (muse-html-markup-strings)
416         (muse-xhtml-markup-string): Cause table definition that contains
417         image to be center-aligned.  This should fix an issue with images
418         not being centered when captions are very long.
420         * lisp/muse-publish.el (muse-publish-table-fields): Trim
421         whitespace from fields once we have split them up.
423         * lisp/muse.el (muse-trim-whitespace): New function that strips
424         leading and trailing whitespace from a string.
426 2006-08-07  Michael Olson  <mwolson@gnu.org>
428         * NEWS: Update through patch-95.
430         * lisp/muse-colors.el (muse-colors-lisp-tag): Use a simpler regexp
431         to match the tags.
432         (muse-colors-explicit-link): Show images in link descriptions if
433         inlined images are enabled.
435         * lisp/muse-docbook.el (muse-docbook-markup-strings): Add
436         definitions for 'image-with-desc, 'image, and 'image-link.
437         (muse-docbook-markup-paragraph): If an inlined image begins a
438         paragraph, insert <para> before it.
439         (muse-docbook-fixup-images): New function that upper-cases the
440         "format" attribute of the <imagedata> tag.
441         (muse-docbook-finalize-buffer): Call it.
443         * lisp/muse-html.el (muse-html-markup-strings): Publish images
444         with descriptions as centered tables, with a centered caption
445         underneath.  The resulting look is consistent with the way that
446         they are published in the LaTeX style.  Thanks to Jody Klymak for
447         the suggestion.
448         (muse-xhtml-markup-strings): Ditto, but XHTML apparently has no
449         valid way to center a table.
450         (muse-html-markup-paragraph): Use class="image" instead of
451         "image-link" for paragraphs that start with an embedded image.
453         * lisp/muse-latex.el (muse-latex-markup-specials-url): Use
454         \textbackslash{} for "\".  Thanks to Jim Ottaway for the
455         suggestion.
456         (muse-latex-markup-specials-image): New option that enables
457         escaping of specials in images.  This was split from the URL
458         specials.
459         (muse-latex-decide-specials): Handle 'image context.
460         (muse-latex-fixup-dquotes): Go to beginning of document, instead
461         of relying on caller to do this for us.
463         * lisp/muse-publish.el (muse-publish-escape-specials): Document
464         'image context.
465         (muse-publish-url): Use 'image context for images.  Use 'image
466         instead of 'image-link and 'image-link in place of
467         'url-with-image.  Separate the image file from its extension so
468         that docbook and texinfo can publish images correctly.
469         (muse-publish-markup-link): Don't force a description if one is
470         not given.  This fixes a bug where images without descriptions
471         were being published as 'image-with-desc instead of 'image.
473         * lisp/muse-texinfo.el (muse-texinfo-decide-specials): Treat
474         images the same as URLs.
475         (muse-texinfo-markup-strings): Improve image markup to achieve an
476         effect similar to that of the LaTeX publishing style.  Simplify
477         'url string.
479         * lisp/muse-xml-common.el (muse-xml-decide-specials): Ditto.
481         * lisp/muse.el (muse-replace-regexp-in-string): Save match data
482         when we have to use the custom version of this function.
484         * muse.texi (Images): Explain how to toggle inlining of images and
485         give better examples.  Mention captions and that captioned images
486         should not be used inside of text paragraphs.
487         (Markup Strings): Bring up-to-date with the changes made since
488         3.02.
490 2006-08-06  Michael Olson  <mwolson@gnu.org>
492         * ChangeLog.1: Rename from ChangeLog.2004 to comply with standards
493         in the Emacs source tree.
495         * ChangeLog.2: Rename from ChangeLog.2005 to comply with standards
496         in the Emacs source tree.
498         * ChangeLog.3: New file created from the old ChangeLog.
500         * Makefile.defs (VERSION): Set to 3.02.91.
502         * NEWS: Update through patch-84.
504         * lisp/muse.el (muse-version): Set to 3.02.91.
506         * lisp/muse-colors.el (muse-colors-tags): Allow <lisp> to take
507         attributes.
508         (muse-colors-lisp-tag): Figure out where the <lisp> tag and its
509         delimiter are instead of hard-coding it.
511         * lisp/muse-mode.el (muse-insert-thing): Qualify "tag".
512         (muse-mode): Make filling definition lists work better.  This
513         should fix #5359.
515         * lisp/muse-publish.el (muse-style-run-hooks): Use
516         `muse-style-element' instead of `muse-get-keyword' here.  This
517         should fix #6399.
519         * muse.texi: Set version to 3.02.91 (3.02 RC2).
521 See ChangeLog.3 for earlier changes.
523 ;; Local Variables:
524 ;; coding: utf-8
525 ;; End: