Hello! I experienced a similar problem last summer and I was just about to reply to your problem.
In my project all my links contain the file extension ".muse". I have not found a setting that would accomplish a correct publishing for this case. To generate correct links to html-files I explicitly rewrite all the links before publishing . I added a somewhat crude hack to my project file (`my-muse-publish-muse-links-map) which performs this task. This hack may be polished up by using a somewhat more specific regular expression. But it works for me for the time being. As far as I understand the solution that I apply is somewhat more general purpose, because the code works for any directory structure withouth modification. When I have enough time I will look into the muse code to provide a more pleasant way to deal with this issue. The test project that demonstrates the hack is contained in the attached tar.gz-file. Proceed as described in "test-init.el" file. Kind regards Stefan --- On Tue, 2/9/10, Baranyi Péter <[email protected]> wrote: > From: Baranyi Péter <[email protected]> > Subject: Re: [Muse-el-discuss] multiple publish directory problem > To: "Discussion and help for Emacs Muse" <[email protected]> > Date: Tuesday, February 9, 2010, 11:34 AM > Hi again, > > and thanks for your help, but I found it easier to just > write a > before-end publish hook, which rewrites html links in the > second > directory. Problem solved. > > (muse-derive-style "html-one" "html" > > :maintainer "[email protected]") > > (muse-derive-style "html-two" "html" > > :maintainer "[email protected]" > > :before-end > 'my-muse-rewrite-html-links-to-point-to-same-directory > ) > > (defun > my-muse-rewrite-html-links-to-point-to-same-directory () > "rewrite links in current buffer: <a > href=\"../one/PageOne.html\"> -> <a > href=\"PageOne.html\">" > (goto-char (point-min)) > (while > (re-search-forward "<a > href=\"../one/" nil t) > (replace-match "") > (muse-insert-markup "<a href=\"") > )) > > > > On Mon, 2010-02-08 at 08:27 +0100, Alex Ott wrote: > > Hello > > > > Baranyi Péter at "Sun, 07 Feb 2010 23:37:18 > +0100" wrote: > > BP> Thank you for your comments but > unfortunately this does not work for me. > > BP> I changed the index page to: > > > > BP> - [[PageOne]] > > BP> - [[PageTwo]] > > BP> - [[./PageOne]] > > BP> - [[./PageTwo]] > > > > BP> and all links still point to the one > directory: > > > > BP> <a > href="../one/PageOne.html">./PageOne</a> > > > > BP> But interestingly, if i use a > [[./PageOne]] to a muse source file that > > BP> is in another directory, then the result > is: > > > > BP> <a > href="./PageOne">./PageOne</a> > > > > BP> So it works in this case but the file > extension is missing. Any help > > BP> please? > > > > The main idea, that you should use relative file > names, instead of just > > page names. For example, to point to file in > other directory, you need to > > put name like [[../other-dir/File]], etc. You > can look to sources of my > > site - http://alexott.net, if you'll replace .html with .muse, > then you'll > > see source code of it > > > -- > Baranyi Péter <[email protected]> > > > _______________________________________________ > Muse-el-discuss mailing list > [email protected] > https://mail.gna.org/listinfo/muse-el-discuss >
test_proj.tar.gz
Description: application/gzip
_______________________________________________ Muse-el-discuss mailing list [email protected] https://mail.gna.org/listinfo/muse-el-discuss
