Пользовательское расширение VSCode: похоже, не работает

В настоящее время я пытаюсь написать расширение VS Code, и это немного расстраивает. Я сделал все, как здесь сказано:

https://code.visualstudio.com/docs/extensions/example-hello-world

Но после использования yo code и ввода всей необходимой информации я открыл соответствующую папку VS Code, нажав F5, и VS Code сказал, что я должен настроить свой launch.json (это должно быть сделано с помощью вашего кода, не так ли?). Однако, когда я нажимаю кнопку запуска отладки, открывается окно хоста расширения, как описано в этом руководстве. НО: Когда я пытаюсь запустить расширение, палитра команд его не найдет.

Я пробовал использовать несколько имен команд, таких как «hello world», «helloworld» или варианты имени расширения, которое я дал в yo code. Я также заметил

"commands": [{ "command":"extension.sayHello", "title":"Hello World" }]

раздел package.json, но почему-то мне не удается собрать все это вместе, чтобы получить простое, работающее расширение по сравнению с расширением кода. В обучающих видео на YouTube каждый может просто нажать F5 после запуска VS Code, чего я не могу. Как-то довольно странно.

Любая помощь приветствуется! Заранее спасибо.

РЕДАКТИРОВАТЬ: дополнительная информация.

Когда я активировал vs code, чтобы показать все исключения (даже обработанные), vs код останавливается в следующей точке (см. По умолчанию:)

в internal / process / stdio.js (основной модуль)

// ...
case 'PIPE':
case 'TCP':
  var net = require('net');
  stream = new net.Socket({
    fd: fd,
    readable: false,
    writable: true
  });
  stream._type = 'pipe';
  break;

default:
  // VS CODE STOPS AT THE LINE FOLLOWING!
  // Probably an error on in uv_guess_handle()
  throw new Error('Implement me. Unknown stream file type!');
}
// Ignore stream errors.stream.on('error', function() {});
  } catch (error) {
stream = createDevNull();
}
//...

Надеюсь, это поможет :(


person jlang    schedule 27.06.2016    source источник


Ответы (1)


Я решил свою проблему, внимательно прочитав руководство. В учебнике рассказывается, как активировать палитру команд, нажав F1, а не CTRL P. Это решило мою проблему.

Я ничего не менял в коде; скорее, кажется важным нажать F1 вместо [CTRL] + [P], несмотря на то, что на самом деле это вызывает тот же ввод. Мне все еще интересно, зачем различать CTRL + P и F1, если оба вызывают один и тот же элемент управления. : /

Надеюсь, это поможет и другим новичкам. ваше здоровье!

person jlang    schedule 27.06.2016