カーソルが置かれている単一の文字をヤンク(コピー)するにはどうすればよいですか?


49

私は物をコピーする多くの方法を知っています:

yiw=現在の単語の
yawヤンク=すべての単語をヤンク(末尾のスペースを含む)
yy =現在の行を
3yyヤンク= 現在の行で始まる3行をヤンク
yap=すべての段落をヤンク(末尾の改行を含む)

単一の文字を削除または変更することもできます。

x=カーソルの下の文字を削除する=カーソルの下の文字を
r置き換える

しかし、どのようにカーソルの下にある単一の文字を単純にコピーしますか?

私の動機は、Perl 6でプログラミングしていることと、一部の演算子がUnicode文字であるということです。現在、カスタムパーサーの開始点としてtadzikのPerl 6 Config :: INIコードを使用していますが、この行からそのフランス語の引用文字(ハイパーオペレーター)を1つだけコピーしたいと思います

my %hash = $<sections>».ast;

2文字の "Texas"バージョンのhyper operatorを使用できます>>が、私はそれが以下よりも良く見え、曖昧さが少ないと思いました>>>

my %hash = $<sections>>>.ast;

ここに画像の説明を入力してください
ここに画像の説明を入力してください


1
簡単に、いつものように、動きと操作を構成する:yl
VanLaser

@VanLaserいいね!私はその1つのキャラクターだけが欲しかったので、動きがうまくいかないと思っていました。しかし、あなたの提案はASCIIには最適です。それを回答として投稿してください。投票します。興味深いことに、このUnicode文字では機能しませんが、ytX( " yank til X")Xは、文字が右側にある場合に機能するようです。
クリストファーボトムズ

ユニコードであろうと、Vim conceal機能を使用して非表示/置換されている2文字がないのでしょうか?
ヴァンレーザー

@VanLaser 2つの「文字」のようです。
クリストファーボトムズ

ところで、»キャラクターをどのように紹介しますか?
VanLaser

回答:


41

よく使用される「右に1文字」の動きでヤンク操作を構成すると、動作するはずですyl

ところで(OPコメントにコメントするために)、私にとって»はgVimまたはターミナルVimでこの方法でヤンクできます。おそらく(ファイル)エンコーディングの問題ですか?


4
Yanking »は私にとってもうまく機能します。vy単一の文字をヤンクするために使用します。なぜではなく、なぜそれを使用するのかはylわかりませんが、おそらく意識的な理由が一度あったかもしれませんが、今は単なる反射です。
jjaderberg

3
私はいつもやったy<space>ことは、カーソルの下の文字ヤンクだと思った、と私は答えとして私が気付いて助けを確認した後、それを追加するつもりだった<space>l同じものです。
ブレットY

それは素晴らしいことであり、おそらくスペースがリーダーとして使用される場合を除いて、一見するとさらに簡単にヒットします。
VanLaser

1
@jjaderbergコメントをお寄せください。回答として投稿してください。ありがとう!
クリストファーボトムズ

1
@brettanomycesあなたのコメントが好きです。答えとして投稿してください。ありがとう!
クリストファーボトムズ

14

通常はvyvisual yank)を押し、時にはxudelete undo)も押します。また、カーソルの前に文字をヤンクしたい場合、の代わりにlvyを押してXu、を押すことができます。それが私xuが現在のために押す理由です。:-)

Xuカーソルがその文字に移動することに注意してください。


という意味hvyです。私はそれを編集しようとしましたが、明らかにvimコマンドの1文字を修正することは受け入れられるほどの大きな変更ではありません。
シャーバズ

9

私がこれを行うために知っている最も簡単な方法はx、文字を削除するために使用することです。これは、文字をバッファPに入れてから戻すことです。その後、バッファを変更しない限り、カーソルを移動し、p(カーソルの後)またはP(カーソルの前)で必要な場所に文字を貼り付けることができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.