mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-06-21 01:25:55 +02:00
parent
bc65a18f3c
commit
967be4451a
2 changed files with 315 additions and 36 deletions
|
@ -72,63 +72,223 @@ class RegisterEventHelper {
|
||||||
this.registerLoadHandler(() => {
|
this.registerLoadHandler(() => {
|
||||||
//@ts-ignore
|
//@ts-ignore
|
||||||
$("input[type=text], input[type=search]").unbind("keydown").keydown(function (event) {
|
$("input[type=text], input[type=search]").unbind("keydown").keydown(function (event) {
|
||||||
let greek = event.altKey;
|
let use_special_char = event.altKey;
|
||||||
|
|
||||||
let greek_char = "";
|
let greek_char = "";
|
||||||
if (greek){
|
if (use_special_char){
|
||||||
|
//Use the key property to determine the greek letter (as it is independent of the keyboard layout)
|
||||||
switch(event.key) {
|
switch(event.key) {
|
||||||
case "w": //Omega
|
//Greek letters
|
||||||
greek_char = '\u2126';
|
case "a": //Alpha (lowercase)
|
||||||
break;
|
|
||||||
case "u":
|
|
||||||
case "m": //Micro
|
|
||||||
greek_char = "\u00B5";
|
|
||||||
break;
|
|
||||||
case "p": //Phi
|
|
||||||
greek_char = "\u03C6";
|
|
||||||
break;
|
|
||||||
case "a": //Alpha
|
|
||||||
greek_char = "\u03B1";
|
greek_char = "\u03B1";
|
||||||
break;
|
break;
|
||||||
case "b": //Beta
|
case "A": //Alpha (uppercase)
|
||||||
|
greek_char = "\u0391";
|
||||||
|
break;
|
||||||
|
case "b": //Beta (lowercase)
|
||||||
greek_char = "\u03B2";
|
greek_char = "\u03B2";
|
||||||
break;
|
break;
|
||||||
case "c": //Gamma
|
case "B": //Beta (uppercase)
|
||||||
|
greek_char = "\u0392";
|
||||||
|
break;
|
||||||
|
case "g": //Gamma (lowercase)
|
||||||
greek_char = "\u03B3";
|
greek_char = "\u03B3";
|
||||||
break;
|
break;
|
||||||
case "d": //Delta
|
case "G": //Gamma (uppercase)
|
||||||
|
greek_char = "\u0393";
|
||||||
|
break;
|
||||||
|
case "d": //Delta (lowercase)
|
||||||
greek_char = "\u03B4";
|
greek_char = "\u03B4";
|
||||||
break;
|
break;
|
||||||
case "l": //Pound
|
case "D": //Delta (uppercase)
|
||||||
greek_char = "\u00A3";
|
greek_char = "\u0394";
|
||||||
break;
|
break;
|
||||||
case "y": //Yen
|
case "e": //Epsilon (lowercase)
|
||||||
greek_char = "\u00A5";
|
greek_char = "\u03B5";
|
||||||
break;
|
break;
|
||||||
case "o": //Yen
|
case "E": //Epsilon (uppercase)
|
||||||
greek_char = "\u00A4";
|
greek_char = "\u0395";
|
||||||
break;
|
break;
|
||||||
case "1": //Sum symbol
|
case "z": //Zeta (lowercase)
|
||||||
greek_char = "\u2211";
|
greek_char = "\u03B6";
|
||||||
break;
|
break;
|
||||||
case "2": //Integral
|
case "Z": //Zeta (uppercase)
|
||||||
greek_char = "\u222B";
|
greek_char = "\u0396";
|
||||||
break;
|
break;
|
||||||
case "3": //Less-than or equal
|
case "h": //Eta (lowercase)
|
||||||
greek_char = "\u2264";
|
greek_char = "\u03B7";
|
||||||
break;
|
break;
|
||||||
case "4": //Greater than or equal
|
case "H": //Eta (uppercase)
|
||||||
greek_char = "\u2265";
|
greek_char = "\u0397";
|
||||||
break;
|
break;
|
||||||
case "5": //PI
|
case "q": //Theta (lowercase)
|
||||||
greek_char = "\u03c0";
|
greek_char = "\u03B8";
|
||||||
break;
|
break;
|
||||||
case "q": //Copyright
|
case "Q": //Theta (uppercase)
|
||||||
greek_char = "\u00A9";
|
greek_char = "\u0398";
|
||||||
break;
|
break;
|
||||||
case "e": //Euro
|
case "i": //Iota (lowercase)
|
||||||
greek_char = "\u20AC";
|
greek_char = "\u03B9";
|
||||||
break;
|
break;
|
||||||
|
case "I": //Iota (uppercase)
|
||||||
|
greek_char = "\u0399";
|
||||||
|
break;
|
||||||
|
case "k": //Kappa (lowercase)
|
||||||
|
greek_char = "\u03BA";
|
||||||
|
break;
|
||||||
|
case "K": //Kappa (uppercase)
|
||||||
|
greek_char = "\u039A";
|
||||||
|
break;
|
||||||
|
case "l": //Lambda (lowercase)
|
||||||
|
greek_char = "\u03BB";
|
||||||
|
break;
|
||||||
|
case "L": //Lambda (uppercase)
|
||||||
|
greek_char = "\u039B";
|
||||||
|
break;
|
||||||
|
case "m": //Mu (lowercase)
|
||||||
|
greek_char = "\u03BC";
|
||||||
|
break;
|
||||||
|
case "M": //Mu (uppercase)
|
||||||
|
greek_char = "\u039C";
|
||||||
|
break;
|
||||||
|
case "n": //Nu (lowercase)
|
||||||
|
greek_char = "\u03BD";
|
||||||
|
break;
|
||||||
|
case "N": //Nu (uppercase)
|
||||||
|
greek_char = "\u039D";
|
||||||
|
break;
|
||||||
|
case "x": //Xi (lowercase)
|
||||||
|
greek_char = "\u03BE";
|
||||||
|
break;
|
||||||
|
case "X": //Xi (uppercase)
|
||||||
|
greek_char = "\u039E";
|
||||||
|
break;
|
||||||
|
case "o": //Omicron (lowercase)
|
||||||
|
greek_char = "\u03BF";
|
||||||
|
break;
|
||||||
|
case "O": //Omicron (uppercase)
|
||||||
|
greek_char = "\u039F";
|
||||||
|
break;
|
||||||
|
case "p": //Pi (lowercase)
|
||||||
|
greek_char = "\u03C0";
|
||||||
|
break;
|
||||||
|
case "P": //Pi (uppercase)
|
||||||
|
greek_char = "\u03A0";
|
||||||
|
break;
|
||||||
|
case "r": //Rho (lowercase)
|
||||||
|
greek_char = "\u03C1";
|
||||||
|
break;
|
||||||
|
case "R": //Rho (uppercase)
|
||||||
|
greek_char = "\u03A1";
|
||||||
|
break;
|
||||||
|
case "s": //Sigma (lowercase)
|
||||||
|
greek_char = "\u03C3";
|
||||||
|
break;
|
||||||
|
case "S": //Sigma (uppercase)
|
||||||
|
greek_char = "\u03A3";
|
||||||
|
break;
|
||||||
|
case "t": //Tau (lowercase)
|
||||||
|
greek_char = "\u03C4";
|
||||||
|
break;
|
||||||
|
case "T": //Tau (uppercase)
|
||||||
|
greek_char = "\u03A4";
|
||||||
|
break;
|
||||||
|
case "u": //Upsilon (lowercase)
|
||||||
|
greek_char = "\u03C5";
|
||||||
|
break;
|
||||||
|
case "U": //Upsilon (uppercase)
|
||||||
|
greek_char = "\u03A5";
|
||||||
|
break;
|
||||||
|
case "f": //Phi (lowercase)
|
||||||
|
greek_char = "\u03C6";
|
||||||
|
break;
|
||||||
|
case "F": //Phi (uppercase)
|
||||||
|
greek_char = "\u03A6";
|
||||||
|
break;
|
||||||
|
case "c": //Chi (lowercase)
|
||||||
|
greek_char = "\u03C7";
|
||||||
|
break;
|
||||||
|
case "C": //Chi (uppercase)
|
||||||
|
greek_char = "\u03A7";
|
||||||
|
break;
|
||||||
|
case "y": //Psi (lowercase)
|
||||||
|
greek_char = "\u03C8";
|
||||||
|
break;
|
||||||
|
case "Y": //Psi (uppercase)
|
||||||
|
greek_char = "\u03A8";
|
||||||
|
break;
|
||||||
|
case "w": //Omega (lowercase)
|
||||||
|
greek_char = "\u03C9";
|
||||||
|
break;
|
||||||
|
case "W": //Omega (uppercase)
|
||||||
|
greek_char = "\u03A9";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Use keycodes for special characters as the shift char on the number keys are layout dependent
|
||||||
|
switch (event.keyCode) {
|
||||||
|
case 49: //1 key
|
||||||
|
//Product symbol on shift, sum on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u220F" : "\u2211";
|
||||||
|
break;
|
||||||
|
case 50: //2 key
|
||||||
|
//Integral on no shift, partial derivative on shift
|
||||||
|
greek_char = event.shiftKey ? "\u2202" : "\u222B";
|
||||||
|
break;
|
||||||
|
case 51: //3 key
|
||||||
|
//Less than or equal on no shift, greater than or equal on shift
|
||||||
|
greek_char = event.shiftKey ? "\u2265" : "\u2264";
|
||||||
|
break;
|
||||||
|
case 52: //4 key
|
||||||
|
//Empty set on shift, infinity on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u2205" : "\u221E";
|
||||||
|
break;
|
||||||
|
case 53: //5 key
|
||||||
|
//Not equal on shift, approx equal on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u2260" : "\u2248";
|
||||||
|
break;
|
||||||
|
case 54: //6 key
|
||||||
|
//Element of on no shift, not element of on shift
|
||||||
|
greek_char = event.shiftKey ? "\u2209" : "\u2208";
|
||||||
|
break;
|
||||||
|
case 55: //7 key
|
||||||
|
//And on shift, or on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u2227" : "\u2228";
|
||||||
|
break;
|
||||||
|
case 56: //8 key
|
||||||
|
//Proportional to on shift, angle on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u221D" : "\u2220";
|
||||||
|
break;
|
||||||
|
case 57: //9 key
|
||||||
|
//Cube root on shift, square root on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u221B" : "\u221A";
|
||||||
|
break;
|
||||||
|
case 48: //0 key
|
||||||
|
//Minus-Plus on shift, plus-minus on no shift
|
||||||
|
greek_char = event.shiftKey ? "\u2213" : "\u00B1";
|
||||||
|
break;
|
||||||
|
|
||||||
|
//Special characters
|
||||||
|
case 219: //hyphen (or ß on german layout)
|
||||||
|
//Copyright on no shift, TM on shift
|
||||||
|
greek_char = event.shiftKey ? "\u2122" : "\u00A9";
|
||||||
|
break;
|
||||||
|
case 191: //forward slash (or # on german layout)
|
||||||
|
//Generic currency on no shift, paragraph on shift
|
||||||
|
greek_char = event.shiftKey ? "\u00B6" : "\u00A4";
|
||||||
|
break;
|
||||||
|
|
||||||
|
//Currency symbols
|
||||||
|
case 192: //: or (ö on german layout)
|
||||||
|
//Euro on no shift, pound on shift
|
||||||
|
greek_char = event.shiftKey ? "\u00A3" : "\u20AC";
|
||||||
|
break;
|
||||||
|
case 221: //; or (ä on german layout)
|
||||||
|
//Yen on no shift, dollar on shift
|
||||||
|
greek_char = event.shiftKey ? "\u0024" : "\u00A5";
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(greek_char=="") return;
|
if(greek_char=="") return;
|
||||||
|
|
119
docs/usage/keybindings.md
Normal file
119
docs/usage/keybindings.md
Normal file
|
@ -0,0 +1,119 @@
|
||||||
|
---
|
||||||
|
title: Keybindings
|
||||||
|
layout: default
|
||||||
|
parent: Usage
|
||||||
|
---
|
||||||
|
|
||||||
|
# Keybindings
|
||||||
|
|
||||||
|
This page lists all the keybindings of Part-DB. Currently, there are only the special character keybindings.
|
||||||
|
|
||||||
|
## Special characters
|
||||||
|
Using the keybindings below (Alt + key) you can insert special characters into the text fields of Part-DB. This works on all text and search fields in Part-DB.
|
||||||
|
|
||||||
|
### Greek letters
|
||||||
|
|
||||||
|
| Key | Character |
|
||||||
|
|---------------------|---------------------|
|
||||||
|
| **Alt + a** | α (Alpha) |
|
||||||
|
| **Alt + Shift + A** | Α (Alpha uppercase) |
|
||||||
|
| **Alt + b** | β (Beta) |
|
||||||
|
| **Alt + Shift + B** | Β (Beta uppercase) |
|
||||||
|
| **Alt + g** | γ (Gamma) |
|
||||||
|
| **Alt + Shift + G** | Γ (Gamma uppercase) |
|
||||||
|
| **Alt + d** | δ (Delta) |
|
||||||
|
| **Alt + Shift + D** | Δ (Delta uppercase) |
|
||||||
|
| **Alt + e** | ε (Epsilon) |
|
||||||
|
| **Alt + Shift + E** | Ε (Epsilon uppercase) |
|
||||||
|
| **Alt + z** | ζ (Zeta) |
|
||||||
|
| **Alt + Shift + Z** | Ζ (Zeta uppercase) |
|
||||||
|
| **Alt + h** | η (Eta) |
|
||||||
|
| **Alt + Shift + H** | Η (Eta uppercase) |
|
||||||
|
| **Alt + q** | θ (Theta) |
|
||||||
|
| **Alt + Shift + Q** | Θ (Theta uppercase) |
|
||||||
|
| **Alt + i** | ι (Iota) |
|
||||||
|
| **Alt + Shift + I** | Ι (Iota uppercase) |
|
||||||
|
| **Alt + k** | κ (Kappa) |
|
||||||
|
| **Alt + Shift + K** | Κ (Kappa uppercase) |
|
||||||
|
| **Alt + l** | λ (Lambda) |
|
||||||
|
| **Alt + Shift + L** | Λ (Lambda uppercase) |
|
||||||
|
| **Alt + m** | μ (Mu) |
|
||||||
|
| **Alt + Shift + M** | Μ (Mu uppercase) |
|
||||||
|
| **Alt + n** | ν (Nu) |
|
||||||
|
| **Alt + Shift + N** | Ν (Nu uppercase) |
|
||||||
|
| **Alt + x** | ξ (Xi) |
|
||||||
|
| **Alt + Shift + x** | Ξ (Xi uppercase) |
|
||||||
|
| **Alt + o** | ο (Omicron) |
|
||||||
|
| **Alt + Shift + O** | Ο (Omicron uppercase) |
|
||||||
|
| **Alt + p** | π (Pi) |
|
||||||
|
| **Alt + Shift + P** | Π (Pi uppercase) |
|
||||||
|
| **Alt + r** | ρ (Rho) |
|
||||||
|
| **Alt + Shift + R** | Ρ (Rho uppercase) |
|
||||||
|
| **Alt + s** | σ (Sigma) |
|
||||||
|
| **Alt + Shift + S** | Σ (Sigma uppercase) |
|
||||||
|
| **Alt + t** | τ (Tau) |
|
||||||
|
| **Alt + Shift + T** | Τ (Tau uppercase) |
|
||||||
|
| **Alt + u** | υ (Upsilon) |
|
||||||
|
| **Alt + Shift + U** | Υ (Upsilon uppercase) |
|
||||||
|
| **Alt + f** | φ (Phi) |
|
||||||
|
| **Alt + Shift + F** | Φ (Phi uppercase) |
|
||||||
|
| **Alt + y** | ψ (Psi) |
|
||||||
|
| **Alt + Shift + Y** | Ψ (Psi uppercase) |
|
||||||
|
| **Alt + c** | χ (Chi) |
|
||||||
|
| **Alt + Shift + C** | Χ (Chi uppercase) |
|
||||||
|
| **Alt + w** | ω (Omega) |
|
||||||
|
| **Alt + Shift + W** | Ω (Omega uppercase) |
|
||||||
|
|
||||||
|
### Mathematical symbols
|
||||||
|
|
||||||
|
| Key | Character |
|
||||||
|
|----------------------|-------------------------------------------|
|
||||||
|
| **Alt + 1** | ∑ (Sum symbol) |
|
||||||
|
| **Alt + Shift + 1** | ∏ (Product symbol) |
|
||||||
|
| **Alt + 2** | ∫ (Integral symbol) |
|
||||||
|
| **Alt + Shift + 2** | ∂ (Partial derivation) |
|
||||||
|
| **Alt + 3** | ≤ (Less or equal symbol) |
|
||||||
|
| **Alt + Shift + 3** | ≥ (Greater or equal symbol) |
|
||||||
|
| **Alt + 4** | ∞ (Infinity symbol) |
|
||||||
|
| **Alt + Shift + 4** | ∅ (Empty set symbol) |
|
||||||
|
| **Alt + 5** | ≈ (Approximatley) |
|
||||||
|
| **Alt + Shift + 5** | ≠ (Not equal symbol) |
|
||||||
|
| **Alt + 6** | ∈ (Element of) |
|
||||||
|
| **Alt + Shift + 6** | ∉ (Not element of) |
|
||||||
|
| **Alt + 7** | ∨ (Logical or) |
|
||||||
|
| **Alt + Shift + 7** | ∧ (Logical and) |
|
||||||
|
| **Alt + 8** | ∠ (Angle symbol) |
|
||||||
|
| **Alt + Shift + 8** | ∝ (Proportional to) |
|
||||||
|
| **Alt + 9** | √ (Square root) |
|
||||||
|
| **Alt + Shift + 9** | ∛ (Cube root) |
|
||||||
|
| **Alt + 0** | ± (Plus minus) |
|
||||||
|
| **Alt + Shift + 0** | ∓ (Minus plus) |
|
||||||
|
|
||||||
|
### Currency symbols
|
||||||
|
|
||||||
|
Please not the following keybindings are bound to a specific keycode. The key character is not the same on all keyboards.
|
||||||
|
It is given here for a US keyboard layout.
|
||||||
|
|
||||||
|
For a German keyboard layout, replace ; with ö, and ' with ä.
|
||||||
|
|
||||||
|
| Key | Character |
|
||||||
|
|---------------------------------|---------------------------|
|
||||||
|
| **Alt + ;** (code 192) | € (Euro currency symbol) |
|
||||||
|
| **Alt + Shift + ;** (code 192) | £ (Pound currency symbol) |
|
||||||
|
| **Alt + '** (code 222) | ¥ (Yen currency symbol) |
|
||||||
|
| **Alt + Shift + '** (code 222) | $ (Dollar currency symbol) |
|
||||||
|
|
||||||
|
|
||||||
|
### Others
|
||||||
|
|
||||||
|
Please not the following keybindings are bound to a specific keycode. The key character is not the same on all keyboards.
|
||||||
|
It is given here for a US keyboard layout.
|
||||||
|
|
||||||
|
For a German keyboard layout, replace `[` with `0`, and `]` with `´`.
|
||||||
|
|
||||||
|
| Key | Character |
|
||||||
|
|--------------------------------|--------------------|
|
||||||
|
| **Alt + [** (code 219) | © (Copyright char) |
|
||||||
|
| **Alt + Shift + [** (code 219) | (Registered char) |
|
||||||
|
| **Alt + ]** (code 221) | ™ (Trademark char) |
|
||||||
|
| **Alt + Shift + ]** (code 221) | (Degree char) |
|
Loading…
Add table
Add a link
Reference in a new issue