summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-16Improve rust--format-fix-rustfmt-bufferSergey Vinokurov
2021-10-16update readme and bump versionbrotzeit
2021-10-16adjust emacs_versions used for cibrotzeit
2021-10-16drop run_rust_emacs_tests.sh and use make test in cibrotzeit
2021-10-16Update README.mdAyrat Badykov
2021-09-09Don't include the `', ` in compilation highlightingZephyr Shannon
It's more distracting than helpful.
2021-09-09Fix cargo compilation regex starting matchZephyr Shannon
Previously this regex attempted to match the entire cargo output including the name of the thread that panicked and the entire panic message. In addition it was required that there be whitespace before the start of the word "thread" in that output. I don't know if this was the previous format, but in current Rust compilers "thread" comes at the beginning of the first line. However, there were two problems with this approach. One is that making that leading whitespace mandatory caused the regex to not match correctly. The second problem is that multiline regex matching in emacs is a bit iffy, and even matching the start correctly, if the panic message contained enough characters the full multiline regex could not be matched and the same problem would occur. This commit changes and vastly simplifies the regex to search for the guaranteed portion of the cargo output, starting with the ending `', `. This does come with an increased risk of accidentally matching input that is not actually a panic message, but I think in practice this will be fairly rare.
2021-04-23Make most additional libraries optionalJonas Bernoulli
2021-04-23Create rust-utils.el from existing codeJonas Bernoulli
2021-04-23Create rust-cargo.el from existing codeJonas Bernoulli
2021-04-23Create rust-playpen.el from existing codeJonas Bernoulli
2021-04-23Create rust-rustfmt.el from existing codeJonas Bernoulli
2021-04-23rust-end-of-string: Move definitionJonas Bernoulli
2021-04-23Properly markup two additional section headingsJonas Bernoulli
2021-04-23Add non-empty commentary section, slightly reword summaryJonas Bernoulli
2021-04-23Create rust-compile.el from existing codeJonas Bernoulli
For the time being `require' the new library from "rust-mode.el". In the mid-term we should stop doing that, so that users can load it if and only if they want to do so.
2021-04-23rust-mode: CosmeticsJonas Bernoulli
2021-04-23test: Suppress some noisy messagesJonas Bernoulli
2021-04-23Add MakefileJonas Bernoulli
2021-04-23Add .dir-locals.elJonas Bernoulli
2021-04-23Remove "-face" suffix from names of facesJonas Bernoulli
As mentioned in (info "(emacs)Defining Faces") the name of a face > should not end in "-face" (that would be redundant). For historic reasons a few built-in faces actually do end with "-face" and it so happens that our faces are closely related to just those `font-lock' faces and that probably inspired our use of the suffix. Even so, we should stop now.
2021-02-26Add release build/run functionsAdam Gleave
2020-12-04Update README.mdNathan Moreau
2020-12-04Add rust-check functionAlyssa Ross
Because check exists and is so much faster, I only ever want to build when I want to test the binary, in which case I'd use run. So I think it's more useful to have a rust-check function available than it is to even have rust-compile.
2020-07-09Set default directory when compiling.Nathan Moreau
2020-07-09Divide library into sectionsJonas Bernoulli
2020-07-09Various cosmetic changesJonas Bernoulli
2020-07-09rearrange IV: MiscJonas Bernoulli
2020-07-09rearrange III: ModeJonas Bernoulli
2020-07-09rearrange II: Regexp variables and functionsJonas Bernoulli
2020-07-09rearrange I: Move options and faces to beginning of fileJonas Bernoulli
2020-07-09Improve doc-stringsJonas Bernoulli
2020-06-18compile-mode integration: add link to code references. (#391)Nathan Moreau
This allows to jump to code references such as lines 82 and 132 in the following snippet error message. error[E0061]: this function takes 1 parameter but 2 parameters were supplied --> file6.rs:132:34 | 82 | fn duration_ms_since(time: &Option<SystemTime>) -> u128 { | ------------------------------------------------------- defined here ... 132 | self.total_time_ms = duration_ms_since(&self.program_start, 2); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2020-06-18Fix README internal link (#389)Spencer Nelson
2020-06-15Minor fixes (#388)Jonas Bernoulli
* Rename rust-mode-font-lock-keywords to rust-font-lock-keywords. * Rename rust-mode-keywords to rust-keywords. * Properly define rust-buffer-project.
2020-06-03rustc-colon-compilation-regexps: improve highlighting.Nathan Moreau
2020-05-28Add missing ‘require’ form.Philipp Stephani
‘compilation-face’ is defined in the ‘compile’ library, so we should ‘require’ that library.
2020-05-23Update README.mdTshepang Lekhonkhobe
typo
2020-05-17Change 'rust-build' to 'rust-compile' in README.mdNorberto Lopes
2020-05-17Test byte compilation of test code.Nathan Moreau
2020-05-17Fix various byte compilation warnings in rust-mode-tests.el.Philipp Stephani
- Migrate to lexical binding. - Declare functions that are conditionally-defined. - Migrate off the deprecated ‘cl’ library. - Don’t use ‘setq’ to introduce global variables and constants. - Avoid “unused lexical variable” warnings. - Remove some unused variables. - Stop using interactive-only commands.
2020-05-13Re-implement rust-in-macro for performancePhillip Lord
rust-in-macro could cause significant performance problems resulting in a very choppy user experience. Reimplement rust-in macro in a somewhat simpler manner and in way which allows both allows restriction to parts of the buffer and caching of buffer analysis. Optimize rust-syntax-propertize to use this caching mechanism. Fixes #208 Fixes #288
2020-05-09Check for -> and => early in rust-ordinary-lt-gt-pTrevor Spiteri
Since the check for -> and => is very cheap, move it up in rust-ordinary-lt-gt-p potentially saving much more expensive checks. Also use simple equality check instead of regex function looking-at for checking following character.
2020-05-09Use <kbd> to indicate keyboard input in README (#375)Christopher Warrington
Fixes the flow of the sentence "Command like TAB should indent correctly." Previously, on GitHub, this read as "Commands like should indent correctly." On GitHub, <kbd> elements also look like keyboard keys.
2020-05-03README: support for emacs 24 has been dropped.Nathan Moreau
2020-05-03Drop Emacs-24Phillip Lord
Emacs-24 is now two major versions behind and will soon be three, so formally remove support for it.
2020-04-29In emacs >= 26.2, use replace-buffer-contents after formattingTrevor Spiteri
This saves the position and the markers in the buffer, so there is no need to save positions of direct and indirect buffers and windows. This also plays better with e.g. grep, as otherwise all grep markers would be destroyed when replacing the contents of the buffer with copy-to-buffer. While replace-buffer-contents was added in Emacs 26.1, it was broken for non-ASCII contents and would corrupt the buffer contents. This was fixed in 26.2, so we require version 26.2 for this.
2020-04-27Fix typosJonas Bernoulli
2020-04-14Make *rustfmt* buffer readonly.Nathan Moreau
2020-04-14rust-goto-format-problem: make sure to always just to a buffer that exists.Nathan Moreau