cdkit
code kit 代码助手
Last updated 2 years ago by yanhaijing .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install cdkit 
SYNC missed versions from official npm registry.

cdkit npm license

code kit 代码助手,支持查找,删除,替换等功能,批量执行,可连续运行

适合场景

  1. 想要查找代码中的指定内容,需要多次查找,规则复杂时
  2. 想要删除代码中的指定内容,需要持续删除时
  3. 想要将代码中的指定代码替换为其他代码时,需要多次替换时

安装方式

依赖node,请确保本地已经安装node,使用npm进行安装

$ npm install -g cdkit # 全局安装,适合作为命令使用
$ npm install --save cdkit # 本地安装,适合api使用

命令使用

cdkit支持作为命令使用,全局安装后会有一个全局命令

$ npm install -g cdkit # 安装命令

$ cdkit --version # 1.0.0

cdkit支持三个子命令,-c是必选的配置文件,关于配置文件请看下面配置文件的说明

# -c 需要提供配置文件的路径
$ cdkit find -c 'xxxx.js' # 查找
$ cdkit del -c 'xxxx.js' # 删除
$ cdkit replace -c 'xxxx.js' # 替换

API使用

cdkit也支持作为接口调用

$ npm install --save cdkit # 本地安装,适合api使用

在js中可引用cdkit提供的接口,返回值为匹配内容的信息,包括行列

var cdkit = require('cdkit');

// config 是配置信息
cdkit.run('find', config); // 查找
cdkit.run('del', config); // 删除
cdkit.run('replace', config); // 替换

配置文件

cdkit的配置规则比较复杂,所以需要通过一个js文件来配置,配置文件需要返回一个js对象

  • config 配置信息,可以包含多个配置对象
  • root 绝对路径,要进行操作的根目录
  • excludePath 排除的目录
  • rules 进行替换的规则,可以包含多个
  • test 正则,可以对文件进行过滤;也可是函数
  • from 查找,删除,替换的内容,字符串或正则
  • to 替换的内容,支持正则或函数,支持捕获引用
const config = [
    {
        root: '/demo',
        rules: [
            {
                test: /.*\.js/,
                replace: [
                    {
                        from: /aa(a)/,
                        to: 'bbb$1',
                    }
                ]
            }
        ]
    },
    {
        root: '/demo',
        excludePath: [
            'aaa',
            /aaa/,
            function (path) {
                return path.indexOf('aaa') !== -1;
            }
        ],
        rules: [
            {
                test: function (path) {
                    return path.indexOf('.css') > -1;
                },
                replace: [
                    {
                        from: 'aaa',
                        to: function () {
                            return '123'
                        },
                    }
                ]
            }
        ]
    }
];

module.exports = config;

贡献者指南

修改CHANGELOG.md,修改package.json和README.md中的版本号,然后发布版本

$ npm run release

Current Tags

  • 1.3.0                                ...           latest (2 years ago)

5 Versions

  • 1.3.0                                ...           2 years ago
  • 1.2.1                                ...           2 years ago
  • 1.2.0                                ...           2 years ago
  • 1.1.0                                ...           2 years ago
  • 1.0.0                                ...           2 years ago
Maintainers (1)
Downloads
Today 4
This Week 11
This Month 94
Last Day 7
Last Week 33
Last Month 98
Dependencies (1)
Dev Dependencies (0)
None
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |