lib/textbringer/commands/isearch.rb in textbringer-0.1.8 vs lib/textbringer/commands/isearch.rb in textbringer-0.1.9
- old
+ new
@@ -16,11 +16,11 @@
end
ISEARCH_MODE_MAP.define_key(:backspace, :isearch_delete_char)
ISEARCH_MODE_MAP.define_key(?\C-h, :isearch_delete_char)
ISEARCH_MODE_MAP.define_key(?\C-s, :isearch_repeat_forward)
ISEARCH_MODE_MAP.define_key(?\C-r, :isearch_repeat_backward)
- ISEARCH_MODE_MAP.define_key(?\n, :isearch_exit)
+ ISEARCH_MODE_MAP.define_key(?\C-m, :isearch_exit)
ISEARCH_MODE_MAP.define_key(?\C-g, :isearch_abort)
ISEARCH_STATUS = {
forward: true,
string: "",
@@ -28,15 +28,17 @@
start: 0,
last_pos: 0,
recursive_edit: false
}
- define_command(:isearch_forward) do |**options|
+ define_command(:isearch_forward,
+ doc: "Incrementally search forward.") do |**options|
isearch_mode(true, **options)
end
- define_command(:isearch_backward) do |**options|
+ define_command(:isearch_backward,
+ doc: "Incrementally search backward.") do |**options|
isearch_mode(false, **options)
end
def isearch_mode(forward, recursive_edit: false)
ISEARCH_STATUS[:forward] = forward
@@ -76,26 +78,30 @@
if ISEARCH_STATUS[:recursive_edit]
exit_recursive_edit
end
end
- define_command(:isearch_exit) do
+ define_command(:isearch_exit, doc: "Exit incremental search.") do
isearch_done
end
- define_command(:isearch_abort) do
+ define_command(:isearch_abort, doc: "Abort incremental search.") do
goto_char(Buffer.current[:isearch_start])
isearch_done
raise Quit
end
- define_command(:isearch_printing_char) do
+ define_command(:isearch_printing_char, doc: <<~EOD) do
+ Add the typed character to the search string and search.
+ EOD
c = Controller.current.last_key
ISEARCH_STATUS[:string].concat(c)
isearch_search
end
- define_command(:isearch_delete_char) do
+ define_command(:isearch_delete_char, doc: <<~EOD) do
+ Delete the last character from the search string and search.
+ EOD
ISEARCH_STATUS[:string].chop!
isearch_search
end
def isearch_search