Nie można wpisać szelki i szelki kwadratowe w emacs

Używam Mac OS X i GNU Emacs 22.3.1. Używam szwedzkiej klawiatury. Nie jestem w stanie pisać aparatów ortodontycznych { }, [ ] w emacs. Próbując wpisać Aparat ortodontyczny dostaję nawias. Ponieważ jestem całkiem nowy w Mac i emacs potrzebuję trochę pomocy w konfiguracji emacs, aby to dobrze.

Author: Jonas, 2010-07-31

9 answers

(setq mac-option-modifier nil
      mac-command-modifier 'meta
      x-select-enable-clipboard t)

To jest to, czego używam do mojej szwedzkiej klawiatury. Działa nawet ze svorakiem A5, jeśli go używasz:)

 56
Author: monotux,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-07-31 13:58:17

Możesz też spróbować:

(setq mac-option-key-is-meta t)
(setq mac-right-option-modifier nil)
 22
Author: patrikha,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-29 14:48:54

Zakładam, że używasz graficznego Emacsa, a nie tylko używasz dołączonej wersji OS X z poziomu terminala.

Aby upewnić się, że Emacs reaguje na naciśnięcia klawiszy w taki sam sposób, jak inne aplikacje OS X, spróbuj wykonać następujące czynności:

(setq default-input-method "MacOSX")

A w szczególności, jeśli chcesz użyć klawisza Option, aby wprowadzić rozszerzone znaki nie na klawiaturze (np. "Option-c c" => "ç"), użyj następujących ustawień:

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

(Umieść te polecenia w swoim~/.emacs lub ~/.emacs.d/init.plik startowy el emacs, i uruchom ponownie Emacsa, lub po prostu "m-x EVAL-buffer" podczas edycji pliku.)

 7
Author: sanityinc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-08-01 13:22:02
(setq default-input-method "MacOSX")

(setq mac-command-modifier 'meta
      mac-option-modifier nil
      mac-allow-anti-aliasing t
      mac-command-key-is-meta t)
Spróbuj tego. Będziesz mógł używać klawisza Alt jako AltGR, a dla wszystkich starych funkcji M-x będziesz musiał użyć klawisza command.
 5
Author: Abdul Bijur V A,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-04-23 18:49:14

Powiązać odpowiednie skróty klawiaturowe z anonimowymi funkcjami, które wstawiają te znaki, na przykład dodać te linie do ~/.emacs dla europejskiego portugalskiego:

(global-set-key "\M-(" (lambda () (interactive) (insert "{")))
(global-set-key "\M-)" (lambda () (interactive) (insert "}")))

(global-set-key "\M-8" (lambda () (interactive) (insert "[")))
(global-set-key "\M-9" (lambda () (interactive) (insert "]")))

Następnie zapisz ~/.emacs za pomocą C-x C-s i załaduj ponownie za pomocą M-x load-file i wpisz ~/.emacs.

Minusem jest to, że to nie Działa w mini-buforze, a wpisanie "Alt-9" spowoduje wstawienie tekstu w buforze, a nie w mini-buforze.

Porównanie z innymi rozwiązaniami: rozwiązanie to utrzymuje zgodność z innymi skrótami przy użyciu M-. Rozwiązania @ monotux, @sanityinc i Abdul Bijur V A działają, ale nie zachowują tej kompatybilności, np. Cmd-Q nie kończy programu i M-x nie wywołuje już mini-bufora do wykonywania poleceń.

Rozwiązanie @ patrikha nie pasuje do pisania dotykowego, które wymaga tych samych komend modyfikujących po prawej i lewej stronie klawiatury (Command, Alt/Option, Shift i Control). Na przykład, dzięki temu rozwiązaniu M-x wymaga lewego kciuka na lewym klawiszu Alt i lewego palca wskazującego na klawiszu S, zamiast prawego kciuka kciuka na prawym klawiszu Alt. Możesz (setq mac-left-option-modifier nil), Ale To może wymagać zmiany przyzwyczajeń do liter po prawej stronie klawiatury.

Uwagi: jeśli używasz AquaMacs, wiki ma obejście w sekcji "wprowadzanie {}[] itd. na klawiaturach nieanglojęzycznych lub innych klawiszach z modyfikatorem opcji".

Dodaję również ten wiersz na końcu ./emacs, aby pokazać dopasowanie nawiasów i szelek: (show-paren-mode).

 2
Author: mmorin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-13 09:16:00

Wypróbowałbym Emacsa ie w wersji 23. Na Maca zintegrowany emacs chciałbym spróbować Aquamacs

 1
Author: Mark,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-07-31 06:40:49

Miałem ten sam problem z francuską klawiaturą. Wygląda to na problem z Aquamacsem (Carbon Emacs nie zastępuje { z ()).

Zmiana w Emacsie powyżej działa bez zarzutu i mogłem wpisywać nawiasy, ale nie mogłem już używać standardowych skrótów (na przykład Ctrl+C/Ctrl+V).

Aquamacs zapewnia obejście. Pasek Menu > Opcje> opcja, polecenie, klawisze Meta > wybierz ...Meta & French

To działało dobrze dla mnie. Jednak może to nie działać w języku szwedzkim, nie szwedzka klawiatura opcja.

 1
Author: cfalguiere,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-02 19:27:01

Korzystanie Z Aquamacs:

Z menu głównego przejdź do opcji-Option, command, meta keys i wybierz "option for composed characters".

Szelki i nawiasy działają tak, jak w przypadku standardowej klawiatury Mac.

 1
Author: Francesco,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-02 07:27:35

Nie musisz pamiętać takich rzeczy jak programowanie: oto odpowiedź. Przejdź do preferencji klawiatury i zaznacz "Pokaż klawiaturę i przeglądarkę znaków na pasku menu". Następnie sprawdź na pasku menu w pobliżu miernika baterii ikonę i zacznij dwukrotnie klikać dowolny znak, który chcesz.

 -1
Author: Julo Ratumo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-10 20:52:37