o
    %²ÊGo  ã                   @   sF   d Z ddlZddlmZ dZdd„ Zddd„Zdd	d
„Zg aeƒ  dS )z©
Helper Module for Locale settings

This module is based on a ROX module (LGPL):

http://cvs.sourceforge.net/viewcvs.py/rox/ROX-Lib2/python/rox/i18n.py?rev=1.3&view=log
é    N)Ú	normalizez?(\[([a-zA-Z]+)(_[a-zA-Z]+)?(\.[a-zA-Z\-0-9]+)?(@[a-zA-Z]+)?\])?c                 C   s  t | ƒ} d}d}d}d}|  d¡}|dkr&| |d … }| d |… } ||O }nd}|  d¡}d}|dkr9| d |… } |  d¡}|dkrS| |d … }| d |… } ||O }nd}| }	g }
t|d ƒD ]&}|| @ s…|	}||@ rp||7 }||@ rx||7 }||@ r€||7 }|
 |¡ q_|
 ¡  |
S )	Né   é   é   r   ú@Ú Ú.Ú_)r   ÚfindÚrangeÚappendÚreverse)ÚlocaleÚCOMPONENT_CODESETÚCOMPONENT_MODIFIERÚCOMPONENT_TERRITORYÚmaskÚposÚmodifierÚcodesetÚ	territoryÚlanguageÚretÚiÚval© r   ú</var/www/html/env/lib/python3.10/site-packages/xdg/Locale.pyÚ_expand_lang   sB   






€r   c                 C   sf   | d u rg } dD ]}t j |¡}|r| d¡}  nqg }| D ]}t|ƒD ]}||vr/| |¡ q$q|S )N)ÚLANGUAGEÚLC_ALLÚLC_MESSAGESÚLANGú:)ÚosÚenvironÚgetÚsplitr   r   )Ú	languagesÚenvarr   ÚnelangsÚlangÚnelangr   r   r   Úexpand_languages3   s    
þ
€þr,   c                 C   s   | r	t | gƒad S t ƒ ad S ©N)r,   Úlangs)r   r   r   r   ÚupdateG   s   
r/   r-   )	Ú__doc__r#   r   r   Úregexr   r,   r/   r.   r   r   r   r   Ú<module>   s    
%

