Skip to main content

Your command line bookmark manager.

Project description

bman

A command line bookmark manager.

Installation

Note: you need Python 3.

> pip install bman

After that, should have a bman command available.

> bman

Usage: bman [OPTIONS] COMMAND [ARGS]...

  Your command line bookmark manager.

Options:
  -h, --help  Show this message and exit.

Commands:
  add  Adds a new entry
  ls   Lists stored entries
  rm   Removes an entry

Usage

Add a bookmark

The quickest way to add an url is:

> bman add https://google.com

But maybe you prefer to add a tiny description to the bookmark:

> bman add https://google.com "The google homepage"

Or, better, add some tags to help you organize all this mess:

> bman add https://google.com "The google homepage" search,homepage,faang

List bookmarks

You can query all your bookmarks with the ls command:

> bman ls

https://github.com
Date: 2023-07-01T20:49:29.273570
Description: The github homepage
Tags: ['code', 'homepage', 'faang']

https://google.com
Date: 2023-07-01T20:51:49.173430
Description: The google homepage
Tags: ['search', 'homepage', 'faang']

Of course, once you start adding bookmarks is not feasible to get a dump of all entries every time you use ls. You can use a filter:

> bman ls goog

https://google.com
Date: 2023-07-01T20:51:49.173430
Description: The google homepage
Tags: ['search', 'homepage', 'faang']

The filter works on all fields.

Search by tag:

> bman ls search

https://google.com
Date: 2023-07-01T20:51:49.173430
Description: The google homepage
Tags: ['search', 'homepage', 'faang']

By date:

> bman ls 2023-07

https://github.com
Date: 2023-07-01T20:49:29.273570
Description: The github homepage
Tags: ['code', 'homepage', 'faang']

https://google.com
Date: 2023-07-01T20:51:49.173430
Description: The google homepage
Tags: ['search', 'homepage', 'faang']

The ls command accepts some more interesting options worth exploring:

Usage: bman ls [OPTIONS] [FILTER]

  Lists stored entries

Options:
  --format [only-url|full|json]  Set the output format
  --use-regex                    Treat the search filter as a regex pattern
  --fields TEXT                  Comma separated list of fields to show (and
                                 to apply filter to)
  -h, --help                     Show this message and exit.

Removing bookmarks

I know, I know...you rarely delete bookmarks. Neither me. But when you need to, better to have a way to do it :-)

> bman rm http://google.com

And that's it.

Editing bookmarks

bman doesn't allow direct edition, but you can add a bookmark twice to update it's entry:

For example, returning to the previous example, if you already had http://google.com in your library...

> bman add http://google.com "The _don't be evil_ company"

Url already exists in the library. Please, use --force to update it with the new values.

As you see, you need to pass the --force flag:

> bman add http://google.com "The _don't be evil_ company" --force

Data location

By default bman stores all the data under the ~/.bman/ directory. This can be overrided setting the BMAN_ROOT_PATH environment variable.

Under that directory, you'll find:

  • config.json for configuration settings (there's barely anything configurable right now, to be fair)
  • library.json with all your bookmarks.

I chose JSON for all data representation to make it easier to work with it using standard tools, if I need to.

Project details


Release history Release notifications | RSS feed

This version

0.9

Download files

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

Source Distribution

bman-0.9.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

bman-0.9-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file bman-0.9.tar.gz.

File metadata

  • Download URL: bman-0.9.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for bman-0.9.tar.gz
Algorithm Hash digest
SHA256 39abcc664e0ce964404019beb38312828a1a3953fe6e3edd86ed09416705f7b4
MD5 4e2889491868849c96f97fc61a28ac22
BLAKE2b-256 7ef0961066ecaf9d36c59f7d483bd6090e7af9073706808f6c30461c945ad84d

See more details on using hashes here.

File details

Details for the file bman-0.9-py3-none-any.whl.

File metadata

  • Download URL: bman-0.9-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for bman-0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 f33be76dda950498f0cd2410943c0c39068c22053c41f04af5a971a6f15ec64e
MD5 36099ee7cb62876ad2e4aa768b11e738
BLAKE2b-256 f165b07c903236ec9d3999d8ae9625dad0a9be88fb835988619f5d5c37786cc9

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