ruby_learner 1.2.6 → 1.2.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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +3 -3
  3. data/contents/datas/emacs.d/black/init.el +8 -1
  4. data/contents/datas/emacs.d/white/init.el +8 -0
  5. data/contents/datas/sequential_mode.txt +1 -0
  6. data/contents/workshop/rubocop.yml +2 -0
  7. data/docs/{thesis/manual.org → manual.org} +0 -0
  8. data/docs/{todo → seminar}/9-27.org +0 -0
  9. data/docs/thesis/final_presentation/IMRD/ctrlZ_fg_method.org +7 -0
  10. data/docs/thesis/final_presentation/IMRD/why_not_web.org +9 -0
  11. data/docs/thesis/{mid_term.pptx → midterm_presentation/others/5464_takaki_midterm.pptx} +0 -0
  12. data/docs/thesis/midterm_presentation/others/mid_term.pptx +0 -0
  13. data/docs/thesis/midterm_presentation/ruby_learner_thesis/.ruby_learner.tex.swp +0 -0
  14. data/docs/thesis/midterm_presentation/ruby_learner_thesis/jlisting.sty +216 -0
  15. data/docs/thesis/midterm_presentation/ruby_learner_thesis/rspec_rubocop.png +0 -0
  16. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.aux +22 -0
  17. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.dvi +0 -0
  18. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.log +152 -0
  19. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.md +35 -0
  20. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.pdf +0 -0
  21. data/docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.tex +79 -0
  22. data/docs/thesis/midterm_presentation/ruby_learner_thesis/test.md +39 -0
  23. data/docs/thesis/{competing_services.org → research/competing_services.org} +0 -0
  24. data/lib/ruby_learner/common.rb +0 -29
  25. data/lib/ruby_learner/copspec.rb +49 -0
  26. data/lib/ruby_learner/pair_timer.rb +9 -19
  27. data/lib/ruby_learner/restore.rb +81 -0
  28. data/lib/ruby_learner/{typing_practice.rb → rubocop_rspec_check.rb} +25 -24
  29. data/lib/ruby_learner/ruby_learner.rb +47 -56
  30. data/lib/ruby_learner/sequential_check.rb +110 -0
  31. data/lib/ruby_learner/sequential_check_real.rb +29 -0
  32. data/lib/ruby_learner/version.rb +1 -1
  33. metadata +25 -11
  34. data/docs/thesis/~$mid_term.pptx +0 -0
  35. data/lib/ruby_learner/popup_per_time_for_background.rb +0 -14
  36. data/lib/ruby_learner/practice_datas.txt +0 -0
  37. data/lib/ruby_learner/sequential_main.rb +0 -207
@@ -1,10 +1,12 @@
1
1
  require 'fileutils'
2
2
  require 'thor'
3
- require 'ruby_learner/version.rb'
4
3
  require 'open3'
5
- require 'ruby_learner/common.rb'
6
- require 'ruby_learner/sequential_main'
7
- require 'ruby_learner/pair_timer.rb'
4
+ require 'ruby_learner/version'
5
+ require 'ruby_learner/common'
6
+ require 'ruby_learner/sequential_check'
7
+ require 'ruby_learner/sequential_check_real'
8
+ require 'ruby_learner/restore'
9
+ require 'ruby_learner/copspec'
8
10
 
9
11
  module RubyLearner
10
12
  # ruby_learner CLI main class
@@ -43,85 +45,74 @@ module RubyLearner
43
45
  return
44
46
  end
45
47
  time = args[0].to_i
46
- popup_file = File.expand_path("../popup_per_time_for_background.rb", __FILE__)
47
- system("ruby #{popup_file} #{time} &")
48
+ file = File.expand_path("../pair_timer.rb", __FILE__)
49
+ system("ruby #{file} #{time} &")
48
50
  end
49
51
 
50
- desc 'sequential_check [section:1~11] [part:1~]','learning drill'
52
+ desc 'copspec [file_path]','check rspec and rubocop'
53
+ map "-c" => "copspec"
54
+ option :sequential_check, aliases: :s, type: :boolean
55
+ def copspec(*args)
56
+ begin
57
+ if options[:sequential_check]
58
+ CopSpec.copspec("#{@workshop_dir}/lib/workplace.rb")
59
+ else
60
+ CopSpec.copspec(args[0])
61
+ end
62
+ rescue => error
63
+ puts "Error.message: #{error.message}"
64
+ end
65
+ end
66
+
67
+ desc 'sequential_check [section:1~11] [part:1~3]','learning drill'
51
68
  map "-s" => "sequential_check"
69
+ option :real, aliases: :r, type: :boolean
70
+ option :copspec, aliases: :c, type: :boolean
52
71
  option :next, aliases: :n, type: :boolean
53
72
  option :drill, aliases: :d, type: :boolean
54
73
  option :last, aliases: :l, type: :boolean
55
74
  def sequential_check(*args)
56
75
  begin
57
- sequential_main = SequentialMain.new(@gem_dir, @local_dir)
58
- if args[0] == '-p'
59
- pair_timer = PairTimer.new do
60
- pair_timer.popup_per_time_for_exe(600)
61
- end
62
- args[0] = args[1]
63
- args[1] = args[2]
76
+ mode = File.read("#{@datas_dir}/sequential_mode.txt").chomp
77
+ puts "active mode: #{mode}"
78
+ sequential_check = nil
79
+ if mode == 'nomal'
80
+ sequential_check = SequentialCheck.new(@gem_dir, @local_dir)
81
+ else
82
+ sequential_check = SequentialCheckReal.new(@gem_dir, @local_dir)
64
83
  end
65
-
66
84
  if options[:drill]
67
- Thread.kill(pair_timer) if pair_timer != nil
68
- sequential_main.drill_contents
85
+ sequential_check.drill_contents
69
86
  elsif options[:next]
70
- final_sec, final_par = sequential_main.get_final_history()
71
- next_sec, next_par = sequential_main.get_next_question(final_sec, final_par)
72
- sequential_main.action(next_sec, next_par)
87
+ sequential_check.next_action
73
88
  elsif options[:last]
74
- sequential_main.last_re_action()
89
+ sequential_check.last_re_action
90
+ elsif options[:real]
91
+ sequential_check.change_mode
92
+ elsif options[:copspec]
93
+ CopSpec.copspec("#{@workshop_dir}/lib/workplace.rb")
75
94
  else
76
- sequential_main.action(args[0], args[1])
95
+ sequential_check.action(args[0], args[1])
77
96
  end
78
- Thread.kill(pair_timer) if pair_timer != nil
79
97
  rescue => error
80
98
  puts "Error.message: #{error.message}"
81
- puts 'sequential_check has 5-modes'
82
- puts 'mode-1: $ sequential_check [section:1~11] [part:1~], ex) sequential_check 1 3'
83
- puts 'mode-2: $ sequential_check -d, check drill contents'
84
- puts 'mode-3: $ sequential_check -n, learn next to your last-question'
85
- puts 'mode-4: $ sequential_check -l, learn your last-question'
86
- puts 'mode-5: $ sequential_check -p [1 2, -d, -n, -l], learn with partner, change per 10 minutes.'
99
+ sequential_check.instruct_modes
87
100
  end
88
101
  end
89
102
 
90
103
  desc 'restore','check your restore'
104
+ map "-r" => "restore"
91
105
  option :refresh, aliases: :r, type: :boolean
106
+ option :copspec, aliases: :c, type: :boolean
92
107
  def restore(*args)
93
- restores = []
94
- dir = Dir.open(@restore_dir)
95
- dir.each do |file|
96
- if file != '.' && file != '..' && file != '.empty.rb'
97
- restores << file.slice(1..file.length)
98
- end
99
- end
100
- sorted_restores = restores.sort_by{|item| item.to_i}
101
- sorted_restores.each{|item| item.insert(0, "[")}
108
+ restore = Restore.new
102
109
  if options[:refresh]
103
110
  system("rm -rf #{@restore_dir}")
104
111
  system("mkdir #{@restore_dir}")
105
112
  elsif args.empty? == true
106
- if sorted_restores.size < 20
107
- puts sorted_restores
108
- else
109
- system("ls #{@restore_dir}")
110
- puts "\nlast 5 restore history."
111
- puts sorted_restores[-5..-1], "\n"
112
- end
113
- puts "If you want to open a restore_file, you execute 'ruby_learner restore [number]'"
114
- puts "ex) ruby_learner restore 3"
115
- print "If you want to remove all restore_files, you execute 'ruby_learner restore -r'"
113
+ restore.output
116
114
  else
117
- case args[0].to_i
118
- when 0..sorted_restores.size-1
119
- filename = sorted_restores[args[0].to_i]
120
- system("emacs #{@restore_dir}/#{filename}")
121
- else
122
- puts "you have #{sorted_restores.size} restore_files."
123
- puts "you must put 'ruby_learner restore 0~#{sorted_restores.size - 1}.'"
124
- end
115
+ restore.open(args[0].to_i)
125
116
  end
126
117
  end
127
118
 
@@ -0,0 +1,110 @@
1
+ require 'ruby_learner/rubocop_rspec_check'
2
+ require 'fileutils'
3
+
4
+ class SequentialCheck
5
+
6
+ def initialize(gem_dir, local_dir)
7
+ @gem_dir = gem_dir
8
+ @local_dir = local_dir
9
+ @workshop_dir = "#{local_dir}/workshop"
10
+ @restore_dir = "#{local_dir}/restore"
11
+ @datas_dir = "#{local_dir}/.datas"
12
+ end
13
+
14
+ # non opt, -next
15
+ def action(sec, par)
16
+ puts "section_#{sec}/part_#{par}"
17
+ seq_dir = "#{@gem_dir}/contents/questions/sequential_check/section_#{sec}/part_#{par}"
18
+ rubocop_rspec_check = RubocopRspecCheck.new(@local_dir, @gem_dir)
19
+ rubocop_rspec_check.action(mode_dir: seq_dir, is_copy: true)
20
+ write_final_history(sec, par)
21
+ end
22
+
23
+ # -next
24
+ def next_action
25
+ final_sec, final_par = get_final_history
26
+ next_sec, next_par = get_next_question(final_sec, final_par)
27
+ action(next_sec, next_par)
28
+ end
29
+
30
+ # -last
31
+ def last_re_action
32
+ final_sec, final_par = get_final_history
33
+ puts "section_#{final_sec}/part_#{final_par}"
34
+ rubocop_rspec_check = RubocopRspecCheck.new(@local_dir, @gem_dir)
35
+ rubocop_rspec_check.action(mode_dir: "#{@local_dir}/workshop", is_copy: false)
36
+ end
37
+
38
+ # -drill
39
+ def drill_contents
40
+ puts "section \t part\t contents"
41
+ puts "section_1\t 1~3\t standard_output"
42
+ puts "section_2\t 1~3\t standard_input"
43
+ puts "section_3\t 1~3\t standard_I/O summary"
44
+ puts "section_4\t 1~3\t comparisons & conditionals"
45
+ puts "section_5\t 1~3\t loop_methods"
46
+ puts "section_6\t 1~3\t array & hash & symbol"
47
+ puts "section_7\t 1~3\t function"
48
+ puts "section_8\t 1~3\t class"
49
+ puts "section_9\t 1~3\t regular_expression"
50
+ puts "section_10\t 1~3\t file_operation"
51
+ puts "section_11\t 1~3\t library"
52
+ end
53
+
54
+ # -ch_mode
55
+ def change_mode
56
+ mode_txt = "#{@datas_dir}/sequential_mode.txt"
57
+ case File.read(mode_txt).chomp
58
+ when 'nomal'
59
+ File.write(mode_txt, 'real')
60
+ else
61
+ File.write(mode_txt, 'nomal')
62
+ end
63
+ end
64
+
65
+ def instruct_modes
66
+ puts 'sequential_check has 5-modes'
67
+ puts 'mode-1: $ -s [section:1~11] [part:1~], ex) sequential_check 1 3'
68
+ puts 'mode-2: $ -s -d, check drill contents'
69
+ puts 'mode-3: $ -s -n, learn next to your last-question'
70
+ puts 'mode-4: $ -s -l, learn your last-question'
71
+ puts 'mode-5: $ -s -c, change behavior'
72
+ end
73
+
74
+ private
75
+
76
+ def write_final_history(sec, par)
77
+ chmoded = 0
78
+ file_dir = "#{@datas_dir}/final_history_sequential.txt"
79
+ begin
80
+ File.write(file_dir, "#{sec}-#{par}")
81
+ rescue => error
82
+ system "sudo chmod go+w #{file_dir}"
83
+ chmoded += 1
84
+ retry if chmoded < 2
85
+ puts "FileWrite error #{error.message}"
86
+ puts "you should input $sudo chmod go+w #{file_dir}"
87
+ end
88
+ end
89
+
90
+ def get_final_history
91
+ final_history = ''
92
+ File.open("#{@datas_dir}/final_history_sequential.txt") do |f|
93
+ final_history = f.gets
94
+ end
95
+ final_sec = final_history.match(/(.*)\-/)[1].to_i
96
+ final_par = final_history.match(/\-(.*)/)[1].to_i
97
+ return final_sec, final_par
98
+ end
99
+
100
+ def get_next_question(final_sec, final_par)
101
+ if final_par == 3
102
+ next_sec = final_sec + 1
103
+ next_sec = 1 if next_sec >= 12
104
+ return next_sec, 1
105
+ else
106
+ return final_sec, final_par+1
107
+ end
108
+ end
109
+
110
+ end
@@ -0,0 +1,29 @@
1
+ require 'ruby_learner/common'
2
+ require 'ruby_learner/sequential_check'
3
+ require 'ruby_learner/rubocop_rspec_check'
4
+
5
+ class SequentialCheckReal < SequentialCheck
6
+ def initialize(x, y)
7
+ super
8
+ @theme_color = File.read("#{@datas_dir}/theme_color.txt").chomp
9
+ end
10
+
11
+ def action(sec, par)
12
+ start_time = Time.now
13
+ puts "section_#{sec}/part_#{par}"
14
+ mode_dir = "#{@gem_dir}/contents/questions/sequential_check/section_#{sec}/part_#{par}"
15
+ %w{lib/workplace.rb lib/sentence.org lib/answer.rb spec/workplace_spec.rb}.each do |path|
16
+ FileUtils.cp("#{mode_dir}/#{path}", "#{@workshop_dir}/#{path}")
17
+ end
18
+ system "cd #{@workshop_dir}/lib && emacs -nw -q -l #{@datas_dir}/.emacs.d/#{@theme_color}/init.el sentence.org workplace.rb"
19
+ write_final_history(sec, par)
20
+ elapsed_time = Common.allocate.time_check(start_time: start_time)
21
+ p "#{elapsed_time} sec"
22
+ restore = Restore.new
23
+ restore.save(file: "#{@workshop_dir}/lib/workplace.rb", elapsed_time: elapsed_time)
24
+ end
25
+
26
+ def last_re_action
27
+ system "cd #{@workshop_dir}/lib && emacs -nw -q -l #{@datas_dir}/.emacs.d/#{@theme_color}/init.el sentence.org workplace.rb"
28
+ end
29
+ end
@@ -1,3 +1,3 @@
1
1
  module RubyLearner
2
- VERSION = "1.2.6"
2
+ VERSION = "1.2.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_learner
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6
4
+ version: 1.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takaki Otsu
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-31 00:00:00.000000000 Z
11
+ date: 2018-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -123,6 +123,7 @@ files:
123
123
  - contents/datas/emacs_help.pdf
124
124
  - contents/datas/final_history_sequential.txt
125
125
  - contents/datas/install_emacs.sh
126
+ - contents/datas/sequential_mode.txt
126
127
  - contents/datas/theme_color.txt
127
128
  - contents/questions/random_check/.rspec
128
129
  - contents/questions/random_check/random_h.rb
@@ -388,27 +389,40 @@ files:
388
389
  - docs/happy_ruby/TanoshiiRuby_v5_c2-3.pdf
389
390
  - docs/happy_ruby/c2.ipynb
390
391
  - docs/happy_ruby/c3_4.ipynb
392
+ - docs/manual.org
391
393
  - docs/seminar/10-18.org
392
394
  - docs/seminar/10-18.rb
393
395
  - docs/seminar/8-1.org
394
396
  - docs/seminar/8-30.org
395
397
  - docs/seminar/9-16.org
398
+ - docs/seminar/9-27.org
396
399
  - docs/seminar/ruby_kansai_9-1.org
397
400
  - docs/seminar/seminer_9_20.org
398
- - docs/thesis/competing_services.org
399
- - docs/thesis/manual.org
400
- - docs/thesis/mid_term.pptx
401
- - docs/thesis/~$mid_term.pptx
402
- - docs/todo/9-27.org
401
+ - docs/thesis/final_presentation/IMRD/ctrlZ_fg_method.org
402
+ - docs/thesis/final_presentation/IMRD/why_not_web.org
403
+ - docs/thesis/midterm_presentation/others/5464_takaki_midterm.pptx
404
+ - docs/thesis/midterm_presentation/others/mid_term.pptx
405
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/.ruby_learner.tex.swp
406
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/jlisting.sty
407
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/rspec_rubocop.png
408
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.aux
409
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.dvi
410
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.log
411
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.md
412
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.pdf
413
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/ruby_learner.tex
414
+ - docs/thesis/midterm_presentation/ruby_learner_thesis/test.md
415
+ - docs/thesis/research/competing_services.org
403
416
  - exe/ruby_learner
404
417
  - lib/ruby_learner/.ruby-version
405
418
  - lib/ruby_learner/common.rb
419
+ - lib/ruby_learner/copspec.rb
406
420
  - lib/ruby_learner/pair_timer.rb
407
- - lib/ruby_learner/popup_per_time_for_background.rb
408
- - lib/ruby_learner/practice_datas.txt
421
+ - lib/ruby_learner/restore.rb
422
+ - lib/ruby_learner/rubocop_rspec_check.rb
409
423
  - lib/ruby_learner/ruby_learner.rb
410
- - lib/ruby_learner/sequential_main.rb
411
- - lib/ruby_learner/typing_practice.rb
424
+ - lib/ruby_learner/sequential_check.rb
425
+ - lib/ruby_learner/sequential_check_real.rb
412
426
  - lib/ruby_learner/version.rb
413
427
  - ruby_learner.gemspec
414
428
  homepage: ''
Binary file
@@ -1,14 +0,0 @@
1
- require 'open3'
2
-
3
- time = ARGV[0].to_i
4
-
5
- loop do
6
- sleep time
7
- system('afplay /System/Library/Sounds/Submarine.aiff')
8
- o, e, s = Open3.capture3("osascript -e 'tell app \"System Events\" to display dialog \"#{time}s passed.\nPut cancel to stop pair-mode.\nPut OK to continue pair-mode.\"'")
9
-
10
- if o != "button returned:OK\n"
11
- Open3.capture3("osascript -e 'tell app \"System Events\" to display dialog \"pair_popup_mode is stopped.\"'")
12
- break
13
- end
14
- end
File without changes
@@ -1,207 +0,0 @@
1
- require 'ruby_learner/typing_practice'
2
- require 'fileutils'
3
-
4
- class SequentialMain
5
-
6
- def initialize(gem_dir, local_dir)
7
- @gem_dir = gem_dir
8
- @local_dir = local_dir
9
- @workshop_dir = "#{local_dir}/workshop"
10
- @restore_dir = "#{local_dir}/restore"
11
- @datas_dir = "#{local_dir}/.datas"
12
- end
13
-
14
- def action(sec, par)
15
- puts "section_#{sec}/part_#{par}"
16
- seq_dir = "#{@gem_dir}/contents/questions/sequential_check/section_#{sec}/part_#{par}"
17
- typing_prac_class = TypingPractice.new(@local_dir, @gem_dir)
18
- typing_prac_class.prac_sequence(mode_dir: seq_dir)
19
- write_final_history(sec, par)
20
- end
21
-
22
- def last_re_action()
23
- final_sec, final_par = get_final_history()
24
- puts "section_#{final_sec}/part_#{final_par}"
25
- theme_color = ""
26
- File.open("#{@datas_dir}/theme_color.txt") do |f|
27
- theme_color = f.gets.chomp
28
- end
29
- emacs_dir = "#{@datas_dir}/.emacs.d/#{theme_color}"
30
- system "cd #{@workshop_dir}/lib && emacs -nw -q -l #{emacs_dir}/init.el sentence.org workplace.rb"
31
- start_time = Time.now
32
- typing_prac_class = TypingPractice.new(@local_dir, @gem_dir)
33
- typing_prac_class.typing_discriminant
34
- elapsed_time = Common.allocate.time_check(start_time: start_time)
35
- p "#{elapsed_time} sec"
36
- end
37
-
38
- def write_final_history(sec, par)
39
- chmoded = 0
40
- file_dir = "#{@datas_dir}/final_history_sequential.txt"
41
- begin
42
- File.write(file_dir, "#{sec}-#{par}")
43
- rescue => error
44
- system "sudo chmod go+w #{file_dir}"
45
- chmoded += 1
46
- retry if chmoded < 2
47
- puts "FileWrite error #{error.message}"
48
- puts "you should input $sudo chmod go+w #{file_dir}"
49
- end
50
- end
51
-
52
- def drill_contents
53
- puts "section \t part\t contents"
54
- puts "section_1\t 1~3\t standard_output"
55
- puts "section_2\t 1~3\t standard_input"
56
- puts "section_3\t 1~3\t standard_I/O summary"
57
- puts "section_4\t 1~3\t comparisons & conditionals"
58
- puts "section_5\t 1~3\t loop_methods"
59
- puts "section_6\t 1~3\t array & hash & symbol"
60
- puts "section_7\t 1~3\t function"
61
- puts "section_8\t 1~3\t class"
62
- puts "section_9\t 1~3\t regular_expression"
63
- puts "section_10\t 1~3\t file_operation"
64
- puts "section_11\t 1~3\t library"
65
- end
66
-
67
- def get_final_history()
68
- final_history = ''
69
- final_sec = 0
70
- final_par = 0
71
- Dir::chdir(@datas_dir){
72
- File.open("final_history_sequential.txt") do |f|
73
- final_history = f.gets
74
- end
75
- final_sec = final_history.match(/(.*)\-/)[1].to_i
76
- final_par = final_history.match(/\-(.*)/)[1].to_i
77
- }
78
- return final_sec, final_par
79
- end
80
-
81
- def get_next_question(final_sec, final_par)
82
- if final_sec == 1
83
- if final_par == 1
84
- next_sec = 1
85
- next_par = 2
86
- elsif final_par == 2
87
- next_sec = 1
88
- next_par = 3
89
- else
90
- next_sec = 2
91
- next_par = 1
92
- end
93
- elsif final_sec == 2
94
- if final_par == 1
95
- next_sec = 2
96
- next_par = 2
97
- elsif final_par == 2
98
- next_sec = 2
99
- next_par = 3
100
- else
101
- next_sec = 3
102
- next_par = 1
103
- end
104
- elsif final_sec == 3
105
- if final_par == 1
106
- next_sec = 3
107
- next_par = 2
108
- elsif final_par == 2
109
- next_sec = 3
110
- next_par = 3
111
- else
112
- next_sec = 4
113
- next_par = 1
114
- end
115
- elsif final_sec == 4
116
- if final_par == 1
117
- next_sec = 4
118
- next_par = 2
119
- elsif final_par == 2
120
- next_sec = 4
121
- next_par = 3
122
- else
123
- next_sec = 5
124
- next_par = 1
125
- end
126
- elsif final_sec == 5
127
- if final_par == 1
128
- next_sec = 5
129
- next_par = 2
130
- elsif final_par == 2
131
- next_sec = 5
132
- next_par = 3
133
- else
134
- next_sec = 6
135
- next_par = 1
136
- end
137
- elsif final_sec == 6
138
- if final_par == 1
139
- next_sec = 6
140
- next_par = 2
141
- elsif final_par == 2
142
- next_sec = 6
143
- next_par = 3
144
- else
145
- next_sec = 7
146
- next_par = 1
147
- end
148
- elsif final_sec == 7
149
- if final_par == 1
150
- next_sec = 7
151
- next_par = 2
152
- elsif final_par == 2
153
- next_sec = 7
154
- next_par = 3
155
- else
156
- next_sec = 8
157
- next_par = 1
158
- end
159
- elsif final_sec == 8
160
- if final_par == 1
161
- next_sec = 8
162
- next_par = 2
163
- elsif final_par == 2
164
- next_sec = 8
165
- next_par = 3
166
- else
167
- next_sec = 9
168
- next_par = 1
169
- end
170
- elsif final_sec == 9
171
- if final_par == 1
172
- next_sec = 9
173
- next_par = 2
174
- elsif final_par == 2
175
- next_sec = 9
176
- next_par = 3
177
- else
178
- next_sec = 10
179
- next_par = 1
180
- end
181
- elsif final_sec == 10
182
- if final_par == 1
183
- next_sec = 10
184
- next_par = 2
185
- elsif final_par == 2
186
- next_sec = 10
187
- next_par = 3
188
- else
189
- next_sec = 11
190
- next_par = 1
191
- end
192
- else
193
- if final_par == 1
194
- next_sec = 11
195
- next_par = 2
196
- elsif final_par == 2
197
- next_sec = 11
198
- next_par = 3
199
- else
200
- next_sec = 1
201
- next_par = 1
202
- end
203
- end
204
- return next_sec, next_par
205
- end
206
-
207
- end