Last active
October 25, 2025 10:43
-
Star
(183)
You must be signed in to star a gist -
Fork
(45)
You must be signed in to fork a gist
-
-
Save amunchet/4cfaf0274f3d238946f9f8f94fa9ee02 to your computer and use it in GitHub Desktop.
Revisions
-
amunchet renamed this gist
Oct 10, 2022 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewing
File renamed without changes. -
amunchet created this gist
Oct 10, 2022 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,58 @@ // ==UserScript== // @name noVNC Paste for Proxmox // @namespace http://tampermonkey.net/ // @version 0.2a // @description Pastes text into a noVNC window (for use with Proxmox specifically) // @author Chester Enright // @match https://* // @include /^.*novnc.*/ // @require http://code.jquery.com/jquery-3.3.1.min.js // @grant none // ==/UserScript== const delay = 1 ;(function () { 'use strict' window.sendString = function(text) { var el = document.getElementById("canvas-id") text.split("").forEach(x=>{ setTimeout(()=>{ var needs_shift = x.match(/[A-Z!@#$%^&*()_+{}:\"<>?~|]/) let evt if (needs_shift) { evt = new KeyboardEvent("keydown", {keyCode: 16}) el.dispatchEvent(evt) evt = new KeyboardEvent("keydown", {key: x, shiftKey: true}) el.dispatchEvent(evt) evt = new KeyboardEvent("keyup", {keyCode: 16}) el.dispatchEvent(evt) }else{ evt = new KeyboardEvent("keydown", {key: x}) } el.dispatchEvent(evt) }, delay) }) } $(document).ready(function() { setTimeout(()=>{ console.log("Starting up noVNC Copy/Paste (for Proxmox)") $("canvas").attr("id", "canvas-id") $("canvas").on("mousedown", (e)=>{ if(e.button == 2){ // Right Click navigator.clipboard.readText().then(text =>{ window.sendString(text) }) } }) }, 1000); }) })()