Nimbin[12]?Mirrors & Forks / riscv.vim

riscv.vim git · master

RISC-V assembly syntax for vim

vim riscv assembly · first commit 2019-02-01 · last commit 2024-12-31 (1 year ago) · synced 3 days ago · upstream: github.com/laurelmay/riscv.vim

Vim Script 87.9% Markdown 12.1%
git clone https://git.christianimmanuel.de/mirrors-forks/riscv.vim.gitwget https://git.christianimmanuel.de/mirrors-forks/riscv.vim/archive/riscv.vim.tar.gz
38257f2Merge pull request #14 from PrimmR/bad-regsLaurel May · 1 year ago
dftdetect/
dsyntax/
-LICENSE.md1 KB
-README.md1.8 KB

README.md

riscv.vim

RISC-V syntax highlighting for Vim.

This will override any other syntaxes for .S files.

Installation

Manually

Put all files in your vim directory (such as ~/.vim/ or ~/.config/nvim/)

VimPlug

  1. Add the following to your .vimrc.
   Plug 'laurelmay/riscv.vim'
  1. Install with :PlugInstall

lazy.nvim

{
  'laurelmay/riscv.nvim',
  -- The ftdetect configuration does not work well when lazy-loaded
  lazy = false,
}

Syntax Support

The syntax highlighting within this plugin is based on several sources. Primarily, the latest versions of the [The RISC-V ISA Specification][spec], and specifically [Volume I: Unprivileged ISA v. 201912123][vol1] and [Volume II: Privileged Architecture v. 20211203][vol2]. Additionally, the [RISC-V Assembly Programmer's Manual][riscv-asm] is used as a reference for things not covered by the specification itself.

[spec]: https://riscv.org/technical/specifications/ [vol1]: https://github.com/riscv/riscv-isa-manual/releases/download/Ratified-IMAFDQC/riscv-spec-20191213.pdf [vol2]: https://github.com/riscv/riscv-isa-manual/releases/download/Priv-v1.12/riscv-privileged-20211203.pdf [riscv-asm]: https://github.com/riscv-non-isa/riscv-asm-manual/blob/master/riscv-asm.md

It is a goal to support any syntax that has been changed or renamed (such as the fmv.x.s instruction) and syntax from drafts that may have real-world usage, though support for these may not be as complete. Contributions to add these are welcome.

Draft specifications implemented are based on:

Usage

Save your files with a .S extension or execute set ft=riscv.