vimで頻繁に使用するコマンドを簡略化する方法
伊谢尔伦
伊谢尔伦 2017-05-16 16:34:21
0
4
667

問題の説明

vim のコマンド モードで、頻繁に使用する複雑なコマンドをどのように簡素化すればよいでしょうか?

単にショートカット キーを設計するだけの問題でしょうか?

私はよく置換コマンド 0,$s/t/ /g を使用して、タブ キーを 4 つのスペースに置き換えます。

新しく作成したファイルについては、設定ファイルで既に設定を行っています。ただ、他の人のファイルによくあるタブキーです。

毎回交換しなければなりません

私の質問

  1. vim のショートカット キーの設定にあまり詳しくありません。ショートカット キーを使用できますか? 設定方法: 0、$s/t/ /g を使用します。

  2. vim でファイルを開くときに、ショートカット キーを設定する必要さえないように、ファイルを自動的に変換することは可能ですか?
  3. 解決策

まず、以下の回答者に感謝します。彼らの説明とヘルプドキュメントを読んで、最終的に合理的と思われる方法を思いつきました。

ショートカット キーは確かに可能ですが、ショートカット キーを覚えておく必要があります。現在の問題では、自動変換を選択します。

    まず :help ret でドキュメントを確認してください。ここで言いたいのは、置換するときは、
  1. プログラム内の文字列内の \t 文字を置換するように注意してください。

  2. :help ret 查看文档, 这里我想说的是, 替换的时候, 小心替换程序中字符串中的\t ドキュメントをチェックしてください。これ以上言う必要はありません。

  3. .vimrc ファイルを表示します。vimrc ファイルにはすでに

    部分が存在します。対応するコマンドを一緒に記述するだけです。 :help auto

  4. この自動置換コマンド、BufRead と BufReadPost は同じであることに注意してください: モード オプション、具体的にはどの種類のファイルを置き換えるか、他のファイルの誤った置き換えを防ぐためにサフィックスを書き出します。
  5. if has("autocmd")

  6. この置換コマンドは Buf キャッシュ内のコンテンツを置き換えるだけであり、変更または保存がない場合、vim は保存を求めるプロンプトを表示しません。 tab キーはまだ存在します

    これは無害です。 autocmd BufRead *.cpp,*.h :ret

    最後に、以下の回答者の皆様、明けましておめでとうございます。
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(4)
过去多啦不再A梦

いくつかのヒントから始めましょう:

  1. すでに操作があるので、この操作のショートカット キーを設定するのは非常に簡単です。たとえば、次のように通常モードでショートカット キーを <Leader>ts -- nnoremap <Leader>ts :0,$s/t/ /g<CR>, 大概是 希望快捷键映射的模式 快捷键 操作 に設定します。

  2. 2枚目は使えますautocmd BufRead * :%ret! 4<CR>, 将整个文件的 tab 转换成 space,每个 tab 用 4 个 space 替代. ret 指的是 replace tab, 更多内容可以 :help ret, :help autocmd, :help event, :help BufRead.

いいねを押す +0
左手右手慢动作

vim には :retab というコマンドがあります (間違って覚えているかもしれませんが、同じはずです)。これを頻繁に使用する場合は、関連するヘルプを確認できます。 。

いいねを押す +0
大家讲道理

世界で最も素晴らしいエディタ: Vim 1 (オリジナル アニメーションのデモのすべての例) http://www.imooc.com/article/...

いいねを押す +0
習慣沉默

ショートカット キーを完全にカスタマイズできます。.vimrc をうまくプレイするだけです

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート