Pad line and column

This commit is contained in:
Olivier Roques
2021-01-04 10:24:32 +01:00
parent f2be11a98f
commit f643b3c4b5

View File

@@ -1,22 +1,27 @@
local fn = vim.fn
local function pad(c, m)
local padch = '·'
return string.rep(padch, string.len(tostring(m)) - string.len(tostring(c)))
end
local function get_line()
local nb_lines = fn.line('$')
local nbline = fn.line('$')
local line = fn.line('.')
return string.format('%3d/%3d', line, nb_lines)
return string.format('%s%d/%d', pad(line, nbline), line, nbline)
end
local function get_column()
local nb_columns = fn.col('$') - 1
local column = fn.col('.')
return string.format('%2d/%2d', column, nb_columns)
local nbcol = fn.col('$') - 1
local col = fn.col('.')
return string.format('%s%d/%s%d', pad(col, 100), col, pad(nbcol, 100), nbcol)
end
local function get_percent()
local nb_lines = fn.line('$')
local line = fn.line('.')
local percent = math.floor(line * 100 / nb_lines)
return string.format('%3d%%%%', percent)
return string.format('%s%d%%%%', pad(percent, 100), percent)
end
local function get_item()