clemens-tolboom commented on issue Zylann/godot_heightmap_plugin#266
Reading the log (why should I visit another site for that? :-/) Godot Engine v3.2.3.stable.official - https://godotengine.org OpenGL ES 3.0 Render…
PreviousNext: CKEditor5 scoped styles with PostCSS
The Drupal 10 update is moving to CKEditor 5. What’s different? It’s no longer an iframe! So how do we scope any custom styles we want to include?
by rikki.bochow / 23 May 2023First and foremost, if you haven’t read the Drupal docs about including custom styles, then please read that. It will give you the necessary context.
This article is specifically about a theme setup that already uses PostCSS (as opposed to Sass - this is much easier with Sass), has various component stylesheets, and includes some level of theme CSS to the CKEditor window to help improve the content editor experience.
Simply including the same styles used in CKEditor 4 to CKEditor 5 now bleed out into the admin theme, so we need to scope them to the .ck-content class.
Let's just say the theme's original ckeditor.css file looks something like this:
@import "./custom-properties.css"; @import "./base/base.css"; @import "./button/button.css"; @import "./layout/layout.css"; body { font-family: var(--font-family); padding: .5rem; }We use a couple of PostCSS plugins already, notably postcss-import and postcss-preset-env but in order to wrap everything here in a certain class, including everything we’re importing…
We need a new pluginI tested a few class prefixing plugins, but the only one that suited my requirements was postcss-prefixwrap. With it installed, here’s our basic postcss.config.js:
module.exports = { plugins: [ require("postcss-import"), ... other plugins require("postcss-prefixwrap")(".ck-content", { whitelist: ["docroot/themes/my_theme/src/ckeditor.css"], nested: "&", ignoredSelectors: [":root", /^\\.ck-(.+)$/], }), ], }We place it last; we add the class to use as the prefix .ck-content and specify our options;
- whitelist: our ckeditor.css, so this plugin only applies to that file.
- nested: because we use ampersand for nested selectors
- ignoredSelectors: include the :root where we have some global custom properties and any class that starts with .ck- because it’s already scoped.
The only change we need to make to our ckeditor.css file is to change our body styles to live on .ck-content instead. Otherwise, they’ll come out at .ck-content body and be ignored.
Now every selector in our generated ckeditor.css file (that we didn’t ignore) is prefixed with .ck-content; thus all the styles are scoped to CKEditor 5 and no longer bleed into the admin theme.
A note on CSS Custom PropertiesIf you (like me) prefer to preserve your custom properties, you may find the need to scope them as well, to avoid clashes with custom properties the admin theme might have.
For this, I added one more PostCSS plugin postcss-variables-prefixer;
module.exports = { plugins: [ require("postcss-import"), ... other plugins require("postcss-variables-prefixer")({ prefix: "pnx-", }), require("postcss-prefixwrap")(".ck-content", { whitelist: ["docroot/themes/my_theme/src/ckeditor.css"], nested: "&", ignoredSelectors: [":root", /^\\.ck-(.+)$/], }), ], }This isn’t specific to the ckeditor.css file, but that’s ok with me; they can be unique everywhere.
Hopefully, this helps make the transition to CKEditor 5 a little smoother for your content editors when updating to Drupal 10.
Acquia Developer Portal Blog: Evaluating Drupal Community Modules
When looking to use a module from the Drupal community there are a number of factors to consider, beyond its functional use, that determine suitable quality and support for your organisation to use.
When you deploy a Drupal site into production, who is responsible for maintaining it? How long will that site live for? These types of questions shape the risk tolerances of the project. E.g. Lower Drupal competencies means you need greater community support and more stable modules.
All modules on Drupal.org are open source and fall under the GPLv2 open source license. They are free to download and use at your own risk. Each project has its own set of maintainers and a sub-community that uses the module, interacts through issues and contributes bug fixes and feature enhancements.
Acquia Developer Portal Blog: Drupal: cache tags for all, regardless your backend
This blog has been re-posted and edited with permission from Matt Glaman's blog.
Phil Karlton is quoted as having said, "There are only two hard things in Computer Science: cache invalidation and naming things." As someone who suffers horribly from the latter, I'm glad Drupal's caching APIs make the former a breeze. The long short of it is that caching of data improves performance by not having to perform the same operations multiple times after it has been done the first time until you need to re-run that operation again. It involves some storage (static variable in memory, memory backend storage, or the database.) Generally, you store the data with a given identifier for later retrieval, the actual data to be cached for later reuse, and possibly an expiration time for automatic invalidation.
Ryan Szrama: Deadline drawing near for Pitch-burgh entries
Talking Drupal: Talking Drupal #400 - A chat with Dries
Today we are talking with Dries Buytaert.
For show notes visit: www.talkingDrupal.com/400
Topics- Favorite improvement to Drupal in last 10 years
- Biggest opportunities and challenges facing Drupal
- Drupalcon Portland Driesnote Ambitious site builder
- Spoilers for the next Driesnote
- Static site generators
- 50,000 projects
- Impact of AI
- People just entering the development market
- Last thing you coded
- For work
- For fun
- Digital Public Good
- Drupal is for ambitious site builders
- Drupal Recognized as a Digital Public Good
- Claro episode
- DrupalCon Innovation Contest
- Drupal vs SSG
- 50K modules
- 50000 module
- Artificial Intelligence, the future of Content Management and the Web
- Dries Site Header Tool
- Getting 10/10
- Makers and Takers
Dries Buytaert - dri.es
HostsNic Laflin - www.nLighteneddevelopment.com @nicxvan John Picozzi - www.epam.com @johnpicozzi Stephen Cross - stephencross.com @stephencross Martin Anderson-Clutz - @mandclu
MOTW CorrespondentMartin Anderson-Clutz - @mandclu OpenAI Provides a suite of modules and an API foundation for OpenAI integration for generating text content, images, content analysis and more.
CTI Digital: Gain Competitive Advantage and Accelerate Your Drupal Build
When it comes to upgrading your website, the decision is never taken lightly.
It's a process that demands considerable effort, time, and money.
Whether aiming to boost your CMS platform's performance or enhance the user experience, making sure you choose the upgrade that delivers the greatest value for your investment is crucial.
We understand this better than anyone else as one of Europe's most experienced Drupal development agencies. Our expertise in Drupal allows us to streamline the installation process, getting you started on your priority features quickly and cost-effectively.
But that's not all. We've developed something truly special: Drupal Accelerator.
This innovative tool is designed to fast-track the installation of Drupal, providing you with a cost-effective package to create highly effective and efficient content and marketing websites. It harnesses the power of commonly used, ready-to-go features and functionalities, making it the perfect solution to fast-track the build and focus on your specific needs.
Salsa Digital: BenefitMe runner up for Non-profit Splash Award
The Drop Times: A Traveler's Mindset
Each day in our life comes packed with different challenges. These challenges can sometimes be exciting and bring about a happy ending. But most of the time, challenges get coupled with difficulties. Difficulties in turn can get us stressed and even burn us out. As individuals, it is very important to convince ourselves that there seldom comes a day without a hurdle to cross. When we have such a prior understanding, challenges will fail to shock us.
I would like to put it another way. Just think about the last travel experience you had and try to remember the challenges faced. While traveling, there isn't much time available to solve a problem. We never wait for others to act first, instead we promptly go forward and find an alternative solution. A traveler is ready to seek advice from knowledgeable people without any inhibitions. Such a mindset helps to overcome any challenges on the road or anywhere. Because we know we will be stuck very badly if we do not find a solution.
Life itself, in essence, is a journey. Nothing can help us better than to have a traveler's mindset. Now, let us journey through the important picks from the past week.
The Drop Times interviewed Margery Tongway on the sidelines of DrupalSouth. Margery Tongway is a Senior Consultant at Annex. Click here to read the interview. Read TDT's report on DrupalSouth Wellington 2023, where the Drupal community celebrated expertise and honored achievements.
A blog post published on gbyte.dev provides a detailed guide on hosting a Drupal 9 or 10 website using NixOS. In a blog titled "Disabling Twig Caching Made Simpler," Mike Herchel writes on how to disable Twig caching. Kanopi Studios has published an article explaining the benefits of a great website design. Srijan has published a new blog post on how to install Drupal 10 using Colima and DDEV on MacBook.
An article published by StyleLib explains how Facdori theme is designed to provide a professional and modern look for industrial and manufacturing businesses. A new blog post published by Acquia discusses the capabilities and advantages of using Drupal content management system (CMS), for building e-commerce websites. A blog post published by Evolving Web explores Drupal 10 and its integration with Symfony 6.2 framework. the new PHP framework brings significant enhancements to the Drupal tech stack.
Pantheon has introduced a new direct purchase path that allows web teams to access valuable WebOps features with ease. Follow this link to know more. See how developers can enhance the flexibility and extensibility of their Drupal-powered websites by integrating Symfony Components and Twig into Drupal Core. Selecting the right e-commerce platform can be challenging. Two popular options, Drupal Commerce and BigCommerce, stand out as top choices for businesses of all sizes. LN Webworks have published a blog post comparing both the options.
Evolve Drupal is scheduled on 26 May 2023 in Montreal, Canada. This will be an in-person event. Click here to read more. The Drupal Bangalore User Group (D-BUG) will hold its monthly event on Saturday, 27 May, 2023. The event, will be held at Valuebound's headquarters.
That is all for the week,
Your's truly,
Thomas Alias K,
Sub-Editor, TheDropTimes
Peoples Blog: Leveraging Content Grouping for Personalized Digital Experiences
LN Webworks: Drupal Single Vendor E-commerce Website: 5 Features to Consider
E-commerce businesses are pursuing opportunities to stand out, compete, and increase sales, regardless of their type or size. The proliferation of visitors to online marketplaces makes it challenging to distinguish oneself from the competition. That's where single-vendor e-commerce websites come in.
With a platform like Drupal Commerce, creating an empowering center for your online business has become a piece of cake. This article provides guidance on creating a memorable shopping experience using five e-commerce features, making sure they feel no regret when they choose to shop with you.
What is a Single Vendor E-commerce Website?A single vendor e-commerce website is a platform exclusively owned and managed by a single seller, who directly offers their products or services to consumers.
clemens-tolboom opened a pull request in MikeSchulze/gdUnit4
There are still 46 GdUnit3 references but those are C# related plus harder to fix. This fixes 3 templates and server startup.
+4 -4clemens-tolboom opened an issue in MikeSchulze/gdUnit4
The used GdUnit4 version: When downloading or opening this repo's checkout my Godot crashes. !! This is not reproducible on either an empty or once…
clemens-tolboom created a branch some-v3-changes in clemens-tolboom/gdUnit4
Updated May 18
Ben's SEO Blog: How to Improve Drupal Website Performance
clemens-tolboom forked clemens-tolboom/gdUnit4 from MikeSchulze/gdUnit4
A Godot Unit Test Framework. Support for GDScript and C# unit testing
GDScript 140 Updated May 18
Drupal Association blog: Drupal GAAD Pledge 2023 Update
Posted on behalf of the Drupal accessibility maintainers and written by Mike Gifford.
Drupal is well known for its accessibility. While not perfect, Drupal made an early commitment to accessibility when Drupal 7 was released at the beginning of 2011. Its release was delayed several months because the core team was working to include accessibility releases for both front-facing and back-end user interfaces. This was a huge step for a general purpose content publishing tool like Drupal. Our community was one of the first to make accessibility accommodations for people with disabilities as not just users, but also as authors.
At that time, Dries Buytaert, the founder of Drupal, announced that accessibility was going to be one of the core gates of accessibility. It is still rare to see a software project launch get delayed because of accessibility issues. In my experience, this demonstrates when a community really values accessibility.
So when Drupal was nominated for the 2022 GAAD Pledge (an initiative of the GAAD Foundation that works with one influential open source project annually), we knew we had already demonstrated commitment to this part of the pledge.
The GAAD Pledge committed projects to formally update their guidelines to WCAG 2.1. WCAG 2.0 is still the default for many organizations, and Drupal was no exception. WCAG 2.0 was released in 2008, 18 months after the first iPhones were available for sale. Members of the Drupal Accessibility Team started looking at how they would implement WCAG 2.1 AA before it was released. The Accessibility Team has embraced 2.1 informally for a long time. We could have left it there, but we knew WCAG 2.2 and WCAG 3.0 were being developed. As such we updated our commitment to follow the latest W3C WCAG Recommendation.
We do not have a formal adoption of the Accessibility Coding Standards, but we are close. The Drupal Standards team may want a few additional changes, but we have documented many of the best practices that we have built into Drupal. We looked at other Accessibility Coding Standards, and felt we were able to create a project specific accessibility standard that was going to be helpful in educating people who are new to either Drupal or Accessibility.
This was tied to the important step of cleaning up our documentation. The instructions built into most open source projects are out of date, or incomplete, yet they are so important. This is especially true for accessibility. People new to accessibility, need an entry point that allows them to access the information that is relevant to the latest versions of the project. We’ve worked to improve this for Drupal.
We have been tracking accessibility issues in Drupal Core and Contrib under the accessibility tag. This is already a long-standing practice, and we have a staggering 2817 open issues.
How can we be a leader in accessibility, and have so many open issues? Ultimately, it is really a factor of how complex the user interface is, and how actively people are addressing issues. We have an active developer community with lots of modules and themes.
We recently started tagging issues for WCAG Success Criteria. Going this extra distance helps aggregate issues. With Drupal Core we can better understand the impact of particular issues on populations we care about. It also helps us create an Accessibility Conformance Report (ACR). I’ve outlined the process that we put together for Drupal and ACRs.
We are hoping to be able to provide a machine-readable ACR into every release of Drupal Core in the form of a simple OpenACR file.
We’d love to have members of the Drupal community become involved in helping Drupal continue to lead on accessibility. Help us take the next steps to ensure that we are catching accessibility errors earlier. We also hope that everyone takes time to engage in Global Accessibility Awareness Day, where we can share best practices and learn from each other.
Ixis.co.uk - Thoughts: Drupal Accelerator: How to gain competitive advantage using Drupal
clemens-tolboom commented on issue thorvg/thorvg#1451
Thanks for the blazing fast fixes :)