WIP
This commit is contained in:
parent
8c9634e735
commit
bda064af13
@ -1,5 +1,37 @@
|
|||||||
|
-- local function closest_range(pos, range1, range2)
|
||||||
|
-- rowDiff = range1
|
||||||
|
--
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
|
||||||
|
local function get_cursor_pos()
|
||||||
|
local _, row, col, _ = unpack(vim.fn.getpos('.'))
|
||||||
|
return {row = row, col = col}
|
||||||
|
end
|
||||||
|
|
||||||
|
local function find_range(brace_pair)
|
||||||
|
local filter = 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string"'
|
||||||
|
local start = vim.fn.searchpairpos(brace_pair[0], '', brace_pair[1], 'Wnb', filter)
|
||||||
|
local stop = vim.fn.searchpairpos(brace_pair[0], '', brace_pair[1], 'Wcn', filter)
|
||||||
|
return {row1 = start[1], col1 = start[2], row2 = stop[1], col2 = stop[2]}
|
||||||
|
end
|
||||||
|
|
||||||
|
local function find_ranges(brace_pairs)
|
||||||
|
local ranges = {}
|
||||||
|
for _, brace_pair in ipairs(brace_pairs) do
|
||||||
|
table.insert(ranges, find_range(brace_pair))
|
||||||
|
end
|
||||||
|
return ranges
|
||||||
|
end
|
||||||
|
|
||||||
|
local function find_range_closest(brace_pairs, pos)
|
||||||
|
local ranges = find_ranges(brace_pairs)
|
||||||
|
return ranges[0]
|
||||||
|
end
|
||||||
|
|
||||||
local function wrap_toggle()
|
local function wrap_toggle()
|
||||||
print('Hello world')
|
local brace_pairs = {{'(', ')'}, {'[', ']'}, {'{', '}'}}
|
||||||
|
find_range_closest(get_cursor_pos(), brace_pairs)
|
||||||
end
|
end
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -1,16 +1,17 @@
|
|||||||
local argonaut = require('argonaut')
|
local argonaut = require('argonaut')
|
||||||
|
|
||||||
local function argonaut_wrap_toggle()
|
|
||||||
argonaut.wrap_toggle()
|
|
||||||
end
|
|
||||||
|
|
||||||
local function argonaut_reload()
|
local function argonaut_reload()
|
||||||
package.loaded.argonaut = nil
|
package.loaded.argonaut = nil
|
||||||
argonaut = require('argonaut')
|
argonaut = require('argonaut')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function argonaut_wrap_toggle()
|
||||||
|
argonaut_reload()
|
||||||
|
argonaut.wrap_toggle()
|
||||||
|
end
|
||||||
|
|
||||||
if not vim.g.argonaut then
|
if not vim.g.argonaut then
|
||||||
vim.api.nvim_create_user_command('ArgonautWrapToggle', argonaut_wrap_toggle, {})
|
|
||||||
vim.api.nvim_create_user_command('ArgonautReload', argonaut_reload, {})
|
vim.api.nvim_create_user_command('ArgonautReload', argonaut_reload, {})
|
||||||
|
vim.api.nvim_create_user_command('ArgonautWrapToggle', argonaut_wrap_toggle, {})
|
||||||
vim.g.argonaut = true
|
vim.g.argonaut = true
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user