vim:通过命令行参数强制特定语法

vim:通过命令行参数强制特定语法

当我想轻松读取 PostgreSQL 模式时,我将其转储stderr并重定向到vim

pg_dump -h localhost -U postgres dog_food --schema-only | vim -

这给出:

在此输入图像描述

vim没有语法突出显示模式,因为从标准输入读取时它没有文件扩展名,所以我使用以下内容:

:set syntax=sql

这使:

在此输入图像描述

作为一个懒惰的开发人员,我想通过传递命令行参数来强制使用 SQL 语法,这样我就不用每次用数据打开它时vim重新输入了。set syntax=<whatever>stdin

有没有办法vim通过传递命令行参数来设置语法?

答案1

您可以使用:

vim -c 'set syntax=sql' -

答案2

vim -R -c 'set ft=sql' -

答案3

您甚至可以通过将命令放入您的~/.vimrc

augroup filetype
  au! StdinReadPre * set filetype=sql
augroup END

相关内容