Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
156 changes: 156 additions & 0 deletions docs/user-guide/ide-progress-status.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
---
description: Check if your favourite language is supported.
---

# Lite XL IDE Progress Status

intro

## Development boards

- [Intellisense](https://github.com/users/PerilousBooklet/projects/6/views/1)
- [Utilities](https://github.com/users/PerilousBooklet/projects/7/views/1)
- [Build Integration](https://github.com/users/PerilousBooklet/projects/8/views/1)
- [Debug Integration](https://github.com/users/PerilousBooklet/projects/9/views/1)
- [Profiling Integration](https://github.com/users/PerilousBooklet/projects/10/views/1)

## Features

- Syntax highlighting for 100+ languages
- Intellisense support for 25+ languages
- Language-specific treeview icons
- VSCode-like minimap
- Project-wide text and filename search
- Multi-cursor editing
- Single/multi-line commenting with shortcuts
- Go to line n command
- Todo treeview
- Tooltips
- Integrated terminal
- Git integration
- Builder integration
- Debugger integration
- Markdown rendering support via [ghmarkdown](https://github.com/lite-xl/lite-xl-plugins/blob/master/plugins/ghmarkdown.lua) or [mdpreview](https://github.com/Not-a-web-Developer/lite-xl-mdpreview)

### WIP
- Foldable code blocks
- Horizontal scrolling for project treeview
- Ligatures support
- Github Copilot integration
- Project template manager
- Project-wide refactoring
- External libraries item in project treeview
- Custom Canvas API to allow an external renderer to draw on a surface that Lite XL will render on screen

### TODO
- Document symbols treeview
- Simultaneous tag rename for all languages that require it

## Languages

<!-- check: <span>&#9989;</span> or 1004 -->
<!-- x: <span>&#x274c;</span> or 1008 -->

| Language | Syntax High. | LSP support | Linting | Snippets | Formatter | Builder | Debugger |
|------------------|:--------------:|:-------------:|:---------:|:----------:|:----------:|:-----------:|:---------:|
| Arduino | <span>&#9989;</span> | | | | | | |
| Bash | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> ex | <span>&#9989;</span> | <span>&#9989;</span> | | |
| C# | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | |
| C/C++ | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> |<span>&#9989;</span>|
| Clojure | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | | |
| Cobol | | | | | | | |
| Crystal | <span>&#9989;</span> | <span>&#9989;</span> \* | | | <span>&#9989;</span> | | |
| CSS | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| D | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | | |
| Dart | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | | |
| Elixir | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Elm | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | | |
| Erlang | [WIP](https://github.com/lite-xl/lite-xl-plugins/pull/424) | <span>&#9989;</span> | <span>&#9989;</span> \* | <span>&#9989;</span> | | | |
| F# | [WIP](https://github.com/lite-xl/lite-xl-plugins/pull/423) | | | | | | |
| Fortran | <span>&#9989;</span> | <span>&#9989;</span> | | | | | |
| GDScript | <span>&#9989;</span> | | | | <span>&#9989;</span> | | |
| Go | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Groovy | <span>&#9989;</span> | <span>&#9989;</span> \* | <span>&#9989;</span> | | | | |
| Haskell | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| HTML | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Java | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Javascript | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | |
| JSON | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> |<span>&#x274c;</span>| | | |
| Julia | <span>&#9989;</span> | <span>&#9989;</span> \* | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Kotlin | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | |
| Lisp | | | | | | | |
| Lua | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> ex | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Nim | <span>&#9989;</span> | <span>&#9989;</span> \* | <span>&#9989;</span> \* | | | | |
| Nix | <span>&#9989;</span> | | | <span>&#9989;</span> | | | |
| Ocaml | [WIP](https://github.com/lite-xl/lite-xl-plugins/pull/429) | | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Odin | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | | |
| OpenSCAD | <span>&#9989;</span> | | | | | | |
| Perl | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | | | |
| PHP | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> ex | <span>&#9989;</span> | | | |
| Python | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | |
| R | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | |
| Ruby | <span>&#9989;</span> | <span>&#9989;</span> | | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Rust | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | |
| Scala | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | |
| SQL | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | |
| System Verilog | | | | | | | |
| TeX | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | | | |
| TOML | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#x274c;</span> | <span>&#9989;</span> | | |
| Typescript | <span>&#9989;</span> | <span>&#9989;</span> | | | | | |
| Typst | <span>&#9989;</span> | <span>&#9989;</span> \* | <span>&#9989;</span> | | | | |
| V | <span>&#9989;</span> | <span>&#9989;</span> | | | <span>&#9989;</span> | | |
| Vala | [WIP](https://github.com/lite-xl/lite-xl-plugins/pull/432) | <span>&#9989;</span> \* | <span>&#9989;</span> | | | | |
| Zig | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> ex | | <span>&#9989;</span> | | |
| XML | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#x274c;</span> | | | |
| YAML | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#9989;</span> | <span>&#x274c;</span> | <span>&#9989;</span> | | |

`*`: there are still some problems to solve

`ex`: external linter

## Bundles

| Language | LSP Bundle | LSP Bundle Package | IDE Package |
|------------------|:--------------:|:-------------:|:-------------:|
| Arduino | | | |
| Bash | | | |
| C# | | | |
| C/C++ | <span>&#9989;</span> | `lsp_c` | `ide_c` |
| Clojure | | | |
| Crystal | | | |
| CSS | | | |
| Dart | | | |
| Elixir | | | |
| ELM | | | |
| Erlang | | | |
| Go | | | |
| Groovy | | | |
| Haskell | | | |
| HTML | | | |
| Java | <span>&#9989;</span> | `lsp_java` | `ide_java` |
| Javascript | <span>&#9989;</span> | `lsp_typescript` | `ide_javascript` |
| JSON | <span>&#9989;</span> | `lsp_json` | |
| Julia | | | |
| Kotlin | | | |
| Lisp | | | |
| Lua | <span>&#9989;</span> | `lsp_lua` | `ide_lua` |
| Nim | | | |
| Nix | | | |
| Ocaml | | | |
| Odin | | | |
| OpenSCAD | | | |
| Perl | | | |
| PHP | | | |
| Python | <span>&#9989;</span> | `lsp_python` | `ide_python` |
| R | | | |
| Ruby | | | |
| Rust | <span>&#9989;</span> | `lsp_rust` | `ide_rust` |
| Scala | | | |
| SQL | | | |
| TeX | <span>&#9989;</span> | `lsp_tex` | `ide_tex` |
| Typescript | <span>&#9989;</span> | `lsp_typescript` | |
| Typst | | | |
| XML | | | |
| YAML | <span>&#9989;</span> | `lsp_yaml` | |
| Zig | <span>&#9989;</span> | `lsp_zig` | `ide_zig` |

1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ nav:
- "Introduction": user-guide/introduction.md
- "Configuration": user-guide/configuration.md
- "Managing Plugins": user-guide/managing-plugins.md
- "IDE Progress Status": "user-guide/ide-progress-status.md"
- "IDE Setup": "user-guide/ide-setup.md"
- "Language Server support": user-guide/lsp.md
- "Keymap": user-guide/keymap.md
Expand Down