org-mode/util/gnuplot-mode.0.6.0/gpelcard.tex
2009-08-03 10:41:45 -06:00

492 lines
16 KiB
TeX

%% Time-stamp: <2002/12/13 16:41:13 bruce>
%% This document is copyright (C) 1998-2002 Bruce Ravel <ravel@phys.washington.edu>
%% This page covers version 0.6.0 of gnuplot-mode.
%% This document is distributed in the hope that it will be useful,
%% but WITHOUT ANY WARRANTY; without even the implied warranty of
%% properly describing the software it documents.
%% Permission is granted to make and distribute copies of this
%% document in electronic form provided the copyright notice and this
%% permission are preserved on all copies.
\documentclass[twocolumn]{article}
\usepackage{fancybox}
\setlength{\parindent}{0truecm}
\setlength{\parskip}{1ex}
\setlength{\hoffset}{-0.5truecm}
\setlength{\voffset}{0truecm}
\setlength{\topmargin}{-2.5truecm}
\setlength{\marginparsep}{0truecm}
\setlength{\marginparwidth}{0truecm}
\setlength{\textheight}{25.5truecm}
\setlength{\textwidth}{17truecm}
\setlength{\oddsidemargin}{0truecm}
\setlength{\evensidemargin}{1.2truecm}
\setlength{\columnsep}{1.4truecm}
\newenvironment{Boxedminipage}%
{\begin{Sbox}\begin{minipage}}%
{\end{minipage}\end{Sbox}\Ovalbox{\TheSbox}}
\newenvironment{SqBoxedminipage}%
{\begin{Sbox}\begin{minipage}}%
{\end{minipage}\end{Sbox}\fbox{\TheSbox}}
\def\version{{0.6.0}}
\def\revised{{17 May, 2002}}
\def\file#1{{\texttt{`#1'}}}
\def\key#1{{\textrm \leavevmode\hbox{%
\raise0.4pt\hbox{$\langle$}\kern-.08em\vtop{%
\vbox{\hrule\kern-0.4pt
\hbox{\raise0.4pt\hbox{\vphantom{$\langle$}}#1}}%
\kern-0.4pt\hrule}%
\kern-.06em\raise0.4pt\hbox{$\rangle$}}}}
\def\variable#1#2#3{{
\vspace{-0.2truecm}
\begin{flushright}
\begin{minipage}[h]{0.97\linewidth}
\vspace{-0.2truecm}
\textbf{#1}\hfill[\texttt{#2}]
\begin{flushright}
\begin{minipage}[h]{0.93\linewidth}
\vspace{-0.2truecm}
#3
\end{minipage}
\end{flushright}
\end{minipage}
\end{flushright}
}}
\def\command#1#2{{
\vspace{-0.2truecm}
\begin{flushright}
\begin{minipage}[h]{0.97\linewidth}
\vspace{-0.2truecm}
\textbf{#1}\hfill
\begin{flushright}
\begin{minipage}[h]{0.93\linewidth}
\vspace{-0.4truecm}
#2
\end{minipage}
\end{flushright}
\end{minipage}
\end{flushright}
}}
\def\Star{{$\star$}}
\begin{document}
\small
\thispagestyle{empty}
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
\vspace{0.01\textheight}
{\Large Quick Reference for}\\
\vspace{0.007\textheight}
{\Large gnuplot-mode}
\vspace{0.01\textheight}
\end{center}
\end{Boxedminipage}
\end{center}
\vspace{3ex}
This card describes the features of gnuplot-mode for Emacs.
Gnuplot-mode is intended for composing scripts for the
\textsc{gnuplot} plotting program. It offers functions for sending
commands or entire scripts to the \textsc{gnuplot} program as well as
various functions to aid in composing scripts. It works with any
version of \textsc{gnuplot} from 3.5 to 3.8. See the comments in the
file \file{gnuplot.el} for instructions on installing gnuplot-mode.
\vspace{2ex}
\begin{minipage}[h]{\linewidth}
\begin{center}
\centerline{{\large\textbf{gnuplot-mode key sequences}}}
\vspace{0.2ex}
\begin{tabular}[h]{cl}
\hline \hline
\\[-1ex]
\multicolumn{2}{l}{~\quad\textbf{Gnuplot-mode buffer}}\\[0.5ex]
\textrm{key} & \quad description \\
\hline
\texttt{C-c C-l} & send a line to gnuplot \\
\texttt{C-c C-v} & send a line and move forward 1 line\\
\texttt{C-c C-r} & send the region to gnuplot \\
\texttt{C-c C-b} & send the buffer to gnuplot \\
\texttt{C-c C-f} & send a file to gnuplot \\
& \\[-1.5ex]
\texttt{M-\key{tab}} & complete keyword at point \\
\texttt{C-c C-i} & insert filename at point \\
\texttt{C-c C-j} & jump to next statement \\
\texttt{C-c C-n} & negate set option at point \\
\texttt{C-c C-c} & comment region \\
\texttt{C-c C-o} & set arguments of command at point \\
\texttt{S-mouse-2} & set arguments of command under mouse \\
\texttt{C-c C-h} & get help from the gnuplot info file \\
\texttt{C-c C-e} & look at the gnuplot process buffer \\
& \\[-1.5ex]
\texttt{C-c C-k} & kill the gnuplot process \\
\texttt{C-c C-u} & submit a bug report about gnuplot-mode \\
\texttt{C-c C-z} & customize gnuplot-mode \\
\hline
\\[-1ex]
\multicolumn{2}{l}{~\quad\textbf{Gnuplot process buffer}}\\[0.5ex]
\textrm{key} & \quad description \\
\hline
\texttt{M-C-p} & plot script \\
\texttt{M-C-f} & load file containing script \\
\hline \hline
\end{tabular}
\end{center}
\end{minipage}
\vspace{4ex}
\centerline{{\large\textbf{Starting gnuplot-mode}}}
\vspace{2ex}
\command{M-x gnuplot-mode}{Start gnuplot-mode in the current buffer.}
%
\command{M-x gnuplot-make-buffer}{Open a new buffer in gnuplot-mode}
\vfill
\begin{Boxedminipage}{1.05\linewidth}
\begin{center}
\footnotesize{Gnuplot-mode homepage} \\
\scriptsize{%%
\texttt{http://feff.phys.washington.edu/\char126ravel/software/gnuplot-mode/}}
\end{center}
\end{Boxedminipage}
\begin{flushleft}
{\footnotesize
This page {\copyright} 1998-2002 Bruce Ravel \hfill revised \revised \\
\texttt{<ravel@phys.washington.edu>} \\ %% \hfill printed \today \\
This page covers version {\version} of gnuplot-mode.
Permission is granted to make and distribute copies of this quick
reference provided the copyright notice and this permission are
preserved on all copies.}
\end{flushleft}
%%\vfil
\pagebreak
\centerline{{\large\textbf{Setting up gnuplot-mode}}}
\vspace{2ex}
Put the lines in the box below in your \file{.emacs} file or in the
system wide start-up file to enable gnuplot-mode. The first two lines
make Emacs recognize the functions described in the ``Starting
gnuplot-mode'' section on this page. The third line causes Emacs to
put all files ending in \file{.gp} into gnuplot-mode. The final line
defines a hotkey -- in this case \key{F9} -- for starting
gnuplot-mode.
\begin{SqBoxedminipage}{\linewidth}
\begin{Verbatim}
(autoload 'gnuplot-mode "gnuplot"
"gnuplot major mode" t)
(autoload 'gnuplot-make-buffer "gnuplot"
"open a buffer in gnuplot mode" t)
(setq auto-mode-alist
(append '(("\\.gp$" . gnuplot-mode))
auto-mode-alist))
(global-set-key [(f9)] 'gnuplot-make-buffer)
\end{Verbatim}%%$
\end{SqBoxedminipage}
\vspace{4ex}
\begin{description}
\item[Using the gnuplot-process buffer] \hfill \\
The process buffer contains an active \textsc{gnuplot} command line
for interacting with \textsc{gnuplot} directly. The \texttt{M-C-p}
and \texttt{M-C-f} key sequences will plot using the contents of
the gnuplot script buffer.
\item[Using the GUI to set command arguments] \hfill \\
\texttt{C-c C-c} and \texttt{S-mouse-2} are used to invoke the
graphical tool for setting command arguments. Use text fields and
option menus to choose appropriate values. Menus and buttons are
activated with the middle mouse button. A few plot options may not
be fully supported.
\item[Customizing variables] \hfill \\
The graphical customization tool for variables can be invoked using
\texttt{C-c C-z}. Descriptions of the variables relevant to
gnuplot-mode can be obtained by using \texttt{gnuplot} as the
regular expression for \texttt{M-x apropos}.
\item[On-line help] \hfill \\
Keyword completion and on-line help require that the
\textsc{gnuplot} info file be available and that the info-look
package be installed. The info file can be made from the
documentation supplied with the \textsc{gnuplot} distribution and
the info-look package is a standard part of Emacs 20. Users of
XEmacs or Emacs 19 should download \file{info-look.el} from the
gnuplot-mode homepage.
\item[Using pm3d] \hfill \\
All features of the pm3d patch to \textsc{gnuplot} should be
available when using gnuplot-mode. One particularly useful feature
of pm3d is the ability to push a cursor position into the
clipboard. This is done by double-clicking \texttt{mouse-1} in the
plot window, then doing \texttt{M-x yank-clipboard-selection}
(usually bound to \texttt{mouse-2}) in the gnuplot script buffer.
\end{description}
\vfill
\pagebreak
%%% end of first column
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large User configurable variables}
\end{center}
\end{Boxedminipage}
\end{center}
\variable{gnuplot-program}{gnuplot}{The name of the gnuplot
executable.}
%
\variable{gnuplot-process-name}{*gnuplot*}{The name of the gnuplot
process and process buffer.}
%
\variable{gnuplot-gnuplot-buffer}{plot.gp}{The name of the gnuplot
scratch buffer opened by \texttt{gnuplot-make-buffer}.}
%
%
\variable{gnuplot-display-process}{'window}{Determines how to display
the gnuplot process buffer, either 'frame, 'window, or nil}
%
\variable{gnuplot-info-display}{'window}{Determines how
`gnuplot-get-help' displays the info file, either 'frame, 'window,
or nil}
%
\variable{gnuplot-echo-command-line-flag}{t}{If lines that you send to
gnuplot from the gnuplot-mode buffer are not appearing at the
gnuplot prompt in the process buffer, set this to nil and restart
emacs.}
%
\variable{gnuplot-delay}{0.01}{Time in seconds to allow the gnuplot
display to update. Increase this number if the prompts and lines
are displayed out of order.}
%
\variable{gnuplot-quote-character}{'}{Quotation character used when
inserting a filename into the script (single, double, or no quote).}
\variable{gnuplot-buffer-max-size}{1000}{The maximum size in lines of
the gnuplot buffer. Excess lines are trimmed. 0 means to never trim.}
%%\vspace{1ex}
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large Hook variables}
\end{center}
\end{Boxedminipage}
\end{center}
\variable{gnuplot-mode-hook}{nil}{Functions run when gnuplot minor
mode is entered.}
%
\variable{gnuplot-load-hook}{nil}{Functions run when gnuplot.el is
first loaded.}
%
\variable{gnuplot-after-plot-hook}{nil}{Functions run after gnuplot
plots an entire buffer. See the doc string for
\texttt{gnuplot-recently-sent}.}
%
\variable{gnuplot-comint-setup-hook}{nil}{Functions run after setting
up the gnuplot process buffer in comint mode.}
%
\variable{gnuplot-info-hook}{nil}{Functions run before setting up
info-look in the gnuplot-mode buffer.}
%
\vfill\eject
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large Insertion variables}
\end{center}
\end{Boxedminipage}
\end{center}
\noindent These variables control the \texttt{Insertions} pull-down
menu, which can be used to insert \textsc{gnuplot} commands into the
script. The various sub-menu variables can be used to customize which
commands appear in the \texttt{Insertions} menu.
\vspace{2ex}
%
\variable{gnuplot-insertions-menu-flag}{t}{Non-nil means to display
the \texttt{Insertions} menu in the menubar.}
%
\variable{gnuplot-insertions-show-help-flag}{nil}{Non-nil means to
display help from info file when using the \texttt{Insertions}
menu.}
%
\variable{gnuplot-insertions-adornments}{\Star}{Contents of the
\texttt{adornments} sub-menu.}
%
\variable{gnuplot-insertions-plot-options}{\Star}{Contents of the
\texttt{plot-options} sub-menu.}
%
\variable{gnuplot-insertions-terminal}{\Star}{Contents of the
\texttt{terminal} sub-menu.}
%
\variable{gnuplot-insertions-x-axis}{\Star}{Contents of the \texttt{x
axis} sub-menu.}
%
\variable{gnuplot-insertions-x2-axis}{\Star}{Contents of the \texttt{x2
axis} sub-menu.}
%
\variable{gnuplot-insertions-y-axis}{\Star}{Contents of the \texttt{y
axis} sub-menu.}
%
\variable{gnuplot-insertions-y2-axis}{\Star}{Contents of the \texttt{y2
axis} sub-menu.}
%
\variable{gnuplot-insertions-z-axis}{\Star}{Contents of the \texttt{z
axis} sub-menu.}
%
\variable{gnuplot-insertions-parametric-plots}{\Star}{Contents of the
\texttt{parametric plots} sub-menu.}
%
\variable{gnuplot-insertions-polar-plots}{\Star}{Contents of the
\texttt{polar plots} sub-menu.}
%
\variable{gnuplot-insertions-surface-plots}{\Star}{Contents of the
\texttt{surface plots} sub-menu.}
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large Toolbar variables}
\end{center}
\end{Boxedminipage}
\end{center}
\noindent These variables control the use and location of the
toolbar in XEmacs. The toolbar has buttons equivalent to the key
sequences \texttt{C-c C-l}, \texttt{C-c C-r}, \texttt{C-c C-b},
\texttt{C-c C-e}, and \texttt{C-c C-h}.
\vspace{2ex}
%
\variable{gnuplot-display-toolbar-flag}{nil}{Non-nil means to display
a toolbar if using XEmacs.}
%
\variable{gnuplot-use-toolbar}{left-toolbar}{Location of XEmacs
toolbar. Valid values are \texttt{left-toolbar},
\texttt{right-toolbar}, \texttt{top-toolbar}, \texttt{bottom-toolbar},
\texttt{default-toolbar} and nil.}
%
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large Set Arguments}
\end{center}
\end{Boxedminipage}
\end{center}
\noindent These variables control the behavior of the graphical
interface to setting command arguments. \texttt{C-c C-c} with point
over a command or \texttt{S-mouse-2} with the mouse cursor over a
command will cause a small frame to pop open with which you can set
command arguments. Green button with bold text are bound to pup-up
menus --- use the mouse-2 to select an item from the menu. Grey fields
are for filling in strings or numbers. Hit the \textbf{[Set Options]}
button with \texttt{mouse-2} to insert command arguments into the
script. You can also use the \key{tab} key to move among the widgets
and \key{ret} to push the buttons.
\vspace{2ex}
%
\variable{gnuplot-gui-popup-flag}{nil}{When non-nil an argument
setting frame will pop open whenever the \texttt{Insertions} menu is
used.}
%
\variable{gnuplot-gui-plot-splot-fit-style}{'simple}{\texttt{'simple}
or \texttt{'complete} -- describes the extent of the list of
properties of for plot, splot, and fit in the GUI.}
%
\variable{gnuplot-gui-frame-plist}{\Star}{Property list of parameters
controlling the argument setting frame. Used by XEmacs.}
%
\variable{gnuplot-gui-frame-parameters}{\Star}{List of parameters
controlling the argument setting frame. Used by Emacs.}
%
\variable{gnuplot-gui-fontname-list}{\Star}{List of font available on your
computer to the terminal drivers.}
%
\begin{center}
\begin{Boxedminipage}{0.75\linewidth}
\begin{center}
{\large Faces}
\end{center}
\end{Boxedminipage}
\end{center}
\noindent These are various faces defined for use with gnuplot-mode.
\vspace{2ex}
%
\variable{gnuplot-prompt-face}{firebrick}{Color of gnuplot prompt (on a
light background) in process buffer. Bold and underlined on a
monochrome display.}
%
\variable{gnuplot-gui-menu-face}{dark olive green}{Color of menu
buttons (on a light background) in the argument setting frame.
Italic on a monochrome display.}
%
\variable{gnuplot-gui-button-face}{sienna}{Color of push buttons (on a
light background) in the argument setting frame. Italic on a
monochrome display.}
%
\variable{gnuplot-gui-label-face}{dark slate blue}{Color of buttons (on
a light background) used to set label lists in the argument setting
frame. Italic on a monochrome display.}
%
\vfill
\hrule
\vspace{0.5ex}
\begin{flushleft}
\footnotesize{Variables marked with {\Star} have default values that
are too long to print here.}
\end{flushleft}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End: