diff --git a/cmd/micro/buffer.go b/cmd/micro/buffer.go index bcce4283..d9d78fda 100644 --- a/cmd/micro/buffer.go +++ b/cmd/micro/buffer.go @@ -269,7 +269,14 @@ func (b *Buffer) SaveAs(filename string) error { b.UpdateRules() b.Name = filename b.Path = filename - data := []byte(b.String()) + str := b.String() + if b.Settings["eofnewline"].(bool) { + end := b.End() + if b.RuneAt(Loc{end.X - 1, end.Y}) != '\n' { + b.Insert(end, "\n") + } + } + data := []byte(str) err := ioutil.WriteFile(filename, data, 0644) if err == nil { b.IsModified = false @@ -352,6 +359,15 @@ func (b *Buffer) End() Loc { return Loc{utf8.RuneCount(b.lines[b.NumLines-1]), b.NumLines - 1} } +// RuneAt returns the rune at a given location in the buffer +func (b *Buffer) RuneAt(loc Loc) rune { + line := []rune(b.Line(loc.Y)) + if len(line) > 0 { + return line[loc.X] + } + return '\n' +} + // Line returns a single line func (b *Buffer) Line(n int) string { if n >= len(b.lines) { diff --git a/cmd/micro/runtime.go b/cmd/micro/runtime.go index 66b4dcf4..a0dd67e8 100644 --- a/cmd/micro/runtime.go +++ b/cmd/micro/runtime.go @@ -460,7 +460,7 @@ func runtimeHelpKeybindingsMd() (*asset, error) { return a, nil } -var _runtimeHelpOptionsMd = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x8c\x58\xdf\x8f\xdc\xb6\x11\x7e\x3e\xfe\x15\x83\x73\x80\xf3\x19\x7b\x3a\x23\xf5\x43\xb0\x6f\xd7\xba\xbd\x18\xa8\xe3\xa0\xf1\x43\x82\xa2\x08\x29\x69\xb4\x62\x4d\x91\x2a\x49\xed\x7a\x1d\xb8\x7f\x7b\x31\x43\x72\xa5\xdd\x53\xae\x79\x5b\xf1\xc7\xcc\xf0\xe3\xcc\x37\x1f\xf7\xc5\x8b\x17\xf0\x61\x8c\xda\xd9\x20\xc4\x7b\xdd\x78\x07\x21\x3a\x8f\x01\x94\x31\xe0\x3a\x88\x3d\xc2\x14\xd0\x43\xe3\x6c\xa7\x77\x93\x57\xb4\x18\xb4\x05\x1d\xc3\xc5\x60\xab\x3d\x36\xd1\xf9\x63\x55\x6c\x4d\x01\x03\x9b\x90\xdf\xfc\xfc\xf6\xf1\xd7\xbf\x7c\xf8\xe1\x6f\xef\x1e\x7f\xfd\xfe\xc3\xfb\xbf\xde\x0f\xb4\x40\x82\x4a\xf3\xbf\x67\x08\x1e\x02\x8c\xe8\x05\xad\xf9\xf9\xed\x23\x84\x11\x9b\x0d\xe8\xee\xa9\x41\x09\x3a\x80\x75\x11\x02\xc6\x0d\xc8\xff\xde\x57\xc9\x66\x71\xa4\x03\x45\xd3\x92\x43\x31\x7b\x3c\x8b\xf9\x7b\xf4\x08\xca\x23\x47\xe4\x12\x2a\x10\x7b\x15\xe1\xe8\x26\x68\x94\x25\xdb\x5b\x21\x5e\x81\x6c\x9c\x71\x3e\x34\x3d\x0e\x28\xb7\x60\x9c\x6a\xcb\x39\x4e\xe3\x09\xc8\x96\xa0\x12\x00\xf0\xcd\xcb\xe4\xf1\xad\xf6\xb7\xf7\x8b\x65\xe1\x5e\x26\x57\xb2\xe2\x48\x69\xed\xc7\x5e\x07\xf2\x15\xb5\xdd\x51\xe0\x72\x67\x5c\xad\x0c\x38\x6b\x8e\xb2\x12\xe2\xaa\xc5\x4e\x4d\x26\xc2\x5e\x99\x09\xb7\x20\xf3\xb7\x14\x57\x3f\xb8\x88\x29\x66\x0a\xa7\xac\x5b\xfa\x83\x97\x79\x74\x03\xc1\x19\xe5\xf5\x17\x6c\x37\xa0\x6c\x3b\x7f\xde\xc5\xe6\x56\x5c\x11\x12\x04\xa8\x71\x8d\x8a\xe9\x20\xa7\x23\x6c\xa0\xc6\x46\x4d\x81\xb1\x3a\x32\x68\x38\xd4\xd8\xb6\x69\x1d\xf9\xe6\xd3\x40\xad\xad\x62\x70\xaf\x3e\x5e\xc0\x43\x78\xd6\x08\x01\x0d\x36\x64\xbe\xf3\x6e\xe0\xac\xa3\xcd\x9d\x36\x18\x8a\x25\x71\x75\x71\x9b\xe7\xf8\x2d\xd3\x25\xa5\x5d\xe3\xe8\x9c\xf5\xf1\x74\xfe\x83\x8e\x3d\xc4\xde\x23\x8a\xab\xe5\xde\xad\x20\xb8\xe1\x97\x7c\xbd\x1e\x55\x0b\x83\xa3\x2c\xa8\xdd\x14\xd3\x11\x6e\xc2\x39\x7c\x39\xa8\x9c\x02\x12\x7a\x34\x23\x44\x37\xea\x86\x6d\xbd\x94\x3c\x90\x67\x6f\xab\x39\x5d\x1a\x67\xa6\xc1\xca\x2d\xa5\x6f\xa4\x1b\x9e\x13\x16\xa2\x83\xd7\x1b\xd0\x14\xa9\x31\xd0\xea\x30\x1a\x75\x04\x05\x69\x0f\xe4\xeb\xa4\xec\xd7\x9d\xc6\x96\x3c\xa5\xa9\x2a\x25\x4b\xca\xee\x6e\x32\x64\x9c\xb2\xf5\xa0\x6c\x2c\xbb\xbf\x7b\x4d\xf6\x6b\x84\x5e\xef\x7a\xa3\x77\x3d\xc1\xcd\xb6\x94\x81\xce\x79\xc0\xcf\x6a\x18\x0d\xae\x65\xd6\x6b\xc9\x07\x88\xaa\x0e\xfa\x0b\xe5\x7a\xc0\x98\x52\x3d\xaa\x1a\x68\x8c\x6c\x97\x14\x5e\x31\xf0\x26\x19\xd0\xb6\x45\x1b\x9b\x5e\xf9\xa5\x8d\x34\x9a\x8a\x9e\xe6\x54\x13\xd1\xaf\x18\x81\x62\xa4\x73\x35\x5b\x40\xab\x6a\x93\xb9\xc5\x68\x8b\x05\xa1\xda\xc5\xe8\x86\x42\x5c\xd8\xea\xe8\x3c\x1c\x7a\x2a\xec\x01\x43\x50\x3b\x62\x36\x8f\x30\x7a\x6d\x23\xb6\xd5\xa9\xda\xd2\x01\xfe\x50\xb1\xf1\x39\x5f\x81\xa4\x1c\x8d\xc7\xf1\x0c\x94\x32\xc6\xb0\x32\x21\x4c\xde\xa3\x8d\x50\x4f\x5d\x87\xbe\x7a\x5a\xda\x54\x5d\xd9\x59\x4a\xc6\x0b\x77\x9c\x29\x9c\x15\x35\x82\x9a\xa2\x1b\x54\xd4\x8d\x32\xe6\xc8\x89\xd3\xe2\x88\xb6\x25\x63\xce\x9e\x22\xe0\x0c\xe8\xd5\x9e\x58\x0c\x6d\x82\x6e\x67\x9d\xc7\x46\x05\x0a\x77\x44\xdf\x39\x3f\x00\x7d\xde\x69\x1b\xd0\x06\x1d\xf5\x9e\x8a\x51\xf9\xa6\xc7\xb0\x76\xea\xae\x4b\xc7\x0e\x47\x1b\xd5\x67\xb9\x85\x38\x79\x1b\x20\x7d\x92\x77\xe7\xc1\x75\xdd\x33\x80\x51\x12\x45\x17\x46\xd5\x60\x90\x5b\x4a\x58\x48\x1f\xa0\x6d\x88\x54\x7b\x74\x6f\xaa\x7e\xd6\x3d\x41\x90\xd2\x46\x6e\xe9\x66\x2d\x34\x1e\x15\xc3\xa9\xc0\xe2\x21\xa5\x43\x66\x26\x08\x6a\x38\xcf\xb2\xdc\x6f\x08\xe9\xd1\xe3\x5e\xbb\x29\xf0\x8e\x67\xc2\x6e\x26\x1f\x9c\xa7\x45\x72\x3b\x97\xd0\x9c\x7a\x27\xb6\x4d\x0b\xe9\x56\x53\x87\x54\xd0\x6a\xba\x75\xb4\x99\x81\xc9\xeb\xcb\x53\x9b\xa0\x85\x2d\x76\xda\x62\x4b\x5c\x75\xd9\x3e\xe8\x0e\x29\x55\xa7\xa0\xed\xee\xf6\x99\xf8\xfc\x64\x90\x6a\xa2\xb0\x06\x07\x65\xa7\xa1\x46\xbf\x8a\x64\xde\x16\xa2\x8a\x53\xc8\xc7\x2a\x7b\x19\x33\x9e\x78\xa6\xac\x42\xe3\x91\xd2\xea\xf7\x4d\xab\x3d\x26\x30\xe4\x16\x3c\x0e\xd4\x1a\x4a\x19\x2e\x80\x3a\xa8\x00\x46\x85\x08\x51\x0f\x38\x27\x2f\x0d\x53\xde\x52\xb3\xb6\x4c\x75\xe3\x14\x89\x1b\x23\x1b\xe0\x3b\x27\x70\x68\xcd\xbc\x4b\xed\x94\x5e\x8d\xe9\x94\xb7\x6a\x8f\x93\x6d\x5d\x49\x9b\x78\x5e\xf6\xce\x6e\x80\xa6\xe9\x37\x2d\x6d\x01\xf7\x68\x41\x75\x11\x7d\xea\xff\xc6\x05\x04\xc5\xde\x28\xa8\xe0\x0a\xd7\xe6\x19\xdb\x82\x47\x0e\x2a\x2d\xda\x9c\x64\xc3\x27\xc4\x91\x8d\x6b\xbb\x7b\x36\xc4\xc6\x3b\x63\x06\xe5\x77\x9a\xfa\x84\x1a\xdc\x64\x23\xa1\x4e\x77\x11\x12\xaf\xbb\xc9\xb4\x60\xf4\x27\xe6\xdd\x80\xdc\xaa\xf6\xc9\x7b\x8d\xc6\x1d\x16\x00\xaf\xb8\xfa\xd3\xd2\x51\x18\x11\xdb\x15\x3f\x64\x98\x17\x30\x8b\x39\x8b\xe5\x93\x10\x89\x2b\x56\xbf\xcd\x56\x5d\x17\x0f\x5e\x8d\x44\x88\x3d\xc7\x99\x34\x00\x8d\x15\xd3\x54\x2b\x2c\xb1\x9c\x03\xe3\xec\x8e\x9c\x75\x3a\x16\xf6\x2a\xa9\xb5\x42\x84\xe7\x14\x40\x57\x24\xb7\xc5\x01\xd1\x23\x8d\xa4\x64\x65\xaa\xa5\x60\xfd\x11\xbe\x83\x80\x8d\xb3\x6d\x38\xe7\x4e\x26\xfe\x24\x16\x94\x09\xd9\xc2\x05\xbb\xaa\x0c\xeb\x7f\x26\xea\xcb\x25\xeb\xf0\xb3\x4e\x7a\x82\x04\x82\x0a\x9f\xb4\xdd\xb1\xb1\x3f\x93\xa2\xf1\xdc\x82\x79\x2d\x97\x6d\x4a\xb2\x0e\x55\x9c\x3c\xce\x9a\x89\xec\x0c\x4c\x22\xaa\x69\x34\x93\xd3\xec\x31\xe5\x0e\x99\x74\x7b\xf4\x07\xaf\x99\xdb\x0e\x04\xdc\x21\xb1\x97\x47\xa8\xb1\x73\x7e\xb5\x61\x9f\x50\x1a\xcd\xb4\xd3\xb6\xe9\x95\xb5\x68\x88\x6f\x1b\x67\xa3\xd2\x36\x9c\x44\x56\x99\x3b\xe9\x9c\xb4\x05\x06\x65\xd5\x8e\x0a\x96\x61\xe5\x96\x40\xe1\x50\x32\xa4\x15\x44\xd8\x15\x3c\x14\x03\x5c\x32\x7a\x18\x0d\x29\x16\xa3\x03\xa7\xd2\x8d\xc7\xd1\x05\xea\xbf\xc7\x1b\xf8\x77\x70\x36\x6b\xba\x43\xaf\x9b\xbe\xc4\x42\x66\x07\x8c\xaa\x55\x51\x65\xcd\x45\x81\xed\x34\x95\x5e\xf2\x55\xc1\x4f\x98\xee\x55\xfe\x98\xc2\x7b\x9f\xc2\x93\x74\xb3\x5c\xbd\x99\x96\xf2\x89\x9f\x48\x32\x8a\x9b\x45\x1d\xc9\x07\x3f\x70\x1f\xa8\xd6\x53\xac\x8f\x71\x0c\xdb\xfb\xfb\x9d\x8e\xfd\x54\x57\x8d\x1b\x92\xe0\xbc\x4b\x4a\xe2\x3e\x79\xb8\xcb\xe7\x5e\xe2\xcc\xa7\x5d\x03\x79\xc6\x41\x63\xb8\xf9\x03\x50\x53\xbc\x4c\x7a\x67\x50\xcf\x68\x92\x8b\xa0\x43\x0c\x74\x6e\x05\x92\x66\x2a\x02\x58\x66\xfa\x5c\x02\x1c\x66\x78\x09\x06\xc5\xc4\xa5\xed\xce\x60\x81\x77\x1d\x08\x12\x5c\x77\x77\x77\x42\xbc\xcd\x13\x39\xde\xfc\x2a\xda\x9e\xea\x90\xb9\x4f\x6e\xe1\xe1\xac\x76\x12\x23\xca\xdf\xbe\x4a\x90\x2f\x6f\x25\xc8\x7f\xfe\x4b\x82\xbc\xbe\x96\x20\x6f\x6e\x64\x05\x3f\x7a\xb7\xd7\xed\xdc\xf7\x16\xa6\xb2\xa7\x67\xba\x8b\x21\xe9\xe6\x9f\xf8\xa4\xe1\xc2\xec\xb9\x27\x14\x2a\x5f\x71\x98\x8d\xfc\x1f\x6f\x0f\xf6\x58\x5a\x04\xd5\x2c\x09\xae\x2c\xff\x8b\xb4\xcc\xc2\x2c\x75\x8c\xe8\x66\xdf\xe2\xf2\xcd\x92\x45\x5f\xe0\xbb\x82\xe0\x36\x64\x0a\xbb\x0e\x9b\xc8\x9d\xe2\xf2\x89\x9d\x2e\x33\xdb\x17\x2c\x72\xe8\x95\xe4\xb8\x1b\x55\xf0\x8e\x7b\xcf\xcd\xdc\x0b\xa2\xfa\x84\x6b\x76\xf8\xed\x43\xd1\x47\x07\xca\x3a\xe2\x0f\x31\xa8\xa6\xd7\x16\x37\xa5\x6c\x1b\x37\xe6\xde\x7f\x16\x64\x3e\x0f\xef\x81\xbc\xa7\x12\xe2\x05\x3c\x26\x89\x4c\xec\x98\xf4\x6b\xd9\x27\xc4\x2f\xf3\x53\x99\x36\x87\xd9\x26\xa0\x66\x43\x49\x5f\x9b\x23\x09\x46\xde\x6d\x8e\x15\xfc\x3d\xfd\x80\x01\x55\x79\x74\x2f\xe2\x11\x07\x67\x6f\xe2\x19\xd0\x97\x2f\xfc\x73\x7c\x25\xc7\xc6\x66\xca\xa3\x8a\x24\x76\x7a\x70\xd2\x25\x8a\x35\x71\xfe\x53\xd6\xe5\xaa\x24\xfa\x1c\xab\x0e\xcb\x07\x75\x7a\x2f\xe7\xa2\x8d\x8b\xff\x0b\x04\xc9\x3e\xba\x32\xb6\x18\x2a\x21\x3e\xce\x6f\xc5\xf4\x77\xc1\x42\x73\x2c\x5e\x1a\x9b\x1c\x30\x2e\xde\x15\x8b\x95\xf3\x2b\xa1\x82\x8f\x4e\x90\xd3\x39\xc8\x0c\xe2\x86\x55\xaf\x0c\x18\x79\x40\x2e\x55\x35\x8d\xd2\x63\xe6\x5d\x7e\xbc\x5e\x80\x75\x7a\x34\xd0\xcd\x71\x43\x24\xc9\x45\x5e\xca\xdf\x20\xd9\x07\xd5\x4f\x7a\x85\x1e\x93\xe2\xa6\x23\x54\xe9\x9f\x13\x1d\x28\xa6\xfc\x96\xcc\x34\xd4\xab\x70\xa1\xfb\xa9\xd3\x33\x15\x91\xbc\xe0\x8e\x80\x9f\x1b\x1c\x23\x3c\xba\xf4\xcd\x48\x88\xd3\x8b\x13\xde\xac\x2f\xff\xc7\x54\x1f\xd3\xc8\x56\x08\x29\x25\x1d\x44\xfc\xc6\x64\x76\xfd\xaa\xda\xb9\xeb\x2d\xa4\x2f\x1e\x59\x86\x70\xbd\x85\x4e\x99\xc0\x22\x0e\xbe\x6e\xca\x16\x5f\x3f\xdd\xa2\xbf\xe0\xf5\x16\xbe\x3d\x5b\x79\x61\x2a\xfa\x09\x17\x33\x69\xc7\x1b\xf1\x95\x62\x12\xe2\x21\x2c\xfe\x3b\x42\xca\x45\x1d\x58\x50\x20\xa0\x0a\xc7\xa4\xe1\x9e\xa2\x5c\xc4\xc3\xfa\x4d\x55\xe2\x7f\x01\x00\x00\xff\xff\xe9\x41\x65\x2a\xb7\x13\x00\x00") +var _runtimeHelpOptionsMd = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x8c\x58\x5f\x8f\xdc\xb6\x11\x7f\x3e\x7d\x8a\xc1\x39\xc0\xf9\x8c\x3d\x9d\x91\xfa\x21\xd8\xb7\x6b\xdd\x5e\x0c\xd4\x71\xd0\xf8\x21\x41\x51\x84\x23\x69\xb4\x62\x4d\x91\x2a\x49\xed\x7a\x1d\xb8\x9f\xbd\x98\x21\xb5\xd2\xee\x29\xd7\xbc\xad\xf8\xe7\x37\xc3\xdf\xfc\xdf\x17\x2f\x5e\xc0\x87\x21\x6a\x67\x43\x51\xbc\xd7\xb5\x77\x10\xa2\xf3\x14\x00\x8d\x01\xd7\x42\xec\x08\xc6\x40\x1e\x6a\x67\x5b\xbd\x1b\x3d\xf2\x61\xd0\x16\x74\x0c\x17\x8b\x8d\xf6\x54\x47\xe7\x8f\xe5\x84\x35\x06\x0a\x02\xa1\xbe\xf9\xf9\xed\xe3\xaf\x7f\xf9\xf0\xc3\xdf\xde\x3d\xfe\xfa\xfd\x87\xf7\x7f\xbd\xef\xf9\x80\x02\x4c\xfb\xbf\x07\x04\x0f\x01\x06\xf2\x05\x9f\xf9\xf9\xed\x23\x84\x81\xea\x0d\xe8\xf6\x29\xa0\x02\x1d\xc0\xba\x08\x81\xe2\x06\xd4\x7f\xef\xcb\x84\x39\x09\xd2\x81\xb5\x69\x58\x60\x31\x4b\x3c\xd3\xf9\x7b\xf2\x04\xe8\x49\x34\x72\x89\x15\x88\x1d\x46\x38\xba\x11\x6a\xb4\x8c\xbd\x2d\x8a\x57\xa0\x6a\x67\x9c\x0f\x75\x47\x3d\xa9\x2d\x18\x87\xcd\xf4\x8e\xd3\x7a\x22\xb2\x61\xaa\x0a\x00\xf8\xe6\x65\x92\xf8\x56\xfb\xdb\xfb\xc5\xb1\x70\xaf\x92\x28\x55\x8a\xa6\x7c\xf6\x63\xa7\x03\xcb\x8a\xda\xee\x58\x71\xb5\x33\xae\x42\x03\xce\x9a\xa3\x2a\x8b\xe2\xaa\xa1\x16\x47\x13\x61\x8f\x66\xa4\x2d\xa8\xfc\xad\x8a\xab\x1f\x5c\xa4\xa4\x33\xab\x33\x9d\x5b\xca\x83\x97\x79\x75\x03\xc1\x19\xf4\xfa\x0b\x35\x1b\x40\xdb\xcc\x9f\x77\xb1\xbe\x2d\xae\x98\x09\x26\xd4\xb8\x1a\x63\x7a\xc8\xe9\x09\x1b\xa8\xa8\xc6\x31\x08\x57\x47\x21\x8d\xfa\x8a\x9a\x26\x9d\x63\xd9\xf2\x1a\xa8\xb4\x45\x21\xf7\xea\xe3\x05\x3d\xcc\x67\x45\x10\xc8\x50\xcd\xf0\xad\x77\xbd\x78\x1d\x5f\x6e\xb5\xa1\x30\x21\x15\x57\x17\xd6\x3c\xe7\x6f\xe9\x2e\xc9\xed\x6a\xc7\xef\xac\x8e\xa7\xf7\x1f\x74\xec\x20\x76\x9e\xa8\xb8\x5a\xde\xdd\x16\x4c\x37\xfc\x92\xcd\xeb\x09\x1b\xe8\x1d\x7b\x41\xe5\xc6\x98\x9e\x70\x13\xce\xe9\xcb\x4a\x65\x17\x50\xd0\x91\x19\x20\xba\x41\xd7\x82\xf5\x52\xc9\x42\xde\xbd\x2d\x67\x77\xa9\x9d\x19\x7b\xab\xb6\xec\xbe\x91\x2d\x3c\x3b\x2c\x44\x07\xaf\x37\xa0\x59\x53\x63\xa0\xd1\x61\x30\x78\x04\x84\x74\x07\xb2\x39\xd9\xfb\x75\xab\xa9\x61\x49\x69\xab\x4c\xce\x92\xbc\xbb\x1d\x0d\x83\xb3\xb7\x1e\xd0\xc6\xe9\xf6\x77\xaf\x19\xbf\x22\xe8\xf4\xae\x33\x7a\xd7\x31\xdd\x82\x85\x06\x5a\xe7\x81\x3e\x63\x3f\x18\x5a\xf3\xac\xd7\x4a\x1e\x40\xae\xb5\x74\x30\xda\xb2\xbb\x27\xcb\x8a\xa6\x38\x46\xd7\x63\xd4\x35\x1a\x73\x04\x6c\x1a\x40\xc8\x07\x59\xe6\x64\xca\x35\xe4\x16\x4d\xa0\x84\x1e\xb1\x0a\xfa\x0b\x43\x07\x8a\x29\x90\x22\x56\xc0\x6b\x8c\x32\x05\xc8\x0a\xc8\x9b\x04\xa0\x6d\x43\x36\xd6\x1d\xfa\x25\x46\x5a\x4d\x29\x85\xf7\xb0\x8e\xe4\x57\x40\x60\x02\x69\x5d\x25\x08\x64\xb1\x32\x39\x73\xc9\x53\x32\xff\x95\x8b\xd1\xf5\x53\x5a\xa4\x46\x47\xe7\xe1\xd0\x71\xda\xe8\x29\x04\xdc\x71\xde\xf4\x04\x83\xd7\x36\x52\x53\x9e\x62\x39\x3d\xe0\x0f\x85\xb2\xbc\xf3\x15\x28\xa6\x2d\x1e\x87\x33\x52\xa6\x35\x31\x9a\xa4\x9b\xd1\x7b\xb2\x11\xaa\xb1\x6d\xc9\x97\x4f\x13\x07\xc7\x6e\x16\x96\x5c\xfd\x42\x9c\xf8\xa1\x58\xb2\xa2\x0b\x63\xb2\x5b\x36\x34\x90\x6d\x18\xcc\xd9\x93\x06\xe2\x5f\x1d\xee\x39\x47\x92\x4d\xd4\xed\xac\xf3\x54\x63\x60\x75\x07\xf2\xad\xf3\x3d\xf0\xe7\x9d\xb6\x81\x6c\xd0\x51\xef\x39\xd4\xd1\xd7\x1d\x85\xb5\x57\xb7\x6d\x7a\x76\x38\xda\x88\x9f\xd5\x16\xe2\xe8\x6d\x80\xf4\xc9\xd2\x9d\x07\xd7\xb6\xcf\x10\xc6\x4e\x14\x5d\x18\xb0\xa6\xa0\xb6\x1c\x0e\x90\x3e\x40\xdb\x10\x39\xb2\xd9\x6e\x58\x3d\x2b\x9e\x29\x48\x6e\xa3\xb6\x6c\x59\x0b\xb5\x27\x14\x3a\xc5\xb1\x93\x3b\xe4\xbc\x07\x01\xfb\x73\x2f\xcb\xd5\x8c\x99\x1e\x3c\xed\xb5\x1b\x83\xdc\x78\x46\xed\x7a\xf4\xc1\xf9\x1c\x59\xa7\x00\x9d\x5d\xef\x94\xcb\xd3\x41\xb6\x6a\xaa\xbf\x08\x8d\x66\xab\x93\xcd\xf9\x9d\xa5\xbe\x3c\x15\x21\x3e\xd8\x50\xab\x2d\x35\x9c\x09\x2f\x8b\x13\xdb\x90\x5d\x75\x0c\xda\xee\x6e\x9f\xd1\xcf\x8f\x86\x38\x26\xa6\x9c\x24\x4a\xd9\xb1\xaf\xc8\xaf\x32\x99\xaf\x85\x88\x71\x0c\xf9\x59\xd3\x5d\xe1\x4c\x36\x9e\x09\xab\x50\x7b\x62\xb7\xfa\x7d\x68\xdc\x53\x22\x43\x6d\xc1\x53\xcf\x85\x67\x0a\xc3\x05\x51\x07\x0c\x60\x30\x44\x88\xba\xa7\xd9\x79\x79\x99\xfd\x96\x5b\x01\x2b\x89\x74\x18\x23\x67\xde\x28\x00\x62\x73\x26\x87\xcf\xcc\xb7\x70\x87\x7a\x55\xa7\x93\xdf\xe2\x9e\x46\xdb\xb8\xc9\x6d\xe2\x79\xd8\x3b\xbb\x01\xde\xe6\xdf\x7c\xb4\x01\xda\x93\x05\x6c\x23\xf9\xd4\x5d\x18\x17\x08\x50\xa4\xb1\x52\xc1\x4d\x99\x3c\xef\xd8\x06\x3c\x89\x52\xe9\xd0\xe6\xd4\x94\x7c\x22\x1a\x04\x5c\xdb\xdd\xb3\x2a\xd6\xde\x19\xd3\xa3\xdf\x69\xae\x42\xd8\xbb\xd1\x46\x66\x9d\x6d\x11\x52\xd5\x70\xa3\x69\xc0\xe8\x4f\x92\x77\x03\x49\x21\xdc\x27\xe9\x15\x19\x77\x58\x10\xbc\x22\xea\x4f\x4b\x41\x61\x20\x6a\x56\xe4\x30\xb0\x1c\x90\x2c\xe6\x2c\x4d\x9f\xcc\x48\x5c\x41\xfd\x36\xa3\xba\x36\x1e\x3c\x0e\x9c\x10\x3b\xd1\x33\xd7\x21\x8f\xc3\x04\xcd\xb1\x22\x0d\x9c\x73\x60\x9c\xdd\xb1\xb0\x56\xc7\x29\x7b\x4d\xae\xb5\x92\x08\xcf\x53\x00\x9b\xe8\xbc\xd0\xf1\x4a\x72\x56\x49\xb5\xac\xac\x3f\xc2\x77\x10\xa8\x76\xb6\x09\xe7\xb9\x53\x12\x7f\x6a\x45\xd0\x84\xd5\x52\x29\x78\x4c\xeb\x7f\x46\xae\xfa\x93\xd7\xd1\x67\x9d\xba\x15\x6e\x3f\x30\x7c\xd2\x76\x27\x60\x7f\xe6\x7e\xc9\x4b\x81\x97\xb3\x12\xb6\xc9\xc9\x5a\xc2\x38\x7a\x9a\x3b\x32\xc6\xe9\x25\x89\x60\x5d\x6b\x49\x4e\xb3\xc4\xe4\x3b\x0c\xe9\xf6\xe4\x0f\x5e\x4b\x6e\x3b\x30\x71\x87\x94\xbd\x3c\x41\x45\xad\xf3\xab\x45\xfb\xc4\xd2\x60\xc6\x9d\xb6\x75\x87\xd6\x92\xe1\x7c\x5b\x3b\x1b\x51\xdb\x70\x6a\xe1\xa6\xbd\x53\x17\x95\xae\x40\x8f\x16\x77\x1c\xb0\x42\xab\x94\x04\x56\x87\x9d\x21\x9d\xe0\x84\x5d\xc2\xc3\x04\x20\x21\xa3\xfb\x81\xfb\x0b\x30\x3a\x88\x2b\xdd\x78\x1a\x5c\xe0\xfa\x7b\xbc\x81\x7f\x07\x67\x73\xc7\x78\xe8\x74\xdd\x4d\xba\x30\x6c\x4f\x11\x1b\x8c\x98\x3b\x3a\x56\x6c\xa7\x39\xf4\x92\xac\x12\x7e\xa2\x64\x57\xf5\x63\x52\xef\x7d\x52\x4f\xb1\x65\x25\x7a\x73\x5a\xca\x2f\x7e\xd2\xf0\xb1\xde\xd2\x32\x72\xfb\xe0\x7b\xa9\x03\xe5\xba\x8b\x75\x31\x0e\x61\x7b\x7f\xbf\xd3\xb1\x1b\xab\xb2\x76\x7d\x6a\x67\xef\x52\x27\x71\x9f\x24\xdc\xe5\x77\x2f\x79\x96\xd7\xae\x91\x3c\xf3\xa0\x29\xdc\xfc\x01\xaa\x59\x5f\x49\x7a\x67\x54\xcf\x6c\xb2\x88\xa0\x43\x0c\xfc\x6e\x04\xc5\x3b\x25\x13\xac\x72\xfa\x5c\x12\x1c\x66\x7a\x99\x06\x94\xc4\xa5\xed\xce\xd0\x44\xef\x3a\x11\xdc\x70\xdd\xdd\xdd\x15\xc5\xdb\xbc\x91\xf5\xcd\x33\xd7\xf6\x14\x87\x92\xfb\xd4\x16\x1e\xce\x62\x27\x65\x44\xf5\xdb\x57\x05\xea\xe5\xad\x02\xf5\xcf\x7f\x29\x50\xd7\xd7\x0a\xd4\xcd\x8d\x2a\xe1\x47\xef\xf6\xba\x99\xeb\xde\x02\x2a\x4b\x7a\xa6\xba\x18\x6e\xdd\xfc\x13\x99\xbc\x3c\x65\xf6\x5c\x13\xa6\x54\xbe\x22\x30\x83\xfc\x1f\x69\x0f\xf6\x38\x95\x08\x8e\x59\x6e\xb8\xf2\x70\x31\xb5\x96\xb9\x31\x4b\x15\x63\xd1\x4f\x43\x71\x39\x11\xe5\xa6\x2f\x88\xad\x20\xb8\x0d\x43\x51\xdb\x52\x1d\xa5\x52\x5c\x0e\xf0\xc9\x98\x19\xbf\x90\x26\x87\x67\x30\x27\xd5\xa8\x84\x77\x52\x7b\x6e\xe6\x5a\x10\xf1\x13\xad\xe1\xc8\x64\xc5\xda\x47\x07\x68\x1d\xe7\x8f\xa2\xc7\xba\xd3\x96\x36\x53\xd8\xd6\x6e\xc8\xb5\xff\x4c\xc9\xfc\x1e\xb9\x03\xf9\x4e\x59\x14\x2f\xe0\x31\xb5\xc8\x9c\x1d\x53\xff\x3a\xdd\x2b\x8a\x5f\xe6\x41\x9c\x2f\x87\x19\x13\x48\x0b\x50\xea\xaf\xcd\x91\x1b\x46\xb9\x6d\x8e\x25\xfc\x3d\xfd\x80\x9e\x70\x1a\xe9\x17\xfa\x14\x07\x67\x6f\xe2\x19\xd1\x97\xff\x1f\x9c\xf3\xab\x44\x37\x81\x99\x46\x36\x6e\xb1\xd3\x38\xcb\x46\x2c\xd6\x9a\xf3\x9f\x72\x5f\x8e\x93\xa3\xcf\xba\xea\xb0\x1c\xd7\xd3\x34\x9e\x83\x36\x2e\xfe\x8d\x28\xb8\xed\x63\x93\x09\x62\x28\x8b\xe2\xe3\x3c\x89\xa6\x3f\x23\x16\x3d\xc7\x62\xd2\xd8\x64\x85\x69\x31\x57\x2c\x4e\xce\x53\x42\x09\x1f\x5d\xc1\x42\x67\x25\x33\x89\x1b\xe9\x7a\x55\xa0\x28\x0b\x6a\xd9\x55\xf3\x2a\x0f\x33\xef\xf2\x68\x7c\x41\xd6\x69\x68\x60\xcb\x49\x41\xe4\x96\x8b\xa5\x4c\x7f\xb2\x64\x19\x1c\x3f\x69\xc6\x3d\xa6\x8e\x9b\x9f\x50\xa6\xff\x65\x74\x60\x9d\xf2\xa4\x9a\xd3\x50\x87\xe1\xa2\xef\xe7\x4a\x2f\xa9\x88\xdb\x0b\xa9\x08\xf4\xb9\xa6\x21\xc2\xa3\x4b\xdf\xc2\x44\x71\x9a\x38\xe1\xcd\xfa\xf1\x7f\x8c\xd5\x31\xad\x6c\x8b\x42\x29\xc5\x0f\x29\x7e\x93\x64\x76\xfd\xaa\xdc\xb9\xeb\x2d\xa4\x2f\x59\x59\xaa\x70\xbd\x05\x99\x6c\x65\xf7\xeb\x66\xba\xe2\xab\xa7\x57\xf4\x17\xba\xde\xc2\xb7\x67\x27\x2f\xa0\xa2\x1f\x69\xb1\x93\x6e\xbc\x29\xbe\xb2\x4e\x45\xf1\x10\x16\xff\x4c\x11\xfb\xa2\x0e\xd2\x50\x10\x10\x86\x63\xea\xe1\x9e\xb2\x3c\x35\x0f\xeb\x96\x2a\x8b\xff\x05\x00\x00\xff\xff\x66\x49\x3b\xe8\x15\x14\x00\x00") func runtimeHelpOptionsMdBytes() ([]byte, error) { return bindataRead( diff --git a/cmd/micro/settings.go b/cmd/micro/settings.go index ab2e1080..2266099b 100644 --- a/cmd/micro/settings.go +++ b/cmd/micro/settings.go @@ -180,6 +180,7 @@ func DefaultGlobalSettings() map[string]interface{} { "colorcolumn": float64(0), "colorscheme": "default", "cursorline": true, + "eofnewline": false, "ignorecase": false, "indentchar": " ", "infobar": true, @@ -208,6 +209,7 @@ func DefaultLocalSettings() map[string]interface{} { "autosave": false, "colorcolumn": float64(0), "cursorline": true, + "eofnewline": false, "filetype": "Unknown", "ignorecase": false, "indentchar": " ", diff --git a/runtime/help/options.md b/runtime/help/options.md index 1d0ca08a..9f654202 100644 --- a/runtime/help/options.md +++ b/runtime/help/options.md @@ -28,6 +28,10 @@ Here are the options that you can set: default value: `0` +* `eofnewline`: micro will automatically add a newline to the file. + + default value: `false` + * `tabsize`: sets the tab size to `option` default value: `4`