diff --git a/.gitignore b/.gitignore index f9c93920c..bf65a8816 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ anki.prof target user.bazelrc .dmypy.json +rust-project.json diff --git a/BUILD.bazel b/BUILD.bazel index f97f95162..d85cc6356 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -1,4 +1,5 @@ load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar") +load("@rules_rust//rust:defs.bzl", "rust_analyzer") config_setting( name = "release", @@ -39,5 +40,10 @@ pkg_tar( tags = ["manual"], ) +rust_analyzer( + name = "rust_analyzer", + targets = ["//rslib:anki"], +) + # for version info exports_files(["defs.bzl"]) diff --git a/late_deps.bzl b/late_deps.bzl index 6e517e8e3..50d275af5 100644 --- a/late_deps.bzl +++ b/late_deps.bzl @@ -1,6 +1,8 @@ """Repo setup that can't happen until after defs.bzl:setup_deps() is run.""" load("@py_deps//:requirements.bzl", "pip_install") +load("@rules_rust//tools/rust_analyzer/raze:crates.bzl", "rules_rust_tools_rust_analyzer_fetch_remote_crates") def setup_late_deps(): pip_install() + rules_rust_tools_rust_analyzer_fetch_remote_crates() diff --git a/scripts/vscode-rust b/scripts/vscode-rust new file mode 100755 index 000000000..72423a132 --- /dev/null +++ b/scripts/vscode-rust @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +bazel run @rules_rust//tools/rust_analyzer:gen_rust_project +code . +