howzit 2.0.17 → 2.0.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fa788ff480288582a4473e2bb2fa9388afc98165c9c78b2c90a1bb9b964d7919
4
- data.tar.gz: e3012f8ed229832f7cefa29b1ff9a4d971858886c8c9778ec7fe6a3b74faa181
3
+ metadata.gz: 16fc4dc237a8f226da219e66cbaee59984e8931bfe8e03fe5b0126451fb0d0d0
4
+ data.tar.gz: a169f5a88a1a6b345b6732c4782d166d7c933a6ce986a66b14e9df35602e1b7b
5
5
  SHA512:
6
- metadata.gz: 893cc81a4db7d7297f8a3d195f6a02bec4a0e419c56ca6a76e97bfbbe49636ef6e6162457f83f914422bb42d5906df8f38a375309d9d5a1b6844d57d488c2e55
7
- data.tar.gz: e286bd61f5d4d4dd9632691c3486a9daa51701aac8c4facd3f5a62d01e871ec0cd06d7ff4ac1f19c0f9ff7d24d6ef1d3b9f812d68aa6d62877c99b5bfed7b261
6
+ metadata.gz: d197932f7a501e0a4ffb5eb76ca60660223b98cee1346c573028922b05790652a8e8c08a4624c72645423145d342d0b3866580d9b05552fe72a87edda47b4a08
7
+ data.tar.gz: 4e318240e7db8d6117fec620fd5505afab5ba35427b391e6a1dc90b4eccb978f6865054d300d00dad574ea4edc5ccb006c74112fca78f00dce14dc07c55095da
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ### 2.0.18
2
+
3
+ 2022-08-08 03:48
4
+
5
+ #### NEW
6
+
7
+ - Use --ask to require confirmation of all tasks when running a topic
8
+
1
9
  ### 2.0.17
2
10
 
3
11
  2022-08-07 06:09
data/bin/howzit CHANGED
@@ -20,6 +20,10 @@ OptionParser.new do |opts|
20
20
 
21
21
  opts.separator " Behavior:\n\n" #=================================================================== BEHAVIOR
22
22
 
23
+ opts.on('--ask', 'Request confirmation for all tasks when running a topic') do
24
+ Howzit.options[:ask] = true
25
+ end
26
+
23
27
  opts.on('--default', 'Answer all prompts with default response') do
24
28
  Howzit.options[:default] = true
25
29
  end
data/lib/howzit/config.rb CHANGED
@@ -87,6 +87,7 @@ module Howzit
87
87
  def load_options
88
88
  Color.coloring = $stdout.isatty
89
89
  flags = {
90
+ ask: false,
90
91
  choose: false,
91
92
  default: false,
92
93
  for_topic: nil,
data/lib/howzit/task.rb CHANGED
@@ -73,9 +73,9 @@ module Howzit
73
73
  matches = Howzit.buildnote.find_topic(@action)
74
74
  raise "Topic not found: #{@action}" if matches.empty?
75
75
 
76
- $stderr.puts "{by}Running tasks from {bw}#{matches[0].title}{x}".c if Howzit.options[:log_level] < 2
76
+ Howzit.console.info("{by}Running tasks from {bw}#{matches[0].title}{x}".c)
77
77
  output.concat(matches[0].run(nested: true))
78
- $stderr.puts "{by}End include: #{matches[0].tasks.count} tasks{x}".c if Howzit.options[:log_level] < 2
78
+ Howzit.console.info("{by}End include: #{matches[0].tasks.count} tasks{x}".c)
79
79
  [output, matches[0].tasks.count]
80
80
  end
81
81
 
@@ -84,7 +84,7 @@ module Howzit
84
84
  ##
85
85
  def run_run
86
86
  title = Howzit.options[:show_all_code] ? @action : @title
87
- $stderr.puts "{bg}Running {bw}#{title}{x}".c if Howzit.options[:log_level] < 2
87
+ Howzit.console.info("{bg}Running {bw}#{title}{x}".c)
88
88
  system(@action)
89
89
  end
90
90
 
@@ -93,7 +93,7 @@ module Howzit
93
93
  ##
94
94
  def run_copy
95
95
  title = Howzit.options[:show_all_code] ? @action : @title
96
- $stderr.puts "{bg}Copied {bw}#{title}{bg} to clipboard{x}".c if Howzit.options[:log_level] < 2
96
+ Howzit.console.info("{bg}Copied {bw}#{title}{bg} to clipboard{x}".c)
97
97
  os_copy(@action)
98
98
  end
99
99
 
@@ -107,21 +107,21 @@ module Howzit
107
107
  out = "{bg}Copying {bw}#{string}".c
108
108
  case os
109
109
  when /darwin.*/i
110
- $stderr.puts "#{out} (macOS){x}".c if Howzit.options[:log_level].zero?
110
+ Howzit.console.debug("#{out} (macOS){x}".c)
111
111
  `echo #{Shellwords.escape(string)}'\\c'|pbcopy`
112
112
  when /mingw|mswin/i
113
- $stderr.puts "#{out} (Windows){x}".c if Howzit.options[:log_level].zero?
113
+ Howzit.console.debug("#{out} (Windows){x}".c)
114
114
  `echo #{Shellwords.escape(string)} | clip`
115
115
  else
116
116
  if 'xsel'.available?
117
- $stderr.puts "#{out} (Linux, xsel){x}".c if Howzit.options[:log_level].zero?
117
+ Howzit.console.debug("#{out} (Linux, xsel){x}".c)
118
118
  `echo #{Shellwords.escape(string)}'\\c'|xsel -i`
119
119
  elsif 'xclip'.available?
120
- $stderr.puts "#{out} (Linux, xclip){x}".c if Howzit.options[:log_level].zero?
120
+ Howzit.console.debug("#{out} (Linux, xclip){x}".c)
121
121
  `echo #{Shellwords.escape(string)}'\\c'|xclip -i`
122
122
  else
123
- $stderr.puts out if Howzit.options[:log_level].zero?
124
- $stderr.puts 'Unable to determine executable for clipboard.'
123
+ Howzit.console.debug(out)
124
+ Howzit.console.warn('Unable to determine executable for clipboard.')
125
125
  end
126
126
  end
127
127
  end
data/lib/howzit/topic.rb CHANGED
@@ -51,7 +51,7 @@ module Howzit
51
51
  end
52
52
 
53
53
  @tasks.each do |task|
54
- if task.optional
54
+ if task.optional || Howzit.options[:ask]
55
55
  note = if task.type == :include
56
56
  task_count = Howzit.buildnote.find_topic(task.action)[0].tasks.count
57
57
  " (#{task_count} tasks)"
@@ -3,5 +3,5 @@
3
3
  # Primary module for this gem.
4
4
  module Howzit
5
5
  # Current Howzit version.
6
- VERSION = '2.0.17'
6
+ VERSION = '2.0.18'
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: howzit
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.17
4
+ version: 2.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brett Terpstra
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-07 00:00:00.000000000 Z
11
+ date: 2022-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler