mirror of
https://github.com/jrnl-org/jrnl.git
synced 2025-05-10 08:38:32 +02:00
Add display format option to config file. (#1050)
* Add display format option to config file. * Add tests. * Fix `black` error. * Change nested if to top level.
This commit is contained in:
parent
05d0a0cc83
commit
8c2de0e6d7
5 changed files with 67 additions and 2 deletions
|
@ -38,6 +38,9 @@ and can be edited with a plain text editor.
|
||||||
controls the width of the output. Set to `false` if you don't want to wrap long lines.
|
controls the width of the output. Set to `false` if you don't want to wrap long lines.
|
||||||
- `colors`
|
- `colors`
|
||||||
dictionary that controls the colors used to display journal entries. It has four subkeys, which are: `body`, `date`, `tags`, and `title`. Current valid values are: `BLACK`, `RED`, `GREEN`, `YELLOW`, `BLUE`, `MAGENTA`, `CYAN`, `WHITE`, and `NONE`. `colorama.Fore` is used for colorization, and you can find the [docs here](https://github.com/tartley/colorama#colored-output). To disable colored output, set the value to `NONE`. If you set the value of any color subkey to an invalid color, no color will be used.
|
dictionary that controls the colors used to display journal entries. It has four subkeys, which are: `body`, `date`, `tags`, and `title`. Current valid values are: `BLACK`, `RED`, `GREEN`, `YELLOW`, `BLUE`, `MAGENTA`, `CYAN`, `WHITE`, and `NONE`. `colorama.Fore` is used for colorization, and you can find the [docs here](https://github.com/tartley/colorama#colored-output). To disable colored output, set the value to `NONE`. If you set the value of any color subkey to an invalid color, no color will be used.
|
||||||
|
- `display_format`
|
||||||
|
specifies formatter to use, formatters available are:
|
||||||
|
`boxed`, `fancy`, `json`, `markdown`, `md`, `tags`, `text`, `txt`, `xml`, or `yaml`.
|
||||||
|
|
||||||
!!! note
|
!!! note
|
||||||
Although it seems intuitive to use the `#`
|
Although it seems intuitive to use the `#`
|
||||||
|
|
19
features/data/configs/format_md.yaml
Normal file
19
features/data/configs/format_md.yaml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
colors:
|
||||||
|
body: none
|
||||||
|
date: none
|
||||||
|
tags: none
|
||||||
|
title: none
|
||||||
|
default_hour: 9
|
||||||
|
default_minute: 0
|
||||||
|
display_format: markdown
|
||||||
|
editor: ''
|
||||||
|
encrypt: false
|
||||||
|
highlight: true
|
||||||
|
indent_character: '|'
|
||||||
|
journals:
|
||||||
|
default: features/journals/simple.journal
|
||||||
|
linewrap: 80
|
||||||
|
tagsymbols: '@'
|
||||||
|
template: false
|
||||||
|
timeformat: '%Y-%m-%d %H:%M'
|
||||||
|
version: v2.4.5
|
19
features/data/configs/format_text.yaml
Normal file
19
features/data/configs/format_text.yaml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
colors:
|
||||||
|
body: none
|
||||||
|
date: none
|
||||||
|
tags: none
|
||||||
|
title: none
|
||||||
|
default_hour: 9
|
||||||
|
default_minute: 0
|
||||||
|
display_format: text
|
||||||
|
editor: ''
|
||||||
|
encrypt: false
|
||||||
|
highlight: true
|
||||||
|
indent_character: '|'
|
||||||
|
journals:
|
||||||
|
default: features/journals/simple.journal
|
||||||
|
linewrap: 80
|
||||||
|
tagsymbols: '@'
|
||||||
|
template: false
|
||||||
|
timeformat: '%Y-%m-%d %H:%M'
|
||||||
|
version: v2.4.5
|
|
@ -512,3 +512,26 @@ Feature: Custom formats
|
||||||
| basic_encrypted |
|
| basic_encrypted |
|
||||||
| basic_folder |
|
| basic_folder |
|
||||||
| basic_dayone |
|
| basic_dayone |
|
||||||
|
|
||||||
|
Scenario: Markdown Support from config file
|
||||||
|
Given we use the config "format_md.yaml"
|
||||||
|
When we run "jrnl -n 1"
|
||||||
|
Then the output should be
|
||||||
|
"""
|
||||||
|
# 2013
|
||||||
|
|
||||||
|
## June
|
||||||
|
|
||||||
|
### 2013-06-10 15:40 Life is good.
|
||||||
|
|
||||||
|
But I'm better.
|
||||||
|
"""
|
||||||
|
|
||||||
|
Scenario: Text Formatter from config file
|
||||||
|
Given we use the config "format_text.yaml"
|
||||||
|
When we run "jrnl -n 1"
|
||||||
|
Then the output should be
|
||||||
|
"""
|
||||||
|
[2013-06-10 15:40] Life is good.
|
||||||
|
But I'm better.
|
||||||
|
"""
|
||||||
|
|
|
@ -300,7 +300,8 @@ def _display_search_results(args, journal, **kwargs):
|
||||||
elif args.export:
|
elif args.export:
|
||||||
exporter = plugins.get_exporter(args.export)
|
exporter = plugins.get_exporter(args.export)
|
||||||
print(exporter.export(journal, args.filename))
|
print(exporter.export(journal, args.filename))
|
||||||
|
elif kwargs["config"].get("display_format"):
|
||||||
|
exporter = plugins.get_exporter(kwargs["config"]["display_format"])
|
||||||
|
print(exporter.export(journal, args.filename))
|
||||||
else:
|
else:
|
||||||
# Default display mode
|
|
||||||
print(journal.pprint())
|
print(journal.pprint())
|
||||||
|
|
Loading…
Add table
Reference in a new issue