mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 16:53:00 +00:00
20 lines
625 B
Python
20 lines
625 B
Python
from prompt_toolkit.key_binding import KeyBindings
|
|
from prompt_toolkit.key_binding.vi_state import InputMode
|
|
from prompt_toolkit.filters import Condition
|
|
from IPython import get_ipython
|
|
|
|
ip = get_ipython()
|
|
key_bindings = KeyBindings()
|
|
|
|
@Condition
|
|
def in_navigation_mode():
|
|
return ip.pt_app.app.vi_state.input_mode == InputMode.NAVIGATION
|
|
|
|
# Yank to end of line with 'Y'
|
|
@key_bindings.add("Y", filter=in_navigation_mode)
|
|
def _(event):
|
|
"Yank to the end of the line"
|
|
text_to_yank = event.current_buffer.document.text_after_cursor
|
|
event.app.clipboard.set_text(text_to_yank)
|
|
|
|
ip.pt_app.key_bindings = key_bindings
|