I can't think of any practical way to do that without macros, unfortunately. I've found incremental compilation to be pretty speedy for small markup changes so far though. I do tend to put the presentation code in it's own crate for larger projects, which might make a difference. Maybe as my projects get bigger I'll start to run into problems.
Some other ideas:
- Temporarily stopping the rust-analyser server to avoid lock contention on the build dir.
- Using cranelift codegen backend (not sure of it's current status).