## July 23, 2009

### nLab – How to get started

#### Posted by Urs Schreiber

If you are one of the many esteemed contributors to the $n$-Café who go through the trouble from time to time to post valuable information in some of the discussions that we are having – or if you always thought about doing that but never got around to it – you might be interested in having your contribution, be it a small remark or a major exposition or anything in between, archived and hyperlinked in a more accessible and more robust form than a plain blog comment provides.

That’s one thing that the $n$Lab wiki is for! The $n$Lab accumulates hyperlinked information and expertise on all the topics we discuss around here.

It’s quick and easy to include your blog comment contributions into the $n$Lab network. Here’s a page that’ll help you get started:

$n$Lab: How to get started.

Posted at July 23, 2009 12:02 PM UTC

TrackBack URL for this Entry:   http://golem.ph.utexas.edu/cgi-bin/MT-3.0/dxy-tb.fcgi/2021

### Re: nLab – How to get started

It’s probably worth saying - at least for us mere mortals without n-super powers here at the cafe - that if you want to copy a comment from the cafe to the lab then it’s best to save a copy from before you submit it to the cafe. I don’t know if Urs, John, or David can recover the original markdown+itex syntax of a comment, but we humble lusers don’t seem to have that ability (not that we should). So if, in the course of writing a comment here, you think “Maybe it would make sense to put this on the n-lab”, save a copy of your comment before you post it. (Some people do that anyway so that they don’t lose their comment if the Cafe Gremlins eat it). And don’t be shy and retiring about it. After all, saving a copy of your comment just uses up a few bytes on your harddisk - you don’t have to post it to the n-lab if, upon later reflection, you decide not to. But if you didn’t save it and later decide that you should labify it, then it’s not so easy.

Of course, you can always paste xhtml+mathml directly into the n-lab so you could cut and paste after posting, but the markdown+itex syntax makes it easier for others to edit the entry afterwards (I’m not sure what the effect of adding Pure XHTML would be to the diet of the Lab Elves. I’m not sure if the experiment is worth the risk).

Posted by: Andrew Stacey on July 23, 2009 1:07 PM | Permalink | Reply to this

### Re: nLab – How to get started

Yes. There is currently a discussion of that point in a query box How to get started.

That query box should eventually be removed (we want query boxes everywhere but not on that particular page, I think) and the paragraph right above it should be upgraded to make the point explicit that you just mentioned.

Posted by: Urs Schreiber on July 23, 2009 1:17 PM | Permalink | Reply to this

### request

Here is a request to those of our readers, who feel new to all this:

over in that green box at How to get started Bruce Bartlett, Andrew Stacey and myself are discussing roughly how we need to phrase the previous paragraph such as to keep it brief (that’s what I am aiming for, anyway) while at the same time making it very clear that you are supposed to copy-and-paste the source code of a blog comment into the $n$Lab, not to try to copy and paste the output.

How clear or not clear is this?

Posted by: Urs Schreiber on July 23, 2009 2:27 PM | Permalink | Reply to this

### Re: request

If we’re the ones who wrote the blog comment, that’s fine, but if we’re trying to quote someone else, there’s no way to get the source code (at least, not for mere mortals–I’m pretty sure there’s a way for admins to do it).

Posted by: Mike Stay on July 23, 2009 4:15 PM | Permalink | Reply to this

### Re: request

If we’re the ones who wrote the blog comment, that’s fine, but if we’re trying to quote someone else, there’s no way to get the source code (at least, not for mere mortals–I’m pretty sure there’s a way for admins to do it).

I see. So I am coming from a different direction here: the motivation for this “How to get started” thing was to point out how very easy it is for those who are about to post a comment to the Cafeé, to just also post the relevant bits of their comment to the lab.

Okay, so we need two different sections at the How to get started.

a) How to forward your own blog post to the Lab

b) How to post material that you find somewhere on the web to the Lab.

Posted by: Urs Schreiber on July 23, 2009 6:36 PM | Permalink | Reply to this

### Re: request

How to post material that you find somewhere on the web to the Lab.

This could be tricky. Generally, things like markdown are one-way converters. There isn’t a lot of call for the reverse!

Best would be to copy what you see and then hack it by hand back into markdown+itex. Or convince an admin to get the original source and email it to you.

Posted by: Andrew Stacey on July 23, 2009 7:19 PM | Permalink | Reply to this

### Re: request

This could be tricky.

Yes, but the How to get started page should not dwell on tricky aspects. It should give a quick working definition that produces good results to first approximation. Just good enough so that the lab elves can pick it up and polish it.

As you have probably seen hours ago, I have edited the page accordingly. I see that John meanwhile went over everything, too, and made it all still a bit nicer.

I suggest: unless critically necessary we don’t add much more to “How to get started”. Part of the point of this page is to be short, so that people actually read it and do get the impression (which is correct) that contributing is easy and no trouble.

Detailed discussion of tricky details etc should certainly be kept, but at the main HowTo page or even some special new pages branched off from that.

Or so I think.

Posted by: Urs Schreiber on July 24, 2009 12:14 AM | Permalink | Reply to this

### Re: request

AMEN!

Posted by: jim stasheff on July 24, 2009 5:59 PM | Permalink | Reply to this

### Re: nLab – How to get started

I don’t know if Urs, John, or David can recover the original markdown+itex syntax of a comment, but we humble lusers don’t seem to have that ability (not that we should).

Why shouldn't we?

In fact, if someone (which is mostly only Jacques) signs their comment with PGP, then you can look at the source code (part of verifying the signature). It shouldn't be too hard to allow that with any comment.

Posted by: Toby Bartels on July 23, 2009 10:37 PM | Permalink | Reply to this

### Re: nLab – How to get started

Being able to view the source code of an nCafe comment would be really useful even just when quoting other people’s comments in replies on the nCafe, in addition to when moving stuff to the nLab.

Posted by: Mike Shulman on July 26, 2009 5:36 PM | Permalink | Reply to this

### Re: nLab – How to get started

The “how to get started” page refers to using the Markdown with itex to MathML filter by default. Is there an automatic way to set it as the default, without having to manually select it every time? Hopefully without installing some complicated firefox extension? I feel like this is a basic thing that I should know, but I’ve never figured it out. It seems intuitive to me that one’s text filter preference should be saved along with one’s name, email, and URL, but that doesn’t seem to happen.

Posted by: Mike Shulman on July 26, 2009 5:47 PM | Permalink | Reply to this

### Re: nLab – How to get started

Hi.

This just reminds me that I am due to write an entry.

A question: is it possible to directly incorporate previously written latex, when there are definitions like \def \g {\mathfrak{g}} appearing in the preamble?

João

Posted by: João Faria Martins on July 23, 2009 1:58 PM | Permalink | Reply to this

### Re: nLab – How to get started

Hi João!

This just reminds me that I am due to write an entry.

Okay, thansk. I was wondering if you would still find the time. That’s great. The sub-web of Lie $n$-algebraic entries is badly in need of somebody taking care of it.

A question: is it possible to directly incorporate previously written latex, when there are definitions like \def \g {\mathfrak{g}} appearing in the preamble?

You can use all plain standard LaTeX commands, but not predefined macros etc, unfortunately.

Posted by: Urs Schreiber on July 23, 2009 2:05 PM | Permalink | Reply to this

### Re: nLab – How to get started

Hi João,
Why not just do a search and replace (carefully, not block), then delete the initial macro definition?

Posted by: Tim Porter on July 23, 2009 5:58 PM | Permalink | Reply to this

### Re: nLab – How to get started

It’s a sad but true fact that macros don’t work on Instiki, the software on which the $n$Lab runs.

If you have a lot of material in LaTeX that you’d like to contribute, the quickest method might be to set up some emacs macros that’ll do things like change your macro

\g

to the original LaTeX

\mathfrak{g}

When I’m done writing my Prehistory of $n$-Categorical Physics, I will try to put it and also the Rosetta Stone paper on the $n$Lab. Then I will need to become an expert at dealing with material that was written using macros.

Of course I wish some supergenius would invent a wiki that would run full-fledged LaTeX, including the ability to run macros, handle embedded Postscript figures, etc. But, no such supergenius seems to be available.

Posted by: John Baez on July 23, 2009 2:24 PM | Permalink | Reply to this

### Re: nLab – How to get started

Of course I wish some supergenius would invent a wiki that would run full-fledged LaTeX, including the ability to run macros, handle embedded Postscript figures, etc. But, no such supergenius seems to be available.

That’ll be me, then.

Seriously, that’s not intended as a replacement for Instiki or itex. The point was originally to convert xymatrix diagrams to SVG. It’s stalled a little while I concentrate on other things (like finding a host for the n-lab).

However, rudimentary as it is then it does have the capability to handle macros. And it wouldn’t be too hard to change it so that it spat out markdown+itex rather than XHTML+MathML.

In fact, there’s one or two LaTeX documents that I’d like to post on the n-lab that are a little too long to convert to markdown+itex by hand so I do have motivation to develop this further, just not quite as much time as I’d like …

… but anyone who’d like to do that as well is encouraged to email me. Even just volunteering to beta test is something.

Posted by: Andrew Stacey on July 23, 2009 2:36 PM | Permalink | Reply to this

### Re: nLab – How to get started

If anyone has an example LaTeX document they would like us to try to convert automagically to something digestable by n-Lab, could you post it to a page on the nLab (or on my personal lab area, or your own personal lab area if you have or want one).

Andrew, I’d be happy to help out on an ad hoc basis without being able to make any true commitment of time.

Maybe we could create a separate page like the one you have, where someone can paste some LaTeX source, hit “Convert to itex” and have it convert the text to something that can be pasted into an edit box on the nLab.

I think we just need to write a fairly basic parser that maps certain commands to other commands, e.g. \g$\to$\mathfrak{g}.

Posted by: Eric Forgy on July 23, 2009 4:03 PM | Permalink | Reply to this

### Re: nLab – How to get started

I keep starting to write such a parser, but then I use too many macros to make it worthwhile doing as a parser rather than a full expander, and that’s where part of PHPLaTeX came from. It actually wouldn’t be hard to make that output markdown+itex instead of XHTML+MathML.

Eric, as for the offer of help, that’s pretty much how I’m hacking it! So an ad hoc basis is great. Head on over to the forum and scan through Toby and my discussion on it to get you started. I got the impression from elsewhere that you are on a Windows machine, in which case I’d be especially glad to hear of what things look like there.

Posted by: Andrew Stacey on July 23, 2009 7:14 PM | Permalink | Reply to this

### Re: nLab – How to get started

Any language preference? Should we do it in PHP? Makes sense. It’ll give me an excuse to learn PHP :)

I might try to get a server running on my laptop so I can test things locally and then maybe we could start sharing code.

Posted by: Eric Forgy on July 23, 2009 9:16 PM | Permalink | Reply to this

### Re: nLab – How to get started

Eric wrote:

If anyone has an example LaTeX document they would like us to try to convert automagically to something digestable by n-Lab, could you post it to a page on the nLab (or on my personal lab area, or your own personal lab area if you have or want one).

Oh, wow! Where to begin???

I’ve been dying for something like this, because after I’m done with some smaller projects I might want to write a book on the $n$Lab… but I’d still like to keep the option of also publishing it the old-fashioned way, on paper… and I don’t really want to have to write it twice, once in LaTeX and once on the $n$Lab. Maybe it’s easier to convert from $n$Lab-ese to LaTeX than vice versa, but I have a number of longish review articles in LaTeX that I might like to fold into this book, so I’d really like to easily convert both ways.

Anyway, this LaTeX file might be a good one to start with — it’s my first paper with Jim Dolan, and the LaTeX is fairly rudimentary except for some tables and a bunch of figures, which I’d be glad to handle separately.

Actually, this one is even easier — it’s my first paper on spin foams. It only has two figures, which are encapsulated postscript figures that I can handle separately.

If it helps somehow, I can put them on the $n$Lab — but feel free to do it yourself.

Posted by: John Baez on July 23, 2009 7:52 PM | Permalink | Reply to this

### Re: nLab – How to get started

Here is a cached version of a Spanish page (translated to English) that I think claims to have developed a “latex2itex” application specifically for Instiki,

Posted by: Eric Forgy on July 23, 2009 9:45 PM | Permalink | Reply to this

### don’t call you-know-which-page

It seems to me that somewhere out there somebody is repeatedly calling the Recently Revised page.

Whoever it is: Please don’t, for the time being! See the alert at latest changes.

Posted by: Urs Schreiber on July 23, 2009 2:08 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

Is there no clever way of disabling Recently Revised through the current troubles?

Posted by: David Corfield on July 23, 2009 2:40 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

Done.

Just gives a 403 rather than anything useful. If anyone thinks it would be better to have a more informative error document then feel free to write one (raw (x)html, not internal to the n-lab).

Posted by: Andrew Stacey on July 23, 2009 3:29 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

Why didn’t we do this earlier? :)

Great solution. Thanks Andrew!

Posted by: Eric Forgy on July 23, 2009 6:25 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

Why didn’t we do this earlier? :)

Didn’t think of it, sorry.

Great solution. Thanks Andrew!

No problem. Instructions are on the forum for reverting the change if needed.

Posted by: Andrew Stacey on July 23, 2009 7:59 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

If anyone thinks it would be better to have a more informative error document then feel free to write one (raw (x)html, not internal to the n-lab).

It would be useful if it displayed a link to Latest Changes.

Posted by: Urs Schreiber on July 24, 2009 12:25 AM | Permalink | Reply to this

### Re: don’t call you-know-which-page

If anyone thinks it would be better to have a more informative error document then feel free to write one (raw (x)html, not internal to the n-lab).

It would be useful if it displayed a link to Latest Changes.

Could someone please tell me what I’d need to do to achive this functionality? Which file do I have to edit?

Posted by: Urs Schreiber on July 27, 2009 10:03 AM | Permalink | Reply to this

### Re: don’t call you-know-which-page

You need to design a webpage that you want to be shown when someone does something that gets an error on the n-lab. The type of error that is going to get this is when the n-lab is fine but the user tried to do something that isn’t allowed, such as loading recently revised. If you want an example, do something illegal on my website go to my error page. How you generate this is not important.

Once it’s generated, it needs to be uploaded to the n-lab and the lighttpd process needs to be told of its existence. Exactly where it should be put will depend slightly on how the server is configured, I’ll need to look at the configuration file to figure that out. Once it’s in a suitable location, then the server needs to know that it is the error file.

But once the file is on the server somewhere then looking up the best location and changing the configuration file can be done in one step and it looks simple to do. It looks like a 5-minute job and I’m happy to do that. What I didn’t want to do was design the page in the first place.

(I suppose we could make the error page a subpage of the n-lab (or nlabmeta) but I subscribe to the view that error pages ought to be as simple as possible - in particular, flat HTML files - so that they have as few dependencies as possible.)

Posted by: Andrew Stacey on July 27, 2009 10:18 AM | Permalink | Reply to this

### Re: don’t call you-know-which-page

But once the file is on the server

It is: let’s take it to be the Latest Changes page!

It doesn’t have to display an error message. It should provide the information that the user is expecting. The user clicks on “recently revised” in order to see which pages were recently revised. I’d like to user to be passed to our Latest Changes page, which serves precisely that purpose.

Posted by: Urs Schreiber on July 27, 2009 5:34 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

‘latest changes’ shouldn’t be an error page. Error pages are what you get when something goes wrong, so therefore should depend on as little as possible since it might have been one of those dependencies that went wrong.

However, that ‘recently revised’ causes an error is something that has been imposed on the system rather than a genuine error so making it redirect to ‘latest changes’ is acceptable.

Which is a long way of saying:

‘Recently Revised’ now redirects to ‘Latest Changes’, as requested.

This also means that ‘recently revised’ for the non-nlab labs works again.

Posted by: Lab Elf (service department) on July 27, 2009 9:04 PM | Permalink | Reply to this

### Re: don’t call you-know-which-page

Thanks Andrew, that’s great! This is now useful functionality.

Error pages are what you get when […]

All right, I know that I could use some time updating my general IT-savvyness but I can reassure you that I do know what an error page is meant to be…

;-)

Posted by: Urs Schreiber on July 27, 2009 9:18 PM | Permalink | Reply to this

### Re: nLab – How to get started

Andrew,

The link you gave gives me an error message on Firefox 3.5.1 on a Mac. However, the name PHPLaTeX makes it sound like something I would be interested in, so please would you enlighten me as to what it does?

Generally, converting full LaTeX to XHTML+MATHML is quite a hard problem because LaTeX is not a fully semantic language, i.e. it has a few too many constructs that depend on the fact that it was designed to produce printed output on paper. I won’t bore you with the details of why that is the case, but it is the reason why most web-based solutions, such as itex, concentrate on a subset of LaTeX rather than the whole shebang.

The easiest way to convert full LaTeX, including macros and arbitrary packages, to HTML+MATHML is to use tex4ht. This program kind of cheats by using a full LaTeX install on the backend, so it has the .dvi file to hand to help it interpret things that would otherwise be difficult to understand. However, it has several disadvantages. Firstly, it is slower than something like itex because it runs a full LaTeX process. Secondly, it requires tweaking of the command line options to get good quality output, so it is not really suitable for automated translation. Thirdly, no-one has incorporated it into wiki or blog software, i.e. the Jacques Distler of tex4ht is nonexistent.

In my view, the most elegant solution is GELLMU, which is really a markup language similar to LaTeX rather than a dialect of LaTeX like itex. It strips out all the non-semantic stuff and changes some things to make it easier to convert to other semantic languages. However, it does not involve learning too many things. It also supports macros (via \newcommand rather than \def), but not packages. It’s disadvantages are that it is written in Emacs lisp, so that it is hard but not impossible to setup as a web process. Also, no Jacques Distler has emerged for this project either, although I am currently thinking about becoming one.

Posted by: Matt Leifer on July 23, 2009 3:13 PM | Permalink | Reply to this

### Re: nLab – How to get started

Well, PHPLaTeX is not really even at the alpha stage yet. I’ve only tested it on firefox 3.0.x on Linux (don’t have a mac anymore, sob). Please send me the error message (via email) and I’ll take a look.

I know what you mean about full LaTeX to XHTML+MathML conversion and this isn’t an attempt to do it. It was originally an attempt to convert xymatrix figures to SVGs for putting on the n-lab. The main issue was getting the SVGs to look right (which is a pain due to the lack of coordination between the MathML and SVG parts). However, in the process of doing so I ended up writing a TeX processor in PHP (it’s not a proper TeX processor, rather an emulator).

I use PHP because that’s all I have available on my local system. I also have an earlier perl version for offline use (same principle, but not nearly so advanced).

I’d not heard of GELLMU before, thanks for the link. I do know about tex4ht, but what got me started was the fact that its tikz->SVG conversion is horrendous and I figured that tikz syntax is so close to SVG already that there must be a better way (TM). Plus the tex4ht implementation just seemed wrong!
(Why I actually started with xymatrix rather than tikz is boring.)

What doesn’t excite me about GELLMU is that it’s yet another LaTeX variant. I would prefer something that could understand a LaTeX document, ignore the stuff that is irrelevant to web presentation, and present the rest. I’m fed up having to learn new variants of stuff just to do my job (I learnt perl, now I have to learn PHP, and seems like I have to learn ruby now). Also, while learning new syntax is great for new projects then it’s useless for old ones, and it’s often those old ones where conversion is most needed.

Anyway, enough of the rant. I realise that I haven’t answered your original question! PHPLaTeX is a program written in PHP than can convert a basic subset of LaTeX input into XHTML+MathML+SVG. It’s big selling point is that it works by token expansion rather than pattern matching (okay, figuring out what a token is is currently implemented by pattern matching but I’ve got plans for catcodes). That means that macro expansion works as it ought to. At the moment, I haven’t finished writing the default command set so it’s not really suitable for full use yet (there’s also one or two routines that I need to work on). But Toby’s been trying it out a little (comments over on the n-forum). Any offers of help or encouragement will be gratefully received.

Posted by: Andrew Stacey on July 23, 2009 3:56 PM | Permalink | Reply to this

### Only one

There is (you can check Google on this) only one Jacques Distler, who has rather finite resources.

Please remember that itex is not a fixed subset of LaTeX. It is whatever subset we (the users and implementers) want it to be.

The source code is in a BZR repository. If you, or anyone else, has a good idea for extending the syntax, do a

 bzr branch http://golem.ph.utexas.edu/~distler/code/itexToMML


and start hacking away. Send me an email when you have something.

The point was to have something that was

1. lightning fast
2. easily incorporated in a variety of content-management systems.

itex2MML is a Unix commandline stream filter, or a library for Ruby. (It’s easy, using SWIG, to turn it into a library for other languages, e.g. Perl. It’s just laziness that I haven’t done that – it’s almost as easy to do a system call, and use the stream filter.)

Posted by: Jacques Distler on July 24, 2009 12:15 AM | Permalink | PGP Sig | Reply to this

### Re: Only one

Absolutely! You’re unique. At least until we get that cloning machine working …

What I started doing was working on something that would get SVGs into n-lab. I like pictures and I think we need more of them.

As you’ve said yourself, though, writing a tikz->svg or xymatrix->svg converter into itex is not easy, even supposing one could craft the output to look right as a MathML+SVG mix. So PHPLaTeX grew out of a desire to at least have some way of generating the raw code for direct insertion into the n-lab.

It is, by its nature, slower than itex but it is not intended as a replacement. If I understood what was really going on in itex, and if I’d known that it was easy to convert to perl (I did do some looking round for a way to do this, but didn’t find SWIG, must look again), then I’d’ve probably started hacking that.

Posted by: Andrew Stacey on July 24, 2009 9:22 AM | Permalink | Reply to this

### Re: Only one

I should give references.

This blogging software is written in Perl. The interface to itex2MML is implemented as a plugin which just does a system call to the Unix commandline executable.

SWIG is a handy-dandy framework for turning C/C++ programs into extension for Perl/PHP/Ruby/Java/Python/ …

Itex2MML is written in Lex/Yacc.

Lex is a language for generating a lexer (a C program that breaks an input stream into tokens).

Lex source is a table of regular expressions and corresponding program fragments. The table is translated to a program which reads an input stream, copying it to an output stream and partitioning the input into strings which match the given expressions. As each such string is recognized the corresponding program fragment is executed. The recognition of the expressions is performed by a deterministic finite automaton generated by Lex. The program fragments written by the user are executed in the order in which the corresponding regular expressions occur in the input stream.

Yacc is a language for generating a parser — something which takes the tokens produced by the lexer and produces the desired actions (in the present case, outputting the desired MathML output).

Yacc provides a general tool for imposing structure on the input to a computer program. The Yacc user prepares a specification of the input process; this includes rules describing the input structure, code to be invoked when these rules are recognized, and a low-level routine to do the basic input. Yacc then generates a function to control the input process. This function, called a parser, calls the user-supplied low-level input routine (the lexical analyzer) to pick up the basic items (called tokens) from the input stream. These tokens are organized according to the input structure rules, called grammar rules; when one of these rules has been recognized, then user code supplied for this rule, an action, is invoked; actions have the ability to return values and make use of the values of other actions.

The source for the itex2MML lexer is itex2MML.l. The source for the itex2MML parser is itex2MML.y.

While Lex/Yacc (or Flex/Bison) spit out C code, there are similar contraptions for other target languages , e.g. Rex/Racc for Ruby and Parse::Flex/Parse::Yapp for Perl.

If you’re writing something that parses tikz/XYmatrix input and spits out MathML+SVG output, using such a contraption ought to simplify life, greatly.

Posted by: Jacques Distler on July 26, 2009 7:50 PM | Permalink | PGP Sig | Reply to this

### Re: Only one

This blogging software is written in Perl.

That reminds me, I’ve been meaning to ask what the actual software underlying this site is. Given that there are quite a few experiments out there with mathematical blogging, it would be a Service to Mathemanity to do a brief write-up of what it takes to get a blog running that produces MathML instead of all those irritating PNGs.

Now that you’ve told me how to produce perl and PHP versions of itex2mml via SWIG, I might take the time to make bbpress and vanilla plugins; but I’d also want to include a validator such as runs here so would be interested in knowing which plugin produces that. And there’s probably lots of other hints, hacks, and howtos that you’ve had to figure out in developing this system (if I were American, I’d be lacing that paragraph with lots of “awesome” and “amazing”s. As I’m English, I won’t, but feel free to add them in as this comment passes over the atlantic).

Posted by: Andrew Stacey on July 27, 2009 9:26 AM | Permalink | Reply to this

### Re: Only one

This is a heavily hacked version of MovableType 3.x.

Since MT 3.x is not open-source, distributing that modified version is … awkward.

MovableType 4.x, however, is open-source. If I were not so distracted by other things, I would, long-ago, have ported my changes to the open-source version of MovableType, and then anyone could have at it.

I still aim to do that (anyone knowledgeable in Perl is welcome to help!); it just keeps getting pushed down on the stack.

The “MT How-To” section of the sidebar to my blog has a number of entries devoted to “what you have to do to …”

It includes links to various plugins, which help make it happen: MTValidate, SVGfix, NumericEntitites, itexToMML.

One other thing, you might enjoy staring at, are the MT templates for this blog.

Posted by: Jacques Distler on July 27, 2009 7:50 PM | Permalink | PGP Sig | Reply to this

### Re: Only one

I should have guessed from the URL sitting just above me right now:

http://golem…/MT-3.0/sxp…

I’ll volunteer for help with the port to MT4.x, but my stack of “things to do” is quite large at the moment as well. I think I need a house elf …

Posted by: Andrew Stacey on July 28, 2009 10:11 AM | Permalink | Reply to this

### Shifting Goalpoasts

Turns out that some long-time MT developers (Byrne Reese, Jay Allen, Tim Appnel, Arvind Satyanarayn, …) decided to fork MovableType and create Melody. This looks very promising.

Moreover, they put the source on github. That will make things much easier …

Still, it’ll be at least a month before I can even think about looking at it …

Posted by: Jacques Distler on August 10, 2009 7:57 PM | Permalink | PGP Sig | Reply to this

### Re: nLab – How to get started

Several years ago when I was using LyX, I tested a few LaTeX to HTML converters and Tex4ht was the best and seldom required tweaking to obtain good output.

http://pear.math.pitt.edu/mathzilla/
The Problem: Putting math on the web is hard.
The Solutions: MathML Mozilla Tex4ht Itex2mml.

http://pear.math.pitt.edu/mathzilla/discussion.html
“Note also that a convenient way to prepare a html+itex document
(provided you have easy Web access) is to prepare the file in your
favorite editor, or html authoring tool (Composer, Word (hohum)…),
have the itex2mml file conversion page open in Mozilla, and carry
out a `edit document, save, press file upload button on the form,
view mathml page … and repeat’ sequence. Not exactly WYSIWYG …
but quite useful.”

http://pear.math.pitt.edu/mathzilla/itex2mmlFrag.html
A demonstration page is available. There you can enter a simple HTML
page with embedded itex, and have the page transformed into MathML.
[SH: There is a ready to go test page.]
——————————–

So this would require Firefox and maybe an itex editor such as AbiWord which are cross-platform. Somebody mentioned that it is a good idea to create and save the content of posts before posting to the web anyway, as they sometimes get eaten. An idea…

Posted by: Stephen Harris on July 24, 2009 2:22 AM | Permalink | Reply to this

### Re: nLab – How to get started

I think SWIG and Lex are better than Yacc.

Posted by: duric on September 15, 2012 5:19 AM | Permalink | Reply to this

Post a New Comment