我有一个Svelte组件,它在一个文件中使用三种不同的语言。我想让Vim在(但不包括)适当的标签内突出显示每种语言。
如何配置.vimrc
以启用此功能?
示例:
my-component.sv
<script lang='coffeescript'>
// Highlight everything in here as CoffeeScript.
import History from './History'
import Leader from './Leader'
import Spinner from './Spinner'
getBalances = () ->
response = await fetch('/api/balances')
await response.json()
</script>
<template lang='pug'>
// Highlight everything in here as Pug.
main
h1 Balance
+await('getBalances')
Spinner
+then
Leader
History
</template>
<style lang='stylus'>
// Highlight everything in here as Stylus.
main
font-family 'Helvetica Neue'
h1
font-weight 200
margin-bottom 10rem
text-align center
</style>
答案 0 :(得分:1)
类似于单个文件组件(例如posva/vim-vue)的现有插件,您需要一个插件来处理上下文相关的语法突出显示,例如evanleck/vim-svelte或leafOfTree/vim-svelte-plugin。我无法证明后者的质量,可能会有更好的选择。
Vim需要相当特定的语法规则,但是由于大多数工作是在Vue插件中完成的,因此它很容易适应Svelte,因为基本的SFC语法似乎是相同的。根据我的收集,burner/vim-svelte应该可以满足您的需求。
official docs目前对此没有帮助。他们希望您将一切都变成HTML。