63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
# File 'lib/textbringer/input_method.rb', line 63
def with_target_buffer(&block)
if isearch_mode?
@isearch_buffer ||= Buffer.new
if @isearch_buffer.to_s != ISEARCH_STATUS[:string]
@isearch_buffer.replace(ISEARCH_STATUS[:string])
end
@isearch_buffer.modified = false
begin
block.call(@isearch_buffer)
ensure
ISEARCH_STATUS[:string] = @isearch_buffer.to_s
isearch_search if @isearch_buffer.modified?
if Buffer.current != Buffer.minibuffer
message(isearch_prompt + ISEARCH_STATUS[:string], log: false)
end
Window.redisplay
end
else
block.call(Buffer.current)
end
end
|