diff --git a/editor/editors.go b/editor/editors.go index ca361b5..dd51eae 100644 --- a/editor/editors.go +++ b/editor/editors.go @@ -384,7 +384,7 @@ func FindUsagesHandler(w http.ResponseWriter, r *http.Request) { offset := getCursorOffset(code, line, ch) // glog.Infof("offset [%d]", offset) - idestub := util.Go.GetExecutableInGOBIN("ide_stub") + ideStub := util.Go.GetExecutableInGOBIN("ide_stub") argv := []string{"type", "-cursor", filename + ":" + strconv.Itoa(offset), "-use", "."} cmd := exec.Command(ideStub, argv...) cmd.Dir = curDir diff --git a/event/events.go b/event/events.go index eae2d40..74a0878 100644 --- a/event/events.go +++ b/event/events.go @@ -127,10 +127,10 @@ type Handler interface { Handle(event *Event) } -// Type of handler function. -type handleFunc func(event *Event) +// HandleFunc represents a handler function. +type HandleFunc func(event *Event) // Default implementation of event handling. -func (fn handleFunc) Handle(event *Event) { +func (fn HandleFunc) Handle(event *Event) { fn(event) } diff --git a/file/files.go b/file/files.go index d0a7823..a847405 100644 --- a/file/files.go +++ b/file/files.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -// File tree manipulations. +// Package file includes file related manipulations. package file import ( @@ -31,19 +31,19 @@ import ( "github.com/golang/glog" ) -// File node, used to construct the file tree. -type FileNode struct { - Name string `json:"name"` - Path string `json:"path"` - IconSkin string `json:"iconSkin"` // Value should be end with a space - Type string `json:"type"` // "f": file, "d": directory - Creatable bool `json:"creatable"` // whether can create file in this file node - Removable bool `json:"removable"` // whether can remove this file node - Mode string `json:"mode"` - FileNodes []*FileNode `json:"children"` +// Node represents a file node in file tree. +type Node struct { + Name string `json:"name"` + Path string `json:"path"` + IconSkin string `json:"iconSkin"` // Value should be end with a space + Type string `json:"type"` // "f": file, "d": directory + Creatable bool `json:"creatable"` // whether can create file in this file node + Removable bool `json:"removable"` // whether can remove this file node + Mode string `json:"mode"` + Children []*Node `json:"children"` } -// Source code snippet, used to as the result of "Find Usages", "Search". +// Snippet represents a source code snippet, used to as the result of "Find Usages", "Search". type Snippet struct { Path string `json:"path"` // file path Line int `json:"line"` // line number @@ -51,14 +51,14 @@ type Snippet struct { Contents []string `json:"contents"` // lines nearby } -var apiNode *FileNode +var apiNode *Node // initAPINode builds the Go API file node. func initAPINode() { apiPath := util.Go.GetAPIPath() - apiNode = &FileNode{Name: "Go API", Path: apiPath, IconSkin: "ico-ztree-dir-api ", Type: "d", - Creatable: false, Removable: false, FileNodes: []*FileNode{}} + apiNode = &Node{Name: "Go API", Path: apiPath, IconSkin: "ico-ztree-dir-api ", Type: "d", + Creatable: false, Removable: false, Children: []*Node{}} walk(apiPath, apiNode, false, false) } @@ -82,7 +82,7 @@ func GetFiles(w http.ResponseWriter, r *http.Request) { userWorkspace := conf.Wide.GetUserWorkspace(username) workspaces := filepath.SplitList(userWorkspace) - root := FileNode{Name: "root", Path: "", IconSkin: "ico-ztree-dir ", Type: "d", FileNodes: []*FileNode{}} + root := Node{Name: "root", Path: "", IconSkin: "ico-ztree-dir ", Type: "d", Children: []*Node{}} if nil == apiNode { // lazy init initAPINode() @@ -92,18 +92,18 @@ func GetFiles(w http.ResponseWriter, r *http.Request) { for _, workspace := range workspaces { workspacePath := workspace + conf.PathSeparator + "src" - workspaceNode := FileNode{Name: workspace[strings.LastIndex(workspace, conf.PathSeparator)+1:], + workspaceNode := Node{Name: workspace[strings.LastIndex(workspace, conf.PathSeparator)+1:], Path: workspacePath, IconSkin: "ico-ztree-dir-workspace ", Type: "d", - Creatable: true, Removable: false, FileNodes: []*FileNode{}} + Creatable: true, Removable: false, Children: []*Node{}} walk(workspacePath, &workspaceNode, true, true) // add workspace node - root.FileNodes = append(root.FileNodes, &workspaceNode) + root.Children = append(root.Children, &workspaceNode) } // add Go API node - root.FileNodes = append(root.FileNodes, apiNode) + root.Children = append(root.Children, apiNode) data["root"] = root } @@ -113,12 +113,12 @@ func RefreshDirectory(w http.ResponseWriter, r *http.Request) { r.ParseForm() path := r.FormValue("path") - node := FileNode{Name: "root", Path: path, IconSkin: "ico-ztree-dir ", Type: "d", FileNodes: []*FileNode{}} + node := Node{Name: "root", Path: path, IconSkin: "ico-ztree-dir ", Type: "d", Children: []*Node{}} walk(path, &node, true, true) w.Header().Set("Content-Type", "application/json") - data, err := json.Marshal(node.FileNodes) + data, err := json.Marshal(node.Children) if err != nil { glog.Error(err) return @@ -417,7 +417,7 @@ func SearchText(w http.ResponseWriter, r *http.Request) { } // walk traverses the specified path to build a file tree. -func walk(path string, node *FileNode, creatable, removable bool) { +func walk(path string, node *Node, creatable, removable bool) { files := listFiles(path) for _, filename := range files { @@ -425,8 +425,8 @@ func walk(path string, node *FileNode, creatable, removable bool) { fio, _ := os.Lstat(fpath) - child := FileNode{Name: filename, Path: fpath, Removable: removable, FileNodes: []*FileNode{}} - node.FileNodes = append(node.FileNodes, &child) + child := Node{Name: filename, Path: fpath, Removable: removable, Children: []*Node{}} + node.Children = append(node.Children, &child) if nil == fio { glog.Warningf("Path [%s] is nil", fpath) diff --git a/file/importer.go b/file/importer.go index 3db30d9..5a470ac 100644 --- a/file/importer.go +++ b/file/importer.go @@ -10,14 +10,14 @@ import ( "github.com/b3log/wide/util" ) -type FileInfo struct { +type fileInfo struct { Name string `json:"name"` Type string `json:"type"` Error string `json:"error,omitempty"` } -func handleUpload(p *multipart.Part, dir string) (fi *FileInfo) { - fi = &FileInfo{ +func handleUpload(p *multipart.Part, dir string) (fi *fileInfo) { + fi = &fileInfo{ Name: p.FileName(), Type: p.Header.Get("Content-Type"), } @@ -32,8 +32,8 @@ func handleUpload(p *multipart.Part, dir string) (fi *FileInfo) { return } -func handleUploads(r *http.Request, dir string) (fileInfos []*FileInfo) { - fileInfos = make([]*FileInfo, 0) +func handleUploads(r *http.Request, dir string) (fileInfos []*fileInfo) { + fileInfos = make([]*fileInfo, 0) mr, err := r.MultipartReader() part, err := mr.NextPart()