====== Copycode Plugin ====== ---- plugin ---- description: Copy code block to clipboard with just a click author : Nicolas Prigent email : mail.nicolasprigent@gmail.com type : Action lastupdate : 2023-11-08 compatible : Hogfather, 2022-07-31 ,2023-04-04 depends : conflicts : similar : clippy, codeclipboard tags : clipboard, copy, code downloadurl: https://github.com/nicolasprigent/Dokuwiki-Copycode-plugin/archive/master.zip bugtracker : sourcerepo : https://github.com/nicolasprigent/Dokuwiki-Copycode-plugin/ donationurl: screenshot_img : ---- ===== Installation ===== :!: **External requirements:** This plugin requires jQuery (bundled with latests versions of DokuWiki). Install the plugin using the [[plugin:extension|Extension Manager Plugin]] or from the download URL above, which points to latest version of the plugin. Refer to [[:Plugins]] on how to install plugins manually. ===== Usage ===== Adds a javascript click event on all code blocks that copy the content of the block to clipboard. Just click on a code block: done! You can also select a part of a code inside a code block, and the selection gets immediately copied to clipboard. With right click you can copy the code block without carriage returns. ===== Development ===== This plugin uses the global Navigator.clipboard property. It can only be used on a secured environment and in a compatible navigator : https://developer.mozilla.org/en-US/docs/Web/API/Clipboard === Change Log === * **2023-11-08** Thanks to @tvataire (https://github.com/tvataire) for the pull requests * Refactoring of the script.js file to make it easier to maintain * New feature : added an option to disable inline copy on right-click * New feature : added an option to disable auto-copy of highlighted text * File cleaning (useless whitespaces and writes to the console, unix file format conversion) * **2023-09-21** * Fix : added code to prevent copy after scrolling the code block. * New feature : added a list of cursor in configuration panel to choose the hover cursor on code blocks. * **2023-05-28** * Fix : copycode plugin now work under the .dokuwiki class instead of the mainpage id. * **2022-09-12** * Fix : commented an alert on unused mouse key clic (like previous or next buttons) * **2022-03-02** * Adds functionality to remove extra non ascii character bug * Adds functionality and code logic for new mouse actions * Adds inline copy on right click * Removing default contextmenu on right click on a code block * Better writing of jquery elements (using $ instead of repetitive jQuery function calls) * **2021-08-09** * Merged Pull Request from FootStark "Add inline code-copying with option" * **2021-04-21** * Added "code" html selector in jquery * **2021-02-18** * If for any reason, navigator.clipboard fails, it uses the hidden textarea hack instead * Added dutch language file * **2020-09-21** * Added code selection copy, with its own alert box * css and js cleaning * **2020-09-08** * Refactoring of copycode functions with navigator.clipboard function instead of hidden input hack. Fixing the jump to top bug on android systems. See https://developer.mozilla.org/fr/docs/Web/API/Clipboard for compatible web browsers (everything but Internet Explorer). * **2020-08-30** * Fix tag with no filename that did not work when copying (https://github.com/nicolasprigent/Dokuwiki-Copycode-plugin/issues/4) * **2020-07-01** * Fix multi linebreaks when there is more than one code block * **2020-06-25** * Fix preventing jump to top while clicking the code block * **2020-06-24** * Fix of numbered lines issue * Updated date and link to github repository * **2020-06-15** * Initial release === ToDo/Wish List === Only translated into English, French, German and Dutch. Some translations are generated with Deepl and should be corrected. More languages should be added too, don't hesitate to help !