23 June 2007
This screencast is part two of the introduction of tm_dialog which I did last year.
The screencast goes through:
- A few changes made since the first screencast
- Returning values such as list selections
- Using the standard defaults system for keeping (UI) state across sessions
- Asynchronous operation: not blocking TextMate and updating the dialog while on-screen
Here is a direct link to the screencast (14 minutes)
28 October 2006
Included with the latest build of TextMate (r1305) is a new system for presenting dialogs. The new system allows you to create a custom interface in Interface Builder and then ask TextMate to present it as was it native. This is without writing any code at all.
I have recorded a screencast which introduces the system and shows basic usage.
The screencast is part one of what I plan to be a four or five part series with the upcoming screencasts covering the following topics:
- Using buttons in the dialog (for actions)
- Handling selections in lists and outlines
- Showing progress visually
- Putting it all together
Update (2007-03-15): After this screencast was recorded, a change was made: the tm_dialog binary has been moved from Support/bin to be within the Dialog.tmPlugIn package. That way, the version of the shell command should always match that of the installed plug-in (i.e. if you install a newer version of the plug-in). To get the exact path of the tm_dialog shell command, in TextMate type: echo "$DIALOG" and press ⌃R (to execute that line). In your scripts, you should always access tm_dialog as just "$DIALOG" (that would be ENV['DIALOG'] for Ruby).
Another common troubleshooting item is running: "$DIALOG" «nib» and then not see a window. If you do not specify -p/--parameters then tm_dialog will read parameters from the standard input. So either press ⌃D to “close” stdin, or give -p '{}' as argument, and things should work as expected.
16 October 2006
A month ago I asked for suggestions for an Obfuscate Selection feature in the HTML bundle. This was prompted by the desire of providing an easy out-of-the-box way for people to quickly obfuscate an email address when writing HTML.
Read the rest of the post »
14 September 2006
James Edward Gray shows how to apply unit tests to solving Ruby Quiz #84: Generating Pascal's Triangle. In the process he also demonstrates a lot of features from the Ruby bundle and explains conventions and rationale behind them.
The Ruby Quiz screencast (42 MB) is almost an hour long, so you may want to grab a snack before you start it :)
26 July 2006
Here is a short screencast showing off the nifty bundle item selector which allows you to search bundle items.
It also shows how to initiate web searches from TextMate, easily make your text link to the result of these web searches, and shorten Amazon URLs.
Kudos to Haris for coming up with the Feeling Lucky command shown last in the screencast.
See all TextMate screencasts.
29 April 2006
Here is a direct link (10:39 / 11 MB) to part two of the original Objective-C snippets screencast.
This shows a few nice features found in the C and Objective-C bundles:
- documentation lookup, including following links in man pages
- reformatting objective-c method signatures
- auto-insertion of:
- start brackets (when at the end position)
- alloc/init/autorelease (after typing class name)
- missing includes (based on which functions the source call)
I realize that the mouse pointer delay makes it a little hard to follow when I use the mouse to navigate menus (and documentation). The keyboard noises are also louder than on my previous screencasts. Not sure why.
28 April 2006
Here you have it, the first screencast to demonstrate HTML editing (8 MB).
It’s a bit short in content as it only shows how to create HTML tags (and a bit of multi-line editing towards the end), but at seven and a half minute, I figured it was best to keep it like that, and I guess tag creation is the number one productivity gain for HTML writers.
Update: Be vary of kernel panics if you pause and restart this video (see comments). Probably only a problem on Intel Macs.
Update 2: I have re-encoded the screencast as H.264 with 10fps and automatic key frame generation. I think that’s fairly standard, so hopefully no more kernel panics or crashing Quicktime. And if you wonder, yes, it’s now 306 KB larger!
Read the rest of the post »
22 April 2006
Charilaos Skiadas has created a spreadsheet bundle which marks up column-formatted data and supports various functions to be run on ranges. I’m not a user of spreadsheets myself, so I probably have the terminology wrong, but there is a screencast, and it looks pretty cool!
I do however regularly have the need to do some quick ad hoc column summations and basic math, so to demonstrate how I do that, I recorded a screencast to show the math bundle in action (12 minutes, 26 MB). It also shows how to deal with column data in TextMate and a few other tidbits.
12 April 2006
Enrico Franchi asked how to cause return (↩) to also insert an asterisk when used inside block comments such as:
/* This is a block comment
* which spans a few lines
*/
The answer can be found on the mailing list, but I also included it in the latest screencast (61.2 MB) which is really a must see for both novice and expert users.
It does a very good job at capturing how central a role language grammars play in TextMate and just how powerful that makes it!
17 March 2006
Here is a direct link to the latest screencast by yours truly.
It is an impressive display of what can be achieved with a bit of realtime transformations on text typed (in snippets) and context sensitive expansion.
None of the stuff demonstrated is hardcoded, it is all achieved using the simple extension mechanisms of TextMate, and not even IDEs hardcoded for a given language show this level of grace! :)
You can subscribe to the screencast feed.
16 December 2005
Christmas comes early this year. First documentation, and now there’s an official screencast for TextMate.
2006-01-24: The audio on the Python screencast has been improved using audacity (thanks to Haris Skiadas).
Read the rest of the post »