Many thanks for all your tips. It seems that phoebusgen is used to generate widgets.I need to write pv value into a xml file, so using etree maybe better. That would be great if there was an example.
Xuan
-----原始邮件-----
*发件人:*"Tynan Ford" <TFord at lbl.gov>
*发送时间:*2022-11-16 00:56:24 (星期三)
*收件人:* "Liu, Wanming" <wmliu at anl.gov>
*抄送:* "吴煊" <wux at ihep.ac.cn>, "kasemir, kay" <kasemirk at ornl.gov>, tech-talk <tech-talk at aps.anl.gov>
*主题:* Re: Re: [EXTERNAL] Phoebus: Find/Replace and Write XML file
I would not necessarily recommend doing this but you can see an example (exampleInPhoebus files) of creating XML file in jython here: https://github.com/als-epics/phoebusgen/tree/master/examples <https://github.com/als-epics/phoebusgen/tree/master/examples>
On Tue, Nov 15, 2022 at 8:36 AM Liu, Wanming via Tech-talk <tech-talk at aps.anl.gov <mailto:tech-talk at aps.anl.gov>> wrote:
The bob file is a xml file. So you can use etree from lxml package to manipulate the file with python. ____
__ __
*From:* Tech-talk <tech-talk-bounces at aps.anl.gov <mailto:tech-talk-bounces at aps.anl.gov>> *On Behalf Of *?? via Tech-talk
*Sent:* Monday, November 14, 2022 7:58 PM
*To:* kasemir, kay <kasemirk at ornl.gov <mailto:kasemirk at ornl.gov>>
*Cc:* tech-talk <tech-talk at aps.anl.gov <mailto:tech-talk at aps.anl.gov>>
*Subject:* Re: Re: [EXTERNAL] Phoebus: Find/Replace and Write XML file____
__ __
I'm sorry I didn't make myself clear. I wish to know how to create and write XML file using jython/python script in phoebus? Is there a way to find and replace charactors especially pv_names in xxx.bob file? ____
Xuan ____
-----原始邮件-----
*发件人:*"Kasemir, Kay" <kasemirk at ornl.gov <mailto:kasemirk at ornl.gov>>
*发送时间:*2022-11-14 22:27:56 (星期一)
*收件人:* tech-talk <tech-talk at aps.anl.gov <mailto:tech-talk at aps.anl.gov>>, "吴煊" <wux at ihep.ac.cn <mailto:wux at ihep.ac.cn>>
*抄送:*
*主**题:* Re: [EXTERNAL] Phoebus: Find/Replace and Write XML file____
> Is there "Find/Replace" function still in phoebus? It's very useful for replacing pv names or other things in CSS. Another question I'd like to ask:how to create and write XML file in phoebus? I haven't see it in display builder examples. Any advice or suggestions will be grately appretiated ____
__ __
__ __
Yes, one advantage of the XML file format is that it allows creating or modifying theses files outside of the graphical editor. ____
We don't try to include a complete XML editor in phoebus, but you can easily add an OS-specific editor to the context menu so that you can then open a display file from the phoebus file browser via the context menu. ____
__ __
For example, on Linux you can add a reference to the plain "gedit" text editor like this, so it can then be used to open *.bob or *.opi files and for example perform PV name replacements:____
__ __
org.phoebus.framework.workbench/external_app_text=Text Editor,txt|dat|tab|py|ini|def|db|xml|xsl|css|cmd|sh|st|log|out|md|tex|shp|bob|opi|pvs|edl,gedit____
__ __
You could also register VS code or another more XML-aware editor just for *.bob like that. ____
__ __
__ __
For a general python package that generates display files outside of phoebus, see https://github.com/als-epics/phoebusgen <https://github.com/als-epics/phoebusgen>____
__ __
__ __
-Kay ____
__ __