使用作为数据集插件构建的ripgrep搜索代码的Web界面
datasette-ripgrep的Python项目详细描述
数据集
用于使用ripgrep搜索代码的Web界面,它是作为Datasette插件构建的
演示
在https://ripgrep.datasette.io/-/ripgrep上尝试这个插件—在那里您可以在dataset的源代码和属于simonw GitHub user的所有datasette-*
插件中运行正则表达式搜索。在
一些搜索示例:
- with.*AsyncClient-正则表达式搜索
with.*AsyncClient
- .plugin_config, literal=on-非正则表达式搜索
.plugin_config(
- with.*AsyncClient glob=datasette/**-只在
datasette/
顶部文件夹中搜索该模式 - "sqlite-utils[">] glob=setup.py-正则表达式搜索依赖于
sqlite-utils
或{}的包 - test glob=!*.html-搜索字符串
test
,但在HTML文件中排除结果
安装
在与Datasette相同的环境中安装此插件。在
$ datasette install datasette-ripgrep
需要安装rg
可执行文件,以便此工具可以运行它。在
使用
这个插件需要配置:它需要一个path
设置,以便知道在哪里运行搜索。在
创建一个metadata.json
文件,如下所示:
现在使用datasette -m metadata.json
运行dataset。该插件将在/-/ripgrep
处添加一个用于运行搜索的接口。在
插件配置
需要"path"
配置。可选的额外配置选项包括:
time_limit
-浮点数。如果rg
进程的时间超过此限制,则将终止该进程。默认值为1秒,1.0
。在max_lines
-整数。如果rg
进程返回的行数超过此数目,则该进程将终止。默认值是2000
。在
发展
要在本地设置此插件,请首先签出代码。然后创建一个新的虚拟环境:
cd datasette-ripgrep
python3 -mvenv venv
source venv/bin/activate
或者如果您正在使用pipenv
:
pipenv shell
现在安装依赖项和测试:
pip install -e '.[test]'
要运行测试:
pytest
- 项目
标签: