Вычисление библиотек JavaScript для автозаполнения Vim с помощью TernJS в файле .tern_project

Я обожаю vim и хочу продолжать использовать его для веб-разработки, хотя я борюсь за настройку моего файла .tern_project с помощью правильных библиотек, которые мне нужно сделать для автозаполнения. Я относительно новичок в JavaScript, но то, что я до сих пор делаю, намного легче изучить.

Не так много примеров, которые я мог бы найти, и я попытался прочитать документацию но я не знаю достаточно, чтобы это было полезно. Пока мой файл .tern_project выглядит так:

{
  "libs": [
    "browser",
    "ecma6"
  ],
  "plugins": {
    "requirejs": {
      "baseURL": "./",
      "paths": {}
    }
  }
}

Я действительно не знаю, что делают плагины, но я оставил их сейчас, в libs ecma6 действительно помог мне со всеми методами массива (т.е. forEach и т.д.). Теперь мой вопрос: как добавить в autocomplete такие вещи, как console.table()?

Какую библиотеку мне нужно добавить в файл .tern_project?

Кроме того, я открыт для предложений о лучших средах веб-разработки.

Ответ 1

  • На этом этапе у вас есть завершение по умолчанию tern! Ваш .tern_project не влияет на завершение, которое предлагает tern, поскольку файл конфигурации tern .tern-project; Его Dash не подчеркивается. поэтому сначала переименуйте его.

    .tern-project - это файл конфигурации json, который сообщает, какие доработки он должен предлагать через два свойства: libs и плагины.


  • плагины мало чем отличаются от libs, они говорят, что также предлагают эти дополнения, которые вы укажете в дополнение к libs.

    Например, в файле .tern-project вы можете использовать плагин requirejs. поэтому, если вы используете requirejs library, который является загрузчиком модуля и помогает при написании модульного кода на стороне клиента, тогда он завершает переменные, функции и методы из других модулей.


  • консоль - глобальный node. и чтобы заполнить node материал, вы должны добавить плагин node. поэтому ваш файл .tern-project должен выглядеть примерно так:

    {
      "libs": [
        "browser",
        "ecmascript"
      ],
      "plugins": {
        "node": {}
      }
    }
    

    Примечание, что я использовал ecmascript вместо ecma6. в предыдущих версиях tern имел ecma5 и ecma6 libs, но в последних версиях эти два были объединены в один lib с именем: ecmascript.

Список доступных tern libs:

  • Браузер
  • Chai
  • ECMAScript
  • JQuery
  • реагируют
  • Подчеркивание

Вы всегда можете получить обновленный список libs из tern js repository defs directory

Список доступных плагинов :

  • angular
  • CommonJS
  • complete_strings
  • doc_comment
  • es_modules
  • node
  • requirejs
  • WebPack

Вы всегда можете получить обновленный список плагинов из каталог tern js repository plugin

По мере того, как ваши навыки javascript растут, добавьте и играйте с libs и плагинами и посмотрите, какие дополнения вы получите. Также обратите внимание, что у вас может быть несколько файлов .tern-project. Tern всегда будет искать вверх в корневой каталог и использует ближайший. поэтому вы можете настроить доработки на основе проекта.