Vi & Vim

テキストエディタのviおよびVimファミリを使用している人のためのQ&A


3
netrwでファイルをコピーするにはどうすればよいですか?
現在の作業ディレクトリは./A/B/です。を入力すると空のドキュメントが開き、vimコマンドでnetrwが開き:e.ます。ウィンドウはで分割されvs.、上位レベルのディレクトリ、つまりに移動でき./A/ます。次に、a_file.jpgから./A/B/にファイルをコピーしたいと思います./A/。 yyターゲットファイルとpターゲットウィンドウ(ディレクトリ)で試しましたが、目標を達成できませんでした。 追加のプラグインをインストールせずに目標を達成できる方法はありますか?

3
関数呼び出しにジャンプする方法は?
タグファイルを生成した後exuberant-ctags、関数呼び出しからその宣言にジャンプできます<C-]>。 私の質問は、他の方法でそれを行う方法ですか?カーソルが関数の定義上にある場合、関数が呼び出される行に移動するにはどうすればよいですか? ctagsで生成されたファイルを見ると、呼び出しの場所ではなく、定義の場所に関連する情報しか表示されません。それはできないことを意味します。それ以外exuberant-ctags?
14 ctags 

2
リスト文字タブをスペースとして表示する
とを使用listしlistcharsて空白を表示しますが、私が固守するコードスタイルはタブを使用します。見>たり^I、私のすべてのタブのために吐き気を催すれます。 空白のタブ文字を使用して、既存のリスト文字をすべて保持するにはどうすればよいですか?

2
MarkdownのメモやインラインコメントからVimドキュメントを生成する方法、またはドキュメントを追加するより良い方法はありますか?
これは、 2つの質問の1つです。最近、私はvimscriptの詳細を学び、vimの内部を学び、vimプラグインを書くための最初の一歩を踏み出しました。このプロセスの間、私は個々のマークダウンファイルに広範なメモを保存し、vimscriptファイルに多くのインラインの「ドキュメント」コメントを追加しました。 私はついに共有する価値のあるコードを手に入れたので、実際のドキュメントを追加したいと思っています。私はまだ自分のhelpdocファイルを作成していませんので、そのプロセスを理解しています。 このワークフローをまだ経験していないか、十分に理解していない場合、私が理解しようとしているタスクは2つあります。 vim / vimscript上のマークダウン「メモ」ファイルからhelpdocファイルを生成するため、vimからいつでもすばやく簡単に読み取り/参照できます。 vimscriptファイルからインラインドキュメントを解析し(shoccoがシェルスクリプトで機能する方法に似ています)、vimscriptに関連するヘルプドキュメントを生成します。 アイデアに関する提案やアドバイス(...、より良いアイデアは...)

4
各マッチをインクリメントカウンターに置き換える方法は?
特定のパターンが出現するたびに検索を開始し1、一致ごとに1ずつ増加する10進数に置き換えます。 カウンターをインクリメントするのではなく、固定された量だけ各マッチを変更することであることが判明した、同じような言葉の質問を見つけることができます。他の同様の質問は、インクリメントカウンターではなく、行番号の挿入に関するものです。 例、前: #1 #1.25 #1.5 #2 後: #1 #2 #3 #4 私の実際のデータには、番号を付け直したいものの周りにたくさんのテキストがあります。
14 substitute 

1
Vimプラグインとは何ですか?
Vimの機能を拡張して、新しい機能を追加したり、既存の機能を変更したりして、編集エクスペリエンスを強化できることを理解しています。 私自身はかなり長い間Vimユーザーでしたが、今では未知の領域にいます:正確にはVimプラグインとは何ですか?プラグインを作成するための前提条件は何ですか。近い将来、自分のプラグインを作成できるようになりますか?

2
選択したテキストブロックのテキストを部分的に置き換える方法は?
私の問題にぴったりのタイトルを見つけるのは簡単ではありません。 私はテキストブロックの前に挿入することを知っています: Ctrl- v 線 種のテキストを選択しI ます ESC これを実行したいのですが、ブロック選択でパーツを交換することもできます。現在2つの操作を行っています Ctrl- v ブロックを選択 して最初に戻りますx 上記のシーケンスが続きます。 ブロックを1回だけ(Ctrl- v)選択してこれら2つの操作を組み合わせる方法はありますか? ここに小さな例があります: 次のブロックを変換したい 1 text 2 text 3 text 4 text 5 text に new text new text new text new text new text 「操作」は1つだけです。

2
「設定」コマンドはアクティブなバッファのみに影響しますか?
vimには2つのバッファがあります。 :ls 1 %a ".vimrc" line 1 2 #h "script.sh" line 1 Press ENTER or type command to continue 上記のように、私は最初のバッファにいます。ここで:set softtabstop=16コマンドを実行すると、両方のバッファに影響を与えることが予想されます。ただし、これは当てはまりません。sts最初のバッファーの値は実際に変更され、Tabキーは4つのタブ文字(ts=4)を挿入しますが、2番目のバッファーのsts値はそのまま4です。 :ls 1 #h + ".vimrc" line 1 2 %a + "script.sh" line 1 softtabstop=4 Press ENTER or type command to continue どうしてこんなことに?それsetはすべてのバッファにsetlocal影響し、アクティブなバッファにのみ影響を与えると思いました。
14 set  setlocal 


4
4行ごとに反転する方法は?
まず、これが私の最初の投稿であるため、VIMが優れたツールであり、フォーラムが質問への回答を見つけるのに非常に役立ち、多くの役立つ人々が提供していることを伝えたいと思います貴重な支援。私はまだVIMが初めてなので、ここで学んだことのほとんどすべてがここから来ています。 私の質問は、ファイル内のすべての行を反転する方法を知っています(他の方法の中でも:g / ^ / m0)が、ファイル内の4行ごとに反転する方法がありますので、 line1 line2 line3 line4 line5 line6 line7 line8 ... になる line4 line3 line2 line1 line8 line7 line6 line5 ... このようなファイルには、常に4行の正確な倍数が存在すると想定できます。
13 vimscript 



4
sコマンドで\ rと\ nが異なることを意味する理由は何ですか?
私たちは皆、検索時\nは改行であり、\r復帰(^M)であることを知っていますが、置換するとき\rは改行\nで、nullバイト(^@)です。 この非対称性の起源は何ですか?この振る舞いは...控えめに言っても独特です(そして最初に間違えたときはかなり非生産的です)奇妙な歴史的理由があると思います。 (偶然にも、この動作を「修正」してより直感的なものにする方法はありますか?)

2
syntasticを介して報告される一般的なリンティングエラーを自動修正する方法は?
コードでlintエラーを報告するために、vimでsyntasticプラグインを使用し始めました。javascript また、eslintをsyntasticに統合し、.eslintrcファイルに記述されたルールに従ってエラーが存在する場合の警告を表示します。 キーストロークでセミコロンの欠落、スペースの欠落など、いくつかの一般的なエラーを修正する方法はありますか? 編集: eslintにはオプションがあることがわかりました --fix Automatically fix problems このような場合に使用できます。eslintにこれらの問題を解決させるには、このコマンドを実行する必要があります eslint --fix -c myconfig file.js 私はそれがどのようにvimと統合できるのか知りたいですか?

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