主な変更点は、 cargo installコマンドです。 その魅力は、貨物に外部プラグインをインストールできることです。 利用可能な拡張機能のリストはここにあります;プラグインの箱にはほとんどの場合cagro-プレフィックスが付いています。 それらのいくつかを使用した例を示します。
カーゴチェック
checkコマンドを使用すると、アセンブリなしでコードをチェックできます。 インストール:
cargo install cargo-check
buildコマンドを使用するのと同じように、使用方法は非常に簡単です。
cargo check
このコマンドは、プロジェクトのRustソースコードに基づいてすべての警告とエラーを表示します。
貨物編集
editコマンドを使用すると、依存関係を管理できます。 インストール:
cargo install cargo-edit
実際、 add 、 rm 、 listの 3つのコマンドがすぐにインストールされます。 次のように使用します。
cargo list env_logger ~0.3 hyper ~0.7 json_macro 0.1.1 log ~0.3 lua git: "https://github.com/jcmoyer/rust-lua53" mould path: "C:\\DEVELOPMENT\\rust-dev\\mould" r2d2 0.6.3 r2d2_sqlite 0.0.4 rusqlite 0.6.0 rust-crypto 0.2.34 rustc-serialize ~0.3.16 static-server path: "C:\\DEVELOPMENT\\rust-dev\\static-server" uuid 0.1.18
次を使用して依存関係を追加します。
cargo add <crate> [--dev|--build|--optional] [--vers=<ver>|--git=<uri>|--path=<uri>] [options]
カーゴグラフ
graphコマンドは、GraphViz形式の依存関係グラフを生成します。 おそらく、あなたはすでにいくつかのRustライブラリでこれを見ています。 インストール:
cargo install cargo-graph
グラフはstdoutで生成されるため、ファイル名を指定します。
cargo graph > deps.dot
DOTファイルからPNGを生成した後:
dot deps.dot -Tpng -o deps.png
起こったことは次のとおりです。
カーゴウォッチ
watchコマンドを使用すると、ファイルに変更が加えられたときにコードを自動的に収集できます。 このアプローチは、Node(Grunt、Gulp)の世界で非常に人気があります。 インストール:
cargo install cargo-watch
使用も同様に簡単です。
cargo watch
実際、コマンドは、ファイルの変更を監視するだけで、 ビルドコマンドとテストコマンドで無限ループを開始します。
ところで、すべてのコマンドについて、 ヘルプコマンドを使用してヘルプを取得できます。次に例を示します。
cargo help watch Usage: cargo-watch [watch] [options] cargo watch [options] cargo-watch [watch] [<args>...] cargo watch [<args>...] Options: -h, --help Display this message `cargo watch` can take one or more arguments to pass to cargo. For example, `cargo watch "test ex_ --release"` will run `cargo test ex_ --release` If no arguments are provided, then cargo will run `build` and `test`
貨物数
countコマンドを使用すると、コードに関する有用な統計を計算できます。 インストール:
cargo install cargo-count
入力するだけです:
cargo count
そして、次のレポートを受け取ります(彼は私を完全に喜んでいます!):
Gathering information... Language Files Lines Blanks Comments Code -------- ----- ----- ------ -------- ---- TOML 1 19 1 0 18 Python 1 63 11 5 47 Rust 7 824 89 17 718 HTML 41218 5218543 1016734 239837 3961972 CSS 5 907 130 38 739 C 37 19303 2665 1964 14673 C Header 25 3970 1049 1012 1907 C++ Header 1 9 1 3 5 JavaScript 788 4024 591 155 3278 -------- ----- ----- ------ -------- ---- Totals: 42083 5247662 1021271 243031 3983357
rustfmt
fmtコマンドを使用すると、コードを自動的にフォーマットできます。 Goには密接なアナログがあります。 インストール:
cargo install rustfmt
チームはかなり長い間コンパイルしており、これまでのところあまり安定していませんが、すでに非常に便利です。
ダイヤル:
cargo fmt
コードの書式設定を支援し、完了していないすべてのTODOを表示します。
まとめ
これで、すでに美しい貨物の利便性を大幅に高めることができます。 見通しは良好です。
PSところで、すべてのコマンドは、コンパイルして〜/ .cargo / bin /に追加する本格的なスタンドアロンのRustプログラムです。
ls -lah ~/.cargo/bin/ 33M drwxr-xr-x 1 denis_000 denis_000 0 15 12:17 . drwxr-xr-x 1 denis_000 denis_000 0 15 16:37 .. -rwxr-xr-x 1 denis_000 denis_000 3,5M 15 12:13 cargo-add.exe -rwxr-xr-x 1 denis_000 denis_000 2,2M 15 12:04 cargo-check.exe -rwxr-xr-x 1 denis_000 denis_000 3,3M 15 16:44 cargo-count.exe -rwxr-xr-x 1 denis_000 denis_000 2,4M 15 12:03 cargo-fmt.exe -rwxr-xr-x 1 denis_000 denis_000 3,1M 15 12:17 cargo-graph.exe -rwxr-xr-x 1 denis_000 denis_000 3,2M 15 12:13 cargo-list.exe -rwxr-xr-x 1 denis_000 denis_000 3,2M 15 12:12 cargo-rm.exe -rwxr-xr-x 1 denis_000 denis_000 3,3M 15 16:37 cargo-watch.exe -rwxr-xr-x 1 denis_000 denis_000 8,4M 15 12:03 rustfmt.exe