<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>General — KLayout</title>
        <link>https://www.klayout.de/forum/</link>
        <pubDate>Fri, 13 Mar 2026 08:40:29 +0000</pubDate>
        <language>en</language>
            <description>General — KLayout</description>
    <atom:link href="https://www.klayout.de/forum/categories/general/feed.rss" rel="self" type="application/rss+xml"/>
    <item>
        <title>Change Font size</title>
        <link>https://www.klayout.de/forum/discussion/1104/change-font-size</link>
        <pubDate>Mon, 06 Aug 2018 20:56:56 +0000</pubDate>
        <category>General</category>
        <dc:creator>mchase</dc:creator>
        <guid isPermaLink="false">1104@/forum/discussions</guid>
        <description><![CDATA[<p>Ok, This is a dumb question. Somehow I changed the size of the fonts in the menu item, layer list items, Navigator... The normal windows menu text is unchanged.</p>

<p>Not sure how to get it back down to a reasonable size. Any suggestions?</p>

<p>Thanks Mike<img src="https://www.klayout.de/forum/uploads/editor/27/d4vxhwcyjg6o.jpg" alt="" title="" /></p>
]]>
        </description>
    </item>
    <item>
        <title>Copy paste</title>
        <link>https://www.klayout.de/forum/discussion/2842/copy-paste</link>
        <pubDate>Fri, 30 Jan 2026 09:28:57 +0000</pubDate>
        <category>General</category>
        <dc:creator>Ajaymoreb</dc:creator>
        <guid isPermaLink="false">2842@/forum/discussions</guid>
        <description><![CDATA[<p>while doing copying and paste a traces or feature, how to change origin of copy part while pasting</p>
]]>
        </description>
    </item>
    <item>
        <title>Hide &quot;editor options&quot; box in klayout</title>
        <link>https://www.klayout.de/forum/discussion/2838/hide-editor-options-box-in-klayout</link>
        <pubDate>Tue, 13 Jan 2026 16:58:18 +0000</pubDate>
        <category>General</category>
        <dc:creator>thangzero</dc:creator>
        <guid isPermaLink="false">2838@/forum/discussions</guid>
        <description><![CDATA[<p>Dear Supporter, <img src="https://www.klayout.de/forum/uploads/editor/eo/ir5qagy9378e.jpg" alt="" title="" /></p>

<p>How can I hide the "Editor option" Box in KLayout when I already have it and use the "layer tab" on the right to select a layer to create a new polygon or erase it?</p>

<p>Although I've tried collapsing it and pinning it to the left whenever I select Add =&gt; Box or Erase =&gt; Box, I still find it cumbersome and unnecessary.</p>
]]>
        </description>
    </item>
    <item>
        <title>KLayout Keyboard Shortcuts</title>
        <link>https://www.klayout.de/forum/discussion/970/klayout-keyboard-shortcuts</link>
        <pubDate>Fri, 25 Aug 2017 14:10:45 +0000</pubDate>
        <category>General</category>
        <dc:creator>luismaie</dc:creator>
        <guid isPermaLink="false">970@/forum/discussions</guid>
        <description><![CDATA[<p>Hello,</p>

<p>In order to increase my work speed, I've added and changed a lot of keyboard shortcuts for KLayout. For a better overview I also created a keyboard overview:<br />
<img src="https://ibin.co/3Y5pmiNqaGSH.png" alt="Keyboard Shortcuts" title="Keyboard Shorts" /><br />
<em><a href="https://imagebin.ca/v/3Y5pmiNqaGSH" rel="nofollow">https://imagebin.ca/v/3Y5pmiNqaGSH</a></em></p>

<p>If one wants to use the same keyboard layout you have to overwrite the  line in the "klayoutrc" file with the following code:</p>

<pre><code>&lt;key-bindings&gt;'@@navigator_menu.navigator_main_menu.navigator_all_hier_levels':'';'@@navigator_menu.navigator_main_menu.navigator_freeze':'';'@@navigator_menu.navigator_main_menu.navigator_show_images':'';'@hcp_context_menu.flat_mode':'';'@hcp_context_menu.hide_cell':'';'@hcp_context_menu.open_current':'';'@hcp_context_menu.save_cell_as':'';'@hcp_context_menu.show_all':'';'@hcp_context_menu.show_as_top':'';'@hcp_context_menu.show_cell':'';'@hcp_context_menu.sorting.by_area':'';'@hcp_context_menu.sorting.by_name':'';'@lcp_context_menu.add_others':'';'@lcp_context_menu.clean_up':'';'@lcp_context_menu.copy':'';'@lcp_context_menu.cut':'';'@lcp_context_menu.del':'';'@lcp_context_menu.group':'';'@lcp_context_menu.hide':'';'@lcp_context_menu.hide_all':'Shift+M';'@lcp_context_menu.hide_empty_layers':'';'@lcp_context_menu.insert':'';'@lcp_context_menu.invvalid':'';'@lcp_context_menu.paste':'';'@lcp_context_menu.regroup_menu.flatten':'';'@lcp_context_menu.regroup_menu.grp_d':'';'@lcp_context_menu.regroup_menu.grp_i':'';'@lcp_context_menu.regroup_menu.grp_l':'';'@lcp_context_menu.rename':'';'@lcp_context_menu.select_all':'';'@lcp_context_menu.select_source':'';'@lcp_context_menu.show':'';'@lcp_context_menu.show_all':M;'@lcp_context_menu.show_only':'Ctrl+M';'@lcp_context_menu.sort_menu.sort_dli':'';'@lcp_context_menu.sort_menu.sort_idl':'';'@lcp_context_menu.sort_menu.sort_ild':'';'@lcp_context_menu.sort_menu.sort_ldi':'';'@lcp_context_menu.sort_menu.sort_name':'';'@lcp_context_menu.tab_menu.new_tab':'';'@lcp_context_menu.tab_menu.remove_tab':'';'@lcp_context_menu.tab_menu.rename_tab':'';'@lcp_context_menu.test_shapes_in_view':'';'@lcp_context_menu.ungroup':'';'@lcp_context_menu.valid':'';'@lcp_tabs_context_menu.new_tab':'';'@lcp_tabs_context_menu.remove_tab':'';'@lcp_tabs_context_menu.rename_tab':'';'@toolbar.move':'';'@toolbar.ruler':'';'@toolbar.select':'';bookmark_menu.bookmark_view:'Ctrl+B';bookmark_menu.load_bookmarks:'';bookmark_menu.manage_bookmarks:'Shift+B';bookmark_menu.save_bookmarks:'';edit_menu.add_image:'Ctrl+I';edit_menu.cancel:Esc;edit_menu.clear_all_rulers:'Alt+R';edit_menu.configure_rulers:'';edit_menu.copy:'Ctrl+C';edit_menu.cut:'Ctrl+X';edit_menu.delete:Del;edit_menu.duplicate:'Ctrl+D';edit_menu.image_menu.bring_to_back:'';edit_menu.image_menu.bring_to_front:'';edit_menu.image_menu.clear_all_images:'';edit_menu.layer_menu.edit_layer:'';edit_menu.mode_menu.move:G;edit_menu.mode_menu.ruler:R;edit_menu.mode_menu.select:S;edit_menu.paste:'Ctrl+V';edit_menu.redo:'Ctrl+Y';edit_menu.select_menu.disable_all:'';edit_menu.select_menu.enable_all:'';edit_menu.select_menu.pi_enable_1:'';edit_menu.select_menu.pi_enable_16:'';edit_menu.select_menu.pi_enable_2:'';edit_menu.select_menu.pi_enable_3:'';edit_menu.select_menu.pi_enable_4:'';edit_menu.select_menu.pi_enable_5:'';edit_menu.select_menu.pi_enable_6:'';edit_menu.select_menu.pi_enable_8:'';edit_menu.select_menu.select_all:'Ctrl+A';edit_menu.select_menu.unselect_all:'Ctrl+Shift+A';edit_menu.show_properties:Q;edit_menu.undo:'Ctrl+Z';file_menu.clone:'';file_menu.close:'Ctrl+W';file_menu.exit:'Ctrl+Q';file_menu.import_menu.import_def:'';file_menu.import_menu.import_gerber_menu.import_gerber_new:'';file_menu.import_menu.import_gerber_menu.import_gerber_new_free:'';file_menu.import_menu.import_gerber_menu.import_gerber_open:'';file_menu.import_menu.import_gerber_menu.import_gerber_recent:'';file_menu.import_menu.import_lef:'';file_menu.import_menu.import_stream:'';file_menu.layout_props:'Ctrl+L';file_menu.layout_stats:'Alt+L';file_menu.load_layer_props:'Ctrl+Shift+L';file_menu.open:'Ctrl+O';file_menu.open_new_panel:'Shift+O';file_menu.open_same_panel:'Ctrl+Shift+O';file_menu.print:'Ctrl+P';file_menu.pull_in:'';file_menu.reader_options:'Shift+Q';file_menu.reload:'Ctrl+R';file_menu.restore_session:'';file_menu.save:'Ctrl+S';file_menu.save_as:'Ctrl+Shift+S';file_menu.save_layer_props:'';file_menu.save_session:'';file_menu.screenshot:'Ctrl+K';file_menu.setup:'Ctrl+P';file_menu.view_log:'';help_menu.about:'';help_menu.about_qt:'';help_menu.assistant:U;help_menu.show_all_tips:'';macros_menu.macro_development:F5;tools_menu.browse_instances:'';tools_menu.browse_markers:'';tools_menu.browse_shapes:'';tools_menu.diff_tool:'';tools_menu.drc.edit_script:F7;tools_menu.drc.new_script:'Ctrl+F7';tools_menu.net_trace:F8;tools_menu.shapes_to_markers.scan_layers:'';tools_menu.shapes_to_markers.scan_layers_flat:'';tools_menu.technologies:F7;tools_menu.xor_tool:'';view_menu.default_grid.default_grid_1:'';view_menu.default_grid.default_grid_2:'';view_menu.default_grid.default_grid_3:'';view_menu.no_stipples:F;view_menu.show_cell_boxes:'';view_menu.show_grid:'#';view_menu.show_hierarchy_panel:C;view_menu.show_layer_panel:L;view_menu.show_layer_toolbox:'Shift+L';view_menu.show_navigator:'';view_menu.show_texts:'';view_menu.show_toolbar:'';view_menu.synchronized_views:'';view_menu.transient_selection:'';zoom_menu.ascend:A;zoom_menu.dec_max_hier:'-';zoom_menu.descend:D;zoom_menu.global_trans.m0:'2';zoom_menu.global_trans.m135:'3';zoom_menu.global_trans.m45:'9';zoom_menu.global_trans.m90:'6';zoom_menu.global_trans.r0:'5';zoom_menu.global_trans.r180:'4';zoom_menu.global_trans.r270:'1';zoom_menu.global_trans.r90:'7';zoom_menu.goto_position:'Ctrl+G';zoom_menu.inc_max_hier:'+';zoom_menu.last_display_state:'Shift+Tab';zoom_menu.max_hier:'*';zoom_menu.max_hier_0:'/';zoom_menu.max_hier_1:F10;zoom_menu.next_display_state:Tab;zoom_menu.redraw:'';zoom_menu.select_cell:'';zoom_menu.select_current_cell:'Shift+T';zoom_menu.synchronized_views:'';zoom_menu.zoom_fit:F2;zoom_menu.zoom_fit_sel:'Shift+F2';zoom_menu.zoom_in:Return;zoom_menu.zoom_out:'Shift+Return';tools_menu.compute_total_area:'';'@hcp_context_menu.copy':'';'@hcp_context_menu.cut':'';'@hcp_context_menu.delete_cell':'';'@hcp_context_menu.flatten_cell':'';'@hcp_context_menu.new_cell':'';'@hcp_context_menu.paste':'';'@hcp_context_menu.rename_cell':'';'@hcp_context_menu.replace_cell':'';'@toolbar.box':'';'@toolbar.combine_mode':'';'@toolbar.instance':'';'@toolbar.partial':'';'@toolbar.path':'';'@toolbar.polygon':'';'@toolbar.text':'';edit_menu.cell_menu.adjust_cell_origin:O;edit_menu.cell_menu.convert_cell_to_static:'';edit_menu.cell_menu.delete_cell:'';edit_menu.cell_menu.flatten_cell:'';edit_menu.cell_menu.new_cell:'';edit_menu.cell_menu.rename_cell:'';edit_menu.cell_menu.replace_cell:'';edit_menu.cell_menu.user_properties:'';edit_menu.edit_options:F3;edit_menu.layer_menu.boolean:'';edit_menu.layer_menu.clear_layer:'';edit_menu.layer_menu.copy_layer:'';edit_menu.layer_menu.delete_layer:'';edit_menu.layer_menu.merge:'';edit_menu.layer_menu.new_layer:'';edit_menu.layer_menu.size:'';edit_menu.layout_menu.lay_convert_to_static:'';edit_menu.layout_menu.lay_flip_x:'Shift+H';edit_menu.layout_menu.lay_flip_y:'Shift+V';edit_menu.layout_menu.lay_free_rot:'';edit_menu.layout_menu.lay_move:'';edit_menu.layout_menu.lay_rot_ccw:'';edit_menu.layout_menu.lay_rot_cw:'';edit_menu.layout_menu.lay_scale:'';edit_menu.mode_menu.box:B;edit_menu.mode_menu.instance:I;edit_menu.mode_menu.partial:E;edit_menu.mode_menu.path:'Shift+P';edit_menu.mode_menu.polygon:P;edit_menu.mode_menu.text:T;edit_menu.search_replace:'Ctrl+F';edit_menu.selection_menu.align:'Alt+A';edit_menu.selection_menu.change_layer:'Alt+C';edit_menu.selection_menu.convert_to_cell:'Shift+E';edit_menu.selection_menu.convert_to_pcell:'Ctrl+E';edit_menu.selection_menu.difference:'Ctrl+Shift+D';edit_menu.selection_menu.flatten_insts:'';edit_menu.selection_menu.intersection:'Ctrl+Shift+I';edit_menu.selection_menu.make_array:'Shift+A';edit_menu.selection_menu.make_cell:'';edit_menu.selection_menu.make_cell_variants:'';edit_menu.selection_menu.move_hier_up:'';edit_menu.selection_menu.resolve_arefs:'';edit_menu.selection_menu.round_corners:'Shift+R';edit_menu.selection_menu.sel_flip_x:H;edit_menu.selection_menu.sel_flip_y:V;edit_menu.selection_menu.sel_free_rot:'Ctrl+Shift+R';edit_menu.selection_menu.sel_move:'Ctrl+Shift+G';edit_menu.selection_menu.sel_rot_ccw:',';edit_menu.selection_menu.sel_rot_cw:.;edit_menu.selection_menu.sel_scale:'Shift+S';edit_menu.selection_menu.size:'Ctrl+Shift+S';edit_menu.selection_menu.tap:'Ctrl+T';edit_menu.selection_menu.union:'Ctrl+Shift+M';edit_menu.utils_menu.clip_tool:'';edit_menu.utils_menu.fill_tool:'';file_menu.new_layout:'Ctrl+N';file_menu.new_panel:'Ctrl+Shift+N';view_menu.edit_top_level_selection:'';'@hcp_context_menu.cell_user_properties':'';'@hcp_context_menu.split_mode':'';edit_menu.selection_menu.sel_move_to:'Shift+G';file_menu.close_all:'Ctrl+Shift+W';file_menu.save_all:'Ctrl+Alt+S';file_menu.writer_options:''&lt;/key-bindings&gt;
</code></pre>

<p>Hopefully this will help others.</p>

<p>Best,<br />
Luis</p>

<p>P.S.: If you know how to scale down the image, let me know.</p>
]]>
        </description>
    </item>
    <item>
        <title>Want to Open a Custom Extension File from Klayout</title>
        <link>https://www.klayout.de/forum/discussion/2831/want-to-open-a-custom-extension-file-from-klayout</link>
        <pubDate>Tue, 16 Dec 2025 09:01:52 +0000</pubDate>
        <category>General</category>
        <dc:creator>simransingh14</dc:creator>
        <guid isPermaLink="false">2831@/forum/discussions</guid>
        <description><![CDATA[<p>I have a file with some custom extension e.g. sampleGds.aw which is kind of XML file so my usecase is if I double click this file and select Klayout to open it, the Klayout should receives the file path as an argument and then the Python macro (plugins) auto-runs to parse that file before the Layout view got created for it.</p>

<p>So wanted to ask is it supported?</p>

<p>If yes then how can i do that?</p>
]]>
        </description>
    </item>
    <item>
        <title>'smoothening' jagged edges of a curved line</title>
        <link>https://www.klayout.de/forum/discussion/2830/smoothening-jagged-edges-of-a-curved-line</link>
        <pubDate>Fri, 12 Dec 2025 02:30:23 +0000</pubDate>
        <category>General</category>
        <dc:creator>husot</dc:creator>
        <guid isPermaLink="false">2830@/forum/discussions</guid>
        <description><![CDATA[<p>Hi, I'm wondering if there is a easy solution to "smoothen" the jagged edges of a curved lines? This image attached is from a Python script. Also I converted from PNG to GDS, but they all suffer from the jagged edges 1-2nm step size.</p>

<p><img src="https://www.klayout.de/forum/uploads/editor/cp/84d971yi4h7h.png" alt="" title="" /></p>
]]>
        </description>
    </item>
    <item>
        <title>Bug report: Trying to insert Text on a hidden layer causes crash</title>
        <link>https://www.klayout.de/forum/discussion/2828/bug-report-trying-to-insert-text-on-a-hidden-layer-causes-crash</link>
        <pubDate>Thu, 04 Dec 2025 17:23:37 +0000</pubDate>
        <category>General</category>
        <dc:creator>LeoTrois</dc:creator>
        <guid isPermaLink="false">2828@/forum/discussions</guid>
        <description><![CDATA[<p>Hi all,<br />
I have recently come across a bug where if I try to insert text onto a layer which is currently hidden, the System gives me the bug report below.</p>

<p>In the past this has already caused the entire program to crash for me.</p>

<p>Here is the generated bug report:<br />
Exception code: 0xc0000005<br />
Program Version: KLayout 0.30.4 (2025-09-12 r8b0a8c731) AMD64</p>

<p>Backtrace:<br />
0x7ffcced128c0 - (Qt5Core.dll) +2173120<br />
0x7ffcceb0708d - (Qt5Core.dll) +28813<br />
0x7ffcceb09eed - (Qt5Core.dll) +40685<br />
0x7ffcceb0617d - (Qt5Core.dll) +24957<br />
0x7ffcc32ff369 - (Qt5Widgets.dll) +979817<br />
0x7ffcc33392b8 - (Qt5Widgets.dll) +1217208<br />
0x7ffcc33656f9 - (Qt5Widgets.dll) +1398521<br />
0x7ffcc336b363 - (Qt5Widgets.dll) +1422179<br />
0x7ffcc32336ba - (Qt5Widgets.dll) +145082<br />
0x7ffcc3234ed5 - (Qt5Widgets.dll) +151253<br />
0x7ffcc32573d4 - (Qt5Widgets.dll) +291796<br />
0x7ffcd5dfdea1 - (klayout_lay.dll) +581281<br />
0x7ffcd5dfe629 - (klayout_lay.dll) +583209<br />
0x7ffcc3f323d5 - (klayout_laybasic.dll) +664533<br />
0x7ffcc3ea7822 - (klayout_laybasic.dll) +96290<br />
0x7ffccedd43ab - (Qt5Core.dll) +2966443<br />
0x7ffcc32141eb - (Qt5Widgets.dll) +16875<br />
0x7ffcc3301615 - (Qt5Widgets.dll) +988693<br />
0x7ffcc3301745 - (Qt5Widgets.dll) +988997<br />
0x7ffcc33e960e - (Qt5Widgets.dll) +1938958<br />
0x7ffcc3257a20 - (Qt5Widgets.dll) +293408<br />
0x7ffcc3217dae - (Qt5Widgets.dll) +32174<br />
0x7ffcc32200ba - (Qt5Widgets.dll) +65722<br />
0x7ffcd5d8c934 - (klayout_lay.dll) +117044<br />
0x7ffccece9038 - (Qt5Core.dll) +2003000<br />
0x7ffcc321e00d - (Qt5Widgets.dll) +57357<br />
0x7ffcc326dd1b - (Qt5Widgets.dll) +384283<br />
0x7ffcc3270f37 - (Qt5Widgets.dll) +397111<br />
0x7ffcc3217dae - (Qt5Widgets.dll) +32174<br />
0x7ffcd5d8c94e - (klayout_lay.dll) +117070<br />
0x7ffccece9038 - (Qt5Core.dll) +2003000<br />
0x7ffcc3823784 - (Qt5Gui.dll) +276356<br />
0x7ffcc37fcd6c - (Qt5Gui.dll) +118124<br />
0x7ffcced445d8 - (Qt5Core.dll) +2377176<br />
0x7ffcbf0cf505 - (qwindows.dll) +521477<br />
0x7ffccece7374 - (Qt5Core.dll) +1995636<br />
0x7ffccecefe65 - (Qt5Core.dll) +2031205<br />
0x7ffcd5d92470 - (klayout_lay.dll) +140400<br />
0x7ff60e921ad9 - (klayout_app.exe) +6873<br />
0x7ffcd62814a2 - (klayout_rba.dll) +5282<br />
0x7ffcc2bb4e4e - (x64-msvcrt-ruby310.dll) +2117198<br />
0x7ffcc2bbfc6a - (x64-msvcrt-ruby310.dll) +2161770<br />
0x7ffcc2bce364 - (x64-msvcrt-ruby310.dll) +2220900<br />
0x7ffcc2bc0687 - (x64-msvcrt-ruby310.dll) +2164359<br />
0x7ffcc2a310fd - (x64-msvcrt-ruby310.dll) +528637<br />
0x7ffcc2a34eb5 - (x64-msvcrt-ruby310.dll) +544437<br />
0x7ffcd6288345 - (klayout_rba.dll) +33605<br />
0x7ff60e922619 - (klayout_app.exe) +9753<br />
0x7ff60e923026 - (klayout_app.exe) +12326<br />
0x7ff60e9212ee - (klayout_app.exe) +4846<br />
0x7ff60e9213e6 - (klayout_app.exe) +5094<br />
0x7ffdaab8e8d7 - (KERNEL32.DLL) +190679<br />
0x7ffdab60c53c - (ntdll.dll) +574780</p>
]]>
        </description>
    </item>
    <item>
        <title>Package's templates</title>
        <link>https://www.klayout.de/forum/discussion/2819/packages-templates</link>
        <pubDate>Tue, 25 Nov 2025 15:31:16 +0000</pubDate>
        <category>General</category>
        <dc:creator>gwondaleya</dc:creator>
        <guid isPermaLink="false">2819@/forum/discussions</guid>
        <description><![CDATA[<p>Hello Matthias,</p>

<p>Soo Long time not on this forum.<br />
We are making now in my team a large usage of the package management and technology management tools and this is really convenient and powerful (with the exception of not being able to use it on a github with login/password required, but that's not a big issue)<br />
However in our packages we need few more directory that the one created in the templates available. We wan't these directory to be created "automatically" when we create a new package. I digged in the klayout directory (windows, compiled) to find  files describing these templates, but no luck.<br />
Is it possible to create our own package's template? <br />
What is the format used and how is it coded ? Is there a sample file available? or can this be done through scripting?<br />
If it's possible to create these templates, where should the file be stored?</p>

<p>Regards<br />
Joël</p>
]]>
        </description>
    </item>
    <item>
        <title>Klayout connect to Bitbucket</title>
        <link>https://www.klayout.de/forum/discussion/2821/klayout-connect-to-bitbucket</link>
        <pubDate>Wed, 26 Nov 2025 06:27:52 +0000</pubDate>
        <category>General</category>
        <dc:creator>Madoshinatsu</dc:creator>
        <guid isPermaLink="false">2821@/forum/discussions</guid>
        <description><![CDATA[<p>We developped some design that are follow into a bitbucket repositories. We would like to connect to those repositories using the URL tag but it seems that we get some trouble since those repositories are not public and we have to connect with some credentials.<br />
Is there a way or a future enhancement to connect to a repository ?<br />
Thanks in advance</p>
]]>
        </description>
    </item>
    <item>
        <title>How to add custom libraries</title>
        <link>https://www.klayout.de/forum/discussion/2818/how-to-add-custom-libraries</link>
        <pubDate>Mon, 24 Nov 2025 21:27:16 +0000</pubDate>
        <category>General</category>
        <dc:creator>zakaria</dc:creator>
        <guid isPermaLink="false">2818@/forum/discussions</guid>
        <description><![CDATA[<p>I want to add a custom library to Klayout.<br />
I tried to follow the article: <a href="https://www.klayout.de/doc-qt5/about/about_libraries.html" rel="nofollow">https://www.klayout.de/doc-qt5/about/about_libraries.html</a><br />
In this article the desired library is a GDS file, which is pasted in the library subfolder</p>

<p>But I dont see any subfolder named libraries.<br />
My directory is as such: C:\Users\zakaria.37\AppData\Roaming\KLayout<br />
There are folders and files there which I have attached a photo of.</p>

<p>Could anyone please help me with this? I am very new to Klayout</p>

<p><img src="https://www.klayout.de/forum/uploads/editor/rb/ey4d4y99gi8l.png" alt="" title="" /></p>
]]>
        </description>
    </item>
    <item>
        <title>Learn Klayout</title>
        <link>https://www.klayout.de/forum/discussion/2809/learn-klayout</link>
        <pubDate>Thu, 23 Oct 2025 04:11:03 +0000</pubDate>
        <category>General</category>
        <dc:creator>Ajaymoreb</dc:creator>
        <guid isPermaLink="false">2809@/forum/discussions</guid>
        <description><![CDATA[<p>is there in depth training on Klayout?</p>
]]>
        </description>
    </item>
    <item>
        <title>&quot;Basic&quot; Library &quot;TEXT&quot; cell</title>
        <link>https://www.klayout.de/forum/discussion/2350/basic-library-text-cell</link>
        <pubDate>Fri, 11 Aug 2023 10:37:53 +0000</pubDate>
        <category>General</category>
        <dc:creator>tomas2004</dc:creator>
        <guid isPermaLink="false">2350@/forum/discussions</guid>
        <description><![CDATA[<p>Hello Matthias,</p>

<p>Is the code for the "TEXT" PCell  available somewhere?</p>

<p>Cheers,</p>

<p>Tomas</p>
]]>
        </description>
    </item>
    <item>
        <title>xor result not clean.</title>
        <link>https://www.klayout.de/forum/discussion/2803/xor-result-not-clean</link>
        <pubDate>Thu, 09 Oct 2025 10:27:34 +0000</pubDate>
        <category>General</category>
        <dc:creator>stukov</dc:creator>
        <guid isPermaLink="false">2803@/forum/discussions</guid>
        <description><![CDATA[<p>Sorry to bother you, but I’ve run into a rather frustrating issue — the XOR result is not clean.<br />
I have confirmed that</p>

<ul>
<li>the database units (dbu) are the same,</li>
<li>both layouts are flattened,</li>
<li>the polygon coordinates are identical,</li>
<li>all shapes are rectangles.</li>
</ul>
]]>
        </description>
    </item>
    <item>
        <title>Interface / Ergonomics detail when adding a cell instance</title>
        <link>https://www.klayout.de/forum/discussion/2742/interface-ergonomics-detail-when-adding-a-cell-instance</link>
        <pubDate>Mon, 16 Jun 2025 15:42:18 +0000</pubDate>
        <category>General</category>
        <dc:creator>ocasta</dc:creator>
        <guid isPermaLink="false">2742@/forum/discussions</guid>
        <description><![CDATA[<p>Hello,<br />
I have a request for the ergonomics of the interface when adding a cell instance: I would like that the button "Show all cells" be on the north, above the cell list, rather than below the cell list. The reason is the following:</p>

<ul>
<li>After clicking on "Instance &gt; Object Editor Options &gt; ...", the "Select Cell" window opens under the mouse cursor, with the north of the window under the mouse cursor.</li>
<li>I often have a long list of cells and I often want to unselect the "Show all cells" button.</li>
<li>But this choice-button is at the <em>bottom of the window</em>... There would be <em>less mouse travel</em> if the "Show all cells" button was above the cell list (instead of below).</li>
</ul>

<p>Can you consider this suggestion?<br />
Best regards,<br />
Olivier</p>
]]>
        </description>
    </item>
    <item>
        <title>XFAB XH035 iPDK</title>
        <link>https://www.klayout.de/forum/discussion/2798/xfab-xh035-ipdk</link>
        <pubDate>Fri, 03 Oct 2025 12:59:25 +0000</pubDate>
        <category>General</category>
        <dc:creator>jk7070</dc:creator>
        <guid isPermaLink="false">2798@/forum/discussions</guid>
        <description><![CDATA[<p>Curious if anyone has successfully installed XFAB XH035 iPDK to work in KLayout?</p>
]]>
        </description>
    </item>
    <item>
        <title>build klayout on RHEL 8.10</title>
        <link>https://www.klayout.de/forum/discussion/2796/build-klayout-on-rhel-8-10</link>
        <pubDate>Wed, 01 Oct 2025 08:22:51 +0000</pubDate>
        <category>General</category>
        <dc:creator>sitetree</dc:creator>
        <guid isPermaLink="false">2796@/forum/discussions</guid>
        <description><![CDATA[<p>I'm trying to build klayout on RHEL10 :  4.18.0-553.77.1.el8_10.x86_64 <a rel="nofollow" href="https://www.klayout.de/forum/search?Search=%231&amp;Mode=like">#1</a> SMP Fri Sep 19 03:36:32 EDT 2025 x86_64 x86_64 x86_64 GNU/Linux</p>

<p>There seems to be an include to git2.h, which is missing.</p>

<p>*../../../src/tl/tl/tlGit.cc:32:10: fatal error: git2.h: No such file or directory<br />
 <a rel="nofollow" href="https://www.klayout.de/forum/search?Search=%23include&amp;Mode=like">#include</a> &lt;git2.h&gt;<br />
          ^~~~<br />
compilation terminated.<br />
*<br />
There is no libgit2-devel for RHEL.</p>

<p>Building libgit2 from source also has issues:<br />
-- Checking for module 'heimdal-gssapi'<br />
--   Package 'heimdal-gssapi', required by 'virtual:world', not found<br />
-- Could NOT find GSSAPI (missing: GSSAPI_LIBRARIES GSSAPI_INCLUDE_DIR)<br />
-- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR)<br />
CMake Error at cmake/SelectHTTPSBackend.cmake:144 (message):<br />
  unknown HTTPS backend: backend<br />
Call Stack (most recent call first):<br />
  src/CMakeLists.txt:40 (include)</p>

<p>How to solve this issue?</p>
]]>
        </description>
    </item>
    <item>
        <title>How to modify some polygons with multiple points?</title>
        <link>https://www.klayout.de/forum/discussion/2793/how-to-modify-some-polygons-with-multiple-points</link>
        <pubDate>Fri, 26 Sep 2025 05:54:13 +0000</pubDate>
        <category>General</category>
        <dc:creator>Weiling_Zheng</dc:creator>
        <guid isPermaLink="false">2793@/forum/discussions</guid>
        <description><![CDATA[<p>Hi,<br />
I get a question about how to modify polygons with multiple points.<br />
Sometimes, layout needed to be simplified as some information take a lot of time to deal with when used in other simulation software.<br />
For example, a polygon like this:<br />
<img src="https://www.klayout.de/forum/uploads/editor/9y/5rcqbrpogdz0.png" alt="" title="" /></p>

<p>Stepped graphics takes a lot of time to deal with and those detailes are not very important in some cases. <br />
1. So I want to get those polygons which have multiple points, maybe polygons with points &gt;20 can be selected. Probabily those polygons are what we want.<br />
2. Maybe I can calculate the space between the points of those polygons, if the space of two points are small, for example, 10um, then  I can remove those points, so the points can be reduced.<br />
But i am not farmiliar with python in klayout. I have searched a example, but I don't know how to get the point number and points of a polygon. And how to search for the full layout, but this script seems to make function only when I have selected those polygons.</p>

<p>import pya</p>

<p>print('\n\nStarting KLayout Script')<br />
lv = pya.LayoutView.current()<br />
currently_selected_polygons = lv.object_selection  # list of ObjectInstPath</p>

<p>if not currently_selected_polygons :<br />
  print('no polygons selected in KLayout window')</p>

<p>for o in currently_selected_polygons:<br />
  if (o.shape.polygon.is_box()):<br />
    bb = o.shape.polygon.bbox()<br />
    ll, ur = bb.p1, bb.p2<br />
    #points= o.shape.polygon.points()<br />
    #points= o.shape.polygon.point_hull()<br />
    print(f'{points}' )<br />
    #print(f'Selected rect lower left ({ll.x}, {ll.y}) , upper-right ({ur.x}, {ur.y})')<br />
    #print(f'{ll.x}')</p>

<p>Could anyone give me some information?</p>

<p>Best regards!<br />
Weiling</p>
]]>
        </description>
    </item>
    <item>
        <title>meaning of &quot;Show As New Top&quot;</title>
        <link>https://www.klayout.de/forum/discussion/2396/meaning-of-show-as-new-top</link>
        <pubDate>Mon, 16 Oct 2023 08:26:51 +0000</pubDate>
        <category>General</category>
        <dc:creator>halfmoonhalf</dc:creator>
        <guid isPermaLink="false">2396@/forum/discussions</guid>
        <description><![CDATA[<p>Dear Forum, <br />
just curious --&gt; basically I can just take "Show As New Top" as "show this cell", right? <br />
beause until now it still confuses me sometimes why this button is named as such~</p>
]]>
        </description>
    </item>
    <item>
        <title>Your mail may not reach me</title>
        <link>https://www.klayout.de/forum/discussion/2780/your-mail-may-not-reach-me</link>
        <pubDate>Wed, 10 Sep 2025 17:18:37 +0000</pubDate>
        <category>General</category>
        <dc:creator>Matthias</dc:creator>
        <guid isPermaLink="false">2780@/forum/discussions</guid>
        <description><![CDATA[<p>After being forcibly migrated to Microsoft 365 by my mail hoster (thanks GoDaddy c/o DomainFactory!!!!), I not just lost one year of mails during their "migration", there are also reports of mails not being delivered to me.</p>

<p>In doubt, please use 'contact "at" klayout.org' to reach me.</p>

<p>Matthias</p>
]]>
        </description>
    </item>
    <item>
        <title>Hierarchy Descent/Ascent</title>
        <link>https://www.klayout.de/forum/discussion/2690/hierarchy-descent-ascent</link>
        <pubDate>Tue, 01 Apr 2025 07:56:41 +0000</pubDate>
        <category>General</category>
        <dc:creator>mpee</dc:creator>
        <guid isPermaLink="false">2690@/forum/discussions</guid>
        <description><![CDATA[<p>Hi Matthias,</p>

<p>I am using this script you provided to descent into layout hierarchies:</p>

<pre><code>lv = RBA::LayoutView::current
lv || raise("No layout opened")

sel_cv_index = nil
sel_cell = nil
lv.each_object_selected do |sel|
  sel_cv_index = sel.cv_index
  sel.each_inst { |i| sel_cell = i.inst.cell; break }
  break
end

lv.cancel

if sel_cell
  cv = lv.cellview(sel_cv_index)
  cv.cell = sel_cell
  lv.zoom_fit
end
</code></pre>

<p>This works nice, but I am also looking for a way to step back "UP" to the parent cell...<br />
Can you help me here?</p>

<p>Thanks,<br />
Martin</p>
]]>
        </description>
    </item>
    <item>
        <title>Why Ctrl+S does not save the GDS file?</title>
        <link>https://www.klayout.de/forum/discussion/2745/why-ctrl-s-does-not-save-the-gds-file</link>
        <pubDate>Mon, 23 Jun 2025 20:53:51 +0000</pubDate>
        <category>General</category>
        <dc:creator>zipper5</dc:creator>
        <guid isPermaLink="false">2745@/forum/discussions</guid>
        <description><![CDATA[<p>In almost all other software products, Ctrl+S is the shortcut for saving a file.<br />
But in KLayout, Ctrl+S causes to disappear the current cell. Why this strange behaviour? I think, this is counterintuitive.<br />
In addition, as I see, in KLayout is not any shortcut for saving a file.</p>
]]>
        </description>
    </item>
    <item>
        <title>Compile .pyd</title>
        <link>https://www.klayout.de/forum/discussion/2741/compile-pyd</link>
        <pubDate>Sun, 15 Jun 2025 07:32:29 +0000</pubDate>
        <category>General</category>
        <dc:creator>Vincent Lin</dc:creator>
        <guid isPermaLink="false">2741@/forum/discussions</guid>
        <description><![CDATA[<p>Hello Matthias,</p>

<p>May I know how to compile a .py file into a .pyd? I tried using MSYS2, but it only supports Python 3.12, not 3.11, so I wasn’t successful. I believe compiling to .pyd can improve efficiency and help protect the code from accidental modification.<br />
I also tried using the official Python package, and I got a file named cp311-win_amd64.pyd, instead of the more common filename cp311-mingw_x86_64.pyd that I see in the folder.</p>

<p>Good day  <img src="https://www.klayout.de/forum/resources/emoji/smile.png" title=":)" alt=":)" height="20" /> <br />
Vincent</p>
]]>
        </description>
    </item>
    <item>
        <title>Save layer appearance as config? Stipple, color etc</title>
        <link>https://www.klayout.de/forum/discussion/1823/save-layer-appearance-as-config-stipple-color-etc</link>
        <pubDate>Tue, 18 May 2021 15:49:11 +0000</pubDate>
        <category>General</category>
        <dc:creator>SBkev</dc:creator>
        <guid isPermaLink="false">1823@/forum/discussions</guid>
        <description><![CDATA[<p>Hi! Is there a way to save my layer apperance as a config? I setup the stipple, color etc. just the way I like and I want to reuse it across different layout files<img src="https://www.klayout.de/forum/uploads/editor/42/4882h9dhcjn6.png" alt="" title="" /></p>
]]>
        </description>
    </item>
    <item>
        <title>Application note: automatically load a companion .lyp file</title>
        <link>https://www.klayout.de/forum/discussion/102/application-note-automatically-load-a-companion-lyp-file</link>
        <pubDate>Mon, 28 Feb 2011 21:10:51 +0000</pubDate>
        <category>General</category>
        <dc:creator>Matthias</dc:creator>
        <guid isPermaLink="false">102@/forum/discussions</guid>
        <description><![CDATA[<p>I have received several requests with an intention like that:</p>

<pre><code>"Is is possible to automatically load a layer properties file when a layout 
file is loaded where the layer properties file is located beside the layout 
file and named like the layout file?

For example: if a layout file xyz.gds is loaded and there is a layer 
properties file xyz.lyp in the same directory, it should be loaded 
automatically."
</code></pre>

<p>Although there is no explicit option to do so, KLayout can be configured to<br />
achieve this behavior.</p>

<p>To do so, open the Setup dialog, go to "Application", "Layer List". Check the "Use default layer" checkbox and enter the following text into the text box below the checkbox:</p>

<pre><code>$(combine(path(layoutfile),basename(layoutfile))+".lyp")
</code></pre>

<p>In that case, the $(..) expression is evaluated and replaced by a path consisting of the layoutfile's directory ("path(x)"), the filename without extension ("basename(x)") and the extension ".lyp". "combine(a,b)" combines the path components using the system specific separator character.</p>

<p>Hence, the layer properties file is derived from the layout file in the desired way. If there is no such file, no specific layer properties file is loaded.</p>

<p>Matthias</p>
]]>
        </description>
    </item>
    <item>
        <title>I am new to Kalyout. How to set the number of elements in column and row in an instance?</title>
        <link>https://www.klayout.de/forum/discussion/2710/i-am-new-to-kalyout-how-to-set-the-number-of-elements-in-column-and-row-in-an-instance</link>
        <pubDate>Fri, 02 May 2025 10:44:06 +0000</pubDate>
        <category>General</category>
        <dc:creator>sohaib39</dc:creator>
        <guid isPermaLink="false">2710@/forum/discussions</guid>
        <description><![CDATA[<p>I am new to Kalyout. How to set the number of elements in column and row, column vector, row vector in an instance?</p>
]]>
        </description>
    </item>
    <item>
        <title>support DRC using Python?</title>
        <link>https://www.klayout.de/forum/discussion/1402/support-drc-using-python</link>
        <pubDate>Wed, 25 Dec 2019 06:14:43 +0000</pubDate>
        <category>General</category>
        <dc:creator>gongjie437</dc:creator>
        <guid isPermaLink="false">1402@/forum/discussions</guid>
        <description><![CDATA[<p>Hi, Mat, so far, DRC only supports Ruby. Will you consider to add Python support in the future? Thanks.</p>
]]>
        </description>
    </item>
    <item>
        <title>Command Line Interface in order to handle &quot;Save Layout Options&quot;</title>
        <link>https://www.klayout.de/forum/discussion/2693/command-line-interface-in-order-to-handle-save-layout-options</link>
        <pubDate>Tue, 08 Apr 2025 09:06:33 +0000</pubDate>
        <category>General</category>
        <dc:creator>Krzysztof</dc:creator>
        <guid isPermaLink="false">2693@/forum/discussions</guid>
        <description><![CDATA[<p>By default KLayout saves some cell context information $$$CONTEXT_INFO$$$, <br />
which can be unselected in the "Save Layout Options". <br />
Also I would like to select "Eliminate zero-length paths" by default.</p>

<p><img src="https://www.klayout.de/forum/uploads/editor/5l/fyu92nz2rkpx.png" alt="" title="" /></p>

<p>Is it possible to make this changes using command line interface ? <br />
If that would be the case what would be the command to do so ?</p>

<p>Best regards <br />
    Krzysztof</p>
]]>
        </description>
    </item>
    <item>
        <title>Red alert: KLayout Package Manager will stop working beginning of 2024 with GitHub-hosted packages</title>
        <link>https://www.klayout.de/forum/discussion/2399/red-alert-klayout-package-manager-will-stop-working-beginning-of-2024-with-github-hosted-packages</link>
        <pubDate>Sat, 21 Oct 2023 19:47:19 +0000</pubDate>
        <category>General</category>
        <dc:creator>Matthias</dc:creator>
        <guid isPermaLink="false">2399@/forum/discussions</guid>
        <description><![CDATA[<p>GitHub will discontinue Subversion support, which is the basis of all the packages hosted in KLayout (<a href="https://github.blog/2023-01-20-sunsetting-subversion-support/" rel="nofollow">https://github.blog/2023-01-20-sunsetting-subversion-support/</a>). KLayout uses the SVN interface to download the package data.</p>

<p>As a quick mitigation, it is possible to host packages on SourceForge with Subversion selected as the code tool. This will mean manual effort upon releasing GitHub-hosted projects. This used to be very convenient with the subversion bridge.</p>

<p>To facilitate this migration I will add SourceForge to the package repositories and remove GitHub.</p>

<p>Existing packages will be transferred to a read-only KLayout-owned SVN repository so they will continue working.</p>

<p>As a long-term solution, I plan to add Git support for package download. That means:</p>

<ul>
<li>It will again be possible to deploy KLayout packages directly from GitHub</li>
<li>KLayout packages have to reside at the top level of a Git repo (specifically: <code>grain.xml</code> needs to be located at top level). So far, it was possible to use a sub-folder as the package home. This will no longer work. A workaround is to use a Git submodule for the package part.</li>
<li>This deployment path will only work for new KLayout versions (target is 0.29)</li>
</ul>

<p>There is a ticket for this: <a href="https://github.com/KLayout/klayout/issues/1514" rel="nofollow">https://github.com/KLayout/klayout/issues/1514</a></p>

<p>Matthias</p>
]]>
        </description>
    </item>
    <item>
        <title>How to use different fonts in pcell</title>
        <link>https://www.klayout.de/forum/discussion/2685/how-to-use-different-fonts-in-pcell</link>
        <pubDate>Fri, 28 Mar 2025 11:02:10 +0000</pubDate>
        <category>General</category>
        <dc:creator>Krishp</dc:creator>
        <guid isPermaLink="false">2685@/forum/discussions</guid>
        <description><![CDATA[<p>Dear All,</p>

<p>Thank you to everyone who works for Klayout.  I am a basic user and my question may be simple for many users to answer.  When I convert a text into a pcell, it only uses non-Manhattan fonts.  The difficulty with the Non-Manhattan font is that it only supports capital characters.  Small letters cannot be typed on the mask.  Could someone kindly explain how to use different fonts to type capital and small letters on the mask.</p>

<p>Thanks in advance</p>

<p>Krish</p>
]]>
        </description>
    </item>
    <item>
        <title>QR Code PCell</title>
        <link>https://www.klayout.de/forum/discussion/543/qr-code-pcell</link>
        <pubDate>Tue, 11 Nov 2014 22:42:45 +0000</pubDate>
        <category>General</category>
        <dc:creator>Matthias</dc:creator>
        <guid isPermaLink="false">543@/forum/discussions</guid>
        <description><![CDATA[<p>Maybe somebody will need this:</p>

<p><a rel="nofollow" href="http://www.klayout.org/svn-public/klayout-resources/trunk/pcells/qrcode_pcell.lym">qrcode_pcell.lym</a></p>

<p>This PCell macro will provide a new library "QRCodeLib" with a single PCell "QRCode". The latter is able to produce QR code for a given text. It provides some options to adjust the appearance of the QR code.</p>

<p>Enjoy,</p>

<p>Matthias</p>

<p><img src="http://www.klayout.org/svn-public/klayout-resources/trunk/images/qr_pcell.png" alt="QR code PCell" /></p>
]]>
        </description>
    </item>
   </channel>
</rss>
