openFile method

Future<void> openFile(
  1. String filePath,
  2. String content
)

Open a file (sends textDocument/didOpen).

Implementation

Future<void> openFile(String filePath, String content) async {
  final server = await ensureServerForFile(filePath);
  if (server == null) return;

  final config = configForFile(filePath)!;
  final ext = filePath.contains('.') ? '.${filePath.split('.').last}' : '';
  final languageId = config.extensionToLanguage[ext] ?? 'plaintext';

  _openFiles[filePath] = config.name;
  _fileVersions[filePath] = 1;

  server.sendNotification('textDocument/didOpen', {
    'textDocument': {
      'uri': _fileUri(filePath),
      'languageId': languageId,
      'version': 1,
      'text': content,
    },
  });
}