mirror of
https://github.com/amix/vimrc
synced 2025-07-05 07:25:00 +08:00
rename vim_plugins_src to vim_plugin_candinates_src and used as an plugin candinate dir
This commit is contained in:
@ -0,0 +1,166 @@
|
||||
#! /bin/sh
|
||||
###############################################################################
|
||||
#
|
||||
# File: cscope-indexer
|
||||
# RCS: $Header: /cvsroot/cscope/cscope/contrib/xcscope/cscope-indexer,v 1.2 2001/06/28 04:39:47 darrylo Exp $
|
||||
# Description: Script to index files for cscope
|
||||
#
|
||||
# This script generates a list of files to index
|
||||
# (cscope.out), which is then (optionally) used to
|
||||
# generate a cscope database. You can use this script
|
||||
# to just build a list of files, or it can be used to
|
||||
# build a list and database. This script is not used to
|
||||
# just build a database (skipping the list of files
|
||||
# step), as this can be simply done by just calling
|
||||
# "cscope -b".
|
||||
#
|
||||
# Normally, cscope will do its own indexing, but this
|
||||
# script can be used to force indexing. This is useful
|
||||
# if you need to recurse into subdirectories, or have
|
||||
# many files to index (you can run this script from a
|
||||
# cron job, during the night). It is especially useful
|
||||
# for large projects, which can contstantly have source
|
||||
# files added and deleted; by using this script, the
|
||||
# changing sources files are automatically handled.
|
||||
#
|
||||
# Currently, any paths containing "/CVS/" or "/RCS/" are
|
||||
# stripped out (ignored).
|
||||
#
|
||||
# This script is written to use only basic shell features, as
|
||||
# not all shells have advanced features.
|
||||
#
|
||||
# Author: Darryl Okahata
|
||||
# Created: Thu Apr 27 17:12:14 2000
|
||||
# Modified: Tue Jun 19 09:47:45 2001 (Darryl Okahata) darrylo@soco.agilent.com
|
||||
# Language: Shell-script
|
||||
# Package: N/A
|
||||
# Status: Experimental
|
||||
#
|
||||
# (C) Copyright 2000, Darryl Okahata, all rights reserved.
|
||||
#
|
||||
###############################################################################
|
||||
#
|
||||
# Usage:
|
||||
#
|
||||
# cscope-indexer [ -v ] [-f database_file ] [-i list_file ] [ -l ] [ -r ]
|
||||
#
|
||||
# where:
|
||||
#
|
||||
# -f database_file
|
||||
# Specifies the cscope database file (default: cscope.out).
|
||||
#
|
||||
# -i list_file
|
||||
# Specifies the name of the file into which the list of files
|
||||
# to index is placed (default: cscope.files).
|
||||
#
|
||||
# -l
|
||||
# Suppress the generation/updating of the cscope database
|
||||
# file. Only a list of files is generated.
|
||||
#
|
||||
# -r
|
||||
# Recurse into subdirectories to locate files to index.
|
||||
# Without this option, only the current directory is
|
||||
# searched.
|
||||
#
|
||||
# -v
|
||||
# Be verbose. Output simple progress messages.
|
||||
#
|
||||
#
|
||||
###############################################################################
|
||||
set -e
|
||||
|
||||
# May have to edit this:
|
||||
PATH="/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin:$PATH"
|
||||
export PATH
|
||||
|
||||
LIST_ONLY=
|
||||
DIR='.'
|
||||
LIST_FILE='cscope.files'
|
||||
DATABASE_FILE='cscope.out'
|
||||
RECURSE=
|
||||
VERBOSE=
|
||||
export DIR RECURSE # Need to pass these to subprocesses
|
||||
|
||||
while [ -n "$1" ]
|
||||
do
|
||||
case "$1" in
|
||||
-f)
|
||||
if [ "X$2" = "X" ]
|
||||
then
|
||||
echo "$0: No database file specified" >&2
|
||||
exit 1
|
||||
fi
|
||||
DATABASE_FILE="$2"
|
||||
shift
|
||||
;;
|
||||
-i)
|
||||
if [ "X$2" = "X" ]
|
||||
then
|
||||
echo "$0: No list file specified" >&2
|
||||
exit 1
|
||||
fi
|
||||
LIST_FILE="$2"
|
||||
shift
|
||||
;;
|
||||
-l)
|
||||
LIST_ONLY=1
|
||||
;;
|
||||
-r)
|
||||
RECURSE=1
|
||||
;;
|
||||
-v)
|
||||
VERBOSE=1
|
||||
;;
|
||||
*)
|
||||
DIR="$1"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
cd $DIR
|
||||
|
||||
if [ "X$VERBOSE" != "X" ]
|
||||
then
|
||||
echo "Creating list of files to index ..."
|
||||
fi
|
||||
|
||||
(
|
||||
if [ "X$RECURSE" = "X" ]
|
||||
then
|
||||
# Ugly, inefficient, but it works.
|
||||
for f in *
|
||||
do
|
||||
echo "$DIR/$f"
|
||||
done
|
||||
else
|
||||
find $DIR \( -type f -o -type l \)
|
||||
fi
|
||||
) | \
|
||||
egrep -i '\.([chly](xx|pp)*|cc|hh)$' | \
|
||||
sed -e '/\/CVS\//d' -e '/\/RCS\//d' -e 's/^\.\///' | \
|
||||
sort > $LIST_FILE
|
||||
|
||||
if [ "X$VERBOSE" != "X" ]
|
||||
then
|
||||
echo "Creating list of files to index ... done"
|
||||
fi
|
||||
|
||||
if [ "X$LIST_ONLY" != "X" ]
|
||||
then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "X$VERBOSE" != "X" ]
|
||||
then
|
||||
echo "Indexing files ..."
|
||||
fi
|
||||
|
||||
cscope -b -i $LIST_FILE -f $DATABASE_FILE
|
||||
|
||||
if [ "X$VERBOSE" != "X" ]
|
||||
then
|
||||
echo "Indexing files ... done"
|
||||
fi
|
||||
|
||||
exit 0
|
Reference in New Issue
Block a user