Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[GHS] Stabilize and release a production-ready General HTML support feature #9856

Closed
Reinmar opened this issue Jun 13, 2021 · 10 comments
Closed
Labels
Epic package:html-support resolution:resolved This issue was already resolved (e.g. by another ticket). squad:core Issue to be handled by the Core team. type:feature This issue reports a feature request (an idea for a new functionality or a missing option).

Comments

@Reinmar
Copy link
Member

Reinmar commented Jun 13, 2021

📝 Provide a description of the new feature

Placeholder for all followups for the GHS feature that we'll need to close to make it production-ready.

List of issues:


If you'd like to see this feature implemented, add a 👍 reaction to this post.

@Reinmar Reinmar added type:feature This issue reports a feature request (an idea for a new functionality or a missing option). squad:compat labels Jun 13, 2021
@Reinmar Reinmar added this to the nice-to-have milestone Jun 13, 2021
@Mgsy Mgsy added the Epic label Jun 30, 2021
@ariane-codes
Copy link

I'd love to see this stable! Thanks for your hard work :)

@reciprocityFailure
Copy link

It would be great to have this stable. I like many of the improvements in CKEditor5, but we need code view!

@Reinmar Reinmar added squad:core Issue to be handled by the Core team. and removed squad:compat labels Sep 27, 2021
@mmichaelis
Copy link

Some first thoughts after rough evaluation (we are migrating from CKEditor 4 to CKEditor 5 and this may solve some of our challenges):

  • Term: While GHS is a good name to get a grasp of the feature, it may be important to note, that it is essentially about any XML structure. Perhaps with some extra candy, that we distinguish between inline and block elements.

  • Alignment Integration: I think, we may require an Alignment integration as well. For example: We have to map alignment to classes (e.g., align-right), while the very same element may also carry other classes for styling. The challenge would be, that some class-attribute values have to be transformed for the Alignment feature, while others should be kept "for other purpose".
    From what I have seen so far, the existing feature set could also be extended by customers requiring such an extra mapping.

  • Data Processor Integration? From the documentation it is not clear to me, how GHS integrates with a custom data-processor. At first glance, it read, as if GHS is a data-processor (it tells something about setData and getData). Now it seems, that it is on data layer a downcast to the data view (see Editing Engine), which again means, that you could still apply any data-processor. It may be important to add a corresponding note to the documentation.

All in all, it looks very promising, and it may help us in our current migration efforts.

What we essentially require achieving, seems to be a perfect match with the GHS goal:

While not necessarily providing editing capabilities for data read from a server, data from the server are not necessarily corrupted/modified, just because the editor cannot create such structures.

Logging/Reporting? Perhaps one more remark: From my point of view, such "data preserving approach" is always just a workaround, for something which should better be handled by the editing UI with clear model/view/data structure. Thus, some reporting feature when handlers of GHS "have to come to the rescue" would be a real nice feature to identify implementation gaps.

@shabab477
Copy link

This is an awesome feature to have. Thank you for the good work! 👍

@pomek pomek removed this from the nice-to-have milestone Feb 21, 2022
@CKEditorBot CKEditorBot added the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label Mar 18, 2022
@CKEditorBot CKEditorBot removed the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label Apr 21, 2022
@CKEditorBot CKEditorBot added the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label May 6, 2022
@Mgsy
Copy link
Member

Mgsy commented May 19, 2022

General HTML Support has been tested multiple times in production environments and it is considered a stable feature. It still misses some features, but it's safe to use it. I'm closing this issue, as it's considered as done.

@Mgsy Mgsy closed this as completed May 19, 2022
@CKEditorBot CKEditorBot removed the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label May 19, 2022
@Reinmar Reinmar added the resolution:resolved This issue was already resolved (e.g. by another ticket). label May 20, 2022
@CKEditorBot CKEditorBot added the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label Jun 16, 2023
@Vik925
Copy link

Vik925 commented Jun 19, 2023

Hello! I have a problem with htmlSupport.
I need the <p> and <h2> tags to have the default attributes itemprop="articleBody" and itemprop="alternativeHeadline" and the ability to manually add the id attribute.

I constantly have these problems, or one or the other works, but does not work at the same time. I tried adding constant attributes through the heading2 model, and variable id through htmlSupport. There is also a difficulty in adding a constant attribute to paragraph by default. I'm using dll method integration in the strapi.

@yoyo837
Copy link

yoyo837 commented Jun 19, 2023

Hello! I have a problem with htmlSupport. I need the <p> and <h2> tags to have the default attributes itemprop="articleBody" and itemprop="alternativeHeadline" and the ability to manually add the id attribute.

I constantly have these problems, or one or the other works, but does not work at the same time. I tried adding constant attributes through the heading2 model, and variable id through htmlSupport. There is also a difficulty in adding a constant attribute to paragraph by default. I'm using dll method integration in the strapi.

image

Try this.

@Vik925
Copy link

Vik925 commented Jun 19, 2023

image
image
These two codes conflict.

image
if I use it with such a line, then everything is fine, but then my content employees will have to manually prescribe the attributes that need to be set by default for titles and paragraph.

@Witoso
Copy link
Member

Witoso commented Jun 20, 2023

@Vik925, please open a new issue with information about your editor's setup. Only then we will be able to check this situation and try to support it.

@Vik925
Copy link

Vik925 commented Jun 20, 2023

@Witoso, this solution helped me.

image
image

Result
image

I think the problem is in the name. The filter removed the identifier from headers that were overridden. That is, you need to correctly write the expression for the filter in the title. But I dont know how.

@pomek pomek removed the status:in-progress Set automatically when an issue lands in the "In progress" column. We are working on it. label Jan 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Epic package:html-support resolution:resolved This issue was already resolved (e.g. by another ticket). squad:core Issue to be handled by the Core team. type:feature This issue reports a feature request (an idea for a new functionality or a missing option).
Projects
None yet
Development

No branches or pull requests