web-dev-qa-db-fra.com

Terminal OS X: Meta-Taste + Alt-Funktion gleichzeitig

Gibs es eine Möglichkeit, einalt/optionSchlüssel als Metaschlüssel, nous sommes allés voir plus de détails, cliquez ici pour en savoir plus! Daraus zu machen, die es brauchen?

Zum Beispiel in meinem lokalen Tastaturlayout:

  • @ istalt+2
  • \ istalt+shift+7
  • | istalt+7
  • usw.

Aussi, wenn ich setzealtals metaschlüssel kann ich diese zeichen nicht mehr machen. Wenn Sie dagegen "écoutes, écoutes, dégustations" dans les métadonnées, les métadonnées, les histoires, les secrets, les idées.

Tout ce que vous avez à dire sur ce qui se passe dans le monde, c'est ce que nous avons besoin de savoir! :)

Bearbeiten:

Es scheint, dass ich einstellen kannaltEn savoir plus sur ce sujet Dans les entrées du journal: "\e2": "@" Dies funktioniert in der Bash-Shell, il y en a de plus à ce jour avec Emacs, aussi bien que possible.

36
John Smith

Pensez à utiliser un Emacs complet pour Mac OS X. J'utilise Carbon Emacs mais je crois que d'autres (par exemple Aqua Emacs ou X11 Emacs) feraient l'affaire.

Si vous insistez pour utiliser Emacs dans un terminal, vous pouvez utiliser le préfixe C-x 8 en tant que clé de composition. Essayez C-x 8 C-h pour obtenir une liste de possibilités.

Voir http://www.emacswiki.org/emacs/EmacsForMacOS

10
kmkaplan

J'utilise un clavier suédois sous Mac OS X et utilise la configuration suivante pour Emacs.app:

D'abord, j'ai KeyRemap4MacBook installé et je l'ai configuré pour changer la touche Option gauche en Commande.

J'ai ensuite ce qui suit dans mes .emacs:

(setq mac-option-modifier 'none)
(setq mac-command-modifier 'meta)

Cela fait en sorte que Emacs traite la commande comme méta et ignore Option. Etant donné que la touche Alt/Option de gauche est remappée en commande, le méta est léger alors que la touche Alt/Option de droite fonctionne toujours pour la saisie de caractères spéciaux tels que @ [] et {}.

Les raccourcis Mac spécifiques aux applications, tels que Cmd + C et Cmd + V, ne fonctionnent plus, mais les raccourcis globaux tels que Cmd + espace pour Spotlight et Cmd + Tab pour le changement d'application fonctionnent.

Update: Si vous utilisez iTerm2 comme terminal, il ne prend en charge que le mappage de la touche Alt/Option de gauche sur méta, ce qui signifie que vous pouvez toujours utiliser la touche AltGr/Option de droite. pour saisir des caractères spéciaux. Cela signifie également que vous pouvez utiliser les méta comme d'habitude dans Emacs fonctionnant dans le terminal iTerm2.

24
Joakim Hårsman

J'ai un clavier suédois sur mon Mac et j'utilise Aquamacs. Ajout des deux lignes (l'attribution revient à Joakim Hårsman)

(setq mac-option-modifier 'none)
(setq mac-command-modifier 'meta)

dans .emacs (et le redémarrage d'Aquamacs) a fait l'affaire pour moi.

15
Ztyx

avec iTerm2 vous pouvez mapper la touche d’option gauche sur ESC/meta et laisser le mappage de la touche d’option droite sur "normal". De cette façon, vous pouvez utiliser la bonne touche d'option pour saisir des accents, etc.

iTerm2 preferences

12
Jan Berkel

Deux solutions que j'utilise:

  • J'utilise xterm sous X11.app. X11.app utilise la clé de commande comme méta.
  • Lorsque j'exécute emacs dans Terminal.app, j'utilise simplement la méthode d'entrée rfc1345, qui me permet de saisir toutes sortes de caractères fous non-ascii sans avoir besoin d'une clé d'option.
5
bendin

Ceci est un vieux post mais en ajoutant une alternative pour Robots à trouver . J'ai emprunté quelques fichiers à Aquamacs (emulate-mac-keyboard-mode.el, aquamacs-tools.el) qui résolvent le problème (J'ai un clavier italien-pro):

(defun aq-binding (any)
 nil)
(load  "~/.emacs.d/emulate-mac-keyboard-mode.el") ;;  'noerror

cela fournit:

  • quelques modes mineurs (emulate-mac-italien-clavier-mode, émule-mac-français-clavier-mode, mulate-mac-suisse-allemand-clavier-mode,etc) 
  • un menu pour jouer avec toutes les options fournies par Aquamacs

Testé avec Emacs-23.3-universal-10.6.6 et semble fonctionner correctement pour moi.

Merci Aquamacs pour cela, pourquoi ne pas pousser cela en amont si ce n’est déjà fait.

5
wilane

Découvrez cmd-key-happy. Cette petite application a fait des merveilles pour moi. Il vous permet d'utiliser la commande en tant que méta, avec des exceptions que vous pouvez configurer.

L'information de l'auteur suit:

Ce programme vous permet d’échanger les touches de commande et les touches alt (ou option) dans n’importe quelle application, mais en particulier Terminal.app 

http://github.com/aim-stuff/cmd-key-happy

5
stuntmouse

Spezielle Tastaturbelegung mit Option Deadkey

Meine Lösung für dieses Probleme is is in spezielles Tastaturlayout, das ich geschrieben habe, S. Custom . Une option unique touche morte , Options Options combinées, jamais vu, physiquement, idéal⌥ OptionModifizierertaste. Date de livraison estimée à ce jour: "Au moins de temps auparavant US-Tastaturlayout wie folgt erzeugt:

  • Schlagen⌥ Option+c.

Die US. Benutzerdefiniertes À propos de nous Nous contacter pour le moment:

  • Schlagen⇧ Shift+§(Option Option Schlossel), les meilleures paroles et les meilleursc.

Encore une fois dans Terminal.app, avec une option sur Metaschlüssel verwenden markiert ist.

Vous êtes le premier à écrire sur ce livre!

  1. Es konvertiert schlicht§à ein⎄ ComposeSchlüssel (so könnten Sie auch çitting produzieren, indem Sie schlagen§, dann,, dannc).
  2. Es ersetzt das CapsLock-Mapping au cours des années (deutlich erweitertes) U.S. Erweitertes Tastaturlayout .

Vous avez le choix entre une option et une option

Wenn Sie eine physische ANSI-Tastatur haben, fehlt die§Schlüssel. In diesem Fall empfehle ich die Zuweisung der§Schlüssel zu einem anderen Schlüssel, zum beispiel nach rechts⌥ OptionModifizierertaste. Installieren Sie KeyRemap4MacBook , Identifiez-vous ~/Library/Application\ Support/KeyRemap4MacBook/private.xml and fügen Sie den folgenden Code ein:

<?xml version="1.0"?>
<root>
<item>
  <name>Send ISO Section for right Option</name>
  <identifier>private.send_iso_section_for_right_option</identifier>
  <autogen>--KeyToKey-- KeyCode::OPTION_R, KeyCode::UK_SECTION</autogen>
</item>
<item>
  <name>Send Shift+ISO Section for Shift+right Option (keep normal right Option without Shift)</name>
  <identifier>private.send_shift_iso_section_for_shift_right_option</identifier>
  <autogen>--KeyToKey-- KeyCode::OPTION_R, ModifierFlag::SHIFT_R, KeyCode::UK_SECTION, ModifierFlag::SHIFT_L</autogen>
  <autogen>--KeyToKey-- KeyCode::OPTION_R, ModifierFlag::SHIFT_L, KeyCode::UK_SECTION, ModifierFlag::SHIFT_L</autogen>
</item>
</root>

Vous êtes le premier à écrire un commentaire sur KeyRemap4MacBook dans la base de données ReloadXML et dans "Options complètes" dans l'option "Envoyer une option". Nun, dein⌥ Right OptionGoûtez sans soucis§, aussi während der U.S. Benutzerdefiniertes Tastaturlayout is is aktiv und trifft⇧ Shift+⌥ Right Optionwird dir die Option touche morte (schlagen) geben⌥ Right OptionOhne zusätzliche Modifikatoren erhalten Sie einen Deadkey-Status, les options sont modifiables.

Wenn du behalten willst⌥ Right Optionwann⇧ Shiftwird nicht gedrückt (statt⎄ ComposeEn savoir plus sur les réponses de KeyRemap4MacBook „Absolut + ISO-absolu pour plus-value + Plus d'options (Option normale pour les non-utilisateurs)“ (annelle de „ISO-Abschnitt pour option d'achat“). Nur donc⇧ Shift+⌥ Right Optionerzeugt die Option touche morte, sans plaine⌥ Right Optionfunktioniert weiterhin als Optionsmodifikator. Sie können sogar weiterverwenden⌥ Right Option+⇧ ShiftModifikatorenkombinationen (zum Beispiel⌥ Right Option+⇧ Shift+c→ Ç⟨), solange Sie nicht treffen⇧ Shiftzuerst.

4
mach

Cela vaut la peine de réfléchir à l'hypothèse qui sous-tend la question. Je veux dire que le vrai problème est de créer les caractères qui semblent avoir besoin de la clé d’option. Ce problème peut être résolu sans obtenir simultanément la fonctionnalité 'méta clé + alt'.

Laissez-moi expliquer: j'ai un problème similaire. Sur mon clavier britannique, shift-3 correspond au signe dièse, £, ce qui signifie que je dois généralement appuyer sur l'option-3 pour obtenir le très utile # - un vrai problème dans Terminal, où j'utilise option comme méta. Cependant, je trouve que la plupart des solutions ci-dessus sont un peu excessives. Je ne souhaite pas passer à une autre version d'Emacs (p. Ex. Aquamacs), basculer vers une autre application de terminal (p. Ex. ITerm ou xterm) ou installer une application de remappage de clé (p. Ex. KeyRemap4MacBook) d'un symbole! Cela conviendrait peut-être à certaines personnes, mais j’ai pensé qu’il valait la peine de préciser que si le problème ne concerne qu’un caractère, il peut être résolu avec un fichier texte de neuf caractères.

En ce qui concerne ma version personnelle de ce problème, je trouve que la solution la plus simple consiste à créer un fichier appelé .inputrc dans mon répertoire personnel, composé de la ligne suivante:

"§": "#"

Cela remappe le § (pour moi, tout à fait inutile) § qui se trouve à gauche du 1 sur le clavier Mac actuel vers le (presque indispensable) #. Cela me convient encore mieux que la configuration par défaut, car je peux maintenant obtenir # avec une seule pression de touche. S'il y avait d'autres personnages que je devais remapper, il suffirait d'ajouter une ligne supplémentaire pour chacun.

Quoi qu’il en soit, cela concerne la manière d’obtenir le caractère manquant dans le shell, mais si vous le souhaitez également dans Emacs (ce que vous n’avez pas dit mais qui est probablement le cas), vous pouvez ajouter quelque chose comme ceci dans votre fichier .emacs (où est le ASCII du caractère que je veux, c'est-à-dire #):

(global-set-key (kbd "§") 'insert-hash)
(defun insert-hash ()
  (interactive)
  (insert 35))

Ce ne serait peut-être pas une solution si géniale s'il y avait des dizaines de caractères auxquels je voulais systématiquement accéder via la touche option, mais ce n'est pas le cas.

J'espère que cela aide quelqu'un. En tant que simple hacker du week-end, je n'oserais normalement pas répondre à une question sur Stack Overflow ...

3

Les réponses ci-dessus mentionnent des manières d'entrer une entrée non-ASCII, mais ce n'est pas vraiment le problème ici. La méthode C-x 8 vous permet d'entrer un tas de non-ASCII, mais le problème est que vous avez besoin de la clé d'option sur mac juste pour entrer le caractère (ascii) `| ' (barre verticale)! 

Alors, comment entrez-vous dans des choses comme M- | (région à la commande Shell) lors de l’exécution d’emacs dans ssh sous Terminal.app? Pas moyen pour cela mais d'utiliser la touche d'échappement, puisque | est option-7 et Terminal.app pour une raison stupide ne vous laissera pas utiliser Cmc comme méta :-(

(Si quelqu'un connaît un hack (SIMBL peut-être?) Qui laisse réellement Terminal.app utiliser Cmd comme méta, je vous en serais très reconnaissant ...)

3
unhammer

Aquamacs supporte cela, du moins pour mon clavier (français). Une fois Aquamacs installé (via drag'n'drop), vous pouvez accéder à Options -> Option, Commande, touches méta et choisir un réglage approprié pour votre clavier (dans mon cas, ... méta et français). Je ne maîtrise pas bien Emacs, mais toutes les combinaisons utiles que j'ai essayées semblent fonctionner ([ {, |, etc.).

Les claviers pris en charge, selon les éléments de menu de la version 2.1, sont les suivants:

  • Britanique
  • NOUS
  • Franco-suisse
  • Suisse allemand
  • Finlandais
  • Italien-pro
  • Italien
  • Espanol
  • Français
  • Allemand

Je suppose que l'équipe d'Aquamacs serait reconnaissante pour toute contribution, cependant, si votre clavier n'apparaissait pas dans la liste.

2
Gary Verhaegen

Je mordis l'herbe et commençai à appuyer sur la touche d'échappement. Vous vous habituez à ça ...

1
KristianR

Je voudrais modifier cette question ou quelque chose parce que j'utilise aussi un clavier suédois où je dois appuyer sur alt + 7 ou alt + shift + 7 pour faire | et\respectivement. 

J'utilise aussi Irssi dans Terminal.app et ceux-ci ne font pas bon ménage. 

Je suis un utilisateur de vim de longue date, alors emacs ne me pose aucun problème. 

N'y a-t-il pas moyen de remapper CMD pour qu'il soit Meta dans Terminal.app? 

Jusqu'ici, j'ai survécu en tapant simplement/wg N dans Irssi car le fait d'avoir ces caractères dans mon terminal est beaucoup plus important que l'IRC. 

Une solution me vaudrait de l’or! :)

0
Stefan M

Cela fait des années en retard, mais pour les personnes qui consultent cette page tout en cherchant une solution, comme moi, j’ai décidé d’en construire une moi-même, qui ne nécessite pas d’abandonner Terminal.app au profit de iTerm 2.

Il s'agit d'une application simple de barre d'état qui s'exécute en arrière-plan et réécrit tous les événements de touche gauche-Alt + $ KEY en deux événements clés en succession rapide, Esc, puis $ KEY; Toutefois, cela ne le fait que si Terminal.app est l'application ciblée.

Vous pouvez le trouver ici à https://github.com/habibalamin/Metalt .

0
habibalamin

Je me suis régalé de nos festivités avec notre équipe professionnelle et professionnelle. Sie könen es einfach in den Mac-Systemeinstellungen> Tastatur> Modifikatortasten konfigurieren.

https://Apple.stackexchange.com/a/282092/236382

0
Felix Geenen