터미널에서 웬만한 파일은 cat 명령어로 내용을 확인할 수 있다.
문법 하이라이팅이나 줄 번호 표시 등의 기능이 있는 cat의 상위 호환인 bat도 있다.
문제는 노트북 파일인 ipynb 파일을 확인하고 싶을 때이다.
알다시피 ipynb 파일을 cat으로 보면 수많은 중괄호가 난무하기 때문에 읽기가 쉽지 않다.
이럴 때 사용할 수 있는 도구가 이 글에서 소개할 nbpreview이다.
nbpreview 소개
nbpreview는 Jupyter notebook 파일을 위한 터미널용 뷰어로 아래와 같이 실행된다.
위처럼 터미널 환경에서 바로 노트북 파일의 내용을 확인할 수 있다.
이제 설치 방법과 사용 방법 및 간단한 특징을 살펴보자.
nbpreview 설치
pip으로 간단하게 설치할 수 있다.
pip install nbpreview
nbpreview 사용법
nbpreview는 아래와 같이 사용할 수 있다.
nbpreview filename.ipynb
간단하게 아래와 같이 칠 수도 있다.
nbp filename.ipynb
여러 옵션을 줄 수도 있는데 모든 옵션, 효과, 값 및 환경 변수는 아래 명령어를 통해 확인이 가능하다.
nbpreview --help
nbpreview 특징 - 파일 인수
nbpreview는 파일을 지정하는 필수 인수가 하나 있다.
nbpreview notebook.ipynb
여러 파일을 지정할 수 있다.
nbpreview notebook1.ipynb notebook2.ipynb
또는 하나 이상의 노트북 파일에 확장되는 glob을 사용할 수도 있다.
nbpreview notebooks/*.ipynb
stdin의 텍스트를 받아 노트북 파일의 내용으로 처리할 수도 있다.
curl https://raw.githubusercontent.com/paw-lu/nbpreview/main/tests/unit/assets/notebook.ipynb | nbpreview
렌더링 전에 셀을 필터링하는 데에도 사용 가능하다.
jq 'with_entries(if .key == "cells" then .value |= map(select(.cell_type == "markdown")) else . end)' tests/unit/assets/notebook.ipynb | nbp
nbpreview 특징 - 자동 페이징
내용이 긴 노트북 파일의 경우 pager에서 내용을 띄워준다.
이를 자동 페이징이라고 부르는데 비활성화 하려면 노트북 파일을 열 때 아래와 같은 --no-paging
옵션을 주면 된다.
nbpreview --no-paging notebook.ipynb
문법 하이라이팅 테마 설정
nbpreview을 통해 노트북 파일의 내용을 여는 경우 코드 문법에 하이라이팅이 되는 것을 볼 수 있다.
입맛에 맞는 테마를 선택할 수도 있는데 방법은 아래와 같다.
nbpreview --theme material notebook.ipynb
사용 가능한 모든 테마 목록과 테마 미리보기를 하려면 아래처럼 --list-themes
옵션을 주면 된다.
nbpreview --list-themes
직접 실행해보고 맘에 드는 테마를 골라 아래처럼 자동으로 실행되도록 지정해버리자.
export NBPREVIEW_THEME='material'
살펴본 것은 nbpreview의 아주 일부분에 불과하다.
공식 사이트에서 필요한 기능을 검색해서 입맛에 맞게 nbpreview을 사용해보자.
'코딩 환경 > Terminal' 카테고리의 다른 글
[Terminal] 터미널에서 tar, tar.gz 파일 압축, 해제 방법 및 옵션 (0) | 2024.06.17 |
---|---|
[Terminal] .gz, .bz2, .xz 파일 압축 및 해제 방법 (0) | 2024.06.17 |
[Terminal] 맥북 터미널 호스트네임 변경 (터미널 상단 바 이름 변경) (1) | 2023.10.04 |
[Terminal] 터미널 이름 옆 (base) 나오는 이유와 비활성화 방법 (feat. Anaconda) (0) | 2023.07.27 |
[Git] 깃헙(GitHub)과 로컬 리포지토리에서 파일 삭제하기 (0) | 2023.05.09 |