Giter Site home page Giter Site logo

headtail's Issues

Change follow to use a file watcher when possible

Operating systems often provide more efficient means of watching the events which happen with a file.

headtail currently uses a polling approach, which means the thread is waking and executing code even when it doesn't need to.

We should modify the behavior of following mode to use OS file watchers when possible.

Does this work on Windows?

It would be good if someone (not me ๐Ÿ˜†) would figure out if this utility works on Windows, and if not -- can we make it work without too much trouble?

Add option to output to a file

Though it is trivial to redirect stdout to a file, sometimes it is nice to be able to specify that file via a command-line argument and have the program do it itself.

Add benchmarks

We should add some benchmarks so that when we make changes we can do a before/after comparison. See criterion.

These benchmarks should not be run in CI, since CI is too noisy of an environment to be useful for benchmarking (unless we somehow gain dedicated self-hosted runners for the purpose)

Add unit tests

We should add unit tests covering most of our logic, though we probably don't need any for the argument parsing giving it's a pretty straightforward usage of clap.

Ellipses (`...`) in between head and tail output

This is a very interesting and useful utility. I believe it would be particularly helpful if some demarcation such as ... or some other separating line (perhaps even colorizing it grey/dark grey) would be very helpful to rapidly differentiate the sections.

Additionally, having this in Homebrew (for macOS and Linux) so that cargo being present is not necessary.

Readme Improvements

For sure:

  • Video or asciinema of headtail in action
  • Quick story about how headtail came about (problem that prompted it -> our DoL session).

Maybe:

  • Add section with -h output? (and automate updating it via release.toml)
  • Dedicated development section?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.