Vscode: Экранирование \\ во фрагменте с использованием \\\\ выводит только одну обратную косую черту

Созданный на 7 сент. 2017  ·  1Комментарий  ·  Источник: microsoft/vscode

  • Версия VSCode: 1.15.1, Зафиксировать 41abd2
  • Версия ОС: Ubuntu 16.04

Действия по воспроизведению:

  1. Вставьте следующий фрагмент кода в latex.json (это то место, где находится фрагмент кода пользователя)
    Или нажав File -> Preferences -> User Snippets и выполните поиск tex .
    "Input a multiline eqn": {
        "prefix": "eqnmultiline",
        "body": [
            "\\[",
            "\t\\begin{array}{lcl}",
            "\t\t ${1:foo} & = & ${2:foo} \\\\",
            "\t\t & = & ${3:foo} \\\\",
            "\t\t & = & ${4:foo} \\\\",
            "\t\\end{array}",
            "\\]",
            "$0"
        ],
        "description": "Input a multiline eqn"
    }

  1. В demo.tex введите eqnmultiline который вставит фрагмент кода следующим образом:
   \[
        \begin{array}{lcl}
             foo & = & foo \
             & = & foo \
             & = & foo \
        \end{array}
    \]

И я ожидаю \\ в конце трех строк foo, которые я использую для выхода \\\\ . Но в результате получается по одному \ в каждой строке.
Сниппет Граммер говорит, что для выхода из \ используется \ \ . Так что мне интересно, не ошибка ли это.


Воспроизводит без расширений:
Правильно. Извините за то, что не тестировал ранее предложенный code --disable-extensions потому что я пропустил эту строку в комментарии. Пробовал сегодня, и после отключения расширений я не могу вставлять текстовые фрагменты даже через палитру команд. Он говорит мне there are no entries to pick from

*duplicate *question editor snippets

Самый полезный комментарий

Извините за беспорядок ... Этот обман https://github.com/Microsoft/vscode/issues/32020#issuecomment -323775984, но короче это проблема

  • В TextMate вы можете, но не должны избегать обратной косой черты с помощью обратной косой черты, поэтому для вставки 1 обратной косой черты используйте \ или \\
  • В JSON вы должны экранировать обратную косую черту с помощью другой обратной косой черты, поэтому для вставки 1 обратной косой черты необходимо либо \\ или \\\\ , для вставки 2 \\\\\\\\

Есть идея отказаться от JSON для этой и других проблем ...

>Все замечания

Извините за беспорядок ... Этот обман https://github.com/Microsoft/vscode/issues/32020#issuecomment -323775984, но короче это проблема

  • В TextMate вы можете, но не должны избегать обратной косой черты с помощью обратной косой черты, поэтому для вставки 1 обратной косой черты используйте \ или \\
  • В JSON вы должны экранировать обратную косую черту с помощью другой обратной косой черты, поэтому для вставки 1 обратной косой черты необходимо либо \\ или \\\\ , для вставки 2 \\\\\\\\

Есть идея отказаться от JSON для этой и других проблем ...

Была ли эта страница полезной?
0 / 5 - 0 рейтинги