na 1.2.48 → 1.2.50
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +20 -0
- data/Gemfile.lock +1 -1
- data/README.md +3 -2
- data/bin/na +5 -1
- data/lib/na/action.rb +1 -1
- data/lib/na/colors.rb +1 -1
- data/lib/na/next_action.rb +17 -12
- data/lib/na/string.rb +1 -1
- data/lib/na/version.rb +1 -1
- data/src/_README.md +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ea683e8d5187cd53c25900fd1ec4bb269644cd83c7f95c591cd5abee20d6f7e4
|
|
4
|
+
data.tar.gz: 850ef4f8edf690a993c73088bef2fea5b4c47085d21f43e4f3097dbf202d3d9f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3bb8a0ec11195980fffcc7b429e5157e4c60501840280c14d7228f5585067e6cbcea51492a7e844d59e633ba0d7908704619404e6bfcae0d09b6f5d75a56e112
|
|
7
|
+
data.tar.gz: 8b9c155dfbbe6ac51682db63f471b2393640aaebc73f2e97801c54a872ec89b87bcc8e9574892c6030ae8d1cfd7c5136f0da57680f4aa4bc2eb96edc9c74c09d
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
### 1.2.50
|
|
2
|
+
|
|
3
|
+
2023-09-09 08:04
|
|
4
|
+
|
|
5
|
+
#### NEW
|
|
6
|
+
|
|
7
|
+
- Global option `--include_ext` can be configured to use full
|
|
8
|
+
|
|
9
|
+
#### FIXED
|
|
10
|
+
|
|
11
|
+
- `--no-color` wasn't stripping templated hex codes
|
|
12
|
+
|
|
13
|
+
### 1.2.49
|
|
14
|
+
|
|
15
|
+
2023-09-08 13:34
|
|
16
|
+
|
|
17
|
+
#### FIXED
|
|
18
|
+
|
|
19
|
+
- New project not being added when requested
|
|
20
|
+
|
|
1
21
|
### 1.2.48
|
|
2
22
|
|
|
3
23
|
2023-09-08 10:19
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
_If you're one of the rare people like me who find this useful, feel free to
|
|
10
10
|
[buy me some coffee][donate]._
|
|
11
11
|
|
|
12
|
-
The current version of `na` is 1.2.
|
|
12
|
+
The current version of `na` is 1.2.50
|
|
13
13
|
.
|
|
14
14
|
|
|
15
15
|
`na` ("next action") is a command line tool designed to make it easy to see what your next actions are for any project, right from the command line. It works with TaskPaper-formatted files (but any plain text format will do), looking for `@na` tags (or whatever you specify) in todo files in your current folder.
|
|
@@ -77,7 +77,7 @@ SYNOPSIS
|
|
|
77
77
|
na [global options] command [command options] [arguments...]
|
|
78
78
|
|
|
79
79
|
VERSION
|
|
80
|
-
1.2.
|
|
80
|
+
1.2.50
|
|
81
81
|
|
|
82
82
|
GLOBAL OPTIONS
|
|
83
83
|
-a, --add - Add a next action (deprecated, for backwards compatibility)
|
|
@@ -89,6 +89,7 @@ GLOBAL OPTIONS
|
|
|
89
89
|
--ext=EXT - File extension to consider a todo file (default: taskpaper)
|
|
90
90
|
-f, --file=PATH - Use a single file as global todo, use initconfig to make permanent (default: none)
|
|
91
91
|
--help - Show this message
|
|
92
|
+
--include_ext - Include file extension in display
|
|
92
93
|
-n, --note - Prompt for additional notes (deprecated, for backwards compatibility)
|
|
93
94
|
-p, --priority=PRIORITY - Set a priority 0-5 (deprecated, for backwards compatibility) (default: none)
|
|
94
95
|
--[no-]pager - Enable pagination (default: enabled)
|
data/bin/na
CHANGED
|
@@ -26,6 +26,9 @@ class App
|
|
|
26
26
|
arg_name 'EXT'
|
|
27
27
|
flag :ext
|
|
28
28
|
|
|
29
|
+
desc 'Include file extension in display'
|
|
30
|
+
switch :include_ext, default_value: false, negatable: false
|
|
31
|
+
|
|
29
32
|
desc 'Tag to consider a next action'
|
|
30
33
|
default_value 'na'
|
|
31
34
|
arg_name 'TAG'
|
|
@@ -86,8 +89,9 @@ class App
|
|
|
86
89
|
pre do |global, _command, _options, _args|
|
|
87
90
|
NA.verbose = global[:debug]
|
|
88
91
|
NA::Pager.paginate = global[:pager] && $stdout.isatty
|
|
89
|
-
NA::Color.coloring = global[:color]
|
|
92
|
+
NA::Color.coloring = global[:color] && $stdout.isatty
|
|
90
93
|
NA.extension = global[:ext]
|
|
94
|
+
NA.include_ext = global[:include_ext]
|
|
91
95
|
NA.na_tag = global[:na_tag]
|
|
92
96
|
NA.global_file = global[:file]
|
|
93
97
|
NA.cwd = File.basename(ENV['PWD'])
|
data/lib/na/action.rb
CHANGED
|
@@ -89,7 +89,7 @@ module NA
|
|
|
89
89
|
|
|
90
90
|
# Create the source filename string, substituting ~ for HOME and removing extension
|
|
91
91
|
file = @file.sub(%r{^\./}, '').sub(/#{ENV['HOME']}/, '~')
|
|
92
|
-
file = file.sub(/\.#{extension}$/, '')
|
|
92
|
+
file = file.sub(/\.#{extension}$/, '') unless NA.include_ext
|
|
93
93
|
# colorize the basename
|
|
94
94
|
file = file.highlight_filename
|
|
95
95
|
file_tpl = "#{template[:file]}#{file} {x}"
|
data/lib/na/colors.rb
CHANGED
|
@@ -232,7 +232,7 @@ module NA
|
|
|
232
232
|
##
|
|
233
233
|
def template(input)
|
|
234
234
|
input = input.join(' ') if input.is_a? Array
|
|
235
|
-
return input.gsub(/(?<!\\)\{(\w+)\}/i, '') unless NA::Color.coloring?
|
|
235
|
+
return input.gsub(/(?<!\\)\{#?(\w+)\}/i, '') unless NA::Color.coloring?
|
|
236
236
|
|
|
237
237
|
input = input.gsub(/(?<!\\)\{((?:[fb]g?)?#[a-f0-9]{3,6})\}/i) do
|
|
238
238
|
hex = Regexp.last_match(1)
|
data/lib/na/next_action.rb
CHANGED
|
@@ -5,7 +5,7 @@ module NA
|
|
|
5
5
|
class << self
|
|
6
6
|
include NA::Editor
|
|
7
7
|
|
|
8
|
-
attr_accessor :verbose, :extension, :na_tag, :command_line, :command, :globals, :global_file, :cwd_is, :cwd, :stdin
|
|
8
|
+
attr_accessor :verbose, :extension, :include_ext, :na_tag, :command_line, :command, :globals, :global_file, :cwd_is, :cwd, :stdin
|
|
9
9
|
|
|
10
10
|
def theme
|
|
11
11
|
@theme ||= NA::Theme.load_theme
|
|
@@ -192,6 +192,7 @@ module NA
|
|
|
192
192
|
if final_match.nil?
|
|
193
193
|
indent = 0
|
|
194
194
|
input = []
|
|
195
|
+
|
|
195
196
|
new_path.each do |part|
|
|
196
197
|
input.push("#{"\t" * indent}#{part.cap_first}:")
|
|
197
198
|
indent += 1
|
|
@@ -208,7 +209,7 @@ module NA
|
|
|
208
209
|
content = "#{before}\n#{input.join("\n")}\n#{after}"
|
|
209
210
|
end
|
|
210
211
|
|
|
211
|
-
new_project = NA::Project.new(path.map(&:cap_first).join(':'), indent - 1,
|
|
212
|
+
new_project = NA::Project.new(path.map(&:cap_first).join(':'), indent - 1, line, line + 1)
|
|
212
213
|
else
|
|
213
214
|
line = final_match.line + 1
|
|
214
215
|
indent = final_match.indent + 1
|
|
@@ -274,21 +275,25 @@ module NA
|
|
|
274
275
|
projects = find_projects(target)
|
|
275
276
|
|
|
276
277
|
target_proj = if target_proj
|
|
277
|
-
projects.select { |proj| proj.project =~ /^#{target_proj.project}$/ }.first
|
|
278
|
+
projects.select { |proj| proj.project =~ /^#{target_proj.project}$/i }.first
|
|
278
279
|
else
|
|
279
|
-
projects.select { |proj| proj.project =~ /^#{add.parent.join(':')}$/ }.first
|
|
280
|
+
projects.select { |proj| proj.project =~ /^#{add.parent.join(':')}$/i }.first
|
|
280
281
|
end
|
|
281
282
|
|
|
282
|
-
|
|
283
|
+
if target_proj.nil?
|
|
284
|
+
res = NA.yn(NA::Color.template("#{NA.theme[:warning]}Project #{NA.theme[:file]}#{add.project}#{NA.theme[:warning]} doesn't exist, add it"), default: true)
|
|
283
285
|
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
286
|
+
if res
|
|
287
|
+
target_proj = insert_project(target, project, projects)
|
|
288
|
+
projects << target_proj
|
|
289
|
+
else
|
|
290
|
+
NA.notify("#{NA.theme[:error]}Cancelled", exit_code: 1)
|
|
291
|
+
end
|
|
290
292
|
|
|
291
|
-
|
|
293
|
+
NA.notify("#{NA.theme[:error]}Error parsing project #{NA.theme[:filename]}#{target}", exit_code: 1) if target_proj.nil?
|
|
294
|
+
|
|
295
|
+
contents = target.read_file.split("\n")
|
|
296
|
+
end
|
|
292
297
|
|
|
293
298
|
indent = "\t" * target_proj.indent
|
|
294
299
|
note = note.split("\n") unless note.is_a?(Array)
|
data/lib/na/string.rb
CHANGED
|
@@ -91,7 +91,7 @@ class ::String
|
|
|
91
91
|
##
|
|
92
92
|
def highlight_filename
|
|
93
93
|
dir = File.dirname(self).shorten_path
|
|
94
|
-
file = File.basename(self, ".#{NA.extension}")
|
|
94
|
+
file = NA.include_ext ? File.basename(self) : File.basename(self, ".#{NA.extension}")
|
|
95
95
|
"#{NA.theme[:dirname]}#{dir}/#{NA.theme[:filename]}#{file}{x}"
|
|
96
96
|
end
|
|
97
97
|
|
data/lib/na/version.rb
CHANGED
data/src/_README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
_If you're one of the rare people like me who find this useful, feel free to
|
|
10
10
|
[buy me some coffee][donate]._
|
|
11
11
|
|
|
12
|
-
The current version of `na` is <!--VER-->1.2.
|
|
12
|
+
The current version of `na` is <!--VER-->1.2.49<!--END VER-->.
|
|
13
13
|
|
|
14
14
|
`na` ("next action") is a command line tool designed to make it easy to see what your next actions are for any project, right from the command line. It works with TaskPaper-formatted files (but any plain text format will do), looking for `@na` tags (or whatever you specify) in todo files in your current folder.
|
|
15
15
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: na
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.2.
|
|
4
|
+
version: 1.2.50
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brett Terpstra
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-09-
|
|
11
|
+
date: 2023-09-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rake
|