utils 0.51.1 → 0.52.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 69e976a26229706ad310d7f05d251da8aea627e30d18f9607789c78b7d173326
4
- data.tar.gz: 65be6696f3c49aa7067736b82a24a8633770fc0a723d4131cee1210745175672
3
+ metadata.gz: af8e1e554e81bff32ff0e5a382b722f1e98b9a3c200b3d3f8dfd875235169ce8
4
+ data.tar.gz: 4e1f75f8db3e951a3ef7304843029b6519b7caf3ec936d8b7942d32f1c152440
5
5
  SHA512:
6
- metadata.gz: 9d10d1921b2efede6c397088266ea3c8fac9f234b4ad4b8e20c51e3463fb6f812de78cf79f33e45287c473e2c3df09ec6d9b4196048faf1e964b2b80de2f279a
7
- data.tar.gz: 232ec2b3329b4aeca039da85f70e57d0aa9090405b6e6b8390a3e45a7f6c8b714d1b8c0dc9d0fe76eff6998c3f8bc967935f52d0931af8b7fb3160633f5ece1a
6
+ metadata.gz: 2664375885faa1a8f3b747d790308eb7c2929dd5a95cf0f21ebb35d25c68a7e8e23c1968646e1214babb91edb1e7a6a7972b3d873b364f4fd119efcfeb9e8103
7
+ data.tar.gz: d5c4db5b7a10a889bc6d1bc01e7dcf578623a3b0a2eebc85f3e40c0e206bd1a396423a9bad6aaad55e9f464beb9b2daa8d8375c48b0ea94a55a61c0b328bd927
data/bin/discover CHANGED
@@ -6,6 +6,7 @@ require 'tins/xt'
6
6
  include Tins::GO
7
7
  require 'search_ui'
8
8
  include SearchUI
9
+ require 'pathname'
9
10
 
10
11
  def edit_files(*paths, pick: false, wait: true)
11
12
  editor = Utils::Editor.new
@@ -46,6 +47,8 @@ Options are
46
47
  -v be verbose
47
48
  -n NUMBER the first NUMBER of matches is returned
48
49
  -s search by interactively inputting PATTERN
50
+ -l list all paths in cache relative to current directory
51
+ -L list all paths in cahce as absolute pathes from root
49
52
  -h display this help
50
53
 
51
54
  Version is #{File.basename($0)} #{Utils::VERSION}.
@@ -53,7 +56,7 @@ Version is #{File.basename($0)} #{Utils::VERSION}.
53
56
  exit 1
54
57
  end
55
58
 
56
- args = go 'n:I:i:a:p:lcreEvdsDh', defaults: { ?a => '\\w' }
59
+ args = go 'n:I:i:a:p:lLcreEvdsDh', defaults: { ?a => '\\w' }
57
60
  args[?h] and usage
58
61
 
59
62
  Term::ANSIColor.coloring = (STDIN.tty? && ENV['TERM'] !~ /dumb/) && !args[?c]
@@ -61,7 +64,7 @@ STDOUT.sync = true
61
64
  config = Utils::ConfigFile.new
62
65
  config.configure_from_paths
63
66
  args[?b] ||= config.discover.binary
64
- args[?n] ||= args[?l] ? 1 << 60 : config.discover.max_matches
67
+ args[?n] ||= (args[?l] || args[?L]) ? 1 << 60 : config.discover.max_matches
65
68
 
66
69
  if args[?s]
67
70
  pattern = ''
@@ -112,6 +115,10 @@ search = -> * {
112
115
 
113
116
  case
114
117
  when args[?l]
118
+ puts finder.().search_index.paths.map {
119
+ Pathname.new(_1).expand_path.relative_path_from(Dir.pwd)
120
+ }
121
+ when args[?L]
115
122
  puts finder.().search_index.paths
116
123
  when args[?s]
117
124
  search.()
data/lib/utils/finder.rb CHANGED
@@ -18,11 +18,15 @@ class Utils::Finder
18
18
  @args = opts[:args] || {}
19
19
  @roots = discover_roots(opts[:roots])
20
20
  @config = opts[:config] || Utils::ConfigFile.new
21
- pattern_opts = opts.subhash(:pattern) | {
22
- :cset => @args[?a],
23
- :icase => @args[?i] != ?n,
24
- }
25
- @pattern = choose(@args[?p], pattern_opts)
21
+ if @args[?l] || @args[?L]
22
+ @pattern = nil
23
+ else
24
+ pattern_opts = opts.subhash(:pattern) | {
25
+ :cset => @args[?a],
26
+ :icase => @args[?i] != ?n,
27
+ }
28
+ @pattern = choose(@args[?p], pattern_opts)
29
+ end
26
30
  @paths = []
27
31
  reset_index
28
32
  end
@@ -112,7 +116,9 @@ class Utils::Finder
112
116
  paths.select! { |path| s.include?(File.extname(path)[1..-1]) }
113
117
  end
114
118
  paths = paths.map! do |path|
115
- if match = @pattern.match(path)
119
+ if @pattern.nil?
120
+ [ [ path.count(?/), path ], path, path ]
121
+ elsif match = @pattern.match(path)
116
122
  if FuzzyPattern === @pattern
117
123
  current = 0
118
124
  marked_path = ''
data/lib/utils/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Utils
2
2
  # Utils version
3
- VERSION = '0.51.1'
3
+ VERSION = '0.52.1'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/utils.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: utils 0.51.1 ruby lib
2
+ # stub: utils 0.52.1 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "utils".freeze
6
- s.version = "0.51.1".freeze
6
+ s.version = "0.52.1".freeze
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.51.1
4
+ version: 0.52.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank