rust.vim
dotfiles
Our great sponsors
rust.vim | dotfiles | |
---|---|---|
23 | 18 | |
3,785 | 141 | |
1.0% | - | |
0.0 | 8.8 | |
21 days ago | 16 days ago | |
Vim Script | Vim Script | |
Apache License 2.0 | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust.vim
-
How to prevent rust-analyzer (rust lsp) from checking code on each save
I am using rustaceanvim and rust.vim.
-
Issue with syntax highlighting in rust with rust-analyzer
When the file first loads, it uses the syntax defined in the $VIMRUNTIME/syntax/rust.vim file from rust.vim, which is what I want, but after a few seconds (probably once rust-analyzer loads and runs), it changes the highlighting to use different colours (there's probably a better way to describe it, but a video is easier to show). This colour change also happens when I write the file (and rust-analyzer runs again).
-
Can’t run specific test via LSP
Or this https://github.com/rust-lang/rust.vim, it has example with running tests
-
Struggling to get basic diagnostic working with LSP
If you need basic syntax checking on leaving insert mode (without saving file), https://github.com/rust-lang/rust.vim can be used
-
Is it possible to have Rust doc test comments highlighted in Neovim?
Seems like there's a tree-sitter solution, but I do want to note that this works out of the box with rust.vim: https://github.com/rust-lang/rust.vim/issues/63. It might be the built-in Rust support is out of date -- using that repo as a plugin would do the trick.
-
Default mappings override user mappings in Rust ( [[ and ]] mappings )
Most of the customizations in the $VIMRUNTIME's rust ftplugin are guarded behind a flag (g:rust_fold, g:rustfmt_autosave,g:rust_recommended_style, etc.) to control enabling and disabling them, but for some reason the navigation mappings are unconditionally defined, with no flag to turn them off... It might be worth going through the issues in https://github.com/rust-lang/rust.vim to see if that ever came up before.
-
Config For rust dev
Is having rust.vim necessary if I'm using rust-tools already?
-
Need help for setting up neovim.
Primeagen has a series, you could also try spacevim or lunarvim( i prefer lunarvim). If you want to read the docs and setup yourself 1. lsp and code completion mentioned in #5. 2. treesitter 3. lsp handles that, you have to install java's lsp, this improves its look. 4. Make your own remaps, some languages have a plugin for this but i can't find one for java, this is the one for rust. 5. Install cmp and one of the snippet engines.
-
Rust with Vim
writing rust is the same regardless of which editor you use and using vim is the same regardless of what programming language you are in, so i dont think you need a tutorial neccissarily. ive been using this plugin for rust-specific features https://github.com/rust-lang/rust.vim
-
Configure NeoVim for Rust Dev
As for plugins for Rust development, I’d recommend Conquer of Completion (using the coc-rust-analyser coc plugin), Rust lang’s rust plugin, and the Toml plugin
dotfiles
-
Ugrep – a more powerful, ultra fast, user-friendly, compatible grep
So ired is a toy. One wonders how many search results you've missed over the years because of ired's feature "it's so minimal that it's wrong!" I mean sometimes tools have bugs. ripgrep has had bugs too. But this one has been in ired since 2009.
What is it that you said? YIKES. Yeah. Seems appropriate.
[1]: https://github.com/BurntSushi/dotfiles/blob/eace294fd80bfde1...
[2]: https://github.com/radare/ired/blob/a1fa7904e6ad239dde950de5...
-
Framework 13 with AMD Ryzen 7040 Series Makes for a Great Linux Laptop
I've been using X11 on my Framework laptop for years. No desktop environment at all. Just my regulard old school window manager[1]. No KDE or GNOME. But also no XFCE.
The only thing I had to do to get scaling working for me was set two environment variables[2].
I was indeed worried about this when I bought the laptop. Prior to this, I avoided anything with resolutions higher than 1920x1200. But it turned out that everything mostly worked with a couple tweaks.
I think the only real issue I've run into is `git gui`. As I understand it, the GUI toolkit it uses doesn't support scaling? Not sure. I ended up working around it by just increasing font sizes. I suppose this exposes the weakness that is probably impacting you: the scaling on my laptop is being done by the GUI toolkits, not the display server or compositor. (I don't always run a compositor, but when I do, I use `picom`. Mostly just to avoid tearing.)
[1]: https://github.com/BurntSushi/wingo
[2]: https://github.com/BurntSushi/dotfiles/blob/ea3a88e6160f4244...
-
Docfd 0.8.5 TUI fuzzy document finder
Here's a really simple example: https://github.com/BurntSushi/dotfiles/blob/214aab9fdc45e7a507d41b564a1136eea9b298c9/bin/pre-rg
-
What setup do you use to program in rust?
The full details of my setup (and more) are here: https://github.com/BurntSushi/dotfiles
-
Fastest XML node parsing library in Rust
If it turns out to be the library (I'd wager not, 4 minutes feels excessive), then you could give roxmltree a try. This program deals with about 7GB of XML (my SMS history for the past few years) in about 15 seconds.
-
Do people write whole APIs in Rust?
Did you try roxmltree? It worked really well for me and was quite fast: https://github.com/BurntSushi/dotfiles/blob/90f2acf2f45548ca0ff2da827f3108be0a965b74/bin/rust/searchsms/main.rs
-
would you use rust for scripting?
find-invalid-utf8: walks a directory tree and prints invalid UTF-8 in files using nice hex escapes with coloring. This is useful for honing on in where invalid UTF-8 occur. You have a good bet of finding some by checking out any moderately sized repository of code. The Linux kernel used to have some. The Mozilla repo does. The CPython repo does too. This is why it's important for CLI tools to deal with invalid UTF-8 gracefully in some way.
-
What are some less popular but well-made crates you'd like others to know about?
Yeah it's great! I used it to implement a little utility to convert a subset of SMS/MMS messages from an XML backup to a more readable plain text version: https://github.com/BurntSushi/dotfiles/blob/0b075d79a6ff8812a1f48a37b9858938b3eadc58/bin/rust/searchsms/main.rs
-
Ask HN: Can I see your scripts?
My dotfiles: https://github.com/BurntSushi/dotfiles
Here are some selected scripts folks might find interesting.
Here's my backup script that I use to encrypt my data at rest before shipping it off to s3. Runs every night and is idempotent. I use s3 lifecycle rules to keep data around for 6 months after it's deleted. That way, if my script goofs, I can recover: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
I have so many machines running Archlinux that I wrote my own little helper for installing Arch that configures the machine in the way I expect: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
A tiny little script to recover the git commit message you spent 10 minutes writing, but "lost" because something caused the actual commit to fail (like a gpg error): https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
A script that produces a GitHub permalink from just a file path and some optional file numbers. Pass --clip to put it on your clipboard: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae... --- I use it with this vimscript function to quickly generate permalinks from my editor: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
A wrapper around 'gh' (previously: 'hub') that lets you run 'hub-rollup pr-number' and it will automatically rebase that PR into your current branch. This is useful for creating one big "rollup" branch of a bunch of PRs. It is idempotent. https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
Scale a video without having to memorize ffmpeg's crazy CLI syntax: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
Under X11, copy something to your clipboard using the best tool available: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae...
-
Is it common for you guys to have an update break your system?
Otherwise, the most common "breakage" I get is when I forget to update in a while. Used to be a mostly non-issue until package signing became a thing. Now I get lots of signing errors when I update. When that happens, I run this script and it usually fixes things: https://github.com/BurntSushi/dotfiles/blob/2f58eedf3b7f7dae7f0a7cea1a641459e25e5d07/bin/pacman-fix-keys
What are some alternatives?
Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/
nvim-tree.lua - A file explorer tree for neovim written in lua
coc-rust-analyzer - rust-analyzer extension for coc.nvim
git-crypt - Transparent file encryption in git
doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]
rust-script - Run Rust files and expressions as scripts without any setup or compilation step.
YouCompleteMe - A code-completion engine for Vim
vscodium - binary releases of VS Code without MS branding/telemetry/licensing
Rustlings - :crab: Small exercises to get you used to reading and writing Rust code!
nocode - The best way to write secure and reliable applications. Write nothing; deploy nowhere.
refactoring.nvim - The Refactoring library based off the Refactoring book by Martin Fowler
gitsigns.nvim - Git integration for buffers