Wie gebe ich Tilde (~), Back Tick (`) und Sonderzeichen mit einer Tastatur außerhalb der USA ein?

7

Normalerweise verwende ich Vim mit einer italienischen Tastatur (ich komme aus Italien) (hauptsächlich in einem Ubuntu Linux Virtualbox-Gast von einem Windows-Host).

Ich habe Probleme, wenn ich einige häufig verwendete Zeichen (unter Unix) eingeben muss, die im italienischen Tastaturlayout nicht vorhanden sind. Ich beziehe mich insbesondere auf diese Zeichen:

  • Tilde: ~(Home-Verzeichnis-Alias)
  • Back Quote / Back Tick: `(hauptsächlich in Ruby-Programmen)

Ok, ich kann $HOMEanstelle von verwenden ~, aber gibt es eine Vim-spezifische Möglichkeit (möglicherweise eine Tastenanschlagsequenz), um diese (und andere) "speziellen" Zeichen einzugeben, die auf der Tastatur nicht vorhanden sind?

Lösung könnte eine Schlüsselbindung sein .vimrc? Zum Beispiel habe ich in meinem .vimrcdies:

map ' `

aber wie Sie sich vorstellen können, bin ich mit dieser speziellen Tasten-Neuzuordnung unzufrieden ... (und ich habe sie <Fx>bereits besetzt)

Übrigens, vielleicht ist die Frage etwas abseits des Themas, weil sie nicht direkt mit Vim zusammenhängt, sondern mit der Einstellung der Tastatur und der Sprache. Vielleicht fragen Sie in Stack Overflow ist besser?

Giorgio Robino
quelle
Wie viele Tastenanschläge möchten Sie verwenden? Da Sie Ubuntu verwenden, können Sie immer Unicode verwenden: Strg-Umschalt-u, dann erhalten 7ESie ~, Strg-Umschalt-u, dann erhalten 60Sie `.
Muru
Danke, aber es scheint nicht zu funktionieren. Bitte beachten Sie, ich benutze ein kopfloses Ubuntu durch ein entferntes Terminal (Kitt) ...
Giorgio Robino
2
Versuchen Sie es aus dem Einfügemodus:Ctrl-v u 007e
VanLaser
2
Das kann durch einen Blick man asciiauf Ubuntu beschleunigt werden .
Muru
1
@GiorgioRobino - was passiert, wenn du schlägst AltGr ^und AltGr 'kombinierst? Referenz: superuser.com/a/667654/292962
VanLaser

Antworten:

7

Von :he digraph:

Digraphen werden verwendet, um Zeichen einzugeben, die normalerweise nicht mit einer normalen Tastatur eingegeben werden können.

Beim Ausführen :digraphswerden die aktuell definierten Digraphen angezeigt. `ist definiert als '!und ~ist definiert als '?.

Es gibt zwei Möglichkeiten, Digraphen einzugeben:

<C-k> {char1} {char2}
{char1} <BS> {char2}

Die zweite Methode erfordert :set digraph.


Das inoremap '' `könnte schneller gehen, vorausgesetzt, Sie brauchen nicht oft zwei 'Sekunden hintereinander. Beachten Sie, dass die globale Neuzuordnung ''maskiert :he '', die Zuordnung im Einfüge- und Befehlsmodus jedoch meines Wissens sicher ist. Ich kann mir keine ähnliche denkwürdige und bequeme Alternative vorstellen ~. --und ==scheinen wahrscheinlich als sie selbst häufig verwendet zu werden.

8bittree
quelle
2
Oh! +-für Tilde! In einigen Kontexten gibt eine Tilde ungefähre Informationen an, und man könnte sich vorstellen +-, eine ähnliche Bedeutung zu haben.
Muru