自動補完 - みる会図書館


検索対象: 実践Vim : 思考のスピードで編集しよう!
185件見つかりました。

1. 実践Vim : 思考のスピードで編集しよう!

TIPIOI ・ ctags とは・ TlP102 . ctags と連携するように Vim を構成する・ 目次く ・・ 319 ・・ 323 TlP103 . Vim のタグナビゲーションコマンドを使ってキーワード定義に移動する ・・ 326 第 17 章 quickfix リストを使って、コードのコンパイルとエラー発 生箇所への移動を行う TIP107 : 外部コンパイラのカスタマイス・ TIPI 06 : 以前の quickfix リストから結果を呼び戻す・ 羽 P105 : quickf ⅸリストをブラウズする・ 羽 P104 : Vim を抜けすにコードをコンパイル 331 ・・ 331 ・・ 335 ・・ 338 ・・ 339 第 18 章 grep/vimgrep などを使ってプロジェクト全体を検索する TIPI 08 : Vim を抜けすに g 「 ep を呼び出す・ TlP109 : g 「 ep プログラムのカスタマイズ・ 羽 PI 10 : Vim の内部検索エンジンを使って g 「 ep する 第 19 章ダイヤル X を廻せ ! 自動補完だ TP112 . 自動補完のポップアップメニューを操作する・ 羽 PI 1 1 . Vim のキーワード自動補完機能とは TIPI 17 . コンテキストにあわせて自動補完を行う・ TP116 : ファイル名の自動補完・ TP115 . 行を丸ごと自動補完 辞書を使って単語を自動補完・ TIPI 13 . キーワードの定義元を把握する TIP 1 1 4 第 20 章 Vim のスペルチェッカを使ってタイプミスを発見、修正する TP118 : 作業結果にスペルチェックをかけてみよう TIPI 19 : 別の辞書を使用する・ TlP120 : スペルファイルに単語を追加する・ TP121 : スペルミスを挿入モードで修正する 第 21 章それからどうする 付録 A 自分の好みに合わせて Vim をカスタマイスする 訳者あとがき・ 索引 345 ・・ 345 ・・ 347 ・・ 351 353 9 ・・ 383 ・・ 382 377 375 ・・ 372 ・・ 371 ・・ 369 ・・ 367 367 ・・ 365 ・・ 363 ・・ 362 ・・ 361 ・・ 358 ・・ 356 ・・ 353

2. 実践Vim : 思考のスピードで編集しよう!

第 19 章ダイヤル X を廻せ ! 自動補完た T 旧 1 12 : 自動補完のポップアップメニューを操作する 自動補完コマンドをフルに活用するには、ポップアップメニューを操作する 方法を学ばなければならない。選択肢を絞り込んで要素を選択するか、必要 なものが含まれていなければ、リストを消去するかだ。 自動補完が起動されると、単語リストの要素を含んだポップアップメニューが表示 される。ポップアップメニューは表 1 9 ー 2 に示すコマンドを使って操作できる。 表 19 ー 2 ポップアップメニューを操作するコマンド キーストローク fDo 如ー ( およひ醪 ) C-I char 動作 単語リストから次のマッチを使う (nextmatch) 単語リストから前のマッチを使う (previousmatch) 単語リストから次のマッチを選択する 単語リストから前のマッチを選択する 現在選択されているマッチを入力する (yes) もともと入力していたテキストに戻る (exit from autocompletion) 現在のマッチから 1 文字削除する 現在のマッチから 1 文字を追加する 補完を中止して { cha て } を入力する 詳細については Vim のドキュメントを参照のこと ( → :h popupmenu-completion ①◎ ) 。 自動補完にどのバリエーションが使われているかには関係なく、自動補完のポップ アップニューが表示されているときには、き当とミは常にメニューの次もしくは 前の項目に移動する。これに対して、挿入モードで使った場合、媛と起は汎用 のキーワード自動補完を起動する。 キーとのキーはともに、ポップアップメニューから次の要素を選択する。 一方、をキーと最キーは前の要素を選択する。当を 0 当もしくは奩 / き朝 : を使うときで、その機構は微妙に異なっている。 356

3. 実践Vim : 思考のスピードで編集しよう!

第 19 章ダイヤル X を廻せー ! ー webapp/ config. ru public/ index . html js/ application ・ JS 自動補完だ 現在は index. html ファイルを編集中だとしよう * 1 。 く ! DOCTYPE html> く html> く head> く tit1e>PracticaI Vim ー the app く /title> type="text/javascript"> く /script> く script src= く /head> く body> く /body> く /html> src="" 属性が application. js ファイルを参照するようにしたい。でも、 名の自動補完を使おうという場合には、ちょっとやっかいなことがある物 → : pwd ← webapp ファイル こでファイル名の自動補完を起動すると、 webapp ディレクトリに対して相対的な パスが補完されることになる。つまり、「 src="public/js/application ・ js" 」のよう になる。でも、実際には「 src="js/application ・ js" 」のように参照をしてほしいの だ。ファイル名の自動補完を使いたければ、その前に public ディレクトリに移動す る必要がある。 → :cd public これで、ファイル名の自動補完を起動すれば、 webapp/public ディレクトリに対し て相対的に機能するようになる。 * 1 . * 2. 364 訳注 : つまり、作業ディレクトリは webapp 、編集中のファイルは webapp/public/index. html となっていま す。 訳注 . 環境によってはフルハスが表示されるかもしれません。

4. 実践Vim : 思考のスピードで編集しよう!

第 8 章モーションによるファイル内の移動 は、いまと比べて、マークは非常に重要なものだった。 vi でマークが必要とされた仕 事の多くは、 Vim ではビジュアルモードで行える。 ただし、 Vim ではマークはもうゴミかというとそうでもない。まだまだ使い道はあ る。とくに、 Vim が自動的に設定してくれるマークは本当に便利だ。こうしたマーク には表 8 ー 3 に示すものがある。 表 8 ー 3 自動マーク キーストロークバッフアの内容 現在のファイルで直前に行われたジャンプ以前にいた場所 直前に変更された場所 直前に挿入があった場所 直前に変更もしくはヤンクが行われた先頭 直前に変更もしくはヤンクが行われた末尾 直前のビジュアルな選択範囲の先頭 直前のビジュアルな選択範囲の末尾 “マークは、ジャンプリスト ( 179 ページの TIP55 を参照 ) を補完するものだ。 . は変更リストを補完するものだ。これについ の使い方は次の TIP で見ていこう。 ては TIP56 ( 181 ページ ) で取り上げる。 直前のビジュアルな選択範囲の先頭と末尾はどちらも、自動的にマークが記録され ることから、ビジュアルモードは、そこで使われているマーク機能への一風変わった インターフェイスであるとさえ考えられる。 T 旧 54 : カッコから対となるカッコにジャンプ 開きカッコとそれに対応する閉じカッコとの間でカーソルを移動するための モーションが Vim には用意されている。 matchit . vim プラグインを有効にす ると、この挙動を拡張して、 XML タグの対、さらには何かのプログラミング 言語のキーワードの対でも機能するようにできる。 第コマンドを使うと、開きカッコとそれに対応する閉じカッコの間でジャンプを行え る ( → : h % ◎◎ ) 。例に示すように、これは ( ) 、 { } 、ロで使える。 174

5. 実践Vim : 思考のスピードで編集しよう!

索引 カットコマンド・ 空の検索フィールド・ 簡単な計算・・ ンヨン・ グローノヾ丿レ . ・・ 197 ・・ 265 ・・ 60 ・・ 353 ・・ 322 ・・ 322 行モーションコマンドの再マッピング き キーワード自動補完機能・ キーワードとメタデータ・ キーワードのアドレス・ 行を移動・ 行をコピー 行を丸ごと自動補完・ く クリップポード・ 繰り返し可能なモー け グローノヾルマーク . グローノヾルコマンド 検索・ 検索コマンド・ 検索オフセット・ ・・ 156 ・・ 92 ・・ 91 ・・ 362 ・・ 216 キーワードの自動補完のカスタマイズ キーワードの自動補完の起動・ ・・ 361 ・・ 355 キーワードの自動補完のポップアップメ ・・ 356 ・・ 358 ・・ 161 ・・ 249 , 293 キーワードの定義元を把握する・ キャプチャ・ 逆方向の文字検索コマンド・ 境界で分けられるテキストオプジェクト ・・ 34 ・・ 266 ・・ 259 , 322 ・ 191 , 200 , 207 ・・ 282 ・・ 305 ・・ 186 行指向のビジュアルモード . ・・ 171 ・・ 67 検索パターンが大文字 / 小文字を区別す るかを制御・ ・・ 241 行指向のビジュアルモードコマンドを繰 検索パターンをプログラム的に設定 り返す・・ ・・ 70 行単位の置換をファイル全体に対して繰 行単位のヤンクまたは削除・ 行単位のヤンク・ 行単位のテキスト領域を貼り付け・・・ 206 り返す・・ ・・ 290 ・・ 193 ・・ 204 ・・ 20 ・・ 192 ・・ 193 ・・ 86 ・・ 378 .. 29 検索フィールド・ 検索フィールドの終端文字・・ 検索プロンプト・ 検索モーションで操作する・ 検索履歴・ 検索履歴と :vimgrep コマンド・ 強調表示・ 行の入れ替え・ 行のコピー 行範囲・ 行番号表示・ 構成を vimrc ファイルに保存する・・・ 379 構文的幻想・ 後方検索・ コピー ・・ 288 ・・ 252 ・・ 258 ・・ 260 ・・ 165 ・・ 261 , 271 ・・ 195 ・・ 260 ・・ 248 ・・ 352 行番号をアドレスとして使用する・・・ 85 行末・ 394

6. 実践Vim : 思考のスピードで編集しよう!

キーストローク js/ap TIPI 17 : コンテキストにあわせて自動補完を行うく く script src="js/application. js / > く script src="js/a / > く script src= バッフアの内容 ファイルバスを挿入したら、もともとの作業ディレクトリに戻るには、以下を実行 すればよい。 → : cd シェルと同様に、「 cd ー」は直前の作業ディレクトリに移動する ( →山 :cd-OO)0 CSS ファイルのコンテキストで、これがどのように機能するかを見てみよう。 ソル位置のコンテキストに合わせた候補のリストが提供される。ここでは、 オムニ補完はインテリセンスに対する Vim の回答だ。オムニ補完では、カー T 旧 1 17 : コンテキストにあわせて自動補完を行う 要はなくなるのかもしれない。 クトリを変更したが、もしかしたら将来のバージョンの Vim ではそんなことをする必 い」とある。このサンプルの Web アプリケーションでは、この機能を使うのにディレ ファイル名自動補完のドキュメントでは「 path オプションは ( まだ ) 使われていな 1 hl { ( kq 「 ound - ( 010 「 : ー - オムニ補発 ( ・ 0 ^ N 叩 ) 始めに戻る round'repea ・ backqround-position: backqround- imaqe: backqround- ( 010 「 : backqround-attachment: backq 「 oun 1 hl { bal 図 19 ー 1 t ranspa rent rqb( CSS のプロバティとその値をオムニ補完 365

7. 実践Vim : 思考のスピードで編集しよう!

第 19 章ダイヤル x を廻せ ! てがリストから除外される。 したいものを選択できる。 自動補完た この結果の単語リストがメニューとなり、そこから入力 以下に 2 つの画面ショットをまとめたものを示す。 1 つは Vim のキーワード自動補 完を呼び出す前、もう 1 つは呼び出したあとだ。 She sells sea 5he115 by the 5 She sells sea shells by the sea sel 、 hS れ 0 はを一 - ー 5 e a - 2 番目の談当 ( 全該当 3 個中 ) 354 自動補完と大文字 / 小文字の区別 うになる。 ⑩◎ ) 。これにより小文字の「 s 」で始まる「 she 」が単語リストに追加されるよ この挙動は「 infercase 」オプションを有効にすると避けられる ( → :h , infercase' たないと考えられるかもしれない。 れるだろう。小文字の「 s 」をすでに入力しているのだから、これはあまり役に立 プションが有効なときには、「 She 」が単語リストに大文字の「 s 」始まりで表示さ ない。これは、大文字の「 s 」で始まっているからだ。ただし、「 ignorecase 」オ 上のサンプルの「 She sells sea shells 」では、「 She 」は単語リストには含まれ これには副作用がある。自動補完もまた大文字 / 小文字を区別しなくなるのだ。 を同じ文字として扱う ( これについては 241 ページの羽 P72 で見た ) 。しかし、 「 ignorecase 」オプションが有効な場合、 Vim の検索コマンドは大文字と小文字 の「自動補完と大文字 / 小文字の区別」を参照のこと。 の 3 つの候補が表示されている。リストに「 She 」がないのはなせ ? と思う方は以下 こでは、単語リストのフィルタリングに「 s 」が使われ、「 sells 」、「 sea 」、「曲 ells 」

8. 実践Vim : 思考のスピードで編集しよう!

コンパイラブラグイン・ さ 作業ディレクトリ・ コピー & ペースト・ コマンドラインウインドウ・ コマンドラインでの操作・ コマンドラインモード・ コマンドライン履歴・ コマンド履歴・ コメント化 / コメント化解除・ ード・ ・・ 191 ・ 102 , 273 ・・ 19 ・・ 101 ・・ 286 ・・ 52 コンテキストにあわせて自動補完を行う 消去専用レジスタ・ ジョブコントロール・ 数値の形式・・ スーパーユーザー スクラブルゲーム・ スクリプト・ スクリプト式・ すべての選択を消去する・ す 索引く ・・ 195 , 199 ・・ 163 ・・ 145 ・・ 48 ・ 106 ・・ 365 ・・ 342 ・・ 196 , 197 ・・ 195 ・・ 134 すべてのファイルに変更を保存・ スペルチェッカ・ スペルファイル . スペルミス・ スペルファイルに単語を追加・ ・・ 361 , 367 ・・ 60 ・・ 288 ・・ 357 ・・ 229 ・・ 370 ・・ 371 ・・ 367 削除・ 削除コマンド・ 削除 / ャンク マンド・ 参照渡し・ ブット操作を行う Ex コ スペルミスを挿入モードで修正する し 辞書・・ シェルでプログラムを実行・ ・・ 196 ・・ 288 ・・ 105 ・・ 297 , 361 せ 正規表現・ 正規表現工ンジン・ ・・ 372 ・・ 241 , 252 ・・ 241 辞書を使ったキーワードの自動補完 ・・ 179 ・・ 179 ・ 173 ・・ 55 ・・ 361 ジャンプリスト・ ジャンプはファイル間を移動する・・・ 179 ジャンプ .. 自動マーク 自動補完・ 50 , 97 , 161 実行して、繰り返して、元に戻す・・・・ 33 , システムレベルのクリップポード . ・・ 207 システムクリップポードレジスタ・・・ 2 開 設定をオンザフライで変更する・ ・・ 377 選択範囲に対してノーマルモードのコマ 前方検索・・ 選択モード・ 選択範囲レジスタ・ 選択範囲の始点と終点をトグルする・ .. 69 ンドを実行・ ・・ 93 ・・ 200 ・・ 67 ・・ 260 専門用語を格納するスペルファイルを作 成・ 挿入ノ そ ーマルモ ・・ 371 ・・ 55 , 57 395

9. 実践Vim : 思考のスピードで編集しよう!

第 19 章ダイヤル X を廻せ ! 自動補完だ 長くて綴りを間違えやすい単語を補完したいときには、辞書による自動補完が一番 便利かもしれない。以下に例を示そう。 1 The antidil antidisestablishmentärianisn tidisestablishdEntarianisn' 5 - 辞書補完 CKANAP) 始めに戻る スペル辞書を使う自動補完にはもう 1 つの形式がある。 ページ ) で取り上げよう。 T 旧 1 15 : 行を丸ごと自動補完 これについては TIP121 ( 372 いま、手元には以下のような書きかけのコードがあるとしよう。 する ( → :h compl-whole-line ◎◎ ) 。 は行を丸こと補完することもできる。行単位の自動補完は sc ー x > く c ーで起動 ここまでのすべての例では、単語の補完について話をしてきた。しかし、 \/im 2 行目をコピーして、これをファイルの末尾に貼り付けたい。行単位の自動補完を . bottom { background-color : #ef66ef ; } . top { し土 6- ・ 66 市 0 卮 te g-colors. css 使って、これを行う方法を表 19 ー 3 に示す。 表 19 ー 3 2 行目をファイル末尾にコヒ。ペする キーストローク {start} 362 バッフアの内容 . top { background—color : . bottom . top { background—color : . bottom { #ef66ef; } #ef66ef ; }

10. 実践Vim : 思考のスピードで編集しよう!

第 19 章 ダイヤル X を廻せ ! 自動補完だ 自動補完は単語全体を入力する手間を省いてくれる。最初の数文字を入力すると、 Vim はそこに続く候補のリストを作成して、ユーザーが選択できるようにしてくれる。 これが使えるものになるかどうかは、候補のリストの扱いにどの程度習熟するかしだ いだ。 TIP112 ( 356 ページ ) では、自動補完メニューを使ううえでのテクニックをい くつか見てみよう。 次の TIPIII では、自動補完の基本について説明する。自動補完の候補のリストは、 現在の編集セッションでオープンされているファイル、インクルードされるファイル、 タグファイルのすべてをスキャンすることで作成される。この意味については TIPI 13 ( 358 ページ ) で説明しよう。また、候補のリストを絞り込む方法も説明する。 キーワードだけではなく、候補のリストを構築する方法はほかにもある。表 19 ー 1 ( 355 ページ ) に、代表的なものをまとめよう。これらについてそれぞれ、本章の対応 する TIP で取り上げる。 Vim の自動補完機能をフルに活用するには、 2 つのことを理解しておく必要がある。 関連する候補を呼び出す方法と、リストから適切な単語を選択する方法がそうだ。こ れらについて、以下の TIP で順に見ていこう。 T 旧 1 1 1 : Vim のキーワード自動補完機能とは キーワードの自動補完では、 Vim はユーザー入力途中の単語を推測しようと する。このおかげで、単語全体を手で入力する手間が省ける。 Vim の自動補完機能は挿入モードから起動される。起動されると、現在の編集セッ ションの個々のバッフアの内容から単語リストを構築し、途中まで入力されている単 語があるか、カーソルの左側にある文字を調べる。そうした単語があれば、単語リス トがフィルタリングされて、途中まで入力されている文字で始まっていないものすべ 353