diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r--[-rwxr-xr-x] | markov-analyse.rb | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | markov-generate.rb | 0 | ||||
-rwxr-xr-x | markov-repl.rb | 35 |
4 files changed, 36 insertions, 0 deletions
@@ -1,2 +1,3 @@ *.txt *.ser +*.swp diff --git a/markov-analyse.rb b/markov-analyse.rb index 6c306ca..6c306ca 100755..100644 --- a/markov-analyse.rb +++ b/markov-analyse.rb diff --git a/markov-generate.rb b/markov-generate.rb index 36d80a1..36d80a1 100755..100644 --- a/markov-generate.rb +++ b/markov-generate.rb diff --git a/markov-repl.rb b/markov-repl.rb new file mode 100755 index 0000000..624539f --- /dev/null +++ b/markov-repl.rb @@ -0,0 +1,35 @@ +#!/usr/bin/env ruby + +require './markov-analyse.rb' +require './markov-generate.rb' +require 'readline' + +$replstate = Hash.new + +def handle_input(inputs) + input = inputs.split + case input[0] + when 'load' + case input[1] + when 'corpus' + $replstate[:analyser] = Markov::Analyser.new(input[2], input[3].to_i) + when 'serial' + $replstate[:generator] = Markov::Generator.new(input[2]) + end + when 'analyse' + $replstate[:analyser].analyse + when 'save' + $replstate[:analyser].save(input[1]) + when 'generate' + $replstate[:generator].generate(input[1].to_i) + when 'quit' + puts + exit + end +end + +trap('INT'){puts; exit} + +while line = Readline.readline('>> ', true) do + handle_input(line) +end |