アプリからいくつかのデータをコピーしましたが、その中には^D
sと^M
sがたくさん含まれています。 ^D
を使用して問題なく:%s/^D//g
を削除し、^M
のようなもので:%s/^V^M//g
を削除できることはわかっていますが、問題は、Windowsで実行していて、^V
がCtrl-Vであり、クリップボードからgvimにデータを貼り付けることです。 Windows forvimで^V
/ctrl-Vの貼り付け機能をエスケープするにはどうすればよいですか?
から:help CTRL-V-alternative
:
*CTRL-V-alternative* *CTRL-Q*
Since CTRL-V is used to paste, you can't use it to start a blockwise Visual
selection. You can use CTRL-Q instead. You can also use CTRL-Q in Insert
mode and Command-line mode to get the old meaning of CTRL-V. But CTRL-Q
doesn't work for terminals when it's used for control flow.
^ Mに固有の別の方法は、^ Mがキャリッジリターンであるため、:%s/\r//g
を使用することです。
おなじみのMSWindowsホットキーをコピー、貼り付けなどに使用するには、mswin.vimファイルを構成として使用します。インストールパスから$ HOMEディレクトリがある場所にコピーし、名前を_vimrcに変更します。 :echo $ HOMEと入力して、それがどこにあるかを把握します。通常、C:\ Users\'username'のようなものです。 gVimを再起動すると、通常のWindows Ctrl-V、Ctrl-Cタイプのホットキーが機能するはずです。
もう少しガイダンスが必要な場合は、 。vimrcファイルをWindows 7のどこに配置する必要がありますか? を参照してください。
キーストロークを中断して他のアクションに置き換えるconemuや他のプログラム内のviでも同じ問題が発生しました。
^ K(Ctrl-K)を使用して検索と置換の有向グラフを入力することで、これを回避しました。
たとえば、NUL(0x00)文字とCR(^ Mまたは0xd)文字を削除したかった
通常は^ V000と^ V ^ Mを使用しますが、デフォルトの有向グラフを定義すると、次のように使用できます(^ KはCtrlキーとKキーを押していることに注意してください)。
:%s/[^KNU^KCR]//g
これらの有向グラフが機能しない場合は、現在設定されている有向グラフを確認できます。
:Dig
独自の定義方法を確認するには、
:help :Dig
使ってください :%s/\r/**\r\l**/g
。これにより、キャリッジリターンがWindowsスタイルのキャリッジリターン+改行の組み合わせに変換されます。