LinuxJavaFixes

LinuxJavaFixes

  • Owner: zheludkovm/LinuxJavaFixes
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

#LinuxJavaFixes

Simple javaagent to fix problems in linux with non latin hotkeys in gui java applications.

Aimed to walkaround bug with java gui apps: "Hotkeys not functional in non-latin keyboard layout in 13.10 - 16.04" https://bugs.launchpad.net/unity/+bug/1226962

Swing java apps (IntelliJ Idea, Oracle SQL Developer etc.)

Copy to any directory 2 files:

LinuxJavaFixes-1.0.0-SNAPSHOT.jar

javassist-3.12.1.GA.jar

add

-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

to java run string

Examples:

SoapUI

Add line to soapui.sh.

JAVA_OPTS="$JAVA_OPTS java -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

Oracle SQL Developer

Add line to sqldeveloper/ide/bin/jdk.conf.

AddVMOption -javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

IntelliJ Idea

Add line to idea64.vmoptions or idea.vmoptions

-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar

Eclipse

Copy to any directory 2 files:

LinuxJavaFixes-1.0.0-SNAPSHOT.jar

javassist-3.12.1.GA.jar

Add following line to eclipse.ini.

-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt

Advanced part

Modify kaybindings for swing apps in case non russian layout

If you want another mapping you can create it by yourself:

  • run any app with java vm option -javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=print
  • after that utily begin print to console entered symbol codes using format

XKeysymPatchAgent.keysym=[hex code]

  • then create file using format [hex code]=[latin code of the same button]

Example:

6ca=Q

6c3=W

etc.

  • replace hex codes wuth yours
  • use following option to run app with custom mapping:

-javaagent:[path to directory with jar files]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=[your mapping file]

Modify keybindings for swt in case non russian layout

  • add following line to eclipse.ini

-javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:print

  • then grab codes and create properties file with mapping

[your locale key]=[latin key]

  • then run eclipse wuth following config

-javaagent:[path]/LinuxJavaFixes-1.0.0-SNAPSHOT.jar=swt:[path to your mapping file]

Main metrics

Overview
Name With Ownerzheludkovm/LinuxJavaFixes
Primary LanguageJava
Program languageJava (Language Count: 1)
Platform
License:Other
所有者活动
Created At2014-02-01 19:13:31
Pushed At2017-06-08 00:33:09
Last Commit At2016-10-31 00:16:55
Release Count0
用户参与
Stargazers Count428
Watchers Count26
Fork Count32
Commits Count38
Has Issues Enabled
Issues Count13
Issue Open Count4
Pull Requests Count3
Pull Requests Open Count1
Pull Requests Close Count1
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private