commit db453a4555a9137e62c31efa7a47ba3c78596aff
parent a0e3834e38db78fcda5660c17646cf745858047d
Author: Tomas Nemec <nemi@skaut.cz>
Date: Mon, 6 Dec 2021 13:31:57 +0100
update
Diffstat:
2 files changed, 31 insertions(+), 31 deletions(-)
diff --git a/lua/my-default.lua b/lua/my-default.lua
@@ -123,8 +123,8 @@ Group.new('Tag', colors.c3, colors.none)
Group.new('Typedef', colors.c3, colors.none)
-- Telescope
-Group.new('TelescopeSelection', groups.Normal.bg, groups.Normal.fg)
-Group.new('TelescopeMatching', nil, nil, styles.underline+styles.bold)
+Group.new('TelescopeSelection', nil, dimm(N.bg, 0.05))
+Group.new('TelescopeMatching', nil, nil, styles.underline + styles.bold)
-- Lightspeed
local ls1 = colors.c2
diff --git a/lua/tms/ft/dart/debug.lua b/lua/tms/ft/dart/debug.lua
@@ -1,5 +1,4 @@
local parsers = require 'nvim-treesitter.parsers'
-local range = require('tms.ts.range')
local tsu = require 'nvim-treesitter.ts_utils'
local api = vim.api
@@ -10,28 +9,16 @@ M.getNameFromBody = function(node)
local previous = tsu.get_previous_node(node)
if previous:type() == 'method_signature' then
previous = previous:child()
- for i, v in previous:iter_children() do
- if v == 'name' then
- return tsu.get_node_text(i)[1] or nil
- end
- end
+ for i, v in previous:iter_children() do if v == 'name' then return tsu.get_node_text(i)[1] or nil end end
elseif previous:type() == 'function_signature' then
- for i, v in previous:iter_children() do
- if v == 'name' then
- return tsu.get_node_text(i)[1] or nil
- end
- end
+ for i, v in previous:iter_children() do if v == 'name' then return tsu.get_node_text(i)[1] or nil end end
end
end
end
M.getNameForClassDef = function(node)
if node:type() == 'class_definition' then
- for no, na in node:iter_children() do
- if na == 'name' then
- return tsu.get_node_text(no)[1] or nil
- end
- end
+ for no, na in node:iter_children() do if na == 'name' then return tsu.get_node_text(no)[1] or nil end end
end
end
@@ -39,18 +26,14 @@ local function iter_tree(node, work, level)
level = level or 1
for n in node:iter_children() do
work(n, level)
- if n:child_count() > 0 then
- iter_tree(n, work, level + 1)
- end
+ if n:child_count() > 0 then iter_tree(n, work, level + 1) end
end
end
M.getMethodName = function(n)
local node = n or tsu.get_node_at_cursor()
while node do
- if (node:type():find('function_body')) then
- return M.getNameFromBody(node)
- end
+ if (node:type():find('function_body')) then return M.getNameFromBody(node) end
node = node:parent()
end
end
@@ -69,17 +52,35 @@ M.treeFor = function(node)
node = node:parent()
end
local reverse_out = {}
- for i = #out, 1, -1 do
- table.insert(reverse_out, out[i])
- end
+ for i = #out, 1, -1 do table.insert(reverse_out, out[i]) end
return reverse_out
end
+local Region = {}
+Region.__index = Region
+function Region:from_lsp_range(lsp_range, bufnr)
+ bufnr = bufnr or vim.fn.bufnr()
+ return setmetatable({
+ bufnr = vim.fn.bufnr(bufnr),
+ start_row = lsp_range.start.line + 1,
+ start_col = lsp_range.start.character,
+ end_row = lsp_range['end'].line + 1,
+ end_col = lsp_range['end'].character,
+ }, self)
+end
+function Region:to_lsp_range()
+ return {
+ ['start'] = {line = self.start_row - 1, character = self.start_col},
+ ['end'] = {line = self.end_row - 1, character = self.end_col},
+ }
+end
+function Region:to_lsp_text_edit(text) return {range = self:to_lsp_range(), newText = text} end
+
-- Add print with tree location inside this class
M.print = function()
local tree = M.treeFor()
local bufnr = api.nvim_get_current_buf()
- local r = range:from_lsp_range(vim.lsp.util.make_range_params().range, bufnr)
+ local r = Region:from_lsp_range(vim.lsp.util.make_range_params().range, bufnr)
local string = string.format('print(\'%s\');\n', table.concat(tree, '.'))
vim.lsp.util.apply_text_edits({r:to_lsp_text_edit(string)}, bufnr)
api.nvim_feedkeys('==', 'n', false)
@@ -91,9 +92,8 @@ M.func = function()
iter_tree(root, function(node, level)
local node_type = node:type()
if node_type == 'function_body' then
- api.nvim_buf_set_lines(0, node:start() + 1, node:start() + 1, true, {
- string.format('print("%s");', string.rep(' ', level), M.getMethodName(node)),
- })
+ api.nvim_buf_set_lines(0, node:start() + 1, node:start() + 1, true,
+ {string.format('print("%s");', string.rep(' ', level), M.getMethodName(node))})
api.nvim_feedkeys('==', 'n', false)
end
end)