1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
|
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- This file is autogenerated from manifest.json, so edit that. -->
<!-- DO NOT EDIT THIS FILE MANUALLY -->
# Lite XL plugins
Plugins for the [Lite XL text editor](https://github.com/lite-xl/lite-xl),
originally forked from the [lite plugins repository](https://github.com/rxi/lite-plugins).
If you can't find a plugin that suits your needs, check if someone has already
created an issue about it, otherwise feel free to create one yourself.
## How to install
To install a plugin:
* If the plugin links to a repository, follow its `README`.
* If the plugin is a single file or directory, drop it directly in:
* Linux `~/.config/lite-xl/plugins/`
* MacOS `~/.config/lite-xl/plugins/`
* Windows `C:\Users\(username)\.config\lite-xl\plugins\`
Or, if you have a Lite XL plugin manager, such as [`lpm`](https://github.com/adamharrison/lite-xl-plugin-manager),
you may install plugins by doing
```
lpm install plugin_name
```
*Note: if you make a pull request, do not edit this README.md file, as it's autogenerated;
the manifest.json file should be updated to include any new plugins added, as specified in the
[Lite XL plugin manifest specification](https://github.com/adamharrison/lite-xl-plugin-manager/blob/master/SPEC.md).*
*Please note, that in this official repository, any plugins that specify a `remote` must also
pin the remote to a specific commit hash. Any plugin that is hosted not in a repository,
but only with a `url` must provide a `checksum` that matches the existing plugin.*
*Any commits specified with a `remote` will automatically be checked for updates to the `latest` branch, and PRs will
automaticaly be created for them on a recurring basis to keep things up to date. Stubs can specify an alternate branch
to follow with `extra.follow_branch`.*
*Any non-conforming PRs will not be accepted. The table below will be updated automatically.*
*Any entries marked with an asterisk are hosted on external repositories.*
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- This file is autogenerated from manifest.json, so edit that. -->
<!-- DO NOT EDIT THIS FILE MANUALLY -->
---
## Plugins
| Plugin | Description |
| ------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`align_carets`](plugins/align_carets.lua?raw=1) | Align multiple carets and selections *([clip](https://user-images.githubusercontent.com/2798487/165631951-532f8d24-d596-4dd0-9d21-ff53c71ed32f.mp4))* |
| [`autoinsert`](plugins/autoinsert.lua?raw=1) | Automatically inserts closing brackets and quotes. Also allows selected text to be wrapped with brackets or quotes. |
| [`autosave`](plugins/autosave.lua?raw=1) | Automatically saves files when they are changed |
| [`autosaveonfocuslost`](plugins/autosaveonfocuslost.lua?raw=1) | Automatically saves files that were changed when the main window loses focus by switching to another application |
| [`autowrap`](plugins/autowrap.lua?raw=1) | Automatically hardwraps lines when typing |
| [`base16`](https://github.com/SmileYzn/base16.git)* | Theme manager with base16 color schemes for Lite XL. |
| [`bigclock`](plugins/bigclock.lua?raw=1) | Shows the current time and date in a view with large text *([screenshot](https://user-images.githubusercontent.com/3920290/82752891-3318df00-9db9-11ea-803f-261d80d5cf53.png))* |
| [`black`](https://git.sr.ht/~tmpod/black-lite)* | Integrates the [black](https://github.com/psf/black) Python formatter with lite |
| [`bracketmatch`](plugins/bracketmatch.lua?raw=1) | Underlines matching pair for bracket under the caret *([screenshot](https://user-images.githubusercontent.com/3920290/80132745-0c863f00-8594-11ea-8875-c455c6fd7eae.png))* |
| [`build`](https://github.com/lite-xl/lite-xl-ide.git)* | Provides a build system, messages window, and easily clickable errors. Supports an internal build system, and `make`. *([screenshot](https://raw.githubusercontent.com/lite-xl/lite-xl-ide/main/screenshots/build.png))* |
| [`centerdoc`](plugins/centerdoc.lua?raw=1) | Centers document's content on the screen and adds zen mode support *([screenshot](https://user-images.githubusercontent.com/3920290/82127896-bf6e4500-97ae-11ea-97fc-ba9a552bc9a4.png))* |
| [`cleanstart`](plugins/cleanstart.lua?raw=1) | Hides the treeview at start if no arguments passed to the executable are directories. Compatible with lite. |
| [`codeplus`](https://github.com/chqs-git/code-plus.git)* | Offers improvements such as highlighted comments and autocomplete for brackets, quotes and more. ([demo](https://s12.gifyu.com/images/Sckre.gif)) |
| [`colorpicker`](plugins/colorpicker.lua?raw=1) | Color picker dialog that supports html and rgb notations. |
| [`colorpreview`](plugins/colorpreview.lua?raw=1) | Underlays color values (eg. `#ff00ff` or `rgb(255, 0, 255)`) with their resultant color. *([screenshot](https://user-images.githubusercontent.com/3920290/80743752-731bd780-8b15-11ea-97d3-847db927c5dc.png))* |
| [`console`](https://github.com/franko/console)* | A console for running external commands and capturing their output *([gif](https://user-images.githubusercontent.com/3920290/81343656-49325a00-90ad-11ea-8647-ff39d8f1d730.gif))* |
| [`copyfilelocation`](plugins/copyfilelocation.lua?raw=1) | Copy file location to clipboard |
| [`custom_caret`](plugins/custom_caret.lua?raw=1) | Customize the caret in the editor |
| [`datetimestamps`](plugins/datetimestamps.lua?raw=1) | Insert date-, time- and date-time-stamps |
| [`debugger`](https://github.com/lite-xl/lite-xl-ide.git)* | Provides a debugger integration, with pluggable backends. Currently supports only gdb. *([screenshot](https://raw.githubusercontent.com/lite-xl/lite-xl-ide/main/screenshots/debugger.png))* |
| [`devicons`](https://github.com/PerilousBooklet/lite-xl-devicons)* | PerilousBooklet's treeview icons for software developers. |
| [`discord-presence`](https://github.com/vincens2005/lite-xl-discord2)* | Adds the current workspace and file to your Discord rich presence. Linux-only. |
| [`dragdropselected`](plugins/dragdropselected.lua?raw=1) | Provides basic drag and drop of selected text (in same document) |
| [`easingpreview`](https://github.com/ThaCuber/lite-xl-easingpreview)* | Adds a popup that displays the curve of Penner-styled easing functions. |
| [`editorconfig`](plugins/editorconfig) | [EditorConfig](https://editorconfig.org/) implementation for Lite XL |
| [`encodings`](https://github.com/jgmdev/lite-xl-encoding)* | Properly read files that are not encoded in UTF-8 or ASCII by auto-detecting their encoding and allows saving on different text encodings. |
| [`endwise`](https://github.com/LolsonX/endwise-lite-xl.git)* | Add end tags in variety of languages. Similar to [Vim Endwise](https://github.com/tpope/vim-endwise) |
| [`eofnewline`](https://github.com/bokunodev/lite_modules/blob/master/plugins/eofnewline-xl.lua?raw=1)* | Make sure the file ends with one blank line. |
| [`ephemeral_tabs`](plugins/ephemeral_tabs.lua?raw=1) | Preview tabs. Opening a doc will replace the contents of the preview tab. Marks tabs as non-preview on any change or tab double clicking. |
| [`equationgrapher`](https://github.com/thacuber2a03/equationgrapher)* | Graphs y=x equations. |
| [`eval`](plugins/eval.lua?raw=1) | Replaces selected Lua code with its evaluated result |
| [`evergreen`](https://github.com/TorchedSammy/Evergreen.lxl)* | Adds Treesitter syntax highlighting support |
| [`exec`](plugins/exec.lua?raw=1) | Runs selected text through shell command and replaces with result |
| [`extend_selection_line`](plugins/extend_selection_line.lua?raw=1) | When a selection crosses multiple lines, it is drawn to the end of the screen *([screenshot](https://user-images.githubusercontent.com/2798487/140995616-89a20b55-5917-4df8-8a7c-d7c53732fa8b.png))* |
| [`exterm`](https://github.com/ShadiestGoat/lite-xl-exterm)* | Allows to open an external console in current project directory |
| [`fallbackfonts`](https://github.com/takase1121/lite-fallback-fonts)* | Adds support for fallback fonts *([gif](https://raw.githubusercontent.com/takase1121/lite-fallback-fonts/master/assets/Iw18fI57J0.gif))* |
| [`findfileimproved`](https://github.com/jgmdev/lite-xl-threads)* | Threaded project find files. |
| [`fontconfig`](plugins/fontconfig.lua?raw=1) | Allows users to load fonts with [fontconfig](https://www.freedesktop.org/software/fontconfig/fontconfig-user.html). |
| [`fontpreview`](plugins/fontpreview.lua?raw=1) | Automatically displays a font with increasing sizes in a new view. |
| [`force_syntax`](plugins/force_syntax.lua?raw=1) | Change the syntax used for a file. |
| [`formatter`](https://github.com/vincens2005/lite-formatters)* | formatters for various languages |
| [`ghmarkdown`](plugins/ghmarkdown.lua?raw=1) | Opens a preview of the current markdown file in a browser window *([screenshot](https://user-images.githubusercontent.com/3920290/82754898-f7394600-9dc7-11ea-8278-2305363ed372.png))* Note: the page content is generated by sending the markdown file to Github's markdown rendering [API](https://docs.github.com/en/rest/markdown?apiVersion=2022-11-28). Requires a [GitHub token](https://docs.github.com/en/rest/markdown/markdown?apiVersion=2022-11-28#render-a-markdown-document-in-raw-mode) being provided |
| [`gitblame`](https://github.com/juliardi/lite-xl-gitblame)* | Shows "git blame" information of a line *([screenshot](https://raw.githubusercontent.com/juliardi/lite-xl-gitblame/main/screenshot_1.png))* |
| [`gitdiff_highlight`](https://github.com/vincens2005/lite-xl-gitdiff-highlight)* | highlight changed lines from git *([screenshot](https://raw.githubusercontent.com/vincens2005/lite-xl-gitdiff-highlight/master/screenshot.png))* |
| [`gitopen`](plugins/gitopen.lua?raw=1) | Open project files that are in a git commit (default=HEAD) |
| [`gitstatus`](plugins/gitstatus.lua?raw=1) | Displays git branch and insert/delete count in status bar *([screenshot](https://user-images.githubusercontent.com/3920290/81107223-bcea3080-8f0e-11ea-8fc7-d03173f42e33.png))* |
| [`gofmt`](plugins/gofmt.lua?raw=1) | Auto-formats the current go file, adds the missing imports and the missing return cases |
| [`gui_filepicker`](plugins/gui_filepicker.lua?raw=1) | Graphical filepicker using zenity or kdialog. |
| [`ide`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that provides the minimum functionalities for Lite XL to run as a minimal IDE. |
| [`ide_c`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for C/C++. |
| [`ide_java`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Java. |
| [`ide_javascript`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Javascript. |
| [`ide_lua`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Lua. |
| [`ide_python`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Python. |
| [`ide_rust`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Rust. |
| [`ide_tex`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for TeX. |
| [`ide_typescript`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Typescript. |
| [`ide_zig`](https://github.com/lite-xl/lite-xl-ide.git)* | A metapackage that turns Lite XL into an IDE for Zig. |
| [`immersive-title`](https://github.com/takase1121/lite-xl-immersive-title)* | Dark (or even Mica!) title bar for Lite XL |
| [`indent_convert`](plugins/indent_convert.lua?raw=1) | Convert between tabs and spaces indentation |
| [`indentguide`](plugins/indentguide.lua?raw=1) | Adds indent guides *([screenshot](https://user-images.githubusercontent.com/3920290/79640716-f9860000-818a-11ea-9c3b-26d10dd0e0c0.png))* |
| [`ipc`](plugins/ipc.lua?raw=1) | Adds inter-process communication support, single-instance mode and tab drag and drop between instances. |
| [`keymap_export`](plugins/keymap_export.lua?raw=1) | Exports the keymap to a JSON file. |
| [`kinc-projects`](https://github.com/Kode-Community/kinc_plugin)* | Adds [Kinc](https://github.com/Kode/Kinc) Project generation with basic build commands(depends on [`console`](https://github.com/franko/console)) |
| [`lfautoinsert`](plugins/lfautoinsert.lua?raw=1) | Automatically inserts indentation and closing bracket/text after newline |
| [`linenumbers`](plugins/linenumbers.lua?raw=1) | The ability to change the display of the line number *([screenshot](https://user-images.githubusercontent.com/5556081/129493788-6a4cbd7a-9074-4133-bab7-110ed55f18f7.png))* |
| [`lintplus`](https://github.com/liquid600pgm/lintplus)* | Advanced linter with ErrorLens-like error reporting. Compatible with linters made for `linter` *([screenshot](https://raw.githubusercontent.com/liquid600pgm/lintplus/master/screenshots/1.png))* |
| [`lite-debugger`](plugins/lite-debugger.lua?raw=1) | Debug Lite-XL's Lua VM interactively, if you're running it from a terminal. Warning: Will significantly slow down Lite-XL if installed. |
| [`lite-xl-vibe`](https://github.com/eugenpt/lite-xl-vibe)* | VI(vim?) bindings with a hint of DOOM Emacs, for lite-xl |
| [`litepresence`](https://github.com/TorchedSammy/Litepresence)* | Discord rich presence for Lite XL (display file editing in Discord) |
| [`lorem`](https://github.com/sheetcoder/lorem)* | Generates Lorem Ipsum placeholder dummy text |
| [`lsp`](https://github.com/lite-xl/lite-xl-lsp.git)* | Provides intellisense by leveraging the LSP protocol. |
| [`lsp_c`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for C/C++ with clangd. |
| [`lsp_clojure`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for clojure with clojure-lsp. |
| [`lsp_emmet`](https://github.com/lite-xl/lite-xl-lsp-servers)* | Automatic configuration/binary download for LSP completion for Emmet with emmet-language-server. |
| [`lsp_java`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for Java with jdtls. |
| [`lsp_json`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | LSP support for JSON via vscode-json-languageserver with [additional patches](https://github.com/lite-xl/lite-xl-lsp-servers/tree/latest/patches/vscode-json-languageserver) for increased functionality. |
| [`lsp_lua`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for Lua with lua-language-server (sumneko). |
| [`lsp_python`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for Python with Pyright. |
| [`lsp_quicklintjs`](https://github.com/lite-xl/lite-xl-lsp-servers)* | Automatic configuration/binary download for LSP linting for Javascript with quick-lint-js. |
| [`lsp_rust`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for Rust with rust-analyzer. |
| [`lsp_snippets`](https://github.com/vqns/lite-xl-snippets)* | Adds LSP snippets support to the snippets plugin |
| [`lsp_tex`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Automatic configuration/binary download for LSP completion for TeX with texlab. |
| [`lsp_typescript`](https://github.com/lite-xl/lite-xl-lsp-servers)* | Automatic configuration/binary download for LSP completion for Typescript and Javascript with typescript-language-server. |
| [`lsp_yaml`](https://github.com/lite-xl/lite-xl-lsp-servers)* | LSP support for YAML via yaml-language-server. |
| [`lsp_zig`](https://github.com/lite-xl/lite-xl-lsp-servers)* | LSP support for Zig via zls. |
| [`lspkind`](https://github.com/TorchedSammy/lite-xl-lspkind)* | Completion menu kind/type icons for Lite XL LSP |
| [`macmodkeys`](plugins/macmodkeys.lua?raw=1) | Remaps mac modkeys `command/option` to `ctrl/alt` |
| [`markers`](plugins/markers.lua?raw=1) | Add markers to docs and jump between them quickly *([screenshot](https://user-images.githubusercontent.com/3920290/82252149-5faaa200-9946-11ea-9199-bea2efb7ee23.png))* |
| [`memoryusage`](plugins/memoryusage.lua?raw=1) | Show memory usage in the status view |
| [`minimap`](plugins/minimap.lua?raw=1) | Shows a minimap on the right-hand side of the docview. Taken from [@andsve](https://github.com/andsve/lite-plugins/tree/minimap-plugin), and improved upon. |
| [`motiontrail`](plugins/motiontrail.lua?raw=1) | Adds a motion-trail to the caret *([gif](https://user-images.githubusercontent.com/3920290/83256814-085ccb00-a1ab-11ea-9e35-e6633cbed1a9.gif))* |
| [`navigate`](plugins/navigate.lua?raw=1) | Allows moving back and forward between document positions, reducing the amount of scrolling |
| [`nerdicons`](plugins/nerdicons.lua?raw=1) | File icons set for TreeView. Modification of the [nonicons](plugins/nonicons.lua) plugin. Uses [NerdFont](https://www.nerdfonts.com/) icons |
| [`nonicons`](plugins/nonicons.lua?raw=1) | File icons set for TreeView. Uses the [Nonicons](https://github.com/yamatsum/nonicons/) font |
| [`opacity`](plugins/opacity.lua?raw=1) | Change the opaqueness/transparency of `lite-xl` using shift+mousewheel or a command. |
| [`open_ext`](plugins/open_ext.lua?raw=1) | Automatically prompts you if you tried to open a binary file in the editor |
| [`openfilelocation`](plugins/openfilelocation.lua?raw=1) | Opens the parent directory of the current file in the file manager |
| [`openselected`](plugins/openselected.lua?raw=1) | Opens the selected filename or url |
| [`pdfview`](plugins/pdfview.lua?raw=1) | PDF preview for TeX files |
| [`plugin_manager`](https://github.com/lite-xl/lite-xl-plugin-manager.git)* | A plugin manager view for lite-xl that provides GUI access to `lpm` |
| [`primary_selection`](plugins/primary_selection.lua?raw=1) | Adds middle mouse click copy/paste (primary selection). To use this plugin, `xclip` must be installed. |
| [`profiler`](plugins/profiler) | Adds the ability to profile lite-xl with the [lua-profiler](https://github.com/charlesmallah/lua-profiler) |
| [`projectsearch`](https://github.com/jgmdev/lite-xl-threads)* | Threaded project search with 5-10x better performance. |
| [`rainbowparen`](plugins/rainbowparen.lua?raw=1) | Show nesting of parentheses with rainbow colours |
| [`regexreplacepreview`](plugins/regexreplacepreview.lua?raw=1) | Allows for you to write a regex and its replacement in one go, and live preview the results. |
| [`restoretabs`](plugins/restoretabs.lua?raw=1) | Keep a list of recently closed tabs, and restore the tab in order on ctrl+shift+t. |
| [`scalestatus`](plugins/scalestatus.lua?raw=1) | Displays current scale (zoom) in status view (depends on scale plugin) |
| [`scm`](https://github.com/lite-xl/lite-xl-scm)* | Extensible source control management plugin with git and fossil backends. |
| [`search_ui`](plugins/search_ui.lua?raw=1) | Friendlier search and replace user interface using Widgets. |
| [`select_colorscheme`](plugins/select_colorscheme.lua?raw=1) | Select a color theme, like VScode, Sublime Text.(plugin saves changes) |
| [`selectionhighlight`](plugins/selectionhighlight.lua?raw=1) | Highlights regions of code that match the current selection *([screenshot](https://user-images.githubusercontent.com/3920290/80710883-5f597c80-8ae7-11ea-97f0-76dfacc08439.png))* |
| [`settings`](plugins/settings.lua?raw=1) | Provides a GUI to manage core and plugin settings, bindings and select color theme *([video](https://user-images.githubusercontent.com/1702572/169743674-ececae24-f6b7-4ff2-bfa2-c4762cd327d9.mp4))*. (depends on [`widget`](https://github.com/lite-xl/lite-xl-widgets)) |
| [`smallclock`](plugins/smallclock.lua?raw=1) | Displays the current time in the corner of the status view |
| [`smartopenselected`](plugins/smartopenselected.lua?raw=1) | Opens the selected filename or path in project. Useful to open imports. |
| [`smoothcaret`](plugins/smoothcaret.lua?raw=1) | Smooth caret animation *([gif](https://user-images.githubusercontent.com/20792268/139006049-a0ba6559-88cb-49a7-8077-4822445b4a1f.gif))* |
| [`snippets`](https://github.com/vqns/lite-xl-snippets)* | Provides code snippets support |
| [`sort`](plugins/sort.lua?raw=1) | Sorts selected lines alphabetically |
| [`sortcss`](https://github.com/felixsanz/lite-xl-sortcss)* | Sort selected CSS properties alphabetically or using the concentric model. *([demo](https://raw.githubusercontent.com/felixsanz/lite-xl-sortcss/master/demo.gif))* |
| [`spellcheck`](plugins/spellcheck.lua?raw=1) | Underlines misspelt words *([screenshot](https://user-images.githubusercontent.com/3920290/79923973-9caa7400-842e-11ea-85d4-7a196a91ca50.png))* *-- note: on Windows a [`words.txt`](https://github.com/dwyl/english-words/blob/master/words.txt) dictionary file must be placed beside the exe* |
| [`statusclock`](plugins/statusclock.lua?raw=1) | Displays the current date and time in the corner of the status view |
| [`sticky_scroll`](plugins/sticky_scroll.lua?raw=1) | Keep track of the current scope at the top of the view (*[video](https://user-images.githubusercontent.com/2798487/222133911-e467a583-596c-47ab-8e65-eefc7b5c9112.mp4)*) |
| [`su_save`](plugins/su_save.lua?raw=1) | Save files that require root permissions. Needs `pkexec`. |
| [`svg_screenshot`](plugins/svg_screenshot.lua?raw=1) | Takes an SVG screenshot. Only browsers seem to support the generated SVG properly. |
| [`tab_switcher`](plugins/tab_switcher.lua?raw=1) | Switch between open tabs by searching by name |
| [`tabnumbers`](plugins/tabnumbers.lua?raw=1) | Displays tab numbers from 1–9 next to their names *([screenshot](https://user-images.githubusercontent.com/16415678/101285362-007a8500-37e5-11eb-869b-c10eb9d9d902.png))* |
| [`terminal`](https://github.com/adamharrison/lite-xl-terminal.git)* | An integrated terminal for lite-xl. *([screenshot](https://github.com/adamharrison/lite-xl-terminal/assets/1034518/eb8a72a0-ff61-4b95-b009-364ac2725f70))* |
| [`tetris`](plugins/tetris.lua?raw=1) | Allows you to play tetris directly in the editor. |
| [`texcompile`](plugins/texcompile.lua?raw=1) | Compile Tex files into PDF |
| [`theme16`](https://github.com/monolifed/theme16)* | Theme manager with base16 themes |
| [`themeselect`](plugins/themeselect.lua?raw=1) | Select a theme based on filename of active document |
| [`titleize`](plugins/titleize.lua?raw=1) | Titleizes selected string (`hello world` => `Hello World`) |
| [`todotreeview`](https://github.com/drmargarido/TodoTreeView)* | Todo tree viewer for annotations in code like `TODO`, `BUG`, `FIX`, `IMPROVEMENT` |
| [`togglesnakecamel`](plugins/togglesnakecamel.lua?raw=1) | Toggles symbols between `snake_case` and `camelCase` |
| [`treeview-extender`](https://github.com/juliardi/lite-xl-treeview-extender)* | Extend Lite XL's treeview menu *([screenshot](https://raw.githubusercontent.com/juliardi/lite-xl-treeview-extender/main/screenshot.png))* |
| [`typingspeed`](plugins/typingspeed.lua?raw=1) | Displays your current typing speed in characters and words per minute in the status bar |
| [`unboundedscroll`](plugins/unboundedscroll.lua?raw=1) | Allows scrolling outside the bounds of a document |
| [`updatechecker`](https://github.com/vincens2005/lite-xl-updatechecker)* | Automatically checks for updates and notifies you |
| [`visu`](https://github.com/TorchedSammy/Visu)* | Audio visualizer for Lite XL |
| [`wal`](https://github.com/ThaCuber/wal.lxl)* | `pywal` integration with Lite XL. |
| [`wordcount`](plugins/wordcount.lua?raw=1) | Adds in a word count to the statusview. |
## Languages
| Language | Description |
| --------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`language_angelscript`](plugins/language_angelscript.lua?raw=1) | Syntax for the [Angelscript](https://www.angelcode.com/angelscript/) programming language |
| [`language_assembly_riscv`](plugins/language_assembly_riscv.lua?raw=1) | Syntax for RISC-V assembly |
| [`language_assembly_x86`](plugins/language_assembly_x86.lua?raw=1) | Syntax for Intel x86 assembly |
| [`language_autohotkey_v1`](plugins/language_autohotkey_v1.lua?raw=1) | Syntax for the [AutoHotkey](https://www.autohotkey.com)(v1) programming language |
| [`language_batch`](plugins/language_batch.lua?raw=1) | Syntax for Windows [Batch Files](https://en.wikipedia.org/wiki/Batch_file) |
| [`language_bazel`](plugins/language_bazel.lua?raw=1) | Syntax for [Bazel](https://bazel.build/) build tool files. |
| [`language_bend`](plugins/language_bend.lua?raw=1) | Syntax for [Bend](https://higherorderco.com/) programming language files. |
| [`language_bib`](plugins/language_bib.lua?raw=1) | Syntax for [BibTex](https://en.wikipedia.org/wiki/BibTeX) files |
| [`language_blade`](plugins/language_blade.lua?raw=1) | Syntax for [Blade](https://github.com/blade-lang/blade/) files |
| [`language_blueprint`](plugins/language_blueprint.lua?raw=1) | Syntax for the [Blueprint](https://jwestman.pages.gitlab.gnome.org/blueprint-compiler/) markup language |
| [`language_brainfuck`](plugins/language_brainfuck.lua?raw=1) | Syntax for the [Brainfuck](https://en.wikipedia.org/wiki/Brainfuck) programming language |
| [`language_buzz`](plugins/language_buzz.lua?raw=1) | Syntax for the [Buzz](https://buzz-lang.dev/) programming language. |
| [`language_c7`](plugins/language_c7.lua?raw=1) | Syntax for the modifications to [fe](https://github.com/rxi/fe/) used in [cel7](https://rxi.itch.io/cel7) |
| [`language_caddyfile`](plugins/language_caddyfile.lua?raw=1) | Syntax for the Caddyfile used on the [Caddy](https://caddyserver.com/) web server |
| [`language_carbon`](plugins/language_carbon.lua?raw=1) | Syntax for the [Carbon programming language](https://github.com/carbon-language/carbon-lang). |
| [`language_clojure`](plugins/language_clojure.lua?raw=1) | Syntax for the [Clojure](https://clojure.org/) programming language |
| [`language_cmake`](plugins/language_cmake.lua?raw=1) | Syntax for the CMake build system language |
| [`language_containerfile`](https://github.com/FilBot3/lite-xl-language-containerfile)* | Syntax for [Containerfile](https://github.com/containers/common/blob/main/docs/Containerfile.5.md)/[Dockerfile](https://docs.docker.com/engine/reference/builder/) |
| [`language_crystal`](https://github.com/Tamnac/lite-plugin-crystal)* | Syntax for the [Crystal](https://crystal-lang.org) programming language |
| [`language_csharp`](plugins/language_csharp.lua?raw=1) | Syntax for the [C#](http://csharp.net) programming language |
| [`language_cue`](plugins/language_cue.lua?raw=1) | Syntax for the [CUE](http://cuelang.org) definition and validation programming language |
| [`language_d`](plugins/language_d.lua?raw=1) | Syntax for the [D](https://dlang.org/) programming language |
| [`language_dart`](plugins/language_dart.lua?raw=1) | Syntax for the [Dart](https://dart.dev/) programming languiage |
| [`language_diff`](plugins/language_diff.lua?raw=1) | Syntax for diff and patch files |
| [`language_djot`](https://github.com/Tamnac/lite-xl-djot)* | Syntax for the [Djot](https://djot.net/) markup language |
| [`language_edp`](plugins/language_edp.lua?raw=1) | Syntax for [FreeFEM++](http://freefem.org) programming language |
| [`language_ejs`](plugins/language_ejs.lua?raw=1) | Syntax for the [EJS](https://ejs.co/) javascript template engine |
| [`language_elixir`](plugins/language_elixir.lua?raw=1) | Syntax for the [Elixir](https://elixir-lang.org) programming language |
| [`language_elm`](plugins/language_elm.lua?raw=1) | Syntax for the [Elm](https://elm-lang.org) programming language |
| [`language_env`](https://github.com/anthonyaxenov/lite-xl-env-syntax)* | Syntax for the [env](https://hexdocs.pm/dotenvy/dotenv-file-format.html) (dotenv) files |
| [`language_erb`](plugins/language_erb.lua?raw=1) | Syntax for the [ERB](https://github.com/ruby/erb) programming language. Also known as eRuby or Embedded Ruby. |
| [`language_fe`](plugins/language_fe.lua?raw=1) | Syntax for the [fe](https://github.com/rxi/fe) programming language |
| [`language_fennel`](plugins/language_fennel.lua?raw=1) | Syntax for the [fennel](https://fennel-lang.org) programming language |
| [`language_fortran`](plugins/language_fortran.lua?raw=1) | Syntax for the [fortran](https://fortran-lang.org/) programming language |
| [`language_fstab`](plugins/language_fstab.lua?raw=1) | Syntax for the [fstab](https://en.wikipedia.org/wiki/Fstab) config files |
| [`language_gabc`](plugins/language_gabc.lua?raw=1) | Syntax for the [GABC](https://gregorio-project.github.io/gabc) music typesetting language |
| [`language_gdscript`](plugins/language_gdscript.lua?raw=1) | Syntax for the [Godot Engine](https://godotengine.org/)'s GDScript scripting language |
| [`language_glsl`](plugins/language_glsl.lua?raw=1) | Syntax for the [GLSL](https://www.khronos.org/registry/OpenGL/specs/gl/) programming language |
| [`language_gmi`](plugins/language_gmi.lua?raw=1) | Syntax for the [Gemtext](https://gemini.circumlunar.space/docs/gemtext.gmi) markup language |
| [`language_go`](plugins/language_go.lua?raw=1) | Syntax for the [Go](https://golang.org/) programming language |
| [`language_graphql`](plugins/language_graphql.lua?raw=1) | Syntax for the [GraphQL](https://graphql.org/) query language, and server-side runtime for executing queries using a type system. |
| [`language_gravity`](plugins/language_gravity.lua?raw=1) | Syntax for the [Gravity](https://marcobambini.github.io/gravity/) programming language. |
| [`language_groovy`](plugins/language_groovy.lua?raw=1) | Syntax for the [Groovy](https://en.wikipedia.org/wiki/Apache_Groovy) programming language |
| [`language_hare`](plugins/language_hare.lua?raw=1) | Syntax for the [Hare](https://harelang.org) programming language |
| [`language_haxe`](plugins/language_haxe.lua?raw=1) | Syntax for the [Haxe](https://haxe.org) programming language |
| [`language_hlsl`](plugins/language_hlsl.lua?raw=1) | Syntax for the [HLSL](https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl) programming language |
| [`language_hs`](plugins/language_hs.lua?raw=1) | Syntax for the [Haskell](https://www.haskell.org/) programming language |
| [`language_htaccess`](/plugins/language_htaccess.lua?raw=1) | Syntax for [.htaccess](https://httpd.apache.org/docs/2.4/howto/htaccess.html) files. |
| [`language_ignore`](https://github.com/anthonyaxenov/lite-xl-ignore-syntax)* | Syntax for [.gitignore](https://git-scm.com/docs/gitignore), [.dockerignore](https://docs.docker.com/engine/reference/builder/#dockerignore-file) and some other `.*ignore` files |
| [`language_ini`](plugins/language_ini.lua?raw=1) | Syntax for [ini](https://en.wikipedia.org/wiki/INI_file) files |
| [`language_java`](plugins/language_java.lua?raw=1) | Syntax for the [Java](https://en.wikipedia.org/wiki/Java_\(programming_language\)) programming language |
| [`language_jiyu`](plugins/language_jiyu.lua?raw=1) | Syntax for the [jiyu](https://github.com/machinamentum/jiyu) programming language |
| [`language_json`](plugins/language_json.lua?raw=1) | Syntax for the [JSON](https://www.json.org/json-en.html) language |
| [`language_jsx`](plugins/language_jsx.lua?raw=1) | Syntax for the [JSX](https://reactjs.org/docs/introducing-jsx.html) language for the React framework in JavaScript |
| [`language_julia`](plugins/language_julia.lua?raw=1) | Syntax for the [Julia](https://julialang.org/) programming language |
| [`language_kotlin`](plugins/language_kotlin.lua?raw=1) | Syntax for the [Kotlin](https://kotlinlang.org/docs/home.html) programming language |
| [`language_ksy`](https://raw.githubusercontent.com/whiteh0le/lite-plugins/main/plugins/language_ksy.lua?raw=1)* | Syntax for [Kaitai](http://kaitai.io/) struct files |
| [`language_lilypond`](plugins/language_lilypond.lua?raw=1) | Syntax for the [LilyPond](https://lilypond.org/) music typesetting language |
| [`language_liquid`](plugins/language_liquid.lua?raw=1) | Syntax for [Liquid](https://shopify.github.io/liquid/) templating language |
| [`language_lobster`](plugins/language_lobster.lua?raw=1) | Syntax for [Lobster](https://strlen.com/lobster/) programming language |
| [`language_lox`](plugins/language_lox.lua?raw=1) | Syntax for the [Lox](http://craftinginterpreters.com/the-lox-language.html) programming language, featured in the book '[Crafting Interpreters](http://craftinginterpreters.com/)'. |
| [`language_make`](plugins/language_make.lua?raw=1) | Syntax for the Make build system language |
| [`language_marte`](plugins/language_marte.lua?raw=1) | Syntax for [MARTe2](https://vcis.f4e.europa.eu/marte2-docs/master/html/index.html) configuration language |
| [`language_meson`](plugins/language_meson.lua?raw=1) | Syntax for the [Meson](https://mesonbuild.com) build system language |
| [`language_miniscript`](plugins/language_miniscript.lua?raw=1) | Syntax for the [MiniScript](https://miniscript.org) programming language |
| [`language_moon`](plugins/language_moon.lua?raw=1) | Syntax for the [MoonScript](https://moonscript.org) scripting language |
| [`language_nelua`](plugins/language_nelua.lua?raw=1) | Syntax for [Nelua](http://nelua.io/) programming |
| [`language_nginx`](plugins/language_nginx.lua?raw=1) | Syntax for [Nginx](https://www.nginx.com/) config files |
| [`language_nim`](plugins/language_nim.lua?raw=1) | Syntax for the [Nim](https://nim-lang.org) programming language |
| [`language_nix`](plugins/language_nix.lua?raw=1) | Syntax for the [Nix](https://nixos.wiki/wiki/Overview_of_the_Nix_Language) expression language |
| [`language_objc`](plugins/language_objc.lua?raw=1) | Syntax for the [Objective C](https://en.wikipedia.org/wiki/Objective-C) programming language |
| [`language_odin`](plugins/language_odin.lua?raw=1) | Syntax for the [Odin](https://github.com/odin-lang/Odin) programming language |
| [`language_openscad`](plugins/language_openscad.lua?raw=1) | Syntax for the [OpenSCAD](https://openscad.org/) programming language |
| [`language_perl`](plugins/language_perl.lua?raw=1) | Syntax for the [Perl](https://perl.org) programming language |
| [`language_php`](plugins/language_php.lua?raw=1) | Syntax for the [PHP](https://php.net) programming language |
| [`language_pico8`](plugins/language_pico8.lua?raw=1) | Syntax for [Pico-8](https://www.lexaloffle.com/pico-8.php) cartridge files |
| [`language_pkgbuild`](plugins/language_pkgbuild.lua?raw=1) | Syntax for [PKGBUILD](https://wiki.archlinux.org/title/PKGBUILD) package description files |
| [`language_po`](plugins/language_po.lua?raw=1) | Syntax for [PO](https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html) translation files |
| [`language_pony`](https://github.com/MrAnyx/lite-plugin-pony)* | Syntax for [Pony](https://www.ponylang.io/) programming language |
| [`language_powershell`](plugins/language_powershell.lua?raw=1) | Syntax for [PowerShell](https://docs.microsoft.com/en-us/powershell) scripting language |
| [`language_psql`](plugins/language_psql.lua?raw=1) | Syntax for the postgresql database access language |
| [`language_r`](plugins/language_R.lua?raw=1) | Syntax for [R](https://www.r-project.org/) scripting language |
| [`language_rescript`](plugins/language_rescript.lua?raw=1) | Syntax for the [ReScript](https://rescript-lang.org/) programming language |
| [`language_rivet`](plugins/language_rivet.lua?raw=1) | Syntax for the [Rivet](https://github.com/rivet-lang/rivet) programming language |
| [`language_ruby`](plugins/language_ruby.lua?raw=1) | Syntax for the [Ruby](https://www.ruby-lang.org/) programming language |
| [`language_rust`](plugins/language_rust.lua?raw=1) | Syntax for the [Rust](https://rust-lang.org/) programming language |
| [`language_sass`](plugins/language_sass.lua?raw=1) | Syntax for the [Sass](https://sass-lang.com/) CSS preprocessor |
| [`language_scala`](plugins/language_scala.lua?raw=1) | Syntax for the [Scala](https://scala-lang.org/) programming language |
| [`language_sh`](plugins/language_sh.lua?raw=1) | Syntax for shell scripting language |
| [`language_ssh_config`](plugins/language_ssh_config.lua?raw=1) | Syntax for ssh & sshd config files |
| [`language_swift`](plugins/language_swift.lua?raw=1) | Syntax for the [Swift](https://developer.apple.com/swift/) programming language |
| [`language_tal`](plugins/language_tal.lua?raw=1) | Syntax for the [Uxntal](https://wiki.xxiivv.com/site/uxntal) assembly language |
| [`language_tcl`](plugins/language_tcl.lua?raw=1) | Syntax for the [Tcl](https://www.tcl.tk/) programming language |
| [`language_teal`](plugins/language_teal.lua?raw=1) | Syntax for the [Teal](https://github.com/teal-language/tl) programming language, a typed dialect of Lua. |
| [`language_tex`](plugins/language_tex.lua?raw=1) | Syntax for the [LaTeX](https://www.latex-project.org/) typesetting language |
| [`language_toml`](plugins/language_toml.lua?raw=1) | Syntax for the [TOML](https://toml.io/en/) configuration language |
| [`language_ts`](plugins/language_ts.lua?raw=1) | Syntax for the [TypeScript](https://www.typescriptlang.org/) programming language, a typed dialect of JavaScript. |
| [`language_tsx`](plugins/language_tsx.lua?raw=1) | Syntax for [TSX](https://www.typescriptlang.org/docs/handbook/jsx.html) language |
| [`language_typst`](plugins/language_typst.lua?raw=1) | Syntax for [Typst](https://typst.app/) markup language |
| [`language_umka`](plugins/language_umka.lua?raw=1) | Syntax for the [Umka](https://github.com/vtereshkov/umka-lang) programming language. |
| [`language_v`](plugins/language_v.lua?raw=1) | Syntax for the [V](https://vlang.io/) programming language |
| [`language_vale`](https://github.com/programutox/lite-plugin-vale)* | Syntax for the [Vale](https://vale.dev) programming language |
| [`language_wren`](plugins/language_wren.lua?raw=1) | Syntax for the [Wren](http://wren.io/) programming language |
| [`language_yaml`](plugins/language_yaml.lua?raw=1) | Syntax for [YAML](https://yaml.org/) serialization language |
| [`language_zig`](plugins/language_zig.lua?raw=1) | Syntax for the [Zig](https://ziglang.org/) programming language |
## Libraries
| Library | Description |
| -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| [`encoding`](https://github.com/jgmdev/lite-xl-encoding)* | Add support for detecting file and string encodings as converting between them. |
| [`font_nonicons`](plugins/font_nonicons.lua?raw=1) | [Nonicons](https://github.com/yamatsum/nonicons/) font with mapping |
| [`font_symbols_nerdfont_mono_regular`](plugins/font_symbols_nerdfont_mono_regular.lua?raw=1) | [Nerd Font Symbols](https://github.com/ryanoasis/nerd-fonts/) font with mapping |
| [`jdk`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Production and Early-Access OpenJDK Builds, from Oracle. |
| [`net`](https://github.com/jgmdev/lite-xl-net)* | Add support for TCP and UDP sockets using SDL_net. |
| [`nodejs`](https://github.com/lite-xl/lite-xl-lsp-servers.git)* | Official NodeJs builds. |
| [`thread`](https://github.com/jgmdev/lite-xl-threads)* | Supports spawning true os-threads. |
| [`tree_sitter`](https://github.com/xcb-xwii/lite-xl-tree-sitter)* | Tree-sitter bindings based on `lua-tree-sitter` |
| [`widget`](https://github.com/lite-xl/lite-xl-widgets)* | Plugin library that provides a set of re-usable components to more easily write UI elements for your plugins |
| [`www`](https://github.com/adamharrison/lite-xl-www.git)* | A simple library that provides a web client to fetch, and submit data via HTTP requests. |
|