티스토리 뷰

반응형

우분투 설치하고 나서 기본으로 설정되는 에디터가 보통 vim tiny 이다.


다양한 편집옵션이나 색 옵션이 지원이 되지 않아 설정 파일을 편집하는데 어려움이 있다.


특히 svn 을 사용하는 환경에서 svn commit 을 하려할때 인라인 옵션( -m ) 을 사용하지 않으면 서버의 환경설정에 따라 기본 에디터가 나타나는데 nano 편집기가 열리는 경우가 대부분일것이다. 


vi file명 을 입력했을때 하얀색 글씨가 기본이라면 vim tiny가 기본으로 설정되어있는 경우가 대부분일텐데 

만약 vim file명을 입력했을때 예쁜 색과 함께 보인다면 vim basic 또한 설치가 되어있다는 얘기이다.

( 설치가 안되어있다면 vim 에디터를 따로 설치해주어야 한다. ) 


SVN이나 vi 명령어에 기본 에디터를 vim 으로 지정할수 있는 2가지 방법을 소개한다.



먼저 Debian 계열에 기본으로 제공해주는 기능(명령어)을 이용하는 방법이다.


* update-alternatives 명령어를 이용하는 방법 

이 명령어에 대한 메뉴얼의 핵심 내용은 다음과 같다. 

It  is possible for several programs fulfilling the same or similar functions to be installed on a single system at the same time.  For example, many systems have several text editors installed at once.  This gives choice to the users of a system, allowing each to use a different editor, if desired, but makes it difficult for a program

       to make a good choice for an editor to invoke if the user has not specified a particular preference.

Debian's alternatives system aims to solve this problem.  A generic name in the filesystem is shared by all files providing interchangeable functionality.  The alternatives system and the system administrator together determine which actual file is referenced by this generic name.  For example, if the text editors ed(1) and nvi(1)  are

       both installed on the system, the alternatives system will cause the generic name /usr/bin/editor to refer to /usr/bin/nvi by default. The system administrator can override this and cause it to refer to /usr/bin/ed instead, and the alternatives system will not alter this setting until explicitly requested to do so.


동일하거나 유사한 기능을 수행하는 여러 프로그램이 동시에 단일 시스템에 설치 될 수 있습니다. 예를 들어 많은 시스템에는 한 번에 여러 개의 텍스트 편집기가 설치되어 있습니다. 이것은 시스템의 사용자에게 선택권을 주며, 원할 경우 각각 다른 편집기를 사용할 수있게하지만 프로그램을 어렵게 만듭니다

       사용자가 특정 환경 설정을 지정하지 않은 경우 편집기를 호출하기위한 좋은 선택입니다.

 데비안의 대안 시스템은이 문제를 해결하는 것을 목표로합니다. 파일 시스템의 일반 이름은 상호 교환 가능한 기능을 제공하는 모든 파일에 의해 공유됩니다. 대체 시스템과 시스템 관리자는 함께 이 실제 이름이 참조하는 실제 파일을 판별합니다. 예를 들어, 텍스트 편집기 ed (1) 및 nvi (1)이

       둘 다 시스템에 설치되면 대체 시스템은 / usr / bin / editor라는 일반 이름이 기본적으로 / usr / bin / nvi를 참조하게합니다. 시스템 관리자는 이것을 무시하고 대신 / usr / bin / ed를 참조하게 할 수 있으며, 대체 시스템은 명시 적으로 요청할 때까지이 설정을 변경하지 않습니다.


위 설명을 토대로 실제 vi 명령어가 어떻게 연결이 되고 있나 살펴 보았다. 

(아래의 사진 참조)

필자는 이미 vi = vim 설정을 해놓은 상태이다.


/usr/bin/ 폴더 아래에 링크파일인 vi 파일과 vim, 그리고 실제 파일인 vim.basic 이 존재한다.

vi 의 명령어는 그림의 1과 같이 /etc/alternatives/vi 로 링크가 되어있고

vim은 /etc/alternatives/vim 으로 링크가 되어있다.


/etc/alternatives/vi 는 그림의 2와 같이 /usr/bin/vim.basic 으로 링크가 되어있다.

( 설정하지 않았으면 이곳이 /usr/bin/vim.tiny 로 되어있을 것이다 ) 


SVN과 같은 프로그램에서 사용하는 편집기는 /usr/bin/editor 를 참조 할것이다.

마찬가지로 editor 명령어는 다음과 같이 연결이 되어있다. 


이처럼, debian 계열 시스템은 유사항목 프로그램들을 그룹화 하여 관리하고 이 명령어들을 마스터 - 슬레이브 개념으로 관리를 하고있다.

그 역할을 하는 명령어가 update-alternatives 이다. 

 

사용방법은 

sudo update-alternatives --config editor(설정을 원하는 프로그램) 이다. 


아래 사진과 같이 --config 에서 tab 키를 눌러보면 설정 가능한 프로그램 목록이 나온다.  

위와 같이 editor 을 선택하고 연결을 원하는 프로그램 번호를 입력하고 엔터를 누르면 설정이 완료된다.


번째 방법은 모든 리눅스 환경에서 적용가능한 방법이다.

~/.bashrc 파일을 열어서 파일의 끝에 다음과 같이 입력해준 후 저장한다.

export EDITOR=vim 


저장후, source ~/.bashrc 로 적용 혹은 터미널을 닫고 다시 로그인 후 확인해보면 된다. 


SVN 기본 에디터로 설정하려할 경우에는 다음 한줄을 더 추가해준다!

export SVN_EDITOR=vim 


끝.


반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함