fix problem with muliple empty lines causing duplicate lines after sorting
This commit is contained in:
parent
31e602e8c9
commit
12e53eecd6
@ -12,13 +12,16 @@ local M = {}
|
|||||||
M.example = function()
|
M.example = function()
|
||||||
local lines = {}
|
local lines = {}
|
||||||
|
|
||||||
|
-- remove all whitespace, we will create new blocks separated by empty lines after
|
||||||
|
local last_search = vim.fn.getreg('/')
|
||||||
|
vim.api.nvim_command('g/^$/d')
|
||||||
|
vim.fn.setreg('/', last_search)
|
||||||
local current_line_nr = 1
|
local current_line_nr = 1
|
||||||
local buf_handle = vim.api.nvim_win_get_buf(0)
|
local buf_handle = vim.api.nvim_win_get_buf(0)
|
||||||
local last_line_nr = vim.api.nvim_buf_line_count(buf_handle)
|
local last_line_nr = vim.api.nvim_buf_line_count(buf_handle)
|
||||||
while (current_line_nr <= last_line_nr) do
|
while (current_line_nr <= last_line_nr) do
|
||||||
-- skip empty lines
|
-- skip empty lines
|
||||||
if vim.fn.getline(current_line_nr) == '' then
|
if vim.fn.getline(current_line_nr) == '' then
|
||||||
print('skipping ' .. current_line_nr)
|
|
||||||
current_line_nr = current_line_nr + 1
|
current_line_nr = current_line_nr + 1
|
||||||
else
|
else
|
||||||
vim.api.nvim_win_set_cursor(0, {current_line_nr, 1})
|
vim.api.nvim_win_set_cursor(0, {current_line_nr, 1})
|
||||||
@ -28,11 +31,7 @@ M.example = function()
|
|||||||
node = parent
|
node = parent
|
||||||
parent = node:parent()
|
parent = node:parent()
|
||||||
end
|
end
|
||||||
-- ts_utils.update_selection(0, node)
|
|
||||||
local start_row, start_column, end_row, end_column = node:range()
|
local start_row, start_column, end_row, end_column = node:range()
|
||||||
-- vim.api.nvim_command(start_row + 1 .. ',' .. end_row + 1 .. 's/\\n/`')
|
|
||||||
-- print(start_row)
|
|
||||||
-- print(end_row)
|
|
||||||
|
|
||||||
lines[current_line_nr] = vim.fn.getline(start_row + 1, end_row + 1)
|
lines[current_line_nr] = vim.fn.getline(start_row + 1, end_row + 1)
|
||||||
|
|
||||||
@ -64,12 +63,6 @@ M.example = function()
|
|||||||
insert_row = insert_row + 1
|
insert_row = insert_row + 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- nvim_put()
|
|
||||||
-- *nvim_set_current_line()*
|
|
||||||
|
|
||||||
-- if multiline:
|
|
||||||
-- vim.api.nvim_command("'<,'>s/\\n/`")
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user