This页面表示可以使用M-i
将希腊字母插入到Emacs中。但是,Debian Squeeze变体中的Emacs 23.2.1会在按下M-i
时插入“tab”字符。如何在Emacs中插入希腊字母如α和β?
答案 0 :(得分:54)
M-x set-input-method RET TeX
将允许您编写例如\beta
获取β
,\sum
或\Sigma
获取Σ
等。{/ p>
可以使用toggle-input-method
打开和关闭它,绑定到 C - \ 和 C-< 。
答案 1 :(得分:21)
您可以使用绑定的ucs-insert
C-x 8 RET 插入任何Unicode
按名称或按值分类的字符。
例如,插入一个lambda,你可以做
GREEK SMALL LETTER LAMBDA
RET →λ03bb
RET →λ也可以使用制表符。
C-X 8 RET * lambda
TAB
将列出以lambda结尾的每个unicode字符。
答案 2 :(得分:11)
您可以将输入法设置为希腊语:
M-x set-input-method RET greek
或
C-x RET C-\ greek
(这是相同的)。要重新设置输入法,请按C-\
(toggle-input-method
)。
答案 3 :(得分:7)
@Oleg Pavliv扩大答案:
要在.emacs
文件中一劳永逸地解决此问题,您需要选择一个密钥模式(如M-g + <latin letter>
)和一个可记忆的对应表<greek letter> - <latin letter>
。我建议不要发明任何新内容,而是使用PostScript Symbol编码中的对应关系。这引出了以下内容:
(global-set-key (kbd "M-g a") "α")
(global-set-key (kbd "M-g b") "β")
(global-set-key (kbd "M-g g") "γ")
(global-set-key (kbd "M-g d") "δ")
(global-set-key (kbd "M-g e") "ε")
(global-set-key (kbd "M-g z") "ζ")
(global-set-key (kbd "M-g h") "η")
(global-set-key (kbd "M-g q") "θ")
(global-set-key (kbd "M-g i") "ι")
(global-set-key (kbd "M-g k") "κ")
(global-set-key (kbd "M-g l") "λ")
(global-set-key (kbd "M-g m") "μ")
(global-set-key (kbd "M-g n") "ν")
(global-set-key (kbd "M-g x") "ξ")
(global-set-key (kbd "M-g o") "ο")
(global-set-key (kbd "M-g p") "π")
(global-set-key (kbd "M-g r") "ρ")
(global-set-key (kbd "M-g s") "σ")
(global-set-key (kbd "M-g t") "τ")
(global-set-key (kbd "M-g u") "υ")
(global-set-key (kbd "M-g f") "ϕ")
(global-set-key (kbd "M-g j") "φ")
(global-set-key (kbd "M-g c") "χ")
(global-set-key (kbd "M-g y") "ψ")
(global-set-key (kbd "M-g w") "ω")
(global-set-key (kbd "M-g A") "Α")
(global-set-key (kbd "M-g B") "Β")
(global-set-key (kbd "M-g G") "Γ")
(global-set-key (kbd "M-g D") "Δ")
(global-set-key (kbd "M-g E") "Ε")
(global-set-key (kbd "M-g Z") "Ζ")
(global-set-key (kbd "M-g H") "Η")
(global-set-key (kbd "M-g Q") "Θ")
(global-set-key (kbd "M-g I") "Ι")
(global-set-key (kbd "M-g K") "Κ")
(global-set-key (kbd "M-g L") "Λ")
(global-set-key (kbd "M-g M") "Μ")
(global-set-key (kbd "M-g N") "Ν")
(global-set-key (kbd "M-g X") "Ξ")
(global-set-key (kbd "M-g O") "Ο")
(global-set-key (kbd "M-g P") "Π")
(global-set-key (kbd "M-g R") "Ρ")
(global-set-key (kbd "M-g S") "Σ")
(global-set-key (kbd "M-g T") "Τ")
(global-set-key (kbd "M-g U") "Υ")
(global-set-key (kbd "M-g F") "Φ")
(global-set-key (kbd "M-g J") "Φ")
(global-set-key (kbd "M-g C") "Χ")
(global-set-key (kbd "M-g Y") "Ψ")
(global-set-key (kbd "M-g W") "Ω")
答案 4 :(得分:4)
您可以使用其他前缀,例如:
(global-set-key (kbd "C-x <ESC> a") "α")
(global-set-key (kbd "C-x <ESC> b") "β")
或者使用global-abbrev-table
,如您在上面提到的页面上所述。
答案 5 :(得分:4)
偶尔在Emacs中插入希腊字符的最简单方法是将缩写模式与this abbrev table of Greek letters一起使用。
要使用上述要点,请启动emacs并调用将启动Abbrevs编辑器的M-x edit-abbrevs
。然后在(global-abbrev-table)
部分下剪切并粘贴定义(以使其全局可用)或将其置于另一个标题下方,例如(text-mode-abbrev-table)
。
确保通过 Mx缩写模式RET 在给定缓冲区中启用缩写模式,或通过向您的init添加(setq-default abbrev-mode t)
来启用缩写模式全局文件。或者,如果您只想为例如启用缩写模式文本和派生模式,请使用(add-hook 'text-mode-hook (lambda () (abbrev-mode 1)))
。
有关详情,请参阅the emacs wiki about abbrev-mode。
答案 6 :(得分:2)
C-x 8 RET
适用于一次性插入。
如果要绑定键以插入给定的Unicode字符:加载库ucs-cmds.el
,然后使用C-1 C-x 8 RET
。插入您选择的字符,并创建一个具有相同名称的命令,您可以将其绑定到一个键。
例如,C-1 C-x 8 RET GREEK SMALL LETTER LAMBDA RET
定义了命令greek-small-letter-lambda
,它在调用时插入该字符。
您可以使用宏ucsc-make-commands
同时从ucs-cmds.el
创建多个此类命令。例如,要为希腊字母的每个创建单独的命令,只需执行以下操作:
(ucsc-make-commands "^greek [a-z]+ letter")
然后你可以将greek-small-letter-beta
命令绑定到C-c b
或其他任何东西:
(global-set-key (kbd "C-c b") 'greek-small-letter-beta)
答案 7 :(得分:1)
Rasmus的表弟对非TeX / LaTeX需求的回答:
M-x set-input-method RET C-\ greek RET
or
C-x RET C-\ greek RET
OR
M-x set-input-method RET C-\ greek-babel RET
or
C-x RET C-\ greek-babel RET
其中任何一个都为您提供输入方法,例如单键击输入,'a'只能获得一个alpha(α),'b'可以获得beta(β)等等。
之后,您只需输入
即可C-\
可以非常快速地从默认输入法切换到希腊语方法。非常方便。
但你必须注意:键并不总是与声音相匹配。例如,键入hello可以获得ηελλο。这是因为它们使得“h”键成为希腊eta(η),仅仅因为η看起来像是h,并且因为首都希腊语eta(H)与我们的“H”相同,即使它发音不同。
希腊语 - 巴贝尔输入方法优于希腊语的优势将主要受那些使用更高级/复杂的Attic Greek的人们的赞赏,后者使用了大量的口音。 (Attic在柏拉图的时间〜公元前400年在雅典使用,虽然几个世纪后加入了重音和小写字母。)你可以点击两个键&lt;哦,你得到ὁ。向后撇号是'h'声,称为'粗糙呼吸' - 因此ὁ发音为'ho'。口音非常容易和快速。并且您可以将重音组合在同一个角色上。例如,点击三个键&gt; 'a,你得到ἄ。如果您不需要重音符号,只需使用希腊语输入法。
使用greek和Greek-babel输入法,你也可以点击C-h C- \来获得输入法的帮助缓冲区,其中包括一个可用的所有可用击键组合的可爱表格。 (C-x o移动到下一个窗口,这样你就可以到达那个信息窗口并向下滚动..)
答案 8 :(得分:0)
要查找如何输入已经在屏幕上看到的单个字符,您可以将该字符复制粘贴到一些emacs缓冲区/文件中,然后然后致电M-x describe-char
。有了α,它会产生
[...] to input: type "C-x 8 RET 3b1" or "C-x 8 RET GREEK SMALL LETTER ALPHA" [...]
PS:重新使用your profile,也请尝试['a'] * 28
答案 9 :(得分:0)
通常,TeX输入法非常适合输入符号,但是如果您以任意频率键入符号(例如,如果您以某种功能编程语言键入λ
),它将很快成为阻力。每次您要插入希腊字母时都输入\lambda
。
另一方面,希腊语输入法对于希腊字母可能是有效的,并且是一种干净的解决方案,因为它利用了Emacs内置的希腊语支持,但作为默认输入法不是很有用。
您可以像这样将两种方法的优点结合在一起(将其放入Emacs初始化配置中的某个位置):
(progn
;; conveniently enter math and greek symbols
;; leverage built-in input methods support in emacs to enter greek letters
;; by using the prefix ",."
;; adapted from https://emacs.stackexchange.com/a/53810
(set-input-method "greek")
(setq greek-map (quail-map))
;; add a translation rule to the TeX input method to delegate to
;; the greek input method
(set-input-method "TeX")
(quail-defrule ",." greek-map)
;; set default input method to TeX so that it can be activated
;; with C-\, e.g. to enter math or other symbols in general
(setq default-input-method "TeX"))
这使用TeX输入法作为默认输入法,但是当使用前缀,.
时,使用规则对其进行扩展以临时委派给希腊语输入法。
示例:
,.a => α
,.l => λ
,.v => ω
\to => →
\circ = ∘
^2 => ²
_i => ᵢ
来源:
https://emacs.stackexchange.com/a/53810
https://stackoverflow.com/a/10197062/323874
答案 10 :(得分:0)
在 Spacemacs 中
M-m i u
这让您可以按名称搜索所需符号。