1
0
forked from x/ContextOS
ContextOS/etc/go.snippets

113 lines
1.7 KiB
Plaintext

snippet p
package ${1:main}
${2}
snippet i
import (
"${1}"
)
${2}
snippet t
type ${1} struct {
${2}
}
${3}
snippet ti
type ${1} interface {
${2}
}
${3}
snippet c
package `Filename()`
import (
"context"
)
type `toupper(substitute(expand("%:t"), ".go", "", ""))` struct {
*ctx.Context
*ctx.CTX
}
func (`Filename()` *`toupper(substitute(expand("%:t"), ".go", "", ""))`) Begin() bool {
return true
}
func (`Filename()` *`toupper(substitute(expand("%:t"), ".go", "", ""))`) Start() bool {
return true
}
func (`Filename()` *`toupper(substitute(expand("%:t"), ".go", "", ""))`) Spawn(c *ctx.Context, arg ...string) ctx.Server {
c.Caches = map[string]*ctx.Cache{}
c.Configs = map[string]*ctx.Config{}
c.Commands = map[string]*ctx.Command{}
s := new(`toupper(substitute(expand("%:t"), ".go", "", ""))`)
s.CTX = ctx.Ctx
s.Context = c
return s
}
var Index = &ctx.Context{Name: "`Filename()`", Help: "${1}",
Caches: map[string]*ctx.Cache{},
Configs: map[string]*ctx.Config{},
Commands: map[string]*ctx.Command{},
}
func init() {
`Filename()` := &`toupper(substitute(expand("%:t"), ".go", "", ""))`{}
`Filename()`.CTX = ctx.Ctx
`Filename()`.Context = Index
ctx.Index.Register(Index, `Filename()`)
}
snippet v
var (
${1}
)
${2}
snippet m
func main() {
${1}
}
snippet h
func(w http.ResponseWriter, r *http.Request) {
${1}
})
snippet f
func${1}(${2}) ${3}{
${4}
}${5}
snippet "
"${1}"${2}
snippet `
`${1}`${2}
snippet (
(${1})${2}
snippet [
[${1}]${2}
snippet {
{${1}}${2}
snippet if
if ${1} {
${2}
}
${3}
snippet for
for ${1}{
${2}
}
${3}
snippet switch
switch ${1}{
case ${2}:
${3}
}
${4}
snippet select
select {
case ${1}:
${2}
}
${3}