рдирдорд╕реНрддреЗ!
рдореБрдЭреЗ рдХреЛрдб рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдо рдХреЛрдб рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ, рддреНрд░реБрдЯрд┐ рд╣реИ:
[Trace - 9:32:34 PM] Received response 'textDocument/formatting - (15)' in 0ms. Request failed: Reformat failed to complete successfully (-32603).
[Error - 9:32:34 PM] Request textDocument/formatting failed.
Message: Reformat failed to complete successfully
Code: -32603
cmd рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ rustftm рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдареАрдХ рд╣реИред
рдХреНрдпрд╛ рдЬрд╛рдВрдЪреЗрдВ рдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ?
рдЬреА рд╢реБрдХреНрд░рд┐рдпрд╛!
рд░рд╕реНрдЯрд╕реА 1.33.0 (2aa4c46cf 2019-02-28)
rustfmt 1.0.1-рд╕реНрдерд┐рд░ (be13559 2018-12-10)
рдХрд╛рд░реНрдЧреЛ 1.33.0 (f099fe94b 2019-02-12)
рд░рд╕реНрдЯрдЕрдк 1.17.0 (069c88ed6 2019-03-05)
рдореИрдВрдиреЗ рдЕрднреА VSCode рдФрд░ rls-vscode рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рд░рд╕реНрдЯ рд╕реАрдЦрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдФрд░ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реАред рдпрд╣ рдЬрд╛рдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреНрдпрд╛ рд╣реИ, рджреГрд╢реНрдп > рджреГрд╢реНрдп рдЦреЛрд▓реЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ (рдкреИрдирд▓) рд▓рд┐рдЦреЗрдВ рдФрд░ рдлрд┐рд░ Enter рджрдмрд╛рдПрдБред
рдЙрдмрдВрдЯреВ рдмреБрдЧреНрдЧреА 18.04.2 рдПрд▓рдЯреАрдПрд╕ рдЪрд▓ рд░рд╣рд╛ рд╣реИ
рд░рд╕реНрдЯрд╕реА 1.33.0 (2aa4c46cf 2019-02-28)
rustfmt 1.0.1-рд╕реНрдерд┐рд░ (be13559 2018-12-10)
рдХрд╛рд░реНрдЧреЛ 1.33.0 (f099fe94b 2019-02-12)
рд░рд╕реНрдЯрдЕрдк 1.17.0 (069c88ed6 2019-03-05)
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рдЖрд░рдПрд▓рдПрд╕ рдХреЗ рд╕рд╛рде рд╣реА рдПрдХ рдореБрджреНрджрд╛ рд╣реИред рдпрд╣ рд╕реВрдЪреА рдореЗрдВ рдЙрдЪреНрдЪ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рд╕реБрд▓рдЭрд╛ рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рдХреНрдпрд╛ рдЕрдкрд╕реНрдЯреНрд░реАрдо рд╕рдорд╕реНрдпрд╛ https://github.com/rust-lang/rls/issues/1397 рд╣реИ?
рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?
рдореБрдЭреЗ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкреНрд░рд╛рд░реВрдк рдореЗрд░реА рдУрд░ рд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
рдореБрдЭреЗ рднреА рдпрд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реАред
рдирдорд╕реНрддреЗ
рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбреАрдЖрдИрдЖрд░ рдХреЗ рднреАрддрд░ рд╕реЗ "рдХрд╛рд░реНрдЧреЛ рдПрдлрдПрдордЯреА" рдЬрд╛рд░реА рдХрд░реЗрдВред рдпрд╣ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЧрд╛ рдХрд┐ рдлрд╝реЙрд░реНрдореЗрдЯрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореЗрд░рд╛ рдЯреВрд▓рдЪреЗрди рдХрд╛рд░реНрдЧреЛ-fmt.exe рд╕реЗ рдЪреВрдХ рдЧрдпрд╛ред рдЙрд╕рдХреЗ рдмрд╛рдж рдЗрд╕рдиреЗ рдХрдорд╛рдВрдбрд▓рд╛рдЗрди рд╕реЗ рдФрд░ vscode рдХреЗ рднреАрддрд░ рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ "рдХрд╛рд░реНрдЧреЛ рдПрдлрдПрдордЯреА" рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрдм рдореИрдВ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдпрд╣ рд╣рд╛рд▓ рд╣реА рдореЗрдВ VSCode рдХреЗ рднреАрддрд░ рднреА рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рдЕрдм рдореБрдЭреЗ рд╣рд░ рдмрд╛рд░ рдКрдкрд░ рдмрддрд╛рдИ рдЧрдИ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред
рдпрд╣рд╛рдВ рд╡рд╣реА, cargo fmt
рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди Format Document
рдЪрд▓рд╛рдиреЗ рд╕реЗ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:
[Error - 4:45:32 PM] Request textDocument/formatting failed.
Message: Reformat failed to complete successfully
Code: -32603
рдореИ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ
rustc 1.37.0 (eae3437df 2019-08-13)
rustfmt 1.3.0-stable (d3345024 2019-06-09)
cargo 1.37.0 (9edd08916 2019-08-02)
рдореИрдВрдиреЗ рдпрд╣ рднреА рджреЗрдЦрд╛ рдХрд┐ vscode рдХреЗ рд╕реНрдЯреЗрдЯрд╕ рдмрд╛рд░ рдореЗрдВ RLS [building]
рд╕реНрдкрд┐рдирд░ рдХрднреА рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ рдЬрдм рдореИрдВ рд╕рд╣реЗрдЬрддрд╛ рд╣реВрдВ рддреЛ рдЙрдкрд░реЛрдХреНрдд рддреНрд░реБрдЯрд┐ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдХреЛрдИ рдЖрдЙрдЯрдкреБрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдореЗрд░реЗ рдкрд╛рд╕ рд╡реАрдПрд╕ рдХреЛрдб 1.37 рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реА рдПрдХ рдорд╢реАрди рд╣реИ рдЬреЛ рдареАрдХ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдФрд░ рджреВрд╕рд░реА 1.38.1 рдЪрд▓ рд░рд╣реА рд╣реИ рдЬреЛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рдХреЗ рдореБрджреНрджреЗ рд╕реЗ рдПрдХ рдкреНрд░рддрд┐рдЧрдорди рдерд╛ред
рдореЗрд░реЗ рдЬреИрд╕реЗ рдирдП рд╕рд╛рдерд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдЪреЗрддрд╛рд╡рдиреА рдЬреЛ рдЕрднреА-рдЕрднреА рд░рд╕реНрдЯ рд╕реАрдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ rls-vscode
рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░ рд╕рдХреЗред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ Cargo.toml рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдореЗрд░реЗ рд▓рд┐рдП Cargo.toml
рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ :( рдореИрдВ macOS 10.15 рдкрд░ VS рдХреЛрдб 1.40.2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдЬрдм рдореИрдВ рдкреНрд░рд╛рд░реВрдк рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдХреЛрдИ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдпрд╛ рд▓реЙрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдФрд░ rustfmt
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЖрдЦрд┐рд░рдХрд╛рд░ рдХрд╛рдо рдХрд░рдирд╛ - рдореЗрд░реА рд╡реАрдПрд╕ рдХреЛрдб рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлреЙрд░реНрдореЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдкреНрд░реАрдЯреАрдпрд░ рдХрд╛ рдЧрд▓рдд рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛
rustfmt рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдкрд░ рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ rustfmt рд╕реЗ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рдХреЛрдб rustfmt рдХреЗ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ:
match var.name{
name if
//BAD COMMENT causes fmt error
name.contains("smth")
// other comment
| name.contains("smth else") => {true}
_ => false,
}
рдХрд╛рд░рдг рдЖрд░рдПрд▓рдПрд╕ рддреНрд░реБрдЯрд┐ рдХрд╛рдлреА рдЪреБрдк рд╣реИред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ рдореИрдВрдиреЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдХреА рдФрд░ рд░рд╕реНрдЯрдЕрдк рдХреЗ рд╕рд╛рде рдЕрджреНрдпрддрди рдЬрдВрдЧ (рдЬреЛ рдХрд┐ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдереА)ред
rustfmt рдХреЗ рд╕рд╛рде рдореИрдиреБрдЕрд▓ рдлрд╝реЙрд░реНрдореЗрдЯрд┐рдВрдЧ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ (рдЗрд╕рд▓рд┐рдП rustfmt рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд▓рд┐рдВрдХ):
rustfmt /path/to/file.rs
error[internal]: left behind trailing whitespace
--> /path/to/file.rs:157:157:19
|
157 | name if
| ^
|
warning: rustfmt has failed to format. See previous 1 errors.
рдпрд╣ рддреНрд░реБрдЯрд┐ рдЕрднреА рднреА рдареАрдХ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ?
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?