lib/sup/modes/text-mode.rb in sup-0.2 vs lib/sup/modes/text-mode.rb in sup-0.3

- old
+ new

@@ -1,16 +1,24 @@ module Redwood class TextMode < ScrollMode attr_reader :text + register_keymap do |k| + k.add :save_to_disk, "Save to disk", 's' + end def initialize text="" - @text = text.normalize_whitespace + @text = text update_lines buffer.mark_dirty if buffer super() end + + def save_to_disk + fn = BufferManager.ask_for_filename :filename, "Save to file: " + save_to_file(fn) { |f| f.puts text } if fn + end def text= t @text = t update_lines if buffer @@ -33,10 +41,10 @@ @lines.length - 1 end def [] i return nil unless i < @lines.length - @text[@lines[i] ... (i + 1 < @lines.length ? @lines[i + 1] - 1 : @text.length)] + @text[@lines[i] ... (i + 1 < @lines.length ? @lines[i + 1] - 1 : @text.length)].normalize_whitespace # (@lines[i] ... (i + 1 < @lines.length ? @lines[i + 1] - 1 : @text.length)).inspect end private