 
 ;; browser page for viewing/navigating org-roam notes
 (use-package org-roam-ui
-  :disabled
-  :straight t)
-(use-package websocket
-  :disabled
-  :after org-roam)
+  :straight
+  (:host github :repo "org-roam/org-roam-ui" :branch "main" :files ("*.el" "out"))
+  :after org-roam
+
+  :init
+  (t/notes-def "ru" #'org-roam-ui-mode)
+
+  :config
+  (setq org-roam-ui-sync-theme t
+        org-roam-ui-follow t
+        org-roam-ui-update-on-save t
+        org-roam-ui-open-on-start t))
 
 ;; search plaintext files
 (use-package deft

;; music player
(use-package emms
  :straight t
  
  :config
  ;; initialize emms
  (require 'emms-setup)
  (emms-all)
  (emms-default-players)
  (setq emms-source-file-default-directory "~/Music/"
        emms-browser-covers 'emms-browser-cache-thumbnail) ; EMMS auto-resizes "cover.jpg" in album dir

  ;; repeat map for emms commands
  (defvar t/emms-repeat-map
    (let ((map (make-sparse-keymap)))
      (define-key map [left] 'emms-seek-backward)
      (define-key map [right] 'emms-seek-forward)
      (define-key map "p" 'emms-previous)
      (define-key map "P" 'emms-pause)
      (define-key map "n" 'emms-next)
      map)
    "Keymap to repeat emms seeking through track sequences `C-c m <left>'.
Used in repeat mode.")
  (dolist (command '(emms-seek-backward emms-seek-forward))
    (put command 'repeat-map 't/emms-repeat-map))
  
  :bind
  (t/leader-def
    :infix "m"
    "m" #'emms

;; isearch alternative across frame
(use-package avy
  :straight t
  :defer t

  :bind
  (("M-j" . #'avy-goto-char-timer)
   :map isearch-mode-map
