Vim에서paiza의 준비를 잘 하고 차근차근 열심히 하겠습니다.
이 글의 독자 대상
점설치와 입문서로 기본적인 학습을 마쳤기 때문에paiza로 문제를 해결하고자 하는 사람
vim 연습도 겸하고, 어쨌든 최저 +α준비 작업을 하고 싶은 사람.
※ 이번엔 PHP로 작성됐으며, 다른 언어도 거의 동일합니다.
우선 실행 파일과 표준 입력용 파일을 준비합니다
Desktop으로 이동하여 paiza라는 디렉터리를 만듭니다.
※ 목록 이름은 마음에 드는 이름 k입니다.
※ Desktop을 사용하지 않고 Doocuments 산하로 제작해도 문제 없습니다.
$ cd ~/Desktop
$ mkdir paiza
※ cd는change directory를 통해 디렉터리를 이동하는 명령, mkdir는make directory를 통해 디렉터리를 만드는 명령paiza 디렉터리에서 실행 파일과 표준 입력 파일을 만듭니다.
$ cd paiza
$ touch main.php input.dat
※ 터치는 원래 서류 작성 명령이 아니었지만, 이번에는 설명을 생략합니다.자세한 사항이 궁금하신 분들은 참고Linux 명령 세트 터치해주세요.겸사겸사 말씀드리겠습니다.데이터 파일의 데이터는 IT용어사전/e-Words에서 설명한 바와 같이'데이터'(data)의 줄임말로 프로그램이 아닌 데이터를 저장하는 것을 의미한다.
[앞부분] 최대한 간단히vim을 통해서 진행을 하도록 하겠습니다.
vim을 열 때 "스페이스 + e"에서 설정한 조개 스크립트를 실행하십시오.
vimrc 편집해.
//ホームディレクトリに移動
$ cd ~/
//.vimrcを編集
vim .vimrc
.vimrc에서 다음과 같이 시험해 봅시다.set number
" exec
nnoremap <space>e :wa \| !echo -e '\e[38;5;0m\e[48;5;51m --- exec --- \e[m';./exec.sh<cr>
vim을 이렇게 열 때'space+e'로 exec를 진행합니다.sh(이따가 할게요! 안심하세요!)에서 조개 껍질 스크립트를 실행합니다.또한 set number 덕분에vim의 줄 번호를 자동으로 입력할 수 있습니다.
[후반] 간단하게 vim을 통해서 할 수 있게.
다음은 exec.sh의 내용을 편집합니다.
//paizaディレクトリに移動
$ cd ~/Desktop/paiza
//exec.shを編集
$ vim exec.sh
main.phpにinput.데이터를 입력하고 실행한 다음 결과를 작성하면 ^a 파일의 스크립트에 기록됩니다.php main.php < input.dat | tee ^a
※ 더 정확히 말하면tee명령은'표준출력+파일쓰기'양방면의 임무를 맡는다.tee를 사용하면 파일에 쓸 수 있을 뿐만 아니라 현장에서 출력을 볼 수 있습니다.자세한 내용은 터미널man tee
에서 읽어 주십시오.간단한 프로그램으로 실험을 시도해 보세요!
그럼 간단한 프로그램을 써서 순조롭게 작동할 수 있는지 시험해 봅시다.
1
5
6
//標準入力を受け取る
$first_data = fgets(STDIN);
echo $first_data . PHP_EOL;
$second_data = fgets(STDIN);
echo $second_data . PHP_EOL;
$third_data = fgets(STDIN);
echo $third_data . PHP_EOL;
main.php를 편집할 때 "space+e"를 누르십시오.1, 5, 6을 순서대로 출력해야 한다.
같은 디렉터리에 ^a 파일이 있을 것입니다.내용을 확인한 후 데이터는 출력 결과와 같다.
다음은 아웃풋.같은 디렉터리에서dat라는 파일을 만들어 보세요.
일단 아웃풋.데이터의 내용은 ^a와 같다.
$ ls
exec.sh main.php input.dat ^a
$ view ^a
->^aの中身は下記のようになっているはず!
1
5
6
는 아래와 같다^a와output.데이터의 내용을 비교하다.차이가 없으니까 아무것도 안 나올 거야.
1
5
6
다음 아웃풋.dat의 세 번째 줄과^a만 다른 수치...$ cd ~/Desktop/paiza
$ diff ^a output.dat
이번 세 번째 줄의 오류가 나에게 알려주었다!!!1
5
7
수고하셨습니다!이제 페이즈의 득점 문제를 해결할 준비가 됐습니다!수고하셨습니다!그 다음
tmux분할 단말기의 화면을 가져오고iTerm2반투명한 꾸미기 좋은 환경을 구축하는 등 즐기세요!
=>iTerm2에 관해서 필자도 [iTerm2 입문] 개발 효율을 높이는 기본 기능/추천 설정을 저렴한 얇은 판 Like에 요약에 입문 기사를 썼으니 꼭 참고하시기 바랍니다.
※ 이상은 필자 iTerm2의 커팅입니다.많은 사람들이 역에서 환경이 더 좋으니 참고하세요.
[마지막] 참고가 될 수 있는 사이트가 될 것 같아요.
AOJ-ICPC
페이자에 비하면 좀 답답해요 (최저 등급 문제도 B급 이상?)다른 사람의 답을 볼 수 있어서 추천합니다.
AtCoder Problems
Atcorder의 과거 질문 사이트, Atcorder 등록 후 여기서 간단한 질문으로 빈칸을 채워주세요.(필자도 정진 중입니다.)
vimututor로 vim력을 높이다
vim를 연습하고 싶은 분들은 위에서 소개한 vim 레슨부터 추천합니다.
Reference
이 문제에 관하여(Vim에서paiza의 준비를 잘 하고 차근차근 열심히 하겠습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/kumamoto/articles/e0738b762b26a2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)