Table: Fix exception if i<Tab> at end of line if next line is bad (Issue #1126)
This commit is contained in:
@@ -224,12 +224,12 @@ endfunction
|
|||||||
|
|
||||||
|
|
||||||
function! s:get_rows(lnum, ...) abort
|
function! s:get_rows(lnum, ...) abort
|
||||||
if !s:is_table(getline(a:lnum))
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
let rows = []
|
let rows = []
|
||||||
|
|
||||||
|
if !s:is_table(getline(a:lnum))
|
||||||
|
return rows
|
||||||
|
endif
|
||||||
|
|
||||||
let lnum = a:lnum - 1
|
let lnum = a:lnum - 1
|
||||||
let depth = a:0 > 0 ? a:1 : 0
|
let depth = a:0 > 0 ? a:1 : 0
|
||||||
let ldepth = 0
|
let ldepth = 0
|
||||||
@@ -357,7 +357,7 @@ function! s:get_aligned_rows(lnum, col1, col2, depth) abort
|
|||||||
let check_all = 1
|
let check_all = 1
|
||||||
if a:depth > 0
|
if a:depth > 0
|
||||||
let rows = s:get_rows(a:lnum, a:depth)
|
let rows = s:get_rows(a:lnum, a:depth)
|
||||||
let startlnum = rows[0][0]
|
let startlnum = len(rows) > 0 ? rows[0][0] : 0
|
||||||
let lrows = len(rows)
|
let lrows = len(rows)
|
||||||
if lrows == a:depth + 1
|
if lrows == a:depth + 1
|
||||||
let line = rows[-1][1]
|
let line = rows[-1][1]
|
||||||
@@ -388,7 +388,7 @@ function! s:get_aligned_rows(lnum, col1, col2, depth) abort
|
|||||||
if check_all
|
if check_all
|
||||||
" all the table must be re-formatted
|
" all the table must be re-formatted
|
||||||
let rows = s:get_rows(a:lnum)
|
let rows = s:get_rows(a:lnum)
|
||||||
let startlnum = rows[0][0]
|
let startlnum = len(rows) > 0 ? rows[0][0] : 0
|
||||||
let cells = []
|
let cells = []
|
||||||
for [lnum, row] in rows
|
for [lnum, row] in rows
|
||||||
call add(cells, vimwiki#tbl#get_cells(row))
|
call add(cells, vimwiki#tbl#get_cells(row))
|
||||||
@@ -548,7 +548,7 @@ function! vimwiki#tbl#goto_next_col() abort
|
|||||||
let depth = 2
|
let depth = 2
|
||||||
let newcol = s:get_indent(lnum, depth)
|
let newcol = s:get_indent(lnum, depth)
|
||||||
let rows = s:get_rows(lnum, depth)
|
let rows = s:get_rows(lnum, depth)
|
||||||
let startlnum = rows[0][0]
|
let startlnum = len(rows) > 0 ? rows[0][0] : 0
|
||||||
let cells = []
|
let cells = []
|
||||||
for [lnum, row] in rows
|
for [lnum, row] in rows
|
||||||
call add(cells, vimwiki#tbl#get_cells(row, 1))
|
call add(cells, vimwiki#tbl#get_cells(row, 1))
|
||||||
@@ -583,7 +583,7 @@ function! vimwiki#tbl#goto_prev_col() abort
|
|||||||
let depth = 2
|
let depth = 2
|
||||||
let newcol = s:get_indent(lnum, depth)
|
let newcol = s:get_indent(lnum, depth)
|
||||||
let rows = s:get_rows(lnum, depth)
|
let rows = s:get_rows(lnum, depth)
|
||||||
let startlnum = rows[0][0]
|
let startlnum = len(rows) > 0 ? rows[0][0] : 0
|
||||||
let cells = []
|
let cells = []
|
||||||
for [lnum, row] in rows
|
for [lnum, row] in rows
|
||||||
call add(cells, vimwiki#tbl#get_cells(row, 1))
|
call add(cells, vimwiki#tbl#get_cells(row, 1))
|
||||||
|
|||||||
@@ -1,6 +1,28 @@
|
|||||||
# Table autoformating
|
# Table autoformating
|
||||||
# Very configurable: read doc/design_notes.md
|
# Very configurable: read doc/design_notes.md
|
||||||
|
|
||||||
|
# Move <Tab> at end of row if next row is badly formated {{{1
|
||||||
|
# See #1126
|
||||||
|
##########################
|
||||||
|
Given vimwiki (Header ok but 1 row bad):
|
||||||
|
| Service to be Build | Build Tag | Service to Deploy | Deploy Tag | Comments |
|
||||||
|
|---------------------|-----------|-------------------|------------|----------|
|
||||||
|
|||Provision/Core/Keycloak|release-3.8.0_RC9|This was done as part of release-3.7.0 hotfix and is not required if you are already on Keycloak 7|
|
||||||
|
|||Provision/DataPipeline/AnalyticsSpark|release-3.8.0_RC6||
|
||||||
|
|||OpsAdministration/Core/ESMapping|release-3.8.0_RC9|Choose `userv1,orgv2` for jenkins job parameter `indices_name`|
|
||||||
|
|
||||||
|
Do (i<tab> at end of first line):
|
||||||
|
$i\<Tab>
|
||||||
|
|
||||||
|
Expect(Crash (List required)):
|
||||||
|
# E714: List required <= tbl#goto_next_col, line 9
|
||||||
|
| Service to be Build | Build Tag | Service to Deploy | Deploy Tag | Comments |
|
||||||
|
|---------------------|-----------|-------------------|------------|----------|
|
||||||
|
|||Provision/Core/Keycloak|release-3.8.0_RC9|This was done as part of release-3.7.0 hotfix and is not required if you are already on Keycloak 7|
|
||||||
|
|||Provision/DataPipeline/AnalyticsSpark|release-3.8.0_RC6||
|
||||||
|
|||OpsAdministration/Core/ESMapping|release-3.8.0_RC9|Choose `userv1,orgv2` for jenkins job parameter `indices_name`|
|
||||||
|
|
||||||
|
|
||||||
# Move <Tab> and <S-Tab> map {{{1
|
# Move <Tab> and <S-Tab> map {{{1
|
||||||
# See #1048
|
# See #1048
|
||||||
##########################
|
##########################
|
||||||
|
|||||||
Reference in New Issue
Block a user