# Encoding: UTF-8

[{beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" -r \"$TM_SUPPORT_PATH/lib/shelltokenize.rb\" <<END\n  cvs = ENV['TM_CVS'] || \"cvs\"\n  TextMate.selected_paths_array.each do |path|\n    puts %x{cd \"\#{File.dirname path}\" && \#{cvs} add \"\#{File.basename path}\"}\n  end\nEND",
  input: "none",
  keyEquivalent: "^Z",
  name: "Add to Repository",
  output: "showAsTooltip",
  uuid: "ADCD4FCD-D39D-41B3-88D0-84C5BE115535"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\ncd \"$TM_DIRECTORY\" &&\n\"$TM_CVS\" annotate \"$TM_FILENAME\"",
  input: "none",
  keyEquivalent: "^Z",
  name: "Annotate",
  output: "openAsNewDocument",
  uuid: "338A3670-DA8E-4036-87E0-DF2E212254C8"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'versioned_file'\nrequire 'diff'\n\nfile = CVS::VersionedFile.new(ENV['TM_FILEPATH'])\nannotation = file.cvs(:annotate)\ndiff = CVS::Diff.new(file.diff(:head))\n\nn = diff.source_line(ENV['TM_LINE_NUMBER'].to_i-1)\ncase n\nwhen Symbol then puts \"\#{n} locally\"\nelse puts annotation.split(/\\n/)[n]\nend\n\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Annotate Line",
  output: "showAsTooltip",
  uuid: "76E34DE2-1DCB-47B8-BA2F-4F3341A3AB9C"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\ncd \"$TM_DIRECTORY\"\nrevs=$(\"$TM_CVS\" log \"$TM_FILENAME\"|grep '^revision' \\\n\t2> >(CocoaDialog progressbar --indeterminate \\\n\t\t--title \"Check out Revision…\" \\\n\t\t--text \"Retrieving List of Revisions…\" \\\n\t))\n\nrevs=$(echo $revs|sed 's/revision //g')\n\nrevs=`osascript<<END\n\tset AppleScript's text item delimiters to {\" \"}\n\ttell app \"SystemUIServer\"\n\t\tactivate\n\t\tset ourList to (every text item of \"$revs\")\n\t\tif the count of items in ourList is 0 then\n\t\t\tdisplay dialog \"No older revisions of file '$(basename \"$TM_FILEPATH\")' found\" buttons (\"OK\")\n\t\t\tset the result to false\n\t\telse\n\t\t\tchoose from list ourList with prompt \"Check out an older revision of '$(basename \"$TM_FILEPATH\")':\"\n\t\tend if\n\tend tell\nEND`\n\n# exit if user canceled\nif [[ $revs = \"false\" ]]; then\n\texit_discard\nfi\n\nexport REVS=\"$revs\"\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'versioned_file'\n\nprint CVS::VersionedFile.version(ENV['TM_FILEPATH'], ENV['REVS'])\nEND",
  input: "none",
  keyEquivalent: "^Z",
  name: "Check out Revision...",
  output: "replaceDocument",
  uuid: "2C5DB599-04DC-40CC-BBE8-0A73620BC42A"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\nexport TM_CVS\nexport CommitWindow=\"$TM_SUPPORT_PATH/bin/CommitWindow.app/Contents/MacOS/CommitWindow\"\n\ncd \"${TM_PROJECT_DIRECTORY:-$TM_DIRECTORY}\"\n\"${TM_RUBY:-ruby}\" -- \"${TM_BUNDLE_SUPPORT}/cvs_commit.rb\"",
  input: "none",
  keyEquivalent: "^Z",
  name: "Commit...",
  output: "showAsHTML",
  uuid: "BE6728A5-AFC4-4D98-9EC7-C2E951483B71"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'cvs_diff'\n\nCVS::diff_active_file(:head, \"Diff With Newest\")\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Diff With Newest (HEAD)",
  output: "openAsNewDocument",
  uuid: "22FC4CAB-4664-4CFC-BC8E-C2294616E464"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'cvs_diff'\n\nCVS::diff_active_file(:prev, \"Diff With Previous Revision\")\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Diff With Previous Revision (PREV)",
  output: "openAsNewDocument",
  uuid: "E29C9E3B-B7FB-4ED1-94C3-2F702CD090B5"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\ncd \"$TM_DIRECTORY\"\nrevs=$(\"$TM_CVS\" log \"$TM_FILENAME\"|grep '^revision' \\\n\t2> >(CocoaDialog progressbar --indeterminate \\\n\t\t--title \"Diff Revision…\" \\\n\t\t--text \"Retrieving List of Revisions…\" \\\n\t))\n\nrevs=$(echo $revs|sed 's/revision //g')\n\nrevs=`osascript<<END\n\tset AppleScript's text item delimiters to {\" \"}\n\ttell app \"SystemUIServer\"\n\t\tactivate\n\t\tset ourList to (every text item of \"$revs\")\n\t\tif the count of items in ourList is 0 then\n\t\t\tdisplay dialog \"No older revisions of file '$(basename \"$TM_FILEPATH\")' found\" buttons (\"OK\")\n\t\t\tset the result to false\n\t\telse\n\t\t\tchoose from list ourList with prompt \"Diff '$(basename \"$TM_FILEPATH\")' with older revision:\"\n\t\tend if\n\tend tell\nEND`\n\n# exit if user canceled\nif [[ $revs = \"false\" ]]; then\n\tosascript -e 'tell app \"TextMate\" to activate' &>/dev/null &\texit_discard\nfi\n\nexport REVS=\"$revs\"\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'cvs_diff'\n\nCVS::diff_active_file(ENV['REVS'], \"Diff With Revision...\")\nEND",
  input: "none",
  keyEquivalent: "^Z",
  name: "Diff With Revision...",
  output: "openAsNewDocument",
  uuid: "6416A49F-8B3E-47EE-81B4-F2F7F19C6B41"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'cvs_diff'\n\nCVS::diff_active_file(:base, \"Diff With Working Copy\")\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Diff With Working Copy (BASE)",
  output: "openAsNewDocument",
  uuid: "00C541DE-9A5C-4C59-A075-E754BAEB25C2"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\ncd \"$TM_DIRECTORY\" &&\n\"$TM_CVS\" log \"$TM_FILENAME\"",
  input: "none",
  keyEquivalent: "^Z",
  name: "Log",
  output: "openAsNewDocument",
  uuid: "9EA691A5-A166-4D8F-955F-270490F02827"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'versioned_file'\n\ntag=`CocoaDialog inputbox --title Merge --informative-text 'Which tag?' --button1 Update --button2 'Cancel'`\n\naccept, tag = *tag.to_a.map {|l| l.chomp}\n\nexit unless accept =~ /1/\n\nfile = CVS::VersionedFile.new(ENV['TM_FILEPATH'])\nfile.update(:tag => tag, :sticky => false)\n\nputs \"Merged \#{file.basename} from \#{tag}.\"\n\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Merge from tag...",
  output: "discard",
  uuid: "473C6519-F164-4496-A699-F9DE2CAB56DD"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'versioned_file'\n\nfile = CVS::VersionedFile.new(ENV['TM_FILEPATH'])\nfile.update(:reset_tags => true)\n\nputs \"All sticky tags reset\"\n\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Reset sticky tags",
  output: "showAsTooltip",
  uuid: "1FE7E10E-70B4-44D7-924D-879C54F19289"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\nrm \"$TM_FILEPATH\" &&\ncd \"$TM_DIRECTORY\" &&\n\"$TM_CVS\" update \"$TM_FILENAME\"\n\n# force TM to refresh the current file..\nosascript &>/dev/null \\\n   -e 'tell application \"Dock\" to activate' \\\n   -e 'tell application \"TextMate\" to activate' &\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Revert",
  output: "showAsTooltip",
  uuid: "20865252-80D2-4CA4-9834-391D09210C4F"},
 {beforeRunningCommand: "nop",
  command: 
   "require_cmd \"${TM_CVS:=cvs}\" \"If you have installed cvs, then you need to either update your <tt>PATH</tt> or set the <tt>TM_CVS</tt> shell variable (e.g. in Preferences / Advanced)\"\n\n\"${TM_RUBY:-ruby}\" <<'END'\n\nENV['CVS_PATH'] = ENV['TM_CVS']\n$LOAD_PATH << ENV['TM_BUNDLE_SUPPORT']\nrequire 'versioned_file'\n\ntag=`CocoaDialog inputbox --title Tag --informative-text 'Which tag?' --button1 Update --button2 'Cancel'`\n\naccept, tag = *tag.to_a.map {|l| l.chomp}\n\nexit unless accept =~ /1/\n\nfile = CVS::VersionedFile.new(ENV['TM_FILEPATH'])\nfile.update(:tag => tag)\n\nputs \"Tagged \#{file.basename} with tag \#{tag}.\"\n\nEND\n",
  input: "none",
  keyEquivalent: "^Z",
  name: "Update with tag...",
  output: "showAsTooltip",
  uuid: "1F22884A-6702-4FB6-B4E7-D49B2431BD4E"}]
