icon-picker.nvim is a Neovim plugin that helps you pick 𝑨𝕃𝚻 Font Characters, Symbols Σ, Nerd Font Icons & Emojis ✨
vim.ui.select()
, so you're gonna need something like dressing.nvim and a fuzzy finder like Telescope or fzf-luaFor Lazy
{
"ziontee113/icon-picker.nvim",
config = function()
require("icon-picker").setup({ disable_legacy_commands = true })
local opts = { noremap = true, silent = true }
vim.keymap.set("n", "<Leader><Leader>i", "<cmd>IconPickerNormal<cr>", opts)
vim.keymap.set("n", "<Leader><Leader>y", "<cmd>IconPickerYank<cr>", opts) --> Yank the selected icon into register
vim.keymap.set("i", "<C-i>", "<cmd>IconPickerInsert<cr>", opts)
end
}
For Packer
use "stevearc/dressing.nvim"
use({
"ziontee113/icon-picker.nvim",
config = function()
require("icon-picker").setup({
disable_legacy_commands = true
})
end,
})
For Vim Plug
Plug 'stevearc/dressing.nvim'
Plug 'ziontee113/icon-picker.nvim'
lua << EOF
require("icon-picker").setup({ disable_legacy_commands = true })
EOF
local opts = { noremap = true, silent = true }
vim.keymap.set("n", "<Leader><Leader>i", "<cmd>IconPickerNormal<cr>", opts)
vim.keymap.set("n", "<Leader><Leader>y", "<cmd>IconPickerYank<cr>", opts) --> Yank the selected icon into register
vim.keymap.set("i", "<C-i>", "<cmd>IconPickerInsert<cr>", opts)
IconPickerNormal
- Pick Icon and insert it to the buffer (normal mode)IconPickerInsert
- Pick Icon and insert it to the buffer (insert mode)IconPickerYank
- Pick Icon and yank it to register (will not input to buffer)You can cherry pick the Icon source to your preference using arguments, for example:
:IconPickerInsert alt_font symbols
:IconPickerInsert nerd_font emoji
:IconPickerInsert nerd_font
:IconPickerInsert emoji nerd_font alt_font symbols
Available arguments for the IconPicker
commands:
I personally use <C-i>
for IconPickerInsert
. If you also want to map <C-I>
and can't do it, you can check out my quick guide to solve that on YouTube: Enable Special Keyboard Combinations in Alacritty / Kitty for Neovim
local opts = { noremap = true, silent = true }
vim.keymap.set("n", "<Leader><Leader>i", "<cmd>PickEverything<cr>", opts)
vim.keymap.set("n", "<Leader><Leader>y", "<cmd>PickEverythingYank<cr>", opts)
vim.keymap.set("i", "<C-i>", "<cmd>PickEverythingInsert<cr>", opts)
PickEverything
(Nerd Font Icons & Emojis & Alt Font & Symbols)PickIcons
(Nerd Font Icons & Emojis)PickEmoji
PickNerd
PickNerdV3
PickSymbols
PickAltFont
PickAltFontAndSymbols
PickEverythingYank
(Nerd Font Icons & Emojis & Alt Font & Symbols)PickIconsYank
(Nerd Font Icons & Emojis)PickEmojiYank
PickNerdYank
PickNerdV3Yank
PickSymbolsYank
PickAltFontYank
PickAltFontAndSymbolsYank
PickEverythingInsert
(Nerd Font Icons & Emojis & Alt Font & Symbols)PickIconsInsert
(Nerd Font Icons & Emojis)PickEmojiInsert
PickNerdInsert
PickNerdV3Insert
PickSymbolsInsert
PickAltFontInsert
PickAltFontAndSymbolsInsert
You can use :help
to see the details for any of those commands.
Example: :help PickAltFont
Fine tune the Insert Mode experience.
If you run into issues or come up with an awesome idea, please feel free to open an issue or PR.
The project is licensed under MIT license. See LICENSE file for details.