|
1 |
| -LinuxJavaFixes |
2 |
| -============ |
| 1 | +#LinuxJavaFixes |
3 | 2 |
|
4 | 3 | Simple javaagent to fix problems in linux with non latin hotkeys in gui java applications.
|
5 | 4 |
|
6 | 5 | Aimed to walkaround bug with java gui apps: "Hotkeys not functional in non-latin keyboard layout in 13.10 and 14.04" https://bugs.launchpad.net/unity/+bug/1226962
|
7 | 6 |
|
8 |
| -============ |
9 |
| -A. Swing java apps (intellij idea, oracle sql developer etc) |
| 7 | +## Swing java apps (IntelliJ Idea, Oracle SQL Developer etc.) |
10 | 8 |
|
11 |
| -copy to any directory 2 files : |
| 9 | +Copy to any directory 2 files: |
12 | 10 |
|
13 |
| -LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
14 |
| - |
15 |
| -javassist-3.12.1.GA.jar |
| 11 | +**LinuxJavaFixes-1.0.0-SNAPSHOT.jar** |
16 | 12 |
|
| 13 | +**javassist-3.12.1.GA.jar** |
17 | 14 |
|
18 | 15 | add
|
19 | 16 |
|
20 |
| --javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
| 17 | +`-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar` |
21 | 18 |
|
22 | 19 | to java run string
|
23 | 20 |
|
24 |
| -Examples : |
25 |
| - |
26 |
| --soapui |
27 |
| - |
28 |
| - add line to soapui.sh |
| 21 | +#### Examples: |
29 | 22 |
|
30 |
| - JAVA_OPTS="$JAVA_OPTS java -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
| 23 | +##### SoapUI |
31 | 24 |
|
32 |
| --oracle sqldeveloper |
| 25 | +Add line to **soapui.sh**. |
33 | 26 |
|
34 |
| - add line to sqldeveloper/ide/bin/jdk.conf |
| 27 | +`JAVA_OPTS="$JAVA_OPTS java -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar` |
35 | 28 |
|
36 |
| - AddVMOption -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
| 29 | +##### Oracle SQL Developer |
37 | 30 |
|
38 |
| --intellij idea |
| 31 | +Add line to **sqldeveloper/ide/bin/jdk.conf**. |
39 | 32 |
|
40 |
| - add line to idea64.vmoptions or idea.vmoptions |
| 33 | +`AddVMOption -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar` |
41 | 34 |
|
42 |
| - -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
| 35 | +##### IntelliJ Idea |
43 | 36 |
|
44 |
| -============ |
| 37 | +Add line to **idea64.vmoptions* or *idea.vmoptions** |
45 | 38 |
|
46 |
| -B. Eclipse |
| 39 | +`-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar` |
47 | 40 |
|
48 |
| -copy to any directory 2 files : |
| 41 | +## Eclipse |
49 | 42 |
|
50 |
| -LinuxJavaFixes-1.0.0-SNAPSHOT.jar |
| 43 | +Copy to any directory 2 files: |
51 | 44 |
|
52 |
| -javassist-3.12.1.GA.jar |
| 45 | +**LinuxJavaFixes-1.0.0-SNAPSHOT.jar** |
53 | 46 |
|
54 |
| -add following line to eclipse.ini |
| 47 | +**javassist-3.12.1.GA.jar** |
55 | 48 |
|
56 |
| --javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt |
| 49 | +Add following line to **eclipse.ini**. |
57 | 50 |
|
| 51 | +`-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt` |
58 | 52 |
|
59 |
| -============ |
| 53 | +## Advanced part |
60 | 54 |
|
61 |
| -Advanced part |
62 |
| - |
63 |
| -============ |
64 |
| -C. Modify kaybindings for swing apps in case non russian layout |
| 55 | +### Modify kaybindings for swing apps in case non russian layout |
65 | 56 |
|
66 |
| -if you want another mapping you can create it by yourself : |
67 |
| - |
68 |
| -run any app with java vm option -javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=print |
| 57 | +If you want another mapping you can create it by yourself: |
69 | 58 |
|
70 |
| -after that utily begin print to console entered symbol codes using format |
| 59 | + - run any app with java vm option `-javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=print` |
| 60 | + - after that utily begin print to console entered symbol codes using format |
71 | 61 |
|
72 |
| -XKeysymPatchAgent.keysym=[hex code] |
| 62 | +`XKeysymPatchAgent.keysym=[hex code]` |
73 | 63 |
|
74 |
| -then create file using format [hex code]=[latin code of the same button] |
| 64 | + - then create file using format `[hex code]=[latin code of the same button]` |
75 | 65 |
|
76 |
| -for example |
| 66 | +#### Example: |
77 | 67 |
|
| 68 | +``` |
78 | 69 | 6ca=Q
|
79 | 70 |
|
80 | 71 | 6c3=W
|
| 72 | +``` |
| 73 | +etc. |
81 | 74 |
|
82 |
| -etc |
83 |
| - |
84 |
| -and replace hex codes wuth yours |
85 |
| - |
86 |
| -use following option to run app with custom mapping : |
87 |
| - |
88 |
| --javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=[your mapping file] |
89 |
| - |
90 |
| -============ |
91 |
| -D. Modify keybindings for swt in case non russian layout |
| 75 | + - replace hex codes wuth yours |
| 76 | + - use following option to run app with custom mapping: |
92 | 77 |
|
93 |
| -add following line to eclipse.ini |
| 78 | +`-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=[your mapping file]` |
94 | 79 |
|
95 |
| --javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:print |
| 80 | +### Modify keybindings for swt in case non russian layout |
96 | 81 |
|
97 |
| -then grab codes and create properties file with mapping |
| 82 | + - add following line to eclipse.ini |
98 | 83 |
|
99 |
| -[your locale key]=[latin key] |
| 84 | +`-javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:print` |
100 | 85 |
|
101 |
| -then run eclipse wuth following config |
| 86 | + - then grab codes and create properties file with mapping |
102 | 87 |
|
103 |
| --javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:[path to your mapping file] |
| 88 | +`[your locale key]=[latin key]` |
104 | 89 |
|
| 90 | + - then run eclipse wuth following config |
105 | 91 |
|
| 92 | +`-javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:[path to your mapping file]` |
0 commit comments