# pcb-rnd User Manual: Appendix

## Action Reference

\n This is pcb-rnd 2.1.0 (svn r22577) an interactive printed circuit board editor , Revision: 22702
Action | Description | Syntax | Plugin
--- | --- | --- | ---
About | Present the about box | About() | dialogs plugin
AddRats | Add one or more rat lines to the board. | AddRats(AllRats|SelectedRats|Close) |
AddTimer | Add a new timer | AddTimer(action, period, [repeat], [userdata]) | script plugin
ApplyVendor | Applies the currently loaded vendor drill table to the current design. | ApplyVendor() | vendor drill mapping
ArcNew | Create a pcb arc segment on a layer. For now data must be "pcb". Returns the ID of the new object or 0 on error. | ArcNew(data, layer, centx, centy, radiusx, radiusy, start_ang, delta_ang, thickness, clearance, flags) | act_draw
Atomic | Save or restore the undo serial number. | Atomic(Save|Restore|Close|Block) |
Attributes | Let the user edit the attributes of the layout, current or given layer, or selected subcircuit. | Attributes(Layout|Layer|Element|Subc) Attributes(Layer,layername) |
AutoPlaceSelected | Auto-place selected components. | AutoPlaceSelected() | autoplace plugin
AutoRoute | Auto-route some or all rat lines. | AutoRoute(AllRats|SelectedRats) | autoroute plugin
Backup | Backup the current layout - save using the same method that the timed backup function uses | Backup() |
Bell | Attempt to produce audible notification (e.g. beep the speaker). | Bell() | oldactions plugin
BoardFlip | Mirror the board over the x axis, optionally mirroring sides as well. | BoardFlip([sides]) |
Brave | Changes brave settings. | Brave() Brave(setting, on|off) |
BrowseScripts | Present a dialog box for browsing scripts | BrowseScripts() | script plugin
ChangeAngle | Changes the start angle, delta angle or both angles of an arc. | ChangeAngle(Object, start|delta|both, delta) ChangeAngle(SelectedObjects|Selected, start|delta|both, delta) ChangeAngle(SelectedArcs, start|delta|both, delta) |
ChangeClearSize | Changes the clearance size of objects. | ChangeClearSize(Object, delta|style) ChangeClearSize(SelectedPins|SelectedPads|SelectedVias, delta|style) ChangeClearSize(SelectedLines|SelectedArcs, delta|style) ChangeClearSize(Selected|SelectedObjects, delta|style) |
ChangeDrillSize | Changes the drilling hole size of objects. | ChangeDrillSize(Object, delta|style) ChangeDrillSize(SelectedPins|SelectedVias|Selected|SelectedObjects, delta|style) |
ChangeFlag | Sets or clears flags on objects. | ChangeFlag(Object|Selected|SelectedObjects, flag, value) ChangeFlag(SelectedLines|SelectedPins|SelectedVias, flag, value) ChangeFlag(SelectedPads|SelectedTexts|SelectedNames, flag, value) ChangeFlag(SelectedElements, flag, value) flag = thermal | join value = 0 | 1 |
ChangeHole |  |  | oldactions plugin
ChangeJoin | Changes the join (clearance through polygons) of objects. | ChangeJoin(ToggleObject|SelectedLines|SelectedArcs|Selected) |
ChangeName | Sets the name, text string, terminal ID or refdes of objects. | ChangeName(Object) ChangeName(Refdes) ChangeName(Layout|Layer) |
ChangeNonetlist | Changes the nonetlist flag of subcircuits. | ChangeNonetlist(ToggleObject) ChangeNonetlist(SelectedElements) ChangeNonetlist(Selected|SelectedObjects) |
ChangeOctagon |  |  | oldactions plugin
ChangePaste |  |  | oldactions plugin
ChangePinName | Sets the name of a specific pin on a specific subcircuit. | ChangePinName(Refdes,PinNumber,PinName) |
ChangeRadius | Changes the width or height (radius) of an arc. | ChangeRadius(Object, width|x|height|y|both, delta) ChangeRadius(SelectedObjects|Selected, width|x|height|y|both, delta) ChangeRadius(SelectedArcs, width|x|height|y|both, delta) |
ChangeSize | Changes the size of objects. | ChangeSize(Object, delta|style) ChangeSize(SelectedObjects|Selected, delta|style) ChangeSize(SelectedLines|SelectedPins|SelectedVias, delta|style) ChangeSize(SelectedPads|SelectedTexts|SelectedNames, delta|style) ChangeSize(SelectedElements, delta|style) |
ChangeSizes | Changes all sizes of objects. | ChangeSizes(Object, delta|style) ChangeSizes(SelectedObjects|Selected, delta|style) ChangeSizes(SelectedLines|SelectedPins|SelectedVias, delta|style) ChangeSizes(SelectedPads|SelectedTexts|SelectedNames, delta|style) ChangeSizes(SelectedElements, delta|style) |
ChangeSquare |  |  | oldactions plugin
ChkBuffer | Return 1 if currently selected buffer's index matches idx | ChkBuffer(idx) |
ChkGridSize | Return 1 if the currently selected grid matches the expected_size. If argument is "none" return 1 if there is no grid. | ChkGridSize(expected_size) ChkGridSize(none) |
ChkGridUnits | Return 1 if currently selected grid unit matches the expected (normally mm or mil) | ChkGridUnits(expected) |
ChkLayer | Returns 1 if the specified layer is the active layer | ChkLayer(layerid) |
ChkMode | Return 1 if the currently selected mode is the expected_mode | ChkMode(expected_mode) |
ChkRst | Return 1 if route_style_id matches pen. | ChkRst(route_style_id) |
ChkSubcID | Return 1 if currently shown subc ID matches the requested pattern | ChkSubcID(pattern) |
ChkView | Return 1 if layerid is visible. | ChkView(layerid) |
ClearOctagon |  |  | oldactions plugin
ClearSquare |  |  | oldactions plugin
ClrFlag | Clears flags on objects. | ClrFlag(Object|Selected|SelectedObjects, flag) ClrFlag(SelectedLines|SelectedPins|SelectedVias, flag) ClrFlag(SelectedPads|SelectedTexts|SelectedNames, flag) ClrFlag(SelectedElements, flag) flag = thermal | join |
Connection | Searches connections of the object at the cursor position. | Connection(Find|ResetLinesAndPolygons|ResetPinsAndVias|Reset) |
CreateMenu | Creates a new menu, popup (only path specified) or submenu (at least path and action are specified) | CreateMenu(path) CreateMenu(path, action, tooltip, cookie) |
CreateText | Create a new text object | CreateText(layer, fontID, X, Y, direction, scale, text) |
Cursor | Move the cursor. | Cursor(Type,DeltaUp,DeltaRight,Units) |
CycleDrag | Cycle through which object is being dragged | CycleDrag() |
DRC | Invoke the DRC check. Results are presented as the argument requests. | DRC([list|simple|print|log|dump]) |
Debug | Debug action. | Debug(...) | oldactions plugin
DebugXY | Debug action, with coordinates | DebugXY(...) | oldactions plugin
DelGroup | Remove a layer group; if the first argument is not specified, the current group is removed | DelGroup([@group]) |
Delete | Delete stuff. | Delete(Object|Selected) Delete(AllRats|SelectedRats) |
DeleteRats | Delete rat lines. | DeleteRats(AllRats|Selected|SelectedRats) |
DisableVendor | Disables automatic drill size mapping. | DisableVendor() | oldactions plugin
DisperseElements | Disperses subcircuits. | DisperseElements(All|Selected) |

Display

Several display-related actions.

Display(SubcID, template)
Display(Grid|Redraw|Pinout|PinOrPadName)
Display(CycleClip|CycleCrosshair|ToggleAllDirections|ToggleStartDirection)
Display(ToggleGrid|ToggleRubberBandMode|ToggleUniqueNames)
Display(ToggleName|ToggleClearLine|ToggleFullPoly|ToggleSnapPin)
Display(ToggleSnapOffGridLine|ToggleHighlightOnPoint|ToggleCheckPlanes)
Display(ToggleThindraw|ToggleThindrawPoly|ToggleOrthoMove|ToggleLocalRef)
Display(ToggleLiveRoute|ToggleShowDRC|ToggleAutoDRC|LockNames|OnlyNames)

DrcDialog | Execute drc checks and invoke a view list dialog box for presenting the results | DrcDialog([list|simple]) | dialogs plugin
DumpActions | Dump all actions available. | DumpActions() |
DumpCsect | Print the cross-section of the board (layer stack) | DumpCsect() | draw_csect
DumpLibrary | Display the entire contents of the libraries. | DumpLibrary() | oldactions plugin
DumpObjFlags | Print a script processable digest of all flags, per object type | DumpObjFlags() |
DumpPluginDirs | Print plugins directories in a format digestable by scripts. | DumpPluginDirs() |
DumpPlugins | Print plugins loaded in a format digestable by scripts. | DumpPlugins() |
DumpVersion | Dump version in script readable format. | DumpVersion() |
DupGroup | Duplicate a layer group; if the first argument is not specified, the current group is duplicated | DupGroup([@group]) |
EditGroup | Change a property or attribute of a layer group. If the first argument starts with @, it is taken as the group name to manipulate, else the action uses the current layer's group. Without arguments or if only a layer name is specified, interactive runs editing. | Editgroup([@group], [name=text|type=+bit|type=-bit])] Editlayer([@layer], attrib, key=value) |
EditLayer | Change a property or attribute of a layer. If the first argument starts with @, it is taken as the layer name to manipulate, else the action uses the current layer. Without arguments or if only a layer name is specified, interactive runs editing. | Editlayer([@layer], [name=text|auto=[0|1]|sub=[0|1])] Editlayer([@layer], attrib, key=value) |
ElementList | Adds the given element if it doesn't already exist. | ElementList(Start|Done|Need,<refdes>,<footprint>,<value>) |
ElementSetAttr | Sets or clears an element-specific attribute. | ElementSetAttr(refdes,name[,value]) |
EnableVendor | Enables automatic drill size mapping. | EnableVendor() | oldactions plugin
EvalConf | Perform various operations on the configuration tree. | EvalConf(path) - evaluate a config path in different config sources to figure how it ended up in the native database | diag plugin
ExecCommand | Run shell command | System(shell_cmd) |
ExecuteFile | Run actions from the given file. | ExecuteFile(filename) |
ExpFeatTmp | Experimental Feature Template. | ExpFeatTmp(...) | experimental features plugin
Export | Export the current layout, e.g. Export(png, --dpi, 600) | Export(exporter, [exporter-args]) |
ExportGUI | Open the export dialog. | ExportGUI() | dialogs plugin
ExportOldConn | Export galvanic connection data in an old, custom file format. | ExportOldConn(AllConnections|AllUnusedPins|ElementConnections,filename) | export_oldconn HID
ExportScadPoly | exports all selected polygons to an openscad script; only the outmost contour of each poly is exported | ScadExportPoly(filename) | openscad HID
ExportcpcbTo | Dumps the current board in c-pcb format. | ExportcpcbTo(filename) | cpcb plugin
FlagEdit | Change the layer binding. | FlagEdit(object) | dialogs plugin
Flip | Flip a subcircuit to the opposite side of the board. | Flip(Object|Selected) |
FontEdit | Convert the current font to a PCB for editing. | FontEdit() | fontmode plugin
FontSave | Convert the current PCB back to a font. | FontSave() | fontmode plugin
Fontsel | Open the font selection dialog | Fontsel() | dialogs plugin
FreeRotateBuffer | Rotates the current paste buffer contents by the specified angle. The angle is given in degrees. If no angle is given, the user is prompted for one. | FreeRotateBuffer([Angle]) |
FullScreen | Hide widgets to get edit area full screen | FullScreen(on|off|toggle) |
GetStyle | Return integer index (>=0) of the currently active style or -1 if no style is selected (== custom style) | GetStyle() |
GetValue | Convert a coordinate value. Returns an unitless double or FGW_ERR_ARG_CONV. The 3rd parameter controls whether to require relative coordinates (+- prefix). Wraps pcb_get_value_ex(). | GetValue(input, units, relative, default_unit) | act_draw
GetXY | Get a coordinate. | GetXY() |
GlobalPuller | Pull all traces tight. | pcb_act_GlobalPuller([Found|Selected]) | puller plugin
Grid | Set the grid. | grid(set, [name:]size[@offs][!unit]) grid(+|up) grid(-|down) grid(#N) grid(idx, N) |
GroupPropGui | Change group flags and properties | GroupPropGui(groupid) | dialogs plugin
IOIncompatList | Present the format incompatibilities of the last save to file operation. | IOIncompatList([list|simple]) |
IOIncompatListDialog | Present the format incompatibilities of the last save to file operation in a GUI dialog. | IOIncompatListDialog([list|simple]) | dialogs plugin
Import | Import schematics. | Import() Import([gnetlist|make[,source,source,...]]) Import(setnewpoint[,(mark|center|X,Y)]) Import(setdisperse,D,units) | import_sch plugin
ImportcpcbFrom | Loads the auto-routed tracks from the specified c-pcb output. | ImportcpcbFrom(filename) | cpcb plugin
LayerBinding | Change the layer binding. | LayerBinding(object) LayerBinding(selected) LayerBinding(buffer) | dialogs plugin
LayerPropGui | Change layer flags and properties | LayerPropGui(layerid) | dialogs plugin
LibraryChanged | Tells the GUI that the libraries have changed. | LibraryChanged() | oldactions plugin
LineNew | Create a pcb line segment on a layer. For now data must be "pcb". Returns the ID of the new object or 0 on error. | LineNew(data, layer, X1, Y1, X2, Y2, Thickness, Clearance, Flags) | act_draw
ListRotations |  |  | oldactions plugin
ListScripts | List fungw scripts, optionally filtered wiht regex pat. | ListScripts([pat]) | script plugin
LoadCalayFrom | Loads the specified calay netlist/component file pair. | LoadCalayFrom(filename) | calay importer
LoadDsnFrom | Loads the specified routed dsn file. | LoadDsnFrom(filename) | dsn importer
LoadEeschemaFrom | Loads the specified eeschema .net file - the netlist must be an s-expression. | LoadEeschemaFrom(filename) | kicad plugin
LoadFontFrom | Load PCB font from a file | LoadFontFrom([file, id]) |
LoadFootprint | Loads a single footprint by name. | pcb_load_footprint(filename[,refdes,value]) |
LoadFpcbnlFrom | Loads the specified freepcb netlist. | LoadFpcbnlFrom(filename) | fpcb_nl importer
LoadFrom | Load layout data from a file. | LoadFrom(Layout|LayoutToBuffer|SubcToBuffer|Netlist|Revert,filename[,format]) |
LoadHpglFrom | Loads the specified hpgl plot file to the current buffer | LoadHpglFrom(filename) | hpgl importer
LoadIpc356From | Loads the specified IPC356-D netlist | LoadIpc356From(filename, [nonet], [nopad], [nosubc]) | ipcd356 importer
LoadLtspiceFrom | Loads the specified ltspice .net and .asc file - the netlist must be mentor netlist. | LoadLtspiceFrom(filename) | ltspice importer
LoadMentorFrom | Loads the specified Mentor Graphics Design Capture schematics flat .edf file. | LoadMentorFrom(filename) | mentor_sch importer
LoadMucsFrom | Loads the specified mucs routing file. | LoadMucsFrom(filename) | mucs importer
LoadScript | Load a fungw script | LoadScript(id, filename, [language]) | script plugin
LoadTedaxFrom | Loads the specified block from a tedax file. | LoadTedaxFrom(netlist|board|footprint|stackup|layer, filename, [block_id, [silent]]) | tEDAx IO
LoadTinycadFrom | Loads the specified tinycad .net file - the netlist must be tinycad netlist output. | LoadTinycadFrom(filename) | tinycad importer
LoadTtfGlyphs | Loads glyphs from an outline ttf in the specified source range, optionally remapping them to dstchars range in the pcb-rnd font | LoadTtfGlyphs(filename, srcglyps, [dstchars]) | ttf importer
LoadVendorFrom | Loads the specified vendor lihata file. | LoadVendorFrom(filename) | vendor drill mapping
LoadhypFrom | Loads the specified Hyperlynx file. | LoadhypFrom(filename[, "debug"]...) | hyp importer
ManagePlugins | Manage plugins dialog. | ManagePlugins() | dialogs plugin
MarkCrosshair | Set/Reset the pcb_crosshair mark. | MarkCrosshair() MarkCrosshair(Center) |
Message | Writes a message to the log window. | message(message) |
MessageBox | Open a modal message dialog box with title and label. If icon string is not empty, display the named icon on the left. Present one or more window close buttons with different text and return value. | MessageBox(icon, title, label, button_txt, button_retval, ...) |
MinClearGap | Ensures that polygons are a minimum distance from objects. | MinClearGap(delta) MinClearGap(Selected, delta) |
MinMaskGap |  |  | oldactions plugin
Mode | Change or use the tool mode. | Mode(Arc|Arrow|Copy|InsertPoint|Line|Lock|Move|None|PasteBuffer) Mode(Polygon|Rectangle|Remove|Rotate|Text|Thermal|Via) Mode(Notify|Release|Cancel|Stroke) Mode(Save|Restore) |
MorphPolygon | Converts dead polygon islands into separate polygons. | pcb_poly_morph(Object|Selected) |
MoveLayer | Moves/Creates/Deletes Layers. | MoveLayer(old,new) MoveLayer(lid,group,gid) |
MoveObject | Moves the object under the crosshair. | pcb_move_obj(X,Y,[units]) |
MoveToCurrentLayer | Moves objects to the current layer. | MoveToCurrentLayer(Object|SelectedObjects) |
NetlistChanged | Tells the GUI that the netlist has changed. | NetlistChanged() | oldactions plugin
New | Starts a new layout. | New([name]) |
NewGroup | Create a new layer group with a single, positive drawn layer in it | NewGroup(type [,location [, purpose[, auto|sub]]]) |
Normalize | Move all objects within the drawing area, align the drawing to 0;0 | Normalize() |
Oneliner | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
OptAutoOnly | Toggles the optimize-only-autorouted flag. | OptAutoOnly() | oldactions plugin
PCBChanged | Tells the GUI that the whole PCB has changed. The optional "revert"parameter can be used as a hint to the GUI that the same design is beingreloaded, and that it might keep some viewport settings | PCBChanged([revert]) | oldactions plugin
PadstackBreakup | Break up a padstack into one non-padstack object per layer type (the hole is ignored) | PadstackBreakup(buffer|selected|objet) |
PadstackConvert | Convert selection or current buffer to padstack | PadstackConvert(buffer|selected, [originx, originy]) |
PadstackEdit | interactive pad stack editor | PadstackEdit(object, [tab]) | dialogs plugin
PadstackPlace | Place a pad stack (either proto_id, or if not specified, the default for style) | PadstackPlace([proto_id|default], [x, y]) |
PasteBuffer | Various operations on the paste buffer. | PasteBuffer(AddSelected|Clear|1..PCB_MAX_BUFFER) PasteBuffer(Rotate, 1..3) PasteBuffer(Convert|Restore|Mirror) PasteBuffer(ToLayout, X, Y, units) PasteBuffer(ToLayout, crosshair) PasteBuffer(Save, Filename, [format], [force]) PasteBuffer(Push) PasteBuffer(Pop) |
Pinout | Present the subcircuit pinout box | Pinout() | dialogs plugin
PolyCombine |  |  | polycombine plugin
PolyHatch | hatch the selected polygon(s) with lines of the current style; lines are drawn on the current layer; flags are h:horizontal, v:vertical, c:contour, p:poly | PolyHatch([spacing], [hvcp]) PolyHatch(interactive) | lib_polyhelp
PolyNew | Create an empty polygon. For now data must be "pcb". Use PolyNewPoint to add points. Returns a polygon pointer valid until PolyNewEnd() is called. | PolyNew(data, layer, ptlist, clearance, flags) | act_draw
PolyNewEnd | Close and place a polygon started by PolyNew. Returns the ID of the new object or 0 on error. | PolyNewEnd(data, layer, poly) | act_draw
PolyNewFromPoints | Create a polygon. For now data must be "pcb". ptlist is a comma separated list of coordinates (untiless coordinates are treated as mm). Returns the ID of the new object or 0 on error. | PolyNewFromRectangle(data, layer, ptlist, clearance, flags) | act_draw
PolyNewFromRectangle | Create a rectangular polygon. For now data must be "pcb". Returns the ID of the new object or 0 on error. | PolyNewFromRectangle(data, layer, x1, y1, x2, y2, clearance, flags) | act_draw
PolyNewPoints | Add a list of points to a polygon created by PolyNew. Returns 0 on success. | PolyNewPoints(poly, ptlist) | act_draw
PolyOffs | replicate the outer contour of the selected polygon(s) with growing or shrinking them by offset; the new polygon is drawn on the current layer | PolyOffs(offset) | lib_polyhelp
PolyStitch |  |  | polystitch plugin
Polygon | Some polygon related stuff. | Polygon(Close|CloseHole|PreviousPoint) |
Preferences | Present the preferences dialog, optionally opening the tab requested. | Preferences([tabname]) | dialogs plugin
Print | Present the print export dialog for printing the layout from the GUI. | Print() |
PrintActions | Print all actions available. | PrintActions() |
PrintCalibrate | Calibrate the printer. | PrintCalibrate() |
PrintCopyright | Print copyright notice. | PrintCopyright() |
PrintFiles | Print files currently loaded. | PrintFiles() |
PrintGUI | Open the print dialog. | PrintGUI() | dialogs plugin
PrintPaths | Print full paths and search paths. | PrintPaths() |
PrintUsage | Print command line arguments of pcb-rnd or a plugin loaded. | PrintUsage() PrintUsage(plugin) |
PrintVersion | Print version. | PrintVersion() |
PromptFor | Prompt for a string. Returns the string (or NULL on cancel) | PromptFor([message[,default[,title]]]) |
PstkNew | Create a padstack. For now data must be "pcb". glob_clearance=0 turns off global clearance. Returns the ID of the new object or 0 on error. | PstkNew(data, protoID, x, y, glob_clearance, flags) | act_draw
Puller | Pull an arc-line junction tight. | pcb_act_Puller() | puller plugin
Quit | Quits the application after confirming. | Quit() |
Redo | Redo recent "undo" operations. | redo() |
ReloadScript | Reload a fungw script | ReloadScript(id) | script plugin
RemoveMenu | Recursively removes a new menu, popup (only path specified) or submenu. | RemoveMenu(path|cookie) |
RemoveSelected | Removes any selected objects. | pcb_remove_selected() |
Renumber | Renumber all subcircuits. The changes will be recorded to filename for use in backannotating these changes to the schematic. | Renumber() Renumber(filename) | renumber plugin
RenumberBlock | TODO | RenumberBlock(old_base,new_base) | renumber plugin
RenumberBuffer | TODO | RenumberBlock(old_base,new_base) | renumber plugin
ReplaceFootprint | Replace the footprint of the selected components with the footprint specified. | ReplaceFootprint([Selected|Object], [footprint], [dumb]) |
Report | Produce various report. | Report(Object|DrillReport|FoundPins|NetLength|NetLengthTo|AllNetLengths|[,name]) | report plugin
ReportObject | Report on the object under the crosshair | ReportObject() | report plugin
RipUp | Ripup auto-routed tracks | RipUp(All|Selected|Element) |
Rotate90 | Rotates the object under the crosshair by 90 degree steps. | pcb_move_obj(steps) |
RouteStyle | Copies the indicated routing style into the current pen. | RouteStyle(style_id|style_name) |
RouteStylesChanged | Tells the GUI that the routing styles have changed. | RouteStylesChanged() | oldactions plugin
SaveFontTo | Save PCB font to a file | SaveFontTo([file, id]) |
SavePatch | Save netlist patch for back annotation. | SavePatch(filename) |
SaveTedax | Saves the specific type of data in a tEDAx file. | SaveTedax(netlist|board-footprints|stackup|layer|board|drc, filename) | tEDAx IO
SaveTo | Saves data to a file. | SaveTo(Layout|LayoutAs,filename,[fmt]) SaveTo(PasteBuffer,filename,[fmt]) |
ScaleBuffer | Scales the buffer by multiplying all coordinates by a floating point number. If only x is given, it is also used for y and thickness too. If subc is not empty, subcircuits are also scaled | ScaleBuffer(x [,y [,thickness [,subc]]]) |
ScriptCookie | Return a cookie specific to the current script instance during script initialization | ScriptCookie() | script plugin
ScriptPersistency | Read or remove script persistency data savd on preunload | ScriptPersistency(read|remove) | script plugin
Select | Toggles or sets the selection. | Select(Object|ToggleObject) Select(All|Block|Connection|Invert) Select(Convert) |
SelectLayer | Select which layer is the current layer. | SelectLayer(1..MAXLAYER|Silk|Rats) |
SetFlag | Sets flags on objects. | SetFlag(Object|Selected|SelectedObjects, flag) SetFlag(SelectedLines|SelectedPins|SelectedVias, flag) SetFlag(SelectedPads|SelectedTexts|SelectedNames, flag) SetFlag(SelectedElements, flag) flag = thermal | join |
SetOctagon |  |  | oldactions plugin
SetSame | Sets current layer and sizes to match indicated item. | SetSame() |
SetSquare |  |  | oldactions plugin

SetThermal

Set the thermal (on the current layer) of padstacks to the given style.
Style = 0 means no thermal.
Style = 1 has diagonal fingers with sharp edges.
Style = 2 has horizontal and vertical fingers with sharp edges.
Style = 3 is a solid connection to the plane.
Style = 4 has diagonal fingers with rounded edges.
Style = 5 has horizontal and vertical fingers with rounded edges.

SetThermal(Object|SelectedPins|SelectedVias|Selected, Style)

SetUnits | Set the default measurement units. | SetUnits(mm|mil) |
SetValue | Change various board-wide values and sizes. | SetValue(Grid|Line|LineSize|Text|TextScale, delta) |
SwitchHID | Switch to another HID. | SwitchHID(lesstif|gtk|batch) |
System | Run shell command | System(shell_cmd) |
Teardrops |  |  | teardrops plugin
TextNew | Create a pcb text on a layer. For now data must be "pcb". Font id 0 is the default font. Thickness 0 means default, calculated thickness. Scale=100 is the original font size. Returns the ID of the new object or 0 on error. | TextNew(data, layer, x, y, rot, scale, thickness, test_string, flags) | act_draw
ToPoly | convert a closed loop of lines and arcs into a polygon | ToPoly() ToPoly(outline) | lib_polyhelp
ToggleHideName |  |  | oldactions plugin
ToggleVendor | Toggles the state of automatic drill size mapping. | ToggleVendor() | oldactions plugin
ToggleView | Toggle the visibility of the specified layer or layer group. | ToggleView(1..MAXLAYER) ToggleView(layername) ToggleView(Silk|Rats|Pins|Vias|BackSide) ToggleView(All, Open|Vis, Set|Clear|Toggle) |
Undo | Undo recent changes. | undo() undo(ClearList) |
UndoDialog | Open the undo dialog. | UndoDialog() | dialogs plugin
UnloadScript | Unload a fungw script | UnloadScript(id) | script plugin
UnloadVendor | Unloads the current vendor drill mapping table. | UnloadVendor() | vendor drill mapping
Unselect | Unselects the object at the pointer location or the specified objects. | Unselect(All|Block|Connection) |
ViewList | Present a new empty view list | viewlist([name, [winid]]) | dialogs plugin
acompnet | Attempt to auto-complete the current network | acompnet() | acompnet plugin
align | Align subcircuits | Align(X/Y, [Lefts/Rights/Tops/Bottoms/Centers/Marks, [First/Last/pcb_crosshair/Average[, Gridless]]]) | distalign plugin
aligntext | Align Text Elements | AlignText(X/Y, [Lefts/Rights/Tops/Bottoms/Centers, [First/Last/pcb_crosshair/Average[, Gridless]]]) | distaligntext plugin
asm | Interactive assembly assistant | asm() | asm plugin
autocrop | Autocrops the board dimensions to (extants + a margin of 1 grid), keeping the move and board size grid aligned | autocrop() | autocrop plugin
awk | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
cam | Export jobs for feeding cam processes | cam(exec, script) cam(call, jobname) | cam exporter
circle | Generate a filled circle (zero length round cap line) | circle([where,] diameter) | shape plugin
cli_MessageBox | Intenal: CLI frontend action. Do not use directly. |  |
cli_PromptFor | Intenal: CLI frontend action. Do not use directly. |  |

conf

Perform various operations on the configuration tree.

conf(set, path, value, [role], [policy]) - change a config setting to an absolute value
conf(delta, path, value, [role], [policy]) - change a config setting by a delta value (numerics-only)
conf(toggle, path, [role]) - invert boolean value of a flag; if no role given, overwrite the highest prio config
conf(reset, role) - reset the in-memory lihata of a role
conf(iseq, path, value) - returns whether the value of a conf item matches value (for menu checked's)

constraint | Configure or remove a drawing constraint | constraint(type, off) constraint(type, value, [value...]) | ddraft plugin
cpcb | Executed external autorouter cpcb to route the board or parts of the board | cpcb(board|selected, [command]) | cpcb plugin
d1 | debug action for development | d1() | diag plugin

dad

Manipulate Dynamic Attribute Dialogs

dad(dlgname, new) - create new dialog
dad(dlgname, label, text) - append a label widget
dad(dlgname, button, text) - append a button widget
dad(dlgname, button_closes, label, retval, ...) - standard close buttons
dad(dlgname, enum, choices) - append an enum (combo box) widget; choices is a tab separated list
dad(dlgname, bool, [label]) - append an checkbox widget (default off)
dad(dlgname, integer|real|coord, min, max, [label]) - append an input field
dad(dlgname, string) - append a single line text input field
dad(dlgname, progress) - append a progress bar (set to 0)
dad(dlgname, tree, cols, istree, [header]) - append tree-table widget; header is like enum values
dad(dlgname, tree_append, row, cells) - append after row (0 means last item of the root); cells is like enum values; returns a row pointer
dad(dlgname, tree_append_under, row, cells) - append at the end of the list under row (0 means last item of the root); cells is like enum values; returns a row pointer
dad(dlgname, tree_insert, row, cells) - insert before row (0 means first item of the root); cells is like enum values; returns a row pointer
dad(dlgname, begin_hbox) - begin horizontal box
dad(dlgname, begin_vbox) - begin vertical box
dad(dlgname, begin_hpane) - begin horizontal paned box
dad(dlgname, begin_vpane) - begin vertical paned box
dad(dlgname, begin_table, cols) - begin table layout box
dad(dlgname, begin_tabbed, tabnames) - begin a view with tabs; tabnames are like choices in an enum; must have as many children widgets as many names it has
dad(dlgname, end) - end the last begin
dad(dlgname, flags, flg1, flg2, ...) - change the flags of the last created widget
dad(dlgname, onchange, action) - set the action to be called on widget change
dad(dlgname, run, title) - present dlgname as a non-modal dialog
dad(dlgname, run_modal, title) - present dlgname as a modal dialog
dad(dlgname, exists) - returns wheter the named dialog exists (0 or 1)
dad(dlgname, set, widgetID, val) - changes the value of a widget in a running dialog
dad(dlgname, get, widgetID, [unit]) - return the current value of a widget

dialogs plugin

ddraft | Enter 2d drafting CLI mode or execute command | ddraft([command]) | ddraft plugin
distribute | Distribute subcircuits | Distribute(X/Y, [Lefts/Rights/Tops/Bottoms/Centers/Marks/Gaps, [First/Last/pcb_crosshair, First/Last/pcb_crosshair[, Gridless]]]) | distalign plugin
distributetext | Distribute Text Elements | DistributeText(Y, [Lefts/Rights/Tops/Bottoms/Centers/Gaps, [First/Last/pcb_crosshair, First/Last/pcb_crosshair[, Gridless]]]) | distaligntext plugin
djopt | Perform various optimizations on the current board. | djopt(debumpify|unjaggy|simple|vianudge|viatrim|orthopull) djopt(auto) - all of the above djopt(miter) | djopt
dlg_test | test the attribute dialog | dlg_test() | dialogs plugin
dumpconf | Perform various operations on the configuration tree. | dumpconf(native, [verbose], [prefix]) - dump the native (binary) config tree to stdout dumpconf(lihata, role, [prefix]) - dump in-memory lihata representation of a config tree | diag plugin
dumpdata | Dump an aspect of the data | dumpdata() | diag plugin
dumpflags | dump flags, optionally using the format string provided by the user | dumpflags([fmt]) | diag plugin
dumpfonts | Print info about fonts | dumpfonts() | diag plugin
dumpids | Dump the ID hash | DumpIDs() | diag plugin
dumplayers | Print info about each layer | dumplayers([all]) | diag plugin
dumpundo | Print info about fonts | dumpfonts() | diag plugin
estutter | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
extedit | extedit(object|selected, [interactive|method]) | Invoke an external program to edit a specific part of the current board. | extedit plugin
find2perf | Measure the peformance of find2.c | find2perf() | diag plugin
forcecolor | change selected objects' color to #RRGGBB, reset if does not start with '#' | forcecolor(#RRGGBB) | diag plugin
fp_rehash | Flush the library index; rescan all library search paths and rebuild the library index. Useful if there are changes in the library during a pcb-rnd session. | fp_rehash() |
gui_FallbackColorPick | Intenal: GUI frontend action. Do not use directly. |  | dialogs plugin
gui_MessageBox | Intenal: GUI frontend action. Do not use directly. |  | dialogs plugin
gui_PromptFor | Intenal: GUI frontend action. Do not use directly. |  | dialogs plugin
h | Print a help message for commands. | h | shand_cmd plugin
integrity | perform integrirty check on the current board and generate errors if needed | integrity() | diag plugin
javascript | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
jostle | Make room by moving wires away. | Jostle(diameter) | jostle plugin
js | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
l | Loads layout data. | l [name] [format] | shand_cmd plugin
le | Loads an element (subcircuit, footprint) into the current buffer. | le [name] | shand_cmd plugin
lua | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
m | Loads a layout into the current buffer. | m [name] | shand_cmd plugin
mawk | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
mesh | generate a mesh for simulation | mesh() | openems HID
mill | Calculate toolpath for milling away copper | mill() | millpath plugin
mruby | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
net | Perform various actions on netlists. | Net(find|select|rats|norats|clear[,net[,pin]]) Net(freeze|thaw|forcethaw) Net(swap) Net(add,net,pin) |
netlist | Perform various actions on netlists. | Net(find|select|rats|norats|clear[,net[,pin]]) Net(freeze|thaw|forcethaw) Net(swap) Net(add,net,pin) |
paral | Draw a line perpendicular to another line | perp() | ddraft plugin
perl | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
perp | Draw a line perpendicular to another line | perp() | ddraft plugin
propedit |  | propedit(object[:id]|layer[:id]|layergrp[:id]|pcb|selection|selected) | propedit
propprint | Print a property map of objects matching the scope. Scope is documented at PropEdit(). | PropPrint([scope]) | propedit
propset | Change the named property of all selected objects to/by value. Scope is documented at PropEdit(). | propset([scope], name, value) | propedit
pscalib |  |  | ps HID
pstklib | Present the padstack library dialog on board padstacks or the padstacks of a subcircuit | pstklib([board|subcid|object]) | dialogs plugin
py | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
python | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
q! | Quits the application without confirming. | q! | shand_cmd plugin
q | Quits the application after confirming. | q | shand_cmd plugin
query | Perform various queries on PCB data. | query(dump, expr) - dry run: compile and dump an expression |
regpoly | Generate regular polygon. Where is x;y and radius is either r or rx;ry. Rotation is in degrees. | regpoly([where,] corners, radius [,rotation]) | shape plugin
rn | Reads netlist. | rn [name] | shand_cmd plugin
roundrect | Generate a rectangle with round corners | roundrect([where,] width[;height] [,rx[;ry] [,rotation [,cornstyle [,roundness]]]]) | shape plugin
ruby | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
s | Saves layout data. | s [name] w [name] | shand_cmd plugin
shape | Interactive shape generator. | shape() | shape plugin
skline | Tool for drawing sketch lines | skline() | sketch_route plugin
skretriangulate | Reconstruct CDT on all layer groups | skretriangulate() | sketch_route plugin
sktransform | Transform sketch to geometrical wiring | sktransform(rect|oct|alldir) | sketch_route plugin
smartdisperse | Disperse subcircuits into clusters, by netlist connections | SmartDisperse([All|Selected]) | smartdisperse plugin
split | Use one or more objects as cutting edge and trim or split other objects. First argument is the cutting edge | trim([selected|found|object], [selected|found|object]) split([selected|found|object], [selected|found|object]) | ddraft plugin
stroke | Various gesture recognition related functions | stroke(gesture, seq) | stroke plugin
stt | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
subc | Various operations on subc | subc(hash, [board|selected]) subc(loose, on|off|toggle|check) |
tang | Draw a line to be tangential to a circle | tang() | ddraft plugin
tcl | Execute a script one-liner using a specific language | Oneliner(lang, script) | script plugin
trim | Use one or more objects as cutting edge and trim or split other objects. First argument is the cutting edge | trim([selected|found|object], [selected|found|object]) split([selected|found|object], [selected|found|object]) | ddraft plugin
w | Saves layout data. | s [name] w [name] | shand_cmd plugin
wq | Saves the layout data and quits. | wq | shand_cmd plugin