sijka 0.0.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0f9444fae0b4021cba470628971ee406113299f8
4
+ data.tar.gz: be7732c1ad0acefbdf173f5be672cba60967e4c6
5
+ SHA512:
6
+ metadata.gz: af20ea5dbfbbbe0975a3f3b4883d751a87e564a36da29f757413a3763f648c613eaf36b97cbb41e69f0b721f1b409cec6e92ff8f3bedb84efcf29cb4ed3970fc
7
+ data.tar.gz: eb9f3d7e033a79c2c08aef870a8eb354d7866233d9890c45a38206aa0dcf4bc4f671198a9b987d80afb96e3cc669be08b2d0f8d71b16507bd741630defb678b0
data/.gitignore ADDED
@@ -0,0 +1,20 @@
1
+ *.gem
2
+ *.rbc
3
+ *.swp
4
+ .DS_Store
5
+ .bundle
6
+ .config
7
+ .vagrant
8
+ .yardoc
9
+ Gemfile.lock
10
+ InstalledFiles
11
+ _yardoc
12
+ coverage
13
+ doc/
14
+ lib/bundler/man
15
+ pkg
16
+ rdoc
17
+ spec/reports
18
+ test/tmp
19
+ test/version_tmp
20
+ tmp
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'ruby-terminfo', '~> 0.1.1'
data/README.md ADDED
@@ -0,0 +1,2 @@
1
+ ##Terminal cigarette
2
+ You can try to smoke without harm to health, in the terminal.
data/Rakefile.txt ADDED
@@ -0,0 +1 @@
1
+ require 'bundler/gem_tasks'
data/bin/cowsay.txt ADDED
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'sijka'
4
+ require 'optparse'
5
+
6
+ options = {}
7
+ OptionParser.new do |opts|
8
+ opts.banner = "Usage: sijka [-h] [-f sijkafile] [-l] [message]"
9
+ opts.on("-l", "List available sijka files") do |cowfile|
10
+ options['list'] = true
11
+ end
12
+ opts.on("-f SIJKAFILE", "Specify a sijka file") do |cowfile|
13
+ options['sijkafile'] = sijkafile
14
+ end
15
+ end.parse!
16
+
17
+ if options['list']
18
+ puts "Sijka files:"
19
+ puts 'base'
20
+ # puts Cowsay.character_classes.join(' ')
21
+ else
22
+ # if ARGV.any?
23
+ # message = ARGV.join(' ')
24
+ # else
25
+ # #retrieve any piped input, otherwise use the empty string.
26
+ # message = STDIN.tty? ? '' : ARGF.read.chomp
27
+ # end
28
+ Sijka.new.smoke
29
+ # puts Cowsay.say(message, options['cowfile'])
30
+ end
@@ -0,0 +1,4 @@
1
+ @@@@@@
2
+ @@
3
+ ___________________@
4
+ |__|________________|@
data/lib/sijka.rb ADDED
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'terminfo'
4
+
5
+ # Terminal sigarette
6
+ class Sijka
7
+ SLEEP_TIME = 0.02
8
+
9
+ def initialize(file_name = "#{File.dirname(__FILE__)}/characters/base.txt")
10
+ @img = File.open(file_name) { |file| file.read.split("\n") }
11
+ @movement_range = TermInfo.screen_size[1] - @img.first.length
12
+ end
13
+
14
+ def smoke
15
+ right_move
16
+ reverse_img
17
+ left_move
18
+ puts 'All was smoking!'
19
+ sleep(1.3)
20
+ system 'clear'
21
+ end
22
+
23
+ def right_move
24
+ @movement_range.times do
25
+ system 'clear'
26
+ puts @img
27
+ sleep(SLEEP_TIME)
28
+ @img.map! { |line| line.insert(0, ' ') }
29
+ end
30
+ end
31
+
32
+ def reverse_img
33
+ @img.map! do |line|
34
+ line[0..@movement_range - 1] + line[@movement_range..-1].reverse
35
+ end
36
+ end
37
+
38
+ def left_move
39
+ @movement_range.times do
40
+ system 'clear'
41
+ puts @img
42
+ sleep(SLEEP_TIME)
43
+ @img.map! { |line| line[1..-1] }
44
+ end
45
+ end
46
+ end
data/sijka.gemspec ADDED
@@ -0,0 +1,20 @@
1
+ lib = File.expand_path('../lib', __FILE__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Mario Sparta"]
6
+ gem.email = ["megosparta@mail.ru"]
7
+ gem.summary = "To smoke a cigarette."
8
+ gem.description = "Smoke without harm to health"
9
+ gem.homepage = "https://github.com/megosparta/Sijka"
10
+ gem.license = "LGPL-3.0"
11
+
12
+ gem.files = `git ls-files`.split($/)
13
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15
+ gem.name = "sijka"
16
+ gem.require_paths = ["lib"]
17
+ gem.version = '0.0.0.0'
18
+ gem.add_dependency 'ruby-terminfo', '~> 0.1.1'
19
+ gem.add_development_dependency 'rake'
20
+ end
metadata ADDED
@@ -0,0 +1,82 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sijka
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Mario Sparta
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-06-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ruby-terminfo
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.1.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.1.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: Smoke without harm to health
42
+ email:
43
+ - megosparta@mail.ru
44
+ executables:
45
+ - cowsay.txt
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - ".gitignore"
50
+ - Gemfile
51
+ - Gemfile.lock
52
+ - README.md
53
+ - Rakefile.txt
54
+ - bin/cowsay.txt
55
+ - lib/characters/base.txt
56
+ - lib/sijka.rb
57
+ - sijka.gemspec
58
+ homepage: https://github.com/megosparta/Sijka
59
+ licenses:
60
+ - LGPL-3.0
61
+ metadata: {}
62
+ post_install_message:
63
+ rdoc_options: []
64
+ require_paths:
65
+ - lib
66
+ required_ruby_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ required_rubygems_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ requirements: []
77
+ rubyforge_project:
78
+ rubygems_version: 2.6.12
79
+ signing_key:
80
+ specification_version: 4
81
+ summary: To smoke a cigarette.
82
+ test_files: []