dorian-write 0.0.1 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/write +16 -3
  3. metadata +4 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8d850b22de422740f64c78f435b74c7f91b873f8ea9b2e122ce1eefdb89c9b66
4
- data.tar.gz: 111a9ade5a82df9df3a6d2944ee056dc98013619b365108395218ca7c15cb20e
3
+ metadata.gz: 27319c7f42a446021cb78f177147e57b7ea6c6df8de9d58b90cdb7848d986235
4
+ data.tar.gz: 0d25e245e055b40714d8701cfee0fff26e930a3d25a9552863eac55739984b46
5
5
  SHA512:
6
- metadata.gz: 9a200ee7452b5a733a2b8228c5fa388efecf1a74cbe5912b120b8a9edd22ba06dcf67cdb2053c0980e8f54ef1f59235059d2f2d668f5bad5bdd6267ee18677b8
7
- data.tar.gz: 0f7e387c91cb8fbb826827c0b83f50e98af8d46603e3b9dbe5a513785032ec63767490b626f9be0dcf400ff6439f83aff1ff842ee745b0c03b3a14c81c7a5f7a
6
+ metadata.gz: a5b56bef1c331e3e0e904983a4b028d8d3165a213b6ebfa5858687ff445682cdcd44ccc3e835099582a3ef0f526f8c3bd8f52656b8cd1692648a6a52b8bccd72
7
+ data.tar.gz: 77640f530975b53bead90aab4a76cb76f6c615a84405c2d3a3a5c33116941231f840df96b9f762f7c4063dbad82554a4837e4eafa7ec90eba71353b7a0896313
data/bin/write CHANGED
@@ -1,8 +1,21 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- if ARGV.size != 1 || ARGV[0] == "--help" || ARGV[0] == "-h"
5
- abort "USAGE: ... | write FILE"
4
+ if ARGV.size < 1 || ARGV.first == "--help" || ARGV.first == "-h"
5
+ abort "USAGE: ... | write [-a|--append|-p|--prepend] FILES..."
6
6
  end
7
7
 
8
- File.write(ARGV.first, $stdin.each_line.to_a.map(&:strip).join("\n"))
8
+ PREPEND = ARGV.detect { |argv| argv == "-p" || argv == "--prepend" }
9
+ APPEND = ARGV.detect { |argv| argv == "-a" || argv == "--append" }
10
+ FILES = ARGV - [PREPEND] - [APPEND]
11
+ CONTENT = $stdin.each_line.to_a.map(&:strip).join("\n")
12
+
13
+ FILES.each do |file|
14
+ if APPEND
15
+ File.write(file, [File.read(file).strip, CONTENT].join("\n"))
16
+ elsif PREPEND
17
+ File.write(file, [CONTENT, File.read(file).strip].join("\n"))
18
+ else
19
+ File.write(file, CONTENT)
20
+ end
21
+ end
metadata CHANGED
@@ -1,19 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dorian-write
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-16 00:00:00.000000000 Z
11
+ date: 2024-08-18 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: |-
14
- Write to a file
15
-
16
- e.g. `cat users.csv | csv-pluck name | write users.csv`
13
+ description: writes to a file
17
14
  email: dorian@dorianmarie.com
18
15
  executables:
19
16
  - write
@@ -44,5 +41,5 @@ requirements: []
44
41
  rubygems_version: 3.5.11
45
42
  signing_key:
46
43
  specification_version: 4
47
- summary: Write to a file
44
+ summary: writes to a file
48
45
  test_files: []