add minor-mode
impl search func