2 This document describes the process of migrating from emacs-wiki to Muse.
10 Features that exist in Muse, but not emacs-wiki:
14 - Publishing to multiple other formats, such as LaTeX and Docbook.
16 - Escaping special characters automatically throughout the entire
17 document, so that you don't have to.
19 - Ability to use a different header and footer in different projects,
20 by creating your own publishing style.
22 - Ability to surround some Muse markup with the <verbatim> tag, which
23 causes is to not be treated as markup. This is useful for
24 publishing the "|" character as-is, without turning the current
27 - Improved detection of paragraphs, which results in HTML that meets
28 various W3C standards.
30 - Journalling mode that is capable of publishing to RSS 2.0 or RSS
33 - Embedding LaTeX code into a document by turning it into an image.
34 This is in muse-latex2png.el.
39 The reason that most of these have not been implemented is lack of
40 demand. If you want to see these features implemented, please send an
41 email to the muse-el-discuss mailing list, describing a good use case
44 - Publishing bookmarks in XBEL format. The bk2site program --
45 available separately -- does an adequate job, so this was not
48 - Macros, i.e. keywords like %this%, that expand to some text upon
55 - PGP encryption of regions with the <gpg> and <gpge> tags.
59 - Publishing of ChangeLog files.
61 - The keybinding `C-c C-r': rename wiki link at point.
63 - The keybinding `C-c C-D': delete wiki link at point.
65 - The #style directive.
67 - Using the title of the page in a generated index page, rather than
68 the filename of the page.
73 Here is an example emacs-wiki-projects setting.
75 (setq emacs-wiki-projects
77 ((emacs-wiki-directories . ("~/WebWiki"))
78 (emacs-wiki-project-server-prefix . "/web/")
79 (emacs-wiki-publishing-directory
80 . "~/public_html/web")))
82 ((emacs-wiki-directories . ("~/ProjectsWiki"))
83 (emacs-wiki-project-server-prefix . "/projects/")
84 (emacs-wiki-publishing-directory
85 . "~/public_html/projects")))))
87 And here is the corresponding muse-project-alist setting.
89 (setq muse-project-alist
90 '(("Website" ("~/WebWiki"
91 :default "WelcomePage")
93 :path "~/public_html/web"))
94 ("Projects" ("~/ProjectsWiki"
95 :default "WelcomePage")
97 :path "~/public_html/projects"))))
99 Note that there is no need to specify a prefix. Muse will
100 automatically figure out what the relative paths in links to Muse
103 If you want to be able to link to another project entry that is on a
104 different domain, then you must use :base-url in every project entry.
105 An example of this follows.
107 (setq muse-project-alist
108 '(("Website" ("~/WebWiki"
109 :default "WelcomePage")
111 :base-url "http://web.example.org/web"
112 :path "~/public_html_1/web"))
113 ("Projects" ("~/ProjectsWiki"
114 :default "WelcomePage")
116 :base-url "http://projects.example.org/projects"
117 :path "~/public_html_2/projects"))))
122 Including multiple directories
123 ------------------------------
125 With emacs-wiki, this was done by setting the
126 `emacs-wiki-recurse-directories' option to non-nil.
128 With Muse, this can be accomplished by including an entry in your
129 muse-project-alist setting that causes entries for a directory and all
130 subdirectories to be created. This does not work when using the
131 customize interface to set `muse-project-alist'.
135 ("Blog" (,@(muse-project-alist-dirs "~/Blog")
138 ;; Publish this directory and its subdirectories. Arguments
139 ;; are as follows. The above `muse-project-alist-dirs' part
140 ;; is also needed, using Argument 1.
142 ;; 1. Source directory
143 ;; 2. Output directory
144 ;; 3. Publishing style
145 ;; remainder: Other things to put in every generated style
146 ,@(muse-project-alist-styles "~/Blog"
150 Generating an Index page
151 ------------------------
153 In emacs-wiki, the page specified by `emacs-wiki-index-page' is an
154 automatically generated index page.
156 Muse does not automatically create this file. If you want an
157 automatic index file to be generated, then create a file and place the
158 following contents (between the lines of underscores) in it.
163 <lisp>(muse-index-as-string t t t)</lisp>
166 Then, add a :force-publish tag to the paths part of the project entry
167 in muse-project-alist. Example:
170 :force-publish ("WikiIndex")
171 :default "WelcomePage")
173 :base-url "http://mydomain.org/"
174 :path "~/public_html"))
179 This file may be used, distributed, and modified without restriction.