@@ -85,7 +85,7 @@ def set_pasting_state(in_pasting)
85
85
end
86
86
end
87
87
88
- private def check_multiline_prompt ( buffer )
88
+ private def check_multiline_prompt ( buffer , mode_string )
89
89
if @vi_arg
90
90
prompt = "(arg: #{ @vi_arg } ) "
91
91
elsif @searching_prompt
@@ -97,7 +97,6 @@ def set_pasting_state(in_pasting)
97
97
prompt_list = @prompt_proc . ( buffer ) . map { |pr | pr . gsub ( "\n " , "\\ n" ) }
98
98
prompt_list . map! { prompt } if @vi_arg or @searching_prompt
99
99
prompt_list = [ prompt ] if prompt_list . empty?
100
- mode_string = check_mode_string
101
100
prompt_list = prompt_list . map { |pr | mode_string + pr } if mode_string
102
101
prompt = prompt_list [ @line_index ]
103
102
prompt = prompt_list [ 0 ] if prompt . nil?
@@ -109,7 +108,6 @@ def set_pasting_state(in_pasting)
109
108
end
110
109
prompt_list
111
110
else
112
- mode_string = check_mode_string
113
111
prompt = mode_string + prompt if mode_string
114
112
[ prompt ] * buffer . size
115
113
end
@@ -319,8 +317,8 @@ def modified_lines
319
317
end
320
318
321
319
def prompt_list
322
- with_cache ( __method__ , whole_lines , @vi_arg , @searching_prompt ) do |lines |
323
- check_multiline_prompt ( lines )
320
+ with_cache ( __method__ , whole_lines , check_mode_string , @vi_arg , @searching_prompt ) do |lines , mode_string |
321
+ check_multiline_prompt ( lines , mode_string )
324
322
end
325
323
end
326
324
0 commit comments