Skip to content

Latest commit

 

History

History
55 lines (48 loc) · 2.11 KB

TODO.md

File metadata and controls

55 lines (48 loc) · 2.11 KB

bugs

  • index out of bounds when resizing the terminal to a very small size
  • meta previews in cache are not terminal size aware

tasks

  • preview navigation
  • add a way to open the selected file in the default editor (or maybe that should be achieved using pipes?) --> xargs
  • maybe filter out image types etc. for now
  • return selected entry on exit
  • piping output to another command
  • piping custom entries from stdin (e.g. ls | tv, what bout choosing previewers in that case? Some AUTO mode?)
  • documentation

improvements

  • async finder initialization
  • async finder search
  • use nucleo for env
  • better keymaps
  • mutualize placeholder previews in cache (really not a priority)
  • better abstractions for channels / separation / isolation so that others can contribute new ones easily
  • channel selection in the UI (separate menu or top panel or something)
  • only render highlighted lines that are visible
  • only ever read a portion of the file for the temp preview
  • profile using dyn Traits instead of an enum for channels (might degrade performance by storing on the heap)
  • I feel like the finder abstraction is a superfluous layer, maybe just use the channel directly?
  • support for images is implemented but do we really want that in the core? it's quite heavy
  • shrink entry names that are too long (from the middle)
  • more syntaxes for the previewer https://www.sublimetext.com/docs/syntax.html#include-syntax
  • more preview colorschemes

feature ideas

  • environment variables
  • aliases
  • shell history
  • text
  • text in documents (pdfs, archives, ...) (rga, adapters) https://github.com/jrmuizel/pdf-extract
  • fd
  • recent directories
  • git (commits, branches, status, diff, ...)
  • makefile commands
  • remote files (s3, ...)
  • custom actions as part of a channel (mappable)
  • add a way of copying the selected entry name/value to the clipboard
  • have a keybinding to send all current entries to stdout
  • git repositories channel (crawl the filesystem for git repos)