batman
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
local augroup = vim.api.nvim_create_augroup("Vitruvio", { clear = true })
|
||||
local curl = require('plenary.curl')
|
||||
|
||||
local post = function(url, content)
|
||||
curl.post(url,
|
||||
{
|
||||
body = content,
|
||||
headers = {
|
||||
["Content-Type"] = "application/xml"
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
local function main()
|
||||
vim.api.nvim_create_user_command("VitruvioURL", function(opts)
|
||||
vim.b.vitruvio_url = opts.fargs[1]
|
||||
end, { nargs = 1 })
|
||||
if vim.bo.filetype == "xml" then
|
||||
local g = vim.api.nvim_create_augroup("VitruvioBufWritePost", { clear = true })
|
||||
vim.api.nvim_create_autocmd("BufWritePost", {
|
||||
group = g,
|
||||
desc = "Live reload",
|
||||
callback = function()
|
||||
if vim.bo.filetype == "xml" then
|
||||
local url = vim.b.vitruvio_url
|
||||
local content = table.concat(
|
||||
vim.api.nvim_buf_get_lines(0, 0, vim.api.nvim_buf_line_count(0), false), "\n")
|
||||
if url then
|
||||
post(url, content)
|
||||
else
|
||||
if not vim.b.notified then
|
||||
print("É necessário atribuir um URL com :VitruvioURL")
|
||||
vim.b.notified = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- vim.api.nvim_create_autocmd("BufWritePost", {
|
||||
-- group = g,
|
||||
-- desc = "LSP em JavaScript embedded",
|
||||
-- callback = function()
|
||||
-- if vim.bo.filetype == "xml" then
|
||||
-- vim.api
|
||||
-- end
|
||||
-- end
|
||||
-- })
|
||||
--
|
||||
end
|
||||
end
|
||||
|
||||
local function setup()
|
||||
vim.api.nvim_create_autocmd("BufEnter",
|
||||
{
|
||||
group = augroup,
|
||||
desc = "Utilidades para o desenvolvedor do Vitruvio",
|
||||
callback = main
|
||||
})
|
||||
end
|
||||
|
||||
return { setup = setup }
|
||||
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<panel-form xmlns="http://www.davinti.com.br/vitruvio/form/panel"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.davinti.com.br/vitruvio/form/panel https://bitbucket.org/davinTI/vitruvio-xds/raw/master/vitruvio-panel-form.xsd">
|
||||
<form formKey="meuForm" width="100%">
|
||||
<name></name>
|
||||
<description></description>
|
||||
<components>
|
||||
<VerticalLayout spacing="true" margin="true" height="100%" width="100%">
|
||||
<TextField id="txfTeste" type="email" caption="Teste" />
|
||||
<ButtonWidget id="btnTeste" caption="Enviar" style="BLUE" width="100px">
|
||||
<onClickScript language="JavaScript">
|
||||
<![CDATA[
|
||||
function run() {
|
||||
engine.isValid();
|
||||
}
|
||||
]]>
|
||||
</onClickScript>
|
||||
</ButtonWidget>
|
||||
</VerticalLayout>
|
||||
</components>
|
||||
</form>
|
||||
</panel-form>
|
||||
Reference in New Issue
Block a user