Skip to content

Instantly share code, notes, and snippets.

@chai2010
Created May 15, 2015 02:37
Show Gist options
  • Save chai2010/7202ff2ab16eb4d45bf2 to your computer and use it in GitHub Desktop.
Save chai2010/7202ff2ab16eb4d45bf2 to your computer and use it in GitHub Desktop.
golangdoc/local 新接口设计
package local

// Default is the translations dir.
const (
	DefaultDir = "translations"     // 默认: $(RootFS)/translations
	DefaultEnv = "GODOC_LOCAL_ROOT" // 优先取环境变量, 支持多个目录
)

// Init initialize the translations environment.
func Init(goroot, gopath, translations string) {
	// goroot 和 translations 支持zip, 自动识别
}

// RootFS return root filesystem.
//
// RootFS:
//	/lib/godoc
//	/doc
//	/src
//	/blog
//	/talks
//	/tour
//	...
//
// Package:
//	/src/.../xxx_zh_CN.go
//	/src/...
//
// Blog:
//	/blog/content
//	/blog/static
//	/blog/template
//
// Talks:
//	/talks/content
//	/talks/static
//	/talks/template
//
// Tour:
//	/tour/content
//	/tour/static
//	/tour/template
func RootFS(lang string) vfs.FileSystem {
	// 固定了目录结构, godoc可以直接使用
	// 内部会屏蔽一些垃圾目录, 比如 src 目录下的 talks 目录
	// pkg 翻译追加到 src 目录, 可以直接查看 doc_zh_CN.go 文件
}

// Package translate Package doc.
func Package(lang, importPath string, pkg *doc.Package) *doc.Package {
	return nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment