Почему в моем фрагменте sublime есть четыре поля, когда у меня определены только три поля?

У меня есть следующий фрагмент:

<snippet>
    <content><![CDATA[
### ${1:title}
#### ${2:sub title}
${3:summary}
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>qnote</tabTrigger>
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>source.python</scope> -->
</snippet>

он работает нормально, за исключением того, когда я вызываю его sublime ищет 4 поля вкладки вместо трех, поэтому, когда я закончу заполнение резюме, я должен нажать tab снова, чтобы заполнить четвертое поле. Почему это происходит и как изменить поведение, чтобы было только три поля вкладки? Спасибо!Введите описание изображения здесь

1 ответ

  1. По умолчанию фрагменты содержат дополнительное скрытое «поле» в конце, так что вы можете нажатьTab, чтобы переместить курсор после окончания фрагмента, независимо от того, где последнее поле определено в фрагменте.

    Таким образом, вы, вероятно, хотите изменить свой фрагмент, чтобы удалить${3:summary}, так что это будет выглядеть так:

    <snippet>
        <content><![CDATA[
    ### ${1:title}
    #### ${2:sub title}
    ]]></content>
        <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
        <tabTrigger>qnote</tabTrigger>
        <!-- Optional: Set a scope to limit where the snippet will trigger -->
        <!-- <scope>source.python</scope> -->
    </snippet>
    

    и он будет вести себя так, как вы пожелаете.