You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/mentions shows a view with all messages containing highlights across all your channels. /grep changes this view to allow you to search through all your windows for messages matching some regex. This is an expensive operation which is performed every time the input bar is updated, including updates that do not change the contents of the input bar (e.g. moving the cursor). After the regex gets longer than a few characters, it can take glirc > 1s on my system to respond to input after allowing it to collect backlog for a few days.
I suggest moving the /mentions + /grep interaction to some other view that doesn't have to deal with redoing the search for previews (/find ?). /grep could then be used to search those views as a form of search refinement.
It may also be worth looking into not triggering a re-render of the view on the aforementioned input bar updates.
The text was updated successfully, but these errors were encountered:
I suspect what's happening is you have some status message buffer with some 10s of thousands of messages in it. The /mentions view tries to merge lines by timestamp. Until it fills the window it'll search the full history of a window.
One thing we could do is to cache the result of the regular expression match when the expression is the same. The other would be to limit how far back we were willing to search in any one window in that view.
The live view could have an earlier cutoff on how much history it was willing to search.
/mentions
shows a view with all messages containing highlights across all your channels./grep
changes this view to allow you to search through all your windows for messages matching some regex. This is an expensive operation which is performed every time the input bar is updated, including updates that do not change the contents of the input bar (e.g. moving the cursor). After the regex gets longer than a few characters, it can take glirc > 1s on my system to respond to input after allowing it to collect backlog for a few days.I suggest moving the
/mentions
+/grep
interaction to some other view that doesn't have to deal with redoing the search for previews (/find
?)./grep
could then be used to search those views as a form of search refinement.It may also be worth looking into not triggering a re-render of the view on the aforementioned input bar updates.
The text was updated successfully, but these errors were encountered: