Emacs no Mac OS X - Para Alt ou Command?

20

É oficial. Adoro odiar o Emacs no Mac OS X.

Não importa o que eu faça, eu recebo um espinho de lado.

Quando tento escrever \usando Alt+ Shift+ 7, recebo erros porque Alt== Meta no Emacs. Se eu vincular a Metaao Commandcontornar chave I que erro. Está tudo bem. Até eu querer usar Meta-Tab. Agora estou de repente tentando Command- Tablonge de Emacs em alguma outra aplicação.

Estou furioso no momento, alguém poderia me ajudar a resolver esse problema? Eu preferiria se pudesse ter Altcomo meta, não instalar o aquamacs.org e não usar a fnchave.

Ah, a propósito, eu uso a localidade sueca.

EDIT 1:

Primeira solução: adicione (global-set-key [C-tab] [M-tab])a ~/.emacs. Isso amarrará o Meta-tabao Control-tabinvés disso. Não é o que eu queria inteiramente, mas deveria funcionar.

Zolomon
fonte

Respostas:

13

Veja as opções em M-x customize-group ns

Lá você pode ajustar o comportamento das teclas modificadoras. Eu configurei o alt certo para "No modifier" - esse é o mesmo comportamento dos teclados de PC com Alt-Gr.

Outra configuração de que gosto é desmarcar as duas teclas alt e usar a functiontecla para alt.

bdecaf
fonte
Funciona para mim ... você não deveria dizer obrigado, mas obrigado.
Prof. Falken apoia Monica em
11

Eu também tenho esse problema há anos! Recentemente, experimentei o Emacs no OS X novamente. Finalmente resolvi o problema adicionando o seguinte no meu .emacs: (Isso é com o Emacs 24.3)

(when (eq system-type 'darwin)
  (setq mac-right-option-modifier 'none))
Morten Rasmussen
fonte
Obrigado por isso! Agora eu posso voltar a usar o emacs! :)
petre
4

Algumas pessoas que conheço sempre compram Macs com teclados americanos exatamente por esse motivo.

Também amaldiçoei o Emacs (também em sueco) e a única solução que encontrei foi usar o layout US Extended, mas usando meu teclado sueco. Passei vários anos usando o teclado dos EUA como teclado principal, para poder trocar mais ou menos sem pensar.

Se você não está disposto a seguir a rota de troca de layout, o OS X Emacs em sueco é doloroso.


Edit: Acabei de encontrar uma dica para o espanhol que pode ser útil. A idéia é remapear o personagem que é enviado ao Emacs para aquele que você deseja. Eu não tentei, mas parece promissor.

molbdnilo
fonte
Este deveria ter sido fixado por agora, você acha que ...
Zolomon
2

Não é realmente elegante, mas você pode usar a tecla Escape para meta e manter a tecla alt para caracteres especiais. Por exemplo, em ESC xvez de M-x.

Mas, de acordo com o molbdnilo, a maioria dos teclados fora dos EUA é péssima para programação. Certa vez, trabalhei na Finlândia por algumas semanas, e a primeira coisa que fiz foi mudar o KB para os EUA. Até a digitação às cegas era mais fácil do que descobrir como digitar os caracteres necessários tantas vezes nas linguagens de programação. (bem, na verdade, a primeira coisa que fiz foi mudar o idioma; felizmente eu sabia como fazer isso pela memória muscular :-)

Peter Frings
fonte
3
Sim, é quase como se as sintaxes mais comuns tivessem sido inventadas pelos americanos. ;-)
molbdnilo
1

Eu tenho o mesmo problema quando vim do Linux para o macOS e resolvi adicionando os seguintes códigos ao meu arquivo de configuração do emacs:

;; check OS type
(cond
 ((string-equal system-type "windows-nt") ; Microsoft Windows
  (progn
    (message "Microsoft Windows")))
 ((string-equal system-type "darwin") ; Mac OS X
  (progn
    (setq mac-option-key-is-meta nil)
    (setq mac-command-key-is-meta t)
    (setq mac-command-modifier 'meta)
    (setq mac-option-modifier nil)
    (message "Mac OS X")))
 ((string-equal system-type "gnu/linux") ; linux
  (progn
    (message "Linux"))))

Observe que esta parte dos códigos que comentaram com o 'Mac OS X', ele trocará optionchave com commandchave no aplicativo emacs, mas em toda a visualização, commandainda é command, você pode usar command+tabcomo antes.

yanyingwang
fonte