Invoke macOS applications to view files
Project description
Invoke native applications to view files
Invoke native applications to view and render data from files.
Features:
- Uses Dash to render Excel, CSV and TSV files.
- Render PDF and HTML in the default web browser.
Features on macOS:
- Default web browser used for HTML, Preview.app used for PDF files.
- Resize the window and a per display basis.
- Go to a specified page in Preview.app.
- Multiple file rendering in browser tabs.
The features on macOS are needed for other operating systems.
Usage
Create a configuration file with the dimensions of each of the screens you work with and where you want Preview.app to be displayed. You can validate these configurations by having the application echo them back at you:
$ rend config
Command Line
Invoke the application to show the file and display it:
$ rend example.pdf
See the configuration file example.
From Python
The package is designed to be easy invoke from Python as well (note the parenthesis needed to make the instance):
from zensols.rend import ApplicationFactory
if (__name__ == '__main__'):
app = ApplicationFactory().get_instance()
app('test-resources/sample.pdf')
Pandas DataFrame
s can be rendered using the browser API (note the lack of
parenthesis as it is called as a class method):
from zensols.rend import BrowserManager, ApplicationFactory
import pandas as pd
if (__name__ == '__main__'):
mng: BrowserManager = ApplicationFactory.get_browser_manager()
url = 'https://raw.githubusercontent.com/scpike/us-state-county-zip/master/geo-data.csv'
df = pd.read_csv(url)
mng.show(df)
Obtaining
The easiest way to install the command line program is via the pip
installer:
pip3 install zensols.rend
Binaries are also available on pypi.
Documentation
See the full documentation. The API reference is also available.
Contributing
Currently the more advanced features are only available on macOS. However, the API is written to easily add other operating systems as plugins. If you would like to write one for other operating systems, please contact and/or submit a pull request.
Changelog
An extensive changelog is available here.
Community
Please star this repository and let me know how and where you use this API. Contributions as pull requests, feedback and any input is welcome.
License
Copyright (c) 2022 - 2023 Paul Landes
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for zensols.rend-1.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bc605edcae11588246325401e41cb4f086593b622deb3348ebe600cac96e04ee |
|
MD5 | 075191b2d936772c0e1d80d52431f007 |
|
BLAKE2b-256 | 41b16c6ace31518a60605b3dba0f2e19f6317ad59912f53c1f0fd62cffe283ae |