Как я могу позволить языковому серверу наблюдать за изменением файла `Untitled-1`? - PullRequest
0 голосов
/ 03 октября 2018

Я создаю языковой сервер и наблюдаю за изменениями файла javascript.Ниже приведен код для регистрации типа файла.

const clientOptions = {
    // Register the server for plain text documents
    documentSelector: [
      { scheme: 'file', language: 'plaintext' },
      { scheme: 'file', language: 'javascript' },
    ],
    synchronize: {
      // Notify the server about file changes to '.clientrc files contain in the workspace
      fileEvents: vscode.workspace.createFileSystemWatcher('**/*')
    }
  };

onDidChangeContent на стороне сервера не запускается для файла с именем Untitled-1, который был временно создан в vscode.Как я могу прослушать это изменение файла?

1 Ответ

0 голосов
/ 04 октября 2018

Попробуйте зарегистрироваться для схемы untitled вместе со схемой file:

const clientOptions = {
    documentSelector: [
      { scheme: 'file', language: 'plaintext' },
      { scheme: 'file', language: 'javascript' },
      { scheme: 'untitled', language: 'plaintext' },
      { scheme: 'untitled', language: 'javascript' },
    ],
    ...
  };

Это должно дать хосту знать, чтобы он отправлял на сервер новые файлы без названия, которые еще не были сохранены на диск,Вы также можете опционально опустить scheme полностью, если хотите синхронизировать все файлы javascript и plaintext.

...