May I have permission to repost your explanation of the bundle system? If it's not already in the wiki it should be, but I'd like to quote you on my blog where I get a goodly amount of TextMate traffic and this breakdown is clear and concise and would help a lot of people.
Thanks, Brett
On Mar 2, 2007, at 3:14 PM, Charilaos Skiadas wrote:
On Mar 2, 2007, at 3:51 PM, Bruno wrote:
Steve, my fresh install consisted of a new download and deleted prefs, rather than a whole new account, but as I said, finding and dragging the Textmate bundle from Pristine Copy to Bundles did the trick.
For future reference, "fresh install" means also removing everything from /Library/Application Support/TextMate and ~/Library/ Application Support/TextMate.
Your problems after your attempt at cleanup where arising because this was not actually the case.
The bundle mechanism seems a bit daunting at first, but it is actually fairly logical. There are four locations where bundles/ bundle items may reside:
- Inside the TextMate application
- In /Library/Application Support/TextMate/Bundles
- In ~/Library/Application Support/TextMate/Bundles, where ~ is
the current user's home directory 4) ~/Library/Application Support/TextMate/Pristine Copy/Bundles
TextMate ships with a number of bundles, so that someone could start using it immediately. It contains the current version of those bundles at the time of packaging, and it doesn't contain all the bundles, just the most often used ones.
If you want a newer version of a bundle, you have the option of checking things out from the repository. It is recommended that you do that in /Library/Application Support/TextMate/Bundles.
Now, each user might edit/add bundle items, and those changes are recorded in ~/Library/Application Support/TextMate/Bundles. This contains typically "delta" files, that record the local differences to the command, for instance if you change a shortcut or something.
And finally we come to the Pristine Copy directory. When you get a new bundle not via the repository, but via downloading a .tmBundle file, then this initial version of this bundle is stored in this directory. It is supposed to be the bundle in its "pristine state", and any modifications you do to the bundle are recorded in ~/ Library/Application Support/TextMate/Bundles. so you could return to that pristine state by removing these local modifications. It is supposed to be used only for bundles not shipping with TM, since there is already a "pristine state" for those bundles inside the TM application.
All this is probably explained somewhere in the wiki and/or manual, but I didn't really feel like looking it up. Hope this makes things clearer.
Bruno
Haris Skiadas Department of Mathematics and Computer Science Hanover College
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