Warning: session_start(): open(/var/lib/php/sessions/sess_gruftrs1q7c3mm50cag8a445ov, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
!7
// fixes typing "|", "{", "[", "]", "}", "\", "@" and "~" in VNC on German keyboard
cmodule VNCFixer > DynPrintLogAndEnabled {
transient new LS shouldSend;
transient S computerID;
switchable bool verbose;
start {
dm_requireLinuxWindowList(); // inZOrder doesn't have to be set anymore
dm_startKeyLogger();
dm_vmBus_onMessage keyUp(voidfunc(int keyCode, int modifiers) {
if (nempty(shouldSend) && keyCode == 56) { // Alt+Gr released
switch to q();
LS sending = getAndClearList(shouldSend);
print("Sending " + sending + " to " + computerID);
for (S key : sending)
dm_evalOnOtherMachine(computerID, "robot_pressAndRelease_" + key + "_englishLayout();");
}
});
dm_vmBus_onMessage keyDown_raw(voidfunc(final int rawCode, int modifiers) {
if (enabled && modifiers == 128) {
switch to q();
//robot_keyRelease(KeyEvent.VK_ALT_GRAPH); // doesn't work, wait for modifier release instead
//S activeWindow = getString(first((L) dm_call(dm_linuxWindowList(), 'getData)), 'windowTitle);
S activeWindowID = linux_activeWindowID();
S activeWindow = (S) dm_call(dm_linuxWindowList(), 'titleForWindowID, activeWindowID);
if (cic(activeWindow, "X desktop (smartbot.")) computerID = "mqqgnosmbjvj";
else if (cic(activeWindow, "X desktop (onfire.")) computerID = "jozkyjcghlvl";
else if (cic(activeWindow, "X desktop (vmd41736")) computerID = "whxojlpjdney";
else if (cic(activeWindow, "X desktop (vm13548")) computerID = "hpgrupgrauku";
else if (cic(activeWindow, "X desktop (c8.")) computerID = "mqqgnosmbjvj";
else if (cicOneOf(activeWindow, "X desktop (big", "X desktop (ns57")) computerID = "pzhvpgtvlbxg";
else if (cic(activeWindow, "X desktop (cruddie.")) computerID = "bhatertpkbcr";
else {
if (verbose) print("No matching window (" + activeWindowID + "/" + activeWindow + ")");
shouldSend.clear();
ret;
}
print("Got computer ID: " + computerID + ", rawCode: " + rawCode);
if (rawCode == 124) shouldSend.add("vbar");
else if (rawCode == 123 || rawCode == 55) shouldSend.add("openingCurlyBracket");
else if (rawCode == 125 || rawCode == 48) shouldSend.add("closingCurlyBracket");
else if (rawCode == 91) shouldSend.add("openingSquareBracket");
else if (rawCode == 93) shouldSend.add("closingSquareBracket");
else if (rawCode == 64) shouldSend.add("at");
else if (rawCode == 92) shouldSend.add("backslash");
else if (rawCode == 126) shouldSend.add("tilde");
}
});
}
}