著者:JackTian
マイクロチャネル公開番号:ITのJiege旅行(ID:Jake_Internet)
Vimはプログラマーにとって見知らぬ人ではありません。Vimをより効率的に学ぶ方法はありますか?がなければならない。それで、今日私はあなたにオープンソースプロジェクトを紹介します:PacVim
PacVimとは何ですか?
PacVimは、ゲームをプレイしてVimコマンドを学習できるゲームです。赤い障害物を避けながら、pacmanの緑色のカーソルを動かすだけで、ゲームボード上の各単語を強調表示できます。PacVimは、Github開発者であるJamal Moonから提供されています。これは、VIMの学習を支援し、学習を容易にするために、このゲームを開発しました。
開発者の
JamalMoon PacVimによって確立された目的
は、VIMがコードを編集するための優れたツールであるということですが、Jamal Moonを含む多くの人々は困難な学習に苦労しており、同時にVIMコマンドを理解するための興味深い方法を見つけていません。深さなので、ゲームPacVimが誕生しました。古典的なパックマンに触発されて、それは誰にでもVIMコマンドで多くの練習を与えると同時に、誰にでも多くの楽しみをもたらします。
PacVim Mac OSXをダウンロードしてインストールします
PacVimはHomeBrewパッケージにコンパイルされています。Macユーザーの場合は、次のコマンドを実行してインストールできます。
$ brew install pacvim
Linux
GNU ncurses(グラフィックライブラリ)をダウンロード、コンパイル、インストールします
GNU ncursesは、APIを提供するプログラミングライブラリであり、プログラマーが端末に依存しない方法でテキストユーザーインターフェイスを記述できるようにします。
Ubuntuを例にとると、ターミナルで次のコマンドを実行できます。
$ sudo apt-get install libncurses5-dev
または、ソースパッケージを介して解凍、コンパイル、インストールします;(ソースパッケージバージョンのダウンロードリンク:http://ftp.gnu.org/pub/gnu/ncurses/)
$ wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.7.tar.gz
$ tar xzf ncurses-5.7.tar.gz
$ cd ncurses-5.7
$ ./configure --prefix=/opt/ncurses
$ make && make install
$ ls -la /opt/ncurses
または、gitを介してインストールします。
# git clone https://github.com/jmoon018/PacVim.git
正克隆到 'PacVim'...
remote: Enumerating objects: 627, done.
remote: Total 627 (delta 0), reused 0 (delta 0), pack-reused 627
接收对象中: 100% (627/627), 3.20 MiB | 22.00 KiB/s, 完成.
处理 delta 中: 100% (341/341), 完成.
# cd PacVim
# ls
COPYING COPYING.LESSER Dockerfile gifs Makefile maps README.md src
# make install
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread -c -o src/avatar.o src/avatar.cpp
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread -c -o src/ghost1.o src/ghost1.cpp
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread -c -o src/helperFns.o src/helperFns.cpp
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread -c -o src/game.o src/game.cpp
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread -c -o src/globals.o src/globals.cpp
g++ -std=c++11 -DMAPS_LOCATION='"/usr/local/share/pacvim-maps"' -pthread src/avatar.o src/ghost1.o src/helperFns.o src/game.o src/globals.o -o pacvim -lncurses -lpthread
install -Dm755 pacvim /usr/local/bin/pacvim
install -d /usr/local/share/pacvim-maps
install -t /usr/local/share/pacvim-maps maps/map0.txt maps/map1.txt maps/map5.txt maps/map7.txt maps/map2.txt maps/map9.txt maps/map6.txt maps/map3.txt maps/map4.txt maps/map8.txt
Dockerを使用する
Dockerイメージを使用して実行し、次のコードを直接実行して、PacVimゲームを開始することもできます。
# docker run -it freedomben/pacvim [LEVEL_NUMBER] [MODE]
LEVEL_NUMBERの範囲は0〜9で、数値が大きいほど難易度が高くなります。
MODEはNまたはHで、Nは通常(通常の難易度)を意味し、Hはハード(難易度)を意味します。
PacVimをプレイする方法は?
Ubuntu環境でPacVimをインストールした場合は、次のコマンドを直接実行してゲームを開始できます。
$ pacvim 8 n
PacVimの目標はPacManの目標と似ています。ターミナルでPacVimゲームを開始し、赤いGの障害物を避けながら、画面上のすべてのキャラクターを実行する必要があります。
PacVimには2つの特別な障害があります。
1.壁(黄色)に入ることができません。vimを使用して、壁をスキップするコマンドを指定する必要があります。
2.チルダのキャラクター(シアン〜)を踏むと負けます!
PacVimマップファイル
PacVimのマップファイルは、/ usr / local / share / pacvim-mapsフォルダー内のテキストファイルからロードされます。インストールが完了したら、mapsフォルダーmake MAPDIR = mapsを使用して呼び出すことができます。
各テキストファイルの名前はmap#.txtの形式で、#は0、1、9、14などの数字を表します。それ以外の場合は、GLOBALS.CPPのNUM_OF_LEVELSを必ず変更してください。ロードできません。最大のマップ番号と同じです。
マップテキストファイルでは、壁は&記号#で表され、チルダは〜で表されます。マップの境界は制限して閉じる必要があります。
PacVimゲーム図
勝利条件:vimコマンドを使用して、カーソルを文字の上に移動し、それらを強調表示します。すべての文字が表示されたら、勝利して次のレベルに入ります。
失敗条件:障害物(赤いG)またはチルダキャラクターに触れると失敗します。あなたのライフが0未満の場合、ゲーム全体が失われます。
PacVimプロジェクトのアドレス
このプロジェクトに興味があり、このプロジェクトを通じてVimの知識を学び、統合したい場合は、それを体験することができます。
Githubアドレス:https://github.com/jmoon018/PacVim