From 42c6bb7e1c65652a9c053e4326df47cc07916c04 Mon Sep 17 00:00:00 2001 From: Thanos Apollo Date: Fri, 6 Oct 2023 18:08:27 +0300 Subject: yeetube-buffer: Add yeetube-buffer-insert-content Seperate the insertion of formatted content from yeetube-create-buffer. --- yeetube-buffer.el | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/yeetube-buffer.el b/yeetube-buffer.el index 0042fcc..8713616 100644 --- a/yeetube-buffer.el +++ b/yeetube-buffer.el @@ -180,6 +180,16 @@ Emojis cause formatting issues, this should be off by default." (yeetube-buffer--format-video-duration "Duration") (yeetube-buffer--format-channel "Channel")))) +(defun yeetube-buffer-insert-content (content) + "Insert formatted CONTENT." + (insert + (concat (yeetube-buffer--format-title (yeetube-buffer-fix-title (car content))) + (yeetube-buffer--format-view-count (yeetube-buffer-view-count-add-commas + (yeetube-buffer-fix-view-count (nth 2 content)))) + (yeetube-buffer--format-video-duration (nth 3 content)) + (yeetube-buffer--format-channel (nth 4 content)) + "\n"))) + ;;;###autoload (defun yeetube-buffer-create (query content buffer-mode) "Create *yeetube* buffer with BUFFER-MODE for search QUERY, displaying CONTENT." -- cgit v1.2.3 From 6621fbadad002b32ed6ace1e0461268e333e5470 Mon Sep 17 00:00:00 2001 From: Thanos Apollo Date: Fri, 6 Oct 2023 18:09:03 +0300 Subject: yeetube-buffer: Use cl-loop to insert contents --- yeetube-buffer.el | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/yeetube-buffer.el b/yeetube-buffer.el index 8713616..fed3c66 100644 --- a/yeetube-buffer.el +++ b/yeetube-buffer.el @@ -199,22 +199,8 @@ Emojis cause formatting issues, this should be off by default." (setf buffer-read-only nil) (erase-buffer) (yeetube-buffer--format-header query) - (dolist (info (reverse content)) - (let ((title (yeetube-buffer-fix-title (car info))) - (view-count (nth 2 info)) - (video-duration (nth 3 info)) - (channel-name (nth 4 info))) - (insert - (yeetube-buffer--format-title title) - (yeetube-buffer--format-view-count - (yeetube-buffer-view-count-add-commas - (yeetube-buffer-fix-view-count view-count))) - (yeetube-buffer--format-video-duration - (if (string-match-p "^[0-9:]+$" video-duration) - video-duration - "nil")) - (yeetube-buffer--format-channel channel-name) - "\n"))) + (cl-loop for result in (reverse content) + do (yeetube-buffer-insert-content result)) (delete-char -1) (goto-char (point-min)))) -- cgit v1.2.3