Home
Pages 42
Inbuilt modules:
core.autocommands
core.clipboard
core.clipboard.code-blocks
core.defaults
core.export
core.export.markdown
core.fs
core.highlights
core.integrations.nvim-cmp
core.integrations.nvim-compe
core.integrations.treesitter
core.integrations.truezen
core.integrations.zen_mode
core.itero
core.looking-glass
core.mode
core.neorgcmd
core.neorgcmd.commands.module.list
core.neorgcmd.commands.module.load
core.neorgcmd.commands.return
core.norg.completion
core.norg.concealer
core.norg.dirman
core.norg.dirman.utils
core.norg.esupports.hop
core.norg.esupports.indent
core.norg.esupports.metagen
core.norg.journal
core.norg.manoeuvre
core.norg.news
core.norg.qol.toc
core.norg.qol.todo_items
core.presenter
core.promo
core.queries.native
core.scanner
core.storage
core.syntax
core.tangle
core.upgrade
Clone this wiki locally
Using Neorg
At first configuring Neorg might be rather scary. I have to define what modules I want to use in the require('neorg').setup()
function?
I don't even know what the default available values are!
Don't worry, an installation guide is present here, so go ahead and read it!
Contributing to Neorg
Neorg is a very big and powerful tool behind the scenes - way bigger than it may initially seem. Modules are its core foundation, and building modules is like building lego bricks to form a massive structure. There's an in-the-works tutorial dedicated to making modules right here!
Module naming convention
Neorg provides default modules, and users can extend Neorg by creating community modules. We agreed on a module naming convention, and it should be used as is. This convention should help users know at a glance what function the module serves in the grand scheme of things.
- Core modules:
core.*
- Integrations with 3rd party software that are emdebbed in neorg:
core.integrations.*
- External modules:
external.*
- Integrations with 3rd party software that aren't emdebbed in neorg:
external.integrations.*
Default Modules
Neorg comes with some default modules that will be automatically loaded if you require the core.defaults
module:
-
core.clipboard.code-blocks
- Removes beginning whitespace from text copied from code blocks. -
core.itero
- Module designed to continue lists, headings and other iterables. -
core.keybinds
- Module for managing keybindings with Neorg mode support. -
core.looking-glass
- Allows for editing of code blocks within a separate buffer. -
core.norg.esupports.hop
- "Hop" between Neorg links, following them with a single keypress. -
core.norg.esupports.indent
- A set of instructions for Neovim to indent Neorg documents. -
core.norg.esupports.metagen
- A Neorg module for generating document metadata automatically. -
core.norg.journal
- Easily track a journal within Neorg. -
core.norg.news
- Handles the displaying of Neorg news and other forms of media in a popup. -
core.norg.qol.toc
- Generates a table of contents for a given Norg buffer. -
core.norg.qol.todo_items
- Module for implementing todo lists. -
core.promo
- Promotes or demotes nestable items within Neorg files. -
core.tangle
- An Advanced Code Block Exporter. -
core.upgrade
- Converts old versions of the Norg syntax to newer ones.
Other Modules
Some modules are not included by default as they require some manual configuration or are merely extra bells and whistles
and are not critical to editing .norg
files. Below is a list of all modules that are not required by default:
-
core.export
- Exports Neorg documents into any other supported filetype. -
core.export.markdown
- Interface forcore.export
to allow exporting to markdown. -
core.norg.completion
- A wrapper to interface with several different completion engines. -
core.norg.concealer
- Enhances the basic Neorg experience by using icons instead of text. -
core.norg.dirman
- This module is be responsible for managing directories full of .norg files. -
core.norg.manoeuvre
- A Neorg module for moving around different elements up and down. -
core.presenter
- Neorg module to create gorgeous presentation slides.
Developer modules
These are modules that are only meant for developers. They are generally required in other modules:
-
core.autocommands
- Handles the creation and management of Neovim's autocommands. -
core.clipboard
- A module to manipulate and interact with the user's clipboard. -
core.defaults
- Metamodule for storing the most necessary modules. -
core.fs
- A cross-platform set of utilities to traverse filesystems. -
core.highlights
- Manages your highlight groups with this module. -
core.integrations.nvim-cmp
- A module for integrating nvim-cmp with Neorg. -
core.integrations.nvim-compe
- A module for integrating nvim-compe with Neorg. -
core.integrations.treesitter
- A module designed to integrate Treesitter into Neorg. -
core.integrations.truezen
- Integrates the TrueZen module for use within Neorg. -
core.integrations.zen_mode
- Integrates and exposes the functionality ofzen-mode
in Neorg. -
core.mode
- Modes are a way of isolating different parts of Neorg based on the current mode. -
core.neorgcmd
- This module deals with handling everything related to the:Neorg
command. -
core.neorgcmd.commands.module.list
- List loaded modules. -
core.neorgcmd.commands.module.load
- Load a new module dynamically. -
core.neorgcmd.commands.return
- Return to last location before entering Neorg. -
core.norg.dirman.utils
- A set of utilities for thecore.norg.dirman
module. -
core.queries.native
- TS wrapper in order to fetch nodes using a custom table. -
core.scanner
- This module is an implementation of a scanner that can be used anywhere TS can't be used. -
core.storage
- Deals with storing persistent data across Neorg sessions. -
core.syntax
- Handles interaction for syntax files for code blocks.