Commit Graph

166 Commits

Author SHA1 Message Date
stefan schippers d91daea84c extend interval raw file loading to `xschem raw read file type sweep1 sweep2` 2024-01-01 01:28:28 +01:00
stefan schippers a95e3597bc Implement vertical flip (shift-V) and vertical flip in place (alt-v), change netlisting mode command moved to bindkey ctrl-shift-V; when opening insert component dialog focus the File/Search entry box 2023-12-23 00:06:01 +01:00
stefan schippers ed477b90a5 eps export 2023-12-12 01:14:40 +01:00
stefan schippers 7e820d05b0 update docs about new additions to the `xschem print` command 2023-12-11 15:22:36 +01:00
stefan schippers f042b940c2 add xschemrc option ps_page_title (default: enabled, 1) to set or hide page title in ps/pdf exports, more precise graph exports in svg and ps/pdf 2023-12-11 10:43:09 +01:00
stefan schippers c360187d8a fast option in `xschem unhilight_all` 2023-12-10 22:15:20 +01:00
stefan schippers 39769187d3 add `xschem set cursor[12]_x` commands for moving graph cursors 2023-12-10 00:28:44 +01:00
stefan schippers c8ced06bbe add `fast` option in xschem hilight_instname. mos_power_ampli: use hilight to show devices with high current 2023-12-09 11:39:04 +01:00
stefan schippers b21ac67cc4 add `xschem set hilight_color` command 2023-12-09 02:09:36 +01:00
stefan schippers c090773afe Opening sub-schematic in new window/tab will inherit raw file loaded and annotation. ngspice::ngspice_data is preserved on context switches now 2023-12-05 13:13:59 +01:00
stefan schippers c4e9310d45 allow to load raw files even if netlist type set to `symbol`. Better to_eng function, `xschem raw_query value node {}` returns value at cursor b position 2023-11-26 12:54:37 +01:00
stefan schippers 8d155af82f `Alt-e` does a true descend sub-schematic and opens it in another window 2023-11-20 17:53:28 +01:00
stefan schippers d4cde62870 add draw option in schematic_in_new_window(), create_new_tab(), create_new_window() 2023-11-20 00:12:13 +01:00
stefan schippers 84d945238f `xschem annotate_op file [level]`: added `level` optional integer to specify the hierarchy level op raw data refers to. Add xschem set raw_level to modify the raw level loaded raw file refers to 2023-11-18 12:55:57 +01:00
stefan schippers 6360fc1700 refactor reset_flags() to reset_caches(). scripts that set tcl variables that go into attributes via tcleval() should call `xschem reset_caches` to get all things updated. 2023-11-12 20:53:37 +01:00
stefan schippers b63a70090a doc updates 2023-11-12 13:08:51 +01:00
stefan schippers cfdaebf5e1 add `xschem instance_number` command to easily get/set the position of instance in the list 2023-11-04 20:43:04 +01:00
stefan schippers 0b93634fee Better Simulation->Graphs-> Load raw file (ask filename) 2023-11-03 23:37:09 +01:00
stefan schippers 22a5365288 update documentation to previous changes 2023-11-01 15:01:46 +01:00
stefan schippers b60a5a4c4b Add command `xschem setprop text n txt_ptr value` to change a text object text field, set stdout in line buffer mode if used in a pipe, better protect some commands against no X connection 2023-10-31 18:39:42 +01:00
stefan schippers d776d6a351 better handle operating point clear / update when switching / reading / clearing raw files. dont use operating point data (ngspice::ngspice) above the hierarchy level where raw file has been loaded. 2023-10-29 14:04:52 +01:00
Stefan Schippers 34113c1c5f added tab ctx menu `Save` 2023-10-25 20:30:20 +02:00
stefan schippers d83acf710d add `xschem text_string` command, update displayed floaters if a text object is changed 2023-10-24 18:47:58 +02:00
stefan schippers 306c5d0d15 fix two small memory leaks, doc updates (xschem raw command) Raw.filename renamed to Raw.rawfile 2023-10-17 16:08:27 +02:00
stefan schippers f10555917e optimized usage of interpolate_yval(), add raw->cursor_b_val[] 2023-10-16 09:53:03 +02:00
stefan schippers 53286346e1 doc updates, tcl rawfile variable in place for future per-graph raw file 2023-10-14 23:41:19 +02:00
stefan schippers 88a5befbf2 add some cascade menus for less frequently used entries. better description of xschem unselect_all command 2023-10-12 19:37:22 +02:00
stefan schippers 676ce4fe3d lock attribute for rectangles: work the same as for instances (can only double click to reset attributes, not selectable until lock reset to 0), add commands "xschem selected_set rect" and "xschem select_inside x1 y1 x2 y2" 2023-10-12 11:15:12 +02:00
stefan schippers 24bc44ad0c doc updates (text attributes), prepare improvements for new_prop_string() 2023-10-03 13:21:04 +02:00
stefan schippers 9fee9610ab vsource.sym and ammeter.sym: add "savecurrent=1|0|true|false" attribute do decide if a .save I(...) is to be printed in netlist. default is 1 for ammeter.sym and 0 for vsource.sym. Add "deltax deltay rot flip" optional parameters for xschem "copy_objects" command to make copy operation scriptable (lot more efficient than using clipboard) 2023-10-02 12:11:05 +02:00
stefan schippers c569f93a65 added commands xschem get schprop|schvhdprop|schverilogprop|schtedaxprop|schsymbolprop, "xschem create_text" renamed to "xschem text" for syntax consistency 2023-09-29 09:46:31 +02:00
stefan schippers 31492b3955 added xschem set [schsymbolprop|schprop|schverilogprop|schvhdlprop|schtedaxprop] <value> commands for setting global schematic/symbol attributes 2023-09-28 15:45:07 +02:00
stefan schippers cfe97c2ccf extend "xschem rect" and "xschem line" commands, add "xschem get rects n" and "xschem get lines n" 2023-09-28 15:24:23 +02:00
stefan schippers e13922e94f simplify place_symbol(), hash newly placed component name, so successive placements will not clash instance name. hash_all_names() renamed to hash_names() 2023-09-28 13:28:16 +02:00
stefan schippers f3230ceb42 FIX_BROKEN_TILED_FILL can now be changed runtime (fix_broken_tiled_fill) 2023-09-27 01:28:31 +02:00
stefan schippers 75526cacbe add "xschem create_text" command for placing text objects with CLI 2023-09-24 03:16:53 +02:00
stefan schippers 8f0d920a96 add draw_crosshair setting in xschemrc: draw a crosshair at mouse coordinates 2023-09-22 12:48:22 +02:00
stefan schippers 8b7156d85e better formatting of developer_info.html so better pdf is automatically created 2023-09-21 01:29:37 +02:00
stefan schippers 1ee4117ea9 fix typo 2023-09-18 17:18:46 +02:00
stefan schippers 7ffe70cb25 add other schematic manipulation script examples in developer_info.html 2023-09-18 17:16:03 +02:00
stefan schippers ccf2e54572 add some more schematic manipulation script examples in developer_info.html 2023-09-18 15:47:43 +02:00
stefan schippers 662d4c12e5 update xschem developer info man page 2023-09-18 14:09:58 +02:00
stefan schippers 898cfcc2e1 command "xschem change_elem_order" invalidate inst/wire hashes and connectivity to force consistency 2023-09-17 09:45:28 +02:00
stefan schippers 159f07e703 add "xschem rotate_in_place" command 2023-09-17 09:05:21 +02:00
stefan schippers 978d575e22 add tcl command "xschem change_elem_order n" add optional x0 and y0 coordinates as additional parameters to "xschem flip" and "xschem rotate" commands, add command "move_instance inst x y rot flip" 2023-09-17 00:13:52 +02:00
stefan schippers 816608da3c add one more script example in developer_info man page 2023-09-16 10:28:27 +02:00
stefan schippers 451cc4049e add script examples in developer_info manpage 2023-09-16 09:58:59 +02:00
stefan schippers ac07510513 xschem select: extend command to allow selecting rectangles, lines, polygons, arcs. returns 1 if something selected, 0 otherwise 2023-09-15 17:53:38 +02:00
stefan schippers e0bcc302c9 "xschem connected_nets" command now works for any selected instance, not only labels/probes/pins. Argument can be 0, 1, 2 (2-->select only wire segments drectly attached to selected net/instance) 2023-09-14 09:48:12 +02:00
stefan schippers 34946c2f0a add commands "xschem get wires", "xschem getprop wire n attr", "xschem touch x1 y1 x2 y2 x0 y0", "xschem wire_coord n" 2023-09-14 08:31:01 +02:00
stefan schippers e6211ac93b command "xschem select_dangling_nets": skip ignored instances (lvs_ignore or spice_ignore), return # of selected dangling elements instead of just 1 2023-09-14 01:34:56 +02:00
stefan schippers 75e5d3d5b0 add command "xschem select_dangling_nets" that selects all labels/wires that are not connected to any non-label/non-probe components 2023-09-14 00:57:13 +02:00
stefan schippers a678c81b4c update documentation for change in return code of "xschem switch" command 2023-09-07 20:25:08 +02:00
stefan schippers 519fb2fbf2 add optional "-messages" in "xschem netlist" comand to return ERC messages instead of fail(1)/good(0) code 2023-08-27 13:04:12 +02:00
stefan schippers ff66a48df0 doc updates about print command 2023-07-13 14:26:42 +02:00
stefan schippers cf675be805 add "xschem print pdf_full" and "xschem print ps_full" commands to print full view properly fitting paper size, regardless of xschem window size, some fixes in circle postscript drawing (set newpath) and rectangle clipping. Add menu command "PDF/PS export full" 2023-07-13 13:24:17 +02:00
stefan schippers 3c73bb918b add case insensitive matching in xschem search function 2023-07-12 13:58:54 +02:00
stefan schippers 587a847722 add xschem command `xschem instance_coord [instance]`: returns placement coords, rotation, flip of selected or specified instance 2023-07-06 09:12:31 +02:00
stefan schippers e99ad0b044 doc updates (developer info, polygon bindkey) 2023-07-03 21:49:50 +02:00
stefan schippers cdecc6ad04 xschem netlist command accepts an optional filename argument 2023-07-03 09:06:46 +02:00
stefan schippers c3d03cd6d2 show red dot when cuting a wire with new alt-right button click on a wire. Added also menu command in Tools 2023-06-14 10:08:50 +02:00
Stefan Schippers d5cc702fe8 Add command "Tools -> Remove wires running throuh selected inst. pins" 2023-06-10 17:24:12 +02:00
stefan schippers c46ffd043f update list of procedures and globals in developer_info.html 2023-06-09 08:29:35 +02:00
stefan schippers 37a5dcee95 remove dbg messages in fix_symols. doc updates 2023-06-09 00:16:51 +02:00
stefan schippers a6e5b150a5 added command `xschem getprop instance_notcl` to avoid tcl subst of the resulting attribute; improved fix_symbols to fix also parametrized generators (pcells) 2023-06-08 23:02:40 +02:00
stefan schippers de1f4f0d86 added commands `xschem switch [win_path|schname]`, `xschem destroy_all [force]`, added `[force]` option to xschem exit 2023-06-08 10:40:52 +02:00
stefan schippers a27a187bb4 small update to `xschem exit` function documentation 2023-06-08 06:38:36 +02:00
stefan schippers edaf4ccce9 Add low level function xschem reset_symbol, changed defaults in xschem: now toolbar and tabbed interface (more robust than multi-window) is enabled by default, doc updates, improved fix_symbols for setting/removing path compoents from symbol references, now uses low-level xschem reset_symbol (faster) 2023-06-08 00:03:25 +02:00
stefan schippers d4641f2b1a doc updates (developer_info.html) 2023-06-04 23:05:13 +02:00
stefan schippers ec5577c07f removed File menu commands `Empty schematic in new window` and `Empty symbol in new window` since these just create another xschem process. Added `File->Start new xschem process`. `xschem new_window` and `xschem new_symbol_window` commands removed, added `xschem new_process 2023-06-04 00:46:01 +02:00
stefan schippers e68ca0a0cc Place polygon bind key is now `p`, ctrl-w is now `Close current schematic`, while ctrl-q is `Quit xschem`. Reorganized File menu, added more orthogonal `Create new schematic/tab` removed some largely unused entries. Ctrl-w does not close the last window, just leaves it blank. Use ctrl-q to close xschem 2023-06-03 23:57:35 +02:00
stefan schippers 0244dc5e69 add command xschem tab_list, returns window pathname and associated filename loaded 2023-06-03 00:21:55 +02:00
Stefan Schippers f5c592c889 xschem resolved_net command: add [net] parameter; instcheck(): use inst[].lab instead of get_tok_value(inst[].prop_ptr, "lab",0) 2023-06-01 18:00:47 +02:00
stefan schippers cf61c253c5 fix a bug in my_mstrcat if an empty string is appended; add resolved_net(n) function that returns the top-most hierarchy name of the net mapping to upper level port connections if any; add xschem resolved_net comand that returns the resolved_net of selected wire/label/pin; add @#n:resolved_net pattern in symbol texts that uses resolved_net 2023-05-27 11:20:49 +02:00
stefan schippers bd41fdadc7 fix typo in docs 2023-05-23 09:17:28 +02:00
stefan schippers 32460f33c9 improved "xschem display_hilights [nets|instances]" that displays highlight nets or instaces or both,with full hierarchy path, not including uninteresting net/pin/net_show elements. 2023-05-23 09:10:01 +02:00
stefan schippers 5c22d26072 update copyright info to 2023 2023-05-21 12:52:19 +02:00
stefan schippers 827d4c5aac added "xschem reset_flags" command to update and sync cached attributes of symbols and instances 2023-05-19 10:08:43 +02:00
stefan schippers 7ad930e7f0 istances with *_ignore=true attribute will be drawn greyed out in schematics in the corresponding netlisting mode; command in Properties menu to toggle this attribute on selected instances 2023-05-10 03:13:13 +02:00
stefan schippers 9593d41f09 persistent load file dialog (Shift-Insert) now correctly handles generator script selection (do nothing until user adds () or (param1,param2,...) to generator name). 2023-04-29 00:28:24 +02:00
stefan schippers a5492be752 print_spice_subckt_nodes(): use (improved to handle escape chars) str_replace() to substitute @symname, added xschem str_replace, improved xschem symbols 2023-04-18 00:20:40 +02:00
stefan schippers ca0708a4c3 added "xschem setprop symbol" command, updated docs 2023-04-17 11:45:59 +02:00
stefan schippers 192e873f0c fix lazy list building in "xschem ..." commands (put separator after last item), as some parsers choke on this. 2023-04-08 22:27:59 +02:00
stefan schippers 5e3445a80e implement xschem sch_pinlist command, improve xschem pinlist inst [attr], improve make_sym.awk (no trailing spaces in pin attributes) 2023-04-08 13:19:49 +02:00
stefan schippers 07bdb94601 add xschem instance_list command, updated docs 2023-04-06 20:10:57 +02:00
stefan schippers 69277c1066 add use_tclreadline variable that can be set to 0 in xschemrc to avoid using the tclreadline package 2023-03-27 18:25:12 +02:00
stefan schippers 3fd24c69c4 improve xschem load command (no warning if opening an already open file, if doing that from script) 2023-03-26 11:33:05 +02:00
stefan schippers f5224ede00 better cleanup execute(callback,...) array members 2023-03-24 13:37:10 +01:00
stefan schippers 6bcb74bdb0 add tcl procedures documentation in developer_info.html 2023-03-24 13:14:27 +01:00
stefan schippers 2725e0c533 add exit code to xschem netlist command, add execute(error,last) and execute(exitcode,last) to inspect stderr and exit code of last simulation job 2023-03-23 18:34:14 +01:00
stefan schippers 757fd0a378 better range checking for commands "xschem get schname" and "xschem get sch_path" 2023-03-22 11:22:41 +01:00
stefan schippers 601a128e37 doc updates (xschem command reference) 2023-03-18 23:38:47 +01:00
stefan schippers b6a8add190 Warn if no application is defined to open html command reference 2023-03-15 09:01:10 +01:00
stefan schippers 3ec47760a7 xschem logic_get changed to xschem logic_get_net for consistency 2023-03-10 02:54:53 +01:00
stefan schippers af6c01ab44 add command xschem logic_set_net <net_name> <value> [ntimes] to set a specific net instead of selected nets 2023-03-10 02:42:04 +01:00
stefan schippers 7bc63e0dfd add xschem logic_get command to get logic state of nets 2023-03-10 02:04:08 +01:00
stefan schippers 61b826d84f update html docs: zoom_full_center 2023-03-10 00:14:26 +01:00
stefan schippers 7014fc1875 doc updates (dev info) 2023-03-04 23:23:37 +01:00
Stefan Schippers a01dbcb457 doc updates (better formatting) 2023-03-04 19:09:29 +01:00
stefan schippers ae116830dd doc updates (dev info) 2023-03-04 12:47:46 +01:00