Commit Graph

10 Commits

Author SHA1 Message Date
Michael Schmidt de79636a8a
Website: Moved remaining vendor files into `vendor` folder (#2829) 2021-05-01 14:57:39 +02:00
Michael Schmidt 91fdd0b192
Website: New assets directory for all web-only files (#2180) 2020-06-28 01:58:55 +02:00
Michael Schmidt 238f1163b5
Toolbar: `data-toolbar-order` is now inherited (#2205)
The `data-toolbar-order` property is now inherited allowing for custom orderings/selections on an per-element basis.
2020-02-08 17:07:33 +01:00
Michael Schmidt cdfa60acbd
Added plugin descriptions to plugin list (#2076)
This adds plugin descriptions to the plugin lists on the website.
2019-09-30 19:43:33 +02:00
Michael Schmidt 3ad4704759
Toolbar: Minor improvements (#1818)
The `registerButton` function will now log a warning and do nothing if a button is registered twice.
2019-03-24 21:17:06 +01:00
Michael Schmidt 439ea1ee9a
Added scripts directory (#1781)
This adds a new `scripts` directory for all scripts used exclusively by the prismjs.com website.
2019-03-11 00:32:45 +01:00
Rex Zeng 5311ca3288 Fixed Toolbar plugin example (#1726)
There was a function parameter missing in one of the Toolbar plugin examples.
2019-02-12 13:49:39 +01:00
Valtteri Laitinen d95f8fb48e Use rel="icon" instead of rel="shortcut icon" (#1398) 2018-04-22 14:55:38 +02:00
Valtteri Laitinen 95146c8fc4 Use HTTPS / canonical URLs (#1390)
Also, remove the broken link in `/index.html`.
2018-04-17 00:28:42 +02:00
James DiGioia 07b81ac79e Plugins: Toolbar & Copy to Clipboard (#891)
* Add prism-toolbar plugin

This plugin exposes a `registerButton` method, which other
plugins can use to add buttons to the toolbar. Comes with
styles.

* Add demo file for toolbar plugin

Registers a "Hello World!" tag with the toolbar.

* Make `toolbar.registerButton` polymorphic

This allows developers to provide either a callback or an object
with a `text` string and an optional `onClick` function to create
a new button.

* Add Toolbar & Copy to Clipboard to components.js

* Add Copy to Clipboard plugin

* Switch `innerHTML` to `textContent`

This ensures additional HTML can't be passed to the toolbar
via the `text` property, ensuring a consistent display for the
buttons.

* Use `call` to bind `this` to the `onClick` method

This provides access to the clicked element, which is what `this`
is usually bound to on event listeners.

* Add hover animation to toolbar

* Add drop shadow to toolbar buttons

* Add `clipboard` to `optionalDependencies`

This will install Clipboard.js when installing from `npm`, but
won't fail the build if the installation of Clipboard.js fails.

* Load Clipboard.js from CDN if not present

* Display plugin code using data-src

* Recompile prism-toolbar

* Update Show Languages to be a Toolbar button

Show Languages now registers a callback with the toolbar
plugin to return an element with the language in it.

* Add basic HTML API & documentation

The Toolbar will now be able to read a `data-label` attribute
and add it to the code snippet.

* Switch a -> button when only providing onClick

Also adds a `url` property which creats an anchor tag and sets
the href. Adds some styles to override the button defaults.

* Add support for data-url to create anchor tag

This allows the HTML API to create links in the Toolbar.

* Update toolbar to allow order controlled via HTML

Uses a data-attribute on the `body` tag to update the order,
should the user choose to do so.

* Allow template element to provide content to label

This provides one of several options a user can implement in order to
get a custom button.

Also fixes some bugs in the documentation.

* Fix bug when combined with the autoloader plugin

The autoloader will rehighlight the element after the language arrives.
This means the complete hook can run multiple times. Without a check,
multiple toolbars can get added to an element.
2016-11-09 02:08:49 +01:00