Skip to content

Commit

Permalink
feat: find 模糊搜索 搜索词加高亮
Browse files Browse the repository at this point in the history
  • Loading branch information
罗学 committed Jun 17, 2021
1 parent 5b7a16c commit 8d087a0
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 8 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [1.0.9](https://github.com/luoxue-victor/learn_webpack/compare/v1.5.4...v1.0.9) (2021-06-16)
## [1.0.9](https://github.com/luoxue-victor/learn_webpack/compare/v1.5.4...v1.0.9) (2021-06-17)


### Features
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ pk qrcode [content] # 在终端输出二维码
- [node]: 基于 koa 构建的 node 框架
- [lerna]: 一键创建 lerna 模板
- [mocks]: mocks 模板,首次执行 pk mock 会自动添加在项目中
- [vscode]: 创建 vscode 插件模版

[脚手架]: ./packages/cli/README.md
[webpack]: ./packages/webpack-box/README.md
Expand All @@ -68,6 +69,7 @@ pk qrcode [content] # 在终端输出二维码
[node]: ./packages/node-box/README.md
[lerna]: ./packages/cli/template/lerna/
[mocks]: ./packages/cli/template/mocks/
[vscode]: ./packages/cli/template/vscode/
### 工具

- [node 工具](./packages/shared-utils/README.md)
Expand Down
35 changes: 29 additions & 6 deletions packages/cli/commands/find.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,10 @@ exports.registerCommand = (params) => {
+ ` -name '**node_modules**' -prune -o `
+ ` -name '**.git**' -prune -o `
+ ` -name '**output**' -prune -o `
+ ` -iname ${findPath} -a -print `
+ ` -iname *${findPath.split('').join('*')}* -a -print `
)

if (log) {
log = log.toString()
}
log = log && log.toString()

const paths = log.split('\n').filter(_ => _)

Expand All @@ -28,7 +26,7 @@ exports.registerCommand = (params) => {
const content = fs.readFileSync(p,{
encoding: 'utf-8'
})
const reg = new RegExp(`[^\n]*${str}[^\n]*\n`, 'g')
const reg = new RegExp(`[^\n]*${str}[^\n]*\n`, 'ig')
const match = content.match(reg)

if (match && match.length) {
Expand All @@ -39,7 +37,32 @@ exports.registerCommand = (params) => {
}
})
} else {
console.log(paths)
paths.forEach(p => {
const ps = p.split('/')
let restName = ps.pop()
let nameStr = []

new RegExp()

findPath.split('').forEach(i => {

if ('.*'.includes(i)) {
i = `\\${i}`
}

restName.replace(new RegExp(i, 'i'), ($1) => {
const index = restName.indexOf($1)
const subName = restName.substring(0, index + 1)

nameStr.push(subName.replace(new RegExp(i, 'i'), ($1) => {
return chalk.blueBright($1)
}))
restName = restName.substring(index + 1, restName.length)
})
})

console.log([...ps, nameStr.join('')].join('/') + restName)
})
}
})
}
14 changes: 13 additions & 1 deletion packages/cli/template/vscode/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,16 @@

按 f5 打开调试

1. cmd + shift + P 输入 Hello World 输出 `Hello World from extension!` 说明插件加载成功
1. cmd + shift + P 输入 Hello World 输出 `Hello World from extension!` 说明插件加载成功

### 目录结构

```bash
├── index.js # 入口
├── package.json
├── .vscode # vscode 配置
| ├── extensions.json
| └── launch.json
├── snippets/ # snippet 在这里写
└── extensions/ # extensions 在这里写
```

0 comments on commit 8d087a0

Please sign in to comment.