Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/damon-kwok/v-mode
🌻 An Emacs major mode for the V programming language.
https://github.com/damon-kwok/v-mode
emacs-mode v vlang
Last synced: about 1 month ago
JSON representation
🌻 An Emacs major mode for the V programming language.
- Host: GitHub
- URL: https://github.com/damon-kwok/v-mode
- Owner: damon-kwok
- License: gpl-3.0
- Created: 2020-07-20T04:46:52.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-10-07T06:47:47.000Z (about 2 years ago)
- Last Synced: 2024-08-04T01:06:14.279Z (5 months ago)
- Topics: emacs-mode, v, vlang
- Language: Emacs Lisp
- Homepage: https://vlang.io
- Size: 122 KB
- Stars: 59
- Watchers: 3
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: COPYING
Awesome Lists containing this project
- awesome-v - v-mode - Emacs major mode for the V programming language. (Other / Editor plugins)
README
[![GitHub license](https://img.shields.io/github/license/damon-kwok/v-mode?logo=gnu&.svg)](https://github.com/damon-kwok/v-mode/blob/master/COPYING)
[![Sponsor](https://img.shields.io/badge/Support%20Me-%F0%9F%92%97-ff69b4.svg)](https://www.patreon.com/DamonKwok)
[![MELPA](http://melpa.org/packages/v-mode-badge.svg)](http://melpa.org/#/v-mode)# V Mode
An Emacs major mode for the [V](https://vlang.io/) programming language.
- Screenshot
![screenshot](https://github.com/damon-kwok/v-mode/blob/master/screenshot.png)
## Features
- [x] Syntax highlighting (font-lock)
- [x] Indentation
- [x] Workspace support
- [x] Auto format on save
- [x] Compilation integration
- [x] Code navigation (using `imenu`)
- [x] Go to definition (using `ctags`)
- [x] Code completion (using `company-mode`)
- [ ] REPL## Installation
### Using MELPA
This package can be obtain from
[MELPA](http://melpa.org/#/v-mode) or
[MELPA Stable](http://stable.melpa.org/#/v-mode). The `master`
branch is continuously deployed to `MELPA`, and released versions are
deployed to `MELPA Stable`.M-x package-install [RET] v-mode [RET]
Right now `v-mode` doesn't take a lot of configuration (i.e.
it's too simple to need any).```elisp
(require 'v-mode)
(define-key v-mode-map (kbd "M-z") 'v-menu)
(define-key v-mode-map (kbd "") 'v-menu)
(define-key v-mode-map (kbd "C-c C-f") 'v-format-buffer)
```### Using [use-package](https://github.com/jwiegley/use-package) and [straight.el](https://github.com/raxod502/straight.el)
```elisp
(use-package v-mode
:straight (v-mode
:type git
:host github
:repo "damon-kwok/v-mode"
:files ("tokens" "v-mode.el"))
:config
:bind-keymap
("M-z" . v-menu)
("" . v-menu)
("C-c C-f" . v-format-buffer)
:mode ("\\(\\.v?v\\|\\.vsh\\)$" . 'v-mode))
```