晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
| DIR:/usr/libexec/mc/ext.d/ |
| Current File : //usr/libexec/mc/ext.d/doc.sh |
#!/bin/sh
# $1 - action
# $2 - type of file
action=$1
filetype=$2
[ -n "${MC_XDG_OPEN}" ] || MC_XDG_OPEN="xdg-open"
STAROFFICE_REGEXP='\.(sxw|sdw|stw|sxc|stc|sxi|sti|sxd|std||sxm||sxg)$'
staroffice_console() {
filename=$1;shift
is_view=$1; shift
if [ -n "${is_view}" ]; then
is_view='-dump'
fi
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
cd $tmp
soffice2html.pl "${filename}"
elinks ${is_view} content.html
rm -rf "$tmp"
}
get_ooffice_executable() {
which loffice >/dev/null 2>&1 && \
echo "loffice" || \
echo "ooffice"
}
do_view_action() {
filetype=$1
case "${filetype}" in
ps)
ps2ascii "${MC_EXT_FILENAME}"
;;
pdf)
pdftotext -layout -nopgbrk "${MC_EXT_FILENAME}" -
;;
odt)
if [ ` echo "${MC_EXT_FILENAME}" | grep -c "${STAROFFICE_REGEXP}"` -ne 0 ]; then
staroffice_console "${MC_EXT_FILENAME}" "view"
else
odt2txt "${MC_EXT_FILENAME}"
fi
;;
msdoc)
which wvHtml >/dev/null 2>&1 &&
{
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
wvHtml "${MC_EXT_FILENAME}" --targetdir="$tmp" page.html
elinks -dump "$tmp/page.html"
rm -rf "$tmp"
} || \
antiword -t "${MC_EXT_FILENAME}" || \
catdoc -w "${MC_EXT_FILENAME}" || \
word2x -f text "${MC_EXT_FILENAME}" - || \
strings "${MC_EXT_FILENAME}"
;;
msxls)
which xlHtml >/dev/null 2>&1 && {
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
xlhtml -a "${MC_EXT_FILENAME}" > "$tmp/page.html"
elinks -dump "$tmp/page.html"
rm -rf "$tmp"
} || \
xls2csv "${MC_EXT_FILENAME}" || \
strings "${MC_EXT_FILENAME}"
;;
dvi)
which dvi2tty >/dev/null 2>&1 && \
dvi2tty "${MC_EXT_FILENAME}" || \
catdvi "${MC_EXT_FILENAME}"
;;
djvu)
djvused -e print-pure-txt "${MC_EXT_FILENAME}"
;;
epub)
einfo -v "${MC_EXT_FILENAME}"
;;
*)
;;
esac
}
do_open_action() {
filetype=$1
case "${filetype}" in
ps)
if [ -n "$DISPLAY" ]; then
(gv "${MC_EXT_FILENAME}" &)
else
ps2ascii "${MC_EXT_FILENAME}" | ${PAGER:-more}
fi
;;
pdf)
if [ ! -n "$DISPLAY" ]; then
pdftotext -layout -nopgbrk "${MC_EXT_FILENAME}" - | ${PAGER:-more}
elif see > /dev/null 2>&1; then
(see "${MC_EXT_FILENAME}" &)
else
(xpdf "${MC_EXT_FILENAME}" &)
fi
#(acroread "${MC_EXT_FILENAME}" &)
#(ghostview "${MC_EXT_FILENAME}" &)
;;
ooffice)
if [ -n "$DISPLAY" ]; then
OOFFICE=`get_ooffice_executable`
(${OOFFICE} "${MC_EXT_FILENAME}" &)
else
if [ `echo "${MC_EXT_FILENAME}" | grep -c "${STAROFFICE_REGEXP}"` -ne 0 ]; then
staroffice_console "${MC_EXT_FILENAME}"
else
odt2txt "${MC_EXT_FILENAME}" | ${PAGER:-more}
fi
fi
;;
abw)
(abiword "${MC_EXT_FILENAME}" &)
;;
gnumeric)
(gnumeric "${MC_EXT_FILENAME}" &)
;;
msdoc)
if [ -n "$DISPLAY" ]; then
(abiword "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
else
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
wvHtml "${MC_EXT_FILENAME}" --targetdir="$tmp" page.html -1
elinks "$tmp/page.html"
rm -rf "$tmp"
fi
;;
msxls)
if [ -n "$DISPLAY" ]; then
(gnumeric "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
else
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
xlhtml -a "${MC_EXT_FILENAME}" > "$tmp/page.html"
elinks "$tmp/page.html"
rm -rf "$tmp"
fi
;;
msppt)
if [ -n "$DISPLAY" ]; then
OOFFICE=`get_ooffice_executable`
(${OOFFICE} "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
else
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
ppthtml "${MC_EXT_FILENAME}" > "$tmp/page.html"
elinks "$tmp/page.html"
rm -rf "$tmp"
fi
;;
framemaker)
fmclient -f "${MC_EXT_FILENAME}"
;;
dvi)
if [ -n "$DISPLAY" ]; then
(xdvi "${MC_EXT_FILENAME}" &)
else
dvisvga "${MC_EXT_FILENAME}" || \
dvi2tty "${MC_EXT_FILENAME}" | ${PAGER:-more}
fi
;;
djvu)
djview "${MC_EXT_FILENAME}" &
;;
comic)
cbrpager "${MC_EXT_FILENAME}" &
;;
epub)
lucidor "${MC_EXT_FILENAME}" >/dev/null &
;;
*)
;;
esac
}
case "${action}" in
view)
do_view_action "${filetype}"
;;
open)
("${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" >/dev/null 2>&1) || \
do_open_action "${filetype}"
;;
*)
;;
esac
|