Commits on Jun 22, 2005
  1. Release Muse 3.01.

    mwolson committed Jun 22, 2005
    * lisp/muse-colors.el: Remove unnecessary use of Version in header.
    * lisp/muse-html.el (muse-html-encoding-map): Add mapping for iso-8859-1.
    * lisp/muse-poem.el (muse-poem-markup-strings)
      (muse-poem-chapbook-strings): Make customizable.
    * lisp/muse-poem.el (muse-chapbook-latex-header)
      (muse-chapbook-latex-footer): Docfix.
    * lisp/muse-texinfo.el (muse-texinfo-info-extension)
      (muse-texinfo-pdf-extension): Ditto.
    * lisp/muse.el (muse-version): Change to 3.01.
    * muse.texi (Poem, Texinfo): Last two publishing styles complete.  We're
      done, for now!
Commits on Jun 20, 2005
  1. Tweak documentation thoroughly; still incomplete.

    mwolson committed Jun 20, 2005
    * README: Minor tweaks.
    * muse.texi: Massively rename chapters so that the titles are more
      descriptive.  Clean up grammar.
    * muse.texi (Obtaining Muse): Move content of Installation node here,
      stripping out any customization tips, since those are covered later.
      Re-work this chapter since I was dissatisfied with it.
    * muse.texi (Installation): This node has the content of README regarding
      installation, which fits the title of the node much better than the
      previous content.
    * muse.texi (Blosxom): Turn the sections of this section into
    * muse.texi (Getting Help and Reporting Bugs): Turn this into a list.  I
      like lists!
    * muse.texi (History): Add a "2005" item.
Commits on Jun 19, 2005
  1. Finish documenting 2 more publishing styles.

    mwolson committed Jun 19, 2005
    * lisp/muse-blosxom.el, lisp/muse-latex.el: Minor docfixes throughout.
    * lisp/muse-journal.el: Docfixes.
    * lisp/muse-publish.el (muse-publish-markup-functions): Add significant
      documentation to this function.
    * muse.texi (Blosxom Options): New node containing the publishing styles
      and options provided by Blosxom.
      (Book): Add usage note, as I suspect a lot of people might be confused
      by this style.
      (HTML): Space out entries better.
      (Journal, LaTeX): New nodes for publishing styles.
      (Common Elements): Document a few options that are present in
  2. Make Muse installable and correct an Emacs21 issue.

    mwolson committed Jun 19, 2005
    * Makefile (.PRECIOUS): Indicate that .info and .html files in this
      directory will be generated.
      (all): Compile by default.
      (doc): Refactor into individual generation rules for .html and .info
      (install): New rule that installs Muse source code, compiled .elc
      files, and the manual into proper places.
    * Makefile.defs (ELISPDIR, INFODIR): Correct minor goof-up.
    * README (Insinuation): Move old content of Installation here.
      (Installation): Fill out this section.
      (Further Documentation): Add link to my website and note that a full
      manual is included with Muse.
    * lisp/Makefile (EL): Populate with .el files.
      (install): New rule that installs both .elc and .el files.
    * lisp/muse-texinfo.el (muse-texinfo-info-generate): If we're running
      Emacs21, hack in a handler for the @documentencoding tag so that it
      doesn't error out.
  3. Cater even more to XEmacs and its annoying whims.

    mwolson committed Jun 19, 2005
    * examples/Makefile (%.html, %.pdf, Pass EMACS value as
      environment variable.
    * lisp/Makefile (%.elc, test): Don't use "-L" option since XEmacs can't
      handle it.  Load `muse-build.el' instead.
    * lisp/muse-colors.el (muse-colors-link): Add note that `link' is not
    * lisp/muse-journal.el (muse-journal-latex-munge-buffer)
      (muse-journal-rss-munge-buffer): Add note that the `qotd' binding is
      not used.
    * lisp/muse-journal.el (muse-journal-generate-pages): Add note that this
      function does not appear to be used.
    * lisp/muse.el (muse-replace-regexp-in-string): Use in place of
      `replace-regexp-in-string', since XEmacs doesn't have this function.
      We only implement the first 3 args, but this could be extended if we
      need to do so.
    * lisp/muse-blosxom.el (muse-blosxom-title-to-file): Use
      `muse-replace-regexp-in-string' in place of `replace-regexp-in-string'
    * lisp/muse-journal.el (muse-journal-anchorize-title): Ditto.
    * lisp/muse-colors.el (muse-colors-custom-tags): Remove unused binding to
      make XEmacs shut up.
    * lisp/muse-convert.el (muse-write-footnote): Ditto.
    * lisp/muse-html.el (muse-html-markup-table): Ditto.
    * lisp/muse-http.el (muse-winnow-list): Ditto.
    * lisp/muse-poem.el (muse-poem-markup-tag): Ditto.
    * lisp/muse-project.el (muse-project-file-entries): Ditto.
    * lisp/muse-publish.el (muse-publish-markup): Ditto.
    * scripts/muse-build.el: Add contrib path first; probably doesn't change
    * scripts/publish: Use EMACS environment variable instead of hard-coding
  4. Move lisp files to `lisp' directory; hack on Makefiles, XEmacs compat.

    mwolson committed Jun 19, 2005
    * AUTHORS: Update entry.
    * muse-*.el: Move to the lisp directory.
    * lisp/Makefile: New file containing rules to test and compile the
    * Makefile.defs: New file that contains common definitions for all other
      Makefiles, such as Emacs command to use.
    * Makefile: Move lisp-specific rules to lisp/Makefile.
      (SUBDIRS): New variable containing subdirectories to clean.
    * README: Update to reflect new location of source files.  Give updated
      directions for compiling with XEmacs.
    * examples/Makefile (.PRECIOUS): Added to denote which type of files to
      (%.html): Pass SITEFLAG as an environment variable to
    * examples/QuickStart (The): Re-add the stray <comment> tag since it
      seems to be needed to keep the process from failing.  This has *got* to
      be a bug in Muse, but I don't want to deal with it now.
    * lisp/muse-colors.el (muse-make-faces): Bind newsym locally.
    * lisp/muse-convert.el: Move line to commentary section.
    * lisp/muse-latex.el (muse-latex-markup-table): Note that the
      locally-bound `type' variable isn't used here.
    * lisp/muse-mode.el (muse-index-as-string): Remove unused `file' binding.
    * lisp/muse-texinfo.el (muse-texinfo-markup-table): Remove unused `field'
    * scripts/muse-build.el (load-path): Correct paths.
    * scripts/muse-build.el (muse-elint-files): Add a few variables here so
      as to avoid spurious warnings.
    * scripts/publish (style): Make use of SITEFLAG environment variable, if
      it exists.
    * lisp/muse.el (muse-line-end-position, muse-line-beginning-position):
      (muse-match-string-no-properties): New functions that take the place of
      `line-end-position', `line-beginning-position', and
      `match-string-no-properties', respectively.
    * examples/johnw/muse-johnw.el (muse-my-html-insert-contents)
      (muse-my-journal-find-entries): Use Muse-specific version of
      `match-string-no-properties', `line-beginning-position', and
      `line-end-position' since these do not exist in XEmacs.
    * lisp/muse-colors.el (muse-colors-emphasized, muse-colors-region)
      (muse-colors-custom-tags, muse-colors-link, muse-colors-title): Ditto.
    * lisp/muse-convert.el (muse-latex-transform): Ditto.
    * lisp/muse-html.el (muse-html-insert-anchor, muse-html-markup-footnote)
      (muse-html-insert-contents): Ditto.
    * lisp/muse-journal.el (muse-journal-rss-munge-buffer): Ditto.
    * lisp/muse-mode.el (muse-link-at-point, muse-edit-link-at-point): Ditto.
    * lisp/muse-poem.el (muse-poem-prepare-buffer): Ditto.
    * lisp/muse-publish.el (muse-publish-markup-tag)
      (muse-publish-markup-footnote, muse-publish-markup-leading-space)
      (muse-published-buffer-contents): Ditto.
    * scripts/muse-build.el (muse-elint-files): Ditto.
Commits on Jun 18, 2005
  1. Massively untabify files.

    mwolson committed Jun 18, 2005
  2. Merged from (patch 2-6), without the WikiWord c…

    mwolson committed Jun 18, 2005
    (Summary of changes that Yann made)
    * muse-colors.el (muse-colors-link): Whitespace cleanup.
    * muse-mode.el (muse-generate-index): Move index generation code into
      (muse-index-as-string): New function that generates an index and
      returns it as a string, instead of placing it in a buffer like
      `muse-generate-index' used to.
    Patches applied:
       merge from
       Accept WikiWords as links [mostly rescinded]
       merge from
       Merged from (patch 60-62)
       provide a string view of the index
  3. Document Blosxom, Book, DocBook, and HTML publishing styles.

    mwolson committed Jun 18, 2005
    * muse-blosxom.el: Clean up header.
    * muse-book.el (muse-before-book-publish-hook): Rename to
      (muse-after-book-publish-hook): Rename to
    * muse-html.el (muse-html-anchor-on-word, muse-html-table-attributes)
      (muse-html-markup-strings, muse-xhtml-markup-strings)
      (muse-html-meta-content-type, muse-html-meta-content-encoding)
      (muse-html-charset-default, muse-html-encoding-default)
      (muse-html-encoding-map): Docfixes.
    * muse.texi (Blosxom, Book, DocBook, HTML, Deriving Styles): New
  4. Begin work on Publishing Styles section of manual.

    mwolson committed Jun 18, 2005
    * Makefile (.PHONY): Add "doc" to list.
      (doc): New rule that generates Info and HTML files from muse.texi.
      (dist): Rely on `distclean', not `clean'.
    * examples/QuickStart (Authoring mode): Remove empty section.
    * muse.texi: Call this program "the Emacs Muse" in title.
      (Publishing Styles): Begin to populate section.
      (Deriving Styles): First subsection of Publishing Styles.
      (Contributors): Remove spurious copyright section, since we address
      this in the title.
    * README: Actually remember to add this file.
Commits on Jun 17, 2005
  1. Document Markup Rules.

    mwolson committed Jun 17, 2005
    * examples/QuickStart: Remove stray <comment> tag.
    * muse.texi (Top): Comment every menu line.
      (Markup Rules): New section with plenty of subsections.
Commits on Jun 15, 2005
  1. Release this as Muse 3.00.90 (RC1).

    mwolson committed Jun 15, 2005
    * Makefile (%.elc): Use -q instead of --no-init-file because the former
      is compatible with both Emacs and XEmacs.
    * examples/README: Renamed to QuickStart.
    * examples/Makefile (EXAMPLES): Reflect name change of README.
    * muse.el: Ditto.
  2. Makefile refactoring.

    mwolson committed Jun 15, 2005
    * Makefile (.PHONY): List all non-file targets.
      (examples): New rule that calls Make in the examples directory.
      (atranslit): Removed, since this isn't (yet) bundled with Muse.
    * README: Move to the examples directory.  I'd prefer to distribute a
      very basic plain text README and use this as a quickstart + markup
      example + publishing example.
    * examples/Makefile: Move all README-related rules here.
    * examples/README: Add an "About this document" section.  
    * scripts/publish (style): Do not include the contrib directory, since we
      don't use any code from there.  Since this is only invoked from the
      examples directory, make sure add the parent directory to the load
    * muse.texi: Change version to 3.00.90 (RC1).
    * muse.el: Change location of the README file in header.
    * muse.el (muse-version): Update to 3.00.90 (RC1).
Commits on Jun 14, 2005
  1. Update my example configuration.

    mwolson committed Jun 14, 2005
    * examples/mwolson/muse-init.el: Update to reflect use of outline faces
      and experimental status of muse-message.
  2. Provide optional outline-style faces; customization fixes; experiment…

    mwolson committed Jun 14, 2005
    …al stuff.
    * muse-colors.el (muse-colors-autogen-headings): New user-customizable
      option that determines what the header faces should look like.  If
      'outline, use outline-style faces.  If nil, don't generate the faces at
      all, which allows the user to specify their own.  Otherwise, use the
      scaled faces, which is the default behavior.
      (muse-colors-outline-faces-list): List of faces to use.  In case the
      outline faces are not available, provide reasonable defaults.
      (muse-make-faces): Use dolist instead of mapc.  Implement the
      possibility of having outline-style colors for heading.  Don't call
      this function immediately -- give the users time to make their changes
      through the customize interface.  Once we call this function, Emcs from
      CVS will not allow the faces to be changed easily, which is a shame.
    * muse-message.el (muse-message-contents-tag): Copied from
      `muse-publish-contents-tag' in order to keep the customization
      interface from making the `muse-markup-tags' option from throwing a
      type mismatch error.  This function is untested and will likely do
      nothing useful.  This file has been moved to the experimental folder
      until it gets fleshed out more.
    * experimental/muse-wiki.el: New file from johnw's initial attempt at a
      file that could eventually provide wiki-like ability.  Currently this
      is just a collection of functions that were pruned out when he remade
      Muse, so don't get too excited.  I plan to eventually merge Yann
      Hodique's work here, probably after the first release of Muse.
    * muse-regexps.el (muse-regexp): Improve description.
    * muse-project.el (muse-project-ignore-regexp): Make this be a part of
      the muse-regexp group since it is just a single regexp.  Lists of
      regexps don't have to be in muse-regexp, however.
    * muse-blosxom.el (muse-blosxom): Change use of `behaviour' to `behavior'
      since the Emacs devel mailing list seems to not want Britain-izations
      in Emacs code.
    * muse-colors.el (muse-colors): Ditto.
    * muse-docbook.el (muse-docbook): Ditto.
    * muse-html.el (muse-html): Ditto.
    * muse-http.el (muse-http): Ditto.
    * muse-message.el (muse-message): Ditto.
    * muse-mode.el (muse-mode): Ditto.
    * muse-project.el (muse-project): Ditto.
    * muse-publish.el (muse-publish): Ditto.
    * muse.el (muse): Ditto.
Commits on Jun 13, 2005
  1. Fix publishing error when given an empty string for header/footer.

    mwolson committed Jun 13, 2005
    * muse-publish.el (muse-insert-file-or-string): Don't pass argument to
      `file-readable-p' if it is an empty string.  For some reason,
      `file-readable-p' and `insert-file-contents' were treating an empty
      string as if it were the current directory.
  2. WYSIWYG emphasis, XEmacs compatibility hacks.

    mwolson committed Jun 13, 2005
    * muse-colors.el (muse-colors-emphasized): Make emphasis more WYSIWIG
      compliant.  Only colorize if we end with the same number of asterisks
      as we start with, preventing unnoticed syntax errors.  Don't colorize
      in the middle of a word.
      (muse-colors-underlined): Make underlining more WYSIWIG compliant.
      Only colorize if we end with an underscore.  Don't colorize in the
      middle of a word.
    * muse-docbook.el (muse-docbook-markup-paragraph): Move question mark
      inside of group.  This will probably not do anything, but it seems
      syntactically good.
    * muse-html.el (muse-html-markup-paragraph): Attempt to deal with case
      where we start with an image link.  JohnW didn't seem to like having
      <p> tags inserted before image links, but they don't validate properly
      as they are.  For now, I will surround such links/paragraphs with <div
      class="image-link"> in an attempt to be as not invasive and yet
      standards compliant as possible.
    * muse-html.el (muse-html-escape-string): Work around distinction between
      int and char types in XEmacs.  Deal with an annoying replace-match bug
      in XEmacs that rears its head at times.
    * muse-publish.el (muse-publish-markup-word): Allow underlines to be
  3. Minor code cleanup to address elint issues.

    mwolson committed Jun 13, 2005
    * Makefile (test): Don't build README files during this rule.  Remove
      spurious "make clean" statement.
    * muse-colors.el (muse-colors-tags): Make sure that this appears in the
      `muse-colors' group, and give it a proper type.
    * muse-mode.el: Wrap condition-case around `eval-when-compile'.
    * examples/johnw/muse-johnw.el (muse-my-html-insert-contents,
      muse-my-journal-find-entries): Replace `string-to-int' with
    * muse-html.el (muse-html-insert-contents): Ditto.
    * muse-journal.el (muse-journal-html-munge-buffer,
      muse-journal-latex-munge-buffer): Ditto.
    * muse-journal.el (muse-journal-rss-munge-buffer): Ditto.
    * muse-publish.el (muse-publish-markup-footnote,
      muse-publish-contents-tag): Ditto.
    * muse-regexps.el (muse-extreg-usable-p): Ditto.
  4. Add ability to automate the creation a new blosxom entry.

    mwolson committed Jun 13, 2005
    * examples/mwolson/muse-init.el: Move new entry section to
      muse-blosxom.el.  Modify the key settings in my example accordingly.
    * muse-blosxom.el (muse-blosxom-footer): Just use the empty string, since
      Muse always makes sure that the file ends with a newline.
    * muse-blosxom.el (muse-blosxom-markup-regexps): Remove this, since
      planner markup is now provided automatically by the planner port to
      Muse, and we don't have any customized markup.
    * muse-blosxom.el (muse-blosxom-base-directory): New customizable
      variable that specifies where the base directory of your blog entries
      is found.
    * muse-blosxom.el (muse-blosxom-get-categories): Get the categories from
      the base directory.  Explore categories recursively.
    * muse-blosxom.el (muse-blosxom-title-to-file): Helper function for
      `muse-blosxom-new-entry'.  Turns the given title into a lowercase, sans
      special characters file name.
    * muse-blosxom.el (muse-blosxom-new-entry): Automate the process of
      making a new blog entry.  It will prompt you for a category, then a
      title, and then will create a new file that has the date and title
Commits on Jun 12, 2005
  1. Change mailing address of FSF, add AUTHORS file.

    mwolson committed Jun 12, 2005
    * muse-*.el, muse.texi: Change mailing address of FSF.
    * muse.texi (Contributors): Fix typo.
    * AUTHORS: New file containing a list of all of those who have
      contributed code or documentation to Muse, how many lines were changed,
  2. Merged from (patch 0-1)

    mwolson committed Jun 12, 2005
    Patches applied:
       tag of
       fix .html (for example) in visible names for links
Commits on Jun 11, 2005
  1. Make generated X(HT)ML show up in the right encoding in other modes.

    mwolson committed Jun 11, 2005
    * muse-html.el (muse-xhtml-header): Add "encoding=..." to first line.
      Thanks to Zhiqiang Ye for the suggestion.  This attempts to make
      generated (X)HTML files show up in the right coding system when editing
      them with another Emacs mode.
    * muse-journal.el (muse-journal-rss-header): Automatically determine the
      encoding instead of hard-coding it.
    * muse-message.el: Add content to Commentary section, explaining the use
      of this publishing style.
  2. Move regexps to same group, only make 4 heading faces.

    mwolson committed Jun 11, 2005
    * muse-colors.el (muse-make-faces): Only create 4 header faces since we
      can only publish 3 of them specially, leaving the fourth to be in
      plain text.
      (muse-colors-markup): Only recognize 4 levels of heading.
    * muse-regexps.el (muse-tag-regexp, muse-link-regexp, muse-url-regexp)
      (muse-file-regexp, muse-image-regexp)
      (muse-ignored-extensions-regexp): Moved here from muse.el.  It seems
      like a good idea to have all the regexps in the same group.
Commits on Jun 9, 2005
  1. Update my example config, minor code cleanup.

    mwolson committed Jun 9, 2005
    * examples/mwolson/muse-init.el (muse-project-alist): Shorten project
      names and add "Plans" project.
    * muse-docbook.el (looking-back): Delete.
    * muse-html.el (looking-back): Delete.
    * muse-html.el (muse-html-markup-paragraph): Use `muse-looking-back'
      instead of `looking-back'.
    * muse.el (muse-looking-back): Instead of redefining the `looking-back'
      function, use this function.  If `looking-back' exists, call it;
      otherwise, use a workaround.
Commits on May 30, 2005
  1. Handle a few paragraph publishing edge cases better.

    mwolson committed May 30, 2005
    * muse-docbook.el (muse-docbook-markup-regexps): Consolidate the
      beginning-of-document, end-of-document, and paragraph separator regexps
      so that one markup rule can be used in all these cases.
      (muse-docbook-markup-paragraph): Handle more cases correctly.  In
      particular, blockquote or center at beginning or end of document will
      be published properly.  Hopefully this won't slow things down too much.
      (muse-docbook-markup-paragraph-close): Removed.
    * muse-blosxom.el (muse-blosxom-markup-regexps): Ditto.
    * muse-html.el (muse-html-markup-regexps, muse-html-markup-paragraph):
      (muse-html-markup-paragraph-close): Removed.
Commits on May 28, 2005
  1. Improve prompt when reading a tag.

    mwolson committed May 28, 2005
    * muse-mode.el (muse-insert-tag): Add a colon after "default" like some
      other Emacs modes seem to do.
  2. Warn user when publishing fails due to a private directory.

    mwolson committed May 28, 2005
    * muse-project.el (muse-project-private-p): Warn users when publishing a
      file fails due to its directory not being readable by others.  Make
      sure that you do a `chmod +o name_of_directory' if you want the
      contents of that directory to be publishable.
  3. Fix error with example tags and message publishing style.

    mwolson committed May 28, 2005
    * muse-colors.el: Don't define `font-lock-mode' as a variable.  Check to
      see if a previous definition for `font-lock-multiline' exists.
    * muse-message.el (muse-message-example-tag): Don't require two
      additional (unused) arguments.
Commits on May 22, 2005
  1. Always end the published document with a newline.

    mwolson committed May 22, 2005
    * muse-html.el (muse-html-markup-paragraph-close): Always end the
      published document with a newline.
    * muse-docbook.el (muse-docbook-markup-paragraph-close): Ditto.
  2. Don't let automatic backup files crash the publishing process.

    mwolson committed May 22, 2005
    * muse-blosxom.el (muse-blosxom-markup-regexps): Remove rule for date
      directive since this value is already processed by
      `muse-publish-markup-directive', and may be obtained by using
      the code: (muse-publishing-directive "date").
    * muse-colors.el (muse-colors-region): Make sure that we don't ever try
      to run (funcall nil); this happened once during a debugging process.
    * muse-project.el (muse-project-private-p): Skip any file for which we
      cannot fetch attributes.  This fixes a bug where having an
      Emacs-generated automatic backup file in a publishing directory causes
      the publishing process to halt with an error.
Commits on May 20, 2005
  1. Apply fix in previous patch to the DocBook publishing style.

    mwolson committed May 20, 2005
    * muse-docbook.el (muse-docbook-markup-paragraph-close): Apply fix from
      previous patch here as well.
  2. Fix newly-introduced lock-up during HTML publishing.

    mwolson committed May 20, 2005
    * muse-blosxom.el (muse-blosxom-markup-regexps): Give date directive and
      planner rules higher priority in the publishing sequence.  Hopefully
      this will not wreck anything; I don't use these rules, so I cannot
      tell.  This wasn't a real bugfix, just an aesthetic code thing for me.
    * muse-html.el (muse-html-markup-paragraph-close): Don't use
      replace-match; that seems to be slightly evil.  Return nil instead of a
      newline since otherwise Muse thinks that we are not done yet and gets
      into an infinite loop.  This should fix the lock-up problem that
      resulted from the previous few patches.
Commits on May 19, 2005
  1. Parenthesis goofup.

    mwolson committed May 19, 2005
    * muse-blosxom.el (muse-blosxom-markup-regexps): Remove stray parenthesis.
  2. Make docbook and blosxom modes close paragraphs properly at end.

    mwolson committed May 19, 2005
    * muse-blosxom.el (muse-blosxom-markup-regexps): Use new rule from last
    * muse-docbook.el (muse-docbook-markup-regexps): Ditto.
      (muse-docbook-markup-paragraph-close): Adapt from
    * muse-html.el (muse-html-markup-paragraph-close): Add newline so that we
      preserve the same appearance as before the last patch.
  3. Bugfix: Close P tag properly at end of file.

    mwolson committed May 19, 2005
    * muse-blosxom.el: Fix bug where loading this file twice would cause an
    * muse-html.el (muse-html-markup-regexps): Use simpler mechanism for
      detecting whether or not a paragraph needs a closing P tag.
      (muse-html-markup-paragraph-close): New function that only inserts a
      closing P tag when an unclosed P tag is nearby.