Enlighter – Customizable Syntax Highlighter
Enlighter is a free, easy-to-use, syntax highlighting tool for WordPress. Highlighting is powered by the EnlighterJS javascript library to provide a beautiful code-appearance. Using it can be as simple as adding a new Enlighter Sourcecode block (Gutenberg) and insert the code which you want to highlight: Enlighter takes care of the rest! An easy to use Theme-Customizer is included to modify the build-in themes without any css knowlegde! It also supports the automatic creation of tab-panes to display code-groups together (useful for multi-language examples – e.g. html+css+js) Upgrade Guide for Enlighter v4 Theme Compatibility Enlighter WordPress Plugin Docs Plugin Features Full Gutenberg Editor Integration Full Classic Editor Integration (TinyMCE) Support for all common used languages Powerful generic highlighting engine for unknown/unsupported languages Theme Customizer Inline Syntax Highlighting Advanced configuration options are available within the options page. Supports code-groups (displays multiple code-blocks within a tab-pane) Extensible language and theme engines – add your own one. Simple CSS based themes Integrated CSS file caching (suitable for high traffic sites) Full GDPR compliant – no external resources are required, no data will be aggregated Gutenberg Editor Integration Full Editor Integration via “Enlighter Sourcecode” block Inline Syntax Highlighting Automatic transformations for classic editor posts (codeblocks converted to Enlighter Sourcecode block) Transform legacy codeblocks to Enlighter Gutenberg Blocks (manual transformation) Docs and Usage Editor plugin repository Classic Editor (TinyMCE) Integration Full Editor Integration via Enlighter buttons in the toolbar Inline Syntax Highlighting Tab-Indentation mode to align code with the tab key (single line and block selection) Editor formats to highlight existing code Docs and Usage Editor plugin repository Classic Editor Live-Demo Markdown Markdown fenced code blocks Inline Syntax Highlighting via backtick code (including language specific addon) Docs and Usage Compatibility/Migration Crayon compatibility mode (use EnlighterJS highlighting for legacy Crayon pre codeblocks) CodeColorer compatibility mode (use EnlighterJS highlighting for legacy CodeColorer shortcodes) Jetpack markdown compatibility mode (generic or raw highlighting) Gutenberg standard codeblock compatibility mode (no language attributes) Extensions bbPress shortcode + markdown code blocks support Dynamic Content via jQuery Ajax.load Dynamic Content via Jetpack.InfiniteScroll Texteditor/Shortcodes (Legacy) Shortcodes are deprecated and should be used in text editor mode only – never use them within Gutenberg Editor or Classic Editor! Easy to use Text-Editor mode through the use of Shortcodes and QuickTags Shortcodes within content, comments and widgets Standalone Shortcode-Processor to avoid wpautop filter issues in Text-Editor Mode Supported Languages (build-in) In case your language is not available try the Generic Mode which covers a lot of programming languages – or request a new language on GitHub Related Links Enlighter Plugin Docs + Tutorials Enlighter Plugin on GitHub EnlighterJS Documentation Compatibility All modern webbrowsers with enabled Javascript and HTML5 capabilities for “data-” attributes are compatible with Enlighter. It’s possible that it may work with earlier/other browsers. Chrome 60+ Firefox 60+ Safari 11+ Edge Browser 10+
Top keywords
- editor14×2.97%
- enlighter12×2.55%
- highlighting10×2.12%
- mode9×1.91%
- compatibility7×1.49%
- code6×1.27%
- gutenberg6×1.27%
- integration6×1.27%
- classic5×1.06%
- classic editor5×1.06%
- docs5×1.06%
- editor integration5×1.06%
haxtheweb
Here is a short description of the plugin. This should be no more than 150 characters. No markup here. haxtheweb Bringing the HAX block editor to ClassicPress & WordPress. HAX is short for headless authoring experience, meaning that it is a block editor that is disconnected from the CMS its used in. HAX recognizes editable blocks by using the web component standard. HAX provides editing capabilities in a way that attempts to write clean HTML markup the same way an expert end-user could, but without ever touching code! The code is writen in a way that experts and developers can jump in and modify as needed given the semantic nature of webcomponents! 3rd party dependencies While you can host assets locally, the HAX editor defaults to leveraging the Penn State Web components CDN. You can modify this on the Settings -> Writing page. Additional details on this service: – Penn State CDN domain https://cdn.webcomponents.psu.edu/ is served from Amazon CloudFront – You can view assets that are exposed via CDN here https://webcomponents.psu.edu/ in StorybookJS – Privacy polcies the university adheres to: https://policy.psu.edu/policies/ad53 – The source of HAX and your web components is configurable and you can change it to leverage your own (details below) Dependencies If using WordPress, you’ll need to get the Classic Editor plugin ClassicPress does not have this dependency Make sure that your Permalink settings are for pretty links or calls to load data via JSON will fail https://stackoverflow.com/questions/44204307/rest-api-init-event-not-fired Usage This should give you the dependencies you need to get going. 1. Download this plugin and place it in wp-content/plugins/haxtheweb 2. If using WordPress you’ll also need the Classic Editor plugin; and then you’ll have to enable it as the default editor (wp-admin/options-writing.php) 3. Enable the Plugins (wp-admin/plugins.php) 4. Make sure Settings -> Permalinks is set to “Post name” 5. Go to Settings -> Writing and scroll down to change your settings 6. Go to edit or create a new page / post 7. Enjoy HAX’ing the web Configuration HAX adds options to the Writing Settings page (wp-admin/options-writing.php) to allow for further integrations and customizations though the default settings are fine to get up and started with. Note on usage The default is to serve the Javascript required for HAX and its web components from a CDN. We default to a Penn State mirror of the required assets so you can get up and running quickly. We recommend that if you choose to go into production with HAX, that you look at doing a build routine locally (outlined below) or leveraging one of the faster CDNs available. Hooking up additional “apps” in the “Find” area To connect to popular services like YouTube, Flickr, and Vimeo you’ll need an API key. You can find details on how to get these keys as well as where to put them on the Writing Settings (wp-admin/options-writing.php) page. Front end Developers You may build HAX from source if needed. HAX defaults to use CDNs which will effectively point to this directory or some mutation of it — https://github.com/elmsln/HAXcms/tree/master/build If you want to build everything from source, your welcome to use yarn / npm to do so though our build routine effectively will end in the same net result. If you want to do custom build routines such as rollup or webpack and not use our prebuilt copies / split build approaches, then your welcome to check the box related to not loading front end assets in the settings page in order to tailor the build to your specific needs. Getting dependencies You need polymer cli (not polymer but the CLI library) in order to interface with web components in your site. Get polymer cli installed prior to usage of this (and (yarn)[https://yarnpkg.com/lang/en/docs/install/#mac-stable] / an npm client of some kind) bash $ yarn global add polymer-cli Perform this on your computer locally, this doesn’t have to be installed on your server. Usage Find CopyThisStuff directory in /wp-content/plugins/haxtheweb. create a /wp-content/haxtheweb directory copy the files from CopyThisStuff into /wp-content/haxtheweb Then run the following (from the directory you copied it over to) in order to get dependencies: bash $ yarn install Now run polymer build and you’ll have files in build/ which contain everything you’ll need to get wired up to web components in your site. Modifying build.js or package.json can be used in order to get new elements and have them be implemented. Shouldn’t I put web components in my theme? We don’t think so. While it may seem counter intuitive, the theme layer should be effectively implementing what the site is saying is available. If you think of standard HTML tags are being part of this (p, div, a, etc) then it makes a bit more sense. You don’t want functional HTML components to ONLY be supplied if your theme is there, you want your theme to implement and leverage the components. New to web components? We built our own tooling to take the guess work out of creating, publishing and testing web components for HAX and other projects. We highly recommend you use this tooling though it’s not required: – https://open-wc.org – great, simple tooling and open community resource – https://github.com/elmsln/wcfactory – Build your own web component library – https://github.com/elmsln/lrnwebcomponents – Our invoking of this tooling to see what a filled out repo looks like