magic/doc/html/macro.html

103 lines
3.8 KiB
HTML
Raw Permalink Normal View History

<HTML>
<HEAD>
<STYLE type="text/css">
H1 {color: black }
H2 {color: maroon }
H3 {color: #007090 }
A.head:link {color: #0060a0 }
A.head:visited {color: #3040c0 }
A.head:active {color: white }
A.head:hover {color: yellow }
A.red:link {color: red }
A.red:visited {color: maroon }
A.red:active {color: yellow }
</STYLE>
</HEAD>
<TITLE>Magic-7.3 Command Reference</TITLE>
<BODY BACKGROUND=graphics/blpaper.gif>
<H1> <IMG SRC=graphics/magic_title2.gif ALT="Magic VLSI Layout Tool Version 7.3">
<IMG SRC=graphics/magic_OGL_sm.gif ALIGN="top" ALT="*"> </H1>
<H2>macro</H2>
<HR>
Define or print a macro called char
<HR>
<H3>Usage:</H3>
<BLOCKQUOTE>
<B>macro</B> [<I>window_type</I>] [<I>key</I> [<I>value</I>]] <BR><BR>
<BLOCKQUOTE>
where <I>key</I> is the name of a valid key (see below), and
<I>value</I> is a <B>magic</B> command-line command. If
present, <I>window_type</I> must be one of the four window
types accepted by the <B>specialopen</B> command: <B>layout</B>,
<B>color</B>, <B>netlist</B>, and <B>wind3d</B>. If omitted,
the layout window is assumed by default, unless the command has
been called from inside a window (using the colon or semicolon
escape to the command-line), in which case that window type is
assumed.
</BLOCKQUOTE>
</BLOCKQUOTE>
<H3>Summary:</H3>
<BLOCKQUOTE>
The <B>macro</B> command translates keystrokes typed into
a layout window into <B>magic</B> command-line commands.
When the key <I>key</I> is pressed in a layout window, the
command stored in <I>value</I> is executed relative to that
layout window. The default bindings are specified in the
system <TT>.magic</TT> file, read at startup. These macros
may be arbitrarily rebound using the <B>macro</B> command. <P>
A key <B>macro</B> may be unbound from a command by
passing an empty string ("") for the <I>value</I>. <P>
<I>key</I> is any valid name for a keyboard keypress event.
In its simplest form, this may just be the name of the key,
such as "g" or "X". The space bar key must be quoted in
double-quotes; most other characters may be unquoted.
Control characters may be specified by the two-character
combination of the carat ("^") key followed by a capital
letter, such as "^Z". The use of embedded control characters
is deprecated, as it is incompatible with Tcl syntax. <P>
<I>key</I> may also be specified as any valid X11 name for
a key as defined in the include file <TT>keysymdef.h</TT>
on UNIX systems. This allows specification of function
keys such as "XK_F8" or keypad keys such as "XK_KP_Right". <P>
Buttons are treated just like keys for the purpose of
defining macros. While the official names for buttons
2020-01-13 14:29:20 +01:00
in <TT>keysymdef.h</TT> are "<B>XK_Pointer_Button1</B>",
etc., the <B>macro</B> command accepts the abbreviated
forms <B>Button1</B>, and so forth. <P>
Finally, key modifiers may be prepended to the key name.
Valid key modifiers are <B>Shift_</B>, <B>Control_</B>,
<B>Alt_</B>, and <B>Meta_</B>, and may be coupled in any
combination. Mouse buttons may also be combined with key
modifiers, so, for example, <B>Shift_Button1</B> is a legal,
unique binding. <P>
</BLOCKQUOTE>
<H3>Implementation Notes:</H3>
<BLOCKQUOTE>
<B>macro</B> is implemented as a built-in window command in <B>magic</B>.
</BLOCKQUOTE>
<H3>See Also:</H3>
<BLOCKQUOTE>
<A HREF=imacro.html><B>imacro</B></A> <BR>
</BLOCKQUOTE>
<P><IMG SRC=graphics/line1.gif><P>
<TABLE BORDER=0>
<TR>
<TD> <A HREF=commands.html>Return to command index</A>
</TR>
</TABLE>
<P><I>Last updated:</I> November 10, 2004 at 10:34am <P>
</BODY>
</HTML>