A TUI app to manage bibliography
Project description
BibMan
What is this
A TUI bibliography manager. It aims to support only the most basis features as a general bibliography manager.
A short youtube-demo
Why not Zotero/Mendeley
Mendeley is not open-source, so whether its features fit my needs is out of my control. Zotero is open source, which is great. There are lots of extensions customizing toward individual needs. But I have found no extension/app that made it a keyboard-oriented app such as a TUI version of Zotero. So I decided to make one.
General goal
- Everything should be as transparent as possible. For example, database is just one text file. Every modification of this text file should be effective to the application. (of course, changes made by the application itself is more preferable.)
You should be able to manage all data via text editor. That means: collection is stored in
data/collection_tree.txt
, bibfile is stored indata/bib_collection.bib
, and all pdfs files are atdata/pdfs/
. The inferface is used as a convenient way to access/modify your data, otherwise you should be able to do every task yourself. - Vim-like movement, ranger-like interface
Model
- Everything is fat, there is no explicit hierachical structure in organizing papers.
- Instead, tag is used as a main tool to group relevant papers.
- The first column which appears as a tree is just a convinient way to provide some shortcut. Think of it as a predefined set of tags, where selecting a particular nodes means to create a filter of all tags along the path from root the that node. For example,
.
|---a
| |
| ---a1
| ---a2
|---b
|---a1
when choosing the child node a1, it will show all papers containng both tags a and a1, while choosing node a1 in the bottom of the tree will show all papers containing tag a1.
Features
I don't know how to list a list/categorize features ...
Manual
(providing it as a Python package later)
Install:
pip install bibman
And run from terminal
bibman
Config file can be found at ~/.config/bibman/config.yml
, and data directory is (configurable) at ~/bibman_data/
.
The layout contains 3 columns: collections, papers, attributes from left to right.
---------------
SHORT KEYS
(still updating ...)
---------------
* General:
- h,j,k,l: basic movement as in vim
- 0: go to beginning
- G: go to the end
- r: reload every thing (from database)
* Collection colum:
Show list of collections in a tree format.
- e: expand sub-collections
- Enter: show list of papers under current collections to the paper column (second column)
* Paper column:
Show list of papers under the current collection
- J/K: move the current item up/down
- Enter: open the chosen paper by default pdf application; in attributes column, it will copy the chosen attribute to clipboard.
- V: open the 'database', which is a text file containing all bibtex entries, in Vim and move to the current item. You can modify it in whatever way you want, just don't corrupt the file.
- B: same effect as command ``add_bib``
- mb: copy bib key
* Attribute column:
Show all attributes of the current paper
- Enter: copy the chosen attribute
-----------------
COMMANDS
-----------------
- Enter a command by ':'
- List of commands:
+ add_paper <paper_name>: add new paper to the current collection
+ add_bib: let user input a bib text in vim and add ti to current collection as a new paper
+ download <url>: download a pdf file for the current paper
+ add_local_file <path>: copy a pdf file for the current paper
+ remove: remove the current paper
+ add_tag: add a new tag
+ ...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bibman-0.3.tar.gz
.
File metadata
- Download URL: bibman-0.3.tar.gz
- Upload date:
- Size: 33.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e804edeb196ba3a6c92ecd7c8678daf90edc5ca18298b041c1cc9bc6076dcbe |
|
MD5 | f5ef7374dd0cabe56658c3d6e9d26842 |
|
BLAKE2b-256 | af01c324469d691d871ed9ec046e88edb5cb5a1c69dc44720e8f9928bec68745 |
File details
Details for the file bibman-0.3-py3-none-any.whl
.
File metadata
- Download URL: bibman-0.3-py3-none-any.whl
- Upload date:
- Size: 33.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b465a94b6dee734d199b3f9b1a9a0de76903b08c84263d8b67b299cb42fa032 |
|
MD5 | e94747cfcbd70485936612f086cba548 |
|
BLAKE2b-256 | f05c6c7ca8446936b9d138445274d509a90f2e413f7ecd17272f60e8ac52d620 |