GitHub Markstar 2.5K 이상! 게임을하면서 VIM을 배우도록 가르쳐주세요!

GitHub Markstar 2.5K 이상!  게임을하면서 VIM을 배우도록 가르쳐주세요!

작성자 : JackTian
마이크로 채널 공개 번호 : IT의 Jiege 여행 (ID : Jake_Internet)

Vim은 프로그래머에게 낯선 사람이 아닙니다. Vim을보다 효율적으로 배울 수있는 방법이 있습니까? 있어야합니다. 그래서 오늘은 오픈 소스 프로젝트 인 PacVim을 소개하겠습니다.

PacVim은 무엇입니까?
PacVim은 게임을 통해 Vim 명령을 배울 수있는 게임입니다. 팩맨 녹색 커서를 움직여 게임 보드의 각 단어를 강조 표시하고 빨간색 장애물을 피하면됩니다. PacVim은 Github 개발자 인 Jamal Moon에서 나 자신이 VIM을 배우고 더 쉽게 학습 할 수 있도록 돕기 위해이 게임을 개발했습니다.

GitHub Markstar 2.5K 이상!  게임을하면서 VIM을 배우도록 가르쳐주세요!

개발자 Jamal Moon
PacVim이 설정 한 목적은
VIM이 코드 편집을위한 좋은 도구이지만 Jamal Moon을 비롯한 많은 사람들이 어려운 학습에 어려움을 겪고 있으며 동시에 VIM 명령을 이해하는 흥미로운 방법을 찾지 못했습니다. 그래서 PacVim 게임이 탄생했습니다. 고전적인 PacMan에서 영감을 받아 누구나 VIM 명령으로 많은 연습을 할 수 있으며 동시에 모든 사람에게 많은 즐거움을 선사합니다.

PacVim
Mac OS X 다운로드 및 설치

PacVim은 HomeBrew 패키지로 컴파일되었으며, Mac 사용자 인 경우 다음 명령을 실행하여 설치할 수 있습니다.


$ brew install pacvim

리눅스

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에는 두 가지 특별한 장애물이 있습니다.

1. 벽 (노란색)에 들어갈 수 없습니다. vim을 사용하여 건너 뛰는 명령을 지정해야합니다.

2. 물결표 문자 (청록색 ~)를 밟으면 패배!
GitHub Markstar 2.5K 이상!  게임을하면서 VIM을 배우도록 가르쳐주세요!

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보다 작 으면, 당신은 전체 게임에서지게됩니다.

GitHub Markstar 2.5K 이상!  게임을하면서 VIM을 배우도록 가르쳐주세요!

PacVim 프로젝트 주소이 프로젝트

에 관심이 있고이 프로젝트를 통해 Vim 지식을 배우고 통합하고 싶다면 가서 경험할 수 있습니다.

Github 주소 : https://github.com/jmoon018/PacVim

추천

출처blog.51cto.com/15067236/2605041