I have done something similar by symlinking select directories to a dropbox folder:

$ ls ~/Library/Application\ Support/TextMate/ |grep Dropbox
Bundles -> /Users/benroux/Dropbox/Config/Textmate/Bundles/
Bundles-1.x -> /Users/benroux/Dropbox/Config/Textmate/Bundles/
Managed -> /Users/benroux/Dropbox/Config/Textmate/Managed/
Pristine Copy -> /Users/benroux/Dropbox/Config/Textmate/Pristine Copy/
Themes -> /Users/benroux/Dropbox/Config/Textmate/Themes/

The only issue i have had has been the load order between the various directories, where m changes were being saves to Bundles but being ignored when restarting TextMate in favor of the Managed or Pristine Copy versions. Thankfully that seems to have been largely resolved as of 9 months ago or so.

When it works right (which it is now) it has been a great “set it and forget it” solution between machines.
Ben

On 6 Apr 2017, at 14:57, Stefan Daschek wrote:

Here's what I've been doing for the past few years:

I have ~/Library/Application Support/TextMate/Bundles in a Git repo. Most of the Bundles I use regularly are included as submodules. This way I can use Git to keep track of my modifications and also easily create pull requests for upstream. For some lesser used bundles I only have TextMate’s “delta” bundles in the repo.

You can find this repo on GitHub: https://github.com/die-antwort/textmate-bundles I also wrote some helper scripts to simplify updating the submoduled bundles and committing my changes.

Downside of this approach: I have to manually check for updates of the submoduled modules and then merge them in.

Upside: I find it easier to keep track of my customizations if they are in the context of the complete bundle, not only a delta bundle. Also, contributing to upstream is really simple.

From time to time I clean up my customizations to remove changes that I either no longer use or that have been superseded by commits in upstream. (I wrote a blog post about how to do “something like a rebase but without destroying the history” here: https://die-antwort.eu/techblog/2016-08-git-tricks-for-maintaining-a-long-lived-fork/ )

S.

Am 06.04.17 um 01:53 schrieb Graham Heath:

On April 5, 2017 at 2:27:34 PM, Tim Bates (timothy.c.bates@gmail.com
<mailto:timothy.c.bates@gmail.com>) wrote:

Thanks Jacob,
I should have said I’ve forked these bundles from github so as to be
able to maintain my changes, use them on multiple machines etc.
So, I don’t have a set of over-rides from pristine.

On 5 Apr 2017, at 4:16 pm, Jacob Carlborg <doob@me.com
<mailto:doob@me.com>> wrote:

Like many of us, I suspect, I’ve got core bundles (like markdown,
regex etc.) that I have customised with new snippets and commands,
or just just tweaks to language.

I’d like extricate my code from these, so that
1. I can let TM2 easily update the mainstream bundle
2. I can control my mods
3. From that base of clarity, I can submit generally-useful changes
back to the widely used central repo.

Are there any solutions to
1. Diffing the pristine bundle with my dirty copy?
2. Exporting modified snippets and commands to my personal repo

Ideally, the UUID exported commands would be entered into the plist
of my personal repo, perhaps under “exported from <bundlename> as a
menu name.

Hope others have had this problem and solved it :-) Otherwise bit of
a manual trek in store for summer :-)

As far as I understand, at least for the built-in bundles, TextMate
will store the changes separately from the main bundle. The built-in
bundles are stored in ~/Library/Application
Support/TextMate/Managed/Bundles, if you make a change to one of
those, it will store those changes as a diff (or rather the
overrides) in ~/Library/Application Support/TextMate/Bundles. There’s
also a directory called "Pristine Copy”, see section 5.2 here [1] for
more information.

[1] https://manual.macromates.com/en/bundles - not sure if this is up
to date

_______________________________________________
textmate mailing list
textmate@lists.macromates.com <mailto:textmate@lists.macromates.com>
http://lists.macromates.com/listinfo/textmate

I’m interested in hearing from a bundle developer or 2 on the topic. I
dabble (plug: my fork of Javascript Hinter
<https://github.com/loadedsith/JavascriptHinter.tmbundle>)

I use homeshick <https://github.com/andsens/homeshick> to manage my
settings/bundles. I’ve used the symlinking
<https://github.com/andsens/homeshick/wiki/Symlinking> guide and

~/Library/Application Support/TextMate

now points to

~/.homesick/repos/textmate-settings/Application Support/TextMate

Homeshick creates a git repo under repos/[repo name]. Committing (or
reverting) changes is now done in this git repository. If you like what
you’ve changed you can commit or you could move the change into the
bundle. For instance: If I make a change to a command, first I look at
repo status, and then I move the changes in into the bundle. Remove the
diffs, and re-launch TextMate.

I’m way over complicating this, I assume?

Thanks,

Graham Heath




_______________________________________________
textmate mailing list
textmate@lists.macromates.com
http://lists.macromates.com/listinfo/textmate

_______________________________________________
textmate mailing list
textmate@lists.macromates.com
http://lists.macromates.com/listinfo/textmate