From ac36631668ad3b53b140c8614136c76ac2794164 Mon Sep 17 00:00:00 2001 From: Ariel D'Alessandro Date: Sat, 16 Apr 2022 00:10:13 +0200 Subject: some updates --- lua/alpha/scratchs/draft.lua | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'lua/alpha/scratchs/draft.lua') diff --git a/lua/alpha/scratchs/draft.lua b/lua/alpha/scratchs/draft.lua index 67d0590..32b9c8d 100644 --- a/lua/alpha/scratchs/draft.lua +++ b/lua/alpha/scratchs/draft.lua @@ -71,3 +71,30 @@ function Queries() P(node:end_()) end end + +local function get_visual_selection() + local s_start = vim.fn.getpos("'<") + local s_end = vim.fn.getpos("'>") + local n_lines = math.abs(s_end[2] - s_start[2]) + 1 + local lines = vim.api.nvim_buf_get_lines(0, s_start[2] - 1, s_end[2], false) + lines[1] = string.sub(lines[1], s_start[3], -1) + if n_lines == 1 then + lines[n_lines] = string.sub(lines[n_lines], 1, s_end[3] - s_start[3] + 1) + else + lines[n_lines] = string.sub(lines[n_lines], 1, s_end[3]) + end + return table.concat(lines, '\n') +end + +function GetPhpString() + local s_start = vim.fn.getpos("'<") + local s_end = vim.fn.getpos("'>") + local text = get_visual_selection() + P(text) + local result = vim.fn.system("php -r 'echo \"" .. text .. "\";'") + vim.api.nvim_put({result}, "", true, false) + P(result) + vim.api.nvim_buf_set_text(0, s_start[2] -1 , s_start[3] -1, s_end[2] -1, s_end[3], {result}) +end + +vim.keymap.set('n', 'rrh', GetPhpString, {}) -- cgit v1.2.3