This commit is contained in:
parent
f5b0b105b7
commit
fb03f8b1d9
|
@ -19,6 +19,14 @@ import (
|
||||||
|
|
||||||
var editorWS = map[string]*websocket.Conn{}
|
var editorWS = map[string]*websocket.Conn{}
|
||||||
|
|
||||||
|
// 代码片段. 这个结构可用于“查找使用”、“文件搜索”的返回值.
|
||||||
|
type snippet struct {
|
||||||
|
Path string `json:"path"` // 文件路径
|
||||||
|
Line int `json:"lline"` // 行号
|
||||||
|
Ch int `json:"ch"` // 列号
|
||||||
|
Contents []string `json:"contents"` // 代码行
|
||||||
|
}
|
||||||
|
|
||||||
func WSHandler(w http.ResponseWriter, r *http.Request) {
|
func WSHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
session, _ := user.Session.Get(r, "wide-session")
|
session, _ := user.Session.Get(r, "wide-session")
|
||||||
sid := session.Values["id"].(string)
|
sid := session.Values["id"].(string)
|
||||||
|
@ -291,21 +299,17 @@ func FindUsagesHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
founds := strings.Split(result, "\n")
|
founds := strings.Split(result, "\n")
|
||||||
usages := []interface{}{}
|
usages := []snippet{}
|
||||||
for _, found := range founds {
|
for _, found := range founds {
|
||||||
found = strings.TrimSpace(found)
|
found = strings.TrimSpace(found)
|
||||||
|
|
||||||
part := found[:strings.LastIndex(found, ":")]
|
part := found[:strings.LastIndex(found, ":")]
|
||||||
cursorSep := strings.LastIndex(part, ":")
|
cursorSep := strings.LastIndex(part, ":")
|
||||||
path := found[:cursorSep]
|
path := found[:cursorSep]
|
||||||
cursorLine := found[cursorSep+1 : strings.LastIndex(found, ":")]
|
cursorLine, _ := strconv.Atoi(found[cursorSep+1 : strings.LastIndex(found, ":")])
|
||||||
cursorCh := found[strings.LastIndex(found, ":")+1:]
|
cursorCh, _ := strconv.Atoi(found[strings.LastIndex(found, ":")+1:])
|
||||||
|
|
||||||
usage := map[string]string{}
|
|
||||||
usage["path"] = path
|
|
||||||
usage["cursorLine"] = cursorLine
|
|
||||||
usage["cursorCh"] = cursorCh
|
|
||||||
|
|
||||||
|
usage := snippet{Path: path, Line: cursorLine, Ch: cursorCh /* TODO: 获取附近的代码片段 */}
|
||||||
usages = append(usages, usage)
|
usages = append(usages, usage)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue