slitaz-base-files rev 274

libtaz.sh: do not fail processing --options-with-dashes or --weird%option$. Add custom tag "x-details" support to slitaz-doc.{css,js}
author Aleksej Bobylev <al.bobylev@gmail.com>
date Tue Jun 16 20:47:25 2015 +0300 (2015-06-16)
parents 205828e57e54
children 3ce00b87e88e
files rootfs/lib/libtaz.sh rootfs/usr/share/doc/slitaz-doc.css rootfs/usr/share/doc/slitaz-doc.js
line diff
     1.1 --- a/rootfs/lib/libtaz.sh	Thu Jun 04 00:23:36 2015 +0300
     1.2 +++ b/rootfs/lib/libtaz.sh	Tue Jun 16 20:47:25 2015 +0300
     1.3 @@ -28,10 +28,12 @@
     1.4  
     1.5  # Parse cmdline options and store values in a variable.
     1.6  for opt in "$@"; do
     1.7 -	case "$opt" in
     1.8 -		--*=*) export "${opt#--}";;
     1.9 -		--*)   export  ${opt#--}='yes';;
    1.10 +	opt_name="${opt%%=*}"; opt_name="$(echo "${opt_name#--}" | tr -c 'a-zA-Z0-9' '_')"
    1.11 +	case "$opt_name" in
    1.12 +		[0-9]*) opt_name="_$opt_name";;
    1.13  	esac
    1.14 +	opt_value="${opt#*=}"; opt_value="${opt_value:-yes}"
    1.15 +	export "$opt_name=$opt_value"
    1.16  done
    1.17  [ "$HTTP_REFERER" ] && output='html'
    1.18  
     2.1 --- a/rootfs/usr/share/doc/slitaz-doc.css	Thu Jun 04 00:23:36 2015 +0300
     2.2 +++ b/rootfs/usr/share/doc/slitaz-doc.css	Tue Jun 16 20:47:25 2015 +0300
     2.3 @@ -7,7 +7,7 @@
     2.4  }
     2.5  
     2.6  h1 { font-size: 150%; font-weight: 400; margin: 0; padding: 0.3em; }
     2.7 -h2 { font-size: 200%; font-weight: 300; margin: 1em 0 0 0; }
     2.8 +h2 { font-size: 200%; font-weight: 300; margin: 1em 0 0 0; text-transform: uppercase; }
     2.9  h3 { font-size: 150%; font-weight: 400; margin: 1em 0 0 0; }
    2.10  p  { margin: 0.5em 0; }
    2.11  
    2.12 @@ -80,7 +80,21 @@
    2.13  header,
    2.14  #header   { background-color: hsl(  0,  0%, 15%); }
    2.15  #footer, footer, #header, header
    2.16 -		  { border-color: hsl(0, 0%, 75%); }
    2.17 +		  { background-color: hsl(  0,  0%, 95%); border-color: hsl(0, 0%, 75%); }
    2.18  code, tt  { color: hsl(  0,  0%, 30%); }
    2.19  pre tt    { color: hsl( 30, 90%, 30%); } /* shell prompt */
    2.20  pre em    { color: hsl(180, 90%, 30%); }
    2.21 +
    2.22 +
    2.23 +x-details {
    2.24 +	display: inline; outline: 1px solid hsl(180, 15%, 80%);
    2.25 +	background-color: hsl(180, 15%, 96%); }
    2.26 +x-details > label { cursor: pointer; color: hsl(180, 45%, 50%); }
    2.27 +x-details > input { display: none; }
    2.28 +x-details > input         + label:before { content: '+'; }
    2.29 +x-details > input:checked + label:before { content: '−'; }
    2.30 +
    2.31 +x-details > label, x-details > span { padding: 0.2rem; }
    2.32 +
    2.33 +x-details > input         + label ~ span { display: none; }
    2.34 +x-details > input:checked + label ~ span { display: inline; }
     3.1 --- a/rootfs/usr/share/doc/slitaz-doc.js	Thu Jun 04 00:23:36 2015 +0300
     3.2 +++ b/rootfs/usr/share/doc/slitaz-doc.js	Tue Jun 16 20:47:25 2015 +0300
     3.3 @@ -5,4 +5,15 @@
     3.4  		var element = preElements[i];
     3.5  		element.innerHTML = element.innerHTML.replace(/^#/gm,'<tt>#</tt>').replace(/^\$/gm,'<tt>$</tt>');
     3.6  	}
     3.7 +
     3.8 +	// <details> html element not supported in the current SliTaz gtk-webkit
     3.9 +	// use custom <x-details> instead
    3.10 +	var detailsElements = document.getElementsByTagName('x-details');
    3.11 +	for(var i = 0; i < detailsElements.length; ++ i)
    3.12 +	{
    3.13 +		var element = detailsElements[i];
    3.14 +		element.innerHTML = '<input type="checkbox" id="details' + i +
    3.15 +			'"><label for="details' + i + '"></label><span>' +
    3.16 +			element.innerHTML + '</span>';
    3.17 +	}
    3.18  }