diff --git a/Dockerfile b/Dockerfile index 2620c80..845efce 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,7 +22,7 @@ COPY --from=neovim /usr/local/bin/nvim /usr/local/bin/nvim COPY --from=tree-sitter-cli /usr/local/cargo/bin/tree-sitter /usr/local/bin/tree-sitter RUN apt-get update && \ - apt-get install -y curl g++ git && \ + apt-get install -y curl fzf g++ git && \ apt-get autoremove -y && \ rm -rf /var/lib/apt/lists/* && \ useradd -ms /bin/bash yaml diff --git a/lua/yaml_nvim/pair.lua b/lua/yaml_nvim/pair.lua index 5027433..f78c9f4 100644 --- a/lua/yaml_nvim/pair.lua +++ b/lua/yaml_nvim/pair.lua @@ -40,12 +40,11 @@ local function get_value_node(node) end local function get_value(node, bufnr) - if node ~= nil then - local value = node:field("value")[1] - return table.concat({ vim.treesitter.get_node_text(value, bufnr) }, "\n") - else + if node == nil then return "" end + local value = node:field("value")[1] + return table.concat({ vim.treesitter.get_node_text(value, bufnr) }, "\n") end local function is_sequence_block(value) @@ -110,7 +109,7 @@ M.parse = function(node) local human = string.format("%s = %s", key, cleaned_value) local start_line, start_col = node:start() local end_line = start_line - if value_node then + if value_node ~= nil then end_line, _ = value_node:end_() end diff --git a/tests/sample.yaml b/tests/sample.yaml index f115718..ba96c3a 100644 --- a/tests/sample.yaml +++ b/tests/sample.yaml @@ -6,6 +6,8 @@ worldcup: Here comes a two lines text. + morumbi: + semifinals: - brazil: 1 germany: 7 diff --git a/tests/yaml_nvim/functions_spec.lua b/tests/yaml_nvim/functions_spec.lua index 3a66401..543b6da 100644 --- a/tests/yaml_nvim/functions_spec.lua +++ b/tests/yaml_nvim/functions_spec.lua @@ -4,7 +4,7 @@ local stub = require("luassert.stub") describe("Lua functions with sample YAML:", function() before_each(function() vim.cmd(":e tests/sample.yaml") - vim.cmd(":norm 10j^") + vim.cmd(":norm 12j^") end) after_each(function()