Harpoon Lualine Save

harpoon2 for lualine

Project README

Harpoon Lualine Plugin

Screenshot 2024-03-15 at 12 47 08 PM

Add a harpoon indicator to your Neovim Lualine!

Features

[!IMPORTANT]
Make sure to install harpoon2 , not harpoon on master branch

Installation

  • With lazy.nvim
  {
    "letieu/harpoon-lualine",
    dependencies = {
      {
        "ThePrimeagen/harpoon",
        branch = "harpoon2",
      }
    },
  }
  • With packer.nvim
  use {
    'letieu/harpoon-lualine',
    opt = false,
    requires = {{'ThePrimeagen/harpoon'}}
  }

Usage

Add this to your Lualine setup:

lualine_c = { "harpoon2" },

Custom config

lualine_c = { 'another_item', {
  "harpoon2",
  icon = '♥',
  indicators = { "a", "s", "q", "w" },
  active_indicators = { "A", "S", "Q", "W" },
  _separator = " ",
  no_harpoon = "Harpoon not loaded",
},

Use function as indicator

  -- harpoon_entry = {
  --   context = { col = 0, row = 1 },
  --   value = "init.lua"
  -- }
  local function get_harpoon_indicator(harpoon_entry)
    return harpoon_entry.value
  end

  -- lualine setup
  ...
  active_indicators = {
    get_harpoon_indicator,
    get_harpoon_indicator,
    get_harpoon_indicator,
    get_harpoon_indicator,
  },
  ...

How I use harpoon 💡

Bind harpoon mark to a, s, q, w and use Ctrl + a, s, q, w to jump to the mark.

vim.keymap.set("n", "<C-a>", function() harpoon:list():select(1) end)
vim.keymap.set("n", "<C-s>", function() harpoon:list():select(2) end)
vim.keymap.set("n", "<C-q>", function() harpoon:list():select(3) end)
vim.keymap.set("n", "<C-w>", function() harpoon:list():select(4) end)

View current marks with lualine

lualine_c = { 
  '%=', -- make the indicator center
  {
    "harpoon2",
    indicators = { "a", "s", "q", "w" },
    active_indicators = { "A", "S", "Q", "W" },
    _separator = " ",
  }
}

Enjoy!

Note: Customize indicator characters by editing the configuration.

Note: To center the indicator, add a %=. For example: lualine_c = { "%=", "harpoon2"},

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Taken
Taken

💻
Le Tieu
Le Tieu

🚧 🤔
simachri
simachri

💻
Patrick Dewey
Patrick Dewey

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Open Source Agenda is not affiliated with "Harpoon Lualine" Project. README Source: letieu/harpoon-lualine
Stars
110
Open Issues
0
Last Commit
2 months ago

Open Source Agenda Badge

Open Source Agenda Rating