info-gnu
[Top][All Lists]

## Emacs Muse 3.12 released

 From: Michael Olson Subject: Emacs Muse 3.12 released Date: Tue, 29 Jan 2008 17:17:52 -0500 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.50 (gnu/linux)

I am pleased to announce the release of Emacs Muse 3.12.

Emacs Muse is an authoring and publishing environment for Emacs. It
simplifies the process of writing documents and publishing them to
various output formats.  One of the principal aims in the development
of Muse is to make it very easy to produce good-looking,
standards-compliant documents.

** Release info

Commit ID :: 617fa8c5d1ed92e8b2eff4d6d2b53e608440db20

Instructions follow for those who track the source code using git.  If
you wish to track the development of Emacs Muse, visit
<http://www.emacswiki.org/cgi-bin/wiki/MuseDevelopment> for
instructions.

This release has the signed git tag "v3.12".  The tag points at a commit
object with the Commit ID mentioned above.  To verify the tag, do:

git fetch origin
git tag -v v3.12

To check out the release, do:

git checkout v3.12

To switch back to the master branch, do:

git checkout master

** Future Plans

The following are some thoughts that I have concerning functionality
that might potentially make it into a future release of Muse.

- We need to make it easier for new users to get up to speed on Muse.
One means for doing this is to automatically load the file which
contains a publishing style if the style is used at publish time.
This way, people do not need to remember to add a require'
statement for every publishing style that they want to use.

I would like to solve this by implementing a sort of modules
system, perhaps one similar to the erc-modules interface for ERC.
It would also be nice to separate the concepts of "loading" a
source file from that of "instantiating" a module.  Some Planner
modules already do this by requiring an extra function to be run to
"enable" its functionality.

This is particularly needed in the case of the muse-wiki.el file,
which depends on the now-frowned-upon eval-after-load feature.  In
order to provide the publishing and coloring parts of the muse-wiki
module when needed, it might be necessary to create modules for
muse-publish.el and muse-colors.el, so that the concept of modules
does not apply only to publishing styles.  The module could
automatically define some hooks that should be called after it has
modules, or the module definition could contain a list of
"conditional dependencies" on other modules, with code attached.
The method for defining Muse modules should take keyword arguments,
in order to make these definitions easier to read and easier to
hack.

There is also the need to distinguish between several types of
modules.  When customizing a new option like muse-modules', people
may want to see a visual difference between, say, publishing styles
(example: muse-latex.el), files which provide functionality
(example: muse-publish.el), and files which supplement a publishing
style in some way (example: muse-latex2png.el).

- I want to prioritize the support for muse-project.el and extend it
to support calling external programs that can publish files that
are in Markdown and reStructuredText form.  A minor mode could be
and C-c C-t) to the existing modes for displaying files in these
formats.

Once these two features are implemented, I think that it might be time
to start thinking about getting Muse included with Emacs.

** News Items

The NEWS items for this release follow.

pgpw_3STj8HGy.pgp
Description: PGP signature

Emacs Muse NEWS --- History of user-visible changes    -*- outline -*-

* Changes in Muse 3.12

** New interactive function muse-update-values': Call this after
changing muse-project-alist, in order to update various autogenerated
values.

** Tag attributes may now span multiple lines.

** Don't keep track of undo data when publishing.
This should yield a speed-up.

** Build system

*** Add support for the DESTDIR variable, which allows the destination
directory to be easily set.

** Muse Mode highlighting (lisp/muse-colors.el)

*** Display message when muse-colors-toggle-inline-images is called.

** ConTeXt publishing (lisp/muse-context.el)

*** Fix publishing bug in Windows.

** HTML publishing (lisp/muse-html.el)

*** Fix bug where nested class tags were not working.

*** Fix error that occurred when a class tag had no name element.
In this case, we do not publish the tag at all.

** LaTeX publishing (lisp/muse-latex.el)

*** Escape specials in image filenames properly
Previously, it was not possible to escape "/", "#", or "|" in image
filenames.  In order to make this work, be certain that you have the

\def\museincludegraphics{%
\begingroup
\catcode\|=0
\catcode\\=12
\catcode\#=12
\includegraphics[width=0.75\textwidth]
}

*** Escape specials in the title string in headers
In order to achieve this effect in custom headers, replace

\title{<lisp>(muse-publishing-directive "title")</lisp>}

with

\title{<lisp>(muse-publish-escape-specials-in-string
(muse-publishing-directive "title") 'document)</lisp>}

*** Default to using UTF-8 rather than latin1 in headers.

*** Fix publishing bug in Windows.

*** Escape backslash as \textbackslash{} in monospace regions.

** Publish embedded LaTeX content to a PNG file (lisp/muse-latex2png.el)

*** Detect whether the tag ends at the end of a line.
If not, do not use "" to publish it.

** Muse Mode (lisp/muse-mode.el)

*** New option: muse-insert-url-initial-input' specifies the initial text
to use when reading a URL.

*** Fix bug with browsing anchors that come after a link to them.

*** Fix bug involving filling and paragraphs next to headings.

*** Fill definition lists with two initial spaces in lines after the
definition list term.

** Project support (lisp/muse-project.el)

*** Fix issue that occurred when saving several files at once, where only
one of them would make it into the project file-alist.

*** If the PAGE argument to muse-project-page-file' is nil, then return
the first directory of the project.

*** Fix bug where directory names without slashes in projects were not
being recognized.

** Publishing (lisp/muse-publish.el)

*** New tag <br> represents a line break when publishing.
This is supported in all publishing styles except for DocBook, which
has no notion of line breaks without stylesheet hacks.

*** Treat "---" as an mdash.
Before, it would publish as an mdash followed by a single dash.

*** Escape specials properly in footnotes in several styles.

*** Fix bug with publishing plain URLs.

*** Save match adta in muse-publish-classify-url'.

** Wiki-like behavior (lisp/muse-wiki.el)

*** Display <nop> tags correctly.

*** Publish <nop> tags correctly.

--
Michael Olson -- FSF Associate Member #652     |
http://mwolson.org/ -- Jabber: mwolson_at_hcoop.net  |  / |\ | | |
Programmer -- Hobbies: Lisp, HCoop          | |_] | \| |_|
Projects: Emacs, Muse, ERC, EMMS, ErBot, DVC, Planner |