Intro

GUI 환경 대신 Terminal 을 사용하게되면 대부분의 작업이 더 편리해지지만 분명히 불편한 점도 생기기 마련입니다. 그 중 가장 대표적인 예가 File Browsing 이 아닐까해요. 요즘은 컴퓨터로 작업을 할 때 어떤 작업을 하든 꼭 필수적으로 사용해야하는 Tool 이 있는 경우가 아니라면 모든 작업을 Terminal 에서 해결하려고 하는데 File Browsing 만큼은 아직도 Finder 에 의존할 때가 많습니다. 파일명을 변경하거나 복사, 이동하는 작업이 Terminal 에서는 좀 불편하더라고요.

그럼 잘 만들어놓은 Finder 를 놔두고 왜 굳이 Terminal 에서 작업을 하려고 하느냐. 바로 Workflow 때문입니다. 제가 애초에 Terminal 을 주력으로 쓰게된 이유도 이곳에서는 모든 작업을 창 전환 없이 키보드만으로도 진행할 수 있기 때문이죠.

그래서 CLI 환경에서 쓸만한 File Browser 를 찾다보니 후보가 RangerMidnight Commander 로 추려지더라고요. 둘 다 꽤 유명한 프로그램이지만 그래도 사용자의 수가 인지도면에서는 Midnight Commander 가 우위였지만, 저는 좀 더 미려한 인터페이스와 최신 기능을 탑재한 Ranger 를 사용하기로 결정했습니다. 그럼 바로 설치를 진행해 볼게요.


Installation

Ranger GithubREADME 에서 여러가지 정보를 확인할 수 있습니다만, 제가 원하는 설치방법은 기재되어 있지 않아 구글링으로 Homebrew 로 설치할 수 있는 방법을 검색 해보니 역시 가능했습니다.

brew install ranger

간단하게 설치를 마치고나면 바로 Terminal 에서 ranger 라는 커맨드를 사용할 수 있게됩니다.


Basics

그럼 ranger 커맨드를 입력해 File Browser 를 실행시켜볼게요.

Rnager 가 실행된 모습

그냥 보기만해도 어떻게 사용해야할지 감이 오네요 ㅎㅎ 정말 직관적이고 깔끔한 인터페이스인 것 같아요. 역시 Ranger 를 선택하길 잘한 것 같네요 ㅋㅋㅋ

기본 조작법을 잠깐 살펴보자면 기본 Vim 키인 h, j, k, l방향키 로 기본 조작을 할 수 있으며, 심지어 마우스 로도 조작이 가능합니다. 근데 마우스 조작할거면 그냥 Finder 를 썼지…


Config 파일 생성 및 관리하기

Ranger 역시도 Vim 과 비슷하게 rc.config 라는 파일을 통해 여러가지 세팅을 저장하고 사용할 수 있습니다. Vim 에서 세팅을 한번 이상 해본 분이라면 익숙할거에요 ㅎㅎ 다만 Ranger 를 방금 설치했다면 원래 이 설정파일이 위치해야하는 ~/.config/ranger/ 경로에 저처럼 어떤 파일도 없을거에요.

Ranger 설정파일이 없는 화면

이곳에 설정과 관련된 파일들이 있어야하는데 이렇게 아무 것도 없습니다. 그럼 우리가 직접 커맨드를 실행해 설정파일들을 생성해보겠습니다.

$ ranger --copy-config=all

이렇게 입력을 하면 여러가지 파일이 생성되고 이 중 우리가 설정에 사용하게 될 파일은 rc.config 파일입니다.

Ranger 설정파일이 생성된 화면

이제 파일이 생성되었으니까 직접 한번 여러가지 기본 설정들을 진행해보도록 하겠습니다.


Image Preview 기능 추가하기

Rnager 를 막 설치했다면 기본 세팅으로는 Finder 에서 처럼 이미지 미리 보기가 사용이 안되는데요.

Finder 의 미리보기

이렇게 Image 를 미리 확인할 수 있으면 매번 어떤 파일인지 확인하는 수고가 덜어지고 시간도 훨씬 절약되잖아요? 그래서 이 기능을 Ranger 에서도 사용할 수 있도록 세팅을 하려고 합니다.

그럼 세팅을 위해 우리가 조금 전 생성한 rc.config 파일을 Vim 으로 열어볼게요. Vim 이 익숙하지 않다면 당연히 Vim 외 어떤 텍스트 에디터로 열어도 괜찮습니다.

rc.config 파일 첫 화면

헐.. 텅 비어있을 줄 알았는데 초깃값들이 무언가 많네요. 대략적으로 설명하자면 여러가지 단축키 설정들이며 이 곳을 수정해 본인이 원하는 단축키를 사용할 수도 있습니다. 저희는 Image Preview 를 구현하는게 목표니까 이건 넘어가도록하고…

rc.config preview_image 화면

검색을 통해 set preview_images false 라고 입력되어 있는 부분을 찾아 set preview_images true 로 변경해 주세요. 일단 우리는 Ranger 에게 Preview 기능을 사용하고 싶다고 알려줬습니다. 하지만 이게 끝이 아니라 어떤 방식으로 사용할건지를 최종적으로 한번 더 확인시켜줘야하는데요. 이 방법에는 여러가지가 있지만 저는 iTerm2 라는 Application 에서 제공하는 기능을 이용해 Preview 기능을 활성화해보도록 할게요.

이번에는 set preview_images_method 라고 입력되어 있는 부분을 찾아볼게요. 기본값은 w3m 으로 되어 있을텐데 저는 이 코드를 코멘트 처리하고 set preview_images_method iterm2 를 새롭게 입력했습니다.

rc.config preview_images_method 화면

Preview 가 화면 우측에 잘 표시되는 것을 볼 수가 있네요!!


Shortcuts

추가적으로 앞으로 Ranger 를 사용하면서 자주 쓸만한 단축키들을 정리해봤어요. Vim 에 익숙하다면 대부분 금방 적응할 수 있을만한 단축키네요!

TitleShortcut
파일 이름 변경하기cr
파일 이름 앞쪽에서부터 변경I
파일 이름 뒷쪽에서부터 변경A
파일 복사하기yy
파일 잘라내기dd
파일 붙여넣기pp
파일 및 폴더 삭제하기dD
파일 개별 선택space
파일 전체 선택v
파일 선택 전체 해제uv
숨김파일 보이기 설정 토글zh
경로를 Home 으로 이동gh
선택된 폴더의 사이즈 확인dc
Parent 폴더에서 위,아래 이동[ , ]
새로운 탭 생성하기control + n or gn
현재 탭 닫기control + w or gc
다음 탭으로 이동tab or gt
이전 탭으로 이동shift + tab or ** gT
파일 및 폴더의 경로 Bookmarkm + { x }
Bookmark 찾아가기` + { x }
Shell 커맨드 사용하기! or s
무거운 작업 로드에서 탈출J
종료하기q

더 많은 단축키는 이곳을 참조하세요.


Wrap Up

오늘은 Terminal 에서 File Browsing 을 좀 더 편하게 할 수 있도록 공부를 해보았는데요. 이렇게 Terminal 과 점점 더 친해지는 것 같아 기분이 좋습니다. 여러분들도 Terminal 과 빨리 친해지길 바랍니다! 다른 이유도 많지만 일단 Terminal 이 간지나잖아요!!