Skip to content

Huge file viewer control for prompt-toolkit

License

Notifications You must be signed in to change notification settings

lpenz/pthugefileviewer

Repository files navigation

CI coveralls PyPI github

pthugefileviewer

pthugefileviewer is a control for prompt-toolkit that can display huge files. It does so by mmap'ing the file and only reading the lines shown in the screen. It avoids any operation that would require reading the whole file, like counting the lines.

Installation

Releases

pthugefileviewer can be installed via pypi:

pip install pthugefileviewer

For nix users, it is also available as a flake.

Repository

We can also clone the github repository and install pthugefileviewer from it with:

pip install .

We can also install it for the current user only by running instead:

pip install --user .

Development

pthugefileviewer uses the standard python3 infra. To develop and test the module:

  • Clone the repository and go into the directory:
    git clone git@github.com:lpenz/pthugefileviewer.git
    cd pthugefileviewer
    
  • Use venv to create a local virtual environment with
    python -m venv venv
    
  • Activate the environment by running the shell-specific activate script in ./venv/bin/. For [fish], for instance, run:
    source ./venv/bin/activate.fish
    
  • Install pthugefileviewer in "editable mode":
    pip install -e '.[test]'
    
  • To run the tests:
    pytest
    
    Or, to run the tests with coverage:
    pytest --cov
    
  • Finally, to exit the environment and clean it up:
    deactivate
    rm -rf venv