guard 2.6.1 → 2.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +73 -58
  3. data/bin/guard +2 -2
  4. data/lib/guard.rb +64 -59
  5. data/lib/guard/cli.rb +66 -60
  6. data/lib/guard/cli.rb.orig +215 -0
  7. data/lib/guard/commander.rb +45 -69
  8. data/lib/guard/commands/all.rb +21 -19
  9. data/lib/guard/commands/change.rb +17 -22
  10. data/lib/guard/commands/notification.rb +15 -16
  11. data/lib/guard/commands/pause.rb +14 -15
  12. data/lib/guard/commands/reload.rb +19 -20
  13. data/lib/guard/commands/scope.rb +23 -19
  14. data/lib/guard/commands/show.rb +13 -16
  15. data/lib/guard/deprecated_methods.rb +6 -10
  16. data/lib/guard/deprecator.rb +52 -37
  17. data/lib/guard/dsl.rb +55 -33
  18. data/lib/guard/dsl_describer.rb +83 -31
  19. data/lib/guard/dsl_describer.rb.orig +184 -0
  20. data/lib/guard/group.rb +7 -6
  21. data/lib/guard/guard.rb +4 -4
  22. data/lib/guard/guard.rb.orig +42 -0
  23. data/lib/guard/guardfile.rb +12 -13
  24. data/lib/guard/guardfile/evaluator.rb +77 -55
  25. data/lib/guard/guardfile/evaluator.rb.orig +275 -0
  26. data/lib/guard/guardfile/generator.rb +25 -20
  27. data/lib/guard/interactor.rb +52 -293
  28. data/lib/guard/interactor.rb.orig +85 -0
  29. data/lib/guard/jobs/base.rb +21 -0
  30. data/lib/guard/jobs/pry_wrapper.rb +290 -0
  31. data/lib/guard/jobs/pry_wrapper.rb.orig +293 -0
  32. data/lib/guard/jobs/sleep.rb +25 -0
  33. data/lib/guard/notifier.rb +42 -39
  34. data/lib/guard/notifiers/base.rb +25 -24
  35. data/lib/guard/notifiers/emacs.rb +30 -24
  36. data/lib/guard/notifiers/file_notifier.rb +3 -7
  37. data/lib/guard/notifiers/gntp.rb +22 -22
  38. data/lib/guard/notifiers/growl.rb +16 -15
  39. data/lib/guard/notifiers/libnotify.rb +7 -10
  40. data/lib/guard/notifiers/notifysend.rb +15 -14
  41. data/lib/guard/notifiers/rb_notifu.rb +8 -10
  42. data/lib/guard/notifiers/terminal_notifier.rb +15 -11
  43. data/lib/guard/notifiers/terminal_title.rb +4 -8
  44. data/lib/guard/notifiers/tmux.rb +104 -71
  45. data/lib/guard/options.rb +1 -5
  46. data/lib/guard/plugin.rb +1 -3
  47. data/lib/guard/plugin/base.rb +12 -9
  48. data/lib/guard/plugin/hooker.rb +1 -5
  49. data/lib/guard/plugin_util.rb +46 -25
  50. data/lib/guard/plugin_util.rb.orig +178 -0
  51. data/lib/guard/rake_task.rb +4 -7
  52. data/lib/guard/reevaluator.rb +13 -0
  53. data/lib/guard/runner.rb +50 -78
  54. data/lib/guard/runner.rb.orig +200 -0
  55. data/lib/guard/setuper.rb +199 -130
  56. data/lib/guard/setuper.rb.orig +348 -0
  57. data/lib/guard/sheller.rb +107 -0
  58. data/lib/guard/tags +367 -0
  59. data/lib/guard/ui.rb +50 -38
  60. data/lib/guard/ui.rb.orig +254 -0
  61. data/lib/guard/ui/colors.rb +17 -21
  62. data/lib/guard/version.rb +1 -1
  63. data/lib/guard/version.rb.orig +3 -0
  64. data/lib/guard/watcher.rb +49 -62
  65. metadata +21 -4
  66. data/lib/guard/notifiers/growl_notify.rb +0 -93
data/lib/guard/tags ADDED
@@ -0,0 +1,367 @@
1
+ !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
2
+ !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
3
+ !_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/
4
+ !_TAG_PROGRAM_NAME Exuberant Ctags //
5
+ !_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
6
+ !_TAG_PROGRAM_VERSION 5.9~svn20110310 //
7
+ Base notifiers/base.rb /^ class Base$/;" c class:Guard.Notifier
8
+ Base plugin/base.rb /^ module Base$/;" m class:Guard.Plugin
9
+ CLI cli.rb /^ class CLI < Thor$/;" c class:Guard
10
+ ClassMethods plugin/base.rb /^ module ClassMethods$/;" m class:Guard.Plugin.Base
11
+ Colors ui/colors.rb /^ module Colors$/;" m class:Guard.UI
12
+ Commander commander.rb /^ module Commander$/;" m class:Guard
13
+ DeprecatedMethods deprecated_methods.rb /^ module DeprecatedMethods$/;" m class:Guard
14
+ Deprecator deprecator.rb /^ class Deprecator$/;" c class:Guard
15
+ Dsl dsl.rb /^ class Dsl$/;" c class:Guard
16
+ DslDescriber dsl_describer.rb /^ class DslDescriber$/;" c class:Guard
17
+ Emacs notifiers/emacs.rb /^ class Emacs < Base$/;" c class:Guard.Notifier
18
+ Evaluator guardfile/evaluator.rb /^ class Evaluator$/;" c class:Guard.Guardfile
19
+ FileNotifier notifiers/file_notifier.rb /^ class FileNotifier < Base$/;" c class:Guard.Notifier
20
+ FileSource guardfile/evaluator.rb /^ class FileSource < Source$/;" c class:Guard.Guardfile
21
+ GNTP notifiers/gntp.rb /^ class GNTP < Base$/;" c class:Guard.Notifier
22
+ Generator guardfile/generator.rb /^ class Generator$/;" c class:Guard.Guardfile
23
+ Group group.rb /^ class Group$/;" c class:Guard
24
+ Growl notifiers/growl.rb /^ class Growl < Base$/;" c class:Guard.Notifier
25
+ GrowlNotify notifiers/growl_notify.rb /^ class GrowlNotify < Base$/;" c class:Guard.Notifier
26
+ Guard cli.rb /^module Guard$/;" m
27
+ Guard commander.rb /^module Guard$/;" m
28
+ Guard commands/all.rb /^module Guard$/;" m
29
+ Guard commands/change.rb /^module Guard$/;" m
30
+ Guard commands/notification.rb /^module Guard$/;" m
31
+ Guard commands/pause.rb /^module Guard$/;" m
32
+ Guard commands/reload.rb /^module Guard$/;" m
33
+ Guard commands/scope.rb /^module Guard$/;" m
34
+ Guard commands/show.rb /^module Guard$/;" m
35
+ Guard deprecated_methods.rb /^module Guard$/;" m
36
+ Guard deprecator.rb /^module Guard$/;" m
37
+ Guard dsl.rb /^module Guard$/;" m
38
+ Guard dsl_describer.rb /^module Guard$/;" m
39
+ Guard group.rb /^module Guard$/;" m
40
+ Guard guard.rb /^ class Guard$/;" c class:Guard
41
+ Guard guard.rb /^module Guard$/;" m
42
+ Guard guardfile.rb /^module Guard$/;" m
43
+ Guard guardfile/evaluator.rb /^module Guard$/;" m
44
+ Guard guardfile/generator.rb /^module Guard$/;" m
45
+ Guard interactor.rb /^module Guard$/;" m
46
+ Guard notifier.rb /^module Guard$/;" m
47
+ Guard notifiers/base.rb /^module Guard$/;" m
48
+ Guard notifiers/emacs.rb /^module Guard$/;" m
49
+ Guard notifiers/file_notifier.rb /^module Guard$/;" m
50
+ Guard notifiers/gntp.rb /^module Guard$/;" m
51
+ Guard notifiers/growl.rb /^module Guard$/;" m
52
+ Guard notifiers/growl_notify.rb /^module Guard$/;" m
53
+ Guard notifiers/libnotify.rb /^module Guard$/;" m
54
+ Guard notifiers/notifysend.rb /^module Guard$/;" m
55
+ Guard notifiers/rb_notifu.rb /^module Guard$/;" m
56
+ Guard notifiers/terminal_notifier.rb /^module Guard$/;" m
57
+ Guard notifiers/terminal_title.rb /^module Guard$/;" m
58
+ Guard notifiers/tmux.rb /^module Guard$/;" m
59
+ Guard plugin.rb /^module Guard$/;" m
60
+ Guard plugin/base.rb /^module Guard$/;" m
61
+ Guard plugin/hooker.rb /^module Guard$/;" m
62
+ Guard plugin_util.rb /^module Guard$/;" m
63
+ Guard rake_task.rb /^module Guard$/;" m
64
+ Guard runner.rb /^module Guard$/;" m
65
+ Guard setuper.rb /^module Guard$/;" m
66
+ Guard ui.rb /^module Guard$/;" m
67
+ Guard ui/colors.rb /^module Guard$/;" m
68
+ Guard version.rb /^module Guard$/;" m
69
+ Guard watcher.rb /^module Guard$/;" m
70
+ Guardfile guardfile.rb /^ module Guardfile$/;" m class:Guard
71
+ Guardfile guardfile/evaluator.rb /^ module Guardfile$/;" m class:Guard
72
+ Guardfile guardfile/generator.rb /^ module Guardfile$/;" m class:Guard
73
+ Hooker plugin/hooker.rb /^ module Hooker$/;" m class:Guard.Plugin
74
+ InlineSource guardfile/evaluator.rb /^ class InlineSource < Source$/;" c class:Guard.Guardfile
75
+ Interactor commands/all.rb /^ class Interactor$/;" c class:Guard
76
+ Interactor commands/change.rb /^ class Interactor$/;" c class:Guard
77
+ Interactor commands/notification.rb /^ class Interactor$/;" c class:Guard
78
+ Interactor commands/pause.rb /^ class Interactor$/;" c class:Guard
79
+ Interactor commands/reload.rb /^ class Interactor$/;" c class:Guard
80
+ Interactor commands/scope.rb /^ class Interactor$/;" c class:Guard
81
+ Interactor commands/show.rb /^ class Interactor$/;" c class:Guard
82
+ Interactor interactor.rb /^ class Interactor$/;" c class:Guard
83
+ Libnotify notifiers/libnotify.rb /^ class Libnotify < Base$/;" c class:Guard.Notifier
84
+ Notifier notifier.rb /^ module Notifier$/;" m class:Guard
85
+ Notifier notifiers/base.rb /^ module Notifier$/;" m class:Guard
86
+ Notifier notifiers/emacs.rb /^ module Notifier$/;" m class:Guard
87
+ Notifier notifiers/file_notifier.rb /^ module Notifier$/;" m class:Guard
88
+ Notifier notifiers/gntp.rb /^ module Notifier$/;" m class:Guard
89
+ Notifier notifiers/growl.rb /^ module Notifier$/;" m class:Guard
90
+ Notifier notifiers/growl_notify.rb /^ module Notifier$/;" m class:Guard
91
+ Notifier notifiers/libnotify.rb /^ module Notifier$/;" m class:Guard
92
+ Notifier notifiers/notifysend.rb /^ module Notifier$/;" m class:Guard
93
+ Notifier notifiers/rb_notifu.rb /^ module Notifier$/;" m class:Guard
94
+ Notifier notifiers/terminal_notifier.rb /^ module Notifier$/;" m class:Guard
95
+ Notifier notifiers/terminal_title.rb /^ module Notifier$/;" m class:Guard
96
+ Notifier notifiers/tmux.rb /^ module Notifier$/;" m class:Guard
97
+ Notifu notifiers/rb_notifu.rb /^ class Notifu < Base$/;" c class:Guard.Notifier
98
+ NotifySend notifiers/notifysend.rb /^ class NotifySend < Base$/;" c class:Guard.Notifier
99
+ Plugin plugin.rb /^ class Plugin$/;" c class:Guard
100
+ Plugin plugin/base.rb /^ class Plugin$/;" c class:Guard
101
+ Plugin plugin/hooker.rb /^ class Plugin$/;" c class:Guard
102
+ PluginUtil plugin_util.rb /^ class PluginUtil$/;" c class:Guard
103
+ RakeTask rake_task.rb /^ class RakeTask < ::Rake::TaskLib$/;" c class:Guard
104
+ Runner runner.rb /^ class Runner$/;" c class:Guard
105
+ Setuper setuper.rb /^ module Setuper$/;" m class:Guard
106
+ Source guardfile/evaluator.rb /^ class Source$/;" c class:Guard.Guardfile
107
+ TerminalNotifier notifiers/terminal_notifier.rb /^ class TerminalNotifier < Base$/;" c class:Guard.Notifier
108
+ TerminalTitle notifiers/terminal_title.rb /^ class TerminalTitle < Base$/;" c class:Guard.Notifier
109
+ Tmux notifiers/tmux.rb /^ class Tmux < Base$/;" c class:Guard.Notifier
110
+ UI ui.rb /^ module UI$/;" m class:Guard
111
+ UI ui/colors.rb /^ module UI$/;" m class:Guard
112
+ Watcher watcher.rb /^ class Watcher$/;" c class:Guard
113
+ _add_hooks interactor.rb /^ def _add_hooks$/;" f class:Guard.Interactor
114
+ _add_load_guard_rc_hook interactor.rb /^ def _add_load_guard_rc_hook$/;" f class:Guard.Interactor
115
+ _add_load_project_guard_rc_hook interactor.rb /^ def _add_load_project_guard_rc_hook$/;" f class:Guard.Interactor
116
+ _add_restore_visibility_hook interactor.rb /^ def _add_restore_visibility_hook$/;" f class:Guard.Interactor
117
+ _after_reevaluate guardfile/evaluator.rb /^ def _after_reevaluate$/;" f class:Guard.Guardfile.Evaluator
118
+ _auto_detect_notification notifier.rb /^ def _auto_detect_notification$/;" f class:Guard.Notifier
119
+ _before_reevaluate guardfile/evaluator.rb /^ def _before_reevaluate$/;" f class:Guard.Guardfile.Evaluator
120
+ _clearable? runner.rb /^ def _clearable?(guard, modified_paths, added_paths, removed_paths)$/;" f class:Guard.Runner
121
+ _client notifiers/gntp.rb /^ def _client(opts = {})$/;" f class:Guard.Notifier.GNTP
122
+ _client_cmd_flag notifiers/tmux.rb /^ def _client_cmd_flag(cmd)$/;" f class:Guard.Notifier
123
+ _clients notifiers/tmux.rb /^ def _clients$/;" f class:Guard.Notifier
124
+ _clients notifiers/tmux.rb /^ def self._clients$/;" F class:Guard.Notifier
125
+ _clip_name interactor.rb /^ def _clip_name(target)$/;" f
126
+ _configure_prompt interactor.rb /^ def _configure_prompt$/;" f
127
+ _constant_name plugin_util.rb /^ def _constant_name$/;" f class:Guard.PluginUtil.plugin_names
128
+ _create_command_aliases interactor.rb /^ def _create_command_aliases$/;" f class:Guard
129
+ _create_group_commands interactor.rb /^ def _create_group_commands$/;" f
130
+ _create_guard_commands interactor.rb /^ def _create_guard_commands$/;" f class:Guard
131
+ _create_run_all_command interactor.rb /^ def _create_run_all_command$/;" f class:Guard
132
+ _current_groups_scope runner.rb /^ def _current_groups_scope(scope)$/;" f class:Guard.Runner
133
+ _current_plugins_scope runner.rb /^ def _current_plugins_scope(scope)$/;" f class:Guard.Runner
134
+ _debug_command_execution setuper.rb /^ def _debug_command_execution$/;" f class:Guard.Setuper
135
+ _emacs_client_available notifiers/emacs.rb /^ def self._emacs_client_available?(opts)$/;" F class:Guard.Notifier.Emacs
136
+ _evaluate_guardfile dsl_describer.rb /^ def _evaluate_guardfile$/;" f class:Guard.DslDescriber
137
+ _filter ui.rb /^ def _filter(plugin)$/;" f class:Guard.UI
138
+ _filtered_logger_message ui.rb /^ def _filtered_logger_message(message, method, color_name, options = {})$/;" f class:Guard.UI
139
+ _find_non_empty_groups_scope runner.rb /^ def _find_non_empty_groups_scope(scope)$/;" f class:Guard.Runner
140
+ _find_non_empty_plugins_scope runner.rb /^ def _find_non_empty_plugins_scope(scope)$/;" f class:Guard.Runner
141
+ _find_non_empty_scope runner.rb /^ def _find_non_empty_scope(type, local_scope, *additional_possibilities)$/;" f class:Guard.Runner
142
+ _first_non_blank_scope ui.rb /^ def _first_non_blank_scope(scope)$/;" f class:Guard.UI
143
+ _get_notifier_module notifier.rb /^ def _get_notifier_module(name)$/;" f class:Guard.Notifier
144
+ _image_path notifiers/base.rb /^ def _image_path(image)$/;" f class:Guard.Notifier.Base
145
+ _join_scope_for_prompt interactor.rb /^ def _join_scope_for_prompt(scope_name)$/;" f
146
+ _libnotify_urgency notifiers/libnotify.rb /^ def _libnotify_urgency(type)$/;" f class:Guard.Notifier.Libnotify
147
+ _listener_callback setuper.rb /^ def _listener_callback$/;" f class:Guard.Setuper
148
+ _notification_type notifiers/base.rb /^ def _notification_type(image)$/;" f class:Guard.Notifier.Base
149
+ _notifu_type notifiers/rb_notifu.rb /^ def _notifu_type(type)$/;" f class:Guard.Notifier.Notifu
150
+ _notifysend_binary_available notifiers/notifysend.rb /^ def self._notifysend_binary_available?$/;" F class:Guard.Notifier.NotifySend
151
+ _notifysend_urgency notifiers/notifysend.rb /^ def _notifysend_urgency(type)$/;" f class:Guard.Notifier.NotifySend
152
+ _plugin_constant plugin_util.rb /^ def _plugin_constant$/;" f class:Guard.PluginUtil.plugin_names
153
+ _prompt interactor.rb /^ def _prompt(ending_char)$/;" f
154
+ _quiet_option notifiers/tmux.rb /^ def _quiet_option$/;" f class:Guard.Notifier
155
+ _read guardfile/evaluator.rb /^ def _read(rel_path)$/;" f class:Guard.Guardfile.FileSource
156
+ _register notifiers/growl.rb /^ def self._register!(opts)$/;" F class:Guard.Notifier.Growl
157
+ _register notifiers/growl_notify.rb /^ def self._register!(options)$/;" F class:Guard.Notifier.GrowlNotify
158
+ _register notifiers/notifysend.rb /^ def self._register!(opts)$/;" F class:Guard.Notifier.NotifySend
159
+ _register notifiers/terminal_notifier.rb /^ def self._register!(opts)$/;" F class:Guard.Notifier.TerminalNotifier
160
+ _register notifiers/tmux.rb /^ def self._register!(opts)$/;" F class:Guard.Notifier.Tmux
161
+ _register! notifiers/gntp.rb /^ def _register!(gntp_client)$/;" f class:Guard.Notifier.GNTP
162
+ _register_callbacks plugin/hooker.rb /^ def _register_callbacks$/;" f class:Guard.Plugin
163
+ _relative_from setuper.rb /^ def _relative_from(path, base)$/;" f class:Guard.Setuper
164
+ _relative_paths setuper.rb /^ def _relative_paths(files)$/;" f class:Guard.Setuper
165
+ _relevant_changes? setuper.rb /^ def _relevant_changes?(changes)$/;" f class:Guard.Setuper
166
+ _replace_reset_command interactor.rb /^ def _replace_reset_command$/;" f class:Guard.Interactor
167
+ _reset_options_store notifiers/tmux.rb /^ def self._reset_options_store$/;" F class:Guard.Notifier
168
+ _restore_terminal_settings interactor.rb /^ def _restore_terminal_settings$/;" f
169
+ _run_client notifiers/tmux.rb /^ def _run_client(cmd, args)$/;" f class:Guard.Notifier
170
+ _run_cmd notifiers/emacs.rb /^ def _run_cmd(*args)$/;" f class:Guard.Notifier.Emacs
171
+ _run_first_task_found runner.rb /^ def _run_first_task_found(guard, tasks, task_param)$/;" f class:Guard.Runner
172
+ _scope_for_prompt interactor.rb /^ def _scope_for_prompt$/;" f
173
+ _scoped_plugins runner.rb /^ def _scoped_plugins(scopes = {})$/;" f class:Guard.Runner
174
+ _set_instance_variables_from_options plugin/base.rb /^ def _set_instance_variables_from_options(options)$/;" f class:Guard.Plugin.Base
175
+ _setup_debug setuper.rb /^ def _setup_debug$/;" f class:Guard.Setuper
176
+ _setup_listener setuper.rb /^ def _setup_listener$/;" f class:Guard.Setuper
177
+ _setup_notifier setuper.rb /^ def _setup_notifier$/;" f class:Guard.Setuper
178
+ _setup_signal_traps setuper.rb /^ def _setup_signal_traps$/;" f class:Guard.Setuper
179
+ _store_terminal_settings interactor.rb /^ def _store_terminal_settings$/;" f
180
+ _stty_exists? interactor.rb /^ def _stty_exists?$/;" f
181
+ _supported_host notifiers/base.rb /^ def self._supported_host?$/;" F class:Guard.Notifier.Base
182
+ _tmux_environment_available notifiers/tmux.rb /^ def self._tmux_environment_available?(opts)$/;" F class:Guard.Notifier.Tmux
183
+ _tmux_version notifiers/tmux.rb /^ def _tmux_version$/;" f class:Guard.Notifier
184
+ _to_arguments notifiers/notifysend.rb /^ def _to_arguments(command, supported, opts = {})$/;" f class:Guard.Notifier.NotifySend
185
+ _verify_bundler_presence cli.rb /^ def _verify_bundler_presence$/;" f class:Guard.CLI.start
186
+ _watchdirs setuper.rb /^ def _watchdirs$/;" f class:Guard.Setuper
187
+ _write notifiers/file_notifier.rb /^ def _write(path, contents)$/;" f class:Guard.Notifier.FileNotifier
188
+ action_with_scopes ui.rb /^ def action_with_scopes(action, scope)$/;" f class:Guard.UI
189
+ add_callback plugin/hooker.rb /^ def self.add_callback(listener, guard_plugin, events)$/;" F class:Guard.Plugin.Hooker
190
+ add_guard deprecated_methods.rb /^ def add_guard(*args)$/;" f class:Guard.DeprecatedMethods
191
+ add_notifier notifier.rb /^ def add_notifier(name, opts = {})$/;" f class:Guard.Notifier
192
+ add_to_guardfile plugin_util.rb /^ def add_to_guardfile$/;" f class:Guard.PluginUtil.plugin_names
193
+ available notifiers/base.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Base
194
+ available notifiers/emacs.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Emacs
195
+ available notifiers/file_notifier.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.FileNotifier
196
+ available notifiers/gntp.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.GNTP
197
+ available notifiers/growl.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Growl
198
+ available notifiers/growl_notify.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.GrowlNotify
199
+ available notifiers/libnotify.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Libnotify
200
+ available notifiers/notifysend.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.NotifySend
201
+ available notifiers/rb_notifu.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Notifu
202
+ available notifiers/terminal_notifier.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.TerminalNotifier
203
+ available notifiers/tmux.rb /^ def self.available?(opts = {})$/;" F class:Guard.Notifier.Tmux
204
+ call_action watcher.rb /^ def call_action(matches)$/;" f class:Guard.Watcher
205
+ callback dsl.rb /^ def callback(*args, &block)$/;" f class:Guard.Dsl
206
+ callbacks plugin/hooker.rb /^ def self.callbacks$/;" F class:Guard.Plugin.Hooker
207
+ calling_plugin_name ui.rb /^ def calling_plugin_name(depth = 2)$/;" f class:Guard.UI
208
+ clear ui.rb /^ def clear(options = {})$/;" f class:Guard.UI
209
+ clear_notifiers notifier.rb /^ def clear_notifiers$/;" f class:Guard.Notifier
210
+ clear_options setuper.rb /^ def clear_options$/;" f class:Guard.Setuper
211
+ clearable ui.rb /^ def clearable$/;" f class:Guard.UI
212
+ color ui.rb /^ def color(text, *color_options)$/;" f class:Guard.UI
213
+ color_enabled? ui.rb /^ def color_enabled?$/;" f class:Guard.UI
214
+ content guardfile/evaluator.rb /^ def content$/;" f class:Guard.Guardfile.FileSource
215
+ content guardfile/evaluator.rb /^ def content$/;" f class:Guard.Guardfile.InlineSource
216
+ convert_scope interactor.rb /^ def self.convert_scope(entries)$/;" F class:Guard.Interactor
217
+ create_guardfile guardfile.rb /^ def self.create_guardfile(options = {})$/;" F class:Guard.Guardfile
218
+ create_guardfile guardfile/generator.rb /^ def create_guardfile$/;" f class:Guard.Guardfile.Generator
219
+ debug ui.rb /^ def debug(message, options = {})$/;" f class:Guard.UI
220
+ deprecation ui.rb /^ def deprecation(message, options = {})$/;" f class:Guard.UI
221
+ display_message notifiers/tmux.rb /^ def display_message(type, title, message, opts = {})$/;" f class:Guard.Notifier.Tmux
222
+ display_title notifiers/tmux.rb /^ def display_title(type, title, message, opts = {})$/;" f class:Guard.Notifier.Tmux
223
+ emacs_color notifiers/emacs.rb /^ def emacs_color(type, options = {})$/;" f class:Guard.Notifier.Emacs
224
+ enabled interactor.rb /^ def self.enabled$/;" F class:Guard.Interactor
225
+ enabled interactor.rb /^ def self.enabled=(status)$/;" F class:Guard.Interactor
226
+ enabled? notifier.rb /^ def enabled?$/;" f class:Guard.Notifier
227
+ error ui.rb /^ def error(message, options = {})$/;" f class:Guard.UI
228
+ evaluate guardfile/evaluator.rb /^ def evaluate$/;" f class:Guard.Guardfile.Evaluator
229
+ evaluate_guardfile dsl.rb /^ def self.evaluate_guardfile(options = {})$/;" F class:Guard.Dsl
230
+ gem_name notifiers/base.rb /^ def self.gem_name$/;" F class:Guard.Notifier.Base
231
+ gem_name notifiers/gntp.rb /^ def self.gem_name$/;" F class:Guard.Notifier.GNTP
232
+ gem_name notifiers/rb_notifu.rb /^ def self.gem_name$/;" F class:Guard.Notifier.Notifu
233
+ gem_name notifiers/terminal_notifier.rb /^ def self.gem_name$/;" F class:Guard.Notifier.TerminalNotifier
234
+ get_guard_class deprecated_methods.rb /^ def get_guard_class(name, fail_gracefully = false)$/;" f class:Guard.DeprecatedMethods
235
+ group dsl.rb /^ def group(*args)$/;" f class:Guard.Dsl
236
+ guard dsl.rb /^ def guard(name, options = {})$/;" f class:Guard.Dsl
237
+ guard_gem_names deprecated_methods.rb /^ def guard_gem_names$/;" f class:Guard.DeprecatedMethods
238
+ guards deprecated_methods.rb /^ def guards(filter = nil)$/;" f class:Guard.DeprecatedMethods
239
+ hook plugin/hooker.rb /^ def hook(event, *args)$/;" f class:Guard.Plugin.Hooker
240
+ ignore dsl.rb /^ def ignore(*regexps)$/;" f class:Guard
241
+ ignore! dsl.rb /^ def ignore!(*regexps)$/;" f class:Guard
242
+ images_path notifiers/base.rb /^ def images_path$/;" f class:Guard.Notifier.Base
243
+ included plugin/base.rb /^ def self.included(base)$/;" F class:Guard.Plugin.Base
244
+ info ui.rb /^ def info(message, options = {})$/;" f class:Guard.UI
245
+ init cli.rb /^ def init(*plugin_names)$/;" f class:Guard.CLI.start
246
+ initialize dsl_describer.rb /^ def initialize(options = {})$/;" f class:Guard.DslDescriber
247
+ initialize group.rb /^ def initialize(name, options = {})$/;" f class:Guard.Group
248
+ initialize guard.rb /^ def initialize(watchers = [], options = {})$/;" f class:Guard.Guard
249
+ initialize guardfile/evaluator.rb /^ def initialize(content)$/;" f class:Guard.Guardfile.InlineSource
250
+ initialize guardfile/evaluator.rb /^ def initialize(options = {})$/;" f class:Guard.Guardfile.Evaluator
251
+ initialize guardfile/evaluator.rb /^ def initialize(path)$/;" f class:Guard.Guardfile.Source
252
+ initialize guardfile/evaluator.rb /^ def initialize(path, options = {})$/;" f class:Guard.Guardfile.FileSource
253
+ initialize guardfile/generator.rb /^ def initialize(options = {})$/;" f class:Guard.Guardfile.Generator
254
+ initialize interactor.rb /^ def initialize$/;" f class:Guard.Interactor
255
+ initialize notifiers/base.rb /^ def initialize(opts = {})$/;" f class:Guard.Notifier.Base
256
+ initialize plugin.rb /^ def initialize(options = {})$/;" f class:Guard.Plugin
257
+ initialize plugin_util.rb /^ def initialize(name)$/;" f class:Guard.PluginUtil.plugin_names
258
+ initialize rake_task.rb /^ def initialize(name = :guard, options = '')$/;" f class:Guard.RakeTask
259
+ initialize watcher.rb /^ def initialize(pattern, action = nil)$/;" f class:Guard.Watcher
260
+ initialize_all_templates guardfile.rb /^ def self.initialize_all_templates$/;" F class:Guard.Guardfile
261
+ initialize_all_templates guardfile/generator.rb /^ def initialize_all_templates$/;" f class:Guard.Guardfile.Generator
262
+ initialize_plugin plugin_util.rb /^ def initialize_plugin(options)$/;" f class:Guard.PluginUtil.plugin_names
263
+ initialize_template guardfile.rb /^ def self.initialize_template(plugin_name)$/;" F class:Guard.Guardfile
264
+ initialize_template guardfile/generator.rb /^ def initialize_template(plugin_name)$/;" f class:Guard.Guardfile.Generator
265
+ interactor dsl.rb /^ def interactor(options)$/;" f class:Guard.Dsl
266
+ interactor setuper.rb /^ def interactor$/;" f class:Guard.Setuper
267
+ list cli.rb /^ def list$/;" f class:Guard.CLI.start
268
+ list dsl_describer.rb /^ def list$/;" f class:Guard.DslDescriber
269
+ locate_guard deprecated_methods.rb /^ def locate_guard(name)$/;" f class:Guard.DeprecatedMethods
270
+ logger dsl.rb /^ def logger(options)$/;" f class:Guard
271
+ logger ui.rb /^ def logger$/;" f class:Guard.UI
272
+ match watcher.rb /^ def match(file)$/;" f class:Guard.Watcher
273
+ match_files watcher.rb /^ def self.match_files(guard, files)$/;" F class:Guard.Watcher
274
+ match_files watcher.rb /^ def self.match_files?(plugins, files)$/;" F class:Guard.Watcher
275
+ match_guardfile watcher.rb /^ def self.match_guardfile?(files)$/;" F class:Guard.Watcher
276
+ name notifiers/base.rb /^ def name$/;" f class:Guard.Notifier.Base
277
+ name notifiers/base.rb /^ def self.name$/;" F class:Guard.Notifier.Base
278
+ name plugin/base.rb /^ def name$/;" f class:Guard.Plugin.Base
279
+ non_namespaced_classname plugin/base.rb /^ def non_namespaced_classname$/;" f class:Guard.Plugin.Base.ClassMethods
280
+ non_namespaced_name plugin/base.rb /^ def non_namespaced_name$/;" f class:Guard.Plugin.Base.ClassMethods
281
+ normalize_standard_options! notifiers/base.rb /^ def normalize_standard_options!(opts)$/;" f class:Guard.Notifier.Base
282
+ notification dsl.rb /^ def notification(notifier, options = {})$/;" f class:Guard.Dsl
283
+ notifiers cli.rb /^ def notifiers$/;" f class:Guard.CLI.start
284
+ notifiers dsl_describer.rb /^ def notifiers$/;" f class:Guard.DslDescriber
285
+ notifiers notifier.rb /^ def notifiers$/;" f class:Guard.Notifier
286
+ notifiers= notifier.rb /^ def notifiers=(notifiers)$/;" f class:Guard.Notifier
287
+ notify notifier.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier
288
+ notify notifiers/base.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Base
289
+ notify notifiers/emacs.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Emacs
290
+ notify notifiers/file_notifier.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.FileNotifier
291
+ notify notifiers/gntp.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.GNTP
292
+ notify notifiers/growl.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Growl
293
+ notify notifiers/growl_notify.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.GrowlNotify
294
+ notify notifiers/libnotify.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Libnotify
295
+ notify notifiers/notifysend.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.NotifySend
296
+ notify notifiers/rb_notifu.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Notifu
297
+ notify notifiers/terminal_notifier.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.TerminalNotifier
298
+ notify notifiers/terminal_title.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.TerminalTitle
299
+ notify notifiers/tmux.rb /^ def notify(message, opts = {})$/;" f class:Guard.Notifier.Tmux
300
+ notify plugin/hooker.rb /^ def self.notify(guard_plugin, event, *args)$/;" F class:Guard.Plugin.Hooker
301
+ options interactor.rb /^ def self.options$/;" F class:Guard.Interactor
302
+ options interactor.rb /^ def self.options=(options)$/;" F class:Guard.Interactor
303
+ options ui.rb /^ def options$/;" f class:Guard.UI
304
+ options_store notifiers/tmux.rb /^ def self.options_store$/;" F class:Guard.Notifier
305
+ pause commander.rb /^ def pause$/;" f class:Guard.Commander
306
+ plugin_class plugin_util.rb /^ def plugin_class(options = {})$/;" f class:Guard.PluginUtil.plugin_names
307
+ plugin_location plugin_util.rb /^ def plugin_location$/;" f class:Guard.PluginUtil.plugin_names
308
+ plugin_names plugin_util.rb /^ def self.plugin_names$/;" F class:Guard.PluginUtil
309
+ process commands/all.rb /^ def process(*entries)$/;" f class:Guard.Interactor
310
+ process commands/change.rb /^ def process(*entries)$/;" f class:Guard.Interactor
311
+ process commands/notification.rb /^ def process$/;" f class:Guard.Interactor
312
+ process commands/pause.rb /^ def process$/;" f class:Guard.Interactor
313
+ process commands/reload.rb /^ def process(*entries)$/;" f class:Guard.Interactor
314
+ process commands/scope.rb /^ def process(*entries)$/;" f class:Guard.Interactor
315
+ process commands/show.rb /^ def process$/;" f class:Guard.Interactor
316
+ process interactor.rb /^ def process$/;" f class:Guard._create_guard_commands
317
+ process interactor.rb /^ def process$/;" f class:_create_group_commands
318
+ reevaluate guardfile/evaluator.rb /^ def reevaluate$/;" f class:Guard.Guardfile.Evaluator
319
+ reload commander.rb /^ def reload(scopes = {})$/;" f class:Guard.Commander
320
+ require_gem_safely notifiers/base.rb /^ def self.require_gem_safely(opts = {})$/;" F class:Guard.Notifier.Base
321
+ reset_callbacks plugin/hooker.rb /^ def self.reset_callbacks!$/;" F class:Guard.Plugin.Hooker
322
+ reset_groups setuper.rb /^ def reset_groups$/;" f class:Guard.Setuper
323
+ reset_line ui.rb /^ def reset_line$/;" f class:Guard.UI
324
+ reset_plugins setuper.rb /^ def reset_plugins$/;" f class:Guard.Setuper
325
+ reset_scope setuper.rb /^ def reset_scope$/;" f class:Guard.Setuper
326
+ run runner.rb /^ def run(task, scope = {})$/;" f class:Guard.Runner
327
+ run_all commander.rb /^ def run_all(scopes = {})$/;" f class:Guard.Commander
328
+ run_on_changes runner.rb /^ def run_on_changes(modified, added, removed)$/;" f class:Guard.Runner
329
+ run_supervised_task runner.rb /^ def run_supervised_task(guard, task, *args)$/;" f class:Guard.Runner
330
+ scope dsl.rb /^ def scope(scope = {})$/;" f class:Guard
331
+ setup setuper.rb /^ def setup(opts = {})$/;" f class:Guard.Setuper
332
+ setup_scope setuper.rb /^ def setup_scope(new_scope)$/;" f class:Guard.Setuper
333
+ show cli.rb /^ def show$/;" f class:Guard.CLI.start
334
+ show dsl_describer.rb /^ def show$/;" f class:Guard.DslDescriber
335
+ start cli.rb /^ def start$/;" f class:Guard.CLI
336
+ start commander.rb /^ def start(options = {})$/;" f class:Guard.Commander
337
+ start interactor.rb /^ def start$/;" f class:Guard.Interactor
338
+ stop commander.rb /^ def stop$/;" f class:Guard.Commander
339
+ stop interactor.rb /^ def stop$/;" f class:Guard.Interactor
340
+ stopping_symbol_for runner.rb /^ def self.stopping_symbol_for(guard)$/;" F class:Guard.Runner
341
+ supported_hosts notifiers/base.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.Base
342
+ supported_hosts notifiers/gntp.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.GNTP
343
+ supported_hosts notifiers/growl.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.Growl
344
+ supported_hosts notifiers/growl_notify.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.GrowlNotify
345
+ supported_hosts notifiers/libnotify.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.Libnotify
346
+ supported_hosts notifiers/notifysend.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.NotifySend
347
+ supported_hosts notifiers/rb_notifu.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.Notifu
348
+ supported_hosts notifiers/terminal_notifier.rb /^ def self.supported_hosts$/;" F class:Guard.Notifier.TerminalNotifier
349
+ system notifiers/tmux.rb /^ def system(args)$/;" f class:Guard.Notifier
350
+ template plugin/base.rb /^ def template(plugin_location)$/;" f class:Guard.Plugin.Base.ClassMethods
351
+ title group.rb /^ def title$/;" f class:Guard.Group
352
+ title notifiers/base.rb /^ def self.title$/;" F class:Guard.Notifier.Base
353
+ title notifiers/base.rb /^ def title$/;" f class:Guard.Notifier.Base
354
+ title plugin/base.rb /^ def title$/;" f class:Guard.Plugin.Base
355
+ tmux_color notifiers/tmux.rb /^ def tmux_color(type, opts = {})$/;" f class:Guard.Notifier.Tmux
356
+ to_s group.rb /^ def to_s$/;" f class:Guard.Group
357
+ to_s plugin/base.rb /^ def to_s$/;" f class:Guard.Plugin.Base
358
+ toggle notifier.rb /^ def toggle$/;" f class:Guard.Notifier
359
+ turn_off notifier.rb /^ def turn_off$/;" f class:Guard.Notifier
360
+ turn_off notifiers/terminal_title.rb /^ def self.turn_off$/;" F class:Guard.Notifier.TerminalTitle
361
+ turn_off notifiers/tmux.rb /^ def self.turn_off$/;" F class:Guard.Notifier
362
+ turn_on notifier.rb /^ def turn_on(opts = {})$/;" f class:Guard.Notifier
363
+ turn_on notifiers/tmux.rb /^ def self.turn_on$/;" F class:Guard.Notifier.Tmux
364
+ version cli.rb /^ def version$/;" f class:Guard.CLI.start
365
+ warning ui.rb /^ def warning(message, options = {})$/;" f class:Guard.UI
366
+ watch dsl.rb /^ def watch(pattern, &action)$/;" f class:Guard.Dsl
367
+ within_preserved_state commander.rb /^ def within_preserved_state$/;" f class:Guard.Commander
data/lib/guard/ui.rb CHANGED
@@ -1,28 +1,28 @@
1
- require 'lumberjack'
1
+ require "lumberjack"
2
2
 
3
- require 'guard/options'
4
- require 'guard/ui/colors'
3
+ require "guard/options"
4
+ require "guard/ui/colors"
5
5
 
6
6
  module Guard
7
-
8
- # The UI class helps to format messages for the user. Everything that is logged
9
- # through this class is considered either as an error message or a diagnostic
10
- # message and is written to standard error ($stderr).
7
+ # The UI class helps to format messages for the user. Everything that is
8
+ # logged through this class is considered either as an error message or a
9
+ # diagnostic message and is written to standard error ($stderr).
11
10
  #
12
- # If your Guard plugin does some output that is piped into another process for further
13
- # processing, please just write it to STDOUT with `puts`.
11
+ # If your Guard plugin does some output that is piped into another process
12
+ # for further processing, please just write it to STDOUT with `puts`.
14
13
  #
15
14
  module UI
16
15
  include Colors
17
16
 
18
17
  class << self
19
-
20
18
  # Get the Guard::UI logger instance
21
19
  #
22
20
  def logger
23
21
  @logger ||= begin
24
- Lumberjack::Logger.new(options.fetch(:device) { $stderr }, options)
25
- end
22
+ Lumberjack::Logger.new(
23
+ options.fetch(:device) { $stderr },
24
+ options)
25
+ end
26
26
  end
27
27
 
28
28
  # Get the logger options
@@ -30,7 +30,10 @@ module Guard
30
30
  # @return [Hash] the logger options
31
31
  #
32
32
  def options
33
- @options ||= ::Guard::Options.new(level: :info, template: ':time - :severity - :message', time_format: '%H:%M:%S')
33
+ @options ||= ::Guard::Options.new(
34
+ level: :info,
35
+ template: ":time - :severity - :message",
36
+ time_format: "%H:%M:%S")
34
37
  end
35
38
 
36
39
  # Set the logger options
@@ -82,6 +85,8 @@ module Guard
82
85
  # @option options [String] plugin manually define the calling plugin
83
86
  #
84
87
  def deprecation(message, options = {})
88
+ msg = "neither ::Guard.setup nor ::Guard.reset_options was called"
89
+ fail msg if ::Guard.options.nil?
85
90
  warning(message, options) if ::Guard.options[:show_deprecations]
86
91
  end
87
92
 
@@ -104,10 +109,9 @@ module Guard
104
109
  # Clear the output if clearable.
105
110
  #
106
111
  def clear(options = {})
107
- if ::Guard.options[:clear] && (@clearable || options[:force])
108
- @clearable = false
109
- system('clear;')
110
- end
112
+ return unless ::Guard.options[:clear] && (@clearable || options[:force])
113
+ @clearable = false
114
+ ::Guard::Sheller.run("clear;")
111
115
  end
112
116
 
113
117
  # Allow the screen to be cleared again.
@@ -119,13 +123,15 @@ module Guard
119
123
  # Show a scoped action message.
120
124
  #
121
125
  # @param [String] action the action to show
122
- # @param [Hash] scopes hash with a guard or a group scope
126
+ # @param [Hash] scope hash with a guard or a group scope
123
127
  #
124
128
  def action_with_scopes(action, scope)
125
129
  first_non_blank_scope = _first_non_blank_scope(scope)
126
- scope_message = first_non_blank_scope.map(&:title).join(', ') unless first_non_blank_scope.nil?
130
+ unless first_non_blank_scope.nil?
131
+ scope_message = first_non_blank_scope.map(&:title).join(", ")
132
+ end
127
133
 
128
- info "#{ action } #{ scope_message || 'all' }"
134
+ info "#{ action } #{ scope_message || "all" }"
129
135
  end
130
136
 
131
137
  private
@@ -152,11 +158,13 @@ module Guard
152
158
  def _filter(plugin)
153
159
  only = options[:only]
154
160
  except = options[:except]
155
- plugin = plugin || calling_plugin_name
161
+ plugin ||= calling_plugin_name
156
162
 
157
- if (!only && !except) || (only && only.match(plugin)) || (except && !except.match(plugin))
158
- yield plugin
159
- end
163
+ match = !(only || except)
164
+ match ||= (only && only.match(plugin))
165
+ match ||= (except && !except.match(plugin))
166
+ return unless match
167
+ yield plugin
160
168
  end
161
169
 
162
170
  # Display a message of the type `method` and with the color `color_name`
@@ -183,7 +191,10 @@ module Guard
183
191
  #
184
192
  def calling_plugin_name(depth = 2)
185
193
  name = /(guard\/[a-z_]*)(\/[a-z_]*)?.rb:/i.match(caller[depth])
186
- name ? name[1].split('/').map { |part| part.split(/[^a-z0-9]/i).map { |word| word.capitalize }.join }.join('::') : 'Guard'
194
+ return "Guard" unless name
195
+ name[1].split("/").map do |part|
196
+ part.split(/[^a-z0-9]/i).map(&:capitalize).join
197
+ end.join("::")
187
198
  end
188
199
 
189
200
  # Checks if color output can be enabled.
@@ -191,18 +202,21 @@ module Guard
191
202
  # @return [Boolean] whether color is enabled or not
192
203
  #
193
204
  def color_enabled?
205
+ @color_enabled_initialized ||= false
206
+ @color_enabled = nil unless @color_enabled_initialized
207
+ @color_enabled_initialized = true
194
208
  if @color_enabled.nil?
195
- if RbConfig::CONFIG['target_os'] =~ /mswin|mingw/i
196
- if ENV['ANSICON']
209
+ if RbConfig::CONFIG["target_os"] =~ /mswin|mingw/i
210
+ if ENV["ANSICON"]
197
211
  @color_enabled = true
198
212
  else
199
213
  begin
200
- require 'rubygems' unless ENV['NO_RUBYGEMS']
201
- require 'Win32/Console/ANSI'
214
+ require "rubygems" unless ENV["NO_RUBYGEMS"]
215
+ require "Win32/Console/ANSI"
202
216
  @color_enabled = true
203
217
  rescue LoadError
204
218
  @color_enabled = false
205
- info "You must 'gem install win32console' to use color on Windows"
219
+ info "Run 'gem install win32console' to use color on Windows"
206
220
  end
207
221
  end
208
222
  else
@@ -225,20 +239,18 @@ module Guard
225
239
  # @param [Array] color_options the color options
226
240
  #
227
241
  def color(text, *color_options)
228
- color_code = ''
242
+ color_code = ""
229
243
  color_options.each do |color_option|
230
244
  color_option = color_option.to_s
231
- if color_option != ''
232
- unless color_option =~ /\d+/
233
- color_option = const_get("ANSI_ESCAPE_#{ color_option.upcase }")
234
- end
235
- color_code += ';' + color_option
245
+ next if color_option == ""
246
+
247
+ unless color_option =~ /\d+/
248
+ color_option = const_get("ANSI_ESCAPE_#{ color_option.upcase }")
236
249
  end
250
+ color_code += ";" + color_option
237
251
  end
238
252
  color_enabled? ? "\e[0#{ color_code }m#{ text }\e[0m" : text
239
253
  end
240
-
241
254
  end
242
-
243
255
  end
244
256
  end