This website is written in Markdown with MkDocs and mkdocs-material. We also use mkdocs-macros-plugin for rendering certain pages.
If you want to make small changes without changing how the website is structured, you can simply use GitHub's online editor and open a PR.
If you want to make huge changes or build the website yourself, install uv and run:
$ uv run mkdocs serve
This will install all dependencies and run mkdocs serve
.
The website uses pub-minifier to create minified JS, CSS and HTML code
when running mkdocs build
.
The minification is optional and will only take place if you have the tools.
To use this feature, run the following commands instead of uv run mkdocs build
:
$ npm ci
$ npm run build
These commands assume that you have node.js installed.
You might need GTK Runtime to support all the imaging stuff (e.g. social cards).
The server supports auto code reloading, so the website will automatically refresh if changes were made.
To build the website, run uv run mkdocs build
.
The website will be built in the site/
directory.
There are a few options configurable by the user via environment variables. These may be relevant if you fork this repository.
This sets the URL of the website. It is required if you plan to host the website on another domain (such as personal GitHub Pages).
This is the URL of the website repository.
You might want to change this so that the Edit
buttons work properly.
This is the version of Lite XL to download in the setup page.
This project follows typical MkDocs file structure.
.github/
: CI related filesdocs/
:.include/
: Jinja2 macros for mkdocs-macros-plugin.about/
assets/
screenshots/
: Screenshots of the editor.user-guide/
: User guide-related content.settings/
: Demo images for the settings GUI.
favicon.png
icon.svg
: Vector icon of Lite XL.keymap-macos.json
: Keymap file for macOS.keymap.json
: Keymap file for non-macOS platforms.
developer-guide/
setup/
stylesheets/
: Custom stylesheets for the entire website.extra.css
: Styles for custom syntax highlighting.
user-guide/
index.md
: Homepage.
overrides/
: Overrides for the theme
The "generate keymap" action should be run after each release to update the keymap. This workflow should run automatically, provided that the API keys used to invoke this workflow is still valid.
The keymap generation is currently a two-part process involving some
fix up on our side to match pymdown's syntax.
This can be found in fix-keymap.py
.