rbtext 0.0.4 → 0.0.7

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: 0467ee1b3d491b6bef01dd1a796d21047986e6512eb659079e77dc6af2d6e218
4
- data.tar.gz: 142242e5118407b2a1c4f7c70d8d59bc96991f2c7580d09ece1dc11851a289f0
3
+ metadata.gz: 8c7aca79a52e20d6e7d51024f1029cc8ed92a2e870f796026463005acfa28d37
4
+ data.tar.gz: 8ed901117befbb3899c7a5f1ef9b64c03bec6e0cbe43da498295b6e7e3e4576e
5
5
  SHA512:
6
- metadata.gz: a1eeb1dc404002728ad1d9e375c08dc992e4486d09e2371db825a4286fd858ee9354df9ea80fe3cd79e90ecab5d55da4742d7bad73ebc0a93365cc8148415c8f
7
- data.tar.gz: f682291a9d5580168b02816b315a5d15fa649027ea610bd610a9985f7987d80de011df02a401c5faab3e31baef6750e4707457f4b658630c0bfe8f262a477af0
6
+ metadata.gz: 3de37ec9edf252ac34d556b57a52dd5a83fdf8ab43c6099369fc73d30fb43cae5a95084eda353e8789e87064689e204b7dcc9eaed9214744851ffbcf1a988b75
7
+ data.tar.gz: 9255ebee6de279081a194c964096c6c5eaf1e35c3101d1304a2e2cefc0cf5ab4763c87feb8c0385f95703ee916598c4efa6dfb03f750906fc381e37ebbfe0960
data/lib/rbtext/colors.rb CHANGED
@@ -17,7 +17,8 @@ module RBText
17
17
  light_blue: "94",
18
18
  light_magenta: "95",
19
19
  light_cyan: "96",
20
- white: "97"
20
+ white: "97",
21
+ reset: "39"
21
22
  }
22
23
  end
23
24
 
@@ -41,11 +42,15 @@ module RBText
41
42
  return "\033[#{color_code}m"
42
43
  end
43
44
 
44
- module_function :fg_color_codes, :bg_color_codes, :color
45
+ def num_color(num, type: :fg)
46
+ return "\033[#{type == :fg ? "38" : "48"};5;#{num}m"
47
+ end
48
+
49
+ module_function :fg_color_codes, :bg_color_codes, :color, :num_color
45
50
  end
46
51
 
47
52
  module C
48
53
  include RBText::Colors
49
- module_function :fg_color_codes, :bg_color_codes, :color
54
+ module_function :fg_color_codes, :bg_color_codes, :color, :num_color
50
55
  end
51
56
  end
data/lib/rbtext/cursor.rb CHANGED
@@ -16,15 +16,20 @@ module RBText
16
16
  print "\033[#{num.to_i}C"
17
17
  end
18
18
 
19
+ def go_to_pos(x, y)
20
+ print "\033[#{y};#{x}H"
21
+ print "\033[#{y};#{x}f"
22
+ end
23
+
19
24
  def beginning_of_line
20
25
  print "\r"
21
26
  end
22
27
 
23
- module_function :up, :down, :left, :right, :beginning_of_line
28
+ module_function :up, :down, :left, :right, :beginning_of_line, :go_to_pos
24
29
  end
25
30
 
26
31
  module Cr
27
32
  include RBText::Cursor
28
- module_function :up, :down, :left, :right, :beginning_of_line
33
+ module_function :up, :down, :left, :right, :beginning_of_line, :go_to_pos
29
34
  end
30
35
  end
@@ -1,7 +1,13 @@
1
1
  module RBText
2
2
  module Formatting
3
- def reset
4
- "\033[0m"
3
+ def reset(f_opt = nil)
4
+ if f_opt
5
+ "\033[#{
6
+ f_opt =~ /^\033\[(1|2)m$/ ? "\033[22m" : "\033[2#{f_opt.gsub(/[^0-9]/, "")}m"
7
+ }"
8
+ else
9
+ "\033[0m"
10
+ end
5
11
  end
6
12
 
7
13
  def bold
@@ -20,11 +26,19 @@ module RBText
20
26
  "\033[4m"
21
27
  end
22
28
 
23
- module_function :reset, :bold, :faint, :italic, :underline
29
+ def blinking
30
+ "\033[5m"
31
+ end
32
+
33
+ def strikethrough
34
+ "\033[9m"
35
+ end
36
+
37
+ module_function :reset, :bold, :faint, :italic, :underline, :blinking, :strikethrough
24
38
  end
25
39
 
26
40
  module F
27
41
  include RBText::Formatting
28
- module_function :reset, :bold, :faint, :italic, :underline
42
+ module_function :reset, :bold, :faint, :italic, :underline, :blinking, :strikethrough
29
43
  end
30
44
  end
data/lib/rbtext/ftext.rb CHANGED
@@ -15,6 +15,10 @@ module RBText
15
15
  @text << RBText::Colors.color(x[1].to_sym)
16
16
  elsif x[0] == "cb"
17
17
  @text << RBText::Colors.color(x[1].to_sym, type: :bg)
18
+ elsif x[0] == "cfn" || x[0] == "cn"
19
+ @text << RBText::Colors.num_color(x[1])
20
+ elsif x[0] == "cbn"
21
+ @text << RBText::Colors.num_color(x[1], type: :bg)
18
22
  elsif x[0] == "f"
19
23
  if x[1] == "reset"
20
24
  @text << RBText::Formatting.reset
@@ -26,6 +30,24 @@ module RBText
26
30
  @text << RBText::Formatting.italic
27
31
  elsif x[1] == "underline"
28
32
  @text << RBText::Formatting.underline
33
+ elsif x[1] == "strikethrough"
34
+ @text << RBText::Formatting.strikethrough
35
+ elsif x[1] == "blinking"
36
+ @text << RBText::Formatting.blinking
37
+ end
38
+ elsif x[0] == "rf"
39
+ if x[1] == "bold"
40
+ @text << RBText::Formatting.reset(R::F.bold)
41
+ elsif x[1] == "faint"
42
+ @text << RBText::Formatting.reset(R::F.faint)
43
+ elsif x[1] == "italic"
44
+ @text << RBText::Formatting.reset(R::F.italic)
45
+ elsif x[1] == "underline"
46
+ @text << RBText::Formatting.reset(R::F.underline)
47
+ elsif x[1] == "strikethrough"
48
+ @text << RBText::Formatting.reset(R::F.strikethrough)
49
+ elsif x[1] == "blinking"
50
+ @text << RBText::Formatting.reset(R::F.blinking)
29
51
  end
30
52
  end
31
53
  else
@@ -0,0 +1,18 @@
1
+ module RBText
2
+ module Screen
3
+ def clear
4
+ print "\033[2J"
5
+ end
6
+
7
+ def clear_line
8
+ print "\033[2K"
9
+ end
10
+
11
+ module_function :clear, :clear_line
12
+ end
13
+
14
+ module S
15
+ include RBText::Screen
16
+ module_function :clear, :clear_line
17
+ end
18
+ end
data/lib/rbtext.rb CHANGED
@@ -2,14 +2,16 @@ require_relative "rbtext/cursor.rb"
2
2
  require_relative "rbtext/colors.rb"
3
3
  require_relative "rbtext/formatting.rb"
4
4
  require_relative "rbtext/ftext.rb"
5
+ require_relative "rbtext/screen.rb"
5
6
 
6
7
  module RBText
7
8
  @ver_1 = 0
8
9
  @ver_2 = 0
9
- @ver_3 = 4
10
+ @ver_3 = 7
11
+ @ver_4 = ""
10
12
 
11
13
  def version
12
- "#{@ver_1}.#{@ver_2}.#{@ver_3}"
14
+ "#{@ver_1}.#{@ver_2}.#{@ver_3}#{".#{@ver_4}" if @ver_4.length > 1}"
13
15
  end
14
16
 
15
17
  module_function :version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbtext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthias Lee
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-03-19 00:00:00.000000000 Z
11
+ date: 2022-03-20 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A gem for printing formatted text
14
14
  email: matthias@matthiasclee.com
@@ -21,8 +21,10 @@ files:
21
21
  - lib/rbtext/cursor.rb
22
22
  - lib/rbtext/formatting.rb
23
23
  - lib/rbtext/ftext.rb
24
- homepage:
25
- licenses: []
24
+ - lib/rbtext/screen.rb
25
+ homepage: https://github.com/Matthiasclee/RBText
26
+ licenses:
27
+ - AGPL-3.0
26
28
  metadata: {}
27
29
  post_install_message:
28
30
  rdoc_options: []