
    l:i                         d dl mZmZmZ d dlZd dlmZmZmZm	Z	m
Z
 d Z e	d      r  e
 e	d            e      Z ed      d        Zd Zy)    )	dropwhileislice	takewhileN)get_closestreplace_argumentfor_appwhichcachec                  z   t        j                  dt         j                        } | j                  j	                         D cg c]!  }|j                  d      j                         # }}t        d |      }t        |dd       }t        d |      }|D cg c]  }|j                  d      d    c}S c c}w c c}w )	Ngo)stderrzutf-8c                     | dk7  S )NzThe commands are: lines    W/var/www/html/bot/venv/lib/python3.12/site-packages/thefuck/rules/go_unknown_command.py<lambda>z%get_golang_commands.<locals>.<lambda>
   s    4+>#>        c                     | S )Nr   r   s    r   r   z%get_golang_commands.<locals>.<lambda>   s    4 r    r   )
subprocessPopenPIPEr   	readlinesdecodestripr   r   r   split)procr   liness      r   get_golang_commandsr!      s    D9D6:kk6K6K6MNdT[[!'')NEN>FE5!T"E'/E+014DJJsOA11	 O 2s   &B3B8r   c                     d| j                   v S )Nzunknown command)output)commands    r   matchr%      s    ..r   c                     t        | j                  d   t                     }t        | j                  | j                  d   |      S )N   )r   script_partsr!   r   script)r$   closest_subcommands     r   get_new_commandr+      sA    $W%9%9!%<>Q>STGNNG,@,@,C.0 0r   )	itertoolsr   r   r   r   thefuck.utilsr   r   r   r	   r
   r!   r%   r+   r   r   r   <module>r.      sV    2 2  N N2 	;,%d,-@A 	/ /0r   