forked from mirkov/gnuplot-interface
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.html
261 lines (213 loc) · 7.38 KB
/
README.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title><code>gnuplot</code>-interface package</title>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
<meta name="title" content="<code>gnuplot</code>-interface package"/>
<meta name="generator" content="Org-mode"/>
<meta name="generated" content="2012-02-26 10:28:14 "/>
<meta name="author" content="Mirko Vukovic"/>
<meta name="description" content=""/>
<meta name="keywords" content=""/>
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
html { font-family: Times, serif; font-size: 12pt; }
.title { text-align: center; }
.todo { color: red; }
.done { color: green; }
.tag { background-color: #add8e6; font-weight:normal }
.target { }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.right {margin-left:auto; margin-right:0px; text-align:right;}
.left {margin-left:0px; margin-right:auto; text-align:left;}
.center {margin-left:auto; margin-right:auto; text-align:center;}
p.verse { margin-left: 3% }
pre {
border: 1pt solid #AEBDCC;
background-color: #F3F5F7;
padding: 5pt;
font-family: courier, monospace;
font-size: 90%;
overflow:auto;
}
table { border-collapse: collapse; }
td, th { vertical-align: top; }
th.right { text-align:center; }
th.left { text-align:center; }
th.center { text-align:center; }
td.right { text-align:right; }
td.left { text-align:left; }
td.center { text-align:center; }
dt { font-weight: bold; }
div.figure { padding: 0.5em; }
div.figure p { text-align: center; }
div.inlinetask {
padding:10px;
border:2px solid gray;
margin:10px;
background: #ffffcc;
}
textarea { overflow-x: auto; }
.linenr { font-size:smaller }
.code-highlighted {background-color:#ffff00;}
.org-info-js_info-navigation { border-style:none; }
#org-info-js_console-label { font-size:10px; font-weight:bold;
white-space:nowrap; }
.org-info-js_search-highlight {background-color:#ffff00; color:#000000;
font-weight:bold; }
/*]]>*/-->
</style>
<script type="text/javascript">
<!--/*--><![CDATA[/*><!--*/
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.cacheClassElem = elem.className;
elem.cacheClassTarget = target.className;
target.className = "code-highlighted";
elem.className = "code-highlighted";
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(elem.cacheClassElem)
elem.className = elem.cacheClassElem;
if(elem.cacheClassTarget)
target.className = elem.cacheClassTarget;
}
/*]]>*///-->
</script>
</head>
<body>
<div id="preamble">
</div>
<div id="content">
<h1 class="title"><code>gnuplot</code>-interface package</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#sec-1">1 Package features</a></li>
<li><a href="#sec-2">2 Example of use</a></li>
<li><a href="#sec-3">3 Platforms</a></li>
<li><a href="#sec-4">4 Cygwin and <code>wgnuplot</code></a></li>
<li><a href="#sec-5">5 Caveats</a></li>
<li><a href="#sec-6">6 To do</a></li>
</ul>
</div>
</div>
<div id="outline-container-1" class="outline-2">
<h2 id="sec-1"><span class="section-number-2">1</span> Package features</h2>
<div class="outline-text-2" id="text-1">
<p>Low level interface to <code>gnuplot</code> that provides:
</p><ul>
<li>start of <code>gnuplot</code> process
</li>
<li>passing raw <code>gnuplot</code> commands
</li>
<li>echo printing of sent commands
</li>
</ul>
</div>
</div>
<div id="outline-container-2" class="outline-2">
<h2 id="sec-2"><span class="section-number-2">2</span> Example of use</h2>
<div class="outline-text-2" id="text-2">
<p> Typical usage:
</p>
<pre class="src src-lisp">(start-gnuplot) <span style="color: #81908f; font-weight: bold;">;; </span><span style="color: #81908f; font-style: italic;">starts the process</span>
(init-gnuplot) <span style="color: #81908f; font-weight: bold;">;; </span><span style="color: #81908f; font-style: italic;">optional, to initializes terminal</span>
(hello-world) <span style="color: #81908f; font-weight: bold;">;; </span><span style="color: #81908f; font-style: italic;">test output</span>
(command <span style="color: #259185;">"command-string"</span>) <span style="color: #81908f; font-weight: bold;">;; </span><span style="color: #81908f; font-style: italic;">send command to gnuplot</span>
(echo-command) <span style="color: #81908f; font-weight: bold;">;; </span><span style="color: #81908f; font-style: italic;">sell last sent command</span>
</pre>
<p>
For passing complex <code>gnuplot</code> commands that consists of many lines,
use the <code>send-line</code> and <code>send-line-break</code> commands
</p>
<pre class="src src-lisp">(<span style="color: #728a05;">do-stuff</span> (action actions)
(send-line (action->string action)))
(sent-line-break)
</pre>
</div>
</div>
<div id="outline-container-3" class="outline-2">
<h2 id="sec-3"><span class="section-number-2">3</span> Platforms</h2>
<div class="outline-text-2" id="text-3">
<p> The interface was developed and tested on the following platforms
</p><ul>
<li>Linux & <code>SBCL</code>
</li>
<li>Windows & Cygwin & CLISP
<ul>
<li><code>gnuplot</code>
</li>
<li><code>wgnuplot</code>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-4" class="outline-2">
<h2 id="sec-4"><span class="section-number-2">4</span> Cygwin and <code>wgnuplot</code></h2>
<div class="outline-text-2" id="text-4">
<p> For use of Cygwin and <code>wgnuplot</code>, one needs to provide the feature
<code>:wgnuplot</code>. Furthermore, one needs to specify the path to the
executable. This is done via <code>:wgnuplot</code>'s property list:
</p>
<pre class="src src-lisp">(setf (symbol-plist <span style="color: #728a05;">:wgnuplot</span>)
(list <span style="color: #728a05;">:executable</span> <span style="color: #259185;">"posix compliant path to executable"</span>))
</pre>
<p>
For example, the path can be:
</p><blockquote>
<p>"/c/Program\\ Files/wgnuplot/binary/gnuplot.exe"
</p>
</blockquote>
<p>
The double quote of the space in the file-name is necessary.
</p>
</div>
</div>
<div id="outline-container-5" class="outline-2">
<h2 id="sec-5"><span class="section-number-2">5</span> Caveats</h2>
<div class="outline-text-2" id="text-5">
<ul>
<li>stream plumbing is not thoroughly tested
</li>
<li>windows management is not implemented
</li>
</ul>
</div>
</div>
<div id="outline-container-6" class="outline-2">
<h2 id="sec-6"><span class="section-number-2">6</span> To do</h2>
<div class="outline-text-2" id="text-6">
<ul>
<li>multiple windows management
</li>
<li>Figure out how to use clisp's <code>ext:run-program</code> instead of
<code>ext:make-pipe-io-stream</code>
<ul>
<li>That would allow me to use the <code>external-program</code> package
</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
<div id="postamble">
<p class="date">Date: 2012-02-26 10:28:14 </p>
<p class="author">Author: Mirko Vukovic</p>
<p class="creator">Org version 7.8.03 with Emacs version 23</p>
<a href="http://validator.w3.org/check?uri=referer">Validate XHTML 1.0</a>
</div>
</body>
</html>