@@ -103,8 +103,7 @@ def make_default_commands() -> dict[CommandName, type[Command]]:
103103 (r"\M-9" , "digit-arg" ),
104104 (r"\M-\n" , "accept" ),
105105 ("\\ \\ " , "self-insert" ),
106- (r"\x1b[200~" , "enable_bracketed_paste" ),
107- (r"\x1b[201~" , "disable_bracketed_paste" ),
106+ (r"\x1b[200~" , "perform-bracketed-paste" ),
108107 (r"\x03" , "ctrl-c" ),
109108 ]
110109 + [(c , "self-insert" ) for c in map (chr , range (32 , 127 )) if c != "\\ " ]
@@ -202,7 +201,6 @@ class Reader:
202201 dirty : bool = False
203202 finished : bool = False
204203 paste_mode : bool = False
205- in_bracketed_paste : bool = False
206204 commands : dict [str , type [Command ]] = field (default_factory = make_default_commands )
207205 last_command : type [Command ] | None = None
208206 syntax_table : dict [str , int ] = field (default_factory = make_default_syntax_table )
@@ -220,7 +218,6 @@ class Reader:
220218 ## cached metadata to speed up screen refreshes
221219 @dataclass
222220 class RefreshCache :
223- in_bracketed_paste : bool = False
224221 screen : list [str ] = field (default_factory = list )
225222 screeninfo : list [tuple [int , list [int ]]] = field (init = False )
226223 line_end_offsets : list [int ] = field (default_factory = list )
@@ -234,7 +231,6 @@ def update_cache(self,
234231 screen : list [str ],
235232 screeninfo : list [tuple [int , list [int ]]],
236233 ) -> None :
237- self .in_bracketed_paste = reader .in_bracketed_paste
238234 self .screen = screen .copy ()
239235 self .screeninfo = screeninfo .copy ()
240236 self .pos = reader .pos
@@ -247,8 +243,7 @@ def valid(self, reader: Reader) -> bool:
247243 return False
248244 dimensions = reader .console .width , reader .console .height
249245 dimensions_changed = dimensions != self .dimensions
250- paste_changed = reader .in_bracketed_paste != self .in_bracketed_paste
251- return not (dimensions_changed or paste_changed )
246+ return not dimensions_changed
252247
253248 def get_cached_location (self , reader : Reader ) -> tuple [int , int ]:
254249 if self .invalidated :
@@ -350,7 +345,7 @@ def calc_screen(self) -> list[str]:
350345 prompt , prompt_len = self .process_prompt (prompt )
351346 chars , char_widths = disp_str (line , colors , offset )
352347 wrapcount = (sum (char_widths ) + prompt_len ) // self .console .width
353- trace ("wrapcount = {wrapcount}" , wrapcount = wrapcount )
348+ # trace("wrapcount = {wrapcount}", wrapcount=wrapcount)
354349 if wrapcount == 0 or not char_widths :
355350 offset += line_len + 1 # Takes all of the line plus the newline
356351 last_refresh_line_end_offsets .append (offset )
@@ -484,7 +479,7 @@ def get_prompt(self, lineno: int, cursor_on_line: bool) -> str:
484479 'lineno'."""
485480 if self .arg is not None and cursor_on_line :
486481 prompt = f"(arg: { self .arg } ) "
487- elif self .paste_mode and not self . in_bracketed_paste :
482+ elif self .paste_mode :
488483 prompt = "(paste) "
489484 elif "\n " in self .buffer :
490485 if lineno == 0 :
@@ -639,9 +634,6 @@ def update_screen(self) -> None:
639634
640635 def refresh (self ) -> None :
641636 """Recalculate and refresh the screen."""
642- if self .in_bracketed_paste and self .buffer and not self .buffer [- 1 ] == "\n " :
643- return
644-
645637 # this call sets up self.cxy, so call it first.
646638 self .screen = self .calc_screen ()
647639 self .console .refresh (self .screen , self .cxy )
0 commit comments