.vimrc で次の手法を使用して、行末の余分な空白を削除しています...
autocmd BufWritePre * :%s/\s\+$//e
.md
しかし、Markdown ファイル (または など) でそれが発生したくないことに気付いた.markdown
ので、次の VimScript を使用しています...
fun! StripTrailingWhiteSpace()
" don't strip on these filetypes
if &ft =~ 'md\|markdown'
return
endif
%s/\s\+$//e
endfun
autocmd bufwritepre * :call StripTrailingWhiteSpace()
ただし、それでもすべてのファイルの空白が削除されます。
そこで、次のことを試しました(短いほど良いようです)...
let blacklist = ['md', 'markdown']
autocmd BufWritePre * if index(blacklist, &ft) < 0 | :%s/\s\+$//e
しかし、繰り返しになりますが、それでもすべてのファイルの空白が削除されますか?
これらのテクニックはどちらもうまくいかないようですか?彼らはまだファイルに空白を残していますか?
これを行う方法についてのアイデア (現時点では、Vim ではなく別の書き込みアプリで Markdown ファイルを編集する必要があり、非常に面倒です)。