Der richtige Weg: Füllen Sie einen Fehlerbericht über den richtigen Kanal Ihres Projekts aus, z. B. org-submit-bug-report
oder report-emacs-bug
und argumentieren Sie, warum die Syntaxklasse Ihres Lieblingscharakters geändert werden sollte.
Alternativ können Sie die richtige Syntaxtabelle (info "(elisp) Syntax Tables")
in Ihrem ändern init.el
.
Versuchen wir es mit Org:
(with-eval-after-load 'org
(modify-syntax-entry ?/ "(/" org-mode-syntax-table)
(modify-syntax-entry ?= "(=" org-mode-syntax-table)
(add-hook 'org-mode-hook 'electric-pair-mode))
Alternativ können Sie die Fallback-Variablen verwenden. Hier ist ein Defun, der funktionieren sollte, den Sie aber vielleicht schöner machen möchten:
(defun rasmus/electric-pairs-with-local-pairs (pairs)
"Start electric pair with buffer-local PAIRS.
PAIRS is a list of strings and/or cons of strings."
(require 'elec-pair)
(let ((ec-lists '(electric-pair-pairs electric-pair-text-pairs)))
(mapc 'make-local-variable ec-lists)
(mapc (lambda (L)
(mapc (lambda (elm) (add-to-list L elm))
(mapcar (lambda (x)
(if (consp x)
(cons (string-to-char (car x))
(string-to-char (cdr x)))
(cons (string-to-char x)
(string-to-char x))))
pairs)))
ec-lists))
(electric-pair-mode t))
(with-eval-after-load 'org
(add-hook 'org-mode-hook
(lambda ()
(rasmus/electric-pairs-with-local-pairs
'("/" "=" ("`" . "'"))))))
defun
in Ihrer Antwort.Diese Antwort beantwortet Ihre Frage zur Konfiguration nicht
electric-pair-mode
. Aber es könnte Sie zu den gewünschten Ergebnissen führen.Das
wrap-region
auf Melpa verfügbare Paket könnte die Antwort auf Ihr Problem sein. Hier ist seine kurze Beschreibung von seinem Github:Hier ist, wie ich es so eingestellt habe, dass es in meinen ausgewählten Modi funktioniert. Das Snippet behandelt auch die Punkte, die Sie in Ihrer Frage angesprochen haben.
org-mode
Informationen zu Markierungen für Schrifteigenschaften.Ich möchte hinzufügen, dass dieses Paket sehr gut mit dem
expand-region
Paket funktioniert (auch auf Melpa verfügbar).Wenn ich mit diesen 2 Paketen dabei bin
org-mode
, macht esMY-EXPAND-REGION-BINDING
*
ein Wort fett.quelle
wrap-region
Paket bekannt; es ist ziemlich nützlich. Ich versuche derzeit, die Anzahl der Pakete von Drittanbietern zu reduzieren, von denen ich abhängig bin. Daher werde ich diese Lösung nicht verwenden, aber sie verdient hier definitiv eine Erwähnung! :)Aufbauend auf der Antwort von itsjeyd:
quelle
(?\= . ?\=)