TextMate News

Anything vaguely related to TextMate and macOS.

Blogging From TextMate

Here is a direct link to an 8 minute long screencast which shows what the Blogging bundle can do (30 MB.)

In short the blogging bundle allows you to post, retrieve, and update entries. It can also preview entries before posting, upload images to your blog by dragging them into your document, etc.

Formats supported:

  • HTML
  • Markdown
  • Plain text
  • Textile

The bundle uses the MetaWeblog API and has so far been successfully tested with:

The blogging bundle is maintained by Brad Choate and you can send feedback directly to him or to the textmate mailing list.

Update (2006-06-20): For TextPattern users you need to download 4.0 XML-RPC and apply the change mentioned in comment #20.

Update (2007-03-15): Many have asked why the Markdown they post is not converted. For that, you need to install a Markdown plug-in. If TextMate converted your Markdown before posting, it would be problematic to later fetch the post and edit it (as it would then be in HTML).

categories Screencasts


20 June 2006

by Colin Scroggins

Any plans for ATOM API support? I use Blogger, and while this is great, I can’t use it.

…don’t forget to check out the latest bundles else it might not work (at least, it didn’t work for me, I guess I was using an older version of the blogging bundle). See https://wiki.macromates.com/Main/SubversionCheckout

Any luck with Expression Engine?

Yes! Returned now to TextMate after a small period of BBEdit. Absence over. Let’s try to do everything w/ TextMate. Yihaaa!

20 June 2006

by Dan Kelley

These movies are a great tool for convincing friends to switch to the Mac (and then to TM). As always, well done, Allan!

As for Eriks post: It works out-of-the-box with r1112 — but if you do have a checkout of the bundles repository, it should of course (always) be updated (this includes updating the Support folder as well, if you have it.)

But a checkout is not a requirement for this to work.

Great! Now I can blog from work without my coworkers knowing it!

Jaakko, as it’s using the Metaweblog API, it works with ExpressionEngine as well.

That’s a pretty nifty video. I wonder if you’ll squeeze in coffee making on the features list soon.

Regarding TextPattern, how do I tell which blog (or section in TextPattern terms) TextMate should use? I only have one URL for the rpc server. It seems that the bundle assumes that a rpc-server only deals with one blog at the time.


To make it work with a MovableType 3.2 blog I had to do this:


The #1 at the end tells TextMate which blog to connect to.

I can’t get it to work on Expression Engine. I’ve used the same settings as I do with Ecto or MarsEdit. I just get an error message. I’m using the link in the MetaWeblog API Configurations section of the Modules.

Thanks for your suggestion. It doesn’t seem to work with a TextPattern blog though.

I just did my first blog post from TextMate, and included a “blogged from TextMate” graphic that I created with the post.

So when will I be able to play music, browse the web, and cook inside of textmate?

Has anyone tried to publish files to a drupal based site yet? It works just fine for me, but the URL used in the img-Tag is wrong. instead of /files/THEIMAGE:jpg, Textmate uses /system/files/THEIMAGE.jpg. Anyone else with experience?

Any luck with Typepad anyone?

Did anyone get it to work with a blog which is .htaccess-protected?

21 June 2006

by John Jenkins


In a similar line of thought, would it possible to make a bundle for editing wikipedia/dokuwiki articles? This would really help my job as an editor…

Congratulations on your editor. This video made me go and buy a license. Again, many thanks!

your blogging screencast made me think of another interesting future feature…

it would be neat if you took drag a picture file into a latex document (opened with textmate) and have it auto markup to include that eps.

On top of each fetched blog post I get the following error message:

CocoaDialog[13024]: ICeCoffEE APE: Can’t get process serial number for current process (error 1011); not loading in this application CocoaDialog[13025]: ICeCoffEE APE: Can’t get process serial number for current process (error 1011); not loading in this application

Great Tool. I´m looking forward to the next version, because I get some error message loke manuela

Theo: It might help to see the error message. You can go to the bundle editor and switch output from tool tip to create new document for easier copy and paste.

Mr. Kool: Someone did get it to work with TextPattern, but as mentioned in the update to this blog entry, you need the XML-RPC stuff, and you need to make a change to it after install.

Clay Loveless: That image is a very nice touch, thanks!

John: thomas Aylott actually hooked up a command to allow him to play music without leaving TextMate ;)

Markus Weimer: It would appear as Drupal returns the wrong URL. I would ask in a Drupal forum about this (I believe most of the developers are active on IRC.)

Niels K.: What is a .htaccess protected blog? Did you add (additional) authentication in the form of user/password to the xmlrpc backend? If so, I am afraid you are out of luck, as that is not supported, and likely will not be, as the xmlrpc API itself already has user/password authentication.

John Jenkins: I assume with Wikipedia support you are thinking of their editor API. Unfortunately this is AFAIK not possible to get working with Safari, since their API sends (info about) the text to be edited using a special mime type. The intent is then that the user setup a special handler for this mime type, but Safari does not allow this to be configured. It should however be possible to make work for most other browsers.

mdadm: LaTeX does support dragging of jpg, jpeg, pdf, and eps files into a document and will insert a figure environment.

Manuela, Fitline: That error message is printed by APE or ICeCoffEE, which is a third party patch you must have installed.

I have added redirection of stderr to the system console, most likely that will suppress it.

Theo: It might help to see the error message.

Hmm, it’s not very revealing :)

“Error retrieving posts. Check your configuration and try again.”

Theo: Okay, then let us know what blog software your use (and version) plus the endpoint URL you configured.

For WP you likely need v2.0.

I’m using ExpressionEngine 1.4.2 and the endpoint URL is


Theo: And I assume you verified user/password is correct?

The error indicates a fault talking XML with the server, but I can’t really get it more specific than that — I tried to connect to your endpoint with a bogus username/password, and get the same error. Not sure if that’s because of the missing credentials, or there is an underlying problem.

You wouldn’t happen to be able to enable XML-RPC logging server-side?

I don’t seem to be able to get it it to pick up images - just get

which is obviosly local.

I’m using markdown, it’s wp, and I’ve got the right user level to upload.

everything else works.

diskgrinder: if you quoted something (other than an empty line) could you put it in backticks (`) to have it escaped?

As for WP, are you using WP 2.0? And did you check your WP settings, and that your web server would be able to write in the configured upload folder?

got it, and you did say, “cutting edge”, sorry to waste time

Allan: Yes, I did get it to work, sort of, with TextPattern. The problem I was talking about is that I can’t specify the blog (or section in TextPattern terms) that an endpoint is supposed to refer to. The TextPattern XML-RPC server has only one url and relies on the client to select a specific blog/section.

So, to solve this, I would need a way to tell the RPC server which blog/section I want by some kind of special URL (like Nate suggested, but didn’t work for TextPattern) or a way to specify the blog/section throught the headers for a blog post.

Note that the term blog is used in the bundle as synomous to RPC server, but since a RPC server can potentially handle multiple blogs this leads to some confusion.

to be clear - I wasn’t using the cutting edge version of textmate. Once I upgraded to 1112 everything worked as advertised - this now replaces flock for me.

Mr. Kool: The ‘#id’ syntax for endpoint is used to populate the blog id parameter of the metaweblog api calls. The concept of section is unique to TextPattern, and I haven’t had a chance to look into how it’s done through the XMLRPC api. I’m well aware that an XMLRPC server can serve multiple blogs; the bundle does not imply ‘blog == xmlrpc server’. It does require that the endpoint specified (using the endpoint notation I’ve documented in the help) targets a particular blog.

How do you get textile to work with wordpress 2? am I missing something here?

Damien: you’ll need a plugin for that.

21 June 2006

by deadsunrise

edited a little bit the xmlrcp of b2evolution phoenix (last beta 1.6) and its working perfectly. Just have to comment a few lines out. Easy to notice which ones if you activate the login and tail -f at the same time you try to use textmate.

I couldn’t get it to work, due to a ‘not at port 80’ setup at the server. Before i dive into the code, is this an oversight or explictly not supported?

Marcel: I’ve made an update to the bundle, available from the macromates.com svn repository. It now allows for port to be specified in the endpoint uri.

Niels K.: This update should also allow it to work using HTTP authentication (as long as the user/password in the URI is the same for the blog login as well, assuming it does it’s own authentication in addition to the HTTP auth).

Wow, the screencast totally sold me on using TextMate for blogging! Unfortunately, though, I can’t seem to get it to work for either my Movable Type or or WordPress blog. I get the same error message when I try to fetch posts.

/usr/lib/ruby/1.8/xmlrpc/client.rb:535:in do_rpc': HTTP-Error: 301 Moved Permanently (RuntimeError) from /usr/lib/ruby/1.8/xmlrpc/client.rb:409:in call2’ from /usr/lib/ruby/1.8/xmlrpc/client.rb:399:in call' from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/metaweblog.rb:31:in getRecentPosts’ …

If anybody can provide some information that might help, I would greatly appreciate it.

Karl: What is the endpoint you’re using? What happens if you try to access that directly, through your browser? Do you still see a 301 error? Or something else? This is typically an error from the web server, not from the XMLRPC server.

VERY nice! Thank you Brad! Thank you Allan! The only question I have (before I look into it myself): would it be possible for the bundle to allow you to write your blog posts in any conceivable markup that you can think of; then using that markup tool to convert the text to a common denominator such as HTML?

For example, I write my posts in Textile/Markdown/whatever. I save the posts on a per file basis within a Subversion repository, with the extension being the name of the markup I used (“20060621-hello.textile”). I then use TextMate to do a quick convert from Textile to HTML, copy the text, undo the conversion so the text is back to Textile, and then paste that text into the textarea within WordPress.

Yes, it’s kind of a long and convoluted process, but it allows me to write my posts in whatever markup format I want, have the posts version controlled, etc.

I was actually going to write a quick script to automatically post to my blog using XML-RPC, but … not anymore!

Any thoughts?

BTW, I forgot to mention; I realize that I could install the appropriate plugins within Wordpress. But, that just doesn’t sound like the right way to do it. Maybe I’m wrong. But if I remember correctly, I can’t install multiple markup plugins into Wordpress without everything getting confused.

Brad: thanks for the quick reply to my comment and for nudging me in the right direction. Turns out I had to include the “www” in the URL (originally had thought I needed to leave it out because it wasn’t in any of the examples. So all is well now. Works like a charm. Thanks again!

21 June 2006

by Justin Noel

Love it! I was so sick of manually logging in to Wordpress and dealing with that interface. I can’t stand it BTW.

Since I’m in TextMate all day anyway, this just makes my life a lot easier.

One request : Is there a way to post in “Save and Continue editing mode”? Basically, just save the entry to Wordpress without publishing it and then when finished, publish the article. I don’t want to save my entry as a text file on the computer.

This is brilliant. Thanks Allan and Brad.

Naturally, I’m commenting because I’ve run into a problem ;) I’m using TextPattern, and I’ve applied the fix from the TextPattern site and it all works great. Except when I tried to upload an image the way Allan did in the podcast. I received the following error:

/usr/lib/ruby/1.8/xmlrpc/client.rb:535:in /bin/bash: -c: line 1: unexpected EOF while looking for matching '' /bin/bash: -c: line 3: syntax error: unexpected end of filecall2' from /usr/lib/ruby/1.8/xmlrpc/client.rb:399:in /bin/bash: -c: line 1: unexpected EOF while looking for matching’’ /bin/bash: -c: line 3: syntax error: unexpected end of filenewMediaObject’ from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:706:in /bin/bash: -c: line 1: unexpected EOF while looking for matching '' /bin/bash: -c: line 3: syntax error: unexpected end of filepopen' from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/progress.rb:11:in /bin/bash: -c: line 1: unexpected EOF while looking for matching’’ /bin/bash: -c: line 3: syntax error: unexpected end of fileupload_image’ from /tmp/temp_textmate.K2rrnb:4

Any clues? Configuration issuue on my end?

Thanks heaps for a great add-in.

Justin: To do what you want, you just need to modify the post command a bit. The complex stuff is all in a ruby module. Here’s the “Convert to HTML and Post” command.

(should also be scoped to textile since this converts to textile before posting)

This is less than ideal though, since the content you get back after posting is the html – be careful you don’t resave and overwrite your local textile/markdown format with the result. Also, Fetch will retrieve in HTML instead of the original format. If you can live with that, then this should work okay for you.

Justin Noel: You can write “Status: Draft” in the header section of the post to post without publishing. Note that WP doesn’t return any draft posts when you fetch the recent posts from the server. So fetch post won’t show those.

Brad, thanks for the reply! I actually just looked at the bundle code, realizing my error and exactly what you just mentioned, came back to post my results and noticed that you had already replied. :) Thanks!

For all you Drupal users there is a short HOWTO using Textmate to post to a Drupal blog at http://drupal.org/node/70083

Jordan: I think that “unexpected end of file” error is actually coming from TextPattern; specifically due to the patch you’ve made to it. Can you try requesting the endpoint you have setup for your blog in a regular browser? You should see a similar error message just by doing that. With mine I see “XML-RPC server accepts POST requests only.” which is a valid response from a test through the browser alone.

Excellent! I’ve been a loud advocate of TextMate ever since I first came accross it, I don’t know if it’s been more than a year ago yet, but it certainly feels I’ve been using it forever :)

This bundle might actually make me start posting on my blog..! And even though the bundle posts to my blog just fine, and overall works as advertised, when I fetch a post from the server (or after I upload a post), this error text is added at the beginning of the file:

2006-06-23 00:22:52.068 CocoaDialog[5893] *** -[NSBundle load]: Error loading code /Library/InputManagers/Menu Extra Enabler/Menu Extra Enabler.bundle/Contents/MacOS/Menu Extra Enabler for bundle /Library/InputManagers/Menu Extra Enabler/Menu Extra Enabler.bundle, error code 2 (link edit error code 0, error number 0 ()) 2006-06-23 00:22:54.817 CocoaDialog[5894] *** -[NSBundle load]: Error loading code /Library/InputManagers/Menu Extra Enabler/Menu Extra Enabler.bundle/Contents/MacOS/Menu Extra Enabler for bundle /Library/InputManagers/Menu Extra Enabler/Menu Extra Enabler.bundle, error code 2 (link edit error code 0, error number 0 ())

(only once after uploading a new post)..

It feels like I need to update some bundles, but I can’t figure out how… tried svn up *.tmbundle in the bundle directory, tried reloading the bindles from the Bundle Editor submenu..

Is there a secondary location I should look in for bundles? Or is the error caused by something else I have on this machine?


Constantinos Neophytou: It is caused by something else. I started a troubleshooting page at the wiki which mentions this problem and possible workaround.

24 June 2006

by Dylan Smith

Fabulous stuff, thank you! I’m having the same problem the Jordan Brock mentions – I can’t seem to upload images to textpattern. I get the same error:/usr/lib/ruby/1.8/xmlrpc/client.rb:535:in /bin/bash: -c: line 1: unexpected EOF while looking for matching’’ /bin/bash: -c: line 3: syntax error: unexpected end of filecall2’ from /usr/lib/ruby/1.8/xmlrpc/client.rb:399:in /bin/bash: -c: line 1: unexpected EOF while looking for matching '' /bin/bash: -c: line 3: syntax error: unexpected end of filenewMediaObject' from /Users/dylan/Library/Application Support/TextMate/Pristine Copy/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:708:in /bin/bash: -c: line 1: unexpected EOF while looking for matching’’ /bin/bash: -c: line 3: syntax error: unexpected end of filepopen’ from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/progress.rb:11:in /bin/bash: -c: line 1: unexpected EOF while looking for matching '' /bin/bash: -c: line 3: syntax error: unexpected end of fileupload_image' from /tmp/temp_textmate.1E2RQ0:3

I see that Brad replied, but I’m not too clear on what it means. Does anyone have any more info on uploading images to textpattern? Thanks!

24 June 2006

by Jay Elmore

I must say, I never realized the capabilities of TextMate bundles until I watched this screencast.

I’m working on a homebrew bundle for creating datasets for the open-source RPG character generator PCGen (http://www.pcgen.net/), and I stupidly assumed that there were certain things I would not be able to do.

After seeing this, I will be giving this bundle a lot more thought. Kudos to you for such a great editor (best 39 euro I ever spent!) and to Brad for creating a great bundle!

@Alan: Thanks, I will try to contact them. Besides: I seem to be unable to use categories with drupal. Any idea how to make them work?

A discussion of the Textpattern posting problems that pretty closely match mine (the 201 error tooltip when trying to post an entry to my blog) is going on here:


Let me say TextMate rocks :-) I’m a brand new mac user switching from Emacs on Linux and I think I’m gonna love this editor. My question is: altough the blogging bundle is great I’m sticking with MarsEdit + TextMate because I don’t know how to have a list of the categories my blog has. I’d like to know which categories I can put in my post, maybe selecting them from a list like in MarsEdit. Is there any plan for this?

26 June 2006

by Dylan Smith

I thought I’d mention one other problem with Textpattern – the cut feature doesn’t work. It would be really great to divide the excerpt from the body using this.

This is an excellent bundle and easily expands the value of an already excellent piece of software.

The only thing stopping it from being perfect for me is that I have to be connected to make a post with an image in it. If the image can not be uploaded right away, then the post must wait until I’m back online.

Perhaps it’s a bit much to expect a bundle that basically replaces the likes of Ecto, but I was hoping. So it’s with that hope that I bring the request to create a new post with images, store it until later and then upload the whole post at once at a later time.

Either way.. excellent work!


I tried that (http://username@myendpoint.com) and I got

XML-RPC server accepts POST requests only.

which I assume means that everything is setup correctly.

Any other ideas?

does the bundle work behind a proxy server?

is anyone else missing escape.rb from the textmate.app file?

I am unable to “fetch posts” because of this.

06 July 2006

by Alice McGregor

I am sorely missing (or just not understanding) Atom / Blogger support. Am I just blissfully unaware of the XML-RPC URL for Blogger, or is it a wholly different API?

Holy cow - something new I learned that really interest me in this screencast (besides the blogging bundle, of course!) - I can use cmd-shift-tab then space bar to screen grab a window! Amazing! :)

Having the same problem as Jordan when uploading updates. Except, my blog is running WordPress.

/usr/lib/ruby/1.8/xmlrpc/client.rb:535:in /bin/bash: -c: line 1: unexpected EOF while looking for matching `''
/bin/bash: -c: line 3: syntax error: unexpected end of filecall2'
  from /usr/lib/ruby/1.8/xmlrpc/client.rb:399:in /bin/bash: -c: line 1: unexpected EOF while looking for matching `''
/bin/bash: -c: line 3: syntax error: unexpected end of filenewMediaObject'
  from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:718:in /bin/bash: -c: line 1: unexpected EOF while looking for matching `''
/bin/bash: -c: line 3: syntax error: unexpected end of filepopen'
  from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/progress.rb:11:in /bin/bash: -c: line 1: unexpected EOF while looking for matching `''
/bin/bash: -c: line 3: syntax error: unexpected end of fileupload_image'
  from /tmp/temp_textmate.EDCurZ:3

Tried upgrading to the latest SVN revision of the Blogging bundle, same error.

Verified permissions were correct, and setup uploading properly in WordPress (I think!)

Otherwise, this is awesome!

Anyone else having problems with categories and Movable Type 3.2? Whenever I write an entry I have to set the category manually afterwards.

Also, is there anything I have to do before I can upload images? Dragging an image onto the entry always gives me a local URL and doesn’t upload it.


I am a dork. So I was trying to use this over and over and kept getting a ruby error. I then realized you have to have something in your document before selecting “Post to Blog”. I thought you did that first then it would fill in the headers. So now I know but you might want to anticipate other peoples dorkiness and give a nice error message, perhaps something like “Hey Dork - type something first:)”

I am a bit over my head here, so apologies in advance. I am trying out the blogging bundle with pivot via pivots metaweblog API. I can upload images, but not post or fetch posts as the API expects a blog id (say john_johnston) and the blogging bundle seems to send 0 as the blog id. Is there a way to get the bundle to send a blog id?

I got the bundle to work with pivot by adding a # and the blog id after the url, eg.

Thanks for the bundle.

Wonderful. Is there anyway that this bundle can be forced to work with WordPress static pages?

Has anyone been able to make this bundle work with MovableType for a user who does not have ID 1? I have multiple editing accounts and can access posts fine with “Administrator”, but not at all with account “DeltaTee”

Would it be possible to have the cat(tab) shortcut produce a dropdown or selector or autocomplete of all the categories that exist on your wordpress blog?

It would be very useful; the fact that this ultra useful bundle cant handle multiple categories intelligently is the only reason that i ever go to my wordpress interface, to put them in after I have made a post with Textmate.

I just dont need the wordpress interface for posting anymore thanks to the bundle. And thats saying something.

Axinar: Funny you should ask, I sent this message to the mailing list earlier today.

You can either checkout the latest version of the blogging bundle or wait for next build (probably there will be one within a week or so).

Thanks for the bundleand its screencast. It’s very useful and it works OK with my WP blog.

I just wanted to say thanks. The blogging feature is great and works really well with WP. The screencast made it wickedly simple to use. Thanks for an amazing program.

24 November 2006

by Martin Winter

Just a quick note for those Wordpress users in time zones other than GMT – here is a fix for the Date Created bug:


Hi. Does anyone have any idea what this means? I was trying to get my categories for Wordpress in TM and got the following:

/usr/lib/ruby/1.8/xmlrpc/client.rb:403:in call': XMLRPC::FaultException (XMLRPC::FaultException) from /tmp/temp_textmate.cHcXat:46 from /tmp/temp_textmate.cHcXat:45:inpopen’ from /Applications/TextMate/TextMate.app/Contents/SharedSupport/Support/lib/progress.rb:11:in `call_with_progress’ from /tmp/temp_textmate.cHcXat:45

I also got something similar when I tried to post. Any ideas?

Thanks for the help.

07 December 2006

by Stephen H

I have been attempting to connect via TextMate, but keep getting the 401 Unauthorized error. Does anyone have any advice?

07 December 2006

by Stephen H

Sorry, Some more details for my previous post… I have a Wordpress account, and if I put my endpoint URL into my browser I get the “XML-RPC server accepts POST requests only.” message.


07 December 2006

by Stephen H

I’ve solved it. If I don’t have a username in the endpoint URL, then when I fetch post it prompts me for it, and then it all works.

Hi, does it work with a blog which is protected by a .htaccess file?

Greets from Hannover / Germany Sven Fischer, webdesign-hannover.cc


i have been messing with this for awhile in b2evolution..

when i try to post, i get the following error…

[client] PHP Notice: Object of class xmlrpcval to string conversion in /home/villagebuzz/public_html/xmlsrv/xmlrpc.php on line 1637 [client] PHP Notice: Undefined variable: publish in /home/villagebuzz/public_html/xmlsrv/xmlrpc.php on line 1726

anyone have any ideas?


TextMate Rocks!!! I love it. Now if I can get the blogging bundle working I would be soooo happy. Can anyone help me figure out what I need to do to fix this. When I do a fetch post I get this error.

/usr/lib/ruby/1.8/net/protocol.rb:83:in initialize': getaddrinfo: No address associated with nodename (SocketError) from /usr/lib/ruby/1.8/net/protocol.rb:83:innew’ from /usr/lib/ruby/1.8/net/protocol.rb:83:in connect' from /usr/lib/ruby/1.8/net/protocol.rb:82:intimeout’ from /usr/lib/ruby/1.8/timeout.rb:55:in timeout' from /usr/lib/ruby/1.8/net/protocol.rb:82:inconnect’ from /usr/lib/ruby/1.8/net/protocol.rb:64:in initialize' from /usr/lib/ruby/1.8/net/http.rb:430:inopen’ from /usr/lib/ruby/1.8/net/http.rb:430:in do_start' ... 8 levels... from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:546:inpopen’ from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/progress.rb:11:in call_with_progress' from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:546:infetch’ from /tmp/temp_textmate.9viZj6:3

I have no idea what any of this means or how to fix the problem. I am 99% sure that my user and password are correct. Oh and I am using Wordpress blog.

thanks, Matthew

Hi, could anybody help me with this? When I drag and drop an image to TextMate document, I get an error message:

/Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/metaweblog.rb:1:in /bin/bash: -c: line 1: unexpected EOF while looking for matching `’’ /bin/bash: -c: line 4: syntax error: unexpected end of filerequire’ from /Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:4 from /tmp/temp_textmate.qflzMH:2:in

tanks, Thero

Hi There.

Can anyone help me with the Blogging Bindle for Nucleus? I can’t get it to work. I’m using: “http://dink@www../nucleus/xmlrpc/api_metaweblog.inc.php#2” for the setup. But nothing’s happening.

Thanks in advance.

Greetz Dink

05 February 2007

by Adam Knight

It’s turning into emacs. All we need is a space invaders game.

I am using a wordpress blog, however, when I compose my post in Markdown and send it to my blog, TextMate doesn’t covert it to HTML. I don’t have phpMarkdown installed on my WordPress blog. Do I need to? From the screencast it seemed Textmate converted the Markdown before sending it to the blog; is this correct?

Thomas: You have to have the phpMarkdown plug-in installed on Wordpress for that to work. I use the same setup and it works great for me. I love being able to compose in Markdown within Textmate with all its wonderful shortcuts.

I am however having a problem with the “Ping” header. For some reason, Textmate is failing to ping the trackback URLs I feed to it. Either that or it is failing to tell Wordpress to ping them.

Any clues on how to fix that?

Has anyone had any luck using TextMate to blog to Serendipity? I’m trying to set it up and I’m able to pull down my existing blog posts, but altering or posting new content doesn’t seem to work at all.

I’m not seeing any sort of error, it just doesn’t seem to do anything with the changed content.

01 March 2007

by BrettFromTibet

This is freaking AWESOME! I love the blogging bundle. The hugest chore of updating my WP blog is using the slow interface, and trying to write markup and fluent text. This is soooo cool! I am definitely considering buying Textmate (I just started my trial today). It seems like a lean coding machine and blogging dream scene!!!

I just finished the setup but I can’t seem to fetch my blogs. I get the following error after I type my password:

Received Exception:HTTP error: 301 No Post are Available.

Is it because the most recent post is one of my video blogs from You Tube?

Does anyone know of a way to fetch a post not within the first 20? BTW…Textmate is now the ONLY blogging tool I use. I’ve created several Snippets to automate my processes (Technorati Tags, Adsense, ect) and have begun to save some real time during my daily blogging.

Steven: I am afraid that currently you need to edit the source code of TextMate.app/​Contents/​SharedSupport/​Bundles/​Blogging.tmbundle/​Support/​lib/​blogging.rb

Search for the following line and change the 20 part:

result = self.client.getRecentPosts(self.blog_id, self.username, current_password, 20)

FYI having it show all posts is also high on my wish list :) The reason it currently does not pass a higher value is, that it actually fetches the last 20 full posts, not just the titles (so e.g. setting it to 500 could be slow for some users).

19 April 2007

by Andrea


my blog becomes userfriendly when i used textmate!!! thx to textmate

I love that it works off the bat, but I get one error. When I upload a post then I get CFLog (21): dyld returns 2 when trying to load 2007-06-20 16:55:15.255 osascript[23116] CFLog (21): dyld returns 2 when trying to load /System/Library/ScriptingAdditions/WDSvc Addition.osax/Contents/MacOS/WDSvc Addition type of an error. It comes in twice. Any ideas?

Ryan: Did you install the WDSvc Addition yourself?

Try running osascript -e 'say "test"' in Terminal and see if you do not get the same problem.

Likely you can fix it by removing /System/Library/ScriptingAdditions/WDSvc Addition.osax but I don’t know if you have software which rely on it (I don’t know what it is).

I’m currently setting up a new photoblog and installed the fresh Wordpress 2.2.1. Unfortunately, it looks like they changed something in the XML-RPC API as TextMate throws an error message whenever I try to either post a new entry or edit existing entries.

The error is:

Received Exception: wrong dateTime.iso8601 format

I’ve got 2 other blogs running older 2.x versions of Wordpress and they work well with the blogging bundle. A quick search on google with the error message reveals that other users are experiencing this problem, too.

It would be great if you could look into this problem. Thank you!

Quick fix for the aforementioned problem: use the xmlrpc.php from an older 2.x WP installation and the blogging bundle works fine again.

max: Info about the problem available from the mailing list.

Works with Ruby 1.8.6 – thank you!

Max, I really don’t recommend downgrading your wordpress install. A Better fix is to set textmate to use a more recent version of ruby. This is really a ruby 1.8.2 error.

I personally just moved /usr/bin/ruby to /usr/bin/ruby.OLD and then symlinked /usr/bin/ruby to /opt/local/bin/ruby or wherever you have installed a newer version of ruby. Alternatively you could edit the textmate scripts to not hardcode /usr/bin/ruby into them but I’m running off the svn repo and I don’t want to break updating. Of course moving around apple files like this can be dangerous but I’d rather play dangerous by making things use the new better versions than the old and possibly insecure old versions.

08 July 2007

by ilpssun

Regarding the Wordpress-Problem: Using the current (2.2) xmlrpc.php, the patch provided by Martin Winter did not work for me. Instead, in lines 1351 and 1419 in that file, I deleted the “Z” and it worked for me without further changes. Also, I set TM_SEND_DATE_TO_WP=YES in the shell variables.

08 July 2007

by ilpssun

Ok, Markdown tricked me: I wanted to say “backslash-Z” (\Z) instead of plain “Z”.

Thanks, ilpssun! Fixed the problem! :)

I’m using a default Wordpress blog – see the website above – and just used Macports to install Ruby 1.8.6 but still receive the error “Received Exception: wrong dateTime.iso8601 format” after upgrading. Do I need to patch the Wordpress installation as well, or do I need to point Textmate to a different Ruby version? I’m not quite clear based on what’s here.

Thanks for the help to all who responded thus far.

Jake: You need to alter your PATH variable so that TextMate will use the newer version of Ruby. See RubyVersionIssue

Allen – thanks for the tip, but I’m trying to find /usr/bin and can’t either a) get out of the user terminal directory or b) find it via Finder. A half hour of Googling has provided little assistance and many futile leads. Trying to run the commands suggested from Textmate itself brought this:

require “rbconfig”; print Config::CONFIG[“bindir”] + “/” + Config::CONFIG[“ruby_install_name”]: require “rbconfig”; print Config::CONFIG[“bindir”] + “/” + Config::CONFIG[“ruby_install_name”]: No such file or directory print RUBY_VERSION: print RUBY_VERSION: No such file or directory

Hmmm. I’m sure where to start, as I don’t know where Macports installed Ruby or how to install a custom Bash profile per this instruction page

And, to top it off, I just realized I misspelled your name, which is Allan. Sorry!

Jake: Did you find the info about creating ~/.MacOSX/environment.plist? Did you create it with the content of what’s stated in the manual?

That’s all which is necessary to make it work. Probably direct further troubleshooting to the mailing list or IRC channel — and please state exactly what you already did try.

This is really great. I would repeat the question already asked and not answered: Is there any way to make this work with pages as well. If not any chance it could be built in ;) Thanks.

I’m at a complete loss. I have a feeling like this will be a simple answer, but I can’t for the life of me figure it out.

I’m using Textmate with Textpattern, and I realize there are a few hoops to jump through (which I did, following all the little steps to get them to play nicely) but it still doesn’t work for me. When I try to Fetch Posts or Post to Blog, I keep getting the message:

Received exception:Wrong content-type: XML-RPC server accepts POST requests only.

What am I doing wrong???

I have the same problem as Brian. Get the wrong content-type exception even after following all the steps required.

For people having problems with WordPress see the WordPress troubleshooting page at the wiki.

I can’t believe it. And it supports drupal. My life has changed. ^_^

I am not able to post my blogs to blogger.com. Does anyone have the setup instructions for that?

09 December 2007

by David Colbert

I have had a partially broken Blogging bundle for months and decided to have a crack at fixing it today. I am running Word Press 2.2.3.

I have upgraded Ruby to 1.8.6 from 1.8.2, tried deleting ‘/Z’ in xmlrpc.php and I am still getting this error when I try and fetch posts:

[code]Received exception:end of file reached No posts are available![/code]

cat -> tab pulls the categories fine.

Posting works as expected (whereas before going 1.8.6 it was broken…yay!).

Thanks, and for the record, Textmate has helped make my work (and blogging) much more pleasurable. Allan, you are a star.

Hey, of course besides offering my thanks to both you and Brad, I have also run into a problem.

Anytime I post (to Wordpress 2.3.1) I get the error:

2007-12-23 05:47:21.446 osascript[808] CFLog (21): Error loading /Library/QuickTime/LiveType.component/Contents/MacOS/LiveType: error code 4, error number 0 (Library not loaded: /System/Library/PrivateFrameworks/LiveType.framework/Versions/A/LiveType Referenced from: /Library/QuickTime/LiveType.component/Contents/MacOS/LiveType Reason: image not found)

Running 10.4.11, I was wondering if anyone had come up with a solution?

Rushi: Sounds like a problem caused by /Library/QuickTime/LiveType.component. This is a third party install, so if you don’t know what it is / do not use it, you can likely just delete it.

i’m having problems with blogging and cant fix it. whenever i post a markdown (or HTML type) to my blog it converts linebreaks to backslash-n and escapes quotes etc. resulting in a non formatted post. look: http://www.vimeo.com/652128

any ideas?

Any alternative for blogger platform? My friend uses it in one of his Wordpress blog and his feedback is very positive. But unfortunately I cannot use this API on blogger platform. Anyway thanks for sharing such a useful resource with fellow bloggers.

Nice Screencast! What program makes that?

Hi, I don’t know how to fix this one…what is wrong? sh: : command not found /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Support/lib/ui.rb:138:in load': Cannot parse a NULL or zero-length data (OSX::PropertyListError) from /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Support/lib/ui.rb:138:inrequest_item’ from /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:522:in select_endpoint' from /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:354:inendpoint’ from /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:307:in password' from /Users/zettt/Applications/TextMate.app/Contents/SharedSupport/Bundles/Blogging.tmbundle/Support/lib/blogging.rb:562:infetch’ from /tmp/temp_textmate.EZHjhU:3

I get this error since Leopard and haven’t found any workaround…

Thanks for the screencast and the bundle. It is very useful and it works OK with WP blog.

Greets from Germany RL


Kudos for the Blogging Bundle however I am experiencing an issue when attempting to post to blog.

/path/to/blogging.rb;392 in ‘[]’ : can’t convert String to Integer (TypeError) /path/to/blogging.rb:392:in ‘post_to_document’ /path/to/blogging.rb:562:in ‘post_or_update’

I’ve updated the Bundle and unfortunately I don’t know Ruby well enough to edit with confidence.

I am able to fetch a post but just not post to blog.

ruby -v ruby 1.8.6 (2008-03-03 patchlevel 114) [universal-darwin9.0]

16 November 2008

by Garfield


Is there still no possibility to insert taxonomy tags, resp. vocabulary terms, to a blog post via textmate?


16 November 2008

by Garfield

Sorry, I forget to mention that I speak from Drupal as blogging system.

hi, I got two questions: 1. when blogging with wordpress, how to set the visibility to private? it seems aleays public. 2. in the “Fetch Post” window it displays only 20, how select the rest? Thanks

Thanks for the bundle I like the single file approach, console, and few apps.

I have used both blogmate and blogging, compared to ecto, in my work flow. Ecto is remarkable in how it solves problems for so many xlm-rpc issues and blog engines. Still, I don’t want to duplicate files in another application to post, or work exclusively for text out of ecto!

With textpattern I experience tag and category issues, although i can post in with one, or the other not both tags and categories. I like the Blogging budle because i can tweak it more to suit. With Blosxom, and their XMLRPC adaptation I ran into the ruby issue and paths with macports upgrade to Ruby 1.8.7 I’m not sure if i entered the path variable correctly in the .plist - but it didn’t work. That would be best. However symlinks from ‘ruby’ in /usr/bin to /opt/local/bin/ruby worked fine, and without a log-out.

It’s a joy to see the colorful confirmation from blogging:

Type: Blog Post (Markdown) Blog: blosxomRoobi Link: /atisans_drop_dead.html Post: /atisans_drop_dead.txt Title: Atisans Drop Dead

Thanks again, and for putting out the useful information regarding compatibility and fixes. I share others joy. Beginners: don’t lose heart, the learning is slow at first, but this is a great bundle and community.

12 March 2009

by Sergey

Dear All,

First of all, Thanks Macromates team for this awesome editor! Is it possible to post messages, for instance, to my account on livejournal.com? Thank you in advance for you reply.

I reiterate a comment made twice already, from as long ago as 2006… any chance this could be used on static pages? I may try hacking it myself out of desperation, or just going back to Ecto, which as of its latest version handles pages fine, and supports Edit in Textmate. Not sure about MarsEdit 2.

If you’d like to post on a password protected blog (via .htaccess) this post will help:


very great tool, many greetings from germany

Any luck on getting this to work with Squarespace?

I used the URL they provided, and I got a “Malformed request” error.

Status: Draft isn’t working here. I’ve made my own Template using this code:

Type: Blog Post (Markdown) Blog: zHome Title: ${TM_BLOG_TITLE} Status: Draft Date: ${TM_ISO_DATE} +2000 Pings: On Comments: On Category: diary Tags: Keywords:

Main entry text


Main entry continued

When I publish ⌃+⌘+P the post gets published instead of being a Draft. Anybody else have similiar issues?

Nevermind. Got it…working. Don’t know how. Today in the morning it said “No, i won’w work.” Now I retried with same files and everything is working as supposed. Weird.

Any luck on getting this to work with Livejournal?

Hi Brad,

I’m trying to use your Blogging Bundle to connect to blogspot.com (blogger.com), but I have not succeed so far. Is it possible to do so? Could you please help me out here?

Thanks in advance.

So what is the status on this?

I’ve attempted to get this thing working with WordPress 2.8.5 and it’s not appearing to work (getting some host cannot be reached error).

It would be quite nice to use this but I’m unclear if my setup or if the plugin is broken.

I saw the code on GitHub and am thinking about diving into the internals and seeing if I can figure this out but if you’ve got this working with WP 2.8.5 could you lend me a quick hand?


Dana: Not sure what version I was using last I posted, but probably 2.8.x — unable to reach host sounds like a setup/network problem.

One thing is certain though, the error reporting is suboptimal, but the bundle itself has worked pretty much flawlessly for me since it was release more than two years ago — but then, I don’t post that much ;)

[Blogging to SquareSpace with TextMate] http://rklophaus.com/blog/2009/12/3/blogging-to-squarespace-with-textmate.html

Help on getting this to work with SquareSpace.


Thanks for the response! Good to hear it is working with current versions of WordPress. Any idea where I should start looking?

I’m using the URL:


… where “example.com/” is the path to my blog. This seems to be where WordPress serves the XMLRPC info at, correct?

Other than that I am not sure what I could have bricked…

Also, I have set up XMLRPC access within WordPress.

If you have any ideas, please let me know. I’ll be messing around with it to see if I can find a solution.