Od czasu do czasu pisząc dokumenty, chcę wstawić znaki Unicode do tekstu. Czasami znam kod znaków, a czasem szukam go w Internecie.
Obecnie przechodzę do trybu wstawiania, a następnie używam <Ctrl-V>u{four digit hex number}
, co może być bardzo pracochłonne. Czy istnieje łatwiejszy sposób wstawiania znaków (może jakiś sposób wklejania)?
insert-mode
unicode
input-methods
Martin York
źródło
źródło
Odpowiedzi:
Przedmowa : To nie ma nic wspólnego z Vimem jako takim, ale pokażę ci, co uważam za „najlepszy” sposób na wstawienie tych znaków; System digrafów Vima jest mniej więcej taki sam, ale działa tylko z Vimem. Działa to we wszystkich aplikacjach.
Działa to tylko w systemach X11 (Linux, BSD itp.). W systemie Windows jest AllChars . Od jakiegoś czasu nie był aktualizowany, ale mogę potwierdzić, że działa dobrze z Windows 7 (użyłem go w mojej poprzedniej pracy). Wierzę, że OS X ma również dobre możliwości, aby to zrobić wbudowane w system operacyjny; jeśli używasz OS X, zachęcam do ich sprawdzenia, ale ponieważ tak naprawdę nigdy nie korzystałem z OS XI, nie mogę cię do nich wskazać.
Poniżej znajduje się (część) szkicowego artykułu blogu, który mam w przygotowaniu. Niestety naprawdę nie ma jeszcze wyczerpującego przewodnika (poniżej), a poniżej nie opisano wszystkich funkcji, które oferuje (na przykład brakuje niektórych części dotyczących martwych kluczy) i można by je lepiej napisać w niektórych częściach, ale myślę, że to wciąż „wystarczająco użyteczne”.
„Sekwencja tworzenia” to naciśnięcie Composeklawisza, a następnie jednego lub więcej znaków, aby utworzyć znak, którego nie można znaleźć na klawiaturze, na przykład naciśnięcie Compose, natychmiast po nim "i amoże dać znak
ä
.Domyślnie Composenie jest powiązany z żadnym kluczem 1 ; prawy Altklawisz (aka. Alt Gr) jest często używany, ale ustawiasz go na dowolny klucz, który chcesz.
Ustaw za pomocą xmodmap
Możesz użyć tego
xmodmap
do ustawienia:Prawdopodobnie chcesz to dodać do
~/.Xmodmap
pliku 2 :Ustaw za pomocą XKB
Możesz także ustawić klucz tworzenia jako opcję dla XKB za pomocą
setxkbmap
:Aby ustawić je na stałe, dodaj polecenie do pliku startowego X lub alternatywnie możesz również ustawić
/etc/X11/xorg.conf
:Lub, w bardziej „nowoczesnym” stylu, możesz utworzyć plik
/etc/X11/xorg.conf.d/90-compose.conf
:Lista możliwych wartości znajduje się w
xkeyboard-config(7)
sekcji „Pozycja klawisza Compose” 3 .Konfigurowanie martwych kluczy
Martwy klucz służy głównie do dodania akcentu lub znaku diakrytycznego do litery (np. Umlaut, grób akcentujący itp.), Chociaż można go użyć do utworzenia dowolnej postaci. Działa ... TODO '
Tworzenie pliku ~ / .XCompose
Domyślny plik tworzenia, jeśli go
~/.XCompose
brakuje, to/usr/share/X11/locale/$LANG/Compose
. Posiadanie własnego~/.XCompose
zastępuje wartość domyślną, ale nadal można dołączyć wartość domyślną do:Zmiany dowolnego pliku tworzenia są uwzględniane po ponownym uruchomieniu aplikacji. Nie musisz ponownie uruchamiać X.
Skomponuj klucz
„Sekwencja tworzenia” polega na naciśnięciu Composeklawisza, a następnie co najmniej jednego znaku, aby utworzyć znak, na przykład:
Oznacza to, że naciśnięcie Compose, zaraz po nim następuje "i atworzy
ä
.<Multi_key>
oznacza, że używamy Composeklucza. po tym następuje lista jednego lub więcej kluczy, które muszą byćkeysyms
symbolicznymi reprezentacjami kluczy używanych przez X (zobacz sekcję Keysyms).Po nim
:
następuje, a następnie wynik.Wynik:
Uwaga : w pliku tworzenia jest rozróżniana wielkość liter, więc nie
A
jest to to samo, coa
.Martwe klucze
DO ZROBIENIA
Niech działa w GTK i Qt
Ustaw zmienne środowiskowe
GTK_IM_MODULE
iQT_IM_MODULE
naxim
.Skorupa Bourne'a:
Powłoka C:
Zobacz też
Mój
~/.XCompose
Tego
~/.XCompose
używam ; Użyłem skryptu, aby to wygenerować, ale przypadkowo nadpisałem to podczas kompilacji> _ <Więc muszę go przepisać.Zwróć również uwagę na ten wiersz:
Naciśnięcie Compose ibspowoduje wstawienie tego ciągu (losowy numer IBAN testu); bardzo przydatny do testowania aplikacji, w których taka liczba jest wymagana do utworzenia jakiegoś obiektu (Osoba, Organizacja); XCompose może również służyć jako narzędzie „fragmentu” :-)
Przypisy
1: Niektóre klawiatury UNIX miały dedykowany Composeklawisz ( jak ten SUN ), ale obecnie jest to dość rzadkie.
2: W zależności od istniejącej konfiguracji może to być odczytane przy starcie, w zależności od konfiguracji, dodaj linię
xmodmap ~/.Xmodmap
do jednego~/.xinitrc
lub~/.xsession
; zobacz także wiki ArchLinux .3: Reprodukowane dla Twojej korzyści:
źródło
C-x 8 RET
w edytorze innym niż vi, nie wiem czy Vim ma coś podobnego).Aby wstawić znaki Unicode, takie jak euro lub symbole praw autorskich, lub znaki diakrytyczne, takie jak niemiecki umlaut lub grób akcentujący,
digraphs
można użyć.Na przykład w trybie wstawiania naciśnij Ctrl+ ki wpisz następujące polecenie:
a'
dlaá
,E'
dlaÉ
,n?
dlañ
,a:
dlaä
,ss
dlaß
,a!
forà
,a>
forâ
forê
,a?
forã
,a*
dlaα
(alfa),b*
dlaβ
(beta),g*
dlaγ
(gamma),d*
dlaδ
(delta).22
dla²
,33
lub³
Eu
dla€
(Euro),Pd
dla£
(Funt),Co
dla©
(Prawa autorskie),DG
dla°
(Stopień),OK
dla✓
,XX
dla✗
,Sb
dla∙
(bullet),-N
for–
(en dash),-M
for—
(em dash)Gdy ustawiona jest opcja digraph (
:set dg
), możesz także użyć następującej metody:a
Backspace:
dlaä
,E
Backspaceu
dla€
itp.Na liście aktualnie zdefiniowany typ digrafach:
:digraphs
(:dig
).Źródło: Wprowadzanie znaków specjalnych na stronie Vim Wikia .
OS X
Jeśli używasz OS X, bardzo łatwo jest wpisać litery akcentowane w dowolnym miejscu, stosując następującą metodę:
á
, edlaé
, idlaí
i podobne,ã
, ndlañ
i podobne,ü
,¡
, Option+ Shift+ ?for¿
,Zobacz też:
źródło
Moja wtyczka Unicode pozwala na łatwe wprowadzanie znaków Unicode. W szczególności pozwala
:Digraph <name>
- Szukaj znaków w alfabecie:UnicodeTable
- Wyświetla tabelę znaków:UnicodeName
- Zidentyfikuj znak pod kursoremUzupełnianie znaków przy użyciu ich nazw lub wartości z tabeli unicode (
:h i_CTRL-X_CTRL-Z
) lub digarphs (:h i_CTRL-X_CTRL_G
)Przeczytaj pomoc, aby uzyskać więcej informacji na temat korzystania z mojej wtyczki.
źródło
Oprócz używania predefiniowanych digrafów (Uruchom,
:dig
aby uzyskać listę), możesz także zdefiniować własne digrafy w vimie:Zobacz także: http://vimdoc.sourceforge.net/htmldoc/digraph.html
źródło
W przypadku często używanych znaków świetne są
:digraph
też środki zewnętrzne, takie jak wspomniany klawisz tworzenia . Dla rzadko używanych definiuję skróty, takie jak to:A następnie użyj mojej wtyczki SnippetComplete, aby uzyskać wyskakujące menu z listą wszystkich takich skrótów, np .:
unicode_<C-x>]
źródło