gitmyhub

orgmode

Lua ★ 3.8k updated 8d ago

Orgmode clone written in Lua for Neovim 0.11.0+.

nvim-orgmode brings Org mode task management and note-taking to Neovim, giving you a unified agenda view, quick task capture, and hierarchical to-do lists in plain-text .org files without leaving your editor.

LuaNeovimsetup: moderatecomplexity 2/5

nvim-orgmode is a plugin for Neovim, a text editor, that brings Org mode capabilities to it. Org mode is a system originally from the Emacs text editor for organizing notes, tasks, and schedules in plain-text files with a specific structured format. This plugin reimplements the core of that system so Neovim users can work with the same file format and workflow without switching to Emacs.

The plugin centers on two main workflows. The first is an agenda view, which collects tasks and scheduled items from one or more .org files and displays them in a unified calendar-style list. You can see what is due today, this week, or this month, filter by tags or keywords, and navigate between items. The second is a capture system, which lets you quickly save notes or new tasks to a designated file without leaving whatever you are currently working on.

Within an org file, the plugin supports hierarchical headings that can be promoted, demoted, or moved up and down. Each heading can carry a TODO state, tags, and dates with deadline or scheduled settings. Dates can repeat on configurable schedules. There is also support for clocking time on tasks, toggling checkboxes, and folding or unfolding sections.

Code blocks inside org files get syntax highlighting based on the language specified. Export to other formats is handled via Emacs or Pandoc if those are installed separately. A calendar popup for date editing and autocompletion for org keywords are also included.

Installation requires Neovim 0.11 or later and uses whatever plugin manager you already have set up. The plugin does not aim to be a full Emacs Org mode replacement; anything that is a separate Emacs plugin is intentionally left as a separate plugin in this ecosystem.

Where it fits