Editing Template:Boxcode
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
<div style="width:{{{width| | <div style="width:{{{width|100%}}}; float:{{{float|none}}};"> | ||
<div style=" | <div style="background:#e5e5ff; border:3px double #8080b0; margin:5px; padding:5px; box-shadow: 4px 4px 2px 1px #e0e0e0; overflow:auto;"> | ||
<div class="nowrap" style="display:inline-block; margin-bottom:5px;"> | |||
<div style="float:left; background:#ffffff; line-height:25px; border:1px solid #8080b0; font-family:Arial; font-weight:bold; font-style:italic; color:#606090; padding-left:5px; padding-right:5px;">{{{title|Code Sample}}}</div><span style="text-align:right; margin-left:5px;">[[image:Edit-copy_purple.svg.png|link=|x25px]]</span> | |||
</div> | |||
{{clear}} | |||
}} | <div style="border:1px dashed #8080b0; height:{{{height|auto}}}; overflow:auto;"> | ||
<div style=" | <div style="margin-top:-14px; margin-bottom:-14px;">{{{code|code}}}</div> | ||
</div> | |||
</div> | </div> | ||
</div><noinclude> | </div><noinclude> | ||
<br><br>{{clear}} | |||
== Usage == | == Usage == | ||
<nowiki>{{Boxcode|code=Code Sample}}</nowiki> | |||
<nowiki>{{ | |||
<br>...or...<br> | <br>...or...<br> | ||
<nowiki>{{ | <nowiki>{{Boxcode|title=Custom Title|code=Code Sample}}</nowiki> | ||
<br>...or...<br> | <br>...or...<br> | ||
<nowiki>{{ | <nowiki>{{Boxcode|width=50%|title=Custom Title|code=Code Sample}}</nowiki> | ||
<br>...or...<br> | <br>...or...<br> | ||
<nowiki>{{ | <nowiki>{{Boxcode|width=50%|float=right|title=Custom Title|code=Code Sample}}</nowiki> | ||
<br>...or...<br> | <br>...or...<br> | ||
<nowiki>{{ | <nowiki>{{Boxcode|width=500px|height=500px|float=center|title=Custom Title|code=Code Sample}}</nowiki> | ||
== Examples == | == Examples == | ||
{{Boxcode|code=<syntaxhighlight lang="xml"> | {{Boxcode|title=Custom Title|code=<syntaxhighlight lang="xml"> | ||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
very long lines adds a horizontal scroll bar at bottom of the template to preserve the width of the wiki pages | very long lines adds a horizontal scroll bar at bottom of the template to preserve the width of the wiki pages ...............................................................................................................................................................................................................................................................................................o/sup | ||
................................. ........................... ............................................ ....................................... ....................................................... ..................................... ....................... .............................o/sup | |||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|width=50%|float=left|title=width=50% float=left|code=<syntaxhighlight lang="xml"> | |||
<code> | |||
lines | |||
<!--here--> | |||
very long lines adds a horizontal scroll bar at bottom of the template to preserve the width of the wiki pages | |||
</syntaxhighlight>}} | |||
{{Boxcode|width=50%|float=right|title=width=50% float=right|code=<pre style="white-space:pre;"> | |||
<code> | |||
lines | |||
<!--here--> | |||
very long lines adds a horizontal scroll bar at bottom of the template to preserve the width of the wiki pages | |||
</pre>}} | |||
{{clear}} | {{clear}} | ||
{{Boxcode|float=left|title=float=left|code=<syntaxhighlight lang="xml"> | {{Boxcode|width=700px|float=left|title=width=700px float=left|code=<syntaxhighlight lang="xml"> | ||
<code> | <code> | ||
lines | lines | ||
Line 40: | Line 52: | ||
very long lines adds a horizontal scroll bar | very long lines adds a horizontal scroll bar | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|float=right|title=float=right|code=<syntaxhighlight lang="xml"> | {{Boxcode|width=auto|float=right|title=width=auto float=right|code=<syntaxhighlight lang="xml"> | ||
<code> | <code> | ||
lines | lines | ||
Line 46: | Line 58: | ||
very long lines adds a horizontal scroll bar | very long lines adds a horizontal scroll bar | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|width=auto|float=right|title=width=auto float=right|code=<syntaxhighlight lang="xml"> | |||
{{Boxcode| | |||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
very long lines adds a horizontal scroll bar | very long lines adds a horizontal scroll bar | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|float=right|width= | {{Boxcode|width=350px|height=200px|float=right|title=width=350px height=200px float=right|code=<syntaxhighlight lang="xml"> | ||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
very long lines adds a horizontal scroll bar | very long lines adds a horizontal scroll bar | ||
< | <code> | ||
lines | |||
<!--here--> | |||
very long lines adds a horizontal scroll bar | |||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
very long lines adds a horizontal scroll bar | |||
############################################### | |||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|width=auto|height=auto|float=left|title=width=auto height=auto float=left|code=<syntaxhighlight lang="xml"> | |||
{{Boxcode|float=left|width= | |||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{Boxcode|width=150px|height=auto|float=left|title=width=150px height=auto float=left|code=<syntaxhighlight lang="xml"> | |||
{{Boxcode|float= | |||
<code> | <code> | ||
lines | lines | ||
<!--here--> | <!--here--> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
{{clear}} | {{clear}} | ||
*Notes: | |||
The line wrapping inside <nowiki><syntaxhighlight></nowiki> and <nowiki><pre></nowiki> applyed when the text is longer than the container is an annoyance because it wraps the lines at the positions of the space characters (thats very bad for displaying code), by default is a lot better to display the lines entirelly and let them float "hidden" at the right of the box (thats when the horizontal scrollbar appears at bottom of the box)<br> | |||
It seems it can be achieved by using '''white-space:pre''' as explained in [https://www.w3schools.com/cssref/pr_text_white-space.asp 1] and [https://css-tricks.com/almanac/properties/w/whitespace/ 2] but doesnt seems to work when is included inside the <nowiki>{{boxcode}}</nowiki> template (so i cant predefine it to do it automatically), another aditional problem is that it works only for <nowiki><pre></nowiki> but doesnt seems to work for <nowiki><syntaxhighlight></nowiki>. If someone knows how to implement this feature in the template (maybe with a mediawiki class ?) please do it, in the meantime the only 2 solutions i see are: | |||
*Do the '''white-space:pre''' when calling the <nowiki>{{boxcode}}</nowiki> template | |||
*Add a long line of consecutive characters (of the same lenght of the longest code line) at the last line of the code, to force the scroll bar to appear (this is a dirty hack but is easy and solves the problem) | |||
< | |||
{{boxcode | |||
< | |||
< | |||
[[Category:templates]]</noinclude> | [[Category:templates]]</noinclude> |