+ typedef enum {
+ S_BUFFER,
+ S_DOCUMENT,
+ S_OPEN_BUFFERS,
+ S_ALL_MANUALS
+ } SearchScope;
+ typedef enum {
+ R_EVERYTHING,
+ R_ONLY_MATHS
+ } SearchRestriction;
+ FindAndReplaceOptions(
+ docstring const & find_buf_name,
+ bool casesensitive,
+ bool matchword,
+ bool forward,
+ bool expandmacros,
+ bool ignoreformat,
+ docstring const & repl_buf_name,
+ bool keep_case,
+ SearchScope scope = S_BUFFER,
+ SearchRestriction restr = R_EVERYTHING,
+ bool replace_all = false
+ );
+
+ FindAndReplaceOptions() {}
+
+ docstring find_buf_name;
+ bool casesensitive = false;
+ bool matchword = false;
+ bool forward = false;
+ bool matchAtStart = false;
+ bool expandmacros = false;
+ bool ignoreformat = false;
+ /// This is docstring() if no replace was requested
+ docstring repl_buf_name;
+ bool keep_case = false;
+ SearchScope scope = S_BUFFER;
+ SearchRestriction restr = R_EVERYTHING;
+ bool replace_all = false;