Posts Tagged ‘markdown’



Writing & Blogging

Wednesday, February 27th, 2008

Terry Tao is reworking some of his better blogposts into a book, to be published by the AMS (here’s a preliminary version of the book “What’s New?”)

After some thought, I decided not to transcribe all of my posts from last year (there are 93 of them!), but instead to restrict attention to those articles which (a) have significant mathematical content, (b) are not announcements of material that will be published elsewhere, and (c) are not primarily based on a talk given by someone else. As it turns out, this still leaves about 33 articles from 2007, leading to a decent-sized book of a couple hundred pages in length.

If you have a blog and want to turn it into a LaTeX-book, there’s no need to transcribe or copy every single post, thanks to the WPTeX tool. Note that this is NOT a WP-plugin, but a (simple at that) php-program which turns all posts into a bookcontent.tex file. This file can then be edited further into a proper book.

Unfortunately, the present version chokes on LaTeXrender-code (which is easy enough to solve doing a global ‘find-and-replace’ of the tex-tags by dollar-signs) but worse, on Markdown-code… But then, someone fluent in php-regex will have no problems extending the libs/functions.php file (I hope…).

At the moment I’m considering turning the Mathieu-games-posts into a booklet. A possible title might be Mathieumatical Games. Rereading them (and other posts) I regret to be such an impatient blogger. Often I’m interested in something and start writing posts about it without knowing where or when I’ll land. This makes my posts a lot harder to get through than they might have been, if I would blog only after having digested the material myself… Typical recent examples are the tori-crypto-posts and the Bost-Connes algebra posts.

So, I still have a lot to learn from other bloggers I admire, such as Jennifer Ouellette who maintains the Coctail Party Physics blog. At the moment, Jennifer is resident blogger-journalist at the Kavli Institute where she is running a “Journal Club” workshop giving ideas on how to write better about science.

But the KITP is also committed to fostering scientific communication. That’s where I come in. Each Friday through April 26th, I’ll be presiding over a “Journal Club” meeting focusing on some aspect of communicating science.

Her most recent talk was entitled To Blog or Not to Blog? That is the Question and you can find the slides as well as a QuickTime movie of her talk. They even plan to set up a blog for the participants of the workshop. I will surely follow the rest of her course with keen interest!

NeB on Leopard and iPhone

Friday, December 7th, 2007

If you have an iPhone or iPod Touch and point your Safari browser to this blog you can now view it in optimised format, thanks to the iWPhone WordPress Plugin and Theme. I’ve only changed the CSS slightly to have the same greeny look-and-feel of the current redoable theme.

Upgrading a WordPress-blog running under Tiger (Mac OS 10.4) to Leopard produces a few anxiety moments. All of the standard tools (Apache, PHP and MySQL) seem no longer to work as before. For those of you who do not want to waste too much time over it, I’ll walk through the process.

After upgrading to Leopard you want to check whether your blog is still alive, so you fire up Safari and will be greeted by the message that Safari cannot find your server. Sure enough you forgot to start the WebServer in SystemPreferences/Sharing/Web Sharing. Having fixed this you will see the default Apache-screen because Leopard put these default-files in your webserver-root directory (/Library/WebServer/Documents). In case you installed your blog under a user account you will get a message that you enter forbidden territory, see below for the solution to that problem. Having removed all those index.html files (making sure NOT to delete the index.php of your blog) a more serious problem presents itself : you see the text-version of index.php meaning that PHP isnt working. You check the /etc/httpd/httpd.conf file and it still contains all the changes you made to it to get PHP running under Tiger, so what is going on?

Googling for something like ‘enabling PHP under Leopard’ you’ll discover that the configuration file used by the webserver is in a different location. It now resides at /private/etc/apache2/httpd.conf. You will have to remove the hash sign (#) at the beginning of line 114 so that it reads

LoadModule php5_module libexec/apache2/libphp5.so

Next, you have to create a php.ini file and change one line. The first thing is settled by the following Terminal-commands

cd /private/etc
sudo cp php.ini.default php.ini

and in the php.ini you have to modify line 305 so that it becomes (removing the latter part of the line)

error_reporting = E_ALL

Restarting the webserver enables PHP. If you need more details check out the article Enabling PHP and Apache in Leopard. However, you are not quite done yet. Your blog will now show the WordPress-page that something is wrong with your mysql-database. However, mysql seems to be running fine as you can check from the Terminal so PHP cannot find it.

To remedy this, you have to add the locations (after the = sign) in the follwing two lines of the php.ini file

mysql.default_socket = /private/tmp/mysql.sock
mysqli.default_socket = /private/tmp/mysql.sock

Restarting the webserver should resolve the problem. But then your blog can still choke on old PHP-code in one of the plugins you use. In my case I was using an ancient version of the PHP-Markdown plugin but after replacing it with the newest version NeB looked just like I left it with Tiger…

A final point : webpages stored in personal Sites-folders cannot be served by Apache2 and will produce a message that you have not enough privileges to view the page. To resolve this, type the following command from the Terminal

sudo cp /private/etc/httpd/users/*.conf /private/etc/Apache2/users

bookmarks tuesday cleanup

Tuesday, February 20th, 2007

Geeky Mom : Why am I blogging?. Been there before. Sooner or later all non-pseudonomenous bloggers are faced with the same dilemmas. There’s really no answer or advice to give except : blog when you feel like it, if not do something different, after all its just one of those billion of blogs around.

Texmaker : another LaTeX-frontend, possibly having a few extras such as : a structure-pane including labels you gave to formulas, theorems etc. (click on them brings you to them). Intend to use it now as I’m in another rewrite of the never-ending-book..

Microformats : “Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards.” May have another look.

Quicksilver : a recurring link. At times when I feel learning key-strokes may save me a lot of time I have (another) go at Quicksilver. Last week, Ive reinstalled this blog more or less post by post and used keystrokes to send a line in the SQL-file of the database dump of NEB as a clipping to Scrivener to MultiMarkdown it further. I used the app Service Scrubber to define my own key-strokes. Must have another go at Quicksilver soon. Im sure it distinguishes ‚”power mac users” from the rest of us.

List of GTDTools : a good list of GTD-software. I’m probably just too chaotic for GTD to improve my workflow but somehow I cannot resist trying some of these things out.

LifeDEV : One of those sites that tells me I should take GTD more seriously

DoIt : One of these GTD-tools. It is said to go well with Quicksilver, so maybe, one day.

Think : Here a little seemingly completely useless tool which works well (at least for me). No, it does not make you think, but at least it helps you while you are thinking (or doing anything a bit focussed). Install it and enjoy! The principle is that it just blocks out all other open windows (and there are keystrokes (yes, again) to get you quickly in and out.) Besides, it looks great. It’s in my dock and this says it all

Thinkature : a brainstorming tool. Dont know why I did bookmark this. Perhaps one day, a few years from now

Stafford Talk : a talk by Toby Stafford I came across by accident. Maybe there are other interesting talks on the site?

Science Scouts : a great idea! Give yourself badges for how well you do science (or talk/write about science). Have to collect my badges soon. I’m sure this only works for people with a scouting-history, but who knows?

MacResearch : Here’s a site that may become useful. MacResearch.org is an open and independent community for scientists using Mac OS X and related hardware in their research. It is the mission of this site to cultivate a knowledgeable and vibrant community of researchers to exchange ideas and information, and collectively escalate the prominence of Apple technologies in the scientific research community. They have some interesting articles and tutorials on e.g. DevonThink and BibDesk etc. Worth to revisit.

Jennifer in love : well‚ should I say something about this? probably best not.

Breakthrough CLI : another pamphlet in favor of the Command Line! A must read for those who perfer GUIs to CLIs.

CLI - the site : Rod is working hard on CLI-20. Whenever he releases version 2.0, neverendingbooks will be among the first sites to run it. I still love the idea.

Why do I bother? : an n-category post I got briefly interested in, but was somehow flooded by professional math-philosophers

Newton Legacy Reviewed : just that, a first review on the next bookmark.

the Newton Legacy : a free online book, a murder mystery with a physics touch. Perhaps this is the best investment of time/energy : write a popular science book rather than another paper. Read half way through it (sorry but not the best prose Ive read so far), may continue but was held up reading a (real) murder mystery Equinox featuring also Newton and alchemy (must be in the air somehow), also not the best mystery read so far

Stalking with Googleearth : no comment

(to be continued)

mathML and work ahead

Thursday, February 8th, 2007

It has been a difficult design decision, but I‚Äôm going to replace the LaTeXRender Wordpress Plugin for mathML as the default TeX-interface for NeverEndingBooks. I will keep LaTeXRender on standby as I may have to use exotic packages or commands that iTeX does not deliver, but for most math-related posts, MathML will do the job nicely (as the n-category cafe shows every day (or even more often)). Not that I stopped being a dilettante but I’m going to do most of my writings (including blog-posts) using Scrivener (more on this another time) and Scrivener supports MultiMarkdown and allows exporting to LaTeX and XHTML (using MathML).

I could never have pulled this off in such a short time without Jacques Distler more or less on constant stand-by (thanks Jacques!). Looking at the times his emails were send I have no idea in which time zone he lives (let alone sleeps…). So, here a walk-through the changes :

As I’m on WP 2.0.5 I’ll start with Frederick’ post. He tells me I have to install first the itex2MML binary as explained by Jacques but I find that there is more recent material and therefore download the most recent imath2MML-package and follow the readme. There is a Mac OSX binary but it’s not clear for what processor (PPC/Intel/Binary) but a quick mail to Jacques learns me that it’s PPC which is fine by me but on the spot he puts a universal binary online, so whatever your Mac is you can just download the binary, copy it to /usr/local/bin and make sure its chmodded 755.

Back to Frederick’s post, download and install the plugin itexToMML.php in the usual way (fortunately I spot just in time that I have to change one line saying where my itex2MML binary is (in Frederick’s file it is NOT the default location)). You can verify whether the plugin and itex2MML do what they are supposed to do by typing a LaTeX-command in a post and save it. The output will not produce the desired formula but have a look at the source file and see whether there is some mathML code in it. If so, fine! If not, go back and check everything.

If this works, it is “merely” a problem of getting your mathML served. Frederick suggests to unpack wordpress_mathML.zip in the wp-includes directory (but you better make sure you have made a copy of the original class.php and functions-formatting.php files. In the end I decided against this approach (that is, to replace only the functions-formatting.php but NOT the class.php file). If you have two or more themes you want to maintain, it is probably better to change the headers (because this is what we have to do to get mathML served) only in those themes which are XML-sound. In my case, the Command Line Interface theme most certainly is NOT!!!).

Go to your theme-files and look for the header.php (or similar) file and replace the default header by the code in the addendum to this post within php-tags. If you can go to your blog-page then you are in good shape and things should work well (apart possibly from layout considerations, see below). Of course, in my case i was greeted by ” XML “yellow screen of death” (as Jacques calls it) and I was convinced I did something wrong, so I tried out several useless things for a couple of hours before it dawned on me that the reason might just be that my blog-files were not valid XHTML (and the new headers are very demanding on serving only well-form XHTML). I had to modify all changes I made to sidebars etc. as well as rewrite parts of my first posts (I used to take a rather liberal view on writing blog-posts, writing a mixture between Markdown and improvised HTML and in the process was very lax about closing IMG-tags and the likes). But after some time and numerous corrections to the files I got the main-page up and running (and even had the mathML served as a readable formula) apart from the fact that I barely recognized my own site.

I printed out source files of the page with and without changed headers and couldn’t find a difference. So, it had to do with the CSS-style files, but why on earth would the new headers be picky about CSS? But as a last resort, after narrowing the search down to one CSS-line, I asked Jacques whether he had an idea what went on. His reply will be remembered for quite some time :

A fascinating question. The answer is that it is following the CSS directive, but in XHTML, ‘body’ is not what you think it is. ‘body’ is just big enough to contain its content. It does not fill the viewport. ‘html’ fills the viewport. The solution (a solution) is described in
http://golem.ph.utexas.edu/~distler/blog/archives/000203.html

Many hours later, I still haven’t got a clue what this is all about, but I blindly followed the hint and surely all problems vanished. In short, another day wasted in front of a computer-screen.

At the moment I’m back to old headers and will not be writing mathML for some time as I have the vast job ahead to validate all my previous posts to XHTML-standards (if not you would see more yellows screens of death than anything else. So, here‚Äôs the strategy I’ll be taking in the weeks ahead (I’ll sleep on it tonight so if any of you think there is a better way, reply quickly)

  • rewrite each and every post in proper MultiMarkdown using iTeX for the most common math and only resorting to LaTeXRender for exotic things (such as Sudoku, Chess, Dvonn) and run these posts through Markdown (to get basic HTML and all links in place).
  • download these files to the WP-database (so that in the CLI-interface you will be able to follow all links, but will read all iTeX as TeX-commands (as the command line intended after all).
  • in the process change all broken links to the default permalink-structure (with index.php?p=231 or so).

Clearly, this is a work that will take a couple of weeks but it may be fun to reread these old posts and possibly add new information about the subjects. When I’m making these changes, I’ll use the new headers so if you are using a smart browser look out for the yellow screens. When they happen, either use a dumb browser (such as Safari) or go into CLI-interface mode where everything should still work. I plan to start with the oldest posts as this seems more fun to me.

command line interface

Wednesday, February 7th, 2007

Way back in 1999 I read Neal Stephenson’s pamphlet In the Beginning ! Was the Command Line and decided I should and would have Linux running on my clamshell iBook. Needless to say this was (a) a foolish idea and (b) not entirely trivial in those dark OS 9-days. Still, I somehow managed with the help op PPC Linux and was proudly wearing their T-shirt (at least for a couple of weeks in early 2000). Fortunately, as a brief OS X history recalls, OS X was released March 24, 2001 and put an end to my Linux-folly and I’m pretty certain even Neal Stephenson is on Mac OSX these days.

Needless to say I couldn’t resist installing the Wordpress CLI-theme the moment I spotted it! A command line interface to your blog! awesome! If you want to have a go at the original version, take a look at Rod McFarland’s blog. Just type ‘ls’ to the prompt and you’ll be hooked. Or you can have a look at the command line interface of NeverEndingBooks by going to the left sidebar and clicking CLI under the ‘Command Line Version’ header (don’t be afraid you can always come back by clicking on the GUI-interface over there). My design is black on a light-gray background and is no where near as cool as the original theme but it was the only quick way around some limitations of the CLI-theme.

The CLI-theme operates as a front-end via a small interpreter which draws the information directly from the WordPress-database. As a result you loose the effect of all post-processing by plugins such as Markdown and LatexRender two of the plugins I use most! I could still live with the idea that pure LaTeX was served to a CLI-environment between tex-tags, but surely I didn’t want to loose all my links! The quick (and extremely dirty) way around it was to resubmit the relevant part of the HTML-source files of the GUI-frontend posts to the WP-database. And to serve the same LaTeX-gifs to the GUI and CLI interface I needed the backgound to be rather light gray (taking #BDBDBD gray would have been much nicer wrt. the cool rasterized grayed-images but then some of the more recent LaTeX-gifs became partially unreadable). Oh, and in the process I had to update the permalink structure, thereby wrecking allmost all internal reference-links (but I’ll sort them out soon, I promise).

So, a lot of work for a rather meagre result. What do I like about the CLI-interface (apart from old time nostalgia)? I really like the searching facility. Just type ’search yourword’ to the prompt and it will give you all posts containing that word (much quicker than in the GUI-interface) and if you remember at least one word from a post-title, feeding it to the prompt will give you the entire post (or a list of posts if the same word appears in different posts). Try out typing ‘Perelman’ to see what I mean. Besides, bots don’t seem to know what to do with the CLI-interface so for the few days I had this theme as my default theme I was alone on NeverEndingBooks mast of the time (which helped a lot having to change that many posts). So, whenever I want to have the site to myself I’ll just change the default theme from now on.

Still, I did put back the old GUI as default because the CLI-theme still has a few drawbacks. Such as, it is impossible to write a sizable comment (not that too many of you do this, but anyway) and some other quirks. Still Rod McFarland is working on a version 2 (and even set up a google-group for those who want to code along, and maybe I’ll join the effort) which promises a great improvement and I’m rather confident that by version 3.14 it will be in a state that I’ll have the CLI-interface as my default. Until then, I’ll keep up the two front-ends and allow you to toggle as you like (your browser will remember your preference).

I realize most of you are youngsters and not of my cpu2 generation so have a hard time imagining how exiting a command line prompt is. Fortunately, Neal Stephenson has made the full text of “In the beginning ! was the command line” available as a free download. Print it out and enjoy!

AWSOM Powered