summaryrefslogtreecommitdiffstats
path: root/src/installml.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/installml.sh170
1 files changed, 170 insertions, 0 deletions
diff --git a/src/installml.sh b/src/installml.sh
new file mode 100644
index 0000000..8649c6f
--- /dev/null
+++ b/src/installml.sh
@@ -0,0 +1,170 @@
+#! /bin/sh
+# installml.sh --- install or uninstall manpage links for Vim
+#
+# arguments:
+# 1 what: "install" or "uninstall"
+# 2 also do GUI pages: "yes" or ""
+# 3 target directory e.g., "/usr/local/man/it/man1"
+# 4 vim exe name e.g., "vim"
+# 5 vimdiff exe name e.g., "vimdiff"
+# 6 evim exe name e.g., "evim"
+# 7 ex exe name e.g., "ex"
+# 8 view exe name e.g., "view"
+# 9 rvim exe name e.g., "rvim"
+# 10 rview exe name e.g., "rview"
+# 11 gvim exe name e.g., "gvim"
+# 12 gview exe name e.g., "gview"
+# 13 rgvim exe name e.g., "rgvim"
+# 14 rgview exe name e.g., "rgview"
+# 15 gvimdiff exe name e.g., "gvimdiff"
+# 16 eview exe name e.g., "eview"
+
+errstatus=0
+
+what=$1
+gui=$2
+destdir=$3
+vimname=$4
+vimdiffname=$5
+evimname=$6
+exname=$7
+viewname=$8
+rvimname=$9
+# old shells don't understand ${10}
+shift
+rviewname=$9
+shift
+gvimname=$9
+shift
+gviewname=$9
+shift
+rgvimname=$9
+shift
+rgviewname=$9
+shift
+gvimdiffname=$9
+shift
+eviewname=$9
+
+if test $what = "install" -a \( -f $destdir/$vimname.1 -o -f $destdir/$vimdiffname.1 -o -f $destdir/$eviewname.1 \); then
+ if test ! -d $destdir; then
+ echo creating $destdir
+ /bin/sh install-sh -c -d $destdir
+ fi
+
+ # ex
+ if test ! -f $destdir/$exname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$exname.1
+ cd $destdir; ln -s $vimname.1 $exname.1
+ fi
+
+ # view
+ if test ! -f $destdir/$viewname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$viewname.1
+ cd $destdir; ln -s $vimname.1 $viewname.1
+ fi
+
+ # rvim
+ if test ! -f $destdir/$rvimname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$rvimname.1
+ cd $destdir; ln -s $vimname.1 $rvimname.1
+ fi
+
+ # rview
+ if test ! -f $destdir/$rviewname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$rviewname.1
+ cd $destdir; ln -s $vimname.1 $rviewname.1
+ fi
+
+ # GUI targets are optional
+ if test "$gui" = "yes"; then
+ # gvim
+ if test ! -f $destdir/$gvimname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$gvimname.1
+ cd $destdir; ln -s $vimname.1 $gvimname.1
+ fi
+
+ # gview
+ if test ! -f $destdir/$gviewname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$gviewname.1
+ cd $destdir; ln -s $vimname.1 $gviewname.1
+ fi
+
+ # rgvim
+ if test ! -f $destdir/$rgvimname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$rgvimname.1
+ cd $destdir; ln -s $vimname.1 $rgvimname.1
+ fi
+
+ # rgview
+ if test ! -f $destdir/$rgviewname.1 -a -f $destdir/$vimname.1; then
+ echo creating link $destdir/$rgviewname.1
+ cd $destdir; ln -s $vimname.1 $rgviewname.1
+ fi
+
+ # gvimdiff
+ if test ! -f $destdir/$gvimdiffname.1 -a -f $destdir/$vimdiffname.1; then
+ echo creating link $destdir/$gvimdiffname.1
+ cd $destdir; ln -s $vimdiffname.1 $gvimdiffname.1
+ fi
+
+ # eview
+ if test ! -f $destdir/$eviewname.1 -a -f $destdir/$evimname.1; then
+ echo creating link $destdir/$eviewname.1
+ cd $destdir; ln -s $evimname.1 $eviewname.1
+ fi
+ fi
+fi
+
+if test $what = "uninstall"; then
+ echo Checking for Vim manual page links in $destdir...
+
+ if test -L $destdir/$exname.1; then
+ echo deleting $destdir/$exname.1
+ rm -f $destdir/$exname.1
+ fi
+ if test -L $destdir/$viewname.1; then
+ echo deleting $destdir/$viewname.1
+ rm -f $destdir/$viewname.1
+ fi
+ if test -L $destdir/$rvimname.1; then
+ echo deleting $destdir/$rvimname.1
+ rm -f $destdir/$rvimname.1
+ fi
+ if test -L $destdir/$rviewname.1; then
+ echo deleting $destdir/$rviewname.1
+ rm -f $destdir/$rviewname.1
+ fi
+
+ # GUI targets are optional
+ if test "$gui" = "yes"; then
+ if test -L $destdir/$gvimname.1; then
+ echo deleting $destdir/$gvimname.1
+ rm -f $destdir/$gvimname.1
+ fi
+ if test -L $destdir/$gviewname.1; then
+ echo deleting $destdir/$gviewname.1
+ rm -f $destdir/$gviewname.1
+ fi
+ if test -L $destdir/$rgvimname.1; then
+ echo deleting $destdir/$rgvimname.1
+ rm -f $destdir/$rgvimname.1
+ fi
+ if test -L $destdir/$rgviewname.1; then
+ echo deleting $destdir/$rgviewname.1
+ rm -f $destdir/$rgviewname.1
+ fi
+ if test -L $destdir/$gvimdiffname.1; then
+ echo deleting $destdir/$gvimdiffname.1
+ rm -f $destdir/$gvimdiffname.1
+ fi
+ if test -L $destdir/$eviewname.1; then
+ echo deleting $destdir/$eviewname.1
+ rm -f $destdir/$eviewname.1
+ fi
+ fi
+fi
+
+exit $errstatus
+
+# vim: set sw=3 :