class Embulk::OutputVim

Public Class Methods

new(task, schema, index) click to toggle source
Calls superclass method
# File lib/embulk/output_vim.rb, line 10
def initialize(task, schema, index)
  @vim = `vim --serverlist`.lines.first
  raise "embulk-plugin-vim require gvim!" unless @vim
  @vim.chomp!
  system('vim', '--servername', @vim, '--remote-send', ":silent sp embulk.csv<cr>:%d<cr>")
  system('vim', '--servername', @vim, '--remote-expr', "append('$', '#{schema.map{|x| x.name}.join(",").gsub(/(['\\])/, '\\\1')}') ? '' : 'OK'")
  super
  @records = 0
end
transaction(config, schema, processor_count) { |{}| ... } click to toggle source
# File lib/embulk/output_vim.rb, line 5
def self.transaction(config, schema, processor_count, &control)
  commit_reports = yield({})
  return {}
end

Public Instance Methods

abort() click to toggle source
# File lib/embulk/output_vim.rb, line 33
def abort
end
add(page) click to toggle source
# File lib/embulk/output_vim.rb, line 23
def add(page)
  page.each do |record|
    system('vim', '--servername', @vim, '--remote-expr', "append('$', '#{record.join(",").gsub(/(['\\])/, '\\\1')}') ? '' : 'OK'")
    @records += 1 
  end
end
close() click to toggle source
# File lib/embulk/output_vim.rb, line 20
def close
end
commit() click to toggle source
# File lib/embulk/output_vim.rb, line 36
def commit
  system('vim', '--servername', @vim, '--remote-send', "ggdd<c-l>")
  return { "records" => @records }
end
finish() click to toggle source
# File lib/embulk/output_vim.rb, line 30
def finish
end