Dashboard에 Qiita의 최신 리스트(tag:emacs)를 표시시켜 보았다



아래의 Tips를 참고로 Emacs의 Dashboard 화면에 Qiita의 신착 일람을 표시시킬 수 있었습니다.
  • Dashboard로 부팅 화면을 멋지게 만들자.

  • 설정



    이 설정 예제에서는 emacs 태그로 필터링된 목록을 표시하도록 사용자 정의합니다.
    ;; Use request.el for API call
    (use-package request)
    
    ;; Item display function
    (defun dashboard-qiita-insert-list (list-display-name list)
      "Render LIST-DISPLAY-NAME and items of LIST."
      (dashboard-insert-heading list-display-name)
      (mapc (lambda (el)
              (insert "\n    ")
              (widget-create 'push-button
                             :action `(lambda (&rest ignore)
                                        (browse-url ,(cdr (assoc 'url el))))
                             :mouse-face 'highlight
                             :follow-link "\C-m"
                             :button-prefix ""
                             :button-suffix ""
                             :format "%[%t%]"
                             (decode-coding-string (cdr (assoc 'title el)) 'utf-8))) list))
    
    ;; Function to get and display articles
    (defun dashboard-qiita-insert (list-size)
      "Add the list of LIST-SIZE items from qiita."
      (request
       ;; (format "https://qiita.com/api/v2/items?page=1&per_page=%s" list-size)
       (format "https://qiita.com/api/v2/tags/emacs/items?page=1&per_page=%s" list-size)
       :sync t
       :parser 'json-read
       :success (cl-function
                 (lambda (&key data &allow-other-keys)
                   (dashboard-qiita-insert-list "Qiita(emacs-tag):" data)))))
    
    ;; add an article to the dashboard
    (add-to-list 'dashboard-item-generators '(qiita . dashboard-qiita-insert))
    (setq dashboard-items '((qiita . 15)))
    
    

    참고



    Emacs:Dashboard의 고급 설정은 Github에 공개되어 있습니다.
  • github/minoruGH
  • 좋은 웹페이지 즐겨찾기