FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Reload current file via keybinding and optional auto-reload · Issue #3896 · sharkdp/bat · GitHub

/ bat Public

Reload current file via keybinding and optional auto-reload #3896

Description

Feature request: reload the current file (keybinding) and optional auto-reload

Motivation

When using bat to tail/live-inspect files (logs, generated configs, source files being edited by another process), there is currently no way to refresh the displayed content without quitting and re-running bat. It would be very useful to be able to reload the current file in place.

Proposed features

  1. Manual reload via keybinding

    • Add a keybinding (e.g. r or Ctrl+R) that reloads the current file from disk and re-renders the view.
    • Should work even when no search term is active.
  2. Auto-reload (follow / watch mode)

    • Add an option such as --follow / --watch (or a keybinding that toggles it) that watches the file for changes and automatically reloads the content.
    • This would make bat usable like tail -f for file monitoring.
  3. Cursor / scroll position preservation

    • After a reload, restore the current scroll position (and selection/active search match if possible) so the view doesn't jump back to the top.
    • At minimum, attempt to keep the line that was on screen at the time of reload at the same screen offset.

Notes / considerations

  • Restoring the exact scroll position is complicated if the file changes in length or content above the visible region (like in a text editor); a best-effort restoration based on the line number is acceptable.
  • This interacts with bat's pager (less) — reload may need to be implemented by feeding fresh content to the pager or via a pager-agnostic approach. Worth clarifying with maintainers how the pager integration should work.
  • For auto-reload, polling the file for mtime/size changes (like tail -f) or an inotify-based approach could be considered.

Prior art

  • less supports R to reread the current file (hides the control characters) — but does not reload changes from disk the way requested here.
  • tail -f / --retry reloads on change.

Thanks for considering this!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions


      Back | FazBrowse Home | New Git URL