Next: , Previous: Getting Started, Up: Top


6 Creating and Managing Muse Projects

Often you will want to publish all the files within a directory to a particular set of output styles automatically. To support, Muse allows for the creations of "projects". Here is a sample project, to be defined in your .emacs file.

     (require 'muse-project)
     
     (setq muse-project-alist
           '(("website"			; my various writings
              ("~/Pages" :default "index")
              (:base "html" :path "~/public_html")
              (:base "pdf" :path "~/public_html/pdf"))))

The above defines a project named "website", whose files are located in the directory ~/Pages. The default page to visit is index. When this project is published, each page will be output as HTML to the directory ~/public_html, and as PDF to the directory ~/public_html/pdf. Within any project page, you may create a link to other pages using the syntax `[[pagename]]'.

By default, Muse expects all project files to have the file extension .muse. Files without this extension will not be associated with Muse mode and will not be considered part of any project, even if they are within a project directory.

If you don't want to use .muse, you can customize the extension by setting the value of muse-file-extension.

If you don't want to use any extension at all, and want Muse to autodetect project files based on their location, then use:

     (setq muse-file-extension nil
           muse-mode-auto-p t)

If you set these options directly in your .emacs outside of the Customize interface, then you will also need to add:

     (add-hook 'find-file-hooks 'muse-mode-maybe)