papis: Improve tui table view rendering
Show read status, tags, attached documents and notes in a swift overview - trying to somewhat mimic the JabRef table view since I like it quite a lot.
This commit is contained in:
parent
29d1a2453d
commit
248f171f48
1 changed files with 34 additions and 12 deletions
|
@ -5,10 +5,11 @@ documentlist:
|
|||
marked-icon: ""
|
||||
multilinestyle:
|
||||
rows:
|
||||
- "<cyan>{doc.alias('type')} {doc['ref']} {doc.forfile('')}</cyan>"
|
||||
# TODO: show if already note attached; have info window display note content?
|
||||
- "<cyan>{doc.alias('type')} {doc['ref']}</cyan>{' ' if doc['file'] else ''} {doc.alias('readstatus')}"
|
||||
- "<white><bold>{doc.html_escape['title']}</bold></white>"
|
||||
- "<blue>{doc.html_escape['author']}</blue>"
|
||||
- "{doc.foreach('tags', '<lightgray>(</lightgray><lightgray><dim>{}</dim></lightgray><gray>)</gray>', split = ', ', sep = ' ')}"
|
||||
- "{doc.foreach('tags', '<lightgray>(</lightgray><gray><dim>{}</dim></gray><lightgray>)</lightgray>', split = ', ', sep = ' ')}"
|
||||
tablestyle:
|
||||
separator: " "
|
||||
headerstyle: "underline|bold"
|
||||
|
@ -16,26 +17,48 @@ documentlist:
|
|||
cursorrowstyle: "black_white|bold"
|
||||
columns:
|
||||
- {
|
||||
header: " #",
|
||||
content: "{doc.alias('type')} {str(len(doc.get_files()) if len(doc.get_files()) > 0 else '')}",
|
||||
width: 3,
|
||||
header: "",
|
||||
content: "{'' if doc['readstatus'] == 'read' else '' if doc['readstatus'] == 'skimmed' else ' '}",
|
||||
width: 1,
|
||||
}
|
||||
- { header: "Reference", content: "@{doc['ref']}", width: 15 }
|
||||
- {
|
||||
header: "",
|
||||
content: "{'' if doc['notes'] else '' if doc['note'] else ' '}",
|
||||
width: 1,
|
||||
}
|
||||
- {
|
||||
header: "",
|
||||
content: "{doc.alias('type')}",
|
||||
width: 1,
|
||||
}
|
||||
- { header: "Authors", content: "{doc['author']}", width: 25 }
|
||||
- { header: "Year", content: "{str(doc['year'])}", width: 4 }
|
||||
- { header: "Authors", content: "{doc['author']}", width: 20 }
|
||||
- { header: "Title", content: "{doc['title']}", width: 200 }
|
||||
- { header: "Title", content: "{doc['title']}", width: 125 }
|
||||
- { header: "Reference", content: "{doc['ref']}", width: 15 }
|
||||
- {
|
||||
header: "",
|
||||
content: "{str(len(doc.get_files()) if len(doc.get_files()) > 0 else '')}",
|
||||
width: 1,
|
||||
}
|
||||
- { header: "Tags", content: "{doc['tags'] if isinstance(doc['tags'], str) else doc.foreach('tags', '{}', sep=', ')}", width: 35 }
|
||||
aliases:
|
||||
type:
|
||||
{
|
||||
article: "",
|
||||
book: "",
|
||||
incollection: "",
|
||||
inbook: '',
|
||||
inbook: "",
|
||||
software: "",
|
||||
presentation: "",
|
||||
thesis: "",
|
||||
_default_: "",
|
||||
_default_: "",
|
||||
}
|
||||
readstatus:
|
||||
{
|
||||
read: "<green></green>",
|
||||
skimmed: "<yellow></yellow>"
|
||||
}
|
||||
|
||||
keymappings:
|
||||
q: quit
|
||||
"?": help
|
||||
|
@ -81,7 +104,7 @@ infowindow:
|
|||
|
||||
commandline:
|
||||
search:
|
||||
keyword_aliases: {a: 'author:', t: 'title:', y: 'year:', k: 'tags:'}
|
||||
keyword_aliases: { a: "author:", t: "title:", y: "year:", k: "tags:" }
|
||||
|
||||
statusbar:
|
||||
left:
|
||||
|
@ -92,4 +115,3 @@ statusbar:
|
|||
search: "<black_magenta><bold> {info['mode_upper']} </black_magenta></bold><magenta_bg></magenta_bg>"
|
||||
right:
|
||||
default: "<green>{info['sortkeys']} </green><cyan_bg></cyan_bg><black_cyan> {info['idx']} < {info['marked']} < {info['view']} < {info['items']} </black_cyan>"
|
||||
|
||||
|
|
Loading…
Reference in a new issue