{"id":13806377,"url":"https://github.com/damon-kwok/v-mode","last_synced_at":"2025-06-30T18:06:22.240Z","repository":{"id":44746772,"uuid":"281015725","full_name":"damon-kwok/v-mode","owner":"damon-kwok","description":"🌻 An Emacs major mode for the V programming language. ","archived":false,"fork":false,"pushed_at":"2022-10-07T06:47:47.000Z","size":125,"stargazers_count":62,"open_issues_count":3,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-13T21:43:07.309Z","etag":null,"topics":["emacs-mode","v","vlang"],"latest_commit_sha":null,"homepage":"https://vlang.io","language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/damon-kwok.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"patreon":"DamonKwok"}},"created_at":"2020-07-20T04:46:52.000Z","updated_at":"2025-02-26T14:39:34.000Z","dependencies_parsed_at":"2022-08-31T00:12:03.968Z","dependency_job_id":null,"html_url":"https://github.com/damon-kwok/v-mode","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/damon-kwok/v-mode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damon-kwok%2Fv-mode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damon-kwok%2Fv-mode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damon-kwok%2Fv-mode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damon-kwok%2Fv-mode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/damon-kwok","download_url":"https://codeload.github.com/damon-kwok/v-mode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damon-kwok%2Fv-mode/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262825645,"owners_count":23370419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["emacs-mode","v","vlang"],"created_at":"2024-08-04T01:01:11.027Z","updated_at":"2025-06-30T18:06:22.198Z","avatar_url":"https://github.com/damon-kwok.png","language":"Emacs Lisp","funding_links":["https://patreon.com/DamonKwok","https://www.patreon.com/DamonKwok"],"categories":["Other"],"sub_categories":["Editor plugins"],"readme":"\u003ca href=\"https://www.gnu.org/software/emacs/\"\u003e\u003cimg src=\"https://www.gnu.org/software/emacs/images/emacs.png\" alt=\"Emacs Logo\" width=\"80\" height=\"80\" align=\"right\"\u003e\u003c/a\u003e\n[![GitHub license](https://img.shields.io/github/license/damon-kwok/v-mode?logo=gnu\u0026.svg)](https://github.com/damon-kwok/v-mode/blob/master/COPYING)\n[![Sponsor](https://img.shields.io/badge/Support%20Me-%F0%9F%92%97-ff69b4.svg)](https://www.patreon.com/DamonKwok)\n[![MELPA](http://melpa.org/packages/v-mode-badge.svg)](http://melpa.org/#/v-mode)\n\u003c!-- [![MELPA Stable](http://stable.melpa.org/packages/v-mode-badge.svg)](http://stable.melpa.org/#/v-mode) --\u003e\n\n# V Mode\n\nAn Emacs major mode for the [V](https://vlang.io/) programming language.\n\n- Screenshot\n\n![screenshot](https://github.com/damon-kwok/v-mode/blob/master/screenshot.png)\n\n## Features\n\n- [x] Syntax highlighting (font-lock)\n- [x] Indentation\n- [x] Workspace support\n- [x] Auto format on save\n- [x] Compilation integration\n- [x] Code navigation (using `imenu`)\n- [x] Go to definition (using `ctags`)\n- [x] Code completion (using `company-mode`)\n- [ ] REPL\n\u003c!-- - [x] TODO highlighting --\u003e\n\u003c!-- - [x] Rainbow delimiters --\u003e\n\u003c!-- - [x] Whitespace character dsiplay --\u003e\n\u003c!-- - [x] Fill column indicator --\u003e\n\u003c!-- - [x] `V` mode menu --\u003e\n\u003c!-- - [x] Code folding --\u003e\n\n## Installation\n\n### Using MELPA\nThis package can be obtain from\n[MELPA](http://melpa.org/#/v-mode) or\n[MELPA Stable](http://stable.melpa.org/#/v-mode). The `master`\nbranch is continuously deployed to `MELPA`, and released versions are\ndeployed to `MELPA Stable`.\n\n\u003ckbd\u003eM-x package-install [RET] v-mode [RET]\u003c/kbd\u003e\n\nRight now `v-mode` doesn't take a lot of configuration (i.e.\nit's too simple to need any).\n\n```elisp\n(require 'v-mode)\n(define-key v-mode-map (kbd \"M-z\") 'v-menu)\n(define-key v-mode-map (kbd \"\u003cf6\u003e\")  'v-menu)\n(define-key v-mode-map (kbd \"C-c C-f\") 'v-format-buffer)\n```\n\n### Using [use-package](https://github.com/jwiegley/use-package) and [straight.el](https://github.com/raxod502/straight.el)\n\n```elisp\n(use-package v-mode\n  :straight (v-mode\n             :type git\n             :host github\n             :repo \"damon-kwok/v-mode\"\n             :files (\"tokens\" \"v-mode.el\"))\n  :config\n  :bind-keymap\n  (\"M-z\" . v-menu)\n  (\"\u003cf6\u003e\" . v-menu)\n  (\"C-c C-f\" . v-format-buffer)\n  :mode (\"\\\\(\\\\.v?v\\\\|\\\\.vsh\\\\)$\" . 'v-mode))\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamon-kwok%2Fv-mode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdamon-kwok%2Fv-mode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamon-kwok%2Fv-mode/lists"}