                                                (car (split-string (buffer-string)
                                                                   "\n")))
                    ""))))
+;; TODO: Fxi ordering (issue caused after switching to icomplete)
 (defun meain/vime (&optional listitems)
   "Load a random file inside ~/.cache/vime dir.  Used as a temp notes dir.
 Pass in `LISTITEMS to decide if you wanna create a new item or search for existing items."
   (interactive "P")
   (if listitems
-      (ivy-read "Choose file: "
-                (mapcar (lambda (x)
-                          (meain/vime-name-append (car x)))
-                        (sort (remove-if-not #'(lambda (x)
-                                                 (eq (nth 1 x) nil))
-                                             (directory-files-and-attributes "~/.cache/vime"))
-                              #'(lambda (x y)
-                                  (time-less-p (nth 6 y)
-                                               (nth 6 x)))))
-                :preselect (ivy-thing-at-point):require-match
-                t
-                :action (lambda (x)
-                          (find-file (concat "~/.cache/vime/"
-                                             (car (split-string x))))):caller'meain/vime-open)
+      (find-file (concat "~/.cache/vime/"
+                         (car (split-string (completing-read "Choose vime: "
+                                                             (mapcar (lambda (x)
+                                                                       (meain/vime-name-append (car x)))
+                                                                     (sort (remove-if-not #'(lambda (x)
+                                                                                              (eq (nth 1 x) nil))
+                                                                                          (directory-files-and-attributes "~/.cache/vime"))
+                                                                           #'(lambda (x y)
+                                                                               (time-less-p (nth 6 y)
+                                                                                            (nth 6 x))))))))))
     (progn
       (find-file (concat "~/.cache/vime/_"
                          (substring (uuid-string)

                (message "No shells bruh!"))
               ((equal (length shell-buffers) 1)
                (message "Only one shell"))
               (alternate (ivy-read "Choose shell: "
                                    (mapcar (lambda (x)
                                              (buffer-name x))
                                            shell-buffers)
                                    :action (lambda (x)
                                              (switch-to-buffer x))))
               (t (switch-to-buffer (car (cdr shell-buffers)))))))
          (defun meain/run-in-vterm-kill (process event)
            "A process sentinel. Kills PROCESS's buffer if it is live."

(defun meain/scratchy ()
  "Open scratch buffer in a specific mode."
  (interactive "P")
  (let ((scratch-major-mode (completing-read "Choose mode: "
                                             '(text-mode python-mode json-mode rust-mode
                                                         markdown-mode emacs-lisp-mode web-mode javascript-mode
                                                         artist-mode)
