[TxMt] Re: Automated diff + export of personal mods from bundles?

Ben Roux liquid.ise at gmail.com
Thu Apr 6 21:03:41 UTC 2017


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 at gmail.com
>> <mailto:timothy.c.bates at 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 at me.com
>>>> <mailto:doob at 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 at lists.macromates.com <mailto:textmate at 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 at lists.macromates.com
>> http://lists.macromates.com/listinfo/textmate
>>
>
> _______________________________________________
> textmate mailing list
> textmate at lists.macromates.com
> http://lists.macromates.com/listinfo/textmate
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macromates.com/textmate/attachments/20170406/5348406d/attachment.html>


More information about the textmate mailing list