mirror of https://codeberg.org/cage/tinmop/
- added command to repeat the last text search.
This commit is contained in:
parent
94a8e29f84
commit
77b7188581
|
@ -209,6 +209,8 @@
|
|||
|
||||
(define-key "\\\\ m" #'thread-search-previous-message-meta *thread-keymap*)
|
||||
|
||||
(define-key "N" #'repeat-search *thread-keymap*)
|
||||
|
||||
(define-key "n" #'thread-search-next-unread-message *thread-keymap*)
|
||||
|
||||
(define-key "home" #'thread-goto-first-message *thread-keymap*)
|
||||
|
@ -289,6 +291,8 @@
|
|||
|
||||
(define-key "/" #'message-search-regex *message-keymap*)
|
||||
|
||||
(define-key "N" #'repeat-search *message-keymap*)
|
||||
|
||||
(define-key "npage" #'message-scroll-next-page *message-keymap*)
|
||||
|
||||
(define-key "ppage" #'message-scroll-previous-page *message-keymap*)
|
||||
|
@ -305,6 +309,8 @@
|
|||
|
||||
(define-key "/" #'message-search-regex *gemini-message-keymap*)
|
||||
|
||||
(define-key "N" #'repeat-search *gemini-message-keymap*)
|
||||
|
||||
(define-key "npage" #'message-scroll-next-page *gemini-message-keymap*)
|
||||
|
||||
(define-key "ppage" #'message-scroll-previous-page *gemini-message-keymap*)
|
||||
|
|
|
@ -1262,11 +1262,12 @@
|
|||
:min-id
|
||||
:fetch-remote-status-event
|
||||
:process-event
|
||||
:search-next-event
|
||||
:search-regex-message-content-event
|
||||
:thread-goto-message
|
||||
:thread-search-message-body-event
|
||||
:search-direction
|
||||
:thread-search-message-meta-event
|
||||
:thread-goto-message
|
||||
:delete-all-status-event
|
||||
:quit-program-event
|
||||
:error-message-event
|
||||
|
@ -2208,6 +2209,7 @@
|
|||
:thread-search-previous-message-body
|
||||
:thread-search-next-message-meta
|
||||
:thread-search-previous-message-meta
|
||||
:repeat-search
|
||||
:thread-search-next-unread-message
|
||||
:thread-open-selected-message
|
||||
:thread-mark-delete-selected-message
|
||||
|
|
|
@ -395,7 +395,19 @@
|
|||
(dbg "fetch single status ~a" dump))
|
||||
(db:update-db status)))
|
||||
|
||||
(defclass search-regex-message-content-event (program-event) ())
|
||||
(defparameter *search-next-saved-event* nil)
|
||||
|
||||
(defclass search-event (program-event) ())
|
||||
|
||||
(defmethod process-event :before ((object search-event))
|
||||
(setf *search-next-saved-event* object))
|
||||
|
||||
(defclass search-next-event (program-event) ())
|
||||
|
||||
(defmethod process-event ((object search-next-event))
|
||||
(push-event *search-next-saved-event*))
|
||||
|
||||
(defclass search-regex-message-content-event (search-event) ())
|
||||
|
||||
(defmethod process-event ((object search-regex-message-content-event))
|
||||
(let ((regexp (payload object)))
|
||||
|
@ -406,13 +418,7 @@
|
|||
(error ()
|
||||
(ui:error-message (_ "Invalid regular expression")))))))
|
||||
|
||||
(defclass thread-goto-message (program-event) ())
|
||||
|
||||
(defmethod process-event ((object thread-goto-message))
|
||||
(let ((message-index (payload object)))
|
||||
(thread-window:goto-message specials:*thread-window* message-index)))
|
||||
|
||||
(defclass thread-search-event (program-event)
|
||||
(defclass thread-search-event (search-event)
|
||||
((search-direction
|
||||
:initform nil
|
||||
:initarg :search-direction
|
||||
|
@ -436,6 +442,12 @@
|
|||
(thread-window:search-next-message-meta specials:*thread-window* text-looking-for)
|
||||
(thread-window:search-previous-message-meta specials:*thread-window* text-looking-for))))
|
||||
|
||||
(defclass thread-goto-message (program-event) ())
|
||||
|
||||
(defmethod process-event ((object thread-goto-message))
|
||||
(let ((message-index (payload object)))
|
||||
(thread-window:goto-message specials:*thread-window* message-index)))
|
||||
|
||||
(defclass delete-all-status-event (program-event) ())
|
||||
|
||||
(defmethod process-event ((object delete-all-status-event))
|
||||
|
|
|
@ -280,6 +280,10 @@ Metadata includes:
|
|||
"Jump to next unread message"
|
||||
(thread-window:search-next-unread *thread-window*))
|
||||
|
||||
(defun repeat-search ()
|
||||
"Repeat the last search performed"
|
||||
(push-event (make-instance 'search-next-event)))
|
||||
|
||||
(defun thread-open-selected-message ()
|
||||
"Open selected message"
|
||||
(setf (windows:keybindings specials:*message-window*)
|
||||
|
|
Loading…
Reference in New Issue