File: //lib/python3/dist-packages/LanguageSelector/__pycache__/ImConfig.cpython-38.pyc
U
��p_f � @ s� d dl Z d dlZd dlZG dd� de�Zedkr�e� Zede�� � ede� � � ed� e�
d� ede� � � ed � e�
d
� dS )� Nc @ s4 e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� ZdS )�ImConfigc C s d S )N� ��selfr r �;/usr/lib/python3/dist-packages/LanguageSelector/ImConfig.py�__init__
s zImConfig.__init__c C s t j�d�S )Nz/usr/bin/im-config)�os�path�existsr r r r � available s zImConfig.availablec C s( t t�ddg��� �� �}|�d� |S )N� im-configz-l�none)�sorted�
subprocess�check_output�decode�split�append)r ZinputMethodsr r r �getAvailableInputMethods s
z!ImConfig.getAvailableInputMethodsc C s> t �ddg��� �� d d� \}}}|dkr0|S d}zt�tjd� W n tjk
r^ Y d S X zt�tj �d }W n t
k
r� Y d S X tj�
d�}|s�d S d }|�d�D ]}|d kr�d
} q�q�|s�|r�|d d� dkr�|} nd} |d
kr�| }n<tj�d��r0td�D ]$}
|
�d��r
|
�� d } �q0�q
|�s:| }|S )Nr z-m� Zmissing� r ZXDG_CURRENT_DESKTOP�:)ZGNOMEZMATEZUKUIZUnityT)Zzh_Zja_Zko_Zvi_r
�defaultz/etc/X11/xinit/xinputrcZrun_im� )r r r r �locale� setlocale�LC_ALL�ErrorZ getlocale�LC_CTYPE�
ValueErrorr �environ�getr r
�open�
startswith)r ZsystemConfigZ
userConfigZ
autoConfigZsystem_confZlocZdesktop�found�valZsystem_default�liner r r �getCurrentInputMethod sD �
zImConfig.getCurrentInputMethodc C s t �dd|g� d S )Nr z-n)r �call)r �imr r r �setInputMethodB s zImConfig.setInputMethodN)�__name__�
__module__�__qualname__r r r r'