Develop input methods for Windows easily with Python and node.js
Latest commit 490806b Mar 1, 2018
Permalink
Failed to load latest commit information.
PIMELauncher Support restarting backend servers from within the PIMEDebugConsole t… May 29, 2017
PIMETextService Update libIME to include the fix that update language buttons properly. May 4, 2017
cmake Statically link VC++ runtime for release builds. Aug 16, 2015
installer Typo Jan 18, 2018
jsoncpp @ a304d61 Make use of C++11 smart pointers to reduce potential memory errors. Dec 15, 2016
libIME @ 592b8d8 Move libchewing python binding to its own package so it can be used b… May 29, 2017
libuv @ 3a1588c Use simple I/O redirect to communicate with the backend servers inste… Apr 20, 2017
node chore: Upgrade node version to 6.10.2 Apr 22, 2017
python cheliu: maxCharLength=4 Mar 19, 2018
tests Add a tool used to automatically test massive text input for chewing. Dec 17, 2016
.editorconfig Improve the IPC mechanism to make it more reliable and did some code … Jun 25, 2016
.gitmodules Add a customized libuv version to the build scripts for later use. Apr 9, 2017
APACHE-2.0.txt Add License information for Tornado web framework and Apache 2.0 lice… Mar 27, 2016
AUTHORS.txt Add missing information about authors and licenses. Aug 29, 2016
CMakeLists.txt Fix a bug in the CMakeLists.txt that causes failure to build with VC … Apr 29, 2017
HACKING.txt Update the hacking guide. Nov 21, 2016
LGPL-2.0.txt Code cleanup and add missing license files. Feb 6, 2016
LICENSE.txt Add a tool used to automatically test massive text input for chewing. Dec 17, 2016
PSF.txt Code cleanup and add missing license files. Feb 6, 2016
README.md Add release badge Feb 13, 2017
appveyor.after_build.bat Implement AppVeyor CI automated build script. Oct 27, 2016
appveyor.artifacts.ps1 Dynamic artifacts name. Oct 27, 2016
appveyor.yml CI: Disable "choco install nsis" Mar 19, 2018
backends.json Use simple I/O redirect to communicate with the backend servers inste… Apr 20, 2017
build.bat Implement AppVeyor CI automated build script. Oct 27, 2016
version.txt Bump version number to 1.1.0. May 20, 2017

README.md

PIME

Build status GitHub release

Implement input methods easily for Windows via Text Services Framework:

  • LibIME contains a library which aims to be a simple wrapper for Windows Text Service Framework (TSF).
  • PIMETextService contains an backbone implementation of Windows text service for using libIME.
  • The python server part requires python 3.x and pywin32 package.

All parts are licensed under GNU LGPL v2.1 license.

Development

Tool Requirements

How to Build

  • Get source from github

    git clone https://github.com/EasyIME/PIME.git
    cd PIME
    git submodule update --init
    
  • Use one of the following CMake commands to generate Visual Studio project

    cmake -G "Visual Studio 14 2015" <path to PIME source folder>
    cmake -G "Visual Studio 14 2015 Win64" <path to PIME source folder>
    
  • Open generated project with Visual Studio and build it

TSF References

Windows ACL (Access Control List) references

Install

  • Copy PIMETextService.dll to C:\Program Files (X86)\PIME\x86.

  • Copy PIMETextService.dll to C:\Program Files (X86)\PIME\x64.

  • Copy the folder python to C:\Program Files (X86)\PIME\

  • Copy the folder node to C:\Program Files (X86)\PIME\

  • Use regsvr32 to register PIMETextService.dll. 64-bit system need to register both 32-bit and 64-bit PIMETextService.dll

    regsvr32 "C:\Program Files (X86)\PIME\x86\PIMETextService.dll" (run as administrator)
    regsvr32 "C:\Program Files (X86)\PIME\x64\PIMETextService.dll" (run as administrator)
    
  • NOTICE: the regsvr32 command needs to be run as Administrator. Otherwise you'll get access denied error.

  • In Windows 8, if you put the dlls in places other than C:\Windows or C:\Program Files, they will not be accessible in metro apps.

Uninstall

  • Use regsvr32 to unregister PIMETextService.dll. 64-bit system need to register both 32-bit and 64-bit PIMETextService.dll

    regsvr32 /u "C:\Program Files (X86)\PIME\x86\PIMETextService.dll" (run as administrator)
    regsvr32 /u "C:\Program Files (X86)\PIME\x64\PIMETextService.dll" (run as administrator)
    
  • Remove C:\Program Files (X86)\PIME

  • NOTICE: the regsvr32 command needs to be run as Administrator. Otherwise you'll get access denied error.

Bug Report

Please report any issue to here.