Managing Plugins
Lite XL implements many features as plugins. By default, Lite XL comes with a few built-in plugins for essential features such as treeview and workspace, while the Addons package provides more. All plugins can be found at the plugin repository.
Warning
Use caution as plugins may be managed externally by their contributors. The Lite XL team cannot guarantee the safety, stability or quality of community-contributed plugins.
Note
Support for plugins are provided on a best-effort basis. If the plugin is located in another repository, please open any issues / PRs on that repository.
Location
Plugins that come bundled with Lite XL are stored in DATADIR/plugins.
DATADIR is the directory where Lite XL’s Lua code is stored.
On macOS, DATADIR is always the application resources directory.
On other platforms, Lite XL checks whether lite-xl.exe is inside a directory called bin.
If true, Lite XL will set DATADIR as (path to lite-xl.exe)/../share/lite-xl.
This is similar to how most programs are structured on Unix-based platforms.
Otherwise, Lite XL sets DATADIR as (path to lite-xl.exe)/data.
User plugins should be installed into USERDIR/plugins.
USERDIR is the directory where user configuration is stored.
Plugin Managers
lpm is the de-facto plugin manager for Lite XL.
It is similar to apt and dnf which provides a command-line interface to manage plugins.
Installing plugins
To install a plugin with lpm, use lpm plugin install.
For example, to install lsp, run:
$ lpm plugin install lspThis will install/update the lsp plugin.
To install themes or libraries, you can use lpm color install
and lpm library install respectively.
Updating plugins
To update plugins with lpm, run lpm upgrade.
$ lpm upgradeThis will update all the plugins to their latest versions.
Uninstalling plugins
To uninstall a plugin, run lpm plugin uninstall.
For instance, to uninstall lsp, run:
$ lpm plugin uninstall lspUninstalling themes and libraries can be done with lpm color uninstall
and lpm library uninstall respectively.
Recommended plugins
Here are a list of plugins that most users would want:
| Plugin | Use case |
|---|---|
| align_carets | Align text on multiple carets and selections |
| autoinsert | Automatically insert closing brackets and quotes |
| autosave | Automatically saves the file when it is modified |
| bracketmatch | Highlight matching brackets |
| editorconfig | EditorConfig support for Lite XL |
| ephemeral_tabs | Ephemeral tabs (previewing files without creating multiple tabs) |
| gitdiff_highlight | Git diff gutter |
| indentguide | Indent guides |
| lint+ | Linter support |
| litepresence | Discord rich presence |
| lsp | Language Server support for Lite XL |
| lspkind | Completion menu kind/type icons for Lite XL LSP |
| minimap | Minimap |
| search_ui | Provides a better UI for searching text, based on [widget]. |
| selectionhighlight | Highlight code that matches the selection |
| settings | Settings GUI for Lite XL (requires the [widget] plugin) |
| terminal | Integrated terminal in Lite XL. |
| widgets | Widget toolkit for Lite XL. Needed for lsp and settings. |
Feature / Plugin Requests
If no plugins provide the features you wanted, you can request them in the issue tracker. Plugin developers occasionally browse the issue tracker for requests and implement them.
Alternatively, you can take the opportunity to implement the feature yourself, based on our documentation and existing plugins.