aboutsummaryrefslogtreecommitdiffstats
path: root/lua/alpha/laravel-tinker.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/alpha/laravel-tinker.lua')
-rw-r--r--lua/alpha/laravel-tinker.lua67
1 files changed, 67 insertions, 0 deletions
diff --git a/lua/alpha/laravel-tinker.lua b/lua/alpha/laravel-tinker.lua
new file mode 100644
index 0000000..fa23346
--- /dev/null
+++ b/lua/alpha/laravel-tinker.lua
@@ -0,0 +1,67 @@
+local M = {}
+
+
+M.runCode = function ()
+ local curBuff = vim.api.nvim_get_current_buf()
+
+ local stats = vim.api.nvim_list_uis()[1]
+
+ local width = stats.width
+ local height = stats.height
+
+ local bufh = vim.api.nvim_create_buf(false, true)
+ local winId = vim.api.nvim_open_win(bufh, true, {
+ relative = "editor",
+ width = width * 0.75,
+ height = height * 0.75,
+ col = 2,
+ row = 2,
+ style = "minimal",
+ border = "rounded",
+ })
+
+ -- get the start and end lines of selection
+ local startLine = vim.api.nvim_buf_get_mark(curBuff, "<")[1] -1
+ local endLine = vim.api.nvim_buf_get_mark(curBuff, ">")[1]
+ -- print("range: ", startLine, endLine)
+
+ local code = vim.api.nvim_buf_get_lines(curBuff, startLine, endLine, false);
+
+ -- print (vim.inspect(code))
+
+ local codeText = vim.fn.shellescape(table.concat(code, " "))
+ -- print(codeText)
+
+
+ local result = vim.fn.systemlist('php artisan tinker --execute=' .. codeText)
+
+ vim.api.nvim_buf_set_text(bufh, 0, 0, 0, 0, result)
+end
+
+M.backTerminal = function ()
+ local bufh = vim.api.nvim_create_buf(false, true)
+ local term = vim.api.nvim_open_term(bufh, {})
+
+ local winId = vim.api.nvim_open_win(bufh, true, {
+ relative = "editor",
+ width = 80,
+ height = 80,
+ col = 2,
+ row = 2,
+ style = "minimal",
+ border = "rounded",
+ })
+
+ local jobId = vim.fn.jobstart("php artisan tinker", {
+ on_stdout = function (err, data)
+ print(err, vim.inspect(data))
+ vim.api.nvim_chan_send(term, table.concat(data, "\n"))
+ end
+ })
+
+ vim.api.nvim_chan_send(jobId, "$ub = UploadBatch::find(1);\n")
+ vim.api.nvim_chan_send(jobId, "dump($ub);\n")
+end
+
+
+return M