文档很棒,但有时很难找到特定的关键字。例如,搜索Next()
会在此页http://golang.org/search?q=next%28%29中生成一个不太有用的内容。有没有更好的方法来搜索文档?
答案 0 :(得分:4)
搜索Next
会获得更好的结果集IMO。
jnml@fsc-r630:~/go/src/pkg$ egrep -nr '^func \([^)]+\) Next\(' *
archive/tar/reader.go:42:func (tr *Reader) Next() (*Header, error) {
bytes/buffer.go:273:func (b *Buffer) Next(n int) []byte {
container/ring/ring.go:26:func (r *Ring) Next() *Ring {
container/list/list.go:31:func (e *Element) Next() *Element {
database/sql/fakedb_test.go:658:func (rc *rowsCursor) Next(dest []driver.Value) error {
database/sql/sql.go:1300:func (rs *Rows) Next() bool {
debug/dwarf/entry.go:310:func (r *Reader) Next() (*Entry, error) {
net/smtp/auth.go:75:func (a *plainAuth) Next(fromServer []byte, more bool) ([]byte, error) {
net/smtp/auth.go:99:func (a *cramMD5Auth) Next(fromServer []byte, more bool) ([]byte, error) {
net/textproto/pipeline.go:36:func (p *Pipeline) Next() uint {
reflect/all_test.go:3390:func (x *exhaustive) Next() bool {
text/scanner/scanner.go:302:func (s *Scanner) Next() rune {
jnml@fsc-r630:~/go/src/pkg$
答案 1 :(得分:2)
这非常有效:
func ([(][^)]+[)] )?[N]ext
如果您想要不区分大小写的搜索,请使用
func ([(][^)]+[)] )?next
答案 2 :(得分:2)
Rob Pike为此写了一个完美的工具。使用go
安装它:
go get code.google.com/p/rspace.cmd/doc
然后,您可以说doc next
(或doc Next
)并在所有包中获得一个很棒的Next
函数列表,以及它们的文档和签名。如果您知道包裹的名称,则可以说doc sql next
或doc sql.next
。您甚至可以通过-url
在线获取该文档的URL,或-src
获取该符号实现的文件名和行号。
您可以使用-pkg
doc -pkg json
访问包文档(显示在包裹页面顶部且不属于其任何项目的文档)。
doc
搜索所有内容,您可以将其限制为仅搜索函数,接口,变量等。运行它而不使用参数来获取文档。
这是一个很棒的工具。当你在Go中写作时,请保持密切。