diff --git a/CHANGELOG.md b/CHANGELOG.md index 965d29c..c917e12 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +### 0.10.4 + +- Fixed an issue preventing the selected colour scheme from being applied + ### 0.10.1 - Fix broken asset path diff --git a/package.json b/package.json index 1058944..3f8abba 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "vscode-print", "displayName": "Print", "description": "Rendered Markdown, coloured code.", - "version": "0.10.1", + "version": "0.10.4", "icon": "assets/vscode-print-128.png", "author": { "name": "Peter Wone", diff --git a/src/extension.ts b/src/extension.ts index 45a7c06..674c2ba 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -25,10 +25,10 @@ localize("FILE_LIST_DISABLED", "x"); let server: http.Server | undefined; const testFlags = new Set(); -let colourScheme = vscode.workspace.getConfiguration("print", null).colourScheme; -if (captionByFilename[colourScheme]) { +if (captionByFilename[vscode.workspace.getConfiguration("print").colourScheme]) { // legacy value, convert - vscode.workspace.getConfiguration("print", null).update("colourScheme", captionByFilename[colourScheme]); + let cbf = captionByFilename[vscode.workspace.getConfiguration("print").colourScheme]; + vscode.workspace.getConfiguration("print").update("colourScheme", cbf); } const printSessions = new Map(); let _gc: NodeJS.Timer; diff --git a/src/print-session.ts b/src/print-session.ts index 5ed828e..0305044 100644 --- a/src/print-session.ts +++ b/src/print-session.ts @@ -12,8 +12,6 @@ import { defaultCss, filenameByCaption } from "./imports"; const defaultMarkdownCss: string = require("./css/default-markdown.css").default.toString(); const lineNumbersCss: string = require("./css/line-numbers.css").default.toString(); let settingsCss: string = require("./css/settings.css").default.toString(); -const colourSchemeName: string = filenameByCaption[vscode.workspace.getConfiguration("print", null).colourScheme]; -const colourSchemeCss: string = require(`highlight.js/styles/${colourSchemeName}.css`).default.toString(); const browserLaunchMap: any = { darwin: "open", linux: "xdg-open", win32: "start" }; export class PrintSession { @@ -146,9 +144,14 @@ export class PrintSession { logger.debug(`Responding to vsc-print.resource request for ${urlParts[3]} in session ${urlParts[1]}`); switch (urlParts[3]) { case "colour-scheme.css": + let colourScheme = vscode.workspace.getConfiguration("print").colourScheme; + let colourSchemeName: string = filenameByCaption[colourScheme]; + logger.debug(`Loading colour scheme from ${colourSchemeName}`); + let colourSchemeCss: string = require(`highlight.js/styles/${colourSchemeName}.css`).default.toString(); response.writeHead(200, { "Content-Type": "text/css; charset=utf-8", - "Content-Length": colourSchemeCss.length + "Content-Length": colourSchemeCss.length, + 'Cache-Control': 'no-cache' }); response.end(colourSchemeCss); break; diff --git a/src/test/test-docs/some.cs b/src/test/test-docs/some.cs new file mode 100644 index 0000000..2999a5b --- /dev/null +++ b/src/test/test-docs/some.cs @@ -0,0 +1,17 @@ +using System.IO.Compression; + +#pragma warning disable 414, 3021 + +namespace MyApplication +{ + [Obsolete("...")] + class Program : IInterface + { + public static List JustDoIt(int count) + { + Span numbers = stackalloc int[length]; + Console.WriteLine($"Hello {Name}!"); + return new List(new int[] { 1, 2, 3 }) + } + } +} \ No newline at end of file