[oXygen-user] Inserting child elements automatically
Alex Jitianu
alex_jitianu at sync.ro
Thu Feb 16 01:54:57 CST 2023
Hi,
Another option would be to cascade [1] the existing action with a a new
one that inserts a comment or a placeholder that is removed once the
user types text [2]:
<?oxy-placeholder content="Enter a title"?>
To summarize it you will have to:
- create one action that inserts this comment
- create one action based on /ExecuteMultipleActionsOperation [2] /that
cascades the xref and the previous action
- you replace the xref action from the toolbar with this new action
based on /ExecuteMultipleActionsOperation/
[1]
https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/dg-default-author-operations.html#dg-default-author-operations__executemultipleactionsoperation
[2]
https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/dg-placeholder-css-extension.html
Best regards,
Alex
--
Alex Jitianu
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
On 2/16/2023 8:00 AM, Oxygen XML Editor Support (Radu Coravu) wrote:
>
> Hello Cody,
>
>
> Indeed the "InsertXrefOperation" Java operation does not have a
> parameter to specify some fixed text to insert inside the link, I
> added an internal issue based on your feedback. I do not have an easy
> workaround for you, it's possible that what you want would be possible
> with a Java based extension which would somehow listen for inserted
> links and add that text inside the inserted link.
>
>
> But coming back to your use case which seems to be to always add
> custom text inside a link to a web page, I would rather suggest using
> a custom Schematron schema to signal as a validation error to the end
> user that the link is empty:
>
>
> https://blog.oxygenxml.com/topics/sharing_schematron_validation_rules.html
>
>
> So a Schematron schema like this would report a user friendly warning
> if there is an empty link:
>
>> <sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"
>> queryBinding="xslt2"
>> xmlns:sqf="http://www.schematron-quickfix.com/validator/process">
>> <sch:pattern>
>> <sch:rule context="xref[@format='html'][@scope='external']">
>> <sch:assert test="node()">An external link should have
>> custom link text set inside.</sch:assert>
>> </sch:rule>
>> </sch:pattern>
>> </sch:schema>
>
> Regards,
>
> Radu
>
> Radu Coravu
> Oxygen XML Editor
> On 2/15/23 18:17, Cody Steele wrote:
>> I was following along with Frank's questions.
>>
>> My interest was in editing the author action insert.url.reference for
>> a web link by adding something like <!--Insert link text here-->
>> inside of the XREF element. It doesn't look like any of the arguments
>> for ro.sync.ecss.extensions.dita.link.InsertXrefOperation lets you
>> insert a fragment. Is it correct that I should proceed to the
>> involving the DITA extension framework or is there another method
>> that makes more sense to you?
>>
>> Thanks,
>>
>> Cody
>> ------------------------------------------------------------------------
>> *From:* oXygen-user <oxygen-user-bounces at oxygenxml.com> on behalf of
>> Oxygen XML Editor Support (Radu Coravu) <support at oxygenxml.com>
>> *Sent:* Wednesday, January 25, 2023 1:06 AM
>> *To:* oxygen-user at oxygenxml.com <oxygen-user at oxygenxml.com>
>> *Subject:* Re: [oXygen-user] Inserting child elements automatically
>>
>> ***Warning* This email originates from outside of Minitab. Do not
>> open attachments or click links unless you are sure this email comes
>> from a known sender and you know the content is safe.
>>
>> Hi Frank,
>>
>>
>> Let's split your use cases in two:
>>
>> 1) Inserting elements using Oxygen's actions (toolbars, menus)
>>
>> 2) Inserting elements using the content completion window.
>>
>>
>> 1)
>>
>>
>> Let's take table insertion for example:
>>
>>
>> If you edit your DITA framework extension that is defined in the
>> Preferences->"Document Type Association" page, it has an
>> "Author=>Actions" tab.
>>
>> If you edit the action "insert.table", it calls an operation named
>> "ro.sync.ecss.extensions.dita.topic.table.InsertTableOperation" with
>> certain parameters. One of the parameters is named "cellFragment",
>> you can set its value to "<p/>".
>>
>> There are other ways to change a table, for example insert a new
>> column, insert a new row. So actions like "insert.table.row.below" or
>> "insert.table.column.after" which also need to be changed accordingly.
>>
>>
>> 2) Inserting elements like <info> using the content completion window.
>>
>> Your DITA extension framework customization can contain a
>> "cc_config.xml" file which defines that for certain elements, if they
>> are inserted, another element should be inserted inside them as well:
>>
>> https://www.oxygenxml.com/doc/ug-editor/topics/configure-elements-attr-cc-individually.html#configure-elements-attr-cc-individually__examples_configuring_elements
>> <https://www.oxygenxml.com/doc/ug-editor/topics/configure-elements-attr-cc-individually.html#configure-elements-attr-cc-individually__examples_configuring_elements>
>>
>>
>> Hope this helps.
>>
>>
>> Regards,
>>
>> Radu
>>
>>
>> Radu Coravu
>> Oxygen XML Editor
>> On 1/24/23 11:49, Frank Dissinger wrote:
>>>
>>> Hi list,
>>>
>>>
>>> Whenever this is valid, I wrap text in a <p> element. I would like
>>> oXygen to automatically insert <p> as a child element when inserting
>>> <table>, <simpletable> (for the table cells of course), <info>,
>>> <stepresult>, <stepxmp>... and many more. How do I do this?
>>>
>>>
>>> Regards,
>>>
>>> Frank
>>>
>>> --
>>>
>>> *Frank Dissinger*
>>>
>>> Documentation Manager
>>>
>>> ....................................................................
>>>
>>> *CGS Publishing Technologies International GmbH*
>>>
>>> *Email *frank.dissinger at cgs-oris.com
>>> <mailto:frank.dissinger at cgs-oris.com> | *Web* www.cgs-oris.com
>>> <http://www.cgs-oris.com/>
>>>
>>> *Address* Kettelerstr. 24 | D-63512 Hainburg | Germany
>>>
>>> *Phone* +49 6182 9626-27 | *Fax* +49 6182 9626-99
>>>
>>> *Commercial register* Offenbach, HRB no. 21495
>>>
>>> *Managing directors* Bernd Rückert, Christoph Thommessen
>>>
>>>
>>> https://www.cgs-oris.com/Signatur.png
>>> <https://www.cgs-oris.com/signatur>
>>>
>>> _______________________________________________
>>> oXygen-user mailing list
>>> oXygen-user at oxygenxml.com <mailto:oXygen-user at oxygenxml.com>
>>> https://www.oxygenxml.com/mailman/listinfo/oxygen-user <https://www.oxygenxml.com/mailman/listinfo/oxygen-user>
>>
>>
>> *Minitab, LLC*, Quality Plaza, 1829 Pine Hall Rd, State College PA
>> 16801-3210, USA
>> *Minitab Limited*, England and Wales, Company No. 3061730, Unit E1-2
>> Brandon Court, Progress Way, Coventry, CV3 2TE, United Kingdom
>> *Minitab Sarl*, 17-21 rue Saint-Fiacre, 75002 Paris, 419 061 361
>> R.C.S Paris, France
>> *Minitab Pty Ltd*, Level 10, 20 Martin Place, Sydney NSW 2000, Australia
>> *Minitab GmbH*, Theatinerstraße 11, 80333 München, Germany,
>> Geschäftsführer: Bruce Pincus, Handelsregister: Amtsgericht München;
>> HRB 225635
>> *Minitab HK Limited*, Room 3703, 37th Floor, Lee Garden One, 33 Hysan
>> Avenue, Causeway Bay, Hong Kong
>>
>> *Confidentiality Notice:* This email and any attachment(s) may
>> contain confidential and proprietary information, some or all of
>> which may be legally privileged. It is for the intended use of the
>> individual(s) or entity named on the email. If you are not the
>> intended recipient, or the employee or agent responsible for
>> delivering it to the intended recipient(s), you must not use,
>> disclose, distribute, copy, print or rely on this email. If you have
>> received this email in error, please immediately return it to the
>> sender and delete it and any attachments from your system. Thank you.
>>
>> *Privacy Notice:* All incoming email communications are monitored.
>> Please refer to our Privacy Policy
>> <https://www.minitab.com/legal/privacy-policy/> for information on
>> how Minitab collects, manages, and uses personal data.
>>
>> Update your email preferences
>> <https://it.minitab.com/my-account/manage-account.aspx> to choose the
>> types of emails you receive or Unsubscribe
>> <mailto:unsubscribe at minitab.com?subject=Unsubscribe%20from%20Minitab%20Marketing%20Communications&body=Please%20unsubscribe%20this%20email%20address%20from%20Minitab%20marketing%20communications.%20%0A%0AThank%20you.>.
>>
>>
>> _______________________________________________
>> oXygen-user mailing list
>> oXygen-user at oxygenxml.com
>> https://www.oxygenxml.com/mailman/listinfo/oxygen-user
>
> _______________________________________________
> oXygen-user mailing list
> oXygen-user at oxygenxml.com
> https://www.oxygenxml.com/mailman/listinfo/oxygen-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.oxygenxml.com/pipermail/oxygen-user/attachments/20230216/e3e843f8/attachment.htm>
More information about the oXygen-user
mailing list