o
    jX	                     @  s   d Z ddlmZ ddlmZmZmZ ddlmZm	Z	m
Z
mZ ddlmZmZmZmZmZmZmZmZ g dZdd
dZdddZdddZdS )zq
Key bindings for extra page navigation: bindings for up/down scrolling through
long pages, like in Emacs or Vi.
    )annotations)buffer_has_focus
emacs_modevi_mode)ConditionalKeyBindingsKeyBindingsKeyBindingsBasemerge_key_bindings   )scroll_backwardscroll_forwardscroll_half_page_downscroll_half_page_upscroll_one_line_downscroll_one_line_upscroll_page_downscroll_page_up)load_page_navigation_bindings#load_emacs_page_navigation_bindings load_vi_page_navigation_bindingsreturnr   c                   C  s   t tt t gtS )zB
    Load both the Vi and Emacs bindings for page navigation.
    )r   r	   r   r   r    r   r   /root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/prompt_toolkit/key_binding/bindings/page_navigation.pyr   "   s   r   c                  C  sH   t  } | j}|dt |dt |ddt |dt t| tS )
    Key bindings, for scrolling up and down through pages.
    This are separate bindings, because GNU readline doesn't have them.
    zc-vpagedownescapevpageup)r   addr   r   r   r   key_bindingshandler   r   r   r   4   s   
r   c                  C  sv   t  } | j}|dt |dt |dt |dt |dt |dt |dt |dt	 t
| tS )	r   zc-fzc-bzc-dzc-uzc-ezc-yr   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   D   s   
r   N)r   r   )__doc__
__future__r   prompt_toolkit.filtersr   r   r   'prompt_toolkit.key_binding.key_bindingsr   r   r   r	   scrollr   r   r   r   r   r   r   r   __all__r   r   r   r   r   r   r   <module>   s    (

