terutil 0.2.0 → 0.3.0

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/dev +45 -0
  3. metadata +10 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a10417f8feb477431204d0f22310b8be994343dc52d8f9ec7cbcbb92855a29ad
4
- data.tar.gz: 72bfece42cafd9cda72de99eac449916c87e08d3bbade23f347ec877cbd46a33
3
+ metadata.gz: 37fcfc70d9f94fbe706fc3fc6554a0420125db7d30e71769bc29e34fd8124e33
4
+ data.tar.gz: ee3c5b58e3aa6c32f069d685d6f3b6451ad5a201cfe4d27586f2cee2683a3813
5
5
  SHA512:
6
- metadata.gz: 1260c75df421f20d367d78b07577b27eb5e485da00167f271187b3b5d8d1e2dd8c0abf447988a24dacdb8fe79165e0259235969eb429bfbed40b3eb3fad99304
7
- data.tar.gz: 8e2a71fdc32f99f38c4723595f822e0c9fb5e7ca41e8b1298f52760a05beff097b0a8fa479808878faba8d71c3677a209cc0d716bbad290fc5cf03b3c536a240
6
+ metadata.gz: 87f4d96ffdc1d850215948906074de0160cc2214711e2c48814304730344ee8ffb9da34a4a070e390febf3c2515fe68b24e125c613eb42baea1d8c63f257c75a
7
+ data.tar.gz: 1a6a9b67d1f3db9333329a903319a62cee9feae62d046995609fab8b80eccb90f0d286e0e892f85140837f28e01ef372a069b7b8766d4facf372d38abf514d67
data/bin/dev ADDED
@@ -0,0 +1,45 @@
1
+ #! /usr/bin/ruby
2
+ require 'tempfile'
3
+ require 'fileutils'
4
+
5
+ def usage
6
+ puts <<~END
7
+ Usage:
8
+ dev
9
+
10
+ Supported environments (in order of priority):
11
+ - `./dev` script
12
+ - npm (`package-lock.json`)
13
+ - pnpm (`pnpm-lock.yaml`)
14
+ - yarn (`yarn.lock`)
15
+ END
16
+ end
17
+
18
+ def file(fname)
19
+ return -> { File.file? fname }
20
+ end
21
+
22
+ def main
23
+ mappings = {
24
+ -> { ARGV.length > 0 } => method(:usage),
25
+ -> { file('./dev').() && File.expand_path($0) != File.expand_path('./dev') } => -> {
26
+ if FileTest.executable? './dev'
27
+ exec './dev'
28
+ else
29
+ puts "Found a `./dev` script, but it is not executable by this user.\nDo you want to try to make it executable? [Y/n]"
30
+ exec "echo chmod +x ./dev && chmod +x ./dev" if "yY\n".include? STDIN.getc
31
+ exit
32
+ end
33
+ },
34
+ file('./package-lock.json') => -> { exec "npm run dev" },
35
+ file('./pnpm-lock.yaml') => -> { exec "pnpm run dev" },
36
+ file('./yarn.lock') => -> { exec "yarn dev" },
37
+ }
38
+
39
+ mappings.each { |cond, cmd| if cond.() then cmd.(); break end }
40
+ puts "No supported environment found, starting live-server..."
41
+ exec "live-server"
42
+ end
43
+
44
+ main
45
+
metadata CHANGED
@@ -1,26 +1,28 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terutil
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - vypxl
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-31 00:00:00.000000000 Z
11
+ date: 2021-12-12 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description:
14
- email:
13
+ description:
14
+ email:
15
15
  executables:
16
16
  - remember
17
17
  - _c
18
18
  - swap
19
19
  - newf
20
+ - dev
20
21
  extensions: []
21
22
  extra_rdoc_files: []
22
23
  files:
23
24
  - bin/_c
25
+ - bin/dev
24
26
  - bin/newf
25
27
  - bin/remember
26
28
  - bin/swap
@@ -31,7 +33,7 @@ licenses:
31
33
  - MIT
32
34
  metadata:
33
35
  source_code_uri: https://github.com/vypxl/terutil
34
- post_install_message:
36
+ post_install_message:
35
37
  rdoc_options: []
36
38
  require_paths:
37
39
  - lib
@@ -46,8 +48,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
46
48
  - !ruby/object:Gem::Version
47
49
  version: '0'
48
50
  requirements: []
49
- rubygems_version: 3.0.6
50
- signing_key:
51
+ rubygems_version: 3.2.29
52
+ signing_key:
51
53
  specification_version: 4
52
54
  summary: Terminal Util - a collection of useful terminal utilities.
53
55
  test_files: []