WedX - журнал о программировании и компьютерных науках

UltiSnips — создать список аргументов с заполнителями

Я пытаюсь создать в UltiSnip способ взять список имен переменных и преобразовать их в список строк с разделителями строк (как вы видели бы в AngularJS). Итак, вы вводите каждый аргумент, переходите к следующему заполнителю, а выше функция заполняется тем, что вы хотите.

Начните с этого:

function(FirstArg, SecondArg, ThirdArg)

Нажмите CTRL-J (следующий заполнитель)

И окончательный результат:

[
  'FirstArg',
  'SecondArg',
  'ThridArg',
  function(FirstArg, SecondArg, ThirdArg) {
    // ... cursor here after hitting CTRL-J
    // this would be $0
  }
]

Любые подсказки были бы замечательными!


  • Просто идея: возьмите всю строку между () как $1, а затем используйте интерполяцию Python, чтобы разделить ее на запятые и сгенерировать строки выше. В принципе должно работать, но я не знаю, насколько грязным это станет, если вы погрузитесь в детали. 11.03.2015

Ответы:


1

Проще, чем я думал. Это функция

global !p
def varDeps(args):
    result = ""
    argList = args.split(",")

    for arg in argList:
        dep = "    " + "'" + arg.strip() + "',\n"
        result = result + dep

    return result.rstrip()
 endglobal

Затем используйте что-то вроде этого (где это третий заполнитель)

    `!p snip.rv = varDeps(t[3])`
        function($scope, ${3:deps}) {
            //....
        }
11.03.2015
Новые материалы

Как создать диаграмму градиентной кисти с помощью D3.js
Резюме: Из этого туториала Вы узнаете, как добавить градиентную кисть к диаграмме с областями в D3.js. Мы добавим градиент к значениям SVG и применим градиент в качестве заливки к диаграмме с..

Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что это выглядит сложно…
Просто начните и учитесь самостоятельно Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что он кажется мне сложным, и я бросил его. Это в основном инструмент..

Лицензии с открытым исходным кодом: руководство для разработчиков и создателей
В динамичном мире разработки программного обеспечения открытый исходный код стал мощной парадигмой, способствующей сотрудничеству, инновациям и прогрессу, движимому сообществом. В основе..

Объяснение документов 02: BERT
BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

Как проанализировать работу вашего классификатора?
Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

Работа с цепями Маркова, часть 4 (Машинное обучение)
Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..


Для любых предложений по сайту: [email protected]