Skip to main content

open text in a browser contextually

Project description

smartopen
=========

smartopen is a command line program that will transform text according
to handlers to URLs and open them

Usage
-----

``smartopen --help`` displays the program usage:

"""
Usage: smartopen [options]

Options:
-h, --help show this help message and exit
-c CONFIG, --config=CONFIG
config file to read
-u, --url print the first url handled
-a, --all print all handlers that match the query
-H HANDLERS, --handler=HANDLERS
name of the handler to use, in order
--print-handlers print all handlers in order they would be tried
"""

smartopen reads text from standard input or command line arguments.
The handlers are then iterated through in a configurable order and, if
the handler can transform the text into a URL, the URL is then
processed. Unless otherwise specified by command line options
(e.g. --url, --all), the first matching URL is then opened in firefox.


Handlers
--------

smartopen has a pluggable system of configurable handlers. The
setuptools entry point ``[smartopen.locations]`` is an extension point
for the handlers. Several handlers come with smartopen, or you can
write your own.

URL: a resolvable URL
Google: a google search
Wikipedia: a Wikipedia article
GoogleMaps: an address in google maps


Configuration
-------------

smartopen uses a configuration file that defines the order of the
handlers and their behavior.


Interfacing With Your Environment
---------------------------------

While smartopen is useful of its own right, its utility may be
enhanced by using as part of an environment. For instance, I run the
fluxbox window manager which allows the use of hotkeys. By binding
smartopen to Ctrl+Alt+s and using xclip, I can open a URL that is
mappable to a smartopen handler with a keyboard shortcut. The
relevant line from my ~/.fluxbox/keys file reads:

Control Mod1 s :ExecCommand /home/jhammel/python/smartopen.py "$(xclip -o)" # smartopen

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smartopen-0.1.6.tar.gz (6.0 kB view details)

Uploaded Source

File details

Details for the file smartopen-0.1.6.tar.gz.

File metadata

  • Download URL: smartopen-0.1.6.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for smartopen-0.1.6.tar.gz
Algorithm Hash digest
SHA256 dab7c4775428885df7b5468e358d435034f57eeb0671f75c42b0ecd40a281e6e
MD5 24d6dbdeb8c338976d5535243d2e2993
BLAKE2b-256 337f0039814ff905e6d5ce0de553ced437ddb4ab5effbd06651cf97ff0f0ce2b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page