DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:button

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
plugin:button [2020-07-09 20:25] rpeyronplugin:button [2024-01-18 12:58] (current) Aleksandr
Line 6: Line 6:
 email      : remi+dokuwiki@via.ecp.fr email      : remi+dokuwiki@via.ecp.fr
 type       : syntax type       : syntax
-lastupdate : 2020-05-11 +lastupdate : 2023-08-18 
-compatible : Adora Belle, Weatherwax, Binky, Ponder Stibbons, Hrun, Detritus, Elenor Of Tsort, Frusterick Manners, Greebo, Hogfather+compatible : Adora Belle, Weatherwax, Binky, Ponder Stibbons, Hrun, Detritus, Elenor Of Tsort, Frusterick Manners, Greebo, Hogfather, Igor, Jack Jackrum
 depends    :  depends    : 
 conflicts  : siteexport conflicts  : siteexport
-similar    : bootswrapper, wrap+similar    : bootswrapper, mikioplugin, wrap
 tags       : button, links tags       : button, links
  
Line 26: Line 26:
 ===== Examples/Usage ===== ===== Examples/Usage =====
  
-Below is a screenshot of a basic resulting button :+Below is a screenshot of a basic resulting button:
  
-{{http://rpeyron.github.io/plugin-button/dokuwiki_button_main.png}}+{{http://rpeyron.github.io/plugin-button/dokuwiki_button_main.png?recache|}}
  
 ===== Syntax ===== ===== Syntax =====
  
-The full syntax is :+The full syntax is:
 <code> <code>
 [[{namespace:image|extra css}wiki page|**Title** of the link]] [[{namespace:image|extra css}wiki page|**Title** of the link]]
 </code> </code>
-Where :+Where:
   * ''namespace:image'' is the location of the image to use in the media manager   * ''namespace:image'' is the location of the image to use in the media manager
   * ''extra css'' is some css code to add to the button, or the name of a style defined with ''conf.styles'' (see below)   * ''extra css'' is some css code to add to the button, or the name of a style defined with ''conf.styles'' (see below)
-  * ''wiki page'' is the targetted id page ; you may also use ''/'' prefix to force an external URI (for instance : ''/mailto:example@example.org'' +  * ''wiki page'' is the targetted id page; 
-  * ''**Title** of the link'' is the name that will be displayed on the button, with formatting support ('\\' will break the line in the button, '**' for bold, etc.)+    * targets with %%://%% or %%mailto:%% are treated as external URI; 
 +    * you may also use ''!'' prefix to force an external URI (for instance: %%!apt:package%% )
 +    * protocol has to be allowed in dokuwiki, check [[:urlschemes]] 
 +  * ''**Title** of the link'' is the name that will be displayed on the button, with formatting support ('\\' will break the line in the button, '%%**%%' for bold, etc.)
  
-All fields are optional, so the minimal syntax is :+All fields are optional, so the minimal syntax is:
 <code> <code>
 [[{}Simple button without image]] [[{}Simple button without image]]
 </code> </code>
  
-You may configure some styles to use in your buttons without repeating all the css :+You may configure some styles to use in your buttons without repeating all the css:
 <code> <code>
 [[{conf.styles}style|css]] [[{conf.styles}style|css]]
 </code> </code>
  
-Where :+Where:
   * ''conf.styles'' is the keyword to set the styles   * ''conf.styles'' is the keyword to set the styles
-  * ''style'' is the name of the style you want to set ; if ‘default’, it will be added to all buttons+  * ''style'' is the name of the style you want to set; 
 +    * if ‘default’, it will be added to all buttons
   * ''css'' is the css code you will assign to that style   * ''css'' is the css code you will assign to that style
  
-You may then use the ''style'' in your button, example :+You may then use the ''style'' in your button, example:
  
 <code> <code>
-Style declaration :+Style declaration:
 [[{conf.styles}default|font-family: "Times New Roman", Times, serif;]] [[{conf.styles}default|font-family: "Times New Roman", Times, serif;]]
 [[{conf.styles}mystyle|color:green; width:15em;]] [[{conf.styles}mystyle|color:green; width:15em;]]
  
-Style use :+Style use:
 [[{|mystyle}Button in times new roman]] [[{|mystyle}Button in times new roman]]
 [[{}Button in green and in times new roman]] [[{}Button in green and in times new roman]]
 </code> </code>
  
-You may also add styles that will be available for all pages in the plugin section of the configuration page. You will have to add one line per style :+You may also add styles that will be available for all pages in the plugin section of the configuration page. You will have to add one line per style:
 <code> <code>
 default|font-family: "Times New Roman", Times, serif; default|font-family: "Times New Roman", Times, serif;
Line 77: Line 81:
 Note that the CSS part is a bit tricky due to the selectors used in the template CSS and the layout needed for the button. By default, the style of the links is not repeated (just external links icon). See comments in style.css file for more information. Note that the CSS part is a bit tricky due to the selectors used in the template CSS and the layout needed for the button. By default, the style of the links is not repeated (just external links icon). See comments in style.css file for more information.
  
-You may also configure the target of the link with the use of conf.target :+You may also configure the target of the link with the use of conf.target:
 <code> <code>
 [[{conf.target}style|target]] [[{conf.target}style|target]]
Line 97: Line 101:
 ===== Contributions ===== ===== Contributions =====
  
-Feel free to contribute to this pluginsource on GitHub: [[https://github.com/rpeyron/plugin-button]]+Feel free to contribute to this plugin source on GitHub: [[https://github.com/rpeyron/plugin-button]]
  
-Thank you to :+Thank you to:
   * Xavier Decuyper (toolbar button)   * Xavier Decuyper (toolbar button)
   * lisps (global config, internal media link support, escaping of userinput)   * lisps (global config, internal media link support, escaping of userinput)
-  * ThisNameIsNotAllowed (support for move plugin)+  * ThisNameIsNotAllowed (support for [[move]] plugin)
  
 ===== Changelog ===== ===== Changelog =====
  
-  * 19/05/2013: Initial release +  * 19/05/2013 : Initial release 
-  * 20/04/2014: Added target support (feature request from Andrew St Hilaire) +  * 20/04/2014 : Added target support (feature request from Andrew St Hilaire) 
-  * 07/06/2014: Added formatting support in description link text (but not in page link section) (feature request from Willi Lethert) +  * 07/06/2014 : Added formatting support in description link text (but not in page link section) (feature request from Willi Lethert) 
-  * 30/08/2014: Added toolbar button (contribution from [[http://www.savjee.be/|Xavier Decuyper]]) and fixed local anchor (bug reported by Andreas Kuzma) +  * 30/08/2014 : Added toolbar button (contribution from [[http://www.savjee.be/|Xavier Decuyper]]) and fixed local anchor (bug reported by Andreas Kuzma) 
-  * 06/09/2014: Refactored to add backlinks support (feature request from Schümmer Hans-Jürgen); you will need to update cache +  * 06/09/2014 : Refactored to add backlinks support (feature request from Schümmer Hans-Jürgen); you will need to update cache 
-  * 28/04/2015: Refactored global config handling, add internal media link support, add escaping of userinput (contribution from lisps [[https://github.com/lisps/plugin-button]]) +  * 28/04/2015 : Refactored global config handling, add internal media link support, add escaping of userinput (contribution from lisps [[https://github.com/lisps/plugin-button]]) 
-  * 05/08/2015: Merged lisps default style option and added french translation+  * 05/08/2015 : Merged lisps default style option and added french translation
   * 12/09/2015 : Fixed PHP error with some versions   * 12/09/2015 : Fixed PHP error with some versions
   * 07/02/2016 : Applied PHP7 patch   * 07/02/2016 : Applied PHP7 patch
Line 121: Line 125:
   * 07/03/2020 : Fixed PHP warning (Issue #9)   * 07/03/2020 : Fixed PHP warning (Issue #9)
   * 11/05/2020 : Improved CSS configurability & regex (Issue #10 and #12)   * 11/05/2020 : Improved CSS configurability & regex (Issue #10 and #12)
-  * 09/07/2020 : Added '/' prefix in URI to allow to force non internal URI (mailto: prefix for instance)+  * 09/07/2020 : Added '!' prefix in URI to allow to force non internal URI (apt: prefix for instance
 +  * 04/08/2020 : Hack to fix issue with Hogfather (see Issue #13 for details) 
 +  * 07/02/2022 : Added Português do Brasil translation (PR by mac-sousa) 
 +  * 26/11/2022 : Fixed some warnings for PHP8.1 and fix filename of br translation 
 +  * 13/12/2022 : Fixed PHP7 with str_contains polyfill 
 +  * 29/05/2023 : Fixed require deprecated warning (thanks to #28) 
 +  * 18/08/2023 : Fixed more deprecation warnings (thanks to nerun with #33)
  
-=====Request=====+===== Request =====
  
 If you have any request, please add an issue to [[https://github.com/rpeyron/plugin-button/issues]]  If you have any request, please add an issue to [[https://github.com/rpeyron/plugin-button/issues]] 
  
-You may also add requests below ; but note that I do not track changes on this page, so you should notify me by mail if you need a quick answer. +Older requests:
- +
-Older requests :+
   * For the plugin to recognize white space so buttons can all be the same size \\ -> //The best way to do that is to add a 'width' in the style section : %%[[{buttons:fbreader.png|width: 25em}vlc|Bouton vlc]]%% ; if you want all your buttons with the same size, you may also want to modify default style : %%[[{conf.styles}default|color:green; width:15em;]]%%//     * For the plugin to recognize white space so buttons can all be the same size \\ -> //The best way to do that is to add a 'width' in the style section : %%[[{buttons:fbreader.png|width: 25em}vlc|Bouton vlc]]%% ; if you want all your buttons with the same size, you may also want to modify default style : %%[[{conf.styles}default|color:green; width:15em;]]%%//  
   * Button Color can be changed with a hex code \\ -> //This can already be done by specifying the color in the style section : %%[[{buttons:fbreader.png|width: 25em; color: #20FE55; background-color: #7780F0;}color|Button with specific colors]]%%//   * Button Color can be changed with a hex code \\ -> //This can already be done by specifying the color in the style section : %%[[{buttons:fbreader.png|width: 25em; color: #20FE55; background-color: #7780F0;}color|Button with specific colors]]%%//
plugin/button.1594319159.txt.gz · Last modified: 2020-07-09 20:25 by rpeyron

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki