From 2912a84d86372cac6944f7661a028b108484c556 Mon Sep 17 00:00:00 2001 From: Vivien Kraus Date: Mon, 15 Nov 2021 13:57:18 +0000 Subject: [PATCH] gnu: Add emacs-vala-mode. * gnu/packages/emacs-xyz (emacs-vala-mode): New variable. * gnu/packages/patches/vala-mode-fix.patch: Add a vala-mode patch to disable multiline string support. * gnu/local.mk (dist_patch_DATA): Register the patch to disable multiline string support. --- gnu/local.mk | 1 + gnu/packages/emacs-xyz.scm | 29 +++++++++++ .../patches/emacs-vala-mode-fix.patch | 48 +++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 gnu/packages/patches/emacs-vala-mode-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index 5b21a6ee1b..4a73e7cee1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1033,6 +1033,7 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/emacs-telega-path-placeholder.patch \ %D%/packages/patches/emacs-telega-test-env.patch \ + %D%/packages/patches/emacs-vala-mode-fix.patch \ %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \ %D%/packages/patches/enjarify-setup-py.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \ diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index ec0376442b..ff42b4d4d6 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -29989,3 +29989,32 @@ (define-public emacs-global-tags wraps GNU Global calls and integration to editor using this API with project.el and xref.el.") (license license:gpl3+)))) + +(define-public emacs-vala-mode + ;; Upstream has no tagged release. + (let ((commit "d696a8177e94c81ea557ad364a3b3dcc3abbc50f") + (revision "0")) + (package + (name "emacs-vala-mode") + (version (git-version "0.1" revision commit)) + (home-page "https://github.com/rrthomas/vala-mode") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 "0g5pdq757z9d8rk489n5ilhqipdc4i4sfkjwwrxyvgjlapjc04c0")) + (patches + (search-patches "emacs-vala-mode-fix.patch")))) + (build-system emacs-build-system) + (synopsis "Vala mode for Emacs") + (description + "This package provides a major mode for editing .vala and .vapi files +in Emacs. See @url{http://live.gnome.org/Vala} for details about Vala +language. + +This mode was based on Dylan Moonfire's @samp{csharp-mode}. +") + (license license:gpl2+)))) diff --git a/gnu/packages/patches/emacs-vala-mode-fix.patch b/gnu/packages/patches/emacs-vala-mode-fix.patch new file mode 100644 index 0000000000..0a50b0e362 --- /dev/null +++ b/gnu/packages/patches/emacs-vala-mode-fix.patch @@ -0,0 +1,48 @@ +From 68db3ae7410a7d89e606e1916240193b96ab335e Mon Sep 17 00:00:00 2001 +From: Vivien +Date: Mon, 15 Nov 2021 13:55:58 +0000 +Subject: [PATCH] Revert "vala-mode: support multiline strings" + +This reverts commit 671c287ba9cb81dcf6e9485e6ccc60bc2b7aba14. +--- + vala-mode.el | 17 ----------------- + 1 file changed, 17 deletions(-) + +diff --git a/vala-mode.el b/vala-mode.el +index 8c4da4c..22c6e49 100644 +--- a/vala-mode.el ++++ b/vala-mode.el +@@ -259,14 +259,6 @@ casts and declarations are fontified. Used on level 2 and higher." + (c-lang-defconst c-opt-cpp-prefix + vala "\\s *#\\s *") + +-;; Support multiline strings +-;; +-;; FIXME: This allows any string to be multiline. Currently, c-mode only +-;; supports a single-character prefix to denote a multiline string, so the +-;; real fix will be harder. +-(c-lang-defconst c-multiline-string-start-char +- vala vala-multiline-strings) +- + ;; Vala uses the following assignment operators + (c-lang-defconst c-assignment-operators + vala '("=" "*=" "/=" "%=" "+=" "-=" ">>=" "<<=" +@@ -428,15 +420,6 @@ casts and declarations are fontified. Used on level 2 and higher." + :type 'hook + :group 'c) + +-(defcustom vala-multiline-strings nil +- "Whether to enable support for multiline strings. +- +-It can conflict with some other Emacs functionality, such as the +-automatic insertion of closing quotes `electric-pair-mode'." +- :type 'bool +- :group 'vala) +- +- + ;;; The entry point into the mode + ;;;###autoload + (defun vala-mode () +-- +2.33.1 + -- 2.33.1