Использовать tsconfig.json для tsc с синтаксическим in vim

я хочу использовать syntastic плагин vim чтобы дать мне живую проверку ошибок во время написания файлов typescript, используя tsc. У меня уже есть tsc активировать в vim. Любые предложения о том, как я мог бы получить tsc использовать ближайших родителей конфигурации? Я нахожу это tsc не делает этого по умолчанию, что делает syntastic настройки сложно. Спасибо!

EDIT: причина, по которой я думаю, что он не использует tsconfig.json потому что параметры, такие как модуль метод разрешения, похоже, не работает ("require" не определен), и он также не ловит мои файлы определений, как определено в на tsconfig.json.

моя неудачная попытка решить эту проблему:

let g:syntastic_typescript_checks=['tsc', 'tslint']

" typescript: find tsconfig.json
function! FindTypescriptRoot()
    return fnamemodify(findfile('tsconfig.json', './;'), ':h')
endfunction

let g:syntastic_typescript_tsc_args=['-p', FindTypescriptRoot()]

это приводит к синтаксическому выплевыванию мне этой ошибки:

app.ts|| TS5042: Option 'project' cannot be mixed with source files on a command line.

это, вероятно, потому, что он выполняет команду, такую как tsc -p /path/to/project/ app.ts, что является незаконным использованием этого флага... Но я не понимаю, почему мои настройки в tsconfig.json несколько игнорируется syntastic : (

2 ответов


резюме

добавить let g:syntastic_typescript_tsc_fname = '' to .vimrc.

подробности

As romainl упомянутые в ответ, the ", используя tsconfig.в JSON" раздел текста wiki гласит:

вызывая tsc без входных файлов, в этом случае компилятор ищет tsconfig.json файл, начинающийся в текущем каталоге и продолжающийся в родительской цепочке каталогов.

вы можете сделайте это в Vim используя Syntastic добавить следующий код .vimrc или .vimrc.after если вы используете Янус, хранящееся в LCD 047ответ на ваш вопрос Syntastic #1628:

let g:syntastic_typescript_tsc_fname = ''

Вики говорит:

использование tsconfig.в JSON

  • ссылкой tsc без входных файлов, в этом случае компилятор осуществляет поиск tsconfig.json файл, начинающийся в текущем каталоге и продолжающийся в родительской цепочке каталогов.

  • ссылкой tsc без входных файлов и -project (или просто -p) параметр командной строки, указывающий путь к каталогу, содержащему .

когда входные файлы, указанные в командной строке, tsconfig.json файлы игнорируются.

Итак, в основном, вам нужно найти способ сказать Syntastic to не передать имя tsc.

Я бы предложил использовать их трекер проблем с этого момента.