;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018, 2020 Mathieu Othacehe ;;; Copyright © 2019 Ludovic Courtès ;;; Copyright © 2020 Florian Pelz ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu installer newt keymap) #:use-module (gnu installer keymap) #:use-module (gnu installer steps) #:use-module (gnu installer newt page) #:use-module (guix i18n) #:use-module (guix records) #:use-module (newt) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) #:use-module (ice-9 i18n) #:use-module (ice-9 match) #:export (run-keymap-page keyboard-layout->configuration)) (define (run-layout-page layouts layout->text context) (let ((title (G_ "Layout"))) (run-listbox-selection-page #:title title #:info-text (case context ((param) (G_ "Please choose your keyboard layout. \ It will only be used during the installation process. \ Non-Latin layouts can be toggled with Alt+Shift.")) (else (G_ "Please choose your keyboard layout. \ It will be used during the install process, and for the installed system. \ Non-Latin layouts can be toggled with Alt+Shift. You can switch to a \ different layout at any time from the parameters menu."))) #:listbox-items layouts #:listbox-item->text layout->text #:sort-listbox-items? #f #:button-text (case context ((param) (G_ "Continue")) (else (G_ "Exit"))) #:button-callback-procedure (case context ((param) (const #f)) (else (lambda _ (abort-to-prompt 'installer-step 'abort))))))) (define (run-variant-page variants variant->text) (let ((title (G_ "Variant"))) (run-listbox-selection-page #:title title #:info-text (G_ "Please choose a variant for your keyboard layout.") #:listbox-items variants #:listbox-item->text variant->text #:sort-listbox-items? #f #:button-text (G_ "Back") #:button-callback-procedure (lambda _ (abort-to-prompt 'installer-step 'abort))))) (define (sort-layouts layouts) "Sort LAYOUTS list by putting the US layout ahead and return it." (define (layout-rw-r--r--gnu/packages/emacs-xyz.scm18
1 files changed, 3 insertions, 15 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ef2c891a27..bd6a02a289 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -19694,10 +19694,10 @@ Emacs.")
(license license:gpl3+)))
(define-public emacs-matrix-client
- (let ((commit "59c792423fd0503f1375f356bec56130e65d3b51"))
+ (let ((commit "d2ac55293c96d4c95971ed8e2a3f6f354565c5ed"))
(package
(name "emacs-matrix-client")
- (version (git-version "0.0.0" "5" commit))
+ (version (git-version "0.0.0" "6" commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -19706,20 +19706,8 @@ Emacs.")
(file-name (git-file-name name version))
(sha256
(base32
- "1gmpw14q9zkvviqpnmvh5vbyxk42038yilxm6b2zqw7mwxfc1xra"))))
+ "1scfv1502yg7x4bsl253cpr6plml1j4d437vci2ggs764sh3rcqq"))))
(build-system emacs-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'add-missing-require
- ;; Fix a filter error at runtime due to a missing require.
- ;; Reported upstream:
- ;; <https://github.com/alphapapa/matrix-client.el/issues/76>
- (lambda _
- (substitute* "matrix-client-room.el"
- (("\\(require 'dash-functional\\)" all)
- (string-append all "\n" "(require 'anaphora)")))
- #t)))))
(propagated-inputs
`(("a" ,emacs-a)
("anaphora" ,emacs-anaphora)
ariant-description variant) "xkeyboard-config") ;; Text to opt for no variant at all: (gettext (x11-keymap-layout-description layout) "xkeyboard-config"))))))))))) (define (format-result layout variant) (let ((layout (x11-keymap-layout-name layout)) (variant (and=> variant (lambda (variant) (gettext (x11-keymap-variant-name variant) "xkeyboard-config"))))) (toggleable-latin-layout layout variant))) (let* ((result (run-installer-steps #:steps keymap-steps)) (layout (result-step result 'layout)) (variant (result-step result 'variant))) (and layout (format-result layout variant)))) (define (keyboard-layout->configuration keymap) "Return the operating system configuration snippet to install KEYMAP." (match keymap ((name #f "grp:alt_shift_toggle") `((keyboard-layout (keyboard-layout ,name #:options '("grp:alt_shift_toggle"))))) ((name #f _) `((keyboard-layout (keyboard-layout ,name)))) ((name variant "grp:alt_shift_toggle") `((keyboard-layout (keyboard-layout ,name ,variant #:options '("grp:alt_shift_toggle"))))) ((name variant _) `((keyboard-layout (keyboard-layout ,name ,variant))))))