3rd / image.nvim

🖼️ Bringing images to Neovim.
MIT License
803 stars 35 forks source link

Status line flashing and disapearing when I install this plugin #139

Open GustavoJCL opened 3 months ago

GustavoJCL commented 3 months ago

Hi, I installed whis plugin alognside with molten-nvim, but when open a file the status line start flashing and disapearing, but when i enter to inser mode it status line is displayed correctly in normal mode: image in insert mode: image

GustavoJCL commented 3 months ago

i notice it only happen when i enable window_overlap_clear_enabled = false but i need that feature for leetcode-nvim, please how can i solve this issue

3rd commented 2 months ago

The plugin doesn't override your statusline, must be something else in your setup. Can you share a minimal repro config?

GustavoJCL commented 2 months ago

yes of course, I'm using a minimal config of Astronvim and in the nvim/lua/plugins I added the configuration:

-- Example for configuring Neovim to load user-installed installed Lua rocks:
package.path = package.path .. ";" .. vim.fn.expand "$HOME" .. "/.luarocks/share/lua/5.1/?/init.lua;"
package.path = package.path .. ";" .. vim.fn.expand "$HOME" .. "/.luarocks/share/lua/5.1/?.lua;"

vim.g.python3_host_prog = vim.fn.expand "~/.virtualenvs/neovim/bin/python3"
return {
  {
    "benlubas/molten-nvim",
    dependencies = { "3rd/image.nvim" },
    lazy = true,
    build = ":UpdateRemotePlugins",
    config = function()
      -- these are examples, not defaults. Please see the readme
      vim.g.molten_show_mimetype_debug = true
      vim.g.molten_output_win_border = { "", "━", "", "" }
      vim.g.molten_output_crop_border = true
      vim.g.molten_show_more = false
      vim.g.molten_output_win_max_height = 20
      vim.g.molten_auto_open_output = false
      vim.g.molten_image_provider = "image.nvim"
      vim.g.molten_wrap_output = true
      vim.g.molten_use_border_highlights = true

      -- vim.keymap.set("n", "<localleader>rc", M.run_cell,
      --   { desc = "run code cell", buffer = true })
      -- vim.keymap.set("n", "<localleader>ra", M.run_all_above,
      --   { desc = "run all code cells above the cursor", buffer = true })
      -- vim.keymap.set("n", "<localleader>rl", M.run_line,
      --   { desc = "run line", buffer = true })

      vim.keymap.set("n", "<leader>Mi", ":MoltenInit<CR>", { desc = "Initialize Molten", silent = true })
      vim.keymap.set("n", "<leader>Ir", ":MoltenInit rust", { desc = "Initialize Molten for Rust", silent = true })
      vim.keymap.set("n", "<leader>Ip", function()
        local venv = os.getenv "VIRTUAL_ENV"
        if venv ~= nil then
          -- in the form of /home/benlubas/.virtualenvs/VENV_NAME
          venv = string.match(venv, "/.+/(.+)")
          -- venv = string.match(venv, "home/gus/.virtualenvs/neovim")
          vim.cmd(("MoltenInit %s"):format(venv))
        else
          vim.cmd "MoltenInit python3"
        end
      end, { desc = "Initialize Molten for python3", silent = true, noremap = true })

      vim.keymap.set("n", "<leader>Mr", ":MoltenReevaluateCell<CR>", { desc = "re-eval cell", silent = true })
      vim.keymap.set(
        "v",
        "<leader>r",
        ":<C-u>MoltenEvaluateVisual<CR>gv",
        { desc = "execute visual selection", silent = true }
      )
      vim.keymap.set(
        "n",
        "<leader>Ms",
        ":noautocmd MoltenEnterOutput<CR>",
        { desc = "open output window", silent = true }
      )
      vim.keymap.set("n", "<leader>Mh", ":MoltenHideOutput<CR>", { desc = "close output window", silent = true })
      local open = false
      vim.keymap.set("n", "<leader>Mt", function()
        open = not open
        vim.fn.MoltenUpdateOption("auto_open_output", open)
      end)

      -- vim.api.nvim_create_autocmd("User", {
      --   pattern = "MoltenInitPost",
      --   callback = function()
      --     require("benlubas.quarto_code_runner").attach_run_mappings()
      --     -- setup some molten specific keybindings
      --   end,
      -- })
    end,
  },
  {
    "3rd/image.nvim",
    opts = {
      backend = "kitty", -- whatever backend you would like to use
      max_width = 100,
      max_height = 12,
      max_height_window_percentage = math.huge,
      max_width_window_percentage = 100,
      window_overlap_clear_enabled = true, -- toggles images when windows are overlapped
      tmux_show_only_in_active_window = true,
      window_overlap_clear_ft_ignore = { "cmp_menu", "cmp_docs", "" },
    },
  },
}

the plugin isn't overriding the statusline exactly, I think the plugins is printing something so quickly in the cmd of neovim in normal mode: image in insert mode: image