HowToContribute

Bundles.HowToContribute History

Hide minor edits - Show changes to output

February 17, 2013, at 13:55 UTC by Allan Odgaard - Revert spam
January 19, 2013, at 23:04 UTC by Infininight - Remove Spam
Changed lines 107-113 from:
(:markdownend:)

[[http://www.saksuk.com/memutihkan-ketiak.html | Memutihkan Ketiak]]

[[http://www.saksuk.com/contoh-surat-pengunduran-diri.html | Surat Pengunduran Diri]]

[[http://www.saksuk.com | Saksuk]]
to:
(:markdownend:)
December 18, 2012, at 09:50 UTC by saksuk - Additional
Changed lines 107-113 from:
(:markdownend:)
to:
(:markdownend:)

[[http://www.saksuk.com/memutihkan-ketiak.html | Memutihkan Ketiak]]

[[http://www.saksuk.com/contoh-surat-pengunduran-diri.html | Surat Pengunduran Diri]]

[[http://www.saksuk.com | Saksuk]]
August 17, 2009, at 10:16 UTC by tcb - additional cleanup
Changed lines 51-59 from:
? Objective-C.tmbundle/Commands/Go To Method Definition.tmCommand
M Objective-C.tmbundle/Commands/Insert Call to Super.plist
? Objective-C.tmbundle/Snippets/Detach New NSThread.tmSnippet
M Objective-C.tmbundle/Snippets/Delegate Responds to Selector.plist
M Objective-C.tmbundle/Snippets/040 NSDictionary (dict).plist
M Objective-C.tmbundle/Snippets/NSAutoreleasePool (pool).plist
M Objective-C.tmbundle/Snippets/030 NSArray (array).plist
M Objective-C.tmbundle/Syntaxes/Objective-C++.plist
to:
? improveThis.tmbundle/Commands/Go To Method.tmCommand
M improveThis.tmbundle/Commands/Insert Call.plist
? improveThis.tmbundle/Snippets/Detach New.tmSnippet
M improveThis.tmbundle/Snippets/Delegate.plist
M improveThis.tmbundle/Snippets/Dictionary (dict).plist
M improveThis.tmbundle/Snippets/AutoreleasePool (pool).plist
M improveThis.tmbundle/Snippets/Array (array).plist
M improveThis.tmbundle/Syntaxes/improveThis.plist
Changed lines 67-69 from:
svn add "improveThis.tmbundle/Commands/Go To Method Definition.tmCommand"
svn add "improveThis.tmbundle/Snippets/Detach New NSThread.tmSnippet"
to:
svn add "improveThis.tmbundle/Commands/Go To Method.tmCommand"
svn add "improveThis.tmbundle/Snippets/Detach New.tmSnippet"
Changed lines 72-76 from:
svn diff improveThis.tmbundle >obj-c.patch

Here we redirect the svn output to go into the `obj-c.patch` file. If you wish to send a patch for only a subset of the files you have changed then you can specify specific files as the argument to `svn diff`.

to:
svn diff improveThis.tmbundle >improveThis.patch

Here we redirect the svn output to go into the `improveThis.patch` file. If you wish to send a patch for only a subset of the files you have changed then you can specify specific files as the argument to `svn diff`.

Changed lines 79-83 from:
Since the different bundles have different maintainers, it is generally best to send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgeable about the bundle you wish to help improve.

If you send your patch using Apple’s Mail application then do zip the file first. This is only because Mail has a tendency to mangle leading whitespace for text in the body, which renders the patch unusable.

If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online → Send to Clipboard” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent directly to the `##textmate` room.
to:
Since the different bundles have different maintainers, it is generally best to send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online who is knowledgeable about the bundle you wish to help improve.

If you send your patch using Mail.app then zip the file first - Mail has a tendency to mangle leading whitespace for text in the body, which renders the patch unusable.

If you are sending the patch via IRC, open the patch file in TextMate, select all, and use the “Paste Selection Online → Send to Clipboard” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent directly to the `##textmate` room.
August 17, 2009, at 09:54 UTC by tcb - re-write for clarity, including removing the real example, so people don't actually grab Objective-C
Changed lines 10-12 from:
For example if you want to improve the Objective-C bundle, you would execute:

# you should preferably move this to ~/.bash_profile
to:
More generally, using svn with UTF files, you should have the following comment in your ~/.bash_profile. If not then begin checking out with:
Changed lines 13-15 from:

# change to the proper directory, we may leave this
# out in the following examples for brevity
to:

Additionally, svn commands often work relative to the current working directory (show this with "pwd". You want to start from
Changed lines 17-21 from:

svn co http://svn.textmate.org/trunk/Bundles/Objective-C.tmbundle

After having checked out this bundle, be sure to select Bundles → Bundle Editor → Reload Bundles from within TextMate or from shell run:
to:


For brevity this step will be assumed (left out) in the following examples

Next, check out the bundle you want to improve. We will use the example of "improveThis"

svn co http://svn.textmate.org/trunk/Bundles/improveThis.tmbundle

After having checked out the bundle, reload all bundles from within TextMate ("Bundles→ Bundle Editor → Reload", or from shell run:
Changed lines 34-36 from:
ln -s /Library/Application\ Support/TextMate/Bundles/Objective-C.tmbundle Objective-C.tmbundle

to:
ln -s /Library/Application\ Support/TextMate/Bundles/improveThis.tmbundle improveThis.tmbundle

Changed lines 47-50 from:
svn st Objective-C.tmbundle

In my case the result looks like this:
to:
svn st improveThis.tmbundle

You will see a list of Modified Updated, new and deleted items, something like this:
Changed lines 67-69 from:
svn add "Objective-C.tmbundle/Commands/Go To Method Definition.tmCommand"
svn add "Objective-C.tmbundle/Snippets/Detach New NSThread.tmSnippet"
to:
svn add "improveThis.tmbundle/Commands/Go To Method Definition.tmCommand"
svn add "improveThis.tmbundle/Snippets/Detach New NSThread.tmSnippet"
Changed lines 72-73 from:
svn diff Objective-C.tmbundle >obj-c.patch
to:
svn diff improveThis.tmbundle >obj-c.patch
Changed line 90 from:
svn up Objective-C.tmbundle
to:
svn up improveThis.tmbundle
November 03, 2008, at 07:10 UTC by Allan Odgaard - Update svn URL and fix misspellings
Changed lines 19-20 from:
svn co http://macromates.com/svn/Bundles/trunk/Bundles/Objective-C.tmbundle
to:
svn co http://svn.textmate.org/trunk/Bundles/Objective-C.tmbundle
Changed lines 70-72 from:
Here we rediret the svn output to go into the `obj-c.patch` file. If you wish to send a patch for only a subset of the files you have changed then you can specify specific files as the argument to `svn diff`.

to:
Here we redirect the svn output to go into the `obj-c.patch` file. If you wish to send a patch for only a subset of the files you have changed then you can specify specific files as the argument to `svn diff`.

Changed lines 75-76 from:
Since the different bundles have different maintainers, it is generally best to send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgable about the bundle you wish to help improve.
to:
Since the different bundles have different maintainers, it is generally best to send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgeable about the bundle you wish to help improve.
Changed lines 79-81 from:
If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online -> Open in Browser” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.

to:
If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online → Send to Clipboard” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent directly to the `##textmate` room.

Changed line 88 from:
It will show you which files are then updated. Those preceeded with a `G` are files where you had local changes, but `svn` was able to merge your changes with those on the server without problems.
to:
It will show you which files are then updated. Those preceded with a `G` are files where you had local changes, but `svn` was able to merge your changes with those on the server without problems.
November 02, 2008, at 06:49 UTC by larryv - fix path to bundles
Changed line 42 from:
cd ~/Library/Application\ Support/Bundles
to:
cd ~/Library/Application\ Support/TextMate/Bundles
January 21, 2008, at 09:44 UTC by David Jack Wange Olrik -
Changed lines 79-81 from:
If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.

to:
If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online -> Open in Browser” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.

July 01, 2007, at 06:50 UTC by Allan Odgaard -
Changed lines 25-26 from:
*Normally it is not recommended that you checkout bundles to the above location, because when you change the bundle items from inside TextMate, it saves changes to `~/Library/…`, potentially leading to merge conflicts if the files are updated in an incompatible way on the server -- but in this case we actually do want to edit the default bundle directly.*
to:
*Normally it is not recommended that you checkout bundles to the above location, because when you change the bundle items from inside TextMate, it saves changes to `~/Library/…`, potentially leading to merge conflicts if the files are updated in an incompatible way on the server — but in this case we actually do want to edit the default bundle directly, so the normal rule does not apply.*
July 01, 2007, at 06:49 UTC by Allan Odgaard -
Changed lines 25-26 from:
*Normally it is not recommended that you checkout bundles to the above location, because when you change the bundle items from inside TextMate, it saves changes to `~/Library/…`, potentially leading to merge conflicts if the files are updated in an incompatible way on the server.*
to:
*Normally it is not recommended that you checkout bundles to the above location, because when you change the bundle items from inside TextMate, it saves changes to `~/Library/…`, potentially leading to merge conflicts if the files are updated in an incompatible way on the server -- but in this case we actually do want to edit the default bundle directly.*
November 23, 2006, at 01:11 UTC by grant -
Changed lines 98-99 from:
svn resolve «file»
to:
svn resolved «file»
November 22, 2006, at 19:03 UTC by Alex Ross -
Changed lines 68-69 from:
svn diff Objective-C.tmSnippet >obj-c.patch
to:
svn diff Objective-C.tmbundle >obj-c.patch
November 12, 2006, at 15:06 UTC by CrimsonScythe -
Changed lines 40-41 from:
After you have made changes, you can run the following command from shell to see how your version of the bundle looks compared to the defualt version:
to:
After you have made changes, you can run the following command from shell to see how your version of the bundle looks compared to the default version:
November 02, 2006, at 23:07 UTC by Denis Defreyne -
Changed lines 96-97 from:
When you are done mergin a file, you need to run:
to:
When you are done merging a file, you need to run:
October 31, 2006, at 09:31 UTC by Allan Odgaard -
Changed line 12 from:
# you should preferably move this to ~/.bash_profile or similar
to:
# you should preferably move this to ~/.bash_profile
Added lines 15-16:
# change to the proper directory, we may leave this
# out in the following examples for brevity
Added line 18:
Changed lines 27-32 from:
to:
If you already have done a full checkout of the repository to `/Library` then you can instead do a symbolic link, e.g. using:

cd ~/Library/Application\ Support/TextMate/Bundles
ln -s /Library/Application\ Support/TextMate/Bundles/Objective-C.tmbundle Objective-C.tmbundle

Changed lines 35-37 from:
Generally make your changes from TextMate’s bundle editor, this preserves file names on disk even if you rename the items, and will ensure that the `info.plist` in the bundle (which stores the ordering of items, the bundles menu structure, etc.) is updated correctly.

to:
Generally make your changes from TextMate’s bundle editor, this preserves file names on disk even if you rename the items, and will ensure that the `info.plist` in the bundle (which stores the ordering of items, the bundle’s menu structure, etc.) is updated correctly.

Changed lines 56-58 from:
The items with a `?` are items added and not present in the default bundle, the items with an `M` is locally modified.

to:
The items with a `?` are items added and not present in the default bundle, the items with an `M` are locally modified.

Changed lines 70-72 from:
Here we rediret the patch into the `obj-c.patch` file. You can specify specific files, if you wish to only send a patch for a subset of the files you changed.

to:
Here we rediret the svn output to go into the `obj-c.patch` file. If you wish to send a patch for only a subset of the files you have changed then you can specify specific files as the argument to `svn diff`.

Changed lines 75-81 from:
Since the different bundles have different maintainers, it is generally best to just send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgable about the bundle you wish to help improve.

If you send your patch using Apple’s Mail application then do zip the file first. This is only because Mail has a tendency to mangle leading whitespace for text in the letter body, which renders the patch not usable.

If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.

to:
Since the different bundles have different maintainers, it is generally best to send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgable about the bundle you wish to help improve.

If you send your patch using Apple’s Mail application then do zip the file first. This is only because Mail has a tendency to mangle leading whitespace for text in the body, which renders the patch unusable.

If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org/> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.

Changed lines 96-98 from:
When you are done mergin a file, you need to run `svn resolve «file»` so that `svn` knows that you have resolved the conflict. This will then remove the `«file».mine` and associated files, which appeared after the conflict.

to:
When you are done mergin a file, you need to run:

svn resolve «file»

This tells `svn` that you have resolved the conflict. This will then remove the `«file».mine` and associated files, which appeared after the conflict.

October 31, 2006, at 09:20 UTC by Allan Odgaard -
Changed lines 6-7 from:
# Checking out the Bundle
to:
## Checking out the Bundle
Changed lines 25-26 from:
# Changing the Files
to:
## Changing the Files
Changed lines 30-31 from:
# Learning Which Files You Changed
to:
## Learning Which Files You Changed
Changed lines 51-52 from:
# Generating a Patch
to:
## Generating a Patch
Changed lines 65-66 from:
# Submitting the Patch
to:
## Submitting the Patch
Changed lines 74-75 from:
# Handling the Updated Bundle
to:
## Handling the Updated Bundle
October 31, 2006, at 09:19 UTC by Allan Odgaard -
Added lines 1-91:
(:markdown:)

This page describes how you can contribute back with improvements to one or more of the TextMate bundles.


# Checking out the Bundle

You should start by checking out the latest version of the bundle you want to improve into `~/Library/Application Support/TextMate/Bundles`.

For example if you want to improve the Objective-C bundle, you would execute:

# you should preferably move this to ~/.bash_profile or similar
export LC_CTYPE=en_US.UTF-8

cd ~/Library/Application\ Support/TextMate/Bundles
svn co http://macromates.com/svn/Bundles/trunk/Bundles/Objective-C.tmbundle

After having checked out this bundle, be sure to select Bundles → Bundle Editor → Reload Bundles from within TextMate or from shell run:

osascript -e 'tell app "TextMate" to reload bundles'

*Normally it is not recommended that you checkout bundles to the above location, because when you change the bundle items from inside TextMate, it saves changes to `~/Library/…`, potentially leading to merge conflicts if the files are updated in an incompatible way on the server.*


# Changing the Files

Generally make your changes from TextMate’s bundle editor, this preserves file names on disk even if you rename the items, and will ensure that the `info.plist` in the bundle (which stores the ordering of items, the bundles menu structure, etc.) is updated correctly.


# Learning Which Files You Changed

After you have made changes, you can run the following command from shell to see how your version of the bundle looks compared to the defualt version:

cd ~/Library/Application\ Support/Bundles
svn st Objective-C.tmbundle

In my case the result looks like this:

? Objective-C.tmbundle/Commands/Go To Method Definition.tmCommand
M Objective-C.tmbundle/Commands/Insert Call to Super.plist
? Objective-C.tmbundle/Snippets/Detach New NSThread.tmSnippet
M Objective-C.tmbundle/Snippets/Delegate Responds to Selector.plist
M Objective-C.tmbundle/Snippets/040 NSDictionary (dict).plist
M Objective-C.tmbundle/Snippets/NSAutoreleasePool (pool).plist
M Objective-C.tmbundle/Snippets/030 NSArray (array).plist
M Objective-C.tmbundle/Syntaxes/Objective-C++.plist

The items with a `?` are items added and not present in the default bundle, the items with an `M` is locally modified.


# Generating a Patch

To generate a patch which contains all your changes you need to first add those files which are new, for example to add the two new files in the Objective-C bundle we do:

svn add "Objective-C.tmbundle/Commands/Go To Method Definition.tmCommand"
svn add "Objective-C.tmbundle/Snippets/Detach New NSThread.tmSnippet"

Then to get a patch for the entire bundle, we execute:

svn diff Objective-C.tmSnippet >obj-c.patch

Here we rediret the patch into the `obj-c.patch` file. You can specify specific files, if you wish to only send a patch for a subset of the files you changed.


# Submitting the Patch

Since the different bundles have different maintainers, it is generally best to just send the patch to the TextMate mailing list, or join the `##textmate` IRC channel at freenode, and see if there is anyone online which is knowledgable about the bundle you wish to help improve.

If you send your patch using Apple’s Mail application then do zip the file first. This is only because Mail has a tendency to mangle leading whitespace for text in the letter body, which renders the patch not usable.

If you are sending the patch to someone via IRC, you can open the patch file in TextMate, select all, and use the “Paste Selection Online” command on ⌃⌥⇧V. This will paste the patch to <http://pastie.textmate.org> and if you are using Colloquy, offers you to have the resulting URL sent diretly to the `##textmate` room.


# Handling the Updated Bundle

When your patch has been accepted, you should update your local checkout of the bundle using:

svn up Objective-C.tmbundle

It will show you which files are then updated. Those preceeded with a `G` are files where you had local changes, but `svn` was able to merge your changes with those on the server without problems.

If you get a `C` it means there was a conflict merging the local copy with the server version.

If you don’t actually have local changes you want to keep (which is likely, since you submitted them to be in the default bundle) the easiest is just to remove the bundle or the problematic items and do a new checkout.

However, the way to resolve a merge conflict is to load the file into a text editor, then locate all the lines with `<<<<<<<<` and `>>>>>>>>`, those mark where `svn` was unable to merge your local changes with those on the server. Merge this manually.

When you are done mergin a file, you need to run `svn resolve «file»` so that `svn` knows that you have resolved the conflict. This will then remove the `«file».mine` and associated files, which appeared after the conflict.


(:markdownend:)