1
0
Fork 0
mirror of synced 2024-11-30 04:35:35 -05:00
ultimate-vim/sources_non_forked/vim-snippets/snippets/go.snippets

222 lines
3.2 KiB
Text
Raw Normal View History

2012-08-16 23:41:25 -04:00
# append
snippet ap
append(${1:slice}, ${2:value})
# bool
snippet bl
bool
2013-07-17 19:06:05 -04:00
# byte
2012-08-16 23:41:25 -04:00
snippet bt
byte
# break
snippet br
break
# channel
snippet ch
chan ${1:int}
# case
snippet cs
case ${1:value}:
2013-07-17 19:06:05 -04:00
${2}
2012-08-16 23:41:25 -04:00
# const
snippet c
const ${1:NAME} = ${2:0}
# constants with iota
snippet co
const (
${1:NAME1} = iota
${2:NAME2}
)
# continue
snippet cn
continue
2013-07-17 19:06:05 -04:00
# defer
2012-08-16 23:41:25 -04:00
snippet df
defer ${1:func}()
# defer recover
snippet dfr
defer func() {
if err := recover(); err != nil {
2013-07-17 19:06:05 -04:00
${1}
2012-08-16 23:41:25 -04:00
}
}()
# gpl
snippet gpl
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
2012-08-16 23:41:25 -04:00
*
* Copyright (C) ${1:Author}, `strftime("%Y")`
*/
2013-07-17 19:06:05 -04:00
2012-08-16 23:41:25 -04:00
${2}
# int
snippet i
int
2013-07-17 19:06:05 -04:00
# import
2012-08-16 23:41:25 -04:00
snippet im
import (
2013-07-17 19:06:05 -04:00
"${1:package}"
)${2}
2013-07-17 19:06:05 -04:00
# interface
2012-08-16 23:41:25 -04:00
snippet in
interface{}
2013-07-17 19:06:05 -04:00
# full interface snippet
2012-08-16 23:41:25 -04:00
snippet inf
interface ${1:name} {
${2:/* methods */}
}${3}
# if condition
snippet if
if ${1:/* condition */} {
2013-07-17 19:06:05 -04:00
${2}
}${3}
2012-08-16 23:41:25 -04:00
# else snippet
snippet el
else {
${1}
}${2}
2012-08-16 23:41:25 -04:00
# error snippet
snippet ir
if err != nil {
return err
}
${1}
# false
snippet f
false
# fallthrough
snippet ft
fallthrough
# float
snippet fl
float32
# float32
snippet f3
float32
# float64
snippet f6
float64
# if else
snippet ie
if ${1:/* condition */} {
2013-07-17 19:06:05 -04:00
${2}
2012-08-16 23:41:25 -04:00
} else {
${3}
}
${4}
2012-08-16 23:41:25 -04:00
# for loop
snippet fo
for ${2:i} := 0; $2 < ${1:count}; $2${3:++} {
2013-07-17 19:06:05 -04:00
${4}
2012-08-16 23:41:25 -04:00
}
${5}
2012-08-16 23:41:25 -04:00
# for range loop
snippet fr
for ${1:k}, ${2:v} := range ${3} {
2013-07-17 19:06:05 -04:00
${4}
2012-08-16 23:41:25 -04:00
}
${5}
2013-07-17 19:06:05 -04:00
# function simple
2012-08-16 23:41:25 -04:00
snippet fun
func ${1:funcName}(${2}) ${3:error} {
2013-07-17 19:06:05 -04:00
${4}
2012-08-16 23:41:25 -04:00
}
${5}
2013-07-17 19:06:05 -04:00
# function on receiver
2012-08-16 23:41:25 -04:00
snippet fum
func (self ${1:type}) ${2:funcName}(${3}) ${4:error} {
2013-07-17 19:06:05 -04:00
${5}
2012-08-16 23:41:25 -04:00
}
${6}
# log printf
snippet lf
log.Printf("%${1:s}", ${2:var})${3}
# log printf
snippet lp
log.Println("${1}")${2}
2012-08-16 23:41:25 -04:00
# make
snippet mk
make(${1:[]string}, ${2:0})
2013-07-17 19:06:05 -04:00
# map
2012-08-16 23:41:25 -04:00
snippet mp
map[${1:string}]${2:int}
# main()
snippet main
func main() {
2013-07-17 19:06:05 -04:00
${1}
2012-08-16 23:41:25 -04:00
}
${2}
2012-08-16 23:41:25 -04:00
# new
snippet nw
new(${1:type})
2013-07-17 19:06:05 -04:00
# panic
2012-08-16 23:41:25 -04:00
snippet pn
panic("${1:msg}")
# print
snippet pr
fmt.Printf("%${1:s}\n", ${2:var})${3}
2013-07-17 19:06:05 -04:00
# range
2012-08-16 23:41:25 -04:00
snippet rn
range ${1}
2013-07-17 19:06:05 -04:00
# return
2012-08-16 23:41:25 -04:00
snippet rt
return ${1}
2013-07-17 19:06:05 -04:00
# result
2012-08-16 23:41:25 -04:00
snippet rs
result
# select
snippet sl
select {
case ${1:v1} := <-${2:chan1}
2013-07-17 19:06:05 -04:00
${3}
2012-08-16 23:41:25 -04:00
case ${4:v2} := <-${5:chan2}
2013-07-17 19:06:05 -04:00
${6}
2012-08-16 23:41:25 -04:00
default:
2013-07-17 19:06:05 -04:00
${7}
2012-08-16 23:41:25 -04:00
}
# string
snippet sr
string
# struct
snippet st
struct ${1:name} {
${2:/* data */}
}
${3}
2013-07-17 19:06:05 -04:00
# switch
2012-08-16 23:41:25 -04:00
snippet sw
switch ${1:var} {
case ${2:value1}:
2013-07-17 19:06:05 -04:00
${3}
2012-08-16 23:41:25 -04:00
case ${4:value2}:
2013-07-17 19:06:05 -04:00
${5}
2012-08-16 23:41:25 -04:00
default:
2013-07-17 19:06:05 -04:00
${6}
2012-08-16 23:41:25 -04:00
}
snippet sp
fmt.Sprintf("%${1:s}", ${2:var})${3}
2013-07-17 19:06:05 -04:00
# true
2012-08-16 23:41:25 -04:00
snippet t
true
# variable declaration
snippet v
var ${1:t} ${2:string}
2013-08-03 08:50:12 -04:00
# goroutine named function
snippet g
go ${1:funcName}(${2})
# goroutine anonymous function
snippet ga
go func(${1} ${2:type}) {
${3:/* code */}
}(${4})