Visual Studio Code

تایپ‌ها در کد Rust حذف شده اند که باعث می‌شود یک IDE خوب حتی مفیدتر از++C باشد. کد ویژوال استودیو برای Rust در Chromium به خوبی کار می کند و برای استفاده از آن،

  • اطمینان حاصل کنید که VSCode شما دارای extension rust-analyzer است، نه فرم‌های قبلی پشتیبانی از Rust
  • gn gen out/Debug --export-rust-project (یا معادل آن برای دایرکتوری خروجی شما)
  • ln -s out/Debug/rust-project.json rust-project.json
Example screenshot from VSCode

اگر مخاطب به طور طبیعی نسبت به IDE‌ها علاقه نداشته باشد، نمایش برخی از ویژگی‌های code annotation و کاوش در rust-analyzer می‌تواند مفید باشد.

مراحل زیر ممکن است به نسخه نمایشی کمک کند (اما در عوض از یک قطعه Rust مربوط به Chromium که بیشتر با آن آشنا هستید استفاده کنید):

  • components/qr_code_generator/qr_code_generator_ffi_glue.rs را باز کنید
  • مکان نما را روی فراخوانی QrCode::new (حدود خط 26) در `qr_code_generator_ffi_glue.rs قرار دهید
  • نسخه‌ی نمایشی **نمایش مستندات ** (typical bindings: vscode = ctrl k i; vim/CoC = K).
  • نسخه‌ی Demo یا نمایشی go to definition (typical bindings: vscode = F12; vim/CoC = g d). (این شما را به //third_party/rust/.../qr_code-.../src/lib.rs می‌رساند.)
  • نسخه آزمایشی outline و در ادامه به متد QrCode::with_bits بروید (حدود خط 164؛ طرح کلی در پنجره file explorer در vscode است؛ typical vim/CoC bindings = space o)
  • نسخه‌ی نمایشی type annotations (مثال های بسیار خوبی در متد QrCode::with_bits وجود دارد)

ممکن است مهم باشد که gn gen ... --export-rust-project باید پس از ویرایش فایل‌های BUILD.gn (که در طول تمرین‌های این جلسه چند بار انجام می‌دهیم) دوباره اجرا شود.