mirror of
https://github.com/openharmony/third_party_mksh.git
synced 2026-07-01 12:24:52 -04:00
6b8679735d
Signed-off-by: xuxinyu <xuxinyu6@huawei.com> Change-Id: I5c4757b10786cd1d3b3d79f7c23c5f668daefa2d
137 lines
3.7 KiB
Bash
137 lines
3.7 KiB
Bash
#!/bin/sh
|
||
rcsid='$MirOS: src/bin/mksh/FAQ2HTML.sh,v 1.2 2020/10/31 04:17:36 tg Exp $'
|
||
#-
|
||
# Copyright © 2020
|
||
# mirabilos <m@mirbsd.org>
|
||
#
|
||
# Provided that these terms and disclaimer and all copyright notices
|
||
# are retained or reproduced in an accompanying document, permission
|
||
# is granted to deal in this work without restriction, including un‐
|
||
# limited rights to use, publicly perform, distribute, sell, modify,
|
||
# merge, give away, or sublicence.
|
||
#
|
||
# This work is provided “AS IS” and WITHOUT WARRANTY of any kind, to
|
||
# the utmost extent permitted by applicable law, neither express nor
|
||
# implied; without malicious intent or gross negligence. In no event
|
||
# may a licensor, author or contributor be held liable for indirect,
|
||
# direct, other damage, loss, or other issues arising in any way out
|
||
# of dealing in the work, even if advised of the possibility of such
|
||
# damage or existence of a defect, except proven that it results out
|
||
# of said person’s immediate fault when using the work as intended.
|
||
#-
|
||
|
||
set -e
|
||
LC_ALL=C; LANGUAGE=C
|
||
export LC_ALL; unset LANGUAGE
|
||
nl='
|
||
'
|
||
srcdir=$(dirname "$0")
|
||
|
||
p=--posix
|
||
sed $p -e q </dev/null >/dev/null 2>&1 || p=
|
||
|
||
v=$1
|
||
if test -z "$v"; then
|
||
v=$(sed $p -n '/^#define MKSH_VERSION "\(.*\)"$/s//\1/p' "$srcdir"/sh.h)
|
||
fi
|
||
src_id=$(sed $p -n '/^RCSID: /s///p' "$srcdir"/mksh.faq)
|
||
# sanity check
|
||
case $src_id in
|
||
*"$nl"*)
|
||
echo >&2 "E: more than one RCSID in mksh.faq?"
|
||
exit 1 ;;
|
||
esac
|
||
|
||
sed $p \
|
||
-e '/^RCSID: \$/s/^.*$/----/' \
|
||
-e 's!@@RELPATH@@!http://www.mirbsd.org/!g' \
|
||
-e 's^ <span style="display:none;"> </span>' \
|
||
"$srcdir"/mksh.faq | tr '\n' '' | sed $p \
|
||
-e 'sg' \
|
||
-e 's----g' \
|
||
-e 's\([^]*\)\1g' \
|
||
-e 's\([^]*\)\1g' \
|
||
-e 's\([^]*\)*ToC: \([^]*\)Title: \([^]*\)\([^]*\)\{0,1\}</div><h2 id="\2"><a href="#\2">\3</a></h2><div>g' \
|
||
-e 's[^]*</div><div>g' \
|
||
-e 's^</div>*' \
|
||
-e 's$</div>' \
|
||
-e 's<><error><>g' \
|
||
-e 'sg' | tr '' '\n' >FAQ.tmp
|
||
|
||
exec >FAQ.htm~
|
||
cat <<EOF
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
||
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head>
|
||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||
<title>mksh $v FAQ (local copy)</title>
|
||
<meta name="source" content="$src_id" />
|
||
<meta name="generator" content="$rcsid" />
|
||
<style type="text/css"><!--/*--><![CDATA[/*><!--*/
|
||
.boxhead {
|
||
margin-bottom:0px;
|
||
}
|
||
|
||
.boxtext {
|
||
border:4px ridge green;
|
||
margin:0px 24px 0px 18px;
|
||
padding:2px 3px 2px 3px;
|
||
}
|
||
|
||
.boxfoot {
|
||
margin-top:0px;
|
||
}
|
||
|
||
h2:before {
|
||
content:"🔗 ";
|
||
}
|
||
|
||
a[href^="ftp://"]:after,
|
||
a[href^="http://"]:after,
|
||
a[href^="https://"]:after,
|
||
a[href^="irc://"]:after,
|
||
a[href^="mailto:"]:after,
|
||
a[href^="news:"]:after,
|
||
a[href^="nntp://"]:after {
|
||
content:"⏍";
|
||
color:#FF0000;
|
||
vertical-align:super;
|
||
margin:0 0 0 1px;
|
||
}
|
||
|
||
pre {
|
||
/* ↑ → ↓ ← */
|
||
margin:0px 9px 0px 15px;
|
||
}
|
||
|
||
tt {
|
||
white-space:nowrap;
|
||
}
|
||
/*]]>*/--></style>
|
||
</head><body>
|
||
<p>Note: Links marked like <a href="irc://chat.freenode.net/!/bin/mksh">this
|
||
one to the mksh IRC channel</a> connect to external resources.</p>
|
||
<p>⚠ <b>Notice:</b> the website will have <a
|
||
href="http://www.mirbsd.org/mksh-faq.htm">the latest version of the
|
||
mksh FAQ</a> online.</p>
|
||
<h1>Table of Contents</h1>
|
||
<ul>
|
||
EOF
|
||
sed $p -n \
|
||
'/^<h2 id="\([^"]*"\)><a[^>]*\(>.*<\/a><\/\)h2>$/s//<li><a href="#\1\2li>/p' \
|
||
<FAQ.tmp
|
||
cat <<EOF
|
||
</ul>
|
||
|
||
<h1>Frequently Asked Questions</h1>
|
||
EOF
|
||
cat FAQ.tmp - <<EOF
|
||
<h1>Imprint</h1>
|
||
<p>This offline HTML page for mksh $v was automatically generated
|
||
from the sources.</p>
|
||
</body></html>
|
||
EOF
|
||
exec >/dev/null
|
||
rm FAQ.tmp
|
||
mv FAQ.htm~ FAQ.htm
|