Emacs sur Mac OS X - En Alt ou Commande?

18

C'est officiel. J'aime détester Emacs sur Mac OS X.

Peu importe ce que je fais, j'ai une épine dans le dos.

Lorsque j'essaie d'écrire \avec Alt+ Shift+, 7je reçois des erreurs car Alt== Meta dans Emacs. Si je lie la Metaà la Commandclé, je contourne cette erreur. Tout est bon. Jusqu'à ce que je veux utiliser Meta-Tab. Maintenant, j'essaie soudainement de Command- Tabquitter Emacs pour une autre application.

Je suis furieux pour le moment, quelqu'un pourrait-il m'aider à résoudre ce problème? Je préférerais que si je pouvais avoir Altcomme meta, pas installer aquamacs.org et ne pas utiliser la fnclé.

Oh, au fait, j'utilise les paramètres régionaux suédois.

EDIT 1:

Première solution: ajouter (global-set-key [C-tab] [M-tab])à ~/.emacs. Cela va lier le Meta-tabà la Control-tabplace. Pas ce que je voulais entièrement, mais devrait fonctionner.

Zolomon
la source

Réponses:

12

Voir les options sous M-x customize-group ns

Là, vous pouvez ajuster le comportement des touches de modification. J'ai réglé le bon alt sur "Pas de modificateur" - c'est le même comportement que sur les claviers PC avec Alt-Gr.

Un autre paramètre que j’aime bien est de désactiver les deux touches alt et d’utiliser la functiontouche pour alt.

bdecaf
la source
Ça marche pour moi ... vous n'êtes pas censé dire merci, mais merci.
Prof. Falken le
10

J'ai aussi ce problème depuis des années! Tout récemment, j'ai de nouveau essayé Emacs sous OS X. J'ai finalement résolu le problème en ajoutant ce qui suit dans mes .emacs: (Ceci est avec Emacs 24.3)

(when (eq system-type 'darwin)
  (setq mac-right-option-modifier 'none))
Morten Rasmussen
la source
Merci pour ça! Maintenant, je peux ăâșț à nouveau dans emacs! :)
petre
4

Certaines personnes que je connais achètent toujours des Mac avec des claviers américains pour cette raison.

J'ai également maudit Emacs (en suédois également) et la seule solution que j'ai trouvée consiste à utiliser la disposition US Extended, mais en utilisant mon clavier suédois. J'ai passé plusieurs années avec un clavier américain comme clavier principal afin de pouvoir basculer plus ou moins sans réfléchir.

Si vous ne souhaitez pas changer de format, OS X Emacs en suédois est tout simplement pénible.


Edit: Je viens de trouver un indice pour l’espagnol qui pourrait être utile. L'idée est de remapper le personnage qui est envoyé à Emacs à celui que vous désirez. Je n'ai pas essayé, mais cela semble prometteur.

Molbdnilo
la source
On aurait pu penser que cela aurait dû être réglé maintenant ...
Zolomon
2

Ce n'est pas très élégant, mais vous pouvez utiliser la touche Echap pour la méta et conserver la touche Alt pour les caractères spéciaux. Par exemple ESC xau lieu de M-x.

Mais, d'accord avec molbdnilo, la plupart des claviers non américains craignent pour la programmation. Une fois, j'ai travaillé en Finlande pendant quelques semaines et la première chose que j'ai faite a été de changer le KB en US. Même taper à l'aveuglette était plus facile que de savoir comment taper les caractères dont vous avez si souvent besoin dans les langages de programmation. (bon, en fait, la première chose que j'ai faite a été de changer de langue; heureusement, je savais le faire par mémoire musculaire :-)

Peter Frings
la source
3
Oui, c'est presque comme si les syntaxes les plus courantes avaient été inventées par les Américains. ;-)
molbdnilo
0

J'ai le même problème lorsque je suis passé de Linux à macOS et je l'ai résolu en ajoutant les codes suivants à mon fichier de configuration 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"))))

S'il vous plaît noter cette partie de codes qui ont formulé des observations avec Mac OS X ', il va échanger la optionclé avec commandclé dans l' application emacs, mais dans toute la vue, commandest encore command, vous pouvez utiliser command+tabcomme avant.

Yanyingwang
la source