aboutsummaryrefslogtreecommitdiffstats
path: root/lua/alpha/scratchs/draft.lua
diff options
context:
space:
mode:
authorAriel D'Alessandro <dalessandro.ariel@gmail.com>2022-04-16 00:10:13 +0200
committerAriel D'Alessandro <dalessandro.ariel@gmail.com>2022-04-16 00:10:13 +0200
commitac36631668ad3b53b140c8614136c76ac2794164 (patch)
tree95104ff4a8628c64796046bffcd737651e9fb01b /lua/alpha/scratchs/draft.lua
parent95c1ac78f0ad88fa0c7982d18f398e33839000b8 (diff)
downloadnvim-conf-ac36631668ad3b53b140c8614136c76ac2794164.tar.gz
nvim-conf-ac36631668ad3b53b140c8614136c76ac2794164.zip
some updates
Diffstat (limited to 'lua/alpha/scratchs/draft.lua')
-rw-r--r--lua/alpha/scratchs/draft.lua27
1 files changed, 27 insertions, 0 deletions
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', '<leader>rrh', GetPhpString, {})