I see this has come up several times, with the common (and rather obvious, seeing as it's stated fairly explicitly in the error message) answer being to update the entire Support directory from SVN and restart TextMate.
I bring this back up, however, because I thought the GetBundle bundle's autoupdater was generally supposed to keep everything up-to-date with the repository. I've been using this in place of a personal (manual) SVN checkout since my last OS reinstall a month or two ago, but I've just found that *it* seems to have updated the bundles independently of the plugins, if it updated plugins at all. Forcing a manual update-all through the bundle's commands and restarting TextMate multiple times has yielded no change.
I thought the bundle updater was the preferred way of staying up-to-date these days. Is that no longer the case? How are we supposed to keep the plugins and bundles in sync using the auto-updater? I'm more than capable of checking out the bundles by hand (indeed, it was the SVN bundle where I first ran into this), I'd just like to stay on the smoothest/most-approved path where possible.
Thanks. -jrk
On 12/14/06, Leonardo Querzoni querzoni@gmail.com wrote:
Hi,
Some weeks ago I wrote this ruby script that works inside a TextMate command to build a list of references declared in Latex files and let the user select the reference he wants to insert in the text:
#!/usr/bin/env ruby -wKU
SUPPORT = ENV['TM_SUPPORT_PATH'] DIALOG = SUPPORT + '/bin/tm_dialog'
require SUPPORT + '/lib/escape' require SUPPORT + '/lib/plist' require 'pathname' require 'find'
refs = []
Find.find(ENV['TM_PROJECT_DIRECTORY']) do |f| file_name = File.basename(f) if /.(tex)$/ =~ file_name File.open(file_name,"r") do |infile| infile.each_line do |line| if line =~ /.*\label{.*/ line = line.gsub(/.*\label{(.*)}.*/, '\1').chomp refs << { 'title' => line, 'code' => "\ref{#{line}}" } end end end end end abort if refs.empty?
plist = { "menuItems" => refs }.to_plist res = PropertyList::load(`#{e_sh DIALOG} -up #{e_sh plist}`) abort unless res.has_key? "selectedMenuItem"
print %(#{res["selectedMenuItem"]['code']})
Since the last updates (both of TextMate and its bundles), the script does not work anymore.
When I invoke it, it gives me back the following error.
tm_dialog: you have updated the tm_dialog tool to v7 but the Dialog plug-in running is still at v4. tm_dialog: either checkout the PlugIns folder from the repository or remove your checkout of the Support folder. tm_dialog: if you did checkout the PlugIns folder, you need to relaunch TextMate to load the new plug-in. /tmp/temp_textmate.ZcyesN:32:in `load': Cannot parse a NULL or zero- length data (PropertyListError) from /tmp/temp_textmate.ZcyesN:32
I'm a TextMate newbe, thus I'm not sure, but from the error message it seems like I need to update the Dialog.tmplugin file. How can I fix this ?
Cheers, Leonardo
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate