시작 매개변수를 사용하여 /usr/bin/vim에 대한 심볼릭 링크를 만드는 방법은 무엇입니까?

시작 매개변수를 사용하여 /usr/bin/vim에 대한 심볼릭 링크를 만드는 방법은 무엇입니까?

소스 코드에서 vim을 실행한 후 evim, rvim, view와 같은 make&make installvim 심볼릭 링크를 많이 발견했습니다 ./usr/local/bin

매뉴얼 vim(1)페이지에는 "rvim"이 "vim -Z"와 동일하다고 나와 있습니다.

이제 나는 궁금해진다. 나 자신과 그런 상징적인 관계를 가질 수 있을까 ln(1)? 가능하다면 어떻게 달성할 수 있나요?

답변1

일부 코드를 작성하지 않고는 이 작업을 수행할 수 없습니다.

이러한 기호 링크 단축키는 vim그런 식으로 작성되었기 때문에 작동합니다. 어떻게 시작되었는지(어떤 이름으로) 살펴보고 적절한 명령줄 옵션을 사용하여 호출된 것처럼 동작합니다.
이 동작은 실행 파일에 하드코딩되어 있으며 심볼릭 링크를 통해 수행되는 트릭이 아닙니다.

따라서 이 작업을 직접 수행하려는 경우 가장 쉬운 방법은 원하는 옵션이 포함된 작은 래퍼 exec스크립트를 작성하는 것입니다 vim.

#!/bin/sh
exec vim <options you want> "$@"

마지막 "$@"은 단순히 스크립트에 제공된 명령줄 옵션을 vim에 전달합니다.

답변2

쉘 구성을 통해 우회적인 방식으로 이 작업을 수행할 수 있습니다. 그것은 마치

alias big_vim='gvim -p -geom 126x512'

Bash/zsh에서 작업할 수 있습니다. sudo/root를 건드리지 않고도 사용자 정의가 가능합니다.

노트.별칭을 영구적으로 만들려면(즉, 새 터미널에서 작동) ~/.bashrc에 다음을 추가하세요.

echo "alias big_vim='gvim -p -geom 126x512'" >> ~/.bashrc 

답변3

당신은 그렇게 할 수 없습니다.

VIM은 시작 시 실행 경로를 확인합니다. 예를 들어 원본 바이너리를 rvim에 연결하면 실행 경로가 가 되며 /path/to/rvim, 이 경우 -ZVIM은 사용자가 지정하지 않더라도 이 매개 변수를 자동으로 추가합니다.

그러나 터미널에서만 VIM을 실행하는 경우 다음을 수행해야 합니다.

Bash의 경우 ~/.bashrc에 별칭을 추가합니다.

alias vim='vim -Z'

필요에 맞게 매개변수를 변경하십시오.

csh/tcsh의 경우 =기호를 제거하고,

예를 들어alias vim vim -Z

관련 정보