Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

GNU nano 완벽 커스터마이징 가이드: 나노 편집기 설정 단계별 정리

텍스트 편집기 사용자들 사이에서는 흔히 '편집기 전쟁'이라 불리는 논쟁이 벌어지며, 참여하는 사람들은 대개 vi/vim 또는 emacs 중 하나를 선택합니다. 굳이 어느 한쪽에 기울기보다는, vi와 emacs 모두 따라잡기 어려운 훌륭한 장점을 지니고 있음을 인정하면서도, GNU nano에는 다시 한번 살펴볼 만한 숨겨진 기능이 여럿 있다는 사실을 알아두는 것이 좋습니다. 이런 기능들은 nano를 실행할 때마다 명령줄 옵션을 붙여 활성화하거나, 설정 파일(.nanorc)에 기본값으로 등록해 언제든 사용할 수 있습니다. 미리 사용자 정의 설정을 해두면 매번 옵션을 다시 입력하는 수고를 덜 수 있습니다.

32비트 Microsoft Windows Server 환경에서 시스템 관리자로 근무하다가 Linux 또는 BSD 기반 서버 아키텍처로 전환한 분들이라면, Windows 95 시절부터 꾸준히 제공돼 온 전체 화면 MS-DOS Editor에 익숙할 것입니다. 아직도 Windows Server를 실무에서 다루면서 Cygwin 라이브러리나 Windows 10의 Ubuntu 지원(WSL)을 설치해 사용하는 경우에도 상황은 비슷합니다. 어느 쪽이든 이 글에서 소개하는 기능들을 활용하면 GNU nano를 MS-DOS Editor와 비슷하게 동작하도록 구성할 수 있습니다.

방법 1: 명령줄 옵션으로 nano 기능 추가하기

해당 기능을 가끔씩만 사용할 계획이라면 명령줄 스위치로 활성화하는 편이 간편합니다. 많은 시스템 관리자가 선호하는 기능인, Home 키가 공백 문자가 아닌 실제 텍스트의 시작 위치로 이동하게 하려면 CLI 프롬프트에서 nano 뒤에 -A 스위치를 붙입니다. -L 옵션은 모든 파일 끝에 줄바꿈(new line) 문자를 추가하는 nano의 기본 동작을 비활성화합니다. Unix 환경에서는 표준적인 동작이지만, MS-DOS 유틸리티에 익숙한 사람에게는 낯설게 느껴질 수 있는 부분입니다.

기본적으로 nano는 제목 표시줄 아래 빈 줄 하나를 남겨 화면 공간을 차지합니다. 파일 이름 앞에 -O 옵션을 붙여 nano를 시작하면 이 빈 줄까지 편집 중인 텍스트 표시 영역으로 활용합니다. 여러 옵션을 함께 조합할 수도 있습니다. 예를 들어 nano -ALO theFile.txt처럼 입력하면 theFile.txt 파일을 열어 편집하되, 끝에 줄바꿈 문자를 추가하지 않고 불필요한 빈 줄도 제거하며, 스마트 Home 키 동작까지 한꺼번에 적용됩니다.

MS-DOS Editor 사용자라면 -m 옵션으로 마우스 지원을 켜는 것도 좋습니다. 이 모드에서는 원하는 줄을 클릭하면 커서가 해당 위치로 이동하고, 더블클릭하면 마크(mark)가 설정됩니다. 화면 하단의 옵션 메뉴도 클릭만으로 바로 실행할 수 있습니다.

내장 파일 브라우저에서도 마우스가 유용합니다. CTRL+O로 파일을 저장하거나 CTRL+R로 파일을 열 때는 파일 이름을 직접 입력해야 하지만, 이 상태에서 CTRL+T를 누르면 간단한 파일 브라우저가 나타나 목록에서 파일을 선택할 수 있습니다. 마우스 옵션이 켜져 있다면 이 브라우저 역시 마우스 입력을 받습니다.

Linux, BSD, Windows, 심지어 Apple 기반 서버 제품을 함께 운용하는 환경에서는 nano가 서로 다른 텍스트 파일 형식을 자동으로 변환하지 않도록 하는 것이 좋을 수 있습니다. -N 스위치로 시작하면 자동 변환이 비활성화되며, 이 경우에도 Unix, MS-DOS, 클래식 매킨토시 텍스트 형식은 문제없이 읽어냅니다.

방법 2: nanorc 파일에 옵션 영구 설정하기

GNU nano에는 전역 설정 파일이 있으며, 대부분의 Linux 시스템에서 기본 위치는 /etc/nanorc입니다. 사용자마다 별도의 설정이 필요하다면 해당 계정의 홈 디렉터리에 ~/.nanorc 파일을 만들어 개인 설정을 둘 수도 있습니다. nano를 -I 옵션으로 실행하면 두 설정 파일을 모두 무시하고 컴파일 시 기본값만 불러옵니다.

Ubuntu 계열, Debian, Arch, 일부 Fedora 시스템에는 대부분의 옵션이 주석 처리된 기본 nanorc 파일이 이미 포함되어 있습니다. root가 아니라면 sudo nano /etc/nanorc로 파일을 편집하되, 작업 전에 cp /etc/nanorc ~ 같은 명령으로 백업을 만들어 두는 것이 안전합니다. 설정을 모두 마친 뒤에는 백업 파일을 삭제하면 됩니다.

각 옵션은 설정 파일에 한 줄씩 나열하기만 하면 nano가 새 기본값으로 받아들입니다. 반드시 항목마다 새 줄에 작성하고, 파일을 MS-DOS나 매킨토시 텍스트 형식으로 저장하지 않도록 주의하세요. 예를 들어 set morespace는 제목 아래 빈 줄을 없애고, set mouse는 그래픽 터미널에서 마우스를 항상 활성화하며, set regexp는 검색에서 정규 표현식을 허용하고, set smarthome은 스마트 Home 키 동작을 기본으로 만듭니다. set nonewlines를 사용하면 nano가 열었던 파일 끝에 줄바꿈 문자를 더하지 않습니다.

Microsoft 명령줄 도구에 더 익숙한 시스템 관리자라면 nanorc 파일에 set softwrap을 추가하는 편이 좋습니다. 이 옵션은 기본으로 소프트 라인 래핑을 활성화해 긴 줄이 화면 가장자리에서 자동으로 줄바꿈되므로 훨씬 다루기 쉽습니다. 다만 이 기능을 사용하면 긴 줄을 구분하던 $ 기호가 화면에 표시되지 않으며, 커서 이동 면에서는 다소 직관적이지 않습니다. 화면 가장자리에서 줄이 바뀌어 보여도 nano는 내부적으로 긴 줄을 한 줄로 취급하기 때문에, 줄 중간에 커서를 놓으려면 방향키를 계속 누르거나 set mouse 옵션과 함께 마우스를 사용해야 합니다.

Windows 사용자는 CTRL+S를 저장 단축키로 익숙하게 여기지만, GNU nano에서는 기본이 아니며 CTRL+S에는 옛날 방식의 바인딩이 걸려 있습니다. 설정 파일에 bind ^S savefile main 한 줄을 추가하면 손쉽게 바꿀 수 있습니다.

색상도 직접 지정할 수 있습니다. titlecolor, statuscolor, keycolor, functioncolor 옵션을 사용하면 되는데, keycolor를 제외한 나머지는 공백 없이 쉼표로 구분된 두 개의 색상을 지정합니다. set keycolor 뒤에는 색상 하나만 쓰면 됩니다. 선택 가능한 색상은 표시 환경 설정에 따라 달라지지만, 색상 이름 앞에 공백 없이 bright를 붙이면 밝은 색으로 지정할 수 있습니다.

set titlecolor brightwhite,blueset statuscolor brightwhite,blue 조합은 클래식한 느낌을 주는 구성입니다. 다만 테스트에 사용한 Xubuntu 터미널에서는 밝은 흰색과 빨간색(brightwhite,red) 조합이 눈에 잘 들어오고 가독성이 뛰어나 예제로 채택되었습니다.

저자 소개

GNU nano 완벽 커스터마이징 가이드: 나노 편집기 설정 단계별 정리

Kevin Arrows

Kevin Arrows는 10년 이상의 업계 경력을 지닌 베테랑 기술 전문가입니다. Microsoft Certified Technology Specialist(MCTS) 자격증을 보유하고 있으며, 최신 기술 동향을 꾸준히 학습하는 데 큰 열정을 가지고 있습니다. 소프트웨어 개발, 사이버보안, 클라우드 컴퓨팅 등 폭넓은 기술 주제에 걸쳐 다수의 글을 집필했으며, 복잡한 기술 개념을 명확하고 간결하게 설명하는 능력으로 동료들의 인정과 존중을 받고 있습니다.