Comment vscode settings and tasks

This commit is contained in:
Matthew Strasiotto 2022-04-23 19:57:31 +10:00
parent 7735d7e402
commit 10e53111ea
3 changed files with 22 additions and 9 deletions

8
.vscode/launch.json vendored
View File

@ -1,9 +1,7 @@
{ {
// Use IntelliSense to learn about possible attributes. // Paths and plugin names are configured in settings.json
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0", "version": "0.2.0",
"configurations": [ "configurations": [
{ {
"type": "coreclr", "type": "coreclr",
"name": "Launch", "name": "Launch",
@ -18,4 +16,4 @@
"cwd": "${config:jellyfinDir}", "cwd": "${config:jellyfinDir}",
} }
] ]
} }

View File

@ -1,6 +1,15 @@
{ {
// jellyfinDir : The directory of the cloned jellyfin server project
// This needs to be built once before it can be used
"jellyfinDir" : "${workspaceFolder}/../jellyfin/Jellyfin.Server", "jellyfinDir" : "${workspaceFolder}/../jellyfin/Jellyfin.Server",
// jellyfinWebDir : The directory of the cloned jellyfin-web project
// This needs to be built once before it can be used
"jellyfinWebDir" : "${workspaceFolder}/../jellyfin-web", "jellyfinWebDir" : "${workspaceFolder}/../jellyfin-web",
// jellyfinDataDir : the root data directory for a running jellyfin instance
// This is where jellyfin stores its configs, plugins, metadata etc
// This is platform specific by default, but on Windows defaults to
// ${env:LOCALAPPDATA}/jellyfin
"jellyfinDataDir" : "${env:LOCALAPPDATA}/jellyfin", "jellyfinDataDir" : "${env:LOCALAPPDATA}/jellyfin",
// The name of the plugin
"pluginName" : "Jellyfin.Plugin.Template", "pluginName" : "Jellyfin.Plugin.Template",
} }

14
.vscode/tasks.json vendored
View File

@ -1,15 +1,16 @@
{ {
// See https://go.microsoft.com/fwlink/?LinkId=733558 // Paths and plugin name are configured in settings.json
// for the documentation about the tasks.json format
"version": "2.0.0", "version": "2.0.0",
"tasks": [ "tasks": [
{ {
// A chain task - build the plugin, then copy it to your
// jellyfin server's plugin directory
"label": "build-and-copy", "label": "build-and-copy",
"dependsOrder": "sequence", "dependsOrder": "sequence",
"dependsOn": ["build", "make-plugin-dir", "copy-dll"] "dependsOn": ["build", "make-plugin-dir", "copy-dll"]
}, },
{ {
// Build the plugin
"label": "build", "label": "build",
"command": "dotnet", "command": "dotnet",
"type": "shell", "type": "shell",
@ -26,6 +27,7 @@
"problemMatcher": "$msCompile" "problemMatcher": "$msCompile"
}, },
{ {
// Ensure the plugin directory exists before trying to use it
"label": "make-plugin-dir", "label": "make-plugin-dir",
"type": "shell", "type": "shell",
"command": "mkdir", "command": "mkdir",
@ -36,13 +38,17 @@
] ]
}, },
{ {
// Copy the plugin dll to the jellyfin plugin install path
// This command copies every .dll from the build directory to the plugin dir
// Usually, you probablly only need ${config:pluginName}.dll
// But some plugins may bundle extra requirements
"label": "copy-dll", "label": "copy-dll",
"type": "shell", "type": "shell",
"command": "cp", "command": "cp",
"args": [ "args": [
"./${config:pluginName}/bin/Debug/net6.0/publish/*", "./${config:pluginName}/bin/Debug/net6.0/publish/*",
"${config:jellyfinDataDir}/plugins/${config:pluginName}/" "${config:jellyfinDataDir}/plugins/${config:pluginName}/"
] ]
}, },
] ]