wasko 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,63 @@
1
+ <!DOCTYPE html> <html> <head> <title>configuration.rb</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <div id="jump_to"> Jump To &hellip; <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="wasko.html"> wasko.rb </a> <a class="source" href="applescript.html"> applescript.rb </a> <a class="source" href="color.html"> color.rb </a> <a class="source" href="configuration.html"> configuration.rb </a> <a class="source" href="palette.html"> palette.rb </a> <a class="source" href="terminal.html"> terminal.rb </a> </div> </div> </div> <table cellpadding="0" cellspacing="0"> <thead> <tr> <th class="docs"> <h1> configuration.rb </h1> </th> <th class="code"> </th> </tr> </thead> <tbody> <tr id="section-1"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1">&#182;</a> </div> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;fileutils&quot;</span>
2
+
3
+ <span class="k">module</span> <span class="nn">Wasko</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <p>This class will handle all things considering
4
+ loading and saving configuration. It should work
5
+ like this.</p>
6
+
7
+ <ul>
8
+ <li>User sets all things to his liking</li>
9
+ <li>User writes to a <code>.color</code> file in <code>~/.wasko</code></li>
10
+ <li>User can share/edit this <code>.color</code> file</li>
11
+ <li>User can load <code>.color</code> file to restore settings</li>
12
+ </ul> </td> <td class="code"> <div class="highlight"><pre> <span class="k">class</span> <span class="nc">Configuration</span>
13
+ <span class="k">class</span> <span class="o">&lt;&lt;</span> <span class="nb">self</span></pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">&#182;</a> </div> <p>All config files are stored in <code>~/.wasko/</code></p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">wasko_directory</span>
14
+ <span class="n">wasko_path</span> <span class="o">=</span> <span class="no">File</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="no">ENV</span><span class="o">[</span><span class="s1">&#39;HOME&#39;</span><span class="o">]</span><span class="p">,</span> <span class="s2">&quot;.wasko&quot;</span><span class="p">)</span>
15
+ <span class="k">unless</span> <span class="no">File</span><span class="o">.</span><span class="n">exists?</span><span class="p">(</span><span class="n">wasko_path</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="no">File</span><span class="o">.</span><span class="n">directory?</span><span class="p">(</span><span class="n">wasko_path</span><span class="p">)</span>
16
+ <span class="no">FileUtils</span><span class="o">.</span><span class="n">mkdir_p</span> <span class="no">File</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="no">ENV</span><span class="o">[</span><span class="s1">&#39;HOME&#39;</span><span class="o">]</span><span class="p">,</span> <span class="s2">&quot;.wasko&quot;</span><span class="p">)</span>
17
+ <span class="k">end</span>
18
+ <span class="n">wasko_path</span>
19
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p>All possible <code>.color</code> themes</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">all_themes</span>
20
+ <span class="no">Dir</span><span class="o">.</span><span class="n">chdir</span><span class="p">(</span><span class="n">wasko_directory</span><span class="p">)</span> <span class="k">do</span> <span class="o">|</span><span class="n">path</span><span class="o">|</span>
21
+ <span class="no">Dir</span><span class="o">[</span><span class="s2">&quot;*.color&quot;</span><span class="o">].</span><span class="n">map</span> <span class="k">do</span> <span class="o">|</span><span class="n">filename</span><span class="o">|</span>
22
+ <span class="n">filename</span><span class="o">.</span><span class="n">gsub</span><span class="p">(</span><span class="sr">/\.color$/</span><span class="p">,</span> <span class="s2">&quot;&quot;</span><span class="p">)</span>
23
+ <span class="k">end</span>
24
+ <span class="k">end</span>
25
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-5"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-5">&#182;</a> </div> <p>Blatantly stolen from <a href="http://stackoverflow.com/questions/1032104/regex-for-finding-valid-filename">here</a>
26
+ Spots all obvious bad filenames</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">valid_name?</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
27
+ <span class="nb">name</span> <span class="o">=~</span> <span class="sr">/^[^\/?*:;{}\\]+$/</span>
28
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-6"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-6">&#182;</a> </div> <p>File path of the color theme file</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">config_file_with_name</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
29
+ <span class="no">File</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">wasko_directory</span><span class="p">,</span> <span class="s2">&quot;</span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">.color&quot;</span><span class="p">)</span>
30
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-7"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-7">&#182;</a> </div> <p>Setup the color theme with the hash.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">color_theme_from_hash</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
31
+ <span class="k">return</span> <span class="p">{}</span> <span class="k">unless</span> <span class="n">all_themes</span><span class="o">.</span><span class="n">include?</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
32
+ <span class="k">return</span> <span class="p">{}</span> <span class="k">unless</span> <span class="no">Hash</span> <span class="o">===</span> <span class="no">YAML</span><span class="o">::</span><span class="nb">load</span><span class="p">(</span><span class="no">File</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">config_file_with_name</span><span class="p">(</span><span class="nb">name</span><span class="p">)))</span>
33
+ <span class="no">YAML</span><span class="o">::</span><span class="nb">load</span><span class="p">(</span><span class="no">File</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">config_file_with_name</span><span class="p">(</span><span class="nb">name</span><span class="p">)))</span>
34
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-8"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-8">&#182;</a> </div> <p>Transform a color theme to a hash</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">color_theme_to_hash</span>
35
+ <span class="sx">%w(background_color foreground_color bold_color cursor_color font_size font_name)</span><span class="o">.</span><span class="n">inject</span><span class="p">({})</span> <span class="k">do</span> <span class="o">|</span><span class="nb">hash</span><span class="p">,</span> <span class="n">value</span><span class="o">|</span>
36
+ <span class="nb">hash</span><span class="o">[</span><span class="n">value</span><span class="o">]</span> <span class="o">=</span> <span class="no">Wasko</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
37
+ <span class="nb">hash</span>
38
+ <span class="k">end</span>
39
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-9"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-9">&#182;</a> </div> <h2>Loading and saving colors</h2> </td> <td class="code"> <div class="highlight"><pre></pre></div> </td> </tr> <tr id="section-10"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-10">&#182;</a> </div> <p>Draw the saved colors</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">load_colors!</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
40
+ <span class="n">color_theme_from_hash</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span><span class="o">.</span><span class="n">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">object</span><span class="p">,</span> <span class="n">color</span><span class="o">|</span>
41
+ <span class="no">Wasko</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="s2">&quot;set_</span><span class="si">#{</span><span class="n">object</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">,</span> <span class="n">color</span><span class="p">)</span>
42
+ <span class="k">end</span>
43
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-11"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-11">&#182;</a> </div> <p>Write out the colors</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">save_colors!</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
44
+ <span class="no">File</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="n">config_file_with_name</span><span class="p">(</span><span class="nb">name</span><span class="p">),</span> <span class="s1">&#39;w&#39;</span><span class="p">)</span> <span class="k">do</span> <span class="o">|</span><span class="n">out</span><span class="o">|</span>
45
+ <span class="n">out</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">configuration_help</span><span class="p">)</span>
46
+ <span class="n">out</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">color_theme_to_hash</span><span class="o">.</span><span class="n">to_yaml</span><span class="p">)</span>
47
+ <span class="k">end</span>
48
+ <span class="k">end</span>
49
+
50
+ <span class="k">def</span> <span class="nf">configuration_help</span>
51
+ <span class="o">&lt;&lt;</span><span class="no">HELP</span>
52
+
53
+ <span class="sh">#DIVIDER</span>
54
+ <span class="no">HELP</span>
55
+ <span class="k">end</span>
56
+ <span class="k">end</span>
57
+ <span class="k">end</span>
58
+ <span class="k">end</span>
59
+
60
+ </pre></div> </td> </tr> <tr id="section-12"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-12">&#182;</a> </div> <p>This is a theme used by the wasko gem, it's nothing
61
+ more than regular yaml. So (ab)use as you would normally
62
+ do. The only thing to note is, colors take only valid
63
+ css colors and this comment can be deleted.</p> </td> <td class="code"> <div class="highlight"><pre>undefined</pre></div> </td> </tr> </tbody> </table> </div> </body> </html>
data/docs/docco.css ADDED
@@ -0,0 +1,186 @@
1
+ /*--------------------- Layout and Typography ----------------------------*/
2
+ body {
3
+ font-family: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif;
4
+ font-size: 15px;
5
+ line-height: 22px;
6
+ color: #252519;
7
+ margin: 0; padding: 0;
8
+ }
9
+ a {
10
+ color: #261a3b;
11
+ }
12
+ a:visited {
13
+ color: #261a3b;
14
+ }
15
+ p {
16
+ margin: 0 0 15px 0;
17
+ }
18
+ h1, h2, h3, h4, h5, h6 {
19
+ margin: 0px 0 15px 0;
20
+ }
21
+ h1 {
22
+ margin-top: 40px;
23
+ }
24
+ #container {
25
+ position: relative;
26
+ }
27
+ #background {
28
+ position: fixed;
29
+ top: 0; left: 525px; right: 0; bottom: 0;
30
+ background: #f5f5ff;
31
+ border-left: 1px solid #e5e5ee;
32
+ z-index: -1;
33
+ }
34
+ #jump_to, #jump_page {
35
+ background: white;
36
+ -webkit-box-shadow: 0 0 25px #777; -moz-box-shadow: 0 0 25px #777;
37
+ -webkit-border-bottom-left-radius: 5px; -moz-border-radius-bottomleft: 5px;
38
+ font: 10px Arial;
39
+ text-transform: uppercase;
40
+ cursor: pointer;
41
+ text-align: right;
42
+ }
43
+ #jump_to, #jump_wrapper {
44
+ position: fixed;
45
+ right: 0; top: 0;
46
+ padding: 5px 10px;
47
+ }
48
+ #jump_wrapper {
49
+ padding: 0;
50
+ display: none;
51
+ }
52
+ #jump_to:hover #jump_wrapper {
53
+ display: block;
54
+ }
55
+ #jump_page {
56
+ padding: 5px 0 3px;
57
+ margin: 0 0 25px 25px;
58
+ }
59
+ #jump_page .source {
60
+ display: block;
61
+ padding: 5px 10px;
62
+ text-decoration: none;
63
+ border-top: 1px solid #eee;
64
+ }
65
+ #jump_page .source:hover {
66
+ background: #f5f5ff;
67
+ }
68
+ #jump_page .source:first-child {
69
+ }
70
+ table td {
71
+ border: 0;
72
+ outline: 0;
73
+ }
74
+ td.docs, th.docs {
75
+ max-width: 450px;
76
+ min-width: 450px;
77
+ min-height: 5px;
78
+ padding: 10px 25px 1px 50px;
79
+ overflow-x: hidden;
80
+ vertical-align: top;
81
+ text-align: left;
82
+ }
83
+ .docs pre {
84
+ margin: 15px 0 15px;
85
+ padding-left: 15px;
86
+ }
87
+ .docs p tt, .docs p code {
88
+ background: #f8f8ff;
89
+ border: 1px solid #dedede;
90
+ font-size: 12px;
91
+ padding: 0 0.2em;
92
+ }
93
+ .pilwrap {
94
+ position: relative;
95
+ }
96
+ .pilcrow {
97
+ font: 12px Arial;
98
+ text-decoration: none;
99
+ color: #454545;
100
+ position: absolute;
101
+ top: 3px; left: -20px;
102
+ padding: 1px 2px;
103
+ opacity: 0;
104
+ -webkit-transition: opacity 0.2s linear;
105
+ }
106
+ td.docs:hover .pilcrow {
107
+ opacity: 1;
108
+ }
109
+ td.code, th.code {
110
+ padding: 14px 15px 16px 25px;
111
+ width: 100%;
112
+ vertical-align: top;
113
+ background: #f5f5ff;
114
+ border-left: 1px solid #e5e5ee;
115
+ }
116
+ pre, tt, code {
117
+ font-size: 12px; line-height: 18px;
118
+ font-family: Monaco, Consolas, "Lucida Console", monospace;
119
+ margin: 0; padding: 0;
120
+ }
121
+
122
+
123
+ /*---------------------- Syntax Highlighting -----------------------------*/
124
+ td.linenos { background-color: #f0f0f0; padding-right: 10px; }
125
+ span.lineno { background-color: #f0f0f0; padding: 0 5px 0 5px; }
126
+ body .hll { background-color: #ffffcc }
127
+ body .c { color: #408080; font-style: italic } /* Comment */
128
+ body .err { border: 1px solid #FF0000 } /* Error */
129
+ body .k { color: #954121 } /* Keyword */
130
+ body .o { color: #666666 } /* Operator */
131
+ body .cm { color: #408080; font-style: italic } /* Comment.Multiline */
132
+ body .cp { color: #BC7A00 } /* Comment.Preproc */
133
+ body .c1 { color: #408080; font-style: italic } /* Comment.Single */
134
+ body .cs { color: #408080; font-style: italic } /* Comment.Special */
135
+ body .gd { color: #A00000 } /* Generic.Deleted */
136
+ body .ge { font-style: italic } /* Generic.Emph */
137
+ body .gr { color: #FF0000 } /* Generic.Error */
138
+ body .gh { color: #000080; font-weight: bold } /* Generic.Heading */
139
+ body .gi { color: #00A000 } /* Generic.Inserted */
140
+ body .go { color: #808080 } /* Generic.Output */
141
+ body .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
142
+ body .gs { font-weight: bold } /* Generic.Strong */
143
+ body .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
144
+ body .gt { color: #0040D0 } /* Generic.Traceback */
145
+ body .kc { color: #954121 } /* Keyword.Constant */
146
+ body .kd { color: #954121; font-weight: bold } /* Keyword.Declaration */
147
+ body .kn { color: #954121; font-weight: bold } /* Keyword.Namespace */
148
+ body .kp { color: #954121 } /* Keyword.Pseudo */
149
+ body .kr { color: #954121; font-weight: bold } /* Keyword.Reserved */
150
+ body .kt { color: #B00040 } /* Keyword.Type */
151
+ body .m { color: #666666 } /* Literal.Number */
152
+ body .s { color: #219161 } /* Literal.String */
153
+ body .na { color: #7D9029 } /* Name.Attribute */
154
+ body .nb { color: #954121 } /* Name.Builtin */
155
+ body .nc { color: #0000FF; font-weight: bold } /* Name.Class */
156
+ body .no { color: #880000 } /* Name.Constant */
157
+ body .nd { color: #AA22FF } /* Name.Decorator */
158
+ body .ni { color: #999999; font-weight: bold } /* Name.Entity */
159
+ body .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
160
+ body .nf { color: #0000FF } /* Name.Function */
161
+ body .nl { color: #A0A000 } /* Name.Label */
162
+ body .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
163
+ body .nt { color: #954121; font-weight: bold } /* Name.Tag */
164
+ body .nv { color: #19469D } /* Name.Variable */
165
+ body .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
166
+ body .w { color: #bbbbbb } /* Text.Whitespace */
167
+ body .mf { color: #666666 } /* Literal.Number.Float */
168
+ body .mh { color: #666666 } /* Literal.Number.Hex */
169
+ body .mi { color: #666666 } /* Literal.Number.Integer */
170
+ body .mo { color: #666666 } /* Literal.Number.Oct */
171
+ body .sb { color: #219161 } /* Literal.String.Backtick */
172
+ body .sc { color: #219161 } /* Literal.String.Char */
173
+ body .sd { color: #219161; font-style: italic } /* Literal.String.Doc */
174
+ body .s2 { color: #219161 } /* Literal.String.Double */
175
+ body .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
176
+ body .sh { color: #219161 } /* Literal.String.Heredoc */
177
+ body .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
178
+ body .sx { color: #954121 } /* Literal.String.Other */
179
+ body .sr { color: #BB6688 } /* Literal.String.Regex */
180
+ body .s1 { color: #219161 } /* Literal.String.Single */
181
+ body .ss { color: #19469D } /* Literal.String.Symbol */
182
+ body .bp { color: #954121 } /* Name.Builtin.Pseudo */
183
+ body .vc { color: #19469D } /* Name.Variable.Class */
184
+ body .vg { color: #19469D } /* Name.Variable.Global */
185
+ body .vi { color: #19469D } /* Name.Variable.Instance */
186
+ body .il { color: #666666 } /* Literal.Number.Integer.Long */
data/docs/palette.html ADDED
@@ -0,0 +1,61 @@
1
+ <!DOCTYPE html> <html> <head> <title>palette.rb</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <div id="jump_to"> Jump To &hellip; <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="wasko.html"> wasko.rb </a> <a class="source" href="applescript.html"> applescript.rb </a> <a class="source" href="color.html"> color.rb </a> <a class="source" href="configuration.html"> configuration.rb </a> <a class="source" href="palette.html"> palette.rb </a> <a class="source" href="terminal.html"> terminal.rb </a> </div> </div> </div> <table cellpadding="0" cellspacing="0"> <thead> <tr> <th class="docs"> <h1> palette.rb </h1> </th> <th class="code"> </th> </tr> </thead> <tbody> <tr id="section-1"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1">&#182;</a> </div> </td> <td class="code"> <div class="highlight"><pre><span class="k">module</span> <span class="nn">Wasko</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <p>A module aimed at creating color schemes for terminals
2
+ Pretty straightforward, no?</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">module</span> <span class="nn">Palette</span></pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">&#182;</a> </div> <p>Since I change my mind pretty frequently on
3
+ color schemes etc. Putting the actual logic in
4
+ a class so it's easier to extend.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">class</span> <span class="nc">TheOriginal</span></pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p>Takes a valid css color string and an optional
5
+ contrast argument. The contrast is useful to tweak
6
+ the output of things.</p>
7
+
8
+ <p>It sets a base color <code>@base</code> and creates a color
9
+ palette derived from the base color using the
10
+ <code>colors!</code> method.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">initialize</span><span class="p">(</span><span class="n">color_string</span><span class="p">,</span> <span class="n">contrast</span> <span class="o">=</span> <span class="mi">0</span><span class="p">)</span>
11
+ <span class="vi">@colors</span> <span class="o">=</span> <span class="p">{}</span>
12
+ <span class="vi">@base</span> <span class="o">=</span> <span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color_string</span><span class="p">)</span>
13
+ <span class="vi">@contrast</span> <span class="o">=</span> <span class="mi">30</span> <span class="o">+</span> <span class="n">contrast</span>
14
+ <span class="n">colors!</span>
15
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-5"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-5">&#182;</a> </div> <p>Returns a <code>color</code>-instance of white</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">white</span>
16
+ <span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="s2">&quot;white&quot;</span><span class="p">)</span>
17
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-6"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-6">&#182;</a> </div> <p>Returns a <code>color</code>-instance of black</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">black</span>
18
+ <span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="s2">&quot;black&quot;</span><span class="p">)</span>
19
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-7"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-7">&#182;</a> </div> <p>Checks the brightness of the base color and
20
+ returns the appropriate opposite color.</p>
21
+
22
+ <p>For example black will return white, white will
23
+ return black.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">opposite_color</span>
24
+ <span class="vi">@base</span><span class="o">.</span><span class="n">brightness</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="o">.</span><span class="mi">5</span> <span class="o">?</span> <span class="n">black</span> <span class="p">:</span> <span class="n">white</span>
25
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-8"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-8">&#182;</a> </div> <p>To calculate colors that will fit our base color
26
+ we need to find out to brighten them, or darken
27
+ them</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">inverse_brightness</span>
28
+ <span class="vi">@base</span><span class="o">.</span><span class="n">brightness</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="o">.</span><span class="mi">5</span> <span class="o">?</span> <span class="o">-</span><span class="mi">1</span> <span class="p">:</span> <span class="mi">1</span>
29
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-9"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-9">&#182;</a> </div> <p>Hash of the color palette
30
+ TODO: attr_accessible</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">colors</span>
31
+ <span class="vi">@colors</span>
32
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-10"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-10">&#182;</a> </div> <p>Creates a palette based on the <code>@base</code>-color. This
33
+ generates a color palette which has taken a good
34
+ look at <a href="http://ethanschoonover.com/solarized">Solarized</a>
35
+ The plus side is you can use any base color, the
36
+ downside is, the colors won't be picked as well as
37
+ when using <a href="http://ethanschoonover.com/solarized">Solarized</a> so if that's what you need, check it out.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">colors!</span>
38
+ <span class="nb">p</span> <span class="o">=</span> <span class="p">{}</span>
39
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:base</span><span class="o">]</span> <span class="o">=</span> <span class="vi">@base</span>
40
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:foreground</span><span class="o">]</span> <span class="o">=</span> <span class="vi">@base</span><span class="o">.</span><span class="n">mix_with</span><span class="p">(</span><span class="n">opposite_color</span><span class="p">,</span> <span class="vi">@contrast</span> <span class="o">+</span> <span class="mi">18</span><span class="p">)</span>
41
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:bold</span><span class="o">]</span> <span class="o">=</span> <span class="vi">@base</span><span class="o">.</span><span class="n">mix_with</span><span class="p">(</span><span class="n">opposite_color</span><span class="p">,</span> <span class="vi">@contrast</span> <span class="o">+</span> <span class="mi">19</span><span class="o">.</span><span class="mi">5</span><span class="p">)</span>
42
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:selection</span><span class="o">]</span> <span class="o">=</span> <span class="vi">@base</span><span class="o">.</span><span class="n">adjust_brightness</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span>
43
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:selected</span><span class="o">]</span> <span class="o">=</span> <span class="nb">p</span><span class="o">[</span><span class="ss">:bold</span><span class="o">]</span>
44
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:cursor</span><span class="o">]</span> <span class="o">=</span> <span class="nb">p</span><span class="o">[</span><span class="ss">:foreground</span><span class="o">]</span></pre></div> </td> </tr> <tr id="section-11"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-11">&#182;</a> </div> <p>ANSI Colors</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nb">p</span><span class="o">[</span><span class="ss">:red</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;red&quot;</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
45
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:green</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;green&quot;</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
46
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:yellow</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;yellow&quot;</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
47
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:white</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;white&quot;</span><span class="p">,</span> <span class="mi">35</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
48
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:black</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;black&quot;</span><span class="p">,</span> <span class="mi">35</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
49
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:blue</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;blue&quot;</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="p">(</span><span class="vi">@contrast</span><span class="p">))</span>
50
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:magenta</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;#CA1F7B&quot;</span><span class="p">,</span> <span class="mi">35</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="vi">@contrast</span><span class="p">)</span>
51
+ <span class="nb">p</span><span class="o">[</span><span class="ss">:cyan</span><span class="o">]</span> <span class="o">=</span> <span class="n">mix_base_with</span><span class="p">(</span><span class="s2">&quot;#00FFFF&quot;</span><span class="p">,</span> <span class="mi">50</span><span class="p">,</span> <span class="n">inverse_brightness</span> <span class="o">*</span> <span class="p">(</span><span class="vi">@contrast</span> <span class="o">-</span> <span class="mi">20</span><span class="p">))</span>
52
+ <span class="vi">@colors</span> <span class="o">=</span> <span class="nb">p</span>
53
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-12"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-12">&#182;</a> </div> <p>Just a utility method that mixes colors, for more
54
+ info on this check the docs of the <code>color</code>-gem.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">mix_base_with</span><span class="p">(</span><span class="n">color_name</span><span class="p">,</span> <span class="n">mix_value</span> <span class="o">=</span> <span class="mi">50</span><span class="p">,</span> <span class="n">brightness</span> <span class="o">=</span> <span class="mi">30</span><span class="p">)</span>
55
+ <span class="vi">@base</span><span class="o">.</span><span class="n">mix_with</span><span class="p">(</span><span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color_name</span><span class="p">),</span> <span class="n">mix_value</span><span class="p">)</span><span class="o">.</span><span class="n">adjust_brightness</span><span class="p">(</span><span class="n">brightness</span><span class="p">)</span>
56
+ <span class="k">end</span>
57
+ <span class="k">end</span>
58
+ <span class="k">end</span>
59
+ <span class="k">end</span>
60
+
61
+ </pre></div> </td> </tr> </tbody> </table> </div> </body> </html>
@@ -0,0 +1,78 @@
1
+ <!DOCTYPE html> <html> <head> <title>terminal.rb</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <div id="jump_to"> Jump To &hellip; <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="wasko.html"> wasko.rb </a> <a class="source" href="applescript.html"> applescript.rb </a> <a class="source" href="color.html"> color.rb </a> <a class="source" href="configuration.html"> configuration.rb </a> <a class="source" href="palette.html"> palette.rb </a> <a class="source" href="terminal.html"> terminal.rb </a> </div> </div> </div> <table cellpadding="0" cellspacing="0"> <thead> <tr> <th class="docs"> <h1> terminal.rb </h1> </th> <th class="code"> </th> </tr> </thead> <tbody> <tr id="section-1"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1">&#182;</a> </div> </td> <td class="code"> <div class="highlight"><pre><span class="k">module</span> <span class="nn">Wasko</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <p>This class will be used to strip the Applescript
2
+ even further away, encapsulating all the needed
3
+ methods to set colors and fonts of <code>Terminal.app</code>.</p>
4
+
5
+ <p>Added bonus is, this paves the way to add support
6
+ for <a href="http://code.google.com/p/iterm2/">iTerm2</a> and
7
+ other variants.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">class</span> <span class="nc">Terminal</span></pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">&#182;</a> </div> <h1>Getters And Setters</h1>
8
+
9
+ <p>This supports the following</p>
10
+
11
+ <ul>
12
+ <li><code>set_background_color "fff"</code></li>
13
+ <li><code>background_color</code></li>
14
+ <li><code>set_normal_text_color "fff"</code></li>
15
+ <li><code>normal_text_color</code></li>
16
+ <li><code>set_font_size 12</code></li>
17
+ <li><code>font_size</code></li>
18
+ <li><code>set_font_name "DejaVu Sans Mono"</code></li>
19
+ <li><code>font_name</code></li>
20
+ </ul> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">method_missing</span><span class="p">(</span><span class="n">method_sym</span><span class="p">,</span> <span class="o">*</span><span class="n">arguments</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">block</span><span class="p">)</span>
21
+ <span class="k">if</span> <span class="n">method_sym</span><span class="o">.</span><span class="n">to_s</span> <span class="o">=~</span> <span class="sr">/^set_(.*)$/</span>
22
+ <span class="nb">self</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="vg">$1</span><span class="o">.</span><span class="n">gsub</span><span class="p">(</span><span class="sr">/_/</span><span class="p">,</span> <span class="s2">&quot; &quot;</span><span class="p">)</span> <span class="o">=&gt;</span> <span class="n">arguments</span><span class="o">.</span><span class="n">first</span><span class="p">)</span>
23
+ <span class="k">elsif</span> <span class="n">method_sym</span><span class="o">.</span><span class="n">to_s</span> <span class="o">=~</span> <span class="sr">/^([a-z]+_[a-z]+(.*))$/</span>
24
+ <span class="nb">self</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="vg">$1</span><span class="o">.</span><span class="n">gsub</span><span class="p">(</span><span class="sr">/_/</span><span class="p">,</span> <span class="s2">&quot; &quot;</span><span class="p">))</span>
25
+ <span class="k">else</span>
26
+ <span class="k">super</span>
27
+ <span class="k">end</span>
28
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p>Pretty big todo, shield this off somewhat.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">respond_to?</span><span class="p">(</span><span class="n">method_sym</span><span class="p">,</span> <span class="n">include_private</span> <span class="o">=</span> <span class="kp">false</span><span class="p">)</span>
29
+ <span class="k">if</span> <span class="n">method_sym</span><span class="o">.</span><span class="n">to_s</span> <span class="o">=~</span> <span class="sr">/^set_(.*)$/</span>
30
+ <span class="kp">true</span>
31
+ <span class="k">elsif</span> <span class="n">method_sym</span><span class="o">.</span><span class="n">to_s</span> <span class="o">=~</span> <span class="sr">/^[a-z]+_[a-z]+(.*)$/</span>
32
+ <span class="kp">true</span>
33
+ <span class="k">else</span>
34
+ <span class="k">super</span>
35
+ <span class="k">end</span>
36
+ <span class="k">end</span>
37
+
38
+ <span class="kp">protected</span>
39
+
40
+ <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">set</span><span class="p">(</span><span class="n">conditions</span> <span class="o">=</span> <span class="p">{})</span>
41
+ <span class="no">Wasko</span><span class="o">::</span><span class="no">Applescript</span><span class="o">.</span><span class="n">run</span> <span class="k">do</span>
42
+ <span class="nb">self</span><span class="o">.</span><span class="n">set_script</span><span class="p">(</span><span class="n">conditions</span><span class="o">.</span><span class="n">keys</span><span class="o">.</span><span class="n">first</span><span class="p">,</span> <span class="n">conditions</span><span class="o">.</span><span class="n">values</span><span class="o">.</span><span class="n">first</span><span class="p">)</span>
43
+ <span class="k">end</span>
44
+ <span class="k">end</span>
45
+
46
+ <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">get</span><span class="p">(</span><span class="n">object</span><span class="p">)</span>
47
+ <span class="no">Wasko</span><span class="o">::</span><span class="no">Applescript</span><span class="o">.</span><span class="n">run</span> <span class="k">do</span>
48
+ <span class="nb">self</span><span class="o">.</span><span class="n">get_script</span><span class="p">(</span><span class="n">object</span><span class="p">)</span>
49
+ <span class="k">end</span>
50
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-5"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-5">&#182;</a> </div> <h2>Utility methods</h2>
51
+
52
+ <p>Setter</p>
53
+
54
+ <pre><code> Wasko::Terminal.set_script("background color", "red")
55
+ </code></pre> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">set_script</span><span class="p">(</span><span class="n">object</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
56
+ <span class="k">unless</span> <span class="n">value</span> <span class="o">=~</span> <span class="sr">/^(\{|\[|\()/</span>
57
+ <span class="n">value</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="se">\&quot;</span><span class="si">#{</span><span class="n">value</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2">&quot;</span>
58
+ <span class="k">end</span>
59
+ <span class="o">&lt;&lt;</span><span class="no">SCRIPT</span>
60
+ <span class="sh">tell application &quot;Terminal&quot;</span>
61
+ <span class="sh"> set #{object} of selected tab of first window to #{value}</span>
62
+ <span class="sh">end tell</span>
63
+ <span class="no">SCRIPT</span>
64
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-6"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-6">&#182;</a> </div> <p>Getter</p>
65
+
66
+ <pre><code> Wasko::Terminal.get_script("background color")
67
+ </code></pre> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">get_script</span><span class="p">(</span><span class="n">object</span><span class="p">)</span>
68
+ <span class="o">&lt;&lt;</span><span class="no">SCRIPT</span>
69
+ <span class="sh">tell application &quot;Terminal&quot;</span>
70
+ <span class="sh"> get #{object} of selected tab of first window</span>
71
+ <span class="sh">end tell</span>
72
+ <span class="no">SCRIPT</span>
73
+ <span class="k">end</span>
74
+
75
+ <span class="k">end</span>
76
+ <span class="k">end</span>
77
+
78
+ </pre></div> </td> </tr> </tbody> </table> </div> </body> </html>
data/docs/wasko.html ADDED
@@ -0,0 +1,89 @@
1
+ <!DOCTYPE html> <html> <head> <title>wasko.rb</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <div id="jump_to"> Jump To &hellip; <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="wasko.html"> wasko.rb </a> <a class="source" href="applescript.html"> applescript.rb </a> <a class="source" href="color.html"> color.rb </a> <a class="source" href="configuration.html"> configuration.rb </a> <a class="source" href="palette.html"> palette.rb </a> <a class="source" href="terminal.html"> terminal.rb </a> </div> </div> </div> <table cellpadding="0" cellspacing="0"> <thead> <tr> <th class="docs"> <h1> wasko.rb </h1> </th> <th class="code"> </th> </tr> </thead> <tbody> <tr id="section-1"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1">&#182;</a> </div> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;color/palette/monocontrast&quot;</span>
2
+ <span class="nb">require</span> <span class="s2">&quot;yaml&quot;</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">&#182;</a> </div> <p><a href="applescript.html">Applescript: Small wrapper for running applescript</a></p> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;wasko/applescript&quot;</span></pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">&#182;</a> </div> <p><a href="terminal.html">Terminal: Support for Terminal.app</a></p> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;wasko/terminal&quot;</span></pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">&#182;</a> </div> <p><a href="color.html">Color: Small color utilities</a></p> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;wasko/color&quot;</span></pre></div> </td> </tr> <tr id="section-5"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-5">&#182;</a> </div> <p><a href="palette.html">Palette: Generates a color scheme</a></p> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;wasko/palette&quot;</span></pre></div> </td> </tr> <tr id="section-6"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-6">&#182;</a> </div> <p><a href="configuration.html">Configuration: Loading and saving themes</a></p> </td> <td class="code"> <div class="highlight"><pre><span class="nb">require</span> <span class="s2">&quot;wasko/configuration&quot;</span>
3
+ <span class="k">module</span> <span class="nn">Wasko</span>
4
+ <span class="k">class</span> <span class="o">&lt;&lt;</span> <span class="nb">self</span></pre></div> </td> </tr> <tr id="section-7"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-7">&#182;</a> </div> <p>Currently this only returns Apple's <code>Terminal.app</code>,
5
+ in the future this could be used to support other
6
+ Terminals as well.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">advanced_typing_apparatus</span>
7
+ <span class="no">Wasko</span><span class="o">::</span><span class="no">Terminal</span>
8
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-8"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-8">&#182;</a> </div> <h2>Set/Get fonts and colors</h2>
9
+
10
+ <p>These all call the <code>advanced_typing_apparatus</code> and
11
+ do exactly what they say on the tin.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">background_color</span>
12
+ <span class="o">::</span><span class="no">Color</span><span class="o">::</span><span class="no">RGB</span><span class="o">.</span><span class="n">from_applescript</span><span class="p">(</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">background_color</span><span class="p">)</span><span class="o">.</span><span class="n">html</span>
13
+ <span class="k">end</span>
14
+
15
+ <span class="k">def</span> <span class="nf">set_background_color</span><span class="p">(</span><span class="n">color</span><span class="p">)</span>
16
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_background_color</span><span class="p">(</span><span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color</span><span class="p">)</span><span class="o">.</span><span class="n">to_applescript</span><span class="p">)</span>
17
+ <span class="k">end</span>
18
+
19
+ <span class="k">def</span> <span class="nf">foreground_color</span>
20
+ <span class="o">::</span><span class="no">Color</span><span class="o">::</span><span class="no">RGB</span><span class="o">.</span><span class="n">from_applescript</span><span class="p">(</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">normal_text_color</span><span class="p">)</span><span class="o">.</span><span class="n">html</span>
21
+ <span class="k">end</span>
22
+
23
+ <span class="k">def</span> <span class="nf">set_foreground_color</span><span class="p">(</span><span class="n">color</span><span class="p">)</span>
24
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_normal_text_color</span><span class="p">(</span><span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color</span><span class="p">)</span><span class="o">.</span><span class="n">to_applescript</span><span class="p">)</span>
25
+ <span class="k">end</span>
26
+
27
+ <span class="k">def</span> <span class="nf">bold_color</span>
28
+ <span class="o">::</span><span class="no">Color</span><span class="o">::</span><span class="no">RGB</span><span class="o">.</span><span class="n">from_applescript</span><span class="p">(</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">bold_text_color</span><span class="p">)</span><span class="o">.</span><span class="n">html</span>
29
+ <span class="k">end</span>
30
+
31
+ <span class="k">def</span> <span class="nf">set_bold_color</span><span class="p">(</span><span class="n">color</span><span class="p">)</span>
32
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_bold_text_color</span><span class="p">(</span><span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color</span><span class="p">)</span><span class="o">.</span><span class="n">to_applescript</span><span class="p">)</span>
33
+ <span class="k">end</span>
34
+
35
+ <span class="k">def</span> <span class="nf">cursor_color</span>
36
+ <span class="o">::</span><span class="no">Color</span><span class="o">::</span><span class="no">RGB</span><span class="o">.</span><span class="n">from_applescript</span><span class="p">(</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">cursor_color</span><span class="p">)</span><span class="o">.</span><span class="n">html</span>
37
+ <span class="k">end</span>
38
+
39
+ <span class="k">def</span> <span class="nf">set_cursor_color</span><span class="p">(</span><span class="n">color</span><span class="p">)</span>
40
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_cursor_color</span><span class="p">(</span><span class="no">Wasko</span><span class="o">::</span><span class="no">Color</span><span class="o">.</span><span class="n">color_from_string</span><span class="p">(</span><span class="n">color</span><span class="p">)</span><span class="o">.</span><span class="n">to_applescript</span><span class="p">)</span>
41
+ <span class="k">end</span>
42
+
43
+ <span class="k">def</span> <span class="nf">font_name</span>
44
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">font_name</span>
45
+ <span class="k">end</span>
46
+
47
+ <span class="k">def</span> <span class="nf">set_font_name</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
48
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_font_name</span> <span class="n">font_name</span>
49
+ <span class="k">end</span>
50
+
51
+ <span class="k">def</span> <span class="nf">font_size</span>
52
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">font_size</span>
53
+ <span class="k">end</span>
54
+
55
+ <span class="k">def</span> <span class="nf">set_font_size</span><span class="p">(</span><span class="n">size</span><span class="p">)</span>
56
+ <span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">set_font_size</span> <span class="n">size</span>
57
+ <span class="k">end</span>
58
+
59
+ <span class="k">def</span> <span class="nf">font</span>
60
+ <span class="s2">&quot;</span><span class="si">#{</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">font_name</span><span class="si">}</span><span class="s2">, </span><span class="si">#{</span><span class="n">advanced_typing_apparatus</span><span class="o">.</span><span class="n">font_size</span><span class="si">}</span><span class="s2">&quot;</span>
61
+ <span class="k">end</span>
62
+
63
+ <span class="k">def</span> <span class="nf">set_font</span><span class="p">(</span><span class="n">font_size</span> <span class="o">=</span> <span class="mi">14</span><span class="p">,</span> <span class="nb">name</span> <span class="o">=</span> <span class="kp">nil</span><span class="p">)</span>
64
+ <span class="nb">name</span> <span class="o">=</span> <span class="n">font_name</span> <span class="k">if</span> <span class="nb">name</span><span class="o">.</span><span class="n">empty?</span>
65
+ <span class="n">set_font_size</span> <span class="n">size</span>
66
+ <span class="n">set_font_name</span> <span class="nb">name</span>
67
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-9"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-9">&#182;</a> </div> <h2>Palette</h2>
68
+
69
+ <p>Returns a string representation of the current settings</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">palette</span>
70
+ <span class="o">[</span>
71
+ <span class="s2">&quot;Background: </span><span class="si">#{</span><span class="n">background_color</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">,</span>
72
+ <span class="s2">&quot;Foreground: </span><span class="si">#{</span><span class="n">foreground_color</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">,</span>
73
+ <span class="s2">&quot;Bold Text : </span><span class="si">#{</span><span class="n">bold_color</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">,</span>
74
+ <span class="s2">&quot;Cursor : </span><span class="si">#{</span><span class="n">cursor_color</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">,</span>
75
+ <span class="s2">&quot;Font : </span><span class="si">#{</span><span class="n">font</span><span class="si">}</span><span class="s2">&quot;</span>
76
+ <span class="o">].</span><span class="n">join</span><span class="p">(</span><span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">)</span>
77
+ <span class="k">end</span></pre></div> </td> </tr> <tr id="section-10"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-10">&#182;</a> </div> <p>Try to set a sensible palette from a base color</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">def</span> <span class="nf">set_palette</span><span class="p">(</span><span class="n">color_string</span><span class="p">)</span>
78
+ <span class="nb">p</span> <span class="o">=</span> <span class="no">Wasko</span><span class="o">::</span><span class="no">Palette</span><span class="o">::</span><span class="no">TheOriginal</span><span class="o">.</span><span class="n">new</span><span class="p">(</span><span class="n">color_string</span><span class="p">)</span>
79
+
80
+ <span class="n">set_background_color</span> <span class="nb">p</span><span class="o">.</span><span class="n">colors</span><span class="o">[</span><span class="ss">:base</span><span class="o">].</span><span class="n">html</span>
81
+ <span class="n">set_foreground_color</span> <span class="nb">p</span><span class="o">.</span><span class="n">colors</span><span class="o">[</span><span class="ss">:foreground</span><span class="o">].</span><span class="n">html</span>
82
+ <span class="n">set_bold_color</span> <span class="nb">p</span><span class="o">.</span><span class="n">colors</span><span class="o">[</span><span class="ss">:bold</span><span class="o">].</span><span class="n">html</span>
83
+ <span class="n">set_cursor_color</span> <span class="nb">p</span><span class="o">.</span><span class="n">colors</span><span class="o">[</span><span class="ss">:cursor</span><span class="o">].</span><span class="n">html</span>
84
+ <span class="k">end</span>
85
+
86
+ <span class="k">end</span>
87
+ <span class="k">end</span>
88
+
89
+ </pre></div> </td> </tr> </tbody> </table> </div> </body> </html>