- Notifications
You must be signed in to change notification settings - Fork10
Neovim plugin. Telescope.nvim extension that adds orgmode.nvim integration.
License
nvim-orgmode/telescope-orgmode.nvim
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Provides integration fororgmode andorg-roam.nvim withtelescope.nvim.
Jump to to any heading inorg_agenda_files with:Telescope orgmode search_headings
Refile heading from capture or current file under destination with:Telescope orgmode refile_heading
{"nvim-orgmode/telescope-orgmode.nvim",event="VeryLazy",dependencies= {"nvim-orgmode/orgmode","nvim-telescope/telescope.nvim", },config=function()require("telescope").load_extension("orgmode")vim.keymap.set("n","<leader>r",require("telescope").extensions.orgmode.refile_heading)vim.keymap.set("n","<leader>fh",require("telescope").extensions.orgmode.search_headings)vim.keymap.set("n","<leader>li",require("telescope").extensions.orgmode.insert_link)vim.keymap.set("n","<leader>ot",require("telescope").extensions.orgmode.search_tags)end, }You can setup the extension by doing:
require('telescope').load_extension('orgmode')
To replace the default refile prompt:
vim.api.nvim_create_autocmd('FileType', {pattern='org',group=vim.api.nvim_create_augroup('orgmode_telescope_nvim', {clear=true }),callback=function()vim.keymap.set('n','<leader>or',require('telescope').extensions.orgmode.refile_heading)end,})
:Telescope orgmode search_headings:Telescope orgmode refile_heading:Telescope orgmode insert_link:Telescope orgmode search_tags
require('telescope').extensions.orgmode.search_headingsrequire('telescope').extensions.orgmode.refile_headingrequire('telescope').extensions.orgmode.insert_linkrequire('telescope').extensions.orgmode.search_tags
Search and navigate to any headline across your org files with fuzzy matching.Headlines are sorted by most recently modified file by default. TODO states andpriorities are displayed as columns and can be filtered in the search.
Keybindings:
<C-Space>: Toggle between headline and org file search modes<C-f>: Toggle between all headlines and current file only<C-t>: Open tag picker for tag-based filtering
The maximum headline level and column visibility can beconfigured.
Search through org files rather than individual headlines. When org files havea#+TITLE: property, it is used for display and filtering instead of thefilename. This is particularly useful withorg-roam.nvim for fuzzysearching roam nodes.
Keybindings:
<C-Space>: Toggle back to headline search mode
Tag-based navigation workflow for quickly filtering headlines by org tags.Shows all tags with occurrence counts (e.g.,:work: (42)) sorted byfrequency. The preview pane displays up to 50 headlines containing theselected tag. Selecting a tag opens the headline search pre-filtered bythat tag, allowing further refinement.
Keybindings:
<C-s>: Toggle sort mode (frequency ↔ alphabetical)<C-t>: Return to headline search (preserves tag filter)<CR>: Select tag and open filtered headline search
The initial sort mode can beconfigured.
You can limit the maximum headline level included in the search.nil meansunlimited level,0 means only search for whole org files. The latter isequivalent withorg file search mode.
To enable the configuration for all commands, pass the option to the setupfunction of telescope:
require('telescope').setup({extensions= {orgmode= {max_depth=3 } }})
For a particular command you can pass it directly in your key mapping:
require('telescope').extensions.orgmode.search_headings({max_depth=3 })
All columns are shown by default. To selectively disable columns:
require('telescope').setup({extensions= {orgmode= {show_location=false,show_tags=false,show_todo_state=false,show_priority=false, } }})
Maximum widths for location and tags columns:
require('telescope').setup({extensions= {orgmode= {location_max_width=15,tags_max_width=15, } }})
The tag search can be configured with an initial sort mode:
-- Sort tags alphabetically by defaultvim.keymap.set("n","<leader>ot",function()require("telescope").extensions.orgmode.search_tags({initial_sort="alphabetical"})end)-- Sort tags by frequency by default (default behavior)vim.keymap.set("n","<leader>ot",function()require("telescope").extensions.orgmode.search_tags({initial_sort="frequency"})end)
Tags are case-sensitive (:work: ≠:Work:).
You can customize the telescope picker keymaps by passing amappings table:
require('telescope').extensions.orgmode.search_headings({mappings= {i= { ['<C-l>']=require('telescope-orgmode.actions').toggle_current_file_only, ['<C-s>']=require('telescope-orgmode.actions').toggle_headlines_orgfiles, },n= { ['<C-l>']=require('telescope-orgmode.actions').toggle_current_file_only, ['<C-s>']=require('telescope-orgmode.actions').toggle_headlines_orgfiles, } }})
You can also create key mappings for specific modes:
-- Search only org filesvim.keymap.set("n","<Leader>off",function()require('telescope').extensions.orgmode.search_headings({mode="orgfiles"})end, {desc="Find org files"})-- Search headlines in current file onlyvim.keymap.set("n","<Leader>ofc",function()require('telescope').extensions.orgmode.search_headings({only_current_file=true })end, {desc="Find headlines in current file"})
About
Neovim plugin. Telescope.nvim extension that adds orgmode.nvim integration.
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Contributors8
Uh oh!
There was an error while loading.Please reload this page.