Emacs 如何设置带有C-x 8前缀的密钥?

Emacs 如何设置带有C-x 8前缀的密钥?,emacs,Emacs,假设我想将C-x8x重新绑定到ξ。因此,我: (全局设置键(kbd“C-x 8 x”)(lambda()(交互式)(插入“ξ”)) 但它不起作用:它仍然插入默认的x符号。然后我尝试了两种方法: (全局未设置键(kbd“C-x 8 x”)) (全局设置键(kbd“C-x 8 x”)无) 没有任何效果 编辑: 以下是我现在在希腊使用的: (定义键“iso-transl-ctl-x-8-map”a[?α]) (定义键“iso-transl-ctl-x-8-map”b[?β]) (定义键'iso-t

假设我想将
C-x8x
重新绑定到
ξ
。因此,我:

(全局设置键(kbd“C-x 8 x”)(lambda()(交互式)(插入“ξ”))
但它不起作用:它仍然插入默认的x符号。然后我尝试了两种方法:

(全局未设置键(kbd“C-x 8 x”))
(全局设置键(kbd“C-x 8 x”)无)
没有任何效果

编辑

以下是我现在在希腊使用的:

(定义键“iso-transl-ctl-x-8-map”a[?α])
(定义键“iso-transl-ctl-x-8-map”b[?β])
(定义键'iso-transl-ctl-x-8-map“g”[?γ])
(定义键'iso-transl-ctl-x-8-map“d”[?δ])
(定义键'iso-transl-ctl-x-8-map“e”[?ε])
(定义键'iso-transl-ctl-x-8-map“z”[?ζ])
(定义键'iso-transl-ctl-x-8-map“h”[?η])
(定义键'iso-transl-ctl-x-8-map“o”[?θ])
(定义键“iso-transl-ctl-x-8-map”i[?ι])
(定义键'iso-transl-ctl-x-8-map“k”[?κ])
(定义键'iso-transl-ctl-x-8-map“l”[?λ])
(定义键'iso-transl-ctl-x-8-map“m”[?μ])
(定义键'iso-transl-ctl-x-8-map“n”[?ν])
(定义键'iso-transl-ctl-x-8-map“x”[?ξ])
(定义键“iso-transl-ctl-x-8-map”p“[?π])
(定义键'iso-transl-ctl-x-8-map“r”[?ρ])
(定义键“iso-transl-ctl-x-8-map”s“[?σ])
(定义键“iso-transl-ctl-x-8-map”(kbd“M-s”)[?ς])
(定义键'iso-transl-ctl-x-8-map“x”[?ξ])
(定义键“iso-transl-ctl-x-8-map”t[?τ])
(定义键'iso-transl-ctl-x-8-map“y”[?γ])
(定义键'iso-transl-ctl-x-8-map“f”[?φ])
(定义键'iso-transl-ctl-x-8-map“v”[?χ])
(定义键'iso-transl-ctl-x-8-map“j”[?ψ])
(定义键'iso-transl-ctl-x-8-map“w”[?ω])
(定义键“iso-transl-ctl-x-8-map”A[?Α])
(定义键“iso-transl-ctl-x-8-map”B[?Β])
(定义键'iso-transl-ctl-x-8-map“G”[?Γ])
(定义键“iso-transl-ctl-x-8-map”D[?Δ])
(定义键'iso-transl-ctl-x-8-map“E”[?Ε])
(定义键'iso-transl-ctl-x-8-map“Z”[?Ζ])
(定义键“iso-transl-ctl-x-8-map“H”[?Η])
(定义键“iso-transl-ctl-x-8-map”O[?Θ])
(定义键“iso-transl-ctl-x-8-map”I“[?Ⅷ])
(定义键“iso-transl-ctl-x-8-map”K[?Κ])
(定义键'iso-transl-ctl-x-8-map“L”[?λ])
(定义键“iso-transl-ctl-x-8-map”M[?Μ])
(定义键“iso-transl-ctl-x-8-map”N[?Ν])
(定义键'iso-transl-ctl-x-8-map“x”[?Ξ])
(定义键'iso-transl-ctl-x-8-map“P”[?π])
(定义键“iso-transl-ctl-x-8-map”R[?Ρ])
(定义键“iso-transl-ctl-x-8-map”S“[?∑])
(定义键“iso-transl-ctl-x-8-map”T[?T])
(定义键'iso-transl-ctl-x-8-map“Y”[?Υ])
(定义键'iso-transl-ctl-x-8-map“F”[?Φ])
(定义键'iso-transl-ctl-x-8-map“V”[?Χ])
(定义键'iso-transl-ctl-x-8-map“J”[?ψ])
(定义键“iso-transl-ctl-x-8-map”W“[?Ω])

您必须在
iso-transl-ctl-x-8-map
中设置键。例如:

(eval-after-load 'iso-transl
  '(define-key iso-transl-ctl-x-8-map "x" "ξ"))

这是因为
C-x 8
实际上是在
键翻译映射中定义的,它覆盖了全局映射。

哦,我找到了另一种方法:

(define-key 'iso-transl-ctl-x-8-map "x" [?ξ])

.

不起作用:在启动时,我得到
符号作为变量的值无效:iso-transl-ctl-x-8-map
,因此
调试器输入了--Lisp错误:(参数数目错误(lambda nil(交互)(插入“ξ”))1)(lambda nil(交互)(插入“ξ”))(nil)
尝试输入东西时。我也尝试了
(定义键翻译映射(kbd“t”)(lambda()(交互式)(插入“ξ”))
(定义键翻译映射(kbd“iso-transl-ctl-x-8-map t”)(lambda()(交互式)(插入“ξ”))
——无任何效果。当然,在使用它之前需要确保它已加载(通过使用
(要求“iso transl”)
首先,例如)。我正在修改代码段以延迟密钥定义。现在它不会抱怨映射,但仍然不起作用。当我尝试插入一个对象时,它仍然会给出相同的错误?