kunlun

package module
v0.0.0-...-f8ab5ae Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 30, 2021 License: Apache-2.0 Imports: 0 Imported by: 0

README

昆仑代码搜索引擎

安装/更新

go get -u -v github.com/huichen/kunlun

使用

先看一个例子(来自cmd/examples/simplest_example.go

package main

import (
	"flag"

	"github.com/huichen/kunlun/pkg/engine"
	"github.com/huichen/kunlun/pkg/types"
)

var (
	dir   = flag.String("d", "/usr/local/include", "索引这个文件夹下的所有文件")
	query = flag.String("q", "gcc", "搜索表达式")
)

func main() {
	flag.Parse()

	// 创建引擎
	kgn, _ := engine.NewKunlunEngine(nil) // 使用默认选项

	// 构建索引
	kgn.IndexDir(*dir)
	kgn.Finish() // 开始搜索前必须先调用该函数

	// 检索
	request := types.SearchRequest{
		Query:             *query,
		ReturnLineContent: true,
		NumContextLines:   2}
	resp, _ := kgn.Search(request)

	// 打印输出
	kgn.PrettyPrintSearchResponse(resp, true, true)
}

引擎提供了一系列文件遍历选项索引选项搜索选项,可以在引擎启动时通过参数传入

如果你想阅读昆仑的代码,可以先看看这篇文档

其它

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
cmd
kls
kws
internal
api
kls
设置了按键绑定功能
设置了按键绑定功能
resource/engine
仅供 KWS 使用的资源句柄
仅供 KWS 使用的资源句柄
pkg
log
定义了日志打印接口 可以通过 SetLogger 传入外部的日志打印函数
定义了日志打印接口 可以通过 SetLogger 传入外部的日志打印函数

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL