ó
    úÞ j£	  ã                  ó¤   • S SK Jr  S SKJr  S SKrS SKJr  S SKJr  S SKJr  S SK	J
r
  SS	KJr  SS
KJr   S     SS jjrSS jrSS jrSS jrg)é    )Úannotations)ÚMappingN)Úexists)Újoin)Úsplitext)Ú
check_callé   ©Úis_posix)ÚCommandErrorc                ó¤   • Uc  [         R                  OUn [        U5      n[        X0/5        g! [         a  n[        SU< S35      UeSnAff = f)a£  
Opens the given file in a text editor. If the environment variable
``EDITOR`` is set, this is taken as preference.

Otherwise, a list of commonly installed editors is tried.

If no editor matches, an :py:exc:`OSError` is raised.

:param filename: The filename to open. Will be passed  verbatim to the
    editor command.
:param environ: An optional drop-in replacement for ``os.environ``. Used
    mainly for testing.
NzError executing editor (Ú))ÚosÚenvironÚ_find_editorr   Ú	Exceptionr   )Úfilenamer   ÚenvÚeditorÚexcs        ÚM/var/www/html/gaurav/venv/lib/python3.13/site-packages/alembic/util/editor.pyÚopen_in_editorr      sP   € ð   ™Œ"�*Š*¨W€CðLÜ˜cÓ"ˆÜ�FÐ%Õ&øÜó LÝ»CÐAÓBÈÐKûðLús   —/ ¯
A¹A
Á
Ac                ó  • [        5       n[        S5       HK  u  p#X0;   d  M  X   n[        U5      (       a  Us  $ [        R                  U;  d  M:  UR                  X$5        MM     U H  n[        XP5      nUc  M  Us  $    [        S5      e)N)ÚEDITORÚVISUALzSNo suitable editor found. Please set the "EDITOR" or "VISUAL" environment variables)Ú_default_editorsÚ	enumerater   r   ÚsepÚinsertÚ_find_executableÚOSError)r   Ú
candidatesÚiÚvarÚuser_choiceÚ	candidateÚpaths          r   r   r   &   sˆ   € Ü!Ó#€JÜÐ0Ö1‰ˆØ�>Ø!™,ˆKÜ�k×"Ñ"Ø"Ò"Ü�v‰v˜[Õ(Ø×!Ñ! !Ö1ñ 2ó  ˆ	Ü 	Ó3ˆØÓØŠKñ  ô ð	5óð ó    c                óò   • [         (       d  [        U 5      S   S:w  a  U S-  n UR                  SS5      R                  [        R
                  5       H"  n[        X 5      n[        U5      (       d  M   Us  $    g )Nr	   z.exeÚPATHÚ )r   r   ÚgetÚsplitr   Úpathsepr   r   )r&   r   r'   Úvalues       r   r    r    :   se   € ÷ Š8œ Ó+¨AÑ.°&Ó8Ø�VÑˆ	Ø—‘˜F BÓ'×-Ñ-¬b¯j©jÖ9ˆÜ�TÓ%ˆÜ�%�=‹=ØŠLñ :ð r(   c                 ó(   • [         (       a  / SQ$ / SQ$ )N)zsensible-editorr   ÚnanoÚvimÚcode)zcode.exeznotepad++.exeznotepad.exer
   © r(   r   r   r   F   s   € ÷ ‚xÚCÐCâ;Ð;r(   )N)r   Ústrr   zdict[str, str] | NoneÚreturnÚNone)r   úMapping[str, str]r6   r5   )r&   r5   r   r8   r6   z
str | None)r6   z	list[str])Ú
__future__r   Úcollections.abcr   r   Úos.pathr   r   r   Ú
subprocessr   Úcompatr   r   r   r   r   r    r   r4   r(   r   Ú<module>r>      sU   ðÝ "å #Û 	Ý Ý Ý Ý !å Ý ð 59ðLØðLØ1ðLà	õLô0ô(	õ<r(   