Skip to content →

Tag: markdown

Link problems : Markdown versus latex2wp.py

As John Baez (and hopefully others) noticed most links here on NeB are now screwed up.

For years I’ve used the Markdown syntax to include links in posts (that is something like [this is what you see](and here is the URL)). NeB used an older version ( Version 1.0.1k) of php Markdown to convert these to proper links (as I did have problems with the newer version).

Ever since the Return to LaTeX post, I’m trying to re-educate myself to write posts in LaTeX and convert them into wp-format using the Latex2WP python script.

Unfortunately this script doesn’t go together nicely with the Markdown-syntax, forcing me to go over the converted latex-file almost line by line fixing errors in order to be able to post. Not the time-saver I had in mind…

I hope to post a lot of new material once the semester finishes and therefore disabled the Markdown-plugin. This causes all links to remain in Markdown-format, which is a nuisance but, if you really want to follow the link it is still there for you to copy-paste. Depending on how exciting the christmas-break will be I’ll try to hard-code the links in some of the more popular posts.

If someone knows of an elegant solution, such as a micro-markdown wp-plugin only parsing links, please drop a comment.

UPDATE : I have downloaded the Markdown quicktags plugin. It replaces the standard HTML-editor of WordPress with a Markdown-editor. There is an option “Render” which transforms Markdown to HTML and then updating the post will save the HTML-version. This looks like a relative quick way to get my old post-links back. So far, I’ve rescued the posts of the last year, more later. Hopefully, this causes no overload in your RSS-aggregator…

3 Comments

Writing & Blogging

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!

3 Comments

NeB on Leopard and iPhone

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

2 Comments

bookmarks tuesday cleanup


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.

<

p>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)

Leave a Comment

mathML and work ahead

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.

One Comment

command line interface

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!

Leave a Comment

latexrender plugin for wordpress under tiger

Promises and pie-crusts are made to be broken, a wiser man once
said. Still, promises have a much longer life-span and sometimes their
real content becomes redundant over time.

A year ago, I
promised
to document how I got the
LaTeXRender Plugin for WordPress
working under OS X. The procedure
consisted of some trial-and-error operations, installing non-standard
versions of software and hardcoding certain directories throughout
certain files…

Not something I was looking forward
to when I decided to upgrade this WordPress blog but,
surprisingly, things went pretty smoothly this time (Mac-technology
has improved a lot). So, please don’t worry too much about this
post
and follow the (late) instructions below.

First
things first : I will assume you have the ‘generic’ LaTeX
running under Tiger (10.4),that is, use the i-Installer to download BOTH
LaTeX and Imagemagick! Further, in order to get WordPress up and
running, have the standard
MySQL 4.0 package
installed for 10.3 (not version
4.1…) and don’t use the generic Mac-PHP version, but
instead download Marc
Liyanage’s PHP5 package
which has plenty of additional
packages installed (notably, GDlib and MCRYPT which comes in handy if
you want to fight spam-comments using BotCheck).

\r
\n

Download wp-
latexrender.zip
and follow the instructions given to the letter
(there is one undocumented extra directory you have to fill in at the
start of the latexrender-plugin.php file). There is
just one additional thing to do. Find in the
class.latexrender.php file the line starting
with

// convert dvi file to postscript using
  dvips

and include the following lines just before it
:

// begin of workaround // extending the PATH
  environmental variable Soldpath =
  getenv(“PATH”); Swhere_imagemagick_is =
  “/usr/local/bin”; if (Soldpath) { Swhere_imagemagick_is .=
  “:Soldpath”;} putenv(“PATH=Swhere_imagemagick_is”); //
  end of workaround 

activate the plugin and it
should work! Still, there are three things you may want to change. In
the latex.php file uncomment the indicated lines as
you will be using htmlArea to input your posts. In addition, if you
have the MarkDown-plugin enabled, it is best to append additional
lines such as

 Slatex_formula =
  str_replace(“_”,”_”,Slatex_formula);     Slatex_formula
  =
  str_replace(“_”,”_”,Slatex_formula); 

(
between the first ” ” should be the beginning and end
em-tag respectively) or underscores will be interpreted as em-tags.
If you run into additional similar problems, the procedure is to
comment-out the line

 
  unlink(Sthis->_tmp_dir.”/”.Sthis->_tmp_filename.”.tex”); 
  

near the end of class.latexrender.php , look in the
tmp directory for the TeX-file, detect the problem and add similar
lines to the ones above to solve it. Another useful thing to do
is to add TeX-packages in the class.latexrender.php file. My own
version has the following predefined symbols and loaded
packages

 function wrap_formula(Slatex_formula) { 
  Sstring  =
  “\\documentclass[“.Sthis->_font_size.”pt]{“.Sthis->_latexclass
  .”}\\n”;  Sstring .=
  “\\usepackage[latin1]{inputenc}\\n”;  Sstring .=
  “\\usepackage{amsmath}\\n”;  Sstring .=
  “\\usepackage{amsfonts}\\n”;  Sstring .=
  “\\usepackage{amssymb}\\n”;  Sstring .=
  “\\usepackage{xy}\\n”;  Sstring .=
  “\\xyoption{all}\\n”;  Sstring .=
  “\\\\newcommand{\\vtx}[1]{*+[o][F-]{Scriptscriptstyle
  #1}}\\n”;  Sstring .= “\\\\newcommand{\\mathbb{C}c}{\\Bbbk}\\n”; 
  Sstring .= “\\\\newcommand{\\mathbb{C}}{\\mathbb{C}}\\n”;  Sstring .=
  “\\\\newcommand{\\mathbb{Q}}{\\mathbb{Q}}\\n”;  Sstring .=
  “\\\\newcommand{\\mathbb{Z}}{\\mathbb{Z}}\\n”;  Sstring .=
  “\\\\newcommand{\\mathbb{N}}{\\mathbb{N}}\\n”;  Sstring .=
  “\\\\newcommand{\\mathbf}[1]{{\\\\text{\\em \\usefont{OT1}{cmtt}{m}{n}
  #1}}}\\n”;  Sstring .= “\\pagestyle{empty}\\n”;  Sstring
  .= “\\begin{document}\\n”;  Sstring .=
  “S”.Slatex_formula.”S\\n”;  Sstring .=
  “\\end{document}\\n”;          return Sstring;     }  
  

which, among other things, allow all commenters to add
quiver-pictures using xymatrix and vtx to depict vertices. Oh yes, you
can allow comments to include LaTeX-code by uncommenting the
line

  // add_filter(‘comment_text’,
  ‘addlatex’); 

in the latexrender-plugin.php
file (but before you do make sure you have spam under control, such as
with BotCheck mentioned above). That’s all for now. If you want
to use TeX in a comment, make sure to put the code between tags [ tex
] and [ /tex ] (omitting the extra spaces). If you want me to add
other LaTeX-packages, leave a comment.

Leave a Comment

markLaTeXdown

Clearly,
an extended version of Markdown
including LaTeX-commands would be useful for mathematicians and surely
I’m not the first to think about this. In fact, I found a somewhat
pompous text New adventures
if hifi text
by someone claiming to have done precisely that (though
he doesn’t give much details nor post a version of his altered program).

Still, it is pretty clear how to convert a _Markdown+LaTeX_
textfile to plain LaTeX (at least for regex-lovers
). Modify the _Markdown.pl_ script so that the Markdown markup is
translated not to HTML-tags but to LaTeX-commands.

More
interesting material can be found in a thread on _Markdown and
Mathematics_ starting with this post. In it, they search for a good way to include
LaTeX-mathematical commands in a MarkDown text. In fact, this is part of
a more general quest for a good _escape character_ in Markdown to
create _Markdown plus something_ versions. They opt for
{{ and }} rather than the usual
$ signs.

I think the alternatives [
tex ]
and [ /tex ] are slightly better because
then you could feed the text to a functional WordPress installation with the
LaTeXRender
plugin installed and copy the relevant part from the HTML-source of
the resulting post to get a HTML-version of the mathematical text with
all LaTeX-code converted to pictures. Clearly, typing the suggested tags
is somewhat cumbersome so I would type them using the
{{ and }} proposal (one
{ is not enough because a lot a LaTeX code uses single
curly brackets) and then do a global replace to get the
LaTeXRender-tags.

Even more interesting would be to have a
version of the html2txt.py script for LaTeX, that is,
converting a LaTeX-file to Markdown + LaTeXcode which would give an easy
way to convert your existing papers to HTML if you feed the LaTeXRender
plugin with all the required newcommands and packages.

Leave a Comment

markdown2use

Here some
possible uses of Markdown and the
HumaneText Service.
As an example, let us take the
noncommutative geometry & algebra page
maintained by Paul Smith.

If you copy the source of this page to BBEdit and use the
html2txt.py script in the #! menu (see
this post)
you get a nicely readable Markdown-file which strips the page of all its
layout and which is easy to modify, for example to include author and
URL at the start, remove some additional empty lines, make relative URLs
absolute and so on.

Applying the Markdown.pl
script to it one gets a nice RetroCool version
of the page. For starters, this gives a way to make your own collection
of websites you like in a uniform layout (of course, later on you can
add your own CSS to them).

More important is that the
Markdown-version (see here for
the text-file) is extremely readable and allows to _mine_ all
links easily (as you can see all links contained in the HTML-page are
referenced together at the end of the file). So, this is a quick way to
collect homepage- and email-links from link-pages.

Btw. there
are different ways to include links in a markdown text, for example I
like to write it immediately after the reference, so doing a Markdown.pl
followed by a html2txt.py doesn’t have to reproduce your original file
and fortunately you will always end up with a file having all links
referenced at the end. So, this procedure allows you to have uniformity
in a collection of markdown-files.

Equally important for me (for
later use in an intelligent database using DevonThink ) is that the Markdown file is the best way to safe the
HTML file in the database (as a RTF file) while maintaining readability
(which is important when DevonThink returns snippets of
information).

Leave a Comment

markdown

The nerd
implimentation of GTD
is based on plain text-files, or more
precisely

– all lists in text files, kept in directory
“~/Documents/txt”
– all documents maintained in Markdown for easy
HTML conversion

I’ve been writing HTML-code since the times
that the best browser around was something called NCSA Mosaic so I’ve never paid too much attention to
Markdown
before. Here is its main purpose

Markdown is a
text-to-HTML conversion tool for web writers. Markdown allows you to
write using an easy-to-read, easy-to-write plain text format, then
convert it to structurally valid XHTML (or >HTML). Thus, Markdown is
two things: (1) a plain text formatting syntax; and (2) a software tool,
written in Perl, that converts the plain text formatting to
HTML.

An example of Markdown-code followed by its
HTML-output can be seen at the BlueCloth website and I have
to agree that the Markdown text is very legible. I’ve been playing
around with Markdown for a couple of days now (in fact this post is
written in Markdown as WordPress has a Markdown-plugin) and have found a
few uses for it (more on this another time). Essential sites to visit if
you want to learn some Markdown are : its basic
syntax
and in the rare cases that this doesn’t do what you want to
do there is also a full
syntax
page.

If you want to use Markdown to write your
HTML-pages you need to be able to convert Markdown to HTML (and
conversely although the uses for this are not immediately clear, but
there are plenty of good reasons!). That’s what the
Markdown.pl Perl-script does for you (one way) and the
Python-script html2text.py (to be found here) (the other
way).

To get them working using BBedit
all you have to do is to put them in the _BBEdit Support/Unix
Support/Unix Filters_ directory (to be found in the BBEdit-folder in
_/Applications_). Then, if you have written a Markdown-text, do a
_Select All_ go to the !# menu and look for
Markdown.pl under _Unix Filters_ and voila, you have valid XHTML
(the other direction is similar).

This is a bit of work and one
would like to do both operations in nearly all Applications using the
_Services Menu_ (in fact, until a few weeks ago I had no clue
that there was something as useful as this menu hidden under the
program-name-menu of any Cocoa-program!). This is best done using HumaneText.service. The
installation is really as siimple as they say on this page (although it
took me a couple of trials before it worked, and I use the Services-menu
rather than the keystroke-shortcuts).

HumaneText works perfectly with TextEdit,
SubEthaEdit and (probably more important to mathematicians) TeXShop and
iTeXMac (the two most common front-ends for (La)TeX under OS X). A
noteworthy exception is BBEdit (hence the above laborious work-around).
Sometimes there are problems with punctuation in the conversion but you
can get around this using SmartyPants.

Leave a Comment