This class act as a wrapper around a tmux YAML layout file
Initialize a new layout from a hash
@param layout [Hash] the parsed layout @param options [Hash] some options
# File lib/teamocil/layout.rb, line 14 def initialize(layout, options={}) @layout = layout @options = options end
Compile the layout into objects
@return [Session]
# File lib/teamocil/layout.rb, line 29 def compile! if @layout["session"].nil? @session = Session.new @options, "windows" => @layout["windows"] else @session = Session.new @options, @layout["session"] end end
Execute each command in the shell
@param commands [Array] an array of complete commands to send to the shell
# File lib/teamocil/layout.rb, line 40 def execute_commands(commands) %x#{commands.join("; ")}` end
Generate tmux commands based on the data found in the layout file
@return [Array] an array of shell commands to send
# File lib/teamocil/layout.rb, line 22 def generate_commands @session.generate_commands end