Journal / 2 1
WebKit MathML is Progressing[permalink]
I've been able to make some progress getting MathML into the trunk of WebKit. You can see from the master MathML Bug that there are only a few patches that aren't in the trunk. In fact, 33703 doesn't count because it is a union of other patches for others who want to play and is now almost obsolete.
Just mfrac, mroot, and msqrt to go and we'll have a some basic MathML that is usable. There is, of course, quite a bit more to do.
Using contenteditable in Atomojo's Editor[permalink]
I just added the use of WYSIWIG editing to the content editor for entries with XHTML content. The contenteditable='true' is really simple and works very well in browsers like Safari or Firefox. Given that I only use non-broken browsers to edit my feeds, this will work well.
Web-based Editor for Atomojo[permalink]
I just finished a web-based editor for the Atom Publishing Protocol that is part of Atomojo. I've also integrated it with the Atomojo server. You can now just add the edit-client='true' attribute to any host or resource declaration in your server.conf and it will configure the editor on the /edit/ path of your server.
slow & painful[permalink]
Reconstructing my website from the raw data is a slow and painful process. *sigh*
Restlet is Awesome![permalink]
Restlet is really an amazing project. It is so easy to create a REST-oriented service.
For example, here's an example of a hello world service:
public class HelloWorld extends Application {
public HelloWorld(Context context) {
super(context);
}
public Restlet createRoot() {
Router router = new Router(getContext());
router.attach("/hello",new Restlet(getContext()) {
public void handle(Request request, Response response) {
response.setStatus(Status.SUCCESS_OK);
response.setEntity(new StringRepresentation("Hello World!",MediaType.TEXT_PLAIN);
}
});
router.attach("/goodbye",new Restlet(getContext()) {
public void handle(Request request, Response response) {
response.setStatus(Status.SUCCESS_OK);
response.setEntity(new StringRepresentation("Goodbye Cruel World!",MediaType.TEXT_PLAIN);
}
});return router;
}
}
Here we have an application that responds to two resource paths: "/hello" and "/goodbye". Each is is associated by attaching a "restlet" to a router.
Now, we could get more complicated and handle the requests more elegantly, but the above demonstrates how easy it is to route requests to instances that can handle them.

