class Utils::ConfigFile::SshTunnel
def copy_paste(enable = false, &block)
def copy_paste(enable = false, &block) if @copy_paste @copy_paste else if block @copy_paste = CopyPaste.new(&block) elsif enable @copy_paste = CopyPaste.new {} end end end
def initialize
def initialize super self.terminal_multiplexer = terminal_multiplexer end
def multiplexer_attach(session)
def multiplexer_attach(session) case @multiplexer when 'screen' 'screen -DUR "%s"' % session when 'tmux' 'tmux -u attach -d -t "%s"' % session end end
def multiplexer_list
def multiplexer_list case @multiplexer when 'screen' 'screen -ls' when 'tmux' 'tmux ls' end end
def multiplexer_new(session)
def multiplexer_new(session) case @multiplexer when 'screen' 'false' when 'tmux' 'tmux -u new -s "%s"' % session end end
def terminal_multiplexer=(terminal_multiplexer)
def terminal_multiplexer=(terminal_multiplexer) @multiplexer = terminal_multiplexer.to_s @multiplexer =~ /\A(screen|tmux)\z/ or fail "invalid terminal_multiplexer #{terminal_multiplexer.inspect} was configured" end