Initial commit

This commit is contained in:
Rémi Prévost 2011-09-26 08:43:21 -04:00
commit 12e8040f03
17 changed files with 2559 additions and 0 deletions

121
doc/Teamocil.html Normal file
View File

@ -0,0 +1,121 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Module: Teamocil
&mdash; Teamocil
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="_index.html">Index (T)</a> &raquo;
<span class="title">Teamocil</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><h1>Module: Teamocil
</h1>
<dl class="box">
<dt class="r1 last">Defined in:</dt>
<dd class="r1 last">lib/teamocil.rb<span class="defines">,<br />
lib/teamocil/cli.rb,<br /> lib/teamocil/layout.rb</span>
</dd>
</dl>
<div class="clear"></div>
<h2>Defined Under Namespace</h2>
<p class="children">
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Teamocil/CLI.html" title="Teamocil::CLI (class)">CLI</a></span>, <span class='object_link'><a href="Teamocil/Layout.html" title="Teamocil::Layout (class)">Layout</a></span>
</p>
<h2>Constant Summary</h2>
<dl class="constants">
<dt id="VERSION-constant" class="">VERSION =
</dt>
<dd><pre class="code"><span class='string val'>'0.1.9'</span>
</pre></dd>
</dl>
</div>
<div id="footer">
Generated on Mon Sep 26 08:42:34 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

438
doc/Teamocil/CLI.html Normal file
View File

@ -0,0 +1,438 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Class: Teamocil::CLI
&mdash; Teamocil
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '..';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="../_index.html">Index (C)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Teamocil.html" title="Teamocil (module)">Teamocil</a></span></span>
&raquo;
<span class="title">CLI</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><h1>Class: Teamocil::CLI
</h1>
<dl class="box">
<dt class="r1">Inherits:</dt>
<dd class="r1">
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Teamocil::CLI</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
<dt class="r2 last">Defined in:</dt>
<dd class="r2 last">lib/teamocil/cli.rb</dd>
</dl>
<div class="clear"></div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>This class handles interaction with the <code>tmux</code> utility.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#bail-instance_method" title="#bail (instance method)">- (Object) <strong>bail</strong>(msg) </a>
</span>
<span class="summary_desc"><div class='inline'><p>Print an error message and exit the utility.</p></div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">- (CLI) <strong>initialize</strong>(argv, env) </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>Initialize a new run of <code>tmux</code>.</p></div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#parse_options%21-instance_method" title="#parse_options! (instance method)">- (Object) <strong>parse_options!</strong> </a>
</span>
<span class="summary_desc"><div class='inline'><p>Parse the command line options.</p></div></span>
</li>
</ul>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<p class="signature first" id="initialize-instance_method">
- (<tt><span class='object_link'><a href="" title="Teamocil::CLI (class)">CLI</a></span></tt>) <strong>initialize</strong>(argv, env)
</p><div class="docstring">
<div class="discussion">
<p>Initialize a new run of <code>tmux</code></p>
</div>
</div>
<div class="tags">
<h3>Parameters:</h3>
<ul class="param">
<li>
<span class='name'>argv</span>
<span class='type'>(<tt>Hash</tt>)</span>
&mdash;
<div class='inline'><p>the command line parameters hash (usually <code>ARGV</code>).</p></div>
</li>
<li>
<span class='name'>env</span>
<span class='type'>(<tt>Hash</tt>)</span>
&mdash;
<div class='inline'><p>the environment variables hash (usually <code>ENV</code>).</p></div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/cli.rb', line 12</span>
<span class='def def kw'>def</span> <span class='initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='argv identifier id'>argv</span><span class='comma token'>,</span> <span class='env identifier id'>env</span><span class='rparen token'>)</span> <span class='comment val'># {{{</span>
<span class='bail identifier id'>bail</span> <span class='string val'>&quot;You must be in a tmux session to use teamocil&quot;</span> <span class='unless unless_mod kw'>unless</span> <span class='env identifier id'>env</span><span class='lbrack token'>[</span><span class='string val'>&quot;TMUX&quot;</span><span class='rbrack token'>]</span>
<span class='parse_options! fid id'>parse_options!</span>
<span class='if if kw'>if</span> <span class='@options ivar id'>@options</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='symbol val'>:layout</span><span class='rparen token'>)</span>
<span class='file identifier id'>file</span> <span class='assign token'>=</span> <span class='options identifier id'>options</span><span class='lbrack token'>[</span><span class='symbol val'>:layout</span><span class='rbrack token'>]</span>
<span class='else else kw'>else</span>
<span class='file identifier id'>file</span> <span class='assign token'>=</span> <span class='colon3 op'>::</span><span class='File constant id'>File</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='dstring node'>&quot;#{env[&quot;HOME&quot;]}/.teamocil&quot;</span><span class='comma token'>,</span> <span class='dstring node'>&quot;#{argv[0]}.yml&quot;</span><span class='rparen token'>)</span>
<span class='end end kw'>end</span>
<span class='if if kw'>if</span> <span class='@options ivar id'>@options</span><span class='lbrack token'>[</span><span class='symbol val'>:edit</span><span class='rbrack token'>]</span>
<span class='colon3 op'>::</span><span class='FileUtils constant id'>FileUtils</span><span class='dot token'>.</span><span class='touch identifier id'>touch</span> <span class='file identifier id'>file</span> <span class='unless unless_mod kw'>unless</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='exists? fid id'>exists?</span><span class='lparen token'>(</span><span class='file identifier id'>file</span><span class='rparen token'>)</span>
<span class='system identifier id'>system</span><span class='lparen token'>(</span><span class='dstring node'>&quot;$EDITOR \&quot;#{file}\&quot;&quot;</span><span class='rparen token'>)</span>
<span class='else else kw'>else</span>
<span class='bail identifier id'>bail</span> <span class='dstring node'>&quot;There is no file \&quot;#{file}\&quot;&quot;</span> <span class='unless unless_mod kw'>unless</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='exists? fid id'>exists?</span><span class='lparen token'>(</span><span class='file identifier id'>file</span><span class='rparen token'>)</span>
<span class='layout identifier id'>layout</span> <span class='assign token'>=</span> <span class='Teamocil constant id'>Teamocil</span><span class='colon2 op'>::</span><span class='Layout constant id'>Layout</span><span class='dot token'>.</span><span class='new identifier id'>new</span><span class='lparen token'>(</span><span class='file identifier id'>file</span><span class='comma token'>,</span> <span class='@options ivar id'>@options</span><span class='rparen token'>)</span>
<span class='layout identifier id'>layout</span><span class='dot token'>.</span><span class='to_tmux identifier id'>to_tmux</span>
<span class='end end kw'>end</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<p class="signature first" id="bail-instance_method">
- (<tt>Object</tt>) <strong>bail</strong>(msg)
</p><div class="docstring">
<div class="discussion">
<p>Print an error message and exit the utility</p>
</div>
</div>
<div class="tags">
<h3>Parameters:</h3>
<ul class="param">
<li>
<span class='name'>msg</span>
<span class='type'>(<tt>Mixed</tt>)</span>
&mdash;
<div class='inline'><p>something to print before exiting.</p></div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
59
60
61
62</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/cli.rb', line 59</span>
<span class='def def kw'>def</span> <span class='bail identifier id'>bail</span><span class='lparen token'>(</span><span class='msg identifier id'>msg</span><span class='rparen token'>)</span> <span class='comment val'># {{{</span>
<span class='puts identifier id'>puts</span> <span class='dstring node'>&quot;[teamocil] #{msg}&quot;</span>
<span class='exit identifier id'>exit</span> <span class='integer val'>1</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<p class="signature " id="parse_options!-instance_method">
- (<tt>Object</tt>) <strong>parse_options!</strong>
</p><div class="docstring">
<div class="discussion">
<p>Parse the command line options</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/cli.rb', line 33</span>
<span class='def def kw'>def</span> <span class='parse_options! fid id'>parse_options!</span>
<span class='@options ivar id'>@options</span> <span class='assign token'>=</span> <span class='lbrace token'>{</span><span class='rbrace token'>}</span>
<span class='opts identifier id'>opts</span> <span class='assign token'>=</span> <span class='colon3 op'>::</span><span class='OptionParser constant id'>OptionParser</span><span class='dot token'>.</span><span class='new identifier id'>new</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='opts identifier id'>opts</span><span class='bitor op'>|</span>
<span class='opts identifier id'>opts</span><span class='dot token'>.</span><span class='banner identifier id'>banner</span> <span class='assign token'>=</span> <span class='string val'>&quot;Usage: teamocil [options] &lt;layout&gt;
Options:
&quot;</span>
<span class='opts identifier id'>opts</span><span class='dot token'>.</span><span class='on identifier id'>on</span><span class='lparen token'>(</span><span class='string val'>&quot;--here&quot;</span><span class='comma token'>,</span> <span class='string val'>&quot;Set up the first window in the current window&quot;</span><span class='rparen token'>)</span> <span class='do do kw'>do</span>
<span class='@options ivar id'>@options</span><span class='lbrack token'>[</span><span class='symbol val'>:here</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='true true kw'>true</span>
<span class='end end kw'>end</span>
<span class='opts identifier id'>opts</span><span class='dot token'>.</span><span class='on identifier id'>on</span><span class='lparen token'>(</span><span class='string val'>&quot;--edit&quot;</span><span class='comma token'>,</span> <span class='string val'>&quot;Edit the YAML layout file instead of using it&quot;</span><span class='rparen token'>)</span> <span class='do do kw'>do</span>
<span class='@options ivar id'>@options</span><span class='lbrack token'>[</span><span class='symbol val'>:edit</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='true true kw'>true</span>
<span class='end end kw'>end</span>
<span class='opts identifier id'>opts</span><span class='dot token'>.</span><span class='on identifier id'>on</span><span class='lparen token'>(</span><span class='string val'>&quot;--layout [LAYOUT]&quot;</span><span class='comma token'>,</span> <span class='string val'>&quot;Use a specific layout file, instead of ~/.teamocil/&lt;layout&gt;.yml&quot;</span><span class='rparen token'>)</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='layout identifier id'>layout</span><span class='bitor op'>|</span>
<span class='@options ivar id'>@options</span><span class='lbrack token'>[</span><span class='symbol val'>:layout</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='layout identifier id'>layout</span>
<span class='end end kw'>end</span>
<span class='end end kw'>end</span>
<span class='opts identifier id'>opts</span><span class='dot token'>.</span><span class='parse! fid id'>parse!</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Mon Sep 26 08:42:35 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

515
doc/Teamocil/Layout.html Normal file
View File

@ -0,0 +1,515 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Class: Teamocil::Layout
&mdash; Teamocil
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '..';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="../_index.html">Index (L)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Teamocil.html" title="Teamocil (module)">Teamocil</a></span></span>
&raquo;
<span class="title">Layout</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><h1>Class: Teamocil::Layout
</h1>
<dl class="box">
<dt class="r1">Inherits:</dt>
<dd class="r1">
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Teamocil::Layout</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
<dt class="r2 last">Defined in:</dt>
<dd class="r2 last">lib/teamocil/layout.rb</dd>
</dl>
<div class="clear"></div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>This class act as a wrapper around a tmux YAML layout file.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#execute_commands-instance_method" title="#execute_commands (instance method)">- (Object) <strong>execute_commands</strong>(commands) </a>
</span>
<span class="summary_desc"><div class='inline'><p>Execute each command in the shell.</p></div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#generate_commands-instance_method" title="#generate_commands (instance method)">- (Object) <strong>generate_commands</strong> </a>
</span>
<span class="summary_desc"><div class='inline'><p>Generate tmux commands based on the data found in the layout file.</p></div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">- (Layout) <strong>initialize</strong>(file, options) </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>Initialize a new layout from a file.</p></div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#to_tmux-instance_method" title="#to_tmux (instance method)">- (Object) <strong>to_tmux</strong> </a>
</span>
<span class="summary_desc"><div class='inline'><p>Generate commands and sends them to tmux.</p></div></span>
</li>
</ul>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<p class="signature first" id="initialize-instance_method">
- (<tt><span class='object_link'><a href="" title="Teamocil::Layout (class)">Layout</a></span></tt>) <strong>initialize</strong>(file, options)
</p><div class="docstring">
<div class="discussion">
<p>Initialize a new layout from a file</p>
</div>
</div>
<div class="tags">
<h3>Parameters:</h3>
<ul class="param">
<li>
<span class='name'>file</span>
<span class='type'>(<tt>String</tt>)</span>
&mdash;
<div class='inline'><p>the complete layout file path</p></div>
</li>
<li>
<span class='name'>options</span>
<span class='type'>(<tt>Hash</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
9
10
11
12</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/layout.rb', line 9</span>
<span class='def def kw'>def</span> <span class='initialize identifier id'>initialize</span><span class='lparen token'>(</span><span class='file identifier id'>file</span><span class='comma token'>,</span> <span class='options identifier id'>options</span><span class='rparen token'>)</span> <span class='comment val'># {{{</span>
<span class='@layout ivar id'>@layout</span> <span class='assign token'>=</span> <span class='YAML constant id'>YAML</span><span class='dot token'>.</span><span class='load_file identifier id'>load_file</span><span class='lparen token'>(</span><span class='file identifier id'>file</span><span class='rparen token'>)</span>
<span class='@options ivar id'>@options</span> <span class='assign token'>=</span> <span class='options identifier id'>options</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<p class="signature first" id="execute_commands-instance_method">
- (<tt>Object</tt>) <strong>execute_commands</strong>(commands)
</p><div class="docstring">
<div class="discussion">
<p>Execute each command in the shell</p>
</div>
</div>
<div class="tags">
<h3>Parameters:</h3>
<ul class="param">
<li>
<span class='name'>commands</span>
<span class='type'>(<tt>Array</tt>)</span>
&mdash;
<div class='inline'><p>an array of complete commands to send to the shell</p></div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
73
74
75</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/layout.rb', line 73</span>
<span class='def def kw'>def</span> <span class='execute_commands identifier id'>execute_commands</span><span class='lparen token'>(</span><span class='commands identifier id'>commands</span><span class='rparen token'>)</span> <span class='comment val'># {{{</span>
<span class='dxstring node'>`#{commands.join(&quot;; &quot;)}`</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<p class="signature " id="generate_commands-instance_method">
- (<tt>Object</tt>) <strong>generate_commands</strong>
</p><div class="docstring">
<div class="discussion">
<p>Generate tmux commands based on the data found in the layout file</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/layout.rb', line 21</span>
<span class='def def kw'>def</span> <span class='generate_commands identifier id'>generate_commands</span>
<span class='output identifier id'>output</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='rbrack token'>]</span>
<span class='if if kw'>if</span> <span class='@layout ivar id'>@layout</span><span class='lbrack token'>[</span><span class='string val'>&quot;session&quot;</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='nil? fid id'>nil?</span>
<span class='windows identifier id'>windows</span> <span class='assign token'>=</span> <span class='@layout ivar id'>@layout</span><span class='lbrack token'>[</span><span class='string val'>&quot;windows&quot;</span><span class='rbrack token'>]</span>
<span class='else else kw'>else</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot;tmux rename-session #{@layout[&quot;session&quot;][&quot;name&quot;]}&quot;</span> <span class='if if_mod kw'>if</span> <span class='@layout ivar id'>@layout</span><span class='lbrack token'>[</span><span class='string val'>&quot;session&quot;</span><span class='rbrack token'>]</span><span class='lbrack token'>[</span><span class='string val'>&quot;name&quot;</span><span class='rbrack token'>]</span>
<span class='windows identifier id'>windows</span> <span class='assign token'>=</span> <span class='@layout ivar id'>@layout</span><span class='lbrack token'>[</span><span class='string val'>&quot;session&quot;</span><span class='rbrack token'>]</span><span class='lbrack token'>[</span><span class='string val'>&quot;windows&quot;</span><span class='rbrack token'>]</span>
<span class='end end kw'>end</span>
<span class='windows identifier id'>windows</span><span class='dot token'>.</span><span class='each_with_index identifier id'>each_with_index</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='window identifier id'>window</span><span class='comma token'>,</span> <span class='window_index identifier id'>window_index</span><span class='bitor op'>|</span>
<span class='if if kw'>if</span> <span class='@options ivar id'>@options</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='symbol val'>:here</span><span class='rparen token'>)</span> <span class='and and kw'>and</span> <span class='window_index identifier id'>window_index</span> <span class='eq op'>==</span> <span class='integer val'>0</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot;tmux rename-window \&quot;#{window[&quot;name&quot;]}\&quot;&quot;</span>
<span class='else else kw'>else</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot;tmux new-window -n \&quot;#{window[&quot;name&quot;]}\&quot;&quot;</span>
<span class='end end kw'>end</span>
<span class='window identifier id'>window</span><span class='lbrack token'>[</span><span class='string val'>&quot;splits&quot;</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='each_with_index identifier id'>each_with_index</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='split identifier id'>split</span><span class='comma token'>,</span> <span class='index identifier id'>index</span><span class='bitor op'>|</span>
<span class='unless unless kw'>unless</span> <span class='index identifier id'>index</span> <span class='eq op'>==</span> <span class='integer val'>0</span>
<span class='if if kw'>if</span> <span class='split identifier id'>split</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='string val'>&quot;width&quot;</span><span class='rparen token'>)</span>
<span class='cmd identifier id'>cmd</span> <span class='assign token'>=</span> <span class='dstring node'>&quot;tmux split-window -h -p #{split[&quot;width&quot;]}&quot;</span>
<span class='elsif elsif kw'>elsif</span> <span class='split identifier id'>split</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='string val'>&quot;height&quot;</span><span class='rparen token'>)</span>
<span class='cmd identifier id'>cmd</span> <span class='assign token'>=</span> <span class='dstring node'>&quot;tmux split-window -p #{split[&quot;height&quot;]}&quot;</span>
<span class='else else kw'>else</span>
<span class='cmd identifier id'>cmd</span> <span class='assign token'>=</span> <span class='string val'>&quot;tmux split-window&quot;</span>
<span class='end end kw'>end</span>
<span class='cmd identifier id'>cmd</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot; -t #{split[&quot;target&quot;]}&quot;</span> <span class='if if_mod kw'>if</span> <span class='split identifier id'>split</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='string val'>&quot;target&quot;</span><span class='rparen token'>)</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='cmd identifier id'>cmd</span>
<span class='end end kw'>end</span>
<span class='comment val'># Support single command splits, but treat it as an array nevertheless</span>
<span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span><span class='rbrack token'>]</span> <span class='unless unless_mod kw'>unless</span> <span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='is_a? fid id'>is_a?</span> <span class='Array constant id'>Array</span>
<span class='comment val'># If a `root` key exist, start each split in this directory</span>
<span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='dstring node'>&quot;cd \&quot;#{window[&quot;root&quot;]}\&quot;&quot;</span><span class='rbrack token'>]</span> <span class='plus op'>+</span> <span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span> <span class='if if_mod kw'>if</span> <span class='window identifier id'>window</span><span class='dot token'>.</span><span class='include? fid id'>include?</span><span class='lparen token'>(</span><span class='string val'>&quot;root&quot;</span><span class='rparen token'>)</span>
<span class='comment val'># Execute each split command</span>
<span class='split identifier id'>split</span><span class='lbrack token'>[</span><span class='string val'>&quot;cmd&quot;</span><span class='rbrack token'>]</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='command identifier id'>command</span><span class='bitor op'>|</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot;tmux send-keys -t #{index} \&quot;#{command}\&quot;&quot;</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='dstring node'>&quot;tmux send-keys -t #{index} Enter&quot;</span>
<span class='end end kw'>end</span>
<span class='end end kw'>end</span>
<span class='end end kw'>end</span>
<span class='output identifier id'>output</span> <span class='lshft op'>&lt;&lt;</span> <span class='string val'>&quot;tmux select-pane -t 0&quot;</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<p class="signature " id="to_tmux-instance_method">
- (<tt>Object</tt>) <strong>to_tmux</strong>
</p><div class="docstring">
<div class="discussion">
<p>Generate commands and sends them to tmux</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
15
16
17
18</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/teamocil/layout.rb', line 15</span>
<span class='def def kw'>def</span> <span class='to_tmux identifier id'>to_tmux</span>
<span class='commands identifier id'>commands</span> <span class='assign token'>=</span> <span class='generate_commands identifier id'>generate_commands</span>
<span class='execute_commands identifier id'>execute_commands</span><span class='lparen token'>(</span><span class='commands identifier id'>commands</span><span class='rparen token'>)</span>
<span class='end end kw'>end</span>
</pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Mon Sep 26 08:42:34 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

136
doc/_index.html Normal file
View File

@ -0,0 +1,136 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Teamocil
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<span class="title"></span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><h1 class="noborder title">Teamocil</h1>
<div id="listing">
<h1 class="alphaindex">Alphabetic Index</h1>
<h2>File Listing</h2>
<ul id="files">
<li class="r1"><a href="index.html" title="README">README</a></li>
</ul>
<div class="clear"></div>
<h2>Namespace Listing A-Z</h2>
<table>
<tr>
<td valign='top' width="33%">
<ul id="alpha_C" class="alpha">
<li class="letter">C</li>
<ul>
<li>
<span class='object_link'><a href="Teamocil/CLI.html" title="Teamocil::CLI (class)">CLI</a></span>
<small>(Teamocil)</small>
</li>
</ul>
</ul>
<ul id="alpha_L" class="alpha">
<li class="letter">L</li>
<ul>
<li>
<span class='object_link'><a href="Teamocil/Layout.html" title="Teamocil::Layout (class)">Layout</a></span>
<small>(Teamocil)</small>
</li>
</ul>
</ul>
<ul id="alpha_T" class="alpha">
<li class="letter">T</li>
<ul>
<li>
<span class='object_link'><a href="Teamocil.html" title="Teamocil (module)">Teamocil</a></span>
</li>
</ul>
</ul>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated on Mon Sep 26 08:42:34 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

47
doc/class_list.html Normal file
View File

@ -0,0 +1,47 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<base id="base_target" target="_parent" />
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) {
document.getElementById('base_target').target = 'main';
document.body.className = 'frames';
}
</script>
<div id="content">
<h1 id="full_list_header">Class List</h1>
<div id="nav">
<a target="_self" href="class_list.html">Classes</a>
<a target="_self" href="method_list.html">Methods</a>
<a target="_self" href="file_list.html">Files</a>
</div>
<div id="search">Search: <input type="text" /></div>
<ul id="full_list" class="class">
<li><span class='object_link'><a href="top-level-namespace.html" title=" (root)">Top Level Namespace</a></span></li>
<li><a class='toggle'></a> <span class='object_link'><a href="Teamocil.html" title="Teamocil (module)">Teamocil</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="Teamocil/CLI.html" title="Teamocil::CLI (class)">CLI</a></span> &lt; Object<small class='search_info'>Teamocil</small></li><li><span class='object_link'><a href="Teamocil/Layout.html" title="Teamocil::Layout (class)">Layout</a></span> &lt; Object<small class='search_info'>Teamocil</small></li></ul>
</ul>
</div>
</body>
</html>

1
doc/css/common.css Normal file
View File

@ -0,0 +1 @@
/* Override this file with custom rules */

53
doc/css/full_list.css Normal file
View File

@ -0,0 +1,53 @@
body {
margin: 0;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
height: 101%;
overflow-x: hidden;
}
h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; }
.clear { clear: both; }
#search { position: absolute; right: 5px; top: 9px; padding-left: 24px; }
#content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; }
#full_list { padding: 0; list-style: none; margin-left: 0; }
#full_list ul { padding: 0; }
#full_list li { padding: 5px; padding-left: 12px; margin: 0; font-size: 1.1em; list-style: none; }
#noresults { padding: 7px 12px; }
#content.insearch #noresults { margin-left: 7px; }
ul.collapsed ul, ul.collapsed li { display: none; }
li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; }
li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; }
li { color: #888; cursor: pointer; }
li.deprecated { text-decoration: line-through; font-style: italic; }
li.r1 { background: #f0f0f0; }
li.r2 { background: #fafafa; }
li:hover { background: #ddd; }
li small:before { content: "("; }
li small:after { content: ")"; }
li small.search_info { display: none; }
a:link, a:visited { text-decoration: none; color: #05a; }
li.clicked { background: #05a; color: #ccc; }
li.clicked a:link, li.clicked a:visited { color: #eee; }
li.clicked a.toggle { opacity: 0.5; background-position: bottom right; }
li.collapsed.clicked a.toggle { background-position: top right; }
#search input { border: 1px solid #bbb; -moz-border-radius: 3px; -webkit-border-radius: 3px; }
#nav { margin-left: 10px; font-size: 0.9em; display: none; color: #aaa; }
#nav a:link, #nav a:visited { color: #358; }
#nav a:hover { background: transparent; color: #5af; }
.frames #content h1 { margin-top: 0; }
.frames li { white-space: nowrap; cursor: normal; }
.frames li small { display: block; font-size: 0.8em; }
.frames li small:before { content: ""; }
.frames li small:after { content: ""; }
.frames li small.search_info { display: none; }
.frames #search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; }
.frames #content.insearch #search { background-position: center right; }
.frames #search input { width: 110px; }
.frames #nav { display: block; }
#full_list.insearch li { display: none; }
#full_list.insearch li.found { display: list-item; padding-left: 10px; }
#full_list.insearch li a.toggle { display: none; }
#full_list.insearch li small.search_info { display: block; }

320
doc/css/style.css Normal file
View File

@ -0,0 +1,320 @@
body {
padding: 0 20px;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
}
body.frames { padding: 0 5px; }
h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
h1.title { margin-bottom: 10px; }
h1.alphaindex { margin-top: 0; font-size: 22px; }
h2 {
padding: 0;
padding-bottom: 3px;
border-bottom: 1px #aaa solid;
font-size: 1.4em;
margin: 1.8em 0 0.5em;
}
h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right; }
.clear { clear: both; }
.inline { display: inline; }
.inline p:first-child { display: inline; }
.docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
.docstring h1 { font-size: 1.2em; }
.docstring h2 { font-size: 1.1em; }
.docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
.summary_desc .object_link, .docstring .object_link { font-family: monospace; }
/* style for <ul> */
#filecontents li > p, .docstring li > p { margin: 0px; }
#filecontents ul, .docstring ul { padding-left: 20px; }
/* style for <dl> */
#filecontents dl, .docstring dl { border: 1px solid #ccc; }
#filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
#filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
#filecontents dd > p, .docstring dd > p { margin: 0px; }
.note {
color: #222;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
display: block;
}
.note.todo { background: #ffffc5; border-color: #ececaa; }
.note.returns_void { background: #efefef; }
.note.deprecated { background: #ffe5e5; border-color: #e9dada; }
.note.private { background: #ffffc5; border-color: #ececaa; }
.note.title { text-transform: lowercase; padding: 1px 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
.summary_signature + .note.title { margin-left: 7px; }
h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
.discussion .note { margin-top: 6px; }
.discussion .note:first-child { margin-top: 0; }
h3.inherited {
font-style: italic;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-weight: normal;
padding: 0;
margin: 0;
margin-top: 12px;
margin-bottom: 3px;
font-size: 13px;
}
p.inherited {
padding: 0;
margin: 0;
margin-left: 25px;
}
#filecontents dl.box, dl.box {
border: 0;
width: 520px;
font-size: 1em;
}
#filecontents dl.box dt, dl.box dt {
float: left;
display: block;
width: 100px;
margin: 0;
text-align: right;
font-weight: bold;
background: transparent;
border: 1px solid #aaa;
border-width: 1px 0px 0px 1px;
padding: 6px 0;
padding-right: 10px;
}
#filecontents dl.box dd, dl.box dd {
float: left;
display: block;
width: 380px;
margin: 0;
padding: 6px 0;
padding-right: 20px;
border: 1px solid #aaa;
border-width: 1px 1px 0 0;
}
#filecontents dl.box .last, dl.box .last {
border-bottom: 1px solid #aaa;
}
#filecontents dl.box .r1, dl.box .r1 { background: #eee; }
ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
#files { padding-left: 15px; font-size: 1.1em; }
#files { padding: 0; }
#files li { list-style: none; display: inline; padding: 7px 12px; line-height: 35px; }
dl.constants { margin-left: 40px; }
dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
.summary_desc { margin-left: 32px; display: block; font-family: sans-serif; }
.summary_desc tt { font-size: 0.9em; }
dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
dl.constants .discussion *:first-child { margin-top: 0; }
dl.constants .discussion *:last-child { margin-bottom: 0; }
.method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
.method_details.first { border: 0; }
p.signature {
font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
padding: 6px 10px; margin-top: 18px;
background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
}
p.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
p.signature .overload { display: block; }
p.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
p.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
p.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
.tags h3 { font-size: 1em; margin-bottom: 0; }
.tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
.tags ul li { margin-bottom: 3px; }
.tags ul .name { font-family: monospace; font-weight: bold; }
.tags ul .note { padding: 3px 6px; }
.tags { margin-bottom: 12px; }
.tags .examples h3 { margin-bottom: 10px; }
.tags .examples h4 { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
.tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
.tags .overload .overload_item .signature {
padding: 2px 8px;
background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
}
.tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
.tags .overload .docstring { margin-top: 15px; }
.defines { display: none; }
#method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
.showSource { font-size: 0.9em; }
.showSource a:link, .showSource a:visited { text-decoration: none; color: #666; }
#content a:link, #content a:visited { text-decoration: none; color: #05a; }
#content a:hover { background: #ffffa5; }
.docstring { margin-right: 6em; }
ul.summary {
list-style: none;
font-family: monospace;
font-size: 1em;
line-height: 1.5em;
}
ul.summary a:link, ul.summary a:visited {
text-decoration: none; font-size: 1.1em;
}
ul.summary li { margin-bottom: 5px; }
.summary .summary_signature {
padding: 1px 10px;
background: #eaeaff; border: 1px solid #dfdfe5;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
}
.summary_signature:hover { background: #eeeeff; cursor: pointer; }
ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
#content .summary_signature:hover a:link,
#content .summary_signature:hover a:visited {
background: transparent;
color: #48f;
}
p.inherited a { font-family: monospace; font-size: 0.9em; }
p.inherited { word-spacing: 5px; font-size: 1.2em; }
p.children { font-size: 1.2em; }
p.children a { font-size: 0.9em; }
p.children strong { font-size: 0.8em; }
p.children strong.modules { padding-left: 5px; }
ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
ul.fullTree li:first-child { padding-top: 0; background: transparent; }
ul.fullTree li:last-child { padding-bottom: 0; }
.showAll ul.fullTree { display: block; }
.showAll .inheritName { display: none; }
#search { position: absolute; right: 14px; top: 0px; }
#search a:link, #search a:visited {
display: block; float: left; margin-right: 4px;
padding: 8px 10px; text-decoration: none; color: #05a;
border: 1px solid #d8d8e5;
-moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
-webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
background: #eaf0ff;
-webkit-box-shadow: -1px 1px 3px #ddd;
}
#search a:hover { background: #f5faff; color: #06b; }
#search a.active {
background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
-moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
-webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
}
#search a.inactive { color: #999; }
.frames #search { display: none; }
.inheritanceTree, .toggleDefines { float: right; }
#menu { font-size: 1.3em; color: #bbb; top: -5px; position: relative; }
#menu .title, #menu a { font-size: 0.7em; }
#menu .title a { font-size: 1em; }
#menu .title { color: #555; }
#menu a:link, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
#menu a:hover { color: #05a; }
#menu .noframes { display: none; }
.frames #menu .noframes { display: inline; float: right; }
#footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
#footer a:link, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
#footer a:hover { color: #05a; }
#listing ul.alpha { font-size: 1.1em; }
#listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
#listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
#listing ul.alpha ul { margin: 0; padding-left: 15px; }
#listing ul small { color: #666; font-size: 0.7em; }
li.r1 { background: #f0f0f0; }
li.r2 { background: #fafafa; }
#search_frame {
z-index: 9999;
background: #fff;
display: none;
position: absolute;
top: 36px;
right: 18px;
width: 500px;
height: 80%;
overflow-y: scroll;
border: 1px solid #999;
border-collapse: collapse;
-webkit-box-shadow: -7px 5px 25px #aaa;
-moz-box-shadow: -7px 5px 25px #aaa;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
}
#content ul.summary li.deprecated .summary_signature a:link,
#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
#toc {
padding: 20px; padding-right: 30px; border: 1px solid #ddd; float: right; background: #fff; margin-left: 20px; margin-bottom: 20px;
max-width: 300px;
-webkit-box-shadow: -2px 2px 6px #bbb;
-moz-box-shadow: -2px 2px 6px #bbb;
z-index: 5000;
position: relative;
}
#toc.nofloat { float: none; max-width: none; border: none; padding: 0; margin: 20px 0; -webkit-box-shadow: none; -moz-box-shadow: none; }
#toc.nofloat.hidden { padding: 0; background: 0; margin-bottom: 5px; }
#toc .title { margin: 0; }
#toc ol { padding-left: 1.8em; }
#toc li { font-size: 1.1em; line-height: 1.7em; }
#toc > ol > li { font-size: 1.1em; font-weight: bold; }
#toc ol > ol { font-size: 0.9em; }
#toc ol ol > ol { padding-left: 2.3em; }
#toc ol + li { margin-top: 0.3em; }
#toc.hidden { padding: 10px; background: #f6f6f6; -webkit-box-shadow: none; -moz-box-shadow: none; }
#filecontents h1 + #toc.nofloat { margin-top: 0; }
/* syntax highlighting */
.source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
#filecontents pre.code, .docstring pre.code { display: block; }
.source_code .lines { padding-right: 12px; color: #555; text-align: right; }
#filecontents pre.code, .docstring pre.code,
.tags .example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
pre.code { color: #000; }
pre.code .info.file { color: #555; }
pre.code .val { color: #036A07; }
pre.code .tstring_content,
pre.code .heredoc_beg, pre.code .heredoc_end,
pre.code .qwords_beg, pre.code .qwords_end,
pre.code .tstring, pre.code .dstring { color: #036A07; }
pre.code .fid, pre.code .id.new, pre.code .id.to_s,
pre.code .id.to_sym, pre.code .id.to_f,
pre.code .dot + pre.code .id,
pre.code .id.to_i pre.code .id.each { color: #0085FF; }
pre.code .comment { color: #0066FF; }
pre.code .const, pre.code .constant { color: #585CF6; }
pre.code .symbol { color: #C5060B; }
pre.code .kw,
pre.code .label,
pre.code .id.require,
pre.code .id.extend,
pre.code .id.include { color: #0000FF; }
pre.code .ivar { color: #318495; }
pre.code .gvar,
pre.code .id.backref,
pre.code .id.nth_ref { color: #6D79DE; }
pre.code .regexp, .dregexp { color: #036A07; }
pre.code a { border-bottom: 1px dotted #bbf; }

145
doc/file.README.html Normal file
View File

@ -0,0 +1,145 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
File: README
&mdash; Teamocil
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="_index.html" title="Index">Index</a> &raquo;
<span class="title">File: README</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><div id='filecontents'><h1 id='teamocil'>Teamocil</h1>
<p>Teamocil is a tool used to automatically create sessions, windows and splits in <code>tmux</code> with Ruby and YAML. Like <a href='https://github.com/aziz/tmuxinator'>tmuxinator</a>, but with splits, not just windows.</p>
<h2 id='usage'>Usage</h2>
<pre class="code">$ <span class='gem identifier id'>gem</span> <span class='install identifier id'>install</span> <span class='teamocil identifier id'>teamocil</span>
$ <span class='mkdir identifier id'>mkdir</span> <span class='bitnot op'>~</span><span class='regexp val'>/.teamocil
$ touch ~/</span><span class='dot token'>.</span><span class='teamocil identifier id'>teamocil</span><span class='div op'>/</span><span class='sample identifier id'>sample</span><span class='dot token'>.</span><span class='yml identifier id'>yml</span>
$ <span class='tmux identifier id'>tmux</span>
$ <span class='teamocil identifier id'>teamocil</span> <span class='sample identifier id'>sample</span>
</pre>
<h2 id='options'>Options</h2>
<ul>
<li><code>--here</code> opens the session in the current window, it doesnt create an empty first window.</li>
<li><code>--layout</code> takes a custom file path to a YAML layout file.</li>
<li><code>--edit</code> opens the layout file (whether or not <code>--layout</code> is used) with <code>$EDITOR</code>.</li>
</ul>
<h2 id='layout_example'>Layout example</h2>
<pre class="code"><span class='comment val'># ~/.teamocil/sample.yml</span>
<span class='session identifier id'>session</span><span class='colon op'>:</span>
<span class='name identifier id'>name</span><span class='colon op'>:</span> <span class='sample identifier id'>sample</span><span class='minus op'>-</span><span class='session identifier id'>session</span>
<span class='windows identifier id'>windows</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='name identifier id'>name</span><span class='colon op'>:</span> <span class='sample identifier id'>sample</span><span class='minus op'>-</span><span class='window identifier id'>window</span>
<span class='root identifier id'>root</span><span class='colon op'>:</span> <span class='bitnot op'>~</span><span class='regexp val'>/Code/s</span><span class='ample identifier id'>ample</span><span class='div op'>/</span><span class='www identifier id'>www</span>
<span class='splits identifier id'>splits</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='ls identifier id'>ls</span> <span class='minus op'>-</span><span class='la identifier id'>la</span>
<span class='minus op'>-</span> <span class='git identifier id'>git</span> <span class='status identifier id'>status</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span> <span class='rails identifier id'>rails</span> <span class='server identifier id'>server</span> <span class='minus op'>-</span><span class='minus op'>-</span><span class='port identifier id'>port</span> <span class='integer val'>3000</span>
<span class='width identifier id'>width</span><span class='colon op'>:</span> <span class='integer val'>50</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span> <span class='memcached identifier id'>memcached</span> <span class='minus op'>-</span><span class='p identifier id'>p</span> <span class='integer val'>11211</span> <span class='minus op'>-</span><span class='vv identifier id'>vv</span>
<span class='height identifier id'>height</span><span class='colon op'>:</span> <span class='integer val'>25</span>
<span class='target identifier id'>target</span><span class='colon op'>:</span> <span class='bottom identifier id'>bottom</span><span class='minus op'>-</span><span class='right identifier id'>right</span>
</pre>
<p>Running <code>$ teamocil sample</code> will rename the session to <code>sample-session</code> and create a new window named <code>sample-window</code> with a layout like this:</p>
<pre class="code"><span class='dot token'>.</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='dot token'>.</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='dot token'>.</span>
<span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>0</span><span class='rparen token'>)</span> <span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>1</span><span class='rparen token'>)</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>2</span><span class='rparen token'>)</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='string val'>'------------------'</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='string val'>'
</span></pre>
<h2 id='extras'>Extras</h2>
<h3 id='zsh_autocompletion'>Zsh autocompletion</h3>
<p>To get autocompletion when typing <code>teamocil &lt;Tab&gt;</code> in a zsh session, add this line to your <code>~/.zshrc</code> file:</p>
<pre class="code"><span class='compctl identifier id'>compctl</span> <span class='minus op'>-</span><span class='g identifier id'>g</span> <span class='string val'>'~/.teamocil/*(:t:r)'</span> <span class='teamocil identifier id'>teamocil</span>
</pre>
<h2 id='contributors'>Contributors</h2>
<p>Feel free to contribute and submit pull requests!</p>
<ul>
<li>Samuel Garneau (<a href='https://github.com/garno'>garno</a>)</li>
<li>Jimmy Bourassa (<a href='https://github.com/jbourassa'>jbourassa</a>)</li>
</ul>
<h2 id='license'>License</h2>
<p>Teamocil is © 2011 Rémi Prévost and may be freely distributed under the <a href='http://litl.info/'>LITL license</a>. See the <code>LICENSE</code> file.</p></div></div>
<div id="footer">
Generated on Mon Sep 26 08:42:34 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

49
doc/file_list.html Normal file
View File

@ -0,0 +1,49 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<base id="base_target" target="_parent" />
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) {
document.getElementById('base_target').target = 'main';
document.body.className = 'frames';
}
</script>
<div id="content">
<h1 id="full_list_header">File List</h1>
<div id="nav">
<a target="_self" href="class_list.html">Classes</a>
<a target="_self" href="method_list.html">Methods</a>
<a target="_self" href="file_list.html">Files</a>
</div>
<div id="search">Search: <input type="text" /></div>
<ul id="full_list" class="files">
<li class="r1"><a href="index.html" title="README">README</a></li>
</ul>
</div>
</body>
</html>

13
doc/frames.html Normal file
View File

@ -0,0 +1,13 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Teamocil</title>
</head>
<frameset cols="20%,*">
<frame name="list" src="class_list.html" />
<frame name="main" src="index.html" />
</frameset>
</html>

145
doc/index.html Normal file
View File

@ -0,0 +1,145 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
File: README
&mdash; Teamocil
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="_index.html" title="Index">Index</a> &raquo;
<span class="title">File: README</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><div id='filecontents'><h1 id='teamocil'>Teamocil</h1>
<p>Teamocil is a tool used to automatically create sessions, windows and splits in <code>tmux</code> with Ruby and YAML. Like <a href='https://github.com/aziz/tmuxinator'>tmuxinator</a>, but with splits, not just windows.</p>
<h2 id='usage'>Usage</h2>
<pre class="code">$ <span class='gem identifier id'>gem</span> <span class='install identifier id'>install</span> <span class='teamocil identifier id'>teamocil</span>
$ <span class='mkdir identifier id'>mkdir</span> <span class='bitnot op'>~</span><span class='regexp val'>/.teamocil
$ touch ~/</span><span class='dot token'>.</span><span class='teamocil identifier id'>teamocil</span><span class='div op'>/</span><span class='sample identifier id'>sample</span><span class='dot token'>.</span><span class='yml identifier id'>yml</span>
$ <span class='tmux identifier id'>tmux</span>
$ <span class='teamocil identifier id'>teamocil</span> <span class='sample identifier id'>sample</span>
</pre>
<h2 id='options'>Options</h2>
<ul>
<li><code>--here</code> opens the session in the current window, it doesnt create an empty first window.</li>
<li><code>--layout</code> takes a custom file path to a YAML layout file.</li>
<li><code>--edit</code> opens the layout file (whether or not <code>--layout</code> is used) with <code>$EDITOR</code>.</li>
</ul>
<h2 id='layout_example'>Layout example</h2>
<pre class="code"><span class='comment val'># ~/.teamocil/sample.yml</span>
<span class='session identifier id'>session</span><span class='colon op'>:</span>
<span class='name identifier id'>name</span><span class='colon op'>:</span> <span class='sample identifier id'>sample</span><span class='minus op'>-</span><span class='session identifier id'>session</span>
<span class='windows identifier id'>windows</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='name identifier id'>name</span><span class='colon op'>:</span> <span class='sample identifier id'>sample</span><span class='minus op'>-</span><span class='window identifier id'>window</span>
<span class='root identifier id'>root</span><span class='colon op'>:</span> <span class='bitnot op'>~</span><span class='regexp val'>/Code/s</span><span class='ample identifier id'>ample</span><span class='div op'>/</span><span class='www identifier id'>www</span>
<span class='splits identifier id'>splits</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span>
<span class='minus op'>-</span> <span class='ls identifier id'>ls</span> <span class='minus op'>-</span><span class='la identifier id'>la</span>
<span class='minus op'>-</span> <span class='git identifier id'>git</span> <span class='status identifier id'>status</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span> <span class='rails identifier id'>rails</span> <span class='server identifier id'>server</span> <span class='minus op'>-</span><span class='minus op'>-</span><span class='port identifier id'>port</span> <span class='integer val'>3000</span>
<span class='width identifier id'>width</span><span class='colon op'>:</span> <span class='integer val'>50</span>
<span class='minus op'>-</span> <span class='cmd identifier id'>cmd</span><span class='colon op'>:</span> <span class='memcached identifier id'>memcached</span> <span class='minus op'>-</span><span class='p identifier id'>p</span> <span class='integer val'>11211</span> <span class='minus op'>-</span><span class='vv identifier id'>vv</span>
<span class='height identifier id'>height</span><span class='colon op'>:</span> <span class='integer val'>25</span>
<span class='target identifier id'>target</span><span class='colon op'>:</span> <span class='bottom identifier id'>bottom</span><span class='minus op'>-</span><span class='right identifier id'>right</span>
</pre>
<p>Running <code>$ teamocil sample</code> will rename the session to <code>sample-session</code> and create a new window named <code>sample-window</code> with a layout like this:</p>
<pre class="code"><span class='dot token'>.</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='dot token'>.</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='dot token'>.</span>
<span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>0</span><span class='rparen token'>)</span> <span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>1</span><span class='rparen token'>)</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='lparen token'>(</span><span class='integer val'>2</span><span class='rparen token'>)</span> <span class='bitor op'>|</span>
<span class='bitor op'>|</span> <span class='bitor op'>|</span> <span class='bitor op'>|</span>
<span class='string val'>'------------------'</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='minus op'>-</span><span class='string val'>'
</span></pre>
<h2 id='extras'>Extras</h2>
<h3 id='zsh_autocompletion'>Zsh autocompletion</h3>
<p>To get autocompletion when typing <code>teamocil &lt;Tab&gt;</code> in a zsh session, add this line to your <code>~/.zshrc</code> file:</p>
<pre class="code"><span class='compctl identifier id'>compctl</span> <span class='minus op'>-</span><span class='g identifier id'>g</span> <span class='string val'>'~/.teamocil/*(:t:r)'</span> <span class='teamocil identifier id'>teamocil</span>
</pre>
<h2 id='contributors'>Contributors</h2>
<p>Feel free to contribute and submit pull requests!</p>
<ul>
<li>Samuel Garneau (<a href='https://github.com/garno'>garno</a>)</li>
<li>Jimmy Bourassa (<a href='https://github.com/jbourassa'>jbourassa</a>)</li>
</ul>
<h2 id='license'>License</h2>
<p>Teamocil is © 2011 Rémi Prévost and may be freely distributed under the <a href='http://litl.info/'>LITL license</a>. See the <code>LICENSE</code> file.</p></div></div>
<div id="footer">
Generated on Mon Sep 26 08:42:34 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>

205
doc/js/app.js Normal file
View File

@ -0,0 +1,205 @@
function createSourceLinks() {
$('.method_details_list .source_code').
before("<span class='showSource'>[<a href='#' class='toggleSource'>View source</a>]</span>");
$('.toggleSource').toggle(function() {
$(this).parent().next().slideDown(100);
$(this).text("Hide source");
},
function() {
$(this).parent().next().slideUp(100);
$(this).text("View source");
});
}
function createDefineLinks() {
var tHeight = 0;
$('.defines').after(" <a href='#' class='toggleDefines'>more...</a>");
$('.toggleDefines').toggle(function() {
tHeight = $(this).parent().prev().height();
$(this).prev().show();
$(this).parent().prev().height($(this).parent().height());
$(this).text("(less)");
},
function() {
$(this).prev().hide();
$(this).parent().prev().height(tHeight);
$(this).text("more...");
});
}
function createFullTreeLinks() {
var tHeight = 0;
$('.inheritanceTree').toggle(function() {
tHeight = $(this).parent().prev().height();
$(this).parent().toggleClass('showAll');
$(this).text("(hide)");
$(this).parent().prev().height($(this).parent().height());
},
function() {
$(this).parent().toggleClass('showAll');
$(this).parent().prev().height(tHeight);
$(this).text("show all");
});
}
function fixBoxInfoHeights() {
$('dl.box dd.r1, dl.box dd.r2').each(function() {
$(this).prev().height($(this).height());
});
}
function searchFrameLinks() {
$('#method_list_link').click(function() {
toggleSearchFrame(this, relpath + 'method_list.html');
});
$('#class_list_link').click(function() {
toggleSearchFrame(this, relpath + 'class_list.html');
});
$('#file_list_link').click(function() {
toggleSearchFrame(this, relpath + 'file_list.html');
});
}
function toggleSearchFrame(id, link) {
var frame = $('#search_frame');
$('#search a').removeClass('active').addClass('inactive');
if (frame.attr('src') == link && frame.css('display') != "none") {
frame.slideUp(100);
$('#search a').removeClass('active inactive');
}
else {
$(id).addClass('active').removeClass('inactive');
frame.attr('src', link).slideDown(100);
}
}
function linkSummaries() {
$('.summary_signature').click(function() {
document.location = $(this).find('a').attr('href');
});
}
function framesInit() {
if (window.top.frames.main) {
document.body.className = 'frames';
$('#menu .noframes a').attr('href', document.location);
$('html head title', window.parent.document).text($('html head title').text());
}
}
function keyboardShortcuts() {
if (window.top.frames.main) return;
$(document).keypress(function(evt) {
if (evt.altKey || evt.ctrlKey || evt.metaKey || evt.shiftKey) return;
if (typeof evt.target !== "undefined" &&
(evt.target.nodeName == "INPUT" ||
evt.target.nodeName == "TEXTAREA")) return;
switch (evt.charCode) {
case 67: case 99: $('#class_list_link').click(); break; // 'c'
case 77: case 109: $('#method_list_link').click(); break; // 'm'
case 70: case 102: $('#file_list_link').click(); break; // 'f'
default: break;
}
});
}
function summaryToggle() {
$('.summary_toggle').click(function() {
localStorage.summaryCollapsed = $(this).text();
$(this).text($(this).text() == "collapse" ? "expand" : "collapse");
var next = $(this).parent().parent().next();
if (next.hasClass('compact')) {
next.toggle();
next.next().toggle();
}
else if (next.hasClass('summary')) {
var list = $('<ul class="summary compact" />');
list.html(next.html());
list.find('.summary_desc, .note').remove();
list.find('a').each(function() {
$(this).html($(this).find('strong').html());
$(this).parent().html($(this)[0].outerHTML);
});
next.before(list);
next.toggle();
}
return false;
});
if (localStorage) {
if (localStorage.summaryCollapsed == "collapse") $('.summary_toggle').click();
else localStorage.summaryCollapsed = "expand";
}
}
function fixOutsideWorldLinks() {
$('a').each(function() {
if (window.location.host != this.host) this.target = '_parent';
});
}
function generateTOC() {
if ($('#filecontents').length === 0) return;
var _toc = $('<ol class="top"></ol>');
var show = false;
var toc = _toc;
var counter = 0;
var tags = ['h2', 'h3', 'h4', 'h5', 'h6'];
var i;
if ($('#filecontents h1').length > 1) tags.unshift('h1');
for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; }
var lastTag = parseInt(tags[0][1], 10);
$(tags.join(', ')).each(function() {
if (this.id == "filecontents") return;
show = true;
var thisTag = parseInt(this.tagName[1], 10);
if (this.id.length === 0) {
var proposedId = $(this).text().replace(/[^a-z0-9-]/ig, '_');
if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; }
this.id = proposedId;
}
if (thisTag > lastTag) {
for (i = 0; i < thisTag - lastTag; i++) {
var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
}
}
if (thisTag < lastTag) {
for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
}
toc.append('<li><a href="#' + this.id + '">' + $(this).text() + '</a></li>');
lastTag = thisTag;
});
if (!show) return;
html = '<div id="toc"><p class="title"><a class="hide_toc" href="#"><strong>Table of Contents</strong></a> <small>(<a href="#" class="float_toc">left</a>)</small></p></div>';
$('#content').prepend(html);
$('#toc').append(_toc);
$('#toc .hide_toc').toggle(function() {
$('#toc .top').slideUp('fast');
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
}, function() {
$('#toc .top').slideDown('fast');
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
});
$('#toc .float_toc').toggle(function() {
$(this).text('float');
$('#toc').toggleClass('nofloat');
}, function() {
$(this).text('left');
$('#toc').toggleClass('nofloat');
});
}
$(framesInit);
$(createSourceLinks);
$(createDefineLinks);
$(createFullTreeLinks);
$(fixBoxInfoHeights);
$(searchFrameLinks);
$(linkSummaries);
$(keyboardShortcuts);
$(summaryToggle);
$(fixOutsideWorldLinks);
$(generateTOC);

150
doc/js/full_list.js Normal file
View File

@ -0,0 +1,150 @@
var inSearch = null;
var searchIndex = 0;
var searchCache = [];
var searchString = '';
function fullListSearch() {
// generate cache
searchCache = [];
$('#full_list li').each(function() {
var link = $(this).find('.object_link a');
searchCache.push({name:link.text(), node:$(this), link:link});
});
$('#search input').keyup(function() {
searchString = this.value.toLowerCase();
if (searchString === "") {
clearTimeout(inSearch);
inSearch = null;
$('#full_list, #content').removeClass('insearch');
$('#full_list li').removeClass('found').each(function() {
var link = $(this).find('.object_link a');
link.text(link.text());
});
if (clicked) {
clicked.parents('ul').each(function() {
$(this).removeClass('collapsed').prev().removeClass('collapsed');
});
}
highlight();
}
else {
if (inSearch) clearTimeout(inSearch);
searchIndex = 0;
lastRowClass = '';
$('#full_list, #content').addClass('insearch');
$('#noresults').text('');
searchItem();
}
});
$('#search input').focus();
$('#full_list').after("<div id='noresults'></div>");
}
var lastRowClass = '';
function searchItem() {
for (var i = 0; i < searchCache.length / 50; i++) {
var item = searchCache[searchIndex];
if (item.name.toLowerCase().indexOf(searchString) == -1) {
item.node.removeClass('found');
}
else {
item.node.css('padding-left', '10px').addClass('found');
item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1');
lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2';
item.link.html(item.name.replace(new RegExp("(" +
searchString.replace(/([\/.*+?|()\[\]{}\\])/g, "\\$1") + ")", "ig"),
'<strong>$1</strong>'));
}
if (searchCache.length === searchIndex + 1) {
searchDone();
return;
}
else {
searchIndex++;
}
}
inSearch = setTimeout('searchItem()', 0);
}
function searchDone() {
highlight(true);
if ($('#full_list li:visible').size() === 0) {
$('#noresults').text('No results were found.').hide().fadeIn();
}
else {
$('#noresults').text('');
}
$('#content').removeClass('insearch');
clearTimeout(inSearch);
inSearch = null;
}
clicked = null;
function linkList() {
$('#full_list li, #full_list li a:last').click(function(evt) {
if ($(this).hasClass('toggle')) return true;
if (this.tagName.toLowerCase() == "li") {
var toggle = $(this).children('a.toggle');
if (toggle.size() > 0 && evt.pageX < toggle.offset().left) {
toggle.click();
return false;
}
}
if (clicked) clicked.removeClass('clicked');
var win = window.top.frames.main ? window.top.frames.main : window.parent;
if (this.tagName.toLowerCase() == "a") {
clicked = $(this).parent('li').addClass('clicked');
win.location = this.href;
}
else {
clicked = $(this).addClass('clicked');
win.location = $(this).find('a:last').attr('href');
}
return false;
});
}
function collapse() {
if (!$('#full_list').hasClass('class')) return;
$('#full_list.class a.toggle').click(function() {
$(this).parent().toggleClass('collapsed').next().toggleClass('collapsed');
highlight();
return false;
});
$('#full_list.class ul').each(function() {
$(this).addClass('collapsed').prev().addClass('collapsed');
});
$('#full_list.class').children().removeClass('collapsed');
highlight();
}
function highlight(no_padding) {
var n = 1;
$('#full_list li:visible').each(function() {
var next = n == 1 ? 2 : 1;
$(this).removeClass("r" + next).addClass("r" + n);
if (!no_padding && $('#full_list').hasClass('class')) {
$(this).css('padding-left', (10 + $(this).parents('ul').size() * 15) + 'px');
}
n = next;
});
}
function escapeShortcut() {
$(document).keydown(function(evt) {
if (evt.which == 27) {
$('#search_frame', window.top.document).slideUp(100);
$('#search a', window.top.document).removeClass('active inactive');
$(window.top).focus();
}
});
}
$(escapeShortcut);
$(fullListSearch);
$(linkList);
$(collapse);

16
doc/js/jquery.js vendored Normal file

File diff suppressed because one or more lines are too long

102
doc/method_list.html Normal file
View File

@ -0,0 +1,102 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<base id="base_target" target="_parent" />
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) {
document.getElementById('base_target').target = 'main';
document.body.className = 'frames';
}
</script>
<div id="content">
<h1 id="full_list_header">Method List</h1>
<div id="nav">
<a target="_self" href="class_list.html">Classes</a>
<a target="_self" href="method_list.html">Methods</a>
<a target="_self" href="file_list.html">Files</a>
</div>
<div id="search">Search: <input type="text" /></div>
<ul id="full_list" class="methods">
<li class="r1 ">
<span class='object_link'><a href="Teamocil/CLI.html#bail-instance_method" title="Teamocil::CLI#bail (method)">#bail</a></span>
<small>Teamocil::CLI</small>
</li>
<li class="r2 ">
<span class='object_link'><a href="Teamocil/Layout.html#execute_commands-instance_method" title="Teamocil::Layout#execute_commands (method)">#execute_commands</a></span>
<small>Teamocil::Layout</small>
</li>
<li class="r1 ">
<span class='object_link'><a href="Teamocil/Layout.html#generate_commands-instance_method" title="Teamocil::Layout#generate_commands (method)">#generate_commands</a></span>
<small>Teamocil::Layout</small>
</li>
<li class="r2 ">
<span class='object_link'><a href="Teamocil/Layout.html#initialize-instance_method" title="Teamocil::Layout#initialize (method)">#initialize</a></span>
<small>Teamocil::Layout</small>
</li>
<li class="r1 ">
<span class='object_link'><a href="Teamocil/CLI.html#initialize-instance_method" title="Teamocil::CLI#initialize (method)">#initialize</a></span>
<small>Teamocil::CLI</small>
</li>
<li class="r2 ">
<span class='object_link'><a href="Teamocil/CLI.html#parse_options%21-instance_method" title="Teamocil::CLI#parse_options! (method)">#parse_options!</a></span>
<small>Teamocil::CLI</small>
</li>
<li class="r1 ">
<span class='object_link'><a href="Teamocil/Layout.html#to_tmux-instance_method" title="Teamocil::Layout#to_tmux (method)">#to_tmux</a></span>
<small>Teamocil::Layout</small>
</li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,103 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Top Level Namespace
&mdash; Teamocil
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
relpath = '';
if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
if (window.top.frames.main) document.body.className = 'frames';
</script>
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">Top Level Namespace</span>
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>
<div id="search">
<a id="class_list_link" href="#">Class List</a>
<a id="method_list_link" href="#">Method List</a>
<a id="file_list_link" href="#">File List</a>
</div>
<div class="clear"></div>
</div>
<iframe id="search_frame"></iframe>
<div id="content"><h1>Top Level Namespace
</h1>
<dl class="box">
</dl>
<div class="clear"></div>
<h2>Defined Under Namespace</h2>
<p class="children">
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Teamocil.html" title="Teamocil (module)">Teamocil</a></span>
</p>
</div>
<div id="footer">
Generated on Mon Sep 26 08:42:35 2011 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.7.2 (ruby-1.8.7).
</div>
</body>
</html>