나는 vim이 zip 또는 tar{,.gz} 아카이브의 파일을 대화식으로 열 수 있다는 것을 알고 있습니다. 먼저 아카이브를 연 다음 올바른 항목으로 이동하고 Enter를 누르십시오.
청소년행정처(https://github.com/wofr06/lesspipe) (이것은 전처리기입니다.더 적은)는 아카이브 이름과 아카이브( less foo.tgz:file-within-foo
) 내의 파일 이름을 모두 직접 입력할 수 있는 추가적인 편의성을 제공합니다. (예, 알고 있습니다. 이론적으로 이 체계는 이름에 콜론이 포함된 파일에 문제를 일으킬 수 있습니다. 실제로는 다음과 같습니다. 희귀한...). vim에도 비슷한 기능(아마도 플러그인)이 있는지 궁금합니다.
설명: 기본적으로 내가 요구하는 것은 "상대적으로" 단순해야 합니다(주로 유용성 POV에 초점을 맞춰야 함). 왜냐하면 대부분의 아카이브 처리 기능이 실제로 vim에 이미 존재하기 때문입니다. vim foo.tgz:file-within
vim이 제공하는 목록에서 vim foo.tgz
선택하세요 .file-within
답변1
대부분의 Unix 변형에서 지원됨퓨즈, 이를 통해 프로그램은 새로운 파일 시스템 유형을 정의할 수 있습니다. 아카이브 내용을 디렉터리 트리로 노출하는 다양한 FUSE 파일 시스템이 있습니다. 이렇게 하면 모든 응용 프로그램이 아카이브 내용을 일반 파일로 투명하게 처리할 수 있습니다. 바라보다디렉토리를 압축된 형태로 저장하고 사용할 수 있나요?
예를 들어,AVFS, 읽기 전용 액세스 권한을 얻습니다.
mountavfs
cd ~/.avfs$PWD
vim foo.tgz\#/file-within-foo
그리고아카이브 마운트, 각 아카이브를 명시적으로 마운트해야 하지만 읽기 및 쓰기 액세스 권한을 얻게 됩니다.
mkdir foo.d
archivemount foo.tgz foo.d
vim foo.d/file-within-foo
fusermount -u foo.d; rmdir foo.d