aboutsummaryrefslogtreecommitdiffstats
path: root/flymake-rust.el
Commit message (Collapse)AuthorAgeFilesLines
* Add support for checking with rustc.Brian Cully2021-02-221-77/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the rust compiler directly is, in general, weaker than using cargo because it’s not workspace-aware, and thus can’t tell that the missing ‘main’ function is actually in a different file somewhere else. However, rustc does allow me to pass rust code on standard input, which means I can run checks between file saves, which is at least somewhat useful. Unfortunately, while both rustc and cargo can be told to use JSON, and the objects roughly match, it has enough deviation to require slight code rework all over the place, to the point that it honestly probably would have been easier, and had less code duplication, to just use regexp on the human readable stuff. In addition to rustc, this patch also makes the following changes: * Emacs 27 is required, because I’m using ‘executable-find’ with the option second argument. This is needed so remote paths can be found for the checkers if the file being checked is also remote. * Removed the process filter. Now I’m only checking when everything is done. This simplified the code quite a lot, and shouldn’t be any slower. * Checker output is now processed on the idle timer with a very short delay. This retains something very close to previous speed and should prevent issues where a bug in the processing causes Emacs to appear to lock up.
* Fix off-by-one error for byte start/end.Brian Cully2021-02-211-2/+2
|
* Initial commit.Brian Cully2021-02-211-0/+194