#visual-studio-code
#visual-studio-code
Вопрос:
Я настраиваю код Visual Studio в Linux.
Поскольку компьютер является общим, размер моей $HOME
папки ограничен, что не оставляет места для расширений (которые хранятся в $HOME/.vscode/
), и мои попытки установить их терпят неудачу.
У меня достаточно места в другом каталоге разработки, но я не смог найти способ указать Visual Studio Code использовать другой путь, а не $HOME
для глобальной .vscode
папки.
Есть ли способ сделать это без изменения моего $HOME
?
Редактировать
Хотя предложение в комментарии решило проблему установки расширений в другую папку — .cache
в моей папке есть ОГРОМНАЯ папка, которая заполняется vscode $HOME
…
Есть ли способ каким-то образом изменить путь к этому?
Комментарии:
1. вы пробовали использовать опцию командной строки
--extensions-dir
и--user-data-dir
, code.visualstudio.com/docs/editor /…2. Да! Это помогло.
3. Почему бы вам не создать папку на диске, в которой она вам нужна, и не связать ее со своей домашней папкой с помощью
ln -s <source path> /home/$USER/.vscode
4. могу ли я использовать этот трюк для перенаправления папки .cache?
5. Привет @so.very.tired, просто в качестве пояснения: чего вы хотите добиться, так это чтобы все занимало значительное место на диске за пределами
$HOME
? Пока это достигается, наличие, например, пользовательских настроек$HOME
не является проблемой?
Ответ №1:
Некоторые параметры в порядке рекомендации:
Используйте пользовательские каталоги для расширений и пользовательских данных
Вероятно, ваш лучший вариант — указать VS Code использовать пользовательские пути для расширений и пользовательских данных. Это сработало бы, поскольку дисковое пространство занимают папки расширений и кэша, а папки кэша расположены в папке пользовательских данных.
Вы предоставляете пользовательские пути в качестве аргументов командной строки при вызове VS Code. Используя /mnt/extdir/vsc-ext/
и /mnt/extdir/vsc-user-data/
в качестве примеров для желаемых внешних каталогов, вы бы использовали:
$ code --extensions-dir /mnt/extdir/vsc-ext/ --user-data-dir /mnt/extdir/vsc-user-data/ .
Вы можете добавить псевдоним в сценарий запуска оболочки, чтобы облегчить это:
alias code='code --extensions-dir /mnt/extdir/vsc-ext/ --user-data-dir /mnt/extdir/vsc-user-data/'
Затем вы можете продолжать использовать just, например code .
, как обычно, но пусть VS Code использует внешние каталоги для расширений и кэша.
--extensions-dir <dir>
Задайте корневой путь для расширений. Не имеет никакого эффекта в переносном режиме.
--user-data-dir <dir>
Указывает каталог, в котором хранятся пользовательские данные, что полезно при запуске от имени root. Не имеет никакого эффекта в переносном режиме.
Просто примечание: я выполнил следующее, чтобы подтвердить, что папки кэша на самом деле находятся в каталоге пользовательских данных:
$ mkdir vs-user-data amp;amp; code --user-data-dir vs-user-data . amp;amp; sleep 3 amp;amp; ls vs-user-data | grep -i cache
CachedData
Code Cache
GPUCache
Используйте портативный режим
При использовании переносимого режима (документация) все пользовательские данные хранятся в выбранном вами каталоге установки.
Вероятно, в вашем случае это будет работать нормально, но недостатком будет нестандартный способ установки и усложнение обновления VS Code.
Используйте символические ссылки
Это, вероятно, тоже сработало бы, но было бы худшим вариантом. Другие решения, приведенные выше, официально поддерживаются и более надежны.