導入
Vim はテキスト エディターであり、Vi エディターの改良版です。 CLI (コマンド ライン インターフェイス) および GUI (グラフィカル ユーザー インターフェイス) アプリケーションとして使用するように設計されています。
これは、Bram Moolenaar によって設計および開発され、1991 年 11 月に最初にリリースされました。VIM は、オープンソースの無料の画面ベースのテキスト エディターです。 Amiga 向けに公開されて以来、クロスプラットフォームの拡張により、他のいくつかのシステムでも利用できるようになりました。 2018 年に Linux Journal の読者によって最も有名なエディターに選ばれました。開発者調査、つまり Stack Overflow では、2015 年には 3 番目に有名なテキスト エディター、2019 年には 5 番目に有名な開発環境であることがわかりました。
このチュートリアルでは、Ubuntu オペレーティング システムに VIM エディターをインストールします。インストールするには、Ubuntu のバージョンが更新され、ターミナルが機能していることを確認してください。
前提条件
- Ubuntu
- ターミナル
VIM の簡単な歴史
VIM の前身である Stevie は、1987 年に Atari ST 用に Tim Thompson によって作成され、G.R. によってさらに改良されました。ウォルターとトニー・アンドリュース。 Bram Moolenaar は、1988 年に Amiga システム用の Stevie の実装に基づいて VIM の運用を開始し、1991 年に最初の公開リリースを行いました。
タイトル 'なぜ' 短かった 「ヴィ・イミテーション」 最初のリリース中には変更されましたが、 「私たちは改善しました」 1993年に。
VIMのライセンス
VIM は Vim ライセンスに基づいて公開されています。これには、アプリケーションを好むユーザーに子供たちへの寄付を検討するよう促すチャリティーウェア条項がいくつか含まれています。 Vim ライセンスは、GNU GPL 2.0 以降のバージョンで変更されたコピーの配布を許可する独自の条項により、GNU 一般公衆利用許諾書と適合します。
VIMのインターフェース
VIM のインターフェイスはアイコンやメニューではなく、VI などのテキスト ユーザー インターフェイス内で提供されるコマンドに基づいています。 gVim の GUI モードには、一般的に使用されるコマンドのツールバーとメニューが含まれています。ただし、完全な機能は依然としてコマンド ライン モードで表されます。 Vi では、タイピストがホーム列に指を置くことを許可する傾向があり、これはタッチ タイピストにとっては利点となる可能性があります。
VIM エディターには、vimtutor と呼ばれる初心者向けの組み込みチュートリアルが含まれており、基本的に Vim と一緒にインストールされます。ただし、これは別の実行可能ファイルであり、シェル コマンドを使用して実行できます。 Vim のユーザー マニュアルには Vim の機能が詳しく説明されており、オンラインで見つけることも、Vim 内から実行することもできます。
の名前
また、Vim にはヘルプ機能が組み込まれており、ユーザーは機能やコマンドについて質問したり操作したりすることができます。
レジスター
Vim には、レジスタと呼ばれる固有のメモリ エントリがいくつか用意されています (プロセッサまたはハードウェア レジスタと混同しないでください)。テキストのコピー、貼り付け、削除、または切り取りを行う場合、ユーザーは操作したテキストをレジスター内に保存することを選択できます。数字と文字に関連する 36 個の汎用レジスタと、一意の値 (最後のコマンド、現在のファイル名など) を含むか、一意の目的を果たすさまざまな一意のレジスタが利用可能です。
モード
Vim は、vi のような 2 つ以上の編集モードをサポートしています。タイプ文字は、モードに応じて、コマンド シーケンスとして指定されるか、テキストとして入力されます。 Vim では、12 の編集モード、6 つのバリアント、および 6 つの共通モードが利用可能です。
VIMのカスタマイズ
Vim は拡張性とカスタマイズ性に優れているため、テキスト編集プラットフォームに対するより大きな柔軟性と制御を求める顧客にとって興味深いツールとなっています。テキスト入力は、キーボードの効率を高めるために開発されたさまざまな機能によって提供されます。お客様は次を使用してハード コマンドを実行できます。 「キーマッピング」 、拡張およびカスタマイズできます。の '録音' この側面により、キーストローク シーケンスをアクティブ化し、ユーザー定義または内部のマッピングと関数を呼び出すためのマクロの確立が可能になります。
略語は、キー マッピングやマクロと同様に、短いテキスト文字列を長いテキスト文字列に拡張することができ、間違いを修正するためにも使用できます。また、Vim は、テキスト編集のより簡単なソリューションを求める顧客のために「簡単」モードを提供します。
Javaでのintからstringへの変換
Vim の新機能を強化して組み込むプラグインがいくつか利用可能です。通常、これらのプラグインは内部スクリプト言語 Vim である vimscript (VimL とも呼ばれます) で記述されますが、他の言語で指定することもできます。
多くのプロジェクトは、複雑なカスタマイズとスクリプトをグループ化し、Vim を特定のタスク用のリソースに変えるか、その性質にさらに大きな特徴を組み込むことに焦点を当てていました。例としては、Unix 系システム ユーザーにとって快適なアウトライナーを提供する VimOutliner や、Vim をクリックして入力するエディターのように動作できる Cream などがあります。
Vim の改良点と機能
Vim には vi との互換モードが含まれていますが、このモードが使用されていない場合、Vim には vi よりもいくつかの改善が含まれています。しかし、Vim は、POSIX および Single Unix 仕様で規定されている vi と同様に、互換モードで完全に適しているわけではありません。 Vim の開発者は、Vim は Vi に非常に適していると述べました。
- Vim のいくつかの機能強化には、補完機能、ファイルのマージと比較 (vimdiff と呼ばれる)、強化された正規表現、包括的に開発されたヘルプ システム、プラグイン サポートを含むスクリプト言語、グラフィカル ユーザー インターフェイス (gvim と呼ばれる)、マウス インタラクション (およびなし) が含まれます。 GUI を使用)、限られた開発環境のような側面、折りたたみ、スペル チェック、tar、zip、bzip2、gzip ファイルおよびネットワーク プロトコル経由の形式でのアーカイブおよび圧縮ファイルの編集(HTTP、FTP、SSH など)、タブ化および分割ウィンドウ、セッション状態の保存、Unicode と多言語のサポート、カーソルと検索位置の履歴、構文の強調表示、セッション間コマンド、ビジュアル モード、分岐、および編集セッションを継続できるマルチレベルのやり直し/元に戻す履歴。
- Vim は実行中にユーザーの変更を '.swp' 拡張子を使用してスワップ ファイルに保存します。
- このファイルは、障害後の復元に利用できます。ユーザーがファイルを開いて既存のファイルと交換しようとすると、Vim は警告を発します。ユーザーが続行すると、Vim は '.swo' 拡張子を使用したスワップ ファイルを利用します。
- 機能は無効化できます。
Vim スクリプト
VimL または Vimscript とも呼ばれます。 Vim スクリプトは Vim に統合されたスクリプト言語です。 Vim の初期バージョンでは、関数定義と制御フローのためのコマンドが追加されました。これは、実際の vi エディターの元のエディター言語です。バージョン 7 以降、Vim スクリプトは、辞書やリストなど、より開発されたデータ型と、より簡単なオブジェクト指向プログラミング モードをサポートしています。 filter() や map() などの多くの組み込み関数では、共通の関数プログラミング形式が可能であり、Vim スクリプトには 8.0 バージョン以降ラムダが含まれています。ほとんどの場合、Vim スクリプトは命令型プログラミングの形式で指定されます。
Vim マクロには通常モードのコマンド シーケンスを含めることができますが、より難しいタスクのために Vim スクリプトで指定された ex-function やコマンドを要求することもできます。 Vim 機能のほとんどの拡張機能 (プラグインまたはスクリプトと呼ばれる) は Vim スクリプトで指定されますが、プラグインでは Racket、Tcl、Ruby、Lua、Python、Perl などの他の言語を使用することもできます。これらのプラグインは手動でインストールすることも、Vim-Plug、Pathogen、Vundle などのプラグイン マネージャーによってインストールすることもできます。
Vim スクリプトのファイルは、他のコードと同様にプレーン テキストとして保存され、通常は .vim がファイル名の拡張子になります。重要な例外の 1 つは、Vim の構成ファイル、つまり .vimrc です。
Vim の可用性
vi エディターは元々 Unix OS で利用可能でしたが、Vim は Atari MiNT、AmigaOS、DOS、BeOS、Windows NT 3.1 以降の Windows、MorphOS、OS/390、OS/2、OpenVMS、 RISC OS、QNX、BSD、クラシック Mac OS、および Linux。 Vim は Apple macOS にも移植されています。 Vim に依存しないポートは iOS と Android で利用できます。
ヴィムフォーク
Neovim は、Vim の保守性と拡張性を開発することを目的とした Vim フォークです。このフォークのいくつかの機能が利用可能です。これには、組み込みの言語サーバー プロトコルのサポート、非同期 I/O サポート、luaJIT 言語インタープリターによる Lua スクリプトのサポートが含まれます。これはオープンソース ソフトウェア プロジェクトであり、そのソース コードは GitHub にあります。
マルチスレッドを支援する Vim パッチが却下された後、Neovim プロジェクトは 2014 年に始まりました。2014 年 3 月には十分な資金が集まり、少なくとも 1 名のフルタイム開発者をサポートしました。多くのフロントエンドは、Neovim の機能を使用する開発をサポートしています。
Neovim は、2021 年 7 月 2 日の Neovim 0.5 バージョンで、組み込みの言語サーバー プロトコルのサポートと、VimL ではなく Lua 言語でプライマリ構成ファイルを作成できる機能など、Lua の完全なサポートを実現しました。
VIMのインストール
VIM エディターのインストールは非常に簡単で、インストールに必要なコマンドは 1 つだけです。 VIM エディタをインストールするには、次のコマンドを使用します。
$ sudo apt-get install vim
タイプ 'そして' そして押します 入力 , 必要なパッケージとアプリケーションのインストールが開始されます。
その後、ターミナルまたはアプリケーション マネージャーから vim を実行できるようになります。
以下のように、「VIM」と入力すると、システム内でそれを見つけることができます。
アイコンをクリックすると、VIM エディタのターミナルが開きます。以下のような感じです。
リストソートJava
さて、VIM エディターをシステムに正常にインストールしました。これを使用して、あらゆるプログラミング言語でコーディングできるようになりました。