diff --git a/cmd/micro/micro.go b/cmd/micro/micro.go index 4413ae35..69ac0827 100644 --- a/cmd/micro/micro.go +++ b/cmd/micro/micro.go @@ -248,6 +248,7 @@ func main() { L.SetGlobal("BindKey", luar.New(L, BindKey)) L.SetGlobal("MakeCommand", luar.New(L, MakeCommand)) L.SetGlobal("CurView", luar.New(L, CurView)) + L.SetGlobal("IsWordChar", luar.New(L, IsWordChar)) L.SetGlobal("JobStart", luar.New(L, JobStart)) L.SetGlobal("JobSend", luar.New(L, JobSend)) diff --git a/cmd/micro/plugin.go b/cmd/micro/plugin.go index d60f9510..b3977965 100644 --- a/cmd/micro/plugin.go +++ b/cmd/micro/plugin.go @@ -14,6 +14,7 @@ var loadedPlugins []string var preInstalledPlugins = []string{ "go", "linter", + "autoclose", } // Call calls the lua function 'function' diff --git a/cmd/micro/runtime.go b/cmd/micro/runtime.go index 83ef4771..34e12283 100644 --- a/cmd/micro/runtime.go +++ b/cmd/micro/runtime.go @@ -5,6 +5,7 @@ // runtime/colorschemes/solarized-tc.micro // runtime/colorschemes/solarized.micro // runtime/help/help.md +// runtime/plugins/autoclose/autoclose.lua // runtime/plugins/go/go.lua // runtime/plugins/linter/linter.lua // runtime/syntax/Dockerfile.micro @@ -240,7 +241,7 @@ func runtimeColorschemesSolarizedMicro() (*asset, error) { return a, nil } -var _runtimeHelpHelpMd = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x9c\x59\xdd\x73\xe3\xb6\x11\x7f\x36\xff\x0a\x8c\x2e\x33\xb9\x4b\x25\x79\x9a\xf6\xc9\x6f\x8e\xed\xfb\x48\xee\xce\x8e\xcf\xd7\x26\x7d\x09\x21\x12\x94\x10\x93\x04\x03\x80\xb6\x95\x7e\xfc\xed\xfd\xed\x02\xa4\x08\x49\xbe\x74\x7a\x33\x99\x88\xc0\x62\xbf\x77\xf1\x5b\xf8\x85\xf8\xa0\x0b\x6b\xc4\x46\xd5\x9d\xf0\xea\xc9\x67\x59\x58\xd0\x4e\x48\x2c\xd8\x46\xb7\xb2\x5e\xac\xa4\x53\x25\xef\x0b\x55\x6a\x6f\xac\xf0\x1b\xe9\x85\xd4\x8d\x13\xde\x88\x95\x12\x4a\xba\x2d\xfd\xec\x9d\x12\xb2\x2d\x85\x6e\x7d\xaf\xbd\x7e\x50\x73\x91\x3d\x6e\x74\x8d\xd5\xda\x19\xe1\xe5\xbd\x6e\xd7\x42\x96\x0f\xb2\xf5\x72\xad\x84\xa9\xc0\x4a\x89\xaa\xaf\x6b\x51\xc8\x4e\xae\x74\x8d\x63\xca\xd1\x46\x63\x4a\x65\xdb\x51\x0b\xb7\xcc\xb2\x17\x2f\x5e\x88\xcf\x0e\x07\xb3\xec\xba\x2d\x94\xd8\x9a\x5e\x6c\xe4\x83\x12\xab\x5e\xd7\x9e\x59\x05\x05\xe7\xc2\xe9\xa6\xab\xb7\xc2\x79\x69\xbd\xd0\x5e\xac\xb6\xc2\xf6\x6d\x4b\xe2\xb3\xbc\x61\x23\x3b\xe9\x37\xa7\xde\x9c\x56\xd0\x6f\xe9\x9f\x7c\x2e\x60\x59\x3c\x17\x48\x72\xb2\xc9\x74\xaa\x85\x51\x42\x35\x9d\xdf\x42\x52\x55\x29\xbb\x1c\x1c\xc5\x66\xb9\xbe\xeb\x8c\xf5\x4e\x14\x56\x49\x4f\x22\x02\x95\x13\x95\x35\x0d\x74\x28\x75\x7b\x96\x65\x79\x9e\x67\x5f\x09\x5d\x15\xa6\xad\xf4\x5a\xfc\x4b\xb0\x0c\x5e\xce\x7e\x86\x25\x05\x84\x34\x06\xd6\x90\x1d\x45\x6f\x1d\xd4\x91\xd6\xf4\xf0\xe7\xa3\xf6\x1b\x5e\x96\xd6\x9a\x47\x71\xaf\xb6\x8e\xfd\xdc\x18\x78\x3c\x3a\xe6\x07\xb5\x5d\xe9\x16\xa2\xd6\x2e\xcb\xde\x2a\x4b\xc4\x81\x57\xa9\x2a\xd9\xc3\x3f\xf7\x3b\x0a\x44\x48\xfc\xea\x4c\x2b\x2a\x63\x1b\x81\x10\x15\x1b\x0e\x3a\x99\xb3\x31\x8f\xd9\x36\xea\x63\x15\x9d\x20\x2e\x0d\xf9\x02\xcb\x56\xd4\x9a\xa2\xb8\x64\x83\x88\x47\xf6\xcf\x4c\xe0\xdf\xec\x73\x37\x3b\x13\xd3\x7f\xb3\x0b\x36\x02\xeb\xf3\x40\x71\x69\x1e\xdb\x84\x26\x52\xf0\x7a\xa4\xb9\xd5\xeb\x8d\x9f\x12\x45\x9a\xb0\x1e\x89\xde\xab\xca\x1f\x63\xc4\xeb\x91\xe6\xd3\x46\x57\x7e\xaa\xd3\xec\x93\xaa\x55\xe1\x77\xea\x30\xc5\x54\xa7\x48\x31\x55\x87\x69\xa6\xe2\x22\xcd\x81\xa4\xa9\xde\x91\x26\x51\xf9\xbc\xf6\xa9\xd6\xb3\xbf\x1b\x5b\x4e\xd9\x80\x22\x35\x9e\x29\xf6\x99\xa4\xc2\xa2\xa4\x67\x09\x47\x91\x13\xc2\xa9\xcc\x0b\x6f\xeb\x44\xad\xd9\x27\xaa\x98\xeb\xea\xbd\x6e\xd5\x94\x28\xd1\x6c\x76\xd5\x96\x87\x24\x89\xc0\x28\xef\xce\x3c\xc3\x2f\x31\x63\x24\x3e\xca\x37\xc9\xab\x18\x68\xe6\x3a\x25\x4a\x52\x2b\x12\x81\xdb\x81\xc8\x81\x59\xaa\xdf\x01\xd9\xc0\x6e\xaa\xd9\x40\x74\xd5\xa2\x27\x25\x19\xfa\xae\x75\xca\xfa\xb0\x3e\xe4\x44\x27\x0b\x75\x84\x28\xac\x47\xa2\xef\x64\x71\xef\xa6\x84\x93\x95\x7d\x92\x6f\x87\xdc\x3a\x20\x41\xac\x17\x09\xa7\xd9\x25\x94\xf6\xea\x48\x7e\x2d\x12\x76\xcf\xd0\xdd\xc9\x55\x5a\xc8\x51\x75\x5a\x9f\xf8\xe9\x3a\xb1\xee\x1a\x5d\xf2\x35\x1a\x69\xe2\xc9\x84\xe2\x13\x1a\xf5\x74\xf7\x75\xb2\xfb\x5a\xa7\xc1\xfa\x78\xb0\xfb\x11\xf7\xcf\x94\xe2\xe6\x80\xe2\xc6\xaa\x07\x8d\x8e\x38\xa5\xfa\x47\x42\xf5\xb9\x2d\xcd\x74\xf7\xe7\x64\xf7\x56\xa5\xbb\x17\x69\x1b\x32\xdd\x76\xba\xfb\xd3\x5e\x93\x4a\x94\xfb\x61\x7f\x73\x3f\xa9\x2f\x13\x82\xcb\xbe\xab\x75\x21\xbd\xda\x27\xfb\x5b\x42\x76\x23\x9d\x4f\xb6\xcf\x53\x0f\x73\xae\x9e\xd7\xf5\x94\xe4\x2e\x21\x39\x2f\x4b\x0a\xe3\x5e\x5d\x7f\xfa\x2d\x16\xc5\xe0\xc1\xbd\x50\x73\xd6\xd4\xd2\x6d\x38\xbb\x28\x10\x13\x82\xb7\xa6\x51\x69\x2f\x4e\x4a\x8a\x0a\x27\xcd\xa6\x49\x29\xdd\xe0\x2e\x3f\x56\xde\x71\x7d\x42\x75\xac\xbe\xc7\xf5\x89\xaa\x6f\x12\x73\xef\xcc\x7a\x5d\xab\xb7\x80\x37\x49\x2f\x3b\x42\x73\xdb\xd7\xbb\xe2\xe5\xae\x98\x10\x7d\xdf\x37\xdd\x34\x36\xa1\x72\xa6\x8a\xc7\x95\xc1\x6a\x57\xec\x59\x7d\x51\x2b\x49\x6d\xcb\xa7\xf9\xf9\x5d\x1a\x41\x20\xb1\xfa\x03\x80\xcf\x94\xe4\xc7\x84\xe4\x47\x00\xab\xe9\xee\xd5\x5e\x92\x36\x0d\x80\x41\x64\xc1\x54\xa7\xa7\xe2\xaa\x91\x85\x5b\x38\xbf\x05\x10\x9b\x80\x80\x5d\x5b\xa8\xa8\x1b\x1c\xbb\x44\x16\xab\x61\x67\xbf\x93\x48\xee\xdb\x87\xcd\x9d\xf6\xc8\x31\x87\x77\x04\xed\x50\xac\x0f\x60\x01\x6d\xb4\xbb\x0d\x0e\x69\xf6\xef\x14\x18\x11\xb2\x64\x00\x14\x70\x8c\x13\x7f\x0a\x58\x88\x11\x28\xa3\xa6\x47\x28\x49\x30\x8f\xfe\xbf\xcc\xc8\x35\xa2\x86\xce\x8c\x93\x2c\x99\x75\x00\xae\x70\x92\xbe\x02\x46\x24\x32\x85\xff\x22\x24\xad\xa1\xf8\x9c\x16\xb3\x82\x38\xf5\x1d\x13\x94\x50\xed\x90\xcd\x73\x3c\x46\xac\x38\x18\xb1\x31\x75\x29\x1c\xdd\x2f\x01\xd1\x49\xc0\xde\x40\x0b\xeb\x88\x6d\xa3\x5a\x70\x29\xbc\x36\x2d\x1b\xe6\xb8\xa2\x45\x80\xd0\x20\x08\xb8\xeb\x8e\x78\x0f\x40\xae\x91\x5b\x42\xe0\x00\x6a\x8c\x14\x7b\x47\xf8\x93\xa4\xe7\xff\x39\x5d\x06\xa8\x79\xca\x40\xf3\x74\x38\xb2\x24\xd0\x96\x67\x0c\x7b\xc5\x95\x04\xf2\x83\x43\x09\xfd\x05\x0e\x10\x0b\x55\x83\x12\x10\xf6\x1a\x16\xaa\x27\x09\x54\x0c\x7f\x10\xda\x27\x3c\x98\x93\x7b\x17\x5b\xc6\xc7\x38\x63\xd8\xf2\xb0\xf8\x3b\x2f\x5a\xb4\xd2\x39\xe3\xf3\xc2\xf4\x30\xba\xeb\x19\x9e\x67\x95\xa9\x6b\xf3\x48\x2a\x02\x80\xb2\x96\xa9\x56\x82\xb5\x9a\x42\xcb\x93\xb1\x51\x0f\xdd\xfb\x64\x6c\xec\xa1\x63\x0f\xa9\x42\x20\xf8\xc6\x38\xa7\x57\x70\x56\x11\x0a\xc1\xed\x9c\xaf\x9e\x54\xd1\x7b\xc5\x50\x3e\x4c\x31\x91\x86\x92\xa6\xb3\xca\xb1\xe7\x82\x11\x0a\x8a\xb0\xa6\x8a\x77\x39\xd8\x81\x78\x99\x42\xeb\x6e\x5f\x5e\x18\x8d\xb6\xbb\xac\x85\x31\xdf\x88\xfc\x37\x54\x6d\x7e\x26\xa8\x78\x5d\xc0\xfd\x4b\x5a\x76\xb8\x13\xb1\x4c\x57\xa3\x1b\x52\xca\x52\x0e\x8c\xa9\x03\x22\xab\xba\x1a\x37\xb6\x98\x39\x74\x90\x62\x33\x13\xb3\x07\x59\xf7\x6a\x26\xaa\x5a\xae\x1d\x8e\xdf\x6d\x10\xbc\x47\x8d\x64\x1a\x48\xf3\x40\x9a\x87\x34\xcb\x99\x3e\x5f\x0a\x2a\x37\x4a\x9e\x3c\x9c\x64\x2b\x4c\x47\x81\x96\xf5\x92\x36\xcf\x29\x4a\x60\xd6\x19\x4c\x70\x73\xd2\x08\x14\xf8\x36\x2d\x66\x22\xd3\x2a\x16\x79\x26\xf2\x22\x9f\xc7\xa1\x41\xb5\x12\xe6\x3b\x2c\x6d\x54\x71\x9f\xf3\xd4\xc6\x72\xc2\xb6\x74\xf7\x98\x35\x2a\x72\xc8\xd7\x25\x4d\x0e\x8a\xb2\xa3\x53\x96\xe7\x0e\xb2\x38\xaa\xcc\x99\xaf\x28\x19\xbd\x6e\x14\x77\xae\x8f\xc6\xab\xe0\xce\xd1\x9c\xa6\x77\x9e\xb2\x5d\x0a\x98\xa4\x51\xd7\x6a\xad\x9e\x96\x42\xbc\xab\x58\xbb\x58\x77\xd2\xae\x7b\xe2\xc7\x0d\xae\x34\xd0\xae\x35\x3e\x0c\x8a\xb2\xc5\x4c\x48\xf8\x87\x27\x20\xed\x43\x8e\x52\x0d\x99\x46\x87\x09\xf2\xb7\x1e\x72\x5d\x70\xbd\x53\x3e\x3a\x48\x04\x1f\x9e\xa1\x24\x7d\x08\x55\x5c\x87\x39\xbc\xb5\x14\x37\xe8\xf0\xa8\x63\xa7\x42\x6a\xb4\x34\x2f\x3b\xc5\x75\x44\x63\x16\x29\x23\xe1\x02\x58\x00\x3d\xc3\x69\x37\x66\x0a\xd8\xc6\x68\xf7\xf8\xd8\x2c\x62\x3e\x41\x20\x16\x82\xc0\x35\xe6\x69\xda\x53\x34\x2c\xc7\xd4\x8d\x55\xb4\xc2\x05\xbd\xe6\x51\x71\xc9\x01\x26\x59\x91\xe4\x6b\x44\xaf\xf7\x54\x7f\x9c\x21\x70\x5e\xa9\x1d\x5c\xbe\x55\x7c\x9a\xdc\x46\xbd\x0e\xf1\x52\xe4\x10\x14\x60\xab\x21\xc3\x0d\xe3\x72\xd0\x8a\xab\x9e\xda\x44\xe8\x0b\x50\x8b\x67\x5d\x45\xef\x04\xbb\x1b\x25\xcc\xbb\x44\x46\x4d\x24\x74\x10\xf1\x29\xfa\x23\xba\x82\x92\x89\xd4\x9b\x0e\xa3\x72\x45\x2d\x15\x3e\x42\xfa\x50\xc2\xb5\x95\xa1\x35\xd2\x99\xc2\x3f\x8e\xbb\x43\x67\xa4\xbc\x95\x0f\x52\xd7\x94\x7b\x71\xfc\xbd\x0e\x0e\x1d\x06\x73\x87\x02\x27\xed\xc6\x0e\x4b\xb5\x48\x25\x4f\x0d\xb1\xb7\x92\xa3\xc2\x29\xe0\xf6\x16\x4b\x6d\xa1\xa9\xb1\xdb\x71\xc8\xc7\xc9\x10\x81\xfc\xab\x9f\x2e\xdf\xfc\x72\x71\xfd\xf1\xf5\xbb\x37\xbf\xbc\xbd\xfe\x70\x75\x1a\x9f\x09\x64\xac\xde\x67\x18\x89\x73\x47\x39\x9f\x11\x0d\x38\x20\x03\x55\x31\xa7\xb2\x38\x60\x98\x53\xb5\x51\xb6\x22\x1f\xe6\x07\x2d\x9c\x77\x7b\x7a\x8c\x81\xc0\x6c\x27\x31\xd1\x39\xe9\x4f\x43\x9a\x25\x5d\x09\xbc\xcf\x38\xaa\x85\xa9\x8d\x75\xa8\xdc\x86\x32\xbb\x36\xb2\x1c\xec\x18\xd7\x83\x23\x39\x55\x28\x6a\x5f\xbd\x0c\x12\x2f\xb5\x7d\x75\x3a\x21\x73\xa7\x79\x10\x95\x2f\xc3\xab\x46\x76\x32\xbc\x3a\x70\x75\xa0\x67\xc4\xef\x3c\x3b\xd9\x15\xf6\xf4\x75\x62\xca\x4d\xbc\x8c\xab\x73\xe1\x4c\x2d\xad\xfe\x5d\x95\x7c\x1b\xef\x3e\x17\xbe\x78\x95\x9d\x90\x9d\xe4\xae\xda\x10\x7a\x66\x35\x47\x05\xe7\x48\xf6\x42\x46\xe0\xb0\x65\x97\xa8\x66\xa5\xca\x52\x8d\x75\x13\x1e\x82\x90\x87\xd2\x6e\xa1\xf2\xdd\x9e\xed\xe4\xac\x95\x8a\xb7\x30\x4e\x71\x7a\x53\x4a\xf1\xa3\x95\xae\x43\x17\xa1\x8f\xec\x64\xff\xb6\x4d\x9c\x33\xcd\x85\x90\x53\xa8\x4e\x9c\xc6\xdd\x32\x98\x1f\x9f\x78\xac\x52\xd9\xc9\xf4\x2c\x22\x75\xf2\xcd\x40\x75\x16\xda\xb3\x76\xcf\x79\x6e\x49\xc4\xa3\x8f\x52\xf2\x71\x39\xb1\xf1\x25\xe7\x53\x34\xc3\xa1\xaa\x55\xeb\x36\xc6\xbf\xc2\x6d\x71\x22\x04\x5d\x9e\xf8\xa4\x2b\x9c\xfb\xe7\x11\x3e\xa2\x93\x40\xbe\x9e\xca\x36\xbc\x0f\x0d\x2f\x76\xc3\x83\xa0\xf6\xa9\x56\x88\xdc\xff\xa2\x18\xb5\x03\x6f\xfb\x18\x91\xb9\xf8\x95\x7a\x3f\xe9\xd4\x48\xdc\x22\xae\xb7\x6a\x4f\xdc\xf8\x0c\xb7\x3b\x85\xe8\x55\xd4\x51\x02\x2a\xd2\x01\xa1\x8d\x99\x47\xcc\x3e\xbc\xbb\xb8\xbd\xfe\xe5\xee\xf6\xf3\xd5\xc5\xf5\xfb\xeb\x5b\xdc\x67\x0f\xda\x9a\x96\xaf\xa3\x07\x68\x45\x1d\x86\xf4\xa4\x9b\x00\xf6\xfc\x79\xe0\xc8\x80\x8f\x98\xc6\xcb\x9c\xeb\xc9\xcb\x95\x83\x1d\xd3\x5b\x02\x4b\x82\xd6\xe8\xf0\x50\x22\x47\x8a\xe3\xaf\x39\x33\x40\x43\x84\xe0\x62\x23\xed\x94\x47\x58\x0d\x4d\x85\xf6\xd0\x06\xd1\x4c\x0e\x99\x88\xc8\x64\xdd\x42\xc3\x02\x77\x11\x98\x0c\x57\x2d\x7d\x2e\x34\xe6\xf8\xd6\xf1\xc3\xac\x08\x57\xaa\x72\x47\xf8\x98\xaa\x0a\x9c\xdc\x16\x62\x9f\xc0\xc5\xf7\x16\x4d\x24\x7c\xa2\x7f\xd3\x43\x29\x88\x8e\x1d\x6d\xf3\xd1\x13\xde\x84\x9b\x16\xe7\x29\x0d\xc6\x6b\x17\x33\xac\x0c\x18\x19\x44\x5f\x12\x2f\x7b\x6f\x82\xed\x60\xc1\xf7\xd3\xf8\xc0\x2a\x71\xbd\x3e\x86\x8b\x6b\x98\x0c\x9c\x6c\x52\x57\xc5\xa6\x4c\x6d\xab\x8b\x73\x2d\x9f\xf8\x82\xda\x01\xd1\x13\x11\x24\x6e\x30\x34\xd4\x3c\x38\x0c\x03\xc1\x2e\x75\x22\xf4\x67\x68\x44\x89\x2f\x51\xe1\x84\xd8\x28\x6d\x38\xf3\x48\xea\xcb\xb1\x97\x12\x21\x64\x82\xc5\x04\x4f\xee\x52\x9d\x1a\xb3\x1c\xd2\xf4\x55\x18\xdb\x9e\xf5\x8a\xa5\x49\x15\xea\xc5\x6b\x3c\x28\xd6\xf6\xe8\x6c\xf6\xa8\x37\xa3\x69\x8e\x47\xcf\x68\xda\x70\x36\x8e\x2e\x3e\x7a\x46\x44\xeb\x56\xc6\x7b\x74\xba\x78\x71\x86\xa6\xf0\x25\xd6\xe8\x0c\xc1\x21\x04\x57\x60\x10\xe9\x42\x01\xb3\xc9\x9c\xf4\x88\x80\xd4\x12\x45\x4c\x08\x6f\x6c\xa1\xbc\x4c\x6f\xec\x74\xab\x61\xdc\xa2\x68\xf5\xfc\x64\x1f\xd0\x27\xc7\x9d\x1c\xc4\xef\xf0\xe3\x29\xb9\x96\xba\xfd\x03\x4f\x91\x5e\x34\x9d\x0c\xd9\xc3\x3d\x27\xc2\x36\x8e\xdc\x3c\x0c\x2f\x54\xde\x20\xc5\xec\x46\x00\x4b\x56\xa8\xae\x70\x57\xd6\x86\xfe\x9e\xc1\x02\x49\x92\x33\x11\xca\x0e\x3b\x34\x59\xaa\xf0\xf7\x01\x26\x9a\x8f\x57\xec\xbd\x52\x1d\x33\x47\x40\xff\x48\x4b\xf4\x8f\xba\x6e\x00\x5a\x35\xe1\x2a\xd9\x00\xc6\x31\x44\xa4\x88\x04\x80\xf8\xc8\x0d\x78\x40\xcf\x04\x30\x03\x62\xe2\xe1\x45\x61\x4c\x99\xb8\xf9\x48\x9c\xfe\x32\x15\x04\xec\xa1\xca\x23\x72\x88\x31\x13\x70\xe3\x25\x58\x18\x3f\xc9\x29\xfe\x08\xd7\x6f\xc1\x75\xb1\x58\x64\xd9\x65\xdc\xe8\xea\x7e\x4d\x88\x32\x40\x8e\x80\x30\xc0\xdb\x73\xb6\xd2\x0f\x44\xbf\x5d\xf7\x72\xad\xb8\x6a\xc8\xe5\xe2\x65\x6c\xda\x70\xfe\x6e\x93\x4a\xe1\x62\x2e\x2e\xe7\xe2\x0d\x86\xc8\xef\x81\xf4\xf8\xa1\x80\x7e\x40\x27\xdd\x01\x15\xbc\xef\x25\x6e\xa8\x1b\x8b\x91\xb8\xdc\xd5\xd4\x20\x2e\xaa\xb2\xfc\x42\xce\xae\x8d\x6e\xf8\xb6\x80\x6e\xb7\x80\xdc\xe3\xf7\xa0\xda\x11\xee\x6b\xf3\x45\xce\x43\x40\xd7\xa6\x6a\xfc\xc8\x16\xbf\xff\x7f\x96\xa4\xec\x39\x46\x96\x98\xb4\x94\x0b\x74\x11\xc5\xdb\x3a\x8e\xb1\x03\xae\x0f\x39\x1c\x1f\x35\xb8\x48\xb2\x7d\x50\x82\xc3\x7e\x1c\xb6\x91\xcf\x73\x62\xa5\xd0\xb8\x8a\x30\x09\xed\x03\xe4\x50\xa0\x91\x7f\x16\x20\x7f\xc9\x09\x02\xe2\x25\x8d\x5d\xe9\x60\xe7\xe9\x6a\x3e\xc2\x87\xc1\x0d\x69\xcf\x8f\x0b\x86\x2a\x3b\x6b\x30\xec\xf1\x23\x4b\xfc\x93\x5b\x61\xba\xd8\x90\x12\x25\xa3\x3d\x7c\x46\xc4\x33\xcb\xec\xbf\x01\x00\x00\xff\xff\x30\x23\x18\xa6\xba\x1c\x00\x00") +var _runtimeHelpHelpMd = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x9c\x59\x6d\x73\xdc\xb6\x11\xfe\x2c\xfe\x0a\xcc\x39\x33\xb6\xd3\xd3\x69\x9a\xf6\x93\xbe\x29\x92\xfc\x92\xd8\x96\x22\xcb\x6d\xd2\x4e\x27\xc4\x91\xe0\x1d\x22\x92\xa0\x01\x50\xd2\x25\x4d\x7f\x7b\x9f\x5d\x80\x3c\xe2\xee\xe4\x74\xea\x99\x28\x22\xb0\xd8\xf7\x5d\x3c\x0b\x3d\x13\xef\x75\x61\x8d\x58\xab\xba\x13\x5e\x3d\xfa\x2c\x0b\x0b\xda\x09\x89\x05\xdb\xe8\x56\xd6\xc7\x4b\xe9\x54\xc9\xfb\x42\x95\xda\x1b\x2b\xfc\x5a\x7a\x21\x75\xe3\x84\x37\x62\xa9\x84\x92\x6e\x43\xbf\xf6\x4e\x09\xd9\x96\x42\xb7\xbe\xd7\x5e\xdf\xab\xb9\xc8\x1e\xd6\xba\xc6\x6a\xed\x8c\xf0\xf2\x4e\xb7\x2b\x21\xcb\x7b\xd9\x7a\xb9\x52\xc2\x54\x60\xa5\x44\xd5\xd7\xb5\x28\x64\x27\x97\xba\xc6\x31\xe5\x68\xa3\x31\xa5\xb2\xed\xa8\x85\x5b\x64\xd9\xb3\x67\xcf\xc4\x27\x87\x83\x59\x76\xd5\x16\x4a\x6c\x4c\x2f\xd6\xf2\x5e\x89\x65\xaf\x6b\xcf\xac\x82\x82\x73\xe1\x74\xd3\xd5\x1b\xe1\xbc\xb4\x5e\x68\x2f\x96\x1b\x61\xfb\xb6\x25\xf1\x59\xde\xb0\x91\x9d\xf4\xeb\x13\x6f\x4e\x2a\xe8\xb7\xf0\x8f\x3e\x17\xb0\x2c\x9e\x0b\x24\x39\xd9\x64\x3a\xd5\xc2\x28\xa1\x9a\xce\x6f\x20\xa9\xaa\x94\x5d\x0c\x8e\x62\xb3\x5c\xdf\x75\xc6\x7a\x27\x0a\xab\xa4\x27\x11\x81\xca\x89\xca\x9a\x06\x3a\x94\xba\x3d\xcd\xb2\x3c\xcf\xb3\xaf\x84\xae\x0a\xd3\x56\x7a\x25\xfe\x2d\x58\x06\x2f\x67\x3f\xc1\x92\x02\x42\x1a\x03\x6b\xc8\x8e\xa2\xb7\x0e\xea\x48\x6b\x7a\xf8\xf3\x41\xfb\x35\x2f\x4b\x6b\xcd\x83\xb8\x53\x1b\xc7\x7e\x6e\x0c\x3c\x1e\x1d\xf3\xbd\xda\x2c\x75\x0b\x51\x2b\x97\x65\x6f\x94\x25\xe2\xc0\xab\x54\x95\xec\xe1\x9f\xbb\x2d\x05\x22\x24\x7e\x71\xa6\x15\x95\xb1\x8d\x40\x88\x8a\x35\x07\x9d\xcc\x59\x9b\x87\x6c\x13\xf5\xb1\x8a\x4e\x10\x97\x86\x7c\x81\x65\x2b\x6a\x4d\x51\x5c\xb0\x41\xc4\x23\xfb\x2d\x13\xf8\x37\xfb\xd4\xcd\x4e\xc5\xf4\xdf\xec\x9c\x8d\xc0\xfa\x3c\x50\x5c\x98\x87\x36\xa1\x89\x14\xbc\x1e\x69\x6e\xf4\x6a\xed\xa7\x44\x91\x26\xac\x47\xa2\x77\xaa\xf2\x87\x18\xf1\x7a\xa4\xf9\xb8\xd6\x95\x9f\xea\x34\xfb\xa8\x6a\x55\xf8\xad\x3a\x4c\x31\xd5\x29\x52\x4c\xd5\x61\x9a\xa9\xb8\x48\xb3\x27\x69\xaa\x77\xa4\x49\x54\x3e\xab\x7d\xaa\xf5\xec\xef\xc6\x96\x53\x36\xa0\x48\x8d\x67\x8a\x5d\x26\xa9\xb0\x28\xe9\x49\xc2\x51\xe4\x84\x70\x2a\xf3\xdc\xdb\x3a\x51\x6b\xf6\x91\x2a\xe6\xaa\x7a\xa7\x5b\x35\x25\x4a\x34\x9b\x5d\xb6\xe5\x3e\x49\x22\x30\xca\xbb\x35\x4f\xf0\x4b\xcc\x18\x89\x0f\xf2\x4d\xf2\x2a\x06\x9a\xb9\x4e\x89\x92\xd4\x8a\x44\xe0\xb6\x27\x72\x60\x96\xea\xb7\x47\x36\xb0\x9b\x6a\x36\x10\x5d\xb6\xe8\x49\x49\x86\xbe\x6d\x9d\xb2\x3e\xac\x0f\x39\xd1\xc9\x42\x1d\x20\x0a\xeb\x91\xe8\x5b\x59\xdc\xb9\x29\xe1\x64\x65\x97\xe4\x9b\x21\xb7\xf6\x48\x10\xeb\xe3\x84\xd3\xec\x02\x4a\x7b\x75\x20\xbf\x8e\x13\x76\x4f\xd0\xdd\xca\x65\x5a\xc8\x51\x75\x5a\x9f\xf8\xe9\x2a\xb1\xee\x0a\x5d\xf2\x15\x1a\x69\xe2\xc9\x84\xe2\x23\x1a\xf5\x74\xf7\x55\xb2\xfb\x4a\xa7\xc1\xfa\xb0\xb7\xfb\x01\xf7\xcf\x94\xe2\x7a\x8f\xe2\xda\xaa\x7b\x8d\x8e\x38\xa5\xfa\x47\x42\xf5\xa9\x2d\xcd\x74\xf7\xa7\x64\xf7\x46\xa5\xbb\xe7\x69\x1b\x32\xdd\x66\xba\xfb\xe3\x4e\x93\x4a\x94\xfb\x7e\x77\x73\x37\xa9\x2f\x12\x82\x8b\xbe\xab\x75\x21\xbd\xda\x25\xfb\x5b\x42\x76\x2d\x9d\x4f\xb6\xcf\x52\x0f\x73\xae\x9e\xd5\xf5\x94\xe4\x36\x21\x39\x2b\x4b\x0a\xe3\x4e\x5d\x7f\xfc\x1c\x8b\x62\xf0\xe0\x4e\xa8\x39\x6b\x6a\xe9\xd6\x9c\x5d\x14\x88\x09\xc1\x1b\xd3\xa8\xb4\x17\x27\x25\x45\x85\x93\x66\xd3\xa4\x94\xae\x71\x97\x1f\x2a\xef\xb8\x3e\xa1\x3a\x54\xdf\xe3\xfa\x44\xd5\xd7\x89\xb9\xb7\x66\xb5\xaa\xd5\x1b\xc0\x9b\xa4\x97\x1d\xa0\xb9\xe9\xeb\x6d\xf1\x72\x57\x4c\x88\xbe\xeb\x9b\x6e\x1a\x9b\x50\x39\x53\xc5\xe3\xca\x60\xb5\x2b\x76\xac\x3e\xaf\x95\xa4\xb6\xe5\xd3\xfc\xfc\x36\x8d\x20\x90\x58\xfd\x1e\xc0\x67\x4a\xf2\x43\x42\xf2\x03\x80\xd5\x74\xf7\x72\x27\x49\x9b\x06\xc0\x20\xb2\x60\xaa\x93\x13\x71\xd9\xc8\xc2\x1d\x3b\xbf\x01\x10\x9b\x80\x80\x6d\x5b\xa8\xa8\x1b\x1c\xba\x44\x8e\x97\xc3\xce\x6e\x27\x91\xdc\xb7\xf7\x9b\x3b\xed\x91\x63\xf6\xef\x08\xda\xa1\x58\xef\xc1\x02\xda\x68\xb7\x1b\x1c\xd2\xec\xf7\x14\x18\x11\xb2\x64\x00\x14\x70\x8c\x13\x7f\x0a\x58\x88\x11\x28\xa3\xa6\x07\x28\x49\x30\x8f\xfe\xbf\xc8\xc8\x35\xa2\x86\xce\x8c\x93\x2c\x99\xb5\x07\xae\x70\x92\xbe\x02\x46\x24\x32\x85\xff\x22\x24\xad\xa1\xf8\x9c\x16\xb3\x82\x38\xf5\x1d\x13\x94\x50\x6d\x9f\xcd\x53\x3c\x46\xac\x38\x18\xb1\x36\x75\x29\x1c\xdd\x2f\x01\xd1\x49\xc0\xde\x40\x0b\xeb\x88\x6d\xa3\x5a\x70\x29\xbc\x36\x2d\x1b\xe6\xb8\xa2\x45\x80\xd0\x20\x08\xb8\xeb\x96\x78\x0f\x40\xae\x91\x1b\x42\xe0\x00\x6a\x8c\x14\x7b\x47\xf8\x93\xa4\xe7\xff\x39\x59\x04\xa8\x79\xc2\x40\xf3\x64\x38\xb2\x20\xd0\x96\x67\x0c\x7b\xc5\xa5\x04\xf2\x83\x43\x09\xfd\x05\x0e\x10\x0b\x55\x83\x12\x10\xf6\x0a\x16\xaa\x47\x09\x54\x0c\x7f\x10\xda\x27\x3c\x98\x93\x7b\x8f\x37\x8c\x8f\x71\xc6\xb0\xe5\x61\xf1\x57\x5e\xb4\x68\xa5\x73\xc6\xe7\x85\xe9\x61\x74\xd7\x33\x3c\xcf\x2a\x53\xd7\xe6\x81\x54\x04\x00\x65\x2d\x53\xad\x04\x6b\x35\x85\x96\x47\x63\xa3\x1e\xba\xf7\xd1\xd8\xd8\x43\xc7\x1e\x52\x85\x40\xf0\xb5\x71\x4e\x2f\xe1\xac\x22\x14\x82\xdb\x3a\x5f\x3d\xaa\xa2\xf7\x8a\xa1\x7c\x98\x62\x22\x0d\x25\x4d\x67\x95\x63\xcf\x05\x23\x14\x14\x61\x4d\x15\xef\x72\xb0\x03\xf1\x22\x85\xd6\xdd\xae\xbc\x30\x1a\x6d\xb6\x59\x0b\x63\xbe\x16\xf9\x67\x54\x6d\x7e\x2a\xa8\x78\x5d\xc0\xfd\x0b\x5a\x76\xb8\x13\xb1\x4c\x57\xa3\x1b\x52\xca\x52\x0e\x8c\xa9\x03\x22\xab\xba\x1a\x37\xb6\x98\x39\x74\x90\x62\x3d\x13\xb3\x7b\x59\xf7\x6a\x26\xaa\x5a\xae\x1c\x8e\xdf\xae\x11\xbc\x07\x8d\x64\x1a\x48\xf3\x40\x9a\x87\x34\xcb\x99\x3e\x5f\x08\x2a\x37\x4a\x9e\x3c\x9c\x64\x2b\x4c\x47\x81\x96\xf5\x82\x36\xcf\x28\x4a\x60\xd6\x19\x4c\x70\x73\xd2\x08\x14\xf8\x36\x2d\x66\x22\xd3\x2a\x16\x79\x2a\xf2\x22\x9f\xc7\xa1\x41\xb5\x12\xe6\x3b\x2c\xad\x55\x71\x97\xf3\xd4\xc6\x72\xc2\xb6\x74\x77\x98\x35\x2a\x72\xc8\xf3\x92\x26\x07\x45\xd9\xd1\x29\xcb\x73\x07\x59\x1c\x55\xe6\xcc\x57\x94\x8c\x5e\x37\x8a\x3b\xd7\x07\xe3\x55\x70\xe7\x68\x4e\xd3\x3b\x4f\xd9\x2e\x05\x4c\xd2\xa8\x6b\xb5\x52\x8f\x0b\x21\xde\x56\xac\x5d\xac\x3b\x69\x57\x3d\xf1\xe3\x06\x57\x1a\x68\xd7\x1a\x1f\x06\x45\xd9\x62\x26\x24\xfc\xc3\x13\x90\xf6\x21\x47\xa9\x86\x4c\xa3\xc3\x04\xf9\xb9\x87\x5c\x17\x5c\xef\x94\x8f\x0e\x12\xc1\x87\xa7\x28\x49\x1f\x42\x15\xd7\x61\x0e\x6f\x2d\xc4\x35\x3a\x3c\xea\xd8\xa9\x90\x1a\x2d\xcd\xcb\x4e\x71\x1d\xd1\x98\x45\xca\x48\xb8\x00\x16\x40\xcf\x70\xda\x8d\x99\x02\xb6\x31\xda\x3d\x3e\xd6\xc7\x31\x9f\x20\x10\x0b\x41\xe0\x0a\xf3\x34\xed\x29\x1a\x96\x63\xea\xc6\x2a\x5a\xe2\x82\x5e\xf1\xa8\xb8\xe0\x00\x93\xac\x48\xf2\x1c\xd1\xeb\x3d\xd5\x1f\x67\x08\x9c\x57\x6a\x07\x97\x6f\x14\x9f\x26\xb7\x51\xaf\x43\xbc\x14\x39\x04\x05\xd8\x6a\xc8\x70\xc3\xb8\x1c\xb4\xe2\xaa\xa7\x36\x11\xfa\x02\xd4\xe2\x59\x57\xd1\x3b\xc1\xf6\x46\x09\xf3\x2e\x91\x51\x13\x09\x1d\x44\x7c\x8c\xfe\x88\xae\xa0\x64\x22\xf5\xa6\xc3\xa8\x5c\x52\x4b\x85\x8f\x90\x3e\x94\x70\x6d\x65\x68\x8d\x74\xa6\xf0\x8f\xe3\xee\xd0\x19\x29\x6f\xe5\xbd\xd4\x35\xe5\x5e\x1c\x7f\xaf\x82\x43\x87\xc1\xdc\xa1\xc0\x49\xbb\xb1\xc3\x52\x2d\x52\xc9\x53\x43\xec\xad\xe4\xa8\x70\x0a\xb8\x9d\xc5\x52\x5b\x68\x6a\xec\x66\x1c\xf2\x71\x32\x44\x20\xff\xea\xc7\x8b\xd7\x3f\x9f\x5f\x7d\x78\xf5\xf6\xf5\xcf\x6f\xae\xde\x5f\x9e\xc4\x67\x02\x19\xab\xf7\x09\x46\xe2\xcc\x51\xce\x67\x44\x03\x0e\xc8\x40\x55\xcc\xa9\x2c\xf6\x18\xe6\x54\x6d\x94\xad\xc8\x87\xf9\x5e\x0b\xe7\xdd\x9e\x1e\x63\x20\x30\xdb\x4a\x4c\x74\x4e\xfa\xd3\x90\x66\x49\x57\x02\xef\x53\x8e\x6a\x61\x6a\x63\x1d\x2a\xb7\xa1\xcc\xae\x8d\x2c\x07\x3b\xc6\xf5\xe0\x48\x4e\x15\x8a\xda\x57\x2f\x82\xc4\x0b\x6d\x5f\x9e\x4c\xc8\xdc\x49\x1e\x44\xe5\x8b\xf0\xaa\x91\x1d\x0d\xaf\x0e\x5c\x1d\xe8\x19\xf1\x3b\xcf\x8e\xb6\x85\x3d\x7d\x9d\x98\x72\x13\x2f\xe2\xea\x5c\x38\x53\x4b\xab\x7f\x55\x25\xdf\xc6\xdb\xcf\x63\x5f\xbc\xcc\x8e\xc8\x4e\x72\x57\x6d\x08\x3d\xb3\x9a\xa3\x82\x73\x24\x7b\x21\x23\x70\xd8\xb0\x4b\x54\xb3\x54\x65\xa9\xc6\xba\x09\x0f\x41\xc8\x43\x69\x37\x50\xf9\x76\xc7\x76\x72\xd6\x52\xc5\x5b\x18\xa7\x38\xbd\x29\xa5\xf8\xd1\x4a\xd7\xa1\x8b\xd0\x47\x76\xb4\x7b\xdb\x26\xce\x99\xe6\x42\xc8\x29\x54\x27\x4e\xe3\x6e\x19\xcc\x8f\x4f\x3c\x56\xa9\xec\x68\x7a\x16\x91\x3a\xfa\x7a\xa0\x3a\x0d\xed\x59\xbb\xa7\x3c\xb7\x20\xe2\xd1\x47\x29\xf9\xb8\x9c\xd8\xf8\x82\xf3\x29\x9a\xe1\x50\xd5\xaa\x75\x6b\xe3\x5f\xe2\xb6\x38\x12\x82\x2e\x4f\x7c\xd2\x15\xce\xfd\xf3\x00\x1f\xd1\x49\x20\x5f\x4f\x65\x1b\xde\x87\x86\x17\xbb\xe1\x41\x50\xfb\x54\x2b\x44\xee\x7f\x51\x8c\xda\x81\xb7\x7d\x8c\xc8\x5c\xfc\x42\xbd\x9f\x74\x6a\x24\x6e\x11\xd7\x5b\xb5\x23\x6e\x7c\x86\xdb\x9e\x42\xf4\x2a\xea\x28\x01\x15\xe9\x80\xd0\xc6\xcc\x23\x66\xef\xdf\x9e\xdf\x5c\xfd\x7c\x7b\xf3\xe9\xf2\xfc\xea\xdd\xd5\x0d\xee\xb3\x7b\x6d\x4d\xcb\xd7\xd1\x3d\xb4\xa2\x0e\x43\x7a\xd2\x4d\x00\x7b\xfe\x3c\x70\x64\xc0\x47\x4c\xe3\x65\xce\xf5\xe4\xe5\xd2\xc1\x8e\xe9\x2d\x81\x25\x41\x6b\x74\x78\x28\x91\x03\xc5\xf1\xd7\x9c\x19\xa0\x21\x42\x70\xb1\x96\x76\xca\x23\xac\x86\xa6\x42\x7b\x68\x83\x68\x26\xfb\x4c\x44\x64\xb2\x6a\xa1\x61\x81\xbb\x08\x4c\x86\xab\x96\x3e\x8f\x35\xe6\xf8\xd6\xf1\xc3\xac\x08\x57\xaa\x72\x07\xf8\x98\xaa\x0a\x9c\xdc\x06\x62\x1f\xc1\xc5\xf7\x16\x4d\x24\x7c\xa2\x7f\xd3\x43\x29\x88\x0e\x1d\x6d\xf3\xd1\x13\xde\x84\x9b\x16\xe7\x29\x0d\xc6\x6b\x17\x33\xac\x0c\x18\x19\x44\x5f\x12\x2f\x7b\x6f\x82\xed\x60\xc1\xf7\xd3\xf8\xc0\x2a\x71\xbd\x3e\x84\x8b\x6b\x98\x0c\x9c\x6c\x52\x57\xc5\xa6\x4c\x6d\xab\x8b\x73\x2d\x9f\xf8\x82\xda\x01\xd1\x13\x11\x24\xae\x31\x34\xd4\x3c\x38\x0c\x03\xc1\x36\x75\x22\xf4\x67\x68\x44\x89\x2f\x51\xe1\x84\xd8\x28\x6d\x38\xf3\x48\xea\x8b\xb1\x97\x12\x21\x64\x82\xc5\x04\x4f\x6e\x53\x9d\x1a\xb3\x1c\xd2\xf4\x65\x18\xdb\x9e\xf4\x8a\xa5\x49\x15\xea\xc5\x6b\x3c\x28\xd6\xf6\xe8\x6c\xf6\xa0\x37\xa3\x69\x8e\x47\xcf\x68\xda\x70\x36\x8e\x2e\x3e\x7a\x46\x44\xeb\x96\xc6\x7b\x74\xba\x78\x71\x86\xa6\xf0\x25\xd6\xe8\x0c\xc1\x21\x04\x57\x60\x10\xe9\x42\x01\xb3\xc9\x9c\xf4\x80\x80\xd4\x12\x45\x4c\x08\x6f\x6c\xa1\xbc\x4c\x6f\xec\x74\xab\x61\xdc\xa2\x68\xf5\xfc\x64\x1f\xd0\x27\xc7\x9d\x1c\xc4\xef\xf0\xe3\x29\xb9\x92\xba\xfd\x03\x4f\x91\x5e\x34\x9d\x0c\xd9\xc3\x3d\x27\xc2\x36\x8e\xdc\x3c\x0c\x2f\x54\xde\x20\xc5\xec\x46\x00\x4b\x56\xa8\xae\x70\x57\xd6\x86\xfe\x9e\xc1\x02\x49\x92\x33\x11\xca\x0e\x3b\x34\x59\xaa\xf0\xf7\x01\x26\x9a\x8f\x57\xec\x9d\x52\x1d\x33\x47\x40\xff\x48\x4b\xf4\x8f\xba\x6e\x00\x5a\x35\xe1\x2a\xd9\x00\xc6\x31\x44\xa4\x88\x04\x80\xf8\xc0\x0d\x78\x40\xcf\x04\x30\x03\x62\xe2\xe1\x45\x61\x4c\x99\xb8\xf9\x40\x9c\xfe\x32\x15\x04\xec\xa1\xca\x03\x72\x88\x31\x13\x70\xe3\x25\x58\x18\x3f\xc9\x29\xfe\x00\xd7\x6f\xc0\xf5\xf8\xf8\x38\xcb\x2e\xe2\x46\x57\xf7\x2b\x42\x94\x01\x72\x04\x84\x01\xde\x9e\xb3\x95\x7e\x41\xf4\xdb\x55\x2f\x57\x8a\xab\x86\x5c\x2e\x5e\xc4\xa6\x0d\xe7\x6f\x37\xa9\x14\xce\xe7\xe2\x62\x2e\x5e\x63\x88\xfc\x0e\x48\x8f\x1f\x0a\xe8\x17\xe8\xa4\x3b\xa0\x82\x77\xbd\xc4\x0d\x75\x6d\x31\x12\x97\xdb\x9a\x1a\xc4\x45\x55\x16\x5f\xc8\x59\xea\x2d\x1c\x45\xe8\x76\x86\xdf\x1b\xf4\x8c\x02\x57\xfb\x26\xc6\x36\xff\xed\x77\xf4\xd3\x17\x2f\xf1\xe3\x9f\xff\xc2\x8f\xd9\x0c\x3f\x9e\x3f\xcf\xf7\x85\x8e\x9c\xa2\xd4\x27\xc2\x1d\xe5\xae\x8c\x6e\xf8\x96\x82\xdc\x1b\x40\xfd\xf1\x7b\x70\xc9\x01\xab\x56\xe6\x8b\x16\x0d\x89\xb4\x32\x55\xe3\x47\xb6\xf8\xfd\xff\x67\x49\xca\x9e\x61\x54\x8a\xc5\x42\x39\x48\x17\x60\x44\x09\x71\x7c\x1e\xe6\x89\x50\x3b\xf1\x31\x85\x8b\x33\xdb\x05\x43\x38\xec\xc7\x21\x1f\x75\x34\x27\x56\x0a\x0d\xb3\x08\x13\xd8\x2e\x30\x0f\x8d\x21\xf2\xcf\xc2\xa8\x51\x72\x62\x82\x78\x41\xe3\x5e\x3a\x50\x7a\x82\x04\x07\xf8\x30\xa8\x22\xed\xf9\x51\xc3\x50\x47\xc9\x1a\x0c\x99\xfc\xb8\x13\xff\xd4\x57\x98\x2e\x36\xc2\x44\xc9\x68\x0f\x9f\x11\xf1\xcc\x22\xfb\x6f\x00\x00\x00\xff\xff\x9f\x8c\xb4\x7a\x32\x1d\x00\x00") func runtimeHelpHelpMdBytes() ([]byte, error) { return bindataRead( @@ -255,12 +256,32 @@ func runtimeHelpHelpMd() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "runtime/help/help.md", size: 7354, mode: os.FileMode(420), modTime: time.Unix(1465426148, 0)} + info := bindataFileInfo{name: "runtime/help/help.md", size: 7474, mode: os.FileMode(420), modTime: time.Unix(1466618071, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _runtimePluginsGoGoLua = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x94\x52\xdf\xca\xd3\x30\x14\xbf\xef\x53\x1c\x02\x42\xa2\xb5\x0f\x50\xd8\x85\x0e\xdc\xd5\x98\xa8\x78\x23\x0a\xb1\x3d\x6d\x83\x69\x52\x92\xd4\x29\xe2\xbb\x7b\xd2\x76\xb5\xed\xfa\xf1\xb1\xdc\x6c\x3d\xf9\x9d\xdf\x3f\xa2\x2a\x38\x61\xb8\x74\x41\x59\xc3\x59\x6d\x55\xdb\x59\x17\x3c\x13\x70\x38\x80\x51\x1a\x42\x83\x26\x01\x3a\x6f\xca\xf2\x1e\x96\x42\x25\xb5\x47\x91\xa0\x29\x93\x2d\x57\xd5\x86\xe7\x78\x22\x24\x85\xe0\xfa\x89\x22\x39\xcb\x1f\x78\xb4\x6d\x2b\x4d\xb9\xd6\xa1\x8f\x6c\x61\x6f\x0b\x1c\x89\x46\xd0\xa0\x9b\x24\x55\x6f\x8a\xa8\x03\xd6\x7c\x94\x3f\x91\x8b\x41\x9e\x4c\x1e\x7b\xf7\x59\xe1\x95\x8b\xec\x6d\x5f\x65\xef\x94\xc6\x4f\xbf\x3b\x8c\x46\xd9\xc9\xb2\xff\x4e\x27\xf8\x13\xfd\xac\x60\xf1\xcc\x97\x93\x52\x3c\x48\xe5\xec\xd7\xb2\xb3\x4e\x17\xcb\x55\xaa\xe3\xf6\x3b\x54\x33\xe7\x59\x22\xe7\x2c\xf9\x22\xa3\xb6\x85\xd4\xd0\x50\x35\x9a\x62\x81\xb2\x59\x67\x3b\xbc\x89\xc3\xeb\x2b\x30\xc8\xb2\x4d\x0f\xef\x65\x68\x96\xeb\x0e\x7d\xaf\x03\xad\x8f\x3c\xb9\x43\x49\x4d\xbf\x94\x6c\x04\x4d\xd3\x42\x5b\x1f\x65\x37\x66\x3e\xe0\x25\x0a\x8a\x3b\xe7\xeb\x8a\x1e\x75\x3f\x6d\x3f\x9a\xc0\x77\x5a\x05\x7e\x97\x83\xde\x4b\xfe\x58\x9a\x38\x6e\xd1\x7b\x34\x35\xba\xfc\x4c\xff\x64\x8d\x7c\xcf\xc5\x3a\xf7\x68\xc0\x07\x97\x82\xc7\x6e\xd7\xe3\x9f\xbf\xab\x69\x8d\xbf\x68\xc8\x19\xff\xf2\xed\x85\xff\xfa\x4a\x30\x91\x57\xd6\xb5\x92\x58\x6e\x04\xf4\x0d\x28\x8b\x06\x14\x09\x04\x97\xd7\x74\x5b\x34\x7c\xd8\x15\x50\xda\xf9\x25\x05\xf9\x5d\x63\xa6\x8c\x47\x17\xf8\x28\x98\x0e\x9b\x22\x59\x3e\x34\x87\xa1\x77\x66\x72\x34\x04\xf8\x17\x00\x00\xff\xff\x9b\x88\x7c\xa9\x1d\x04\x00\x00") +var _runtimePluginsAutocloseAutocloseLua = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xb4\x55\x6f\x6b\xdb\x3e\x10\x7e\xef\x4f\x71\xb8\x2f\x62\xd3\x38\xe0\xdf\xcb\x42\x7e\xb0\x76\x63\x14\xca\x36\xca\xd8\x1f\x52\x53\x14\xf9\x12\x8b\xba\x52\x90\x25\xa7\xa3\xf4\xbb\xef\x64\x27\x8e\x9d\x28\xa5\xdd\x56\x07\x1c\xc9\xf7\xe7\x79\x9e\xd3\xf9\xbc\x44\x73\x8f\x86\x19\x36\x2f\x31\x1a\x8d\xe2\xc9\xed\xad\x90\x39\x3e\xc0\x14\x16\x56\x72\x23\x94\x8c\x2a\xa3\xc7\x22\x06\x8d\xc6\x6a\x09\xb4\x13\x72\x39\xa9\xec\xbc\x35\x38\x13\xca\x3c\x08\xc4\x02\x3e\xa2\xf9\xbc\x6a\x62\x42\x66\x8d\xe2\xa5\xaa\x30\x8c\x61\x3a\x05\x29\x4a\x30\x05\xca\x00\xe8\x7a\x97\xe7\x87\x6e\x63\x30\xda\x62\x1c\x34\xb9\x4a\xc5\x59\x09\x9d\xf1\x0b\x13\xba\x22\x4a\x8f\xe1\x0d\xfd\xc8\x35\x1c\x8d\xdc\x3d\x8a\xdd\xfd\xf1\xc9\xdd\x67\x59\xf8\xd4\x8b\xfb\x84\xeb\x52\xc8\x5e\xe4\x81\x6f\xb0\x15\x08\x4a\x5e\x5b\x89\x91\x8e\x1b\x76\xa4\x43\x2a\x73\x4c\x4b\x27\xc2\x5d\x6d\x49\x9a\x6d\x43\xdb\x2d\x5a\x0a\x35\x61\x5e\x58\xfd\x4d\xe0\x3a\x6a\xd3\x2e\x94\x06\x41\x4f\xd3\x31\x9c\xec\x09\xcb\x55\x97\x91\xc0\xb5\xab\xd7\xd0\x63\x26\xb2\xd9\x7f\xd9\x10\x7b\x87\xc5\xad\xbe\x22\xa9\x94\xbb\x9e\x9c\xdb\xc5\x99\xdb\x44\xf5\x84\xe0\x2b\xa5\x27\x3f\xe3\x60\x10\x43\x08\x9b\x80\x59\xe7\xf3\xe3\x34\xcd\x5e\x8e\xea\xae\xfa\xec\x9c\xf1\xbb\x6a\xc5\x38\x6e\xf4\x0d\xad\x6d\xe2\x6b\xb1\x2c\x8c\xc7\x3e\xd7\xc8\xee\x06\x4f\xbb\xf2\xf5\x68\xee\xe8\xc1\xff\x90\x02\x93\x39\x44\x97\xd5\x77\xa5\xf3\x8b\x82\xe9\xe8\x50\x45\x92\x66\x31\x50\x99\xbd\x16\xbf\x3e\x17\xe1\x15\xe8\xa7\xe8\x5b\x1f\x3f\xb2\xf4\xdf\x1d\x59\xaf\x16\x04\x75\xb2\x8d\x27\xb1\xae\x57\x9f\xad\xca\xe9\x51\x8d\x49\xe2\x9e\xc3\x28\x19\x41\x81\x1a\x41\x54\x60\x14\xe4\xb4\x5c\xa0\xe4\xd8\x18\x57\x4a\x48\x83\xda\x19\xba\x94\x57\x8a\xc3\xba\x10\xbc\x70\x11\x4e\xf6\x3d\x33\x82\x64\x95\xbf\xe0\x9e\xe5\xe8\xc3\x59\x13\x3e\x70\x25\x6b\xd4\x86\xc6\x07\x2c\x95\x1b\x24\x96\x9b\x06\xb2\xb4\xcc\x17\x74\x69\x40\x22\xe6\x8d\xcb\x1c\x37\xc4\xb4\xa3\x96\xd3\x9e\x33\x5b\xb5\x1c\xbb\x17\x19\x1f\x56\xe8\x52\x32\xaa\x8a\xec\xa8\xb7\x40\x87\x4d\xda\x54\xfe\x52\x56\x44\x29\x4a\xfa\xe2\xc6\xde\x17\xe1\xa5\x6d\xbc\xbf\x76\xff\x4d\x7b\xf7\xe6\x4d\x8b\xfa\xc1\xd1\x8b\xde\x74\xea\xbc\xb0\xdd\x76\xae\x25\xab\xcc\x73\xbe\x49\xba\x97\xd8\x8d\x4e\x72\xde\xc6\xcd\x4e\xb6\xab\xac\xe7\x27\xf1\xc1\x6c\x1c\xb7\x0d\x9a\x66\x81\x77\x2e\x0e\x06\xf7\x70\x32\x76\x68\xd3\x83\x11\x7f\xec\x75\x73\x65\xed\xb0\xfd\x61\xc7\x47\x5c\x7b\x4a\x5f\xd9\xdc\x37\xe2\x9e\xe9\x9e\xf0\x46\x86\xf1\x1f\xf5\xc5\xfe\x50\x7d\x83\xae\x78\xc5\xc7\xe8\x15\xcd\xb3\x3b\xa1\xbf\xf9\xb2\xd4\x67\xef\xb1\x44\xd3\xff\xa4\xec\x57\xeb\x77\x00\x00\x00\xff\xff\xcb\x24\xdd\xd1\xb1\x08\x00\x00") + +func runtimePluginsAutocloseAutocloseLuaBytes() ([]byte, error) { + return bindataRead( + _runtimePluginsAutocloseAutocloseLua, + "runtime/plugins/autoclose/autoclose.lua", + ) +} + +func runtimePluginsAutocloseAutocloseLua() (*asset, error) { + bytes, err := runtimePluginsAutocloseAutocloseLuaBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "runtime/plugins/autoclose/autoclose.lua", size: 2225, mode: os.FileMode(420), modTime: time.Unix(1466617977, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _runtimePluginsGoGoLua = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xa4\x52\xdd\x4a\xe4\x30\x14\xbe\xef\x53\x1c\x02\x0b\xc9\x6e\xb7\x0f\x50\x98\x8b\xdd\x81\x9d\xab\x65\x44\xc5\x1b\x51\x88\xed\xe9\x34\x98\x26\x25\x49\x1d\x45\x7c\x77\x4f\x7f\xa6\xb6\x9d\x11\x19\xcc\x4d\x69\xf2\x9d\xef\x8f\xa3\x0a\xd8\x60\xd8\xd6\x41\x59\xc3\xd9\xce\xaa\xaa\xb6\x2e\x78\x26\x60\xb5\x02\xa3\x34\x84\x12\x4d\x04\x74\xfe\xe4\xf9\x31\x2c\x86\x42\x6a\x8f\x22\x42\x93\x47\x4b\xae\xa2\x0a\x5f\xf1\xb4\x90\x18\x82\x6b\x06\x8a\xe8\xbf\x7c\xc4\xb5\xad\x2a\x69\xf2\xb9\x0e\xfd\x24\x13\x7b\x4b\x60\x4f\xd4\x83\x3a\xdd\x28\x2a\x1a\x93\xb5\x3a\x60\xcd\x95\x7c\x42\x2e\x3a\x79\x32\xb9\x6e\xdc\x8d\xc2\x3d\x17\xc9\xdf\xa6\x48\xfe\x29\x8d\xd7\x2f\x35\xb6\x46\xd9\xc6\xb2\x0f\xa7\x03\xfc\x93\x7e\x66\xb0\xf6\x8c\x8f\x83\x52\x7b\x90\xca\x39\x5d\xcb\x89\x71\x7a\x98\x8e\x52\x1d\x87\x6f\x57\xcd\x98\x67\x8a\x1c\xb3\xa4\x93\x8c\xda\x66\x52\x43\x49\xd5\x68\x8a\x05\xca\x26\xb5\xad\xf1\x20\x0e\xbf\xf7\xc0\x20\x49\x16\x3d\x5c\xc8\x50\x4e\xc7\x1d\xfa\x46\x07\x1a\xef\x79\x52\x87\x92\x9a\xfe\x29\x59\x0f\x1a\x6e\x33\x6d\x7d\x2b\xbb\x30\x73\x89\xdb\x56\x50\x1c\x39\x9f\x57\x74\xae\xfb\x61\xfa\xdc\x04\xbe\xd6\x2a\xf0\xa3\x1c\xb4\x2f\xe9\x77\xd2\xf4\xb4\x3e\xb8\x18\x3c\xd6\x27\x95\x5f\xdf\x66\xb7\x3b\x7c\xa6\x4b\xce\xf8\xed\xfd\x0f\x7f\xf7\x4b\x30\x91\x16\xd6\x55\x92\x58\x0e\x04\xf4\x0f\x28\xb3\x12\x14\x09\x04\x97\xee\xe8\x35\x2b\x79\x37\x2b\x20\xb7\xe3\x7e\x04\xf9\xa0\x31\x51\xc6\xa3\x0b\xbc\x17\x8c\xbb\x49\x11\x4d\xd7\xc7\x61\x68\x9c\x19\x1c\x75\x01\xde\x03\x00\x00\xff\xff\xe4\x63\xe9\xa5\xf3\x03\x00\x00") func runtimePluginsGoGoLuaBytes() ([]byte, error) { return bindataRead( @@ -275,7 +296,7 @@ func runtimePluginsGoGoLua() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "runtime/plugins/go/go.lua", size: 1053, mode: os.FileMode(420), modTime: time.Unix(1466545678, 0)} + info := bindataFileInfo{name: "runtime/plugins/go/go.lua", size: 1011, mode: os.FileMode(420), modTime: time.Unix(1466545728, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -2077,6 +2098,7 @@ var _bindata = map[string]func() (*asset, error){ "runtime/colorschemes/solarized-tc.micro": runtimeColorschemesSolarizedTcMicro, "runtime/colorschemes/solarized.micro": runtimeColorschemesSolarizedMicro, "runtime/help/help.md": runtimeHelpHelpMd, + "runtime/plugins/autoclose/autoclose.lua": runtimePluginsAutocloseAutocloseLua, "runtime/plugins/go/go.lua": runtimePluginsGoGoLua, "runtime/plugins/linter/linter.lua": runtimePluginsLinterLinterLua, "runtime/syntax/Dockerfile.micro": runtimeSyntaxDockerfileMicro, @@ -2218,6 +2240,9 @@ var _bintree = &bintree{nil, map[string]*bintree{ "help.md": &bintree{runtimeHelpHelpMd, map[string]*bintree{}}, }}, "plugins": &bintree{nil, map[string]*bintree{ + "autoclose": &bintree{nil, map[string]*bintree{ + "autoclose.lua": &bintree{runtimePluginsAutocloseAutocloseLua, map[string]*bintree{}}, + }}, "go": &bintree{nil, map[string]*bintree{ "go.lua": &bintree{runtimePluginsGoGoLua, map[string]*bintree{}}, }}, diff --git a/runtime/help/help.md b/runtime/help/help.md index f06f717b..11a63e94 100644 --- a/runtime/help/help.md +++ b/runtime/help/help.md @@ -227,6 +227,10 @@ Default plugin options: default value: `on` +* `autoclose`: Automatically close `{}` `()` `[]` `""` `''`. Provided by the autoclose plugin + + default value: `on` + * `goimports`: Run goimports on save. Provided by the `go` plugin. default value: `off` diff --git a/runtime/plugins/autoclose/autoclose.lua b/runtime/plugins/autoclose/autoclose.lua new file mode 100644 index 00000000..26a73249 --- /dev/null +++ b/runtime/plugins/autoclose/autoclose.lua @@ -0,0 +1,78 @@ +getmetatable('').__index = function(str,i) return string.sub(str,i,i) end + +if GetOption("autoclose") == nil then + AddOption("autoclose", true) +end + +local autoclosePairs = {"\"\"", "''", "()", "{}", "[]"} +local autoNewlinePairs = {"()", "{}", "[]"} + +function onRune(r) + if not GetOption("autoclose") then + return + end + + local v = CurView() + for i = 1, #autoclosePairs do + if r == autoclosePairs[i][2] then + local curLine = v.Buf:Line(v.Cursor.Y) + + if curLine[v.Cursor.X+1] == autoclosePairs[i][2] then + v:Backspace() + v:CursorRight() + break + end + + if v.Cursor.X > 1 and (IsWordChar(curLine[v.Cursor.X-1]) or curLine[v.Cursor.X-1] == autoclosePairs[i][1]) then + break + end + end + if r == autoclosePairs[i][1] then + local curLine = v.Buf:Line(v.Cursor.Y) + + if v.Cursor.X == #curLine or not IsWordChar(curLine[v.Cursor.X+1]) then + -- the '-' here is to derefence the pointer to v.Cursor.Loc which is automatically made + -- when converting go structs to lua + -- It needs to be dereferenced because the function expects a non pointer struct + v.Buf:Insert(-v.Cursor.Loc, autoclosePairs[i][2]) + break + end + end + end +end + +function onInsertEnter() + if not GetOption("autoclose") then + return + end + + local v = CurView() + local curLine = v.Buf:Line(v.Cursor.Y) + local lastLine = v.Buf:Line(v.Cursor.Y-1) + local curRune = lastLine[#lastLine] + local nextRune = curLine[1] + + for i = 1, #autoNewlinePairs do + if curRune == autoNewlinePairs[i][1] then + if nextRune == autoNewlinePairs[i][2] then + v:InsertTab() + v.Buf:Insert(-v.Cursor.Loc, "\n") + end + end + end +end + +function onBackspace() + if not GetOption("autoclose") then + return + end + + local v = CurView() + + for i = 1, #autoclosePairs do + local curLine = v.Buf:Line(v.Cursor.Y) + if curLine[v.Cursor.X+1] == autoclosePairs[i][2] then + v:Delete() + end + end +end