.aliases
bash 및 zsh 라는 파일 이 있습니다.이 줄을 넣습니다.
# vim: set filetype=bash:
하지만 내가 만들면
: echo &ft
나는 얻다 conf
.aliases
bash 및 zsh 라는 파일 이 있습니다.이 줄을 넣습니다.
# vim: set filetype=bash:
하지만 내가 만들면
: echo &ft
나는 얻다 conf
답변:
작동합니다. 나는 그 선을 직접 시도했고 효과가 있었다. 귀하의 'modeline'옵션이 'nomodeline'으로 설정되었을 수 있습니다. 이것을 실행하고 당신이 얻는 것을보십시오.
:verbose set modeline?
'modeline'옵션의 값과 기본값이 아닌 경우 마지막으로 설정된 위치를 알려줍니다.
'modeline'의 보안 문제가 오랫동안 해결되었지만 일부 Linux 배포판에서는 / etc / vimrc 또는 / usr / share / vim / vimrc의 'nomodeline'을 보안 수단으로 설정했습니다.
modelines
옵션이 구현되지 않은 것을하고있을 것입니다 결코. 이것은 PDF, Word, Excel 및 & c & c & c에서 실행되는 파일 포함 명령 또는 매크로 명령어에서 발생하는 모든 보안 버그와 같습니다.
이 다른 답변에서 전체 디버그 검사 목록을 설명합니다 .
문서 가 완전히 사실 이 아니기 때문에 나는 이것에 정말로 빠져 들었다 .
버전 8 (및 이전 버전)에서는 모델에서 단어 set
를 사용할 수 없습니다 . 설명서에는 "두 번째 양식"이있는 것으로 설명되어 /* vim: set ai tw=75: */
있지만 작동하지 않습니다. "첫번째 형태"를 사용해야합니다// vim: ai tw=75
참고 : 이러한 종류의 주석 표시기 중 하나를 사용할 수 있습니다. 아니면 전혀.
set
vim 8.0에서는 7.4 의 형식은 아니지만 양식이 제대로 작동합니다. 또한 두 번째 형식으로 // vim: ai tw=75
줄 끝에 다른 문자가있을 수 없으며 vim은 모델을 불평하고 무시합니다.
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Nov 24 2016 16:44:48) Inklusive der Korrekturen: 1-1689 Extra-Patches: 8.0.0056 Verändert von pkg-vim-maintainers@lists.alioth.debian.org Übersetzt von pkg-vim-maintainers@lists.alioth.debian.org Riesige Version mit GTK2-GNOME GUI.
(마지막 선은 의미 에 의해 수정 ... , ...에 의해 컴파일 , 거대한 버전 ... ).
set modelines=1
내 ~ / .vimrc의 (또는 0이 아닌 값)가 나를 위해 일했습니다.
modeline
또한 설정 되어 있지 않으면 효과 가 없습니다 (루트가 아닌 한 Vim에서 기본적으로 설정 됨)
set nomodeline
에 적용 /etc/vimrc
됩니다.
modelines
0이 아닌 값 으로 설정 해야했습니다. 도움말에 기본값은이라고 나와 5
있으므로 이것이 내가 설정 한 것입니다. 미국이,If 'modeline' is on 'modelines' gives the number of lines that is checked for set commands. If 'modeline' is off or 'modelines' is zero no lines are checked.
이것이 검색에서 나타나는 것처럼 보이기 때문에 :
나는 같은 문제가 있었다.
# vim: set filetype=sh:
작동하지 않아 ft = conf도 발생했습니다. ~ / .bash_alias에 모델이 없으면 ft가 비어 있으므로 무언가가 바뀝니다.
동안
# vim: filetype=sh:
일했다. 마지막 ":"존재는 관련이없는 것 같습니다.
나는 기록을 위해 Vim8 양조 버전으로 OSX를 사용하고 있습니다.
modeline의 도움으로 인해 이상합니다.
[text]{white}{vi:|vim:|ex:}[white]{options}
과
[text]{white}{vi:|vim:|Vim:|ex:}[white]se[t] {options}:[text]
지원되는 것 같습니다.
의 출력
verbose set ft?
"vim : filetype = sh"는
filetype=sh
Last set from modeline
모델이없는 경우 :
filetype=
"vim : set filetype = sh"사용
filetype=conf
Last set from /usr/local/Cellar/vim/8.0.1350/share/vim/vim80/filetype.vim
내 conf에 어딘가에 부작용이있을 수 있지만 호환되지 않는 modeline 구문은 나에게 예상대로 작동하는 유일한 구문입니다.
/usr/share/vim/vim80/debian.vim
데비안 기반 배포판 에서 from vim-common
은 기본적으로 비활성화 되어 있습니다.modeline
" modelines have historically been a source of security/resource
" vulnerabilities -- disable by default, even when 'nocompatible' is set
set nomodeline
또는 파일 modeline
에서 명시 적 으로 활성화 해야 합니다..vimrc
~/.vim/vimrc
set modeline
아마도 모델이 비활성화되어 있기 때문일 수 있습니다.
나는 그 문제를 다음과 같이 해결합니다.
이 경우 기본 허용 된 명령은 다음과 같습니다 filetype
.