zsh_dots 0.5.1 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/.gitignore +1 -0
  2. data/.gitmodules +3 -3
  3. data/Gemfile.lock +7 -7
  4. data/README.md +31 -23
  5. data/Rakefile +21 -4
  6. data/bin/elocal_nightly.sh +12 -6
  7. data/bin/loggly +166 -0
  8. data/bin/repl.sh +6 -0
  9. data/config/Gemfile +19 -0
  10. data/config/bundle/config +3 -0
  11. data/config/gemrc +0 -1
  12. data/config/gitconfig +9 -5
  13. data/config/gitignore +102 -0
  14. data/config/muttrc.example +79 -0
  15. data/config/osx.zsh +162 -0
  16. data/config/railsrc +1 -1
  17. data/config/rspec +1 -2
  18. data/config/vimrc +320 -0
  19. data/config/zshenv +26 -9
  20. data/config/zshrc +14 -0
  21. data/etc/rails/template/.env +2 -0
  22. data/etc/rails/template/.travis.yml +27 -0
  23. data/etc/rails/template.rb +28 -1401
  24. data/lib/dots/aliases.zsh +48 -23
  25. data/lib/dots/directories.zsh +0 -4
  26. data/lib/dots/functions.zsh +62 -17
  27. data/lib/dots/plugins.zsh +18 -11
  28. data/lib/plugins/git/git.plugin.zsh +11 -18
  29. data/lib/plugins/git-process/git-process.plugin.zsh +20 -0
  30. data/lib/plugins/osx/osx.plugin.zsh +3 -1
  31. data/lib/plugins/rails3/rails3.plugin.zsh +1 -1
  32. data/lib/plugins/ruby/ruby.plugin.zsh +8 -5
  33. data/lib/ruby/dots/bootstrap.rb +56 -0
  34. data/lib/ruby/dots/command.rb +28 -49
  35. data/lib/ruby/dots/installation.rb +53 -0
  36. data/lib/ruby/dots/installer.rb +2 -0
  37. data/lib/ruby/dots/persistence.rb +41 -0
  38. data/lib/ruby/dots/version.rb +1 -1
  39. data/lib/ruby/dots.rb +33 -3
  40. data/{config/aws → lib/tasks/.gitkeep} +0 -0
  41. data/spec/integration/command_spec.rb +3 -3
  42. metadata +42 -18
  43. data/.rvmrc +0 -47
  44. data/config/.dot_file +0 -1
  45. data/config/rvmrc +0 -1
  46. data/config/zlogin +0 -1
  47. data/lib/plugins/aws/aws.plugin.zsh +0 -20
  48. data/lib/tasks/db.rake +0 -55
  49. data/lib/tasks/dots.rake +0 -32
  50. data/vendor/antigen.zsh +0 -251
@@ -8,7 +8,7 @@ describe Dots::Command do
8
8
  end
9
9
 
10
10
  describe "persist PATH" do
11
- let(:subject) { %x(./bin/dots persist ~/.dot_file) }
11
+ subject { %x(./bin/dots persist ~/.dot_file) }
12
12
 
13
13
  it "copies the file to the dots repo" do
14
14
  subject.should_not be_blank
@@ -16,7 +16,7 @@ describe Dots::Command do
16
16
  end
17
17
 
18
18
  describe "forget PATH" do
19
- let(:subject) { %x(./bin/dots forget ~/.dot_file) }
19
+ subject { %x(./bin/dots forget ~/.dot_file) }
20
20
 
21
21
  it "restores the file to its original location" do
22
22
  subject.should_not be_blank
@@ -24,7 +24,7 @@ describe Dots::Command do
24
24
  end
25
25
 
26
26
  describe "bare invocation" do
27
- let(:subject) { %x(./bin/dots) }
27
+ subject { %x(./bin/dots) }
28
28
 
29
29
  it "shows usage information" do
30
30
  subject.should_not be_blank
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zsh_dots
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-14 00:00:00.000000000 Z
12
+ date: 2012-12-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
16
- requirement: &70358833531220 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70358833531220
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: activemodel
27
- requirement: &70358833530800 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70358833530800
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rake
38
- requirement: &70358833530380 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,7 +53,12 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *70358833530380
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  description: DOTS is an advanced ZSH framework.
48
63
  email:
49
64
  - tubbo@psychedeli.ca
@@ -53,7 +68,9 @@ executables:
53
68
  - gbrt
54
69
  - git_cwd_info
55
70
  - lein
71
+ - loggly
56
72
  - reattach-to-user-namespace
73
+ - repl.sh
57
74
  - ssh-copy-id
58
75
  - stock
59
76
  extensions: []
@@ -61,7 +78,6 @@ extra_rdoc_files: []
61
78
  files:
62
79
  - .gitignore
63
80
  - .gitmodules
64
- - .rvmrc
65
81
  - Gemfile
66
82
  - Gemfile.lock
67
83
  - README.md
@@ -71,20 +87,24 @@ files:
71
87
  - bin/gbrt
72
88
  - bin/git_cwd_info
73
89
  - bin/lein
90
+ - bin/loggly
74
91
  - bin/reattach-to-user-namespace
92
+ - bin/repl.sh
75
93
  - bin/ssh-copy-id
76
94
  - bin/stock
77
- - config/.dot_file
78
- - config/aws
95
+ - config/Gemfile
96
+ - config/bundle/config
79
97
  - config/example.aws.zsh
80
98
  - config/gemrc
81
99
  - config/gitconfig
100
+ - config/gitignore
101
+ - config/muttrc.example
102
+ - config/osx.zsh
82
103
  - config/railsrc
83
104
  - config/rspec
84
- - config/rvmrc
85
105
  - config/screenrc
86
106
  - config/tmux.conf
87
- - config/zlogin
107
+ - config/vimrc
88
108
  - config/zshenv
89
109
  - config/zshrc
90
110
  - etc/mandlebrot.c
@@ -94,15 +114,17 @@ files:
94
114
  - etc/rails/recipes/html5.rb
95
115
  - etc/rails/recipes/readme_markdown.rb
96
116
  - etc/rails/template.rb
117
+ - etc/rails/template/.env
118
+ - etc/rails/template/.travis.yml
97
119
  - lib/dots.sh
98
120
  - lib/dots/aliases.zsh
99
121
  - lib/dots/directories.zsh
100
122
  - lib/dots/functions.zsh
101
123
  - lib/dots/plugins.zsh
102
- - lib/plugins/aws/aws.plugin.zsh
103
124
  - lib/plugins/bundler/_bundler
104
125
  - lib/plugins/bundler/bundler.plugin.zsh
105
126
  - lib/plugins/git-flow/git-flow.plugin.zsh
127
+ - lib/plugins/git-process/git-process.plugin.zsh
106
128
  - lib/plugins/git/git.plugin.zsh
107
129
  - lib/plugins/knife/_knife
108
130
  - lib/plugins/knife/knife.plugin.zsh
@@ -113,15 +135,17 @@ files:
113
135
  - lib/plugins/rake/rake.plugin.zsh
114
136
  - lib/plugins/ruby/ruby.plugin.zsh
115
137
  - lib/ruby/dots.rb
138
+ - lib/ruby/dots/bootstrap.rb
116
139
  - lib/ruby/dots/command.rb
117
140
  - lib/ruby/dots/dot_file.rb
141
+ - lib/ruby/dots/installation.rb
142
+ - lib/ruby/dots/installer.rb
143
+ - lib/ruby/dots/persistence.rb
118
144
  - lib/ruby/dots/version.rb
119
- - lib/tasks/db.rake
120
- - lib/tasks/dots.rake
145
+ - lib/tasks/.gitkeep
121
146
  - spec/integration/command_spec.rb
122
147
  - spec/models/dot_file_spec.rb
123
148
  - spec/spec_helper.rb
124
- - vendor/antigen.zsh
125
149
  - vendor/oh-my-zsh/check_for_upgrade.sh
126
150
  - vendor/oh-my-zsh/install.sh
127
151
  - vendor/oh-my-zsh/require_tool.sh
@@ -148,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
148
172
  version: '0'
149
173
  requirements: []
150
174
  rubyforge_project:
151
- rubygems_version: 1.8.17
175
+ rubygems_version: 1.8.23
152
176
  signing_key:
153
177
  specification_version: 3
154
178
  summary: DOTS is an advanced ZSH framework. It abstracts a lot of hard-to-remember
data/.rvmrc DELETED
@@ -1,47 +0,0 @@
1
- #!/usr/bin/env bash
2
- #
3
- # WARNING
4
- #
5
- # THIS IS NOT YOUR ~/.rvmrc FILE!!!
6
- #
7
- # That file is located in ~/.dots/config/rvmrc. Please go there to edit your global RVM changes.
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
- # This is an RVM Project .rvmrc file, used to automatically load the ruby
17
- # development environment upon cd'ing into the directory
18
-
19
- # First we specify our desired <ruby>[@<gemset>], the @gemset name is optional,
20
- # Only full ruby name is supported here, for short names use:
21
- # echo "rvm use 1.9.3" > .rvmrc
22
- environment_id="ruby-1.9.3-p125@global"
23
-
24
- # Uncomment the following lines if you want to verify rvm version per project
25
- # rvmrc_rvm_version="1.12.5 (stable)" # 1.10.1 seams as a safe start
26
- # eval "$(echo ${rvm_version}.${rvmrc_rvm_version} | awk -F. '{print "[[ "$1*65536+$2*256+$3" -ge "$4*65536+$5*256+$6" ]]"}' )" || {
27
- # echo "This .rvmrc file requires at least RVM ${rvmrc_rvm_version}, aborting loading."
28
- # return 1
29
- # }
30
-
31
- # First we attempt to load the desired environment directly from the environment
32
- # file. This is very fast and efficient compared to running through the entire
33
- # CLI and selector. If you want feedback on which environment was used then
34
- # insert the word 'use' after --create as this triggers verbose mode.
35
- if [[ -d "${rvm_path:-$HOME/.rvm}/environments"
36
- && -s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
37
- then
38
- \. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
39
- [[ -s "${rvm_path:-$HOME/.rvm}/hooks/after_use" ]] &&
40
- \. "${rvm_path:-$HOME/.rvm}/hooks/after_use" || true
41
- else
42
- # If the environment file has not yet been created, use the RVM CLI to select.
43
- rvm --create "$environment_id" || {
44
- echo "Failed to create RVM environment '${environment_id}'."
45
- return 1
46
- }
47
- fi
data/config/.dot_file DELETED
@@ -1 +0,0 @@
1
- This is my config
data/config/rvmrc DELETED
@@ -1 +0,0 @@
1
- rvm_trust_rvmrcs_flag=1
data/config/zlogin DELETED
@@ -1 +0,0 @@
1
- [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
@@ -1,20 +0,0 @@
1
- #
2
- # Amazon AWS Dev Tools
3
- #
4
-
5
- # Used by all CLI tools produced by Amazon
6
- export JAVA_HOME="$(/usr/libexec/java_home)"
7
- export EC2_PRIVATE_KEY="$(/bin/ls "$HOME"/.ec2/pk-*.pem | /usr/bin/head -1)"
8
- export EC2_CERT="$(/bin/ls "$HOME"/.ec2/cert-*.pem | /usr/bin/head -1)"
9
-
10
- # ec2-dev-tools
11
- export EC2_HOME="/usr/local/Library/LinkedKegs/ec2-api-tools/jars"
12
-
13
- # ec2-ami-tools
14
- export EC2_AMITOOL_HOME="/usr/local/Library/LinkedKegs/ec2-ami-tools/jars"
15
-
16
- # aws-sns-cli
17
- export AWS_SNS_HOME="/usr/local/Library/LinkedKegs/aws-sns-cli/jars"
18
-
19
- # Further AWS configuration that must be hidden from Git.
20
- source "$ZSH/config/aws.zsh"
data/lib/tasks/db.rake DELETED
@@ -1,55 +0,0 @@
1
- require 'logger'
2
- require 'fileutils'
3
-
4
- namespace :db do
5
- HOME = ENV['HOME']
6
- EMAIL = ENV['EMAIL'] || "tubbo@psychedeli.ca"
7
- DRY_RUN = ENV['DRY_RUN'] || false
8
- RAILS_ENV = ENV['RAILS_ENV'] || "stage"
9
-
10
- desc "Import the eLocal stage database and send an email when it's done."
11
- task :import do
12
- puts "Writing logs to #{HOME}/log/tasklog"
13
- sh "cat /dev/null > #{HOME}/log/tasklog"
14
- logger = Logger.new("#{HOME}/log/tasklog")
15
- logger.formatter = proc do |severity, datetime, progname, msg|
16
- puts msg
17
- "#{severity}: #{msg}\n"
18
- end
19
-
20
- logger.info "Entering eLocal app directory"
21
- cd "#{HOME}/Code/elocal"
22
-
23
- logger.info "Importing #{RAILS_ENV} database content"
24
- sh "bundle exec thor db:import:#{RAILS_ENV} > /dev/null" unless DRY_RUN
25
- logger.info "..done"
26
-
27
- logger.info "Migrating database structure"
28
- sh "bundle exec rake db:migrate > log/tasklog" unless DRY_RUN
29
- logger.info "..done"
30
-
31
- logger.info "Database import complete."
32
-
33
- logger.info "Indexing accounts"
34
- sh "bundle exec thor solr:index_accounts > /dev/null" unless DRY_RUN
35
- logger.info "..done"
36
-
37
- logger.info "Indexing categories"
38
- sh "bundle exec thor solr:index_categories > /dev/null" unless DRY_RUN
39
- logger.info "..done"
40
-
41
- logger.info "Indexing profiles"
42
- sh "bundle exec thor solr:index_profiles > /dev/null" unless DRY_RUN
43
- logger.info "..done"
44
-
45
- logger.info "Solr index complete."
46
-
47
- puts "Building email notification to '#{EMAIL}'"
48
- raw_log = IO.read("#{HOME}/log/tasklog")
49
- logs = "<code><pre>#{raw_log}</pre></code>"
50
- subject = "#{RAILS_ENV.capitalize} database import succeeded."
51
- body = "<p>Successfully imported the eLocal #{RAILS_ENV} database to playa.</p><p>#{logs}</p>"
52
- sh %x(echo 'To: tubbo@psychedeli.ca\nSubject: #{subject}\nContent-Type: text/html;charset="us-ascii"\n\n<html><body>#{body}</body></html>' | sendmail -t)
53
- puts "Delivered email notification to '#{EMAIL}'"
54
- end
55
- end
data/lib/tasks/dots.rake DELETED
@@ -1,32 +0,0 @@
1
- task :config do
2
- Dir["config/*"].each do |config_file|
3
- unless File.directory? config_file
4
- config_file.gsub! /config\/|.example/, ""
5
- config_file_path = File.expand_path "~/.dots/config/#{config_file}"
6
- dot_file_path = File.expand_path "~/.#{config_file}"
7
- global_rake_path = File.expand_path "~/.rake"
8
-
9
- if File.exists? dot_file_path
10
- puts "Did not symlink #{config_file} since one already exists"
11
- else
12
- File.symlink config_file_path, dot_file_path
13
- puts "Symlinked ~/.#{config_file}"
14
- end
15
-
16
- unless File.exists? global_rake_path
17
- File.symlink global_rake_path, File.expand_path("~/.dots/lib/tasks")
18
- end
19
- end
20
- end
21
- puts "Please reload your DOTS."
22
- end
23
-
24
- desc "Update all installed plugins"
25
- task :update do
26
- sh "cd ~/.dots && git pull origin master"
27
-
28
- antigen_repos = Dir[File.join(File.expand_path("../.antigen/repos"), "*")]
29
- antigen_repos.each do |repo|
30
- sh "cd #{repo} && git pull origin master"
31
- end
32
- end
data/vendor/antigen.zsh DELETED
@@ -1,251 +0,0 @@
1
- #!/bin/zsh
2
- #
3
- # Antigen is a bundled plugin loader.
4
-
5
- # Each line in this string has the following entries separated by a space
6
- # character.
7
- # <repo-url>, <plugin-location>, <bundle-type>
8
- # FIXME: Is not kept local by zsh!
9
- local _ANTIGEN_BUNDLE_RECORD=""
10
-
11
- # Syntaxes
12
- # antigen-bundle <url> [<loc>=/]
13
- antigen-bundle () {
14
-
15
- # Bundle spec arguments' default values.
16
- local url="$ANTIGEN_DEFAULT_REPO_URL"
17
- local loc=/
18
- local btype=plugin
19
-
20
- # Set spec values based on the positional arguments.
21
- local position_args='url loc'
22
- local i=1
23
- while ! [[ -z $1 || $1 == --*=* ]]; do
24
- local arg_name="$(echo "$position_args" | cut -d\ -f$i)"
25
- local arg_value="$1"
26
- eval "local $arg_name='$arg_value'"
27
- shift
28
- i=$(($i + 1))
29
- done
30
-
31
- # Check if url is just the plugin name. Super short syntax.
32
- if [[ "$url" != */* ]]; then
33
- loc="plugins/$url"
34
- url="$ANTIGEN_DEFAULT_REPO_URL"
35
- fi
36
-
37
- # Set spec values from keyword arguments, if any. The remaining arguments
38
- # are all assumed to be keyword arguments.
39
- while [[ $1 == --*=* ]]; do
40
- local arg_name="$(echo "$1" | cut -d= -f1 | sed 's/^--//')"
41
- local arg_value="$(echo "$1" | cut -d= -f2)"
42
- eval "local $arg_name='$arg_value'"
43
- shift
44
- done
45
-
46
- # Resolve the url.
47
- if [[ $url != git://* && $url != https://* && $url != /* ]]; then
48
- url="${url%.git}"
49
- url="https://github.com/$url.git"
50
- fi
51
-
52
- # Add it to the record.
53
- _ANTIGEN_BUNDLE_RECORD="$_ANTIGEN_BUNDLE_RECORD\n$url $loc $btype"
54
-
55
- -antigen-ensure-repo "$url"
56
-
57
- -antigen-load "$url" "$loc" "$btype"
58
-
59
- }
60
-
61
- antigen-bundles () {
62
- # Bulk add many bundles at one go. Empty lines and lines starting with a `#`
63
- # are ignored. Everything else is given to `antigen-bundle` as is, no
64
- # quoting rules applied.
65
-
66
- local line
67
-
68
- grep -v '^\s*$\|^#' | while read line; do
69
- # Using `eval` so that we can use the shell-style quoting in each line
70
- # piped to `antigen-bundles`.
71
- eval "antigen-bundle $line"
72
- done
73
- }
74
-
75
- antigen-update () {
76
- # Update your bundles, i.e., `git pull` in all the plugin repos.
77
- -antigen-echo-record | awk '{print $1}' | sort -u | while read url; do
78
- -antigen-ensure-repo --update "$url"
79
- done
80
- }
81
-
82
- -antigen-get-clone-dir () {
83
- # Takes a repo url and gives out the path that this url needs to be cloned
84
- # to. Doesn't actually clone anything.
85
- # TODO: Memoize?
86
- echo -n $ADOTDIR/repos/
87
- echo "$1" | sed \
88
- -e 's/\.git$//' \
89
- -e 's./.-SLASH-.g' \
90
- -e 's.:.-COLON-.g'
91
- }
92
-
93
- -antigen-get-clone-url () {
94
- # Takes a repo's clone dir and gives out the repo's original url that was
95
- # used to create the given directory path.
96
- # TODO: Memoize?
97
- echo "$1" | sed \
98
- -e "s:^$ADOTDIR/repos/::" \
99
- -e 's/$/.git/' \
100
- -e 's.-SLASH-./.g' \
101
- -e 's.-COLON-.:.g'
102
- }
103
-
104
- -antigen-ensure-repo () {
105
-
106
- local update=false
107
- if [[ $1 == --update ]]; then
108
- update=true
109
- shift
110
- fi
111
-
112
- local url="$1"
113
- local clone_dir="$(-antigen-get-clone-dir $url)"
114
-
115
- if [[ ! -d $clone_dir ]]; then
116
- git clone "$url" "$clone_dir"
117
- elif $update; then
118
- git --git-dir "$clone_dir/.git" --work-tree "$clone_dir" pull
119
- fi
120
-
121
- }
122
-
123
- -antigen-load () {
124
-
125
- local url="$1"
126
- local location="$(-antigen-get-clone-dir "$url")/$2"
127
- local btype="$3"
128
-
129
- if [[ $btype == theme ]]; then
130
-
131
- # Of course, if its a theme, the location would point to the script
132
- # file.
133
- source "$location"
134
-
135
- else
136
-
137
- # Source the plugin script
138
- # FIXME: I don't know. Looks very very ugly. Needs a better
139
- # implementation once tests are ready.
140
- local script_loc="$(ls "$location" | grep -m1 '.plugin.zsh$')"
141
- if [[ -f $script_loc ]]; then
142
- # If we have a `*.plugin.zsh`, source it.
143
- source "$script_loc"
144
- elif [[ ! -z "$(ls "$location" | grep -m1 '.zsh$')" ]]; then
145
- # If there is no `*.plugin.zsh` file, source *all* the `*.zsh`
146
- # files.
147
- for script ($location/*.zsh) source "$script"
148
- elif [[ ! -z "$(ls "$location" | grep -m1 '.sh$')" ]]; then
149
- # If there are no `*.zsh` files either, we look for and source any
150
- # `*.sh` files instead.
151
- for script ($location/*.sh) source "$script"
152
- fi
153
-
154
- # Add to $fpath, for completion(s)
155
- fpath=($location $fpath)
156
-
157
- fi
158
-
159
- }
160
-
161
- antigen-cleanup () {
162
-
163
- if [[ ! -d "$ADOTDIR/repos" || -z "$(ls "$ADOTDIR/repos/")" ]]; then
164
- echo "You don't have any bundles."
165
- return 0
166
- fi
167
-
168
- # Find directores in ADOTDIR/repos, that are not in the bundles record.
169
- local unused_clones="$(comm -13 \
170
- <(-antigen-echo-record | awk '{print $1}' | sort -u) \
171
- <(ls "$ADOTDIR/repos" | while read line; do
172
- -antigen-get-clone-url "$line"
173
- done))"
174
-
175
- if [[ -z $unused_clones ]]; then
176
- echo "You don't have any unidentified bundles."
177
- return 0
178
- fi
179
-
180
- echo 'You have clones for the following repos, but are not used.'
181
- echo "$unused_clones" | sed 's/^/ /'
182
-
183
- echo -n '\nDelete them all? [y/N] '
184
- if read -q; then
185
- echo
186
- echo
187
- echo "$unused_clones" | while read url; do
188
- echo -n "Deleting clone for $url..."
189
- rm -rf "$(-antigen-get-clone-dir $url)"
190
- echo ' done.'
191
- done
192
- else
193
- echo
194
- echo Nothing deleted.
195
- fi
196
- }
197
-
198
- antigen-lib () {
199
- antigen-bundle --loc=lib
200
- }
201
-
202
- antigen-theme () {
203
- local name="${1:-robbyrussell}"
204
- antigen-bundle --loc=themes/$name.zsh-theme --btype=theme
205
- }
206
-
207
- antigen-apply () {
208
- # Initialize completion.
209
- # TODO: Only load completions if there are any changes to the bundle
210
- # repositories.
211
- compinit -i
212
- }
213
-
214
- antigen-list () {
215
- # List all currently installed bundles
216
- if [[ -z "$_ANTIGEN_BUNDLE_RECORD" ]]; then
217
- echo "You don't have any bundles." >&2
218
- return 1
219
- else
220
- -antigen-echo-record
221
- fi
222
- }
223
-
224
- # Echo the bundle specs as in the record. The first line is not echoed since it
225
- # is a blank line.
226
- -antigen-echo-record () {
227
- echo "$_ANTIGEN_BUNDLE_RECORD" | sed -n '1!p'
228
- }
229
-
230
- -antigen-env-setup () {
231
- # Pre-startup initializations
232
- -set-default ANTIGEN_DEFAULT_REPO_URL \
233
- https://github.com/robbyrussell/oh-my-zsh.git
234
- -set-default ADOTDIR $HOME/.antigen
235
-
236
- # Load the compinit module
237
- autoload -U compinit
238
-
239
- # Without the following, `compdef` function is not defined.
240
- compinit -i
241
- }
242
-
243
- # Same as `export $1=$2`, but will only happen if the name specified by `$1` is
244
- # not already set.
245
- -set-default () {
246
- local arg_name="$1"
247
- local arg_value="$2"
248
- eval "test -z \"\$$arg_name\" && export $arg_name='$arg_value'"
249
- }
250
-
251
- -antigen-env-setup