A tool helps you manage cscope/ctags tags
Project description
cscope-manager
A tool helps you manage cscope/ctags tags
Installation
pip install cscope-manager
Custimization
You can create a config file in ~/.csmgr.config to customize your preference
# Supported configurations and format
project_list: .csmgr.project
suffixes = .cpp
out_list = map.files
meta_files = cscope.in.out cscope.out cscope.po.out tags
exclude_dirs = dir
# Note: Only supprot $out_list. Not support other variables interpolation
exec_cmds = cscope -bqk -i $out_list && ctags -L $out_list
display_max = 20
delim = ........................................
delim_end = ****************************************
Features
- Manage source code by a project list (.csmgr.project)
- Generate file list (i.e. cscope.files) by the project list.
- Remove duplicate file pathes
- Remove symbolic link
- Remove not existed files
- Run commands for tag generation
Example
- Add files to project list
csmgr a.c b.c
- Add folders to project list
csmgr dir1/ dir2/
- Update file list
# add current directory to project list
csmgr .
# files layout have been changed under ./
mv dir1 dir2
# update file list
csmgr -u
- Edit project list
# Method I
csmgr [path]
# Method II
vim .csmgr.project
Screenshot
Usage
Use config file: /Users/rickchang/.csmgr.config
usage: csmgr [-h] [-u] [-s SUFFIXES [SUFFIXES ...]] [-f] [-c CONFIG_FILE]
[-o OUT_LIST] [-m META_FILES [META_FILES ...]]
[-e EXCLUDE_DIRS [EXCLUDE_DIRS ...]] [-d] [--dry-run]
[--max-display MAX_DISPLAY] [-x EXEC_CMDS [EXEC_CMDS ...]]
[--verbose] [-v]
[path [path ...]]
positional arguments:
path add path to project list (.csmgr.project) and generate
tag if project list is changed ex. dir/, file.c
optional arguments:
-h, --help show this help message and exit
-u, --update update list file according to project list and
generate tag
-s SUFFIXES [SUFFIXES ...], --suffixes SUFFIXES [SUFFIXES ...]
assign suffixes filter (default: .c .h .js .cpp .py
.scss)
-f, --force delete meta data and generate tag
-c CONFIG_FILE, --config-file CONFIG_FILE
assign config file (default: ~/.csmgr.config)
-o OUT_LIST, --out-list OUT_LIST
assign the name of output list file (default:
cscope.files)
-m META_FILES [META_FILES ...], --meta-files META_FILES [META_FILES ...]
assign meta data files (default: cscope.in.out
cscope.out cscope.po.out tags)
-e EXCLUDE_DIRS [EXCLUDE_DIRS ...], --exclude-dirs EXCLUDE_DIRS [EXCLUDE_DIRS ...]
assign exclude dirs (default: .git node_modules)
-d, --delete-meta delete all meta data
--dry-run show what would be done
--max-display MAX_DISPLAY
assign how many paths will be shown in the log
-x EXEC_CMDS [EXEC_CMDS ...], --exec-cmds EXEC_CMDS [EXEC_CMDS ...]
assign cmd to generate tag. $out_list will be replaced
by list file name. Cmds will be triggered only when a
new file is added in $out_list. (default: cscope -bqk
-i $out_list && ctags -L $out_list)
--verbose show more logs
-v, --version show program's version number and exit
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cscope-manager-1.1.1.tar.gz
(6.4 kB
view hashes)
Built Distribution
Close
Hashes for cscope_manager-1.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 772472b619cb83ade3366a4bf770974ea59c37346c18ea91f58e6344991f7f12 |
|
MD5 | 35af164a5c574e3dca6bcf632b06329d |
|
BLAKE2b-256 | 372f4ccffc26f5f22499c2cf862d1b0220f071678fb066f6bc8d08dceac64a6a |