zsh_dots 0.5.1 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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