Emacs Muse NEWS --- History of user-visible changes -*- outline -*- * Changes in Muse 3.02 ** New modules *** muse-wiki.el --- Provide automatic linking for WikiWords and InterWiki links. These words are clickable and publish as links. Project names from `muse-project-alist' are available for InterWiki linking by default. The list of InterWiki names and handlers may be customized through `muse-wiki-interwiki-alist'. WikiWords that do not correspond with real files will not be displayed as links nor published as links. It is expected that this behavior will be made optional in future versions of Muse. **** This module includes a few helper functions that may be added to `muse-publish-desc-transforms' in order to modify link descriptions at publish time. **** The concept of "implicit links" and "explicit links" has been introduced. Explicit links are surrounded by brackets, i.e. [[http://blah.org][this is a explicit link]]. Implicit links are URLs and email addresses that are not surrounded by brackets: they will not be colorized or published if surrounded by double-quotes. ***** `muse-wiki-publish-pretty-title' causes words to be Title-cased, ignoring words like `the' and `at' which should not be changed. ***** `muse-wiki-publish-pretty-interwiki' changes the delimiter of interwiki links according to the text of the `muse-wiki-interwiki-replacement' option. *** muse-protocols.el --- URL protocols that Muse recognizes. This automatically-included module provides an easily customizable list of URL protocols, how to browse them, and how to resolve them for publishing. Customize `muse-url-protocols' to add and remove protocols. ** Compatibility fixes *** Muse has been tested with XEmacs 21.4, both Mule and non-Mule versions. There are no known problems remaining. To make things work by default, the iso-8859-1 charset is used as a default option in some places. ** Configuration *** `muse-file-extension' -- New option that allows the file extension for Muse files to be specified. For example, setting this to "muse" assumes that you have renamed your Muse files with a ".muse" extension. Using this (and setting `muse-mode-auto-p' to nil) will prevent miscellaneous non-Muse files from being accidentally opened in Muse Mode. *** `muse-ignored-extensions' -- New option that determines which file extensions to omit from the ending of a Muse page name. *** `muse-ignored-extensions-regexp' -- This is no longer customizable. It will be automatically generated from `muse-file-extension' and `muse-ignored-extensions'. *** `muse-project-alist' -- The customize interface for this option has been greatly improved, and much effort has been spent in order to make this user-friendly. *** The `:force-publish' tag may be specified in `muse-project-alist'. This causes a particular list of files to be re-created every time the publishing process is invoked, even if they haven't been changed according to their timestamps. One use for this is to keep an index of available pages by adding the following to a file in this list. (muse-index-as-string t t t) *** `muse-project-ignore-regexp' -- By default, version control directories are now included in this regexp so that they don't appear when you hit C-c C-f to browse files in a project. *** The `muse-project-alist-styles' and `muse-project-alist-dirs' functions may be used in `muse-project-alist' to recursively add styles and directory listings for a given directory. The following is an example. We use a backtick instead of a single quote to begin the list. (setq muse-project-alist `(("Blog" (,@(muse-project-alist-dirs "~/proj/wiki/blog") ;; base dir :default "guestbook") ,@(muse-project-alist-styles "~/proj/wiki/blog" ;; base dir ;; output dir "~/personal-site/site/blog" ;; style "my-blosxom")))) Note that if you use the customize interface for `muse-project-alist', you will still have to manually add information for any new sub-directories. ** Debian packaging *** Debian packages for Muse have entered Debian unstable, thanks to Romain Francoise, my sponsor. It is possible to roll your own Muse packages if you want to do so. Packages may be built by using `make debrelease', once the proper options in Makefile.defs are set. Revisions may be built using `make debrevision'. The manual and relevant documentation files have been included with the Debian package for Muse. ** Muse Mode *** Allow use of Muse with outline-minor-mode. *** Filling text does the right thing with list items and footnotes. List items and footnotes will no longer be concatenated when hitting M-q in the midst of consecutive items. *** Links will never be split in the middle when using Fill. *** Some flyspell crash issues were addressed. Using intangible text can cause strange problems with flyspell mode. Hence, by default, the intangible property will be ignored. A new option called `muse-mode-intangible-links' indicates whether this should be the case. *** Links will no longer be highlighted by flyspell. If you're using XEmacs or Emacs 22, flyspell will ignore links, including link text. This keeps flyspell from making the links unclickable. If you're using Emacs 21, flyspell will continue to interfere with links. If you know how to fix this, please send a patch! *** A few edge cases for emphasis and underlining have been addressed. *** , , and =surrounded text= are now colored using the new face `muse-verbatim-face'. *** All marked up text properties, like emphasis and underlining, will be removed for the text between , , , , and tags. *** Links to temporary files may be visited. A "temporary file" in this case is a buffer that is not associated with any file. For some dynamic content import scripts with Planner, this is helpful. *** Typing "#title" should never crash Emacs anymore. ** Muse manual *** Fix problem with producing a PDF version of the manual. *** Document WikiNames. *** Bring up-to-date with latest features. *** Massively update Common Elements section. *** New Directives section. This describes the use of #title and #author, as well as other directives that may be used. *** New Comments section. Describes the use of "; comment text". ** Publishing *** The order of rules should be much improved. This means that emphasis characters like `*' and `_' will never be interpreted as such if they are within links. *** The user will be notified when `muse-publish-this-file' fails to publish the current file. This happens when the timestamp of the current file indicates that it is up-to-date. *** Special characters are escaped in link descriptions and links on a more consistent basis. What defines a "special character" varies according to the publishing style. *** Errors that occur during publish time will cause a warning to be displayed prominently, rather than being ignored. It should no longer be possible to mess up a Muse source file by tweaking the Muse publishing process. *** Errors in tags cause a warning to be displayed and return "". Muse will try to continue publishing the page. *** An emdash ("--") can now be used after a list, as long as there is a blank line between the end of the list and the emdash. *** The tag has been introduced. It does the same thing that =equal signs= do: escape specials and publish as teletype text. Use it for short command snippets and the like. is a better choice for large blocks of code, since it preserves whitespace. *** An edge case involving links at the beginning of a paragraph has been addressed. *** An edge case involving consecutive directives of the same size has been addressed. *** Every publishing style is now capable of specifying strings to use for sections beyond the third level. *** Every publishing style may specify an end-of-section string. This is used, for example, by the experimental XML style and the DocBook style. *** Every publishing style may specify a method of handling "internal link" markup. An internal link is a link that refers to an anchor on the current page. *** Every publishing style may specify a link suffix to use. This allows the file extensions in links to other Muse files to be different from their actual extension. Blosxom makes use of this (since its published files are .txt and the dynamically-generated output is .html), and it could come in handy for PHP stuff. If a link suffix is not specified via :link-suffix, the value of :suffix will be used. ** Blosxom publishing *** muse-blosxom-new-entry: A #category directive is added by default. Nothing is done with this yet, but it could be handy for tag-based (multiple category) blogging, once we figure out a good way to do that in both Muse and Pyblosxom. Ideas are welcome, and patches even more so. ** DocBook publishing *** The markup has been comprehensively improved. Published documents will now pass validation tests and look better in general. *** It is now possible to specify the encoding of DocBook documents. The default encoding is utf-8. *** Footnotes will be embedded into paragraphs, since this is The DocBook Way. *** Tables will be sorted by section. Headers first, then footers, then the rest of the table. *** Anchors are now handled correctly and publish to the best available form. Links to anchors are published with the tag. ** HTML publishing *** Fix minor issue with anchors. *** Paragraph publishing will no longer insert
tags before images. This was causing too much hassle for some programs that were trying to extend Muse, like the Muse port of Planner. *** The `&', `<', and '>' characters will be escaped using their specific HTML escape codes, rather than with "&#NNN;". This makes the published output display correctly in more web browsers. *** Use HTML 4.0 Transitional by default for `muse-html-header'. *** Include empty alt element in markup string for images that lack a description. *** Tables will be sorted by section. Headers first, then footers, then the rest of the table. *** `muse-xhtml-extension' -- The default extension for XHTML publishing. This is a new option. ** Journal publishing *** Use "div class=..." rather than "div id=..." for sections. ** LaTeX publishing *** A newline will be appended to the default footer for the latex and latexpdf publishing styles. This keeps the PDF-building process from failing due to lack of a newline at end of file. *** Anchors and links to them now work properly. *** When generating PDF files, call pdflatex twice. This should ensure that the table of contents gets generated, if one is due to be published. *** PDF files with spaces may be published. A bug preventing this has been fixed. *** Teletype text is now published using \\texttt{...}. *** An attempt has been made to escape special characters more consistently. ** TexInfo publishing *** Fix a fatal error that occurs when publishing tables. *** Generate the contents in the header by default rather than the footer. This is the way that most TexInfo manuals do it. *** The info-pdf publishing style currently produces the best PDF output on the maintainer's machine, so it is now used to publish the PDF version of the Muse Manual. *** The characters `{' and `}' will be treated as special characters that need to be escaped at publish-time. *** Improve dots and enddots markup strings. *** Surround underlined text with "_" since TexInfo doesn't seem to have any better options for producing underlined text. *** Anchors and links to them now work properly.