mirror of
https://github.com/lilydjwg/fcitx.vim.git
synced 2025-12-26 18:14:57 +08:00
if current im is rime, return rime's schema name
This commit is contained in:
parent
d79d816e24
commit
eb62569b3b
1 changed files with 13 additions and 4 deletions
|
|
@ -3,11 +3,12 @@ import functools
|
|||
|
||||
import dbus
|
||||
|
||||
class FcitxComm():
|
||||
class FcitxComm:
|
||||
def __init__(self):
|
||||
bus = dbus.SessionBus()
|
||||
self.bus = bus = dbus.SessionBus()
|
||||
obj = bus.get_object('org.fcitx.Fcitx5', '/controller')
|
||||
self.fcitx = dbus.Interface(obj, dbus_interface='org.fcitx.Fcitx.Controller1')
|
||||
self._rime = None
|
||||
|
||||
def status(self):
|
||||
return self.fcitx.State() == 2
|
||||
|
|
@ -19,9 +20,17 @@ class FcitxComm():
|
|||
self.fcitx.Deactivate()
|
||||
|
||||
def current(self):
|
||||
return self.fcitx.CurrentInputMethod()
|
||||
im = self.fcitx.CurrentInputMethod()
|
||||
if im == 'rime':
|
||||
return self._get_rime().GetCurrentSchema()
|
||||
|
||||
class FcitxRimeComm():
|
||||
def _get_rime(self):
|
||||
if self._rime is None:
|
||||
obj = self.bus.get_object('org.fcitx.Fcitx5', '/rime')
|
||||
self._rime = dbus.Interface(obj, dbus_interface='org.fcitx.Fcitx.Rime1')
|
||||
return self._rime
|
||||
|
||||
class FcitxRimeComm:
|
||||
def __init__(self):
|
||||
bus = dbus.SessionBus()
|
||||
obj = bus.get_object('org.fcitx.Fcitx5', '/rime')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue