Size: a a a

2020 November 16

KB

Kirill Bulatov in Rust Beginners
Kirill Bulatov
А там всё просто: раньше был RLS (то есть language server, бинарь) + расширения-плагины (в том числе, одно для VSCode), но не взлетело: делали архитектурно кривовато, зарылись.

Параллельно пилили RA, там как-то так всё бодро пошло, что решили, что это будет rls-2.0 , а пока переходный период: от rls никто ничего не ждёт, но он работает и есть не просит, местами получше RA сделан.

RA это тоже language server + расширения-плагины, пока не пересекается с RLS, но сделана работа по объединению двух плагинов для VSCode в один, общий, чтобы потом можно было только бинарь новый скачать и втихаря перейти с rls на RA :)
RA допиливают до какого-то feature parity с rls, есть RFC на тему того, что он станет когда-то единственно верным плагином: https://github.com/rust-lang/rfcs/pull/2912

Трекают прогресс здесь: https://github.com/rust-analyzer/rust-analyzer/issues/4224
источник

KB

Kirill Bulatov in Rust Beginners
Staaaaaa
У меня в vscode + rust-analyzer рефакторинги плохо работают. Тот же ренейм вечно что-то да забудет :(
Помогает завести issue (если ещё нет) с упрощённым примером.

Пока из фундаментальных косяков на эту тему только один вспоминаю: невозможность по нескольким крейтам переименовать использования.

Остальное решаемо.
источник

SB

Serge Barinov in Rust Beginners
макросы раскрывает? в частности, у async_std куча реимпортов в макросах
источник

KB

Kirill Bulatov in Rust Beginners
Serge Barinov
макросы раскрывает? в частности, у async_std куча реимпортов в макросах
Декларативные + derive умеет.
Derive ценой полного прогона cargo check и время от времени новая версия Раста ломает derive раскрывалку)
источник

SB

Serge Barinov in Rust Beginners
долго он вообще качается?
источник

KB

Kirill Bulatov in Rust Beginners
Serge Barinov
долго он вообще качается?
У меня мигом, там порядка 20MB, вроде.
источник

S

Staaaaaa in Rust Beginners
Kirill Bulatov
Помогает завести issue (если ещё нет) с упрощённым примером.

Пока из фундаментальных косяков на эту тему только один вспоминаю: невозможность по нескольким крейтам переименовать использования.

Остальное решаемо.
угу, в рамках крейта вроде не косячит - Clion на нескольких крейтах справляется с ренеймом хорошо.   Но ощущение что я не в 2020 году на расте, а где-то  в 2003 на visual studio .net не покидает )))
источник

MB

Mikail Bagishov in Rust Beginners
Serge Barinov
долго он вообще качается?
Можно из исходников поставить, если почему-то бинарник не скачивается
источник

KB

Kirill Bulatov in Rust Beginners
Staaaaaa
угу, в рамках крейта вроде не косячит - Clion на нескольких крейтах справляется с ренеймом хорошо.   Но ощущение что я не в 2020 году на расте, а где-то  в 2003 на visual studio .net не покидает )))
Примерно так и есть: обе три главных Rust ide пока очень сильно далеки от завершения.

Так что привыкай.
источник

MB

Mikail Bagishov in Rust Beginners
Mikail Bagishov
Можно из исходников поставить, если почему-то бинарник не скачивается
git clone https://github.com/rust-analyzer/rust-analyzer
cd rust-analyzer
cargo xtask install
источник

DF

Dollar Føølish in Rust Beginners
Ребята а xargo щас депрекат? Чем таски для крос компиляции запускают ?
источник

r

red75prime in Rust Beginners
Dollar Føølish
Ребята а xargo щас депрекат? Чем таски для крос компиляции запускают ?
Я -Z build-std использую. Оно ещё сырое, но пока проблем не было.
источник

DF

Dollar Føølish in Rust Beginners
Спасибо
источник

SB

Serge Barinov in Rust Beginners
Mikail Bagishov
git clone https://github.com/rust-analyzer/rust-analyzer
cd rust-analyzer
cargo xtask install
через rustup можно поставить как-то?
источник

KB

Kirill Bulatov in Rust Beginners
Serge Barinov
через rustup можно поставить как-то?
Можно, но хз, какая там версия и как часто обновляется.
источник

KB

Kirill Bulatov in Rust Beginners
Serge Barinov
через rustup можно поставить как-то?
Компонент rust-analyzer-preview
источник

DN

Denis Nevmerzhitskii in Rust Beginners
John Meow
Вим показывает, вскодом принципиально не пользуюсь
А как в виме включить? У меня ra с coc стоят, но как вывести тип, не разобрался ещё
источник

JM

John Meow in Rust Beginners
Denis Nevmerzhitskii
А как в виме включить? У меня ra с coc стоят, но как вывести тип, не разобрался ещё
Хз, у меня из коробки заработало
источник

JC

Julian =) Coffee in Rust Beginners
Serge Barinov
хардкорщик) в вим рефакторинг возможен? типа rename fn/variable, импорт добавить и все такое?
Ну rename через lsp точно есть
источник

JC

Julian =) Coffee in Rust Beginners
Denis Nevmerzhitskii
А как в виме включить? У меня ra с coc стоят, но как вывести тип, не разобрался ещё
Оно возможно только в neovim работает
источник