ruff/crates
Dhruv Manilawala 648cca199b
Add docs for Ruff language server (#12344)
## Summary

This PR adds documentation for the Ruff language server.

It mainly does the following:
1. Combines various READMEs containing instructions for different editor
setup in their respective section on the online docs
2. Provide an enumerated list of server settings. Additionally, it also
provides a section for VS Code specific options.
3. Adds a "Features" section which enumerates all the current
capabilities of the native server

For (2), the settings documentation is done manually but a future
improvement (easier after `ruff-lsp` is deprecated) is to move the docs
in to Rust struct and generate the documentation from the code itself.
And, the VS Code extension specific options can be generated by diffing
against the `package.json` in `ruff-vscode` repository.

### Structure

1. Setup: This section contains the configuration for setting up the
language server for different editors
2. Features: This section contains a list of capabilities provided by
the server along with short GIF to showcase it
3. Settings: This section contains an enumerated list of settings in a
similar format to the one for the linter / formatter
4. Migrating from `ruff-lsp`

> [!NOTE]
>
> The settings page is manually written but could possibly be
auto-generated via a macro similar to `OptionsMetadata` on the
`ClientSettings` struct

resolves: #11217 

## Test Plan

Generate and open the documentation locally using:
1. `python scripts/generate_mkdocs.py`
2. `mkdocs serve -f mkdocs.insiders.yml`
2024-07-18 17:41:43 +05:30
..
red_knot [red-knot] Reload notebook on file change (#12361) 2024-07-17 12:23:48 +00:00
red_knot_module_resolver [red-knot] Add basic workspace support (#12318) 2024-07-17 11:34:21 +02:00
red_knot_python_semantic [red-knot] better docs for use-def maps (#12357) 2024-07-17 17:50:58 -07:00
ruff Consider `--preview` flag for `server` subcommand (#12208) 2024-07-18 11:05:01 +05:30
ruff_benchmark [red-knot] Add basic workspace support (#12318) 2024-07-17 11:34:21 +02:00
ruff_cache Fix cache key collisions for paths with separators (#12159) 2024-07-03 07:36:46 -05:00
ruff_db [red-knot] Reload notebook on file change (#12361) 2024-07-17 12:23:48 +00:00
ruff_dev Drop deprecated `nursery` rule group (#10172) 2024-06-27 13:44:11 +02:00
ruff_diagnostics Move sub-crates to workspace dependencies (#11407) 2024-05-13 14:37:50 +00:00
ruff_formatter Use `indentation` consistently (#12293) 2024-07-12 14:08:56 +02:00
ruff_index [red-knot] per-definition inference, use-def maps (#12269) 2024-07-16 11:02:30 -07:00
ruff_linter [`pyupgrade`] Implement `unnecessary-default-type-args` (`UP043`) (#12371) 2024-07-17 19:45:43 +00:00
ruff_macros Drop deprecated `nursery` rule group (#10172) 2024-06-27 13:44:11 +02:00
ruff_notebook [red-knot] Add notebook support (#12338) 2024-07-17 08:26:33 +00:00
ruff_python_ast [red-knot] Add notebook support (#12338) 2024-07-17 08:26:33 +00:00
ruff_python_ast_integration_tests Rename `PreorderVisitor` to `SourceOrderVisitor` (#11798) 2024-06-07 17:01:58 +00:00
ruff_python_codegen Use `indentation` consistently (#12293) 2024-07-12 14:08:56 +02:00
ruff_python_formatter Insert empty line between suite and alternative branch after def/class (#12294) 2024-07-15 12:59:33 +02:00
ruff_python_index Enable token-based rules on source with syntax errors (#11950) 2024-07-02 08:57:46 +00:00
ruff_python_literal Remove some unused `pub` functions (#11576) 2024-05-28 09:56:51 -04:00
ruff_python_parser Enable token-based rules on source with syntax errors (#11950) 2024-07-02 08:57:46 +00:00
ruff_python_resolver chore(deps): update rust crate insta to v1.38.0 (#10701) 2024-04-01 15:44:30 +00:00
ruff_python_semantic Remove `BindingKind::ComprehensionVar` (#12347) 2024-07-16 11:18:04 -04:00
ruff_python_stdlib Regenerate sys.rs with stdlibs==2024.5.15 (#11437) 2024-05-15 22:17:32 +00:00
ruff_python_trivia Mention that `Cursor` is based on rustc's implementation. (#12109) 2024-06-30 16:53:25 +01:00
ruff_python_trivia_integration_tests Build `CommentRanges` outside the parser (#11792) 2024-06-09 09:55:17 +00:00
ruff_server Add docs for Ruff language server (#12344) 2024-07-18 17:41:43 +05:30
ruff_source_file red-knot: `source_text`, `line_index`, and `parsed_module` queries (#11822) 2024-06-13 07:37:02 +00:00
ruff_text_size Upgrade to Rust 1.79 (#11875) 2024-06-17 07:15:10 +01:00
ruff_wasm Publish wasm API to npm (#12317) 2024-07-17 08:50:38 +02:00
ruff_workspace Use more threads when discovering python files (#12258) 2024-07-10 09:29:17 +02:00