diff --git a/src/Monaco/index.html b/src/Monaco/index.html
index 020c4c3c33..54f7524225 100644
--- a/src/Monaco/index.html
+++ b/src/Monaco/index.html
@@ -9,17 +9,19 @@
// `theme` can be "vs" for light theme or "vs-dark" for dark theme
// `lang` is the language of the file
// `wrap` if the editor is wrapping or not
+ // `minimap` if the minimap is shown
+ // `contextMenu` whether to use the Monaco context menu. The built-in context menu
+ // doesn't work in Peek, so we set this to false and create a custom one
var theme = ("[[PT_THEME]]" == "dark") ? "vs-dark" : "vs";
- var lang = "[[PT_LANG]]";
- var wrap = ([[PT_WRAP]] == 1) ? true : false;
-
- var base64code = "[[PT_CODE]]";
-
- var stickyScroll = ([[PT_STICKY_SCROLL]] == 1) ? true : false;
-
+ var wrap = [[PT_WRAP]];
+ var minimap = [[PT_MINIMAP]];
+ var stickyScroll = [[PT_STICKY_SCROLL]];
var fontSize = [[PT_FONT_SIZE]];
- var contextMenu = ([[PT_CONTEXTMENU]] == 1) ? true : false;
+
+ var lang = "[[PT_LANG]]";
+ var base64code = "[[PT_CODE]]";
+ var contextMenu = [[PT_CONTEXTMENU]];
var editor;
@@ -29,12 +31,13 @@
}).join(''));
function runToggleTextWrapCommand() {
- if (wrap) {
- editor.updateOptions({ wordWrap: 'off' })
- } else {
- editor.updateOptions({ wordWrap: 'on' })
- }
wrap = !wrap;
+ editor.updateOptions({ wordWrap: wrap ? 'on' : 'off' });
+ }
+
+ function runToggleMinimap() {
+ minimap = !minimap;
+ editor.updateOptions({minimap: {enabled: minimap}});
}
function runCopyCommand() {
@@ -99,8 +102,8 @@
language: lang, // Sets language of the code
readOnly: true, // Sets to readonly
theme: 'theme', // Sets editor theme
- minimap: { enabled: false }, // Disables minimap
- lineNumbersMinChars: '3', // Width of the line numbers
+ minimap: { enabled: minimap }, // Controls if minimap is shown
+ lineNumbersMinChars: 3, // Width of the line numbers
contextmenu: contextMenu,
scrollbar: {
// Deactivate shadows
@@ -135,10 +138,20 @@
contextMenuOrder: 100,
// Method that will be executed when the action is triggered.
- // @param editor The editor instance is passed in as a convenience
- run: function (ed) {
- runToggleTextWrapCommand();
- }
+ run: runToggleTextWrapCommand
+ });
+
+ editor.addAction({
+ id: 'toggle-minimap',
+
+ label: 'Toggle minimap',
+
+ contextMenuGroupId: 'cutcopypaste',
+
+ contextMenuOrder: 100,
+
+ // Method that will be executed when the action is triggered.
+ run: runToggleMinimap
});
onContextMenu();
@@ -166,4 +179,4 @@
}