ammarabouzor / tui-journal Goto Github PK
View Code? Open in Web Editor NEWYour journal app if you live in a terminal
Home Page: https://crates.io/crates/tui-journal
License: MIT License
Your journal app if you live in a terminal
Home Page: https://crates.io/crates/tui-journal
License: MIT License
In line 55-59 of release.yml, you call the Action actions-rs/toolchain
which is discontinued; see actions-rs/toolchain#216. Rust is already installed on the runner, you can always call rustup update
for a self-upgrade and add components manually.
It is a good practice to maintain a CHANGELOG in order to document the changes between versions. Often, one major problem is how these CHANGELOGs are maintained; some policies trigger numerous unnecessary Merge Conflicts and thus slow down the development critically, other ones require much effort as the maintainers are the only ones who are allowed to edit it. But fortunately, there is a lot of software to make a CHANGELOG almost completely self-maintaining.
I would like to offer you to set up everything for this project such that:
Would you be interested in such a feature for TUI-Journal, @AmmarAbouZor?
The height of the app main footer is currently fixed to one line. and if the footer got longer it will be cut and not all the information will be shown.
The height of the footer should be calculated dynamically analog to the footers in app popups
Users choosing the JSON back-end might notice an inconveniently increasing file size of the back-end the more journals are added. I would like to suggest to compress the JSON file if a certain file size threshold was exceeded. Regarding the compression algorithm, I would like to suggest Brotli (https://github.com/google/brotli) which is enhanced for compressing plain text files, like the JSON back-end, and achieves a convenient compression ratio. Rust bindings are available: https://github.com/dropbox/rust-brotli.
Since the app is growing and more features are added, it's important to have them documented so the users don't have to explore them by themselves from withing the app.
Creating and WIKI with more information about each feature is a good way to help the users discover all the feature tui-journals has to offer with more information about how to use these feature effectively and to explain why something is done that way.
This would be very helpful to achieve before the next big release
It would be useful sometimes to have the power of an external editor to edit the journal. This will give the users more freedom to edit the journal the way they want and keep the app to manage and show them and for a simple and fast editing as well.
To achieve that we could take inspirations from other apps which do that like gitui which has this option in the commit popup.
important point to be aware of:
Dependabot is a technology shipped with and maintained by GitHub to automatically suggest version updates for the configured dependencies. This is very useful in order to keep the project up-to-date and secure as the updates might also contain security fixes. This project uses Rust crates and GitHub Actions, so the following setup would be useful for an initial configuration:
version: 2
updates:
- package-ecosystem: cargo
directory: /
schedule:
interval: daily
time: '00:00'
assignees:
- AmmarAbouZor
commit-message:
prefix: 'Chore: '
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily
time: '00:00'
assignees:
- AmmarAbouZor
commit-message:
prefix: 'Chore: '
Every day at UTC midnight (after a delay of usually about 1.75 hours), Dependabot will search for updates for your configured dependencies and suggest them as PRs. You will be set as assignee and both the commit and the PR will be named similarly with the prefix Chore:
, followed by the actual update, e.g. Chore: bump clap from 4.3.0 to 4.3.3
. The prefix "chore" is usual for Dependabot version updates, Clap, for example, uses it, as well. Furthermore, that prefix is also configured as skip condition for the CHANGELOG fragment generation.
Unfortunately, the check interval cannot be set to hourly but you are allowed to invoke the Depedabot check for updates manually from the Insights tab of this repository (Insights → Dependency graph → Dependabot → Last checked ... → Check for updates). If the daily interval should be too much, you can also set it to once a week or once a month.
There is also another bot to check for updates: Renovate. This bot is used by Clap and is able to do basically the same, i.e. checking for version updates of dependencies. However, I only used Dependabot, so far, so I cannot assist you in configuring Renovate. Furthermore, it would cause trouble if I would suggest you the above configuration in a PR, so the easiest way to enable Dependabot is to copy the configuration and to paste it to a file named .github/dependabot.yml
. If you wish to disable Dependabot in the future, just delete its configuration file; then, you can use another tool like Renovate, for example.
As I already mentioned in #6, I primarily use the application to take notes on the projects I develop. Thus, I have multiple journals which belong to one project. I would like to ask for adding a category feature such that I can assign one optional category to a journal which should also affect the sorting in the left-hand side bar.
Here are some more detailed information of what I assume would be helpful for the implementation:
TEXT
in the entries
table.category
in the database should be SQL's NULL
(no data, yet).entries
should contain the category
column when creating that table.entries
should be altered by adding the new column; this would allow for the loss-free migration of databases from previous versions of the application.Option<String>
in the Serde definition due to not being mandatory.String
type would suffice (in contrast to the content
field which also might be a Gap Buffer or Rope for performance benefits, instead).I assume that this feature would be useful to many users as they probably already know a similar structuring technique from other note-taking applications they may have used before. Thus, the following use cases are also covered by this feature (target audiences in parentheses).
What is your opinion on this feature, @AmmarAbouZor?
Getting this error when installing with cargo on Fedora 38:
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_unknown_linux_gnu
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
run pkg_config fail: `PKG_CONFIG_ALLOW_SYSTEM_CFLAGS="1" "pkg-config" "--libs" "--cflags" "openssl"` did not exit successfully: exit status: 1
error: could not find system library 'openssl' required by the 'openssl-sys' crate
--- stderr
Package openssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `openssl.pc'
to the PKG_CONFIG_PATH environment variable
Package 'openssl', required by 'virtual:world', not found
--- stderr
thread 'main' panicked at '
Could not find directory of OpenSSL installation, and this `-sys` crate cannot
proceed without this knowledge. If OpenSSL is installed and this crate had
trouble finding it, you can set the `OPENSSL_DIR` environment variable for the
compilation process.
Make sure you also have the development packages of openssl installed.
For example, `libssl-dev` on Ubuntu or `openssl-devel` on Fedora.
If you're in a situation where you think the directory *should* be found
automatically, please open a bug at https://github.com/sfackler/rust-openssl
and include information about your system as well as this message.
$HOST = x86_64-unknown-linux-gnu
$TARGET = x86_64-unknown-linux-gnu
openssl-sys = 0.9.87
But I have OpenSSL installed.
Per this:
Make sure you also have the development packages of openssl installed. For example,
libssl-dev
on Ubuntu oropenssl-devel
on Fedora.
I installed openssl-devel
via dnf. After that, it installed. Is that package required or is this a bug?
I'm unable to build due to a compile error on Linux Mint with an Intel i7 laptop.
The error dump is to long so I'll post the second half in a comment.
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:303:13
|
302 | self.text_area.set_block(
| --------- arguments to this method are incorrect
303 | / Block::default()
304 | | .borders(Borders::ALL)
305 | | .style(text_block_style)
306 | | .title(title),
| |_____________________________^ expected ratatui::widgets::block::Block<'_>
, found ratatui::widgets::Block<'_>
|
= note: ratatui::widgets::Block<'_>
and ratatui::widgets::block::Block<'_>
have similar names, but are actually distinct types
note: ratatui::widgets::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/widgets/block.rs:230:1
|
230 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
note: ratatui::widgets::block::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/widgets/block.rs:233:1
|
233 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1648:12
|
1648 | pub fn set_block(&mut self, block: Block<'a>) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:317:41
|
317 | self.text_area.set_cursor_style(cursor_style);
| ---------------- ^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:319:46
|
319 | self.text_area.set_cursor_line_style(Style::default());
| --------------------- ^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1770:12
|
1770 | pub fn set_cursor_line_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:322:13
|
321 | self.text_area.set_style(
| --------- arguments to this method are incorrect
322 | / Style::default()
323 | | .fg(Color::Reset)
324 | | .remove_modifier(Modifier::BOLD),
| |________________________________________________^ expected ratatui::style::Style
, found a different ratatui::style::Style
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1629:12
|
1629 | pub fn set_style(&mut self, style: Style) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:328:34
|
328 | .set_selection_style(Style::default().bg(Color::White).fg(Color::Black));
| ------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1387:12
|
1387 | pub fn set_selection_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^^^^
error[E0277]: the trait bound impl ratatui::widgets::Widget + '_: Widget
is not satisfied
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/editor/mod.rs:330:29
|
330 | frame.render_widget(self.text_area.widget(), area);
| ------------- ^^^^^^^^^^^^^^^^^^^^^^^ the trait Widget
is not implemented for impl ratatui::widgets::Widget + '_
| |
| required by a bound introduced by this call
|
= help: the following other types implement trait Widget
:
BarChart<'a>
Canvas<'a, F>
Chart<'a>
Gauge<'a>
LineGauge<'a>
List<'a>
Monthly<'a, S>
Paragraph<'a>
and 5 others
note: required by a bound in Frame::<'_>::render_widget
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/terminal.rs:598:12
|
598 | W: Widget,
| ^^^^^^ required by this bound in Frame::<'_>::render_widget
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:153:46
|
153 | self.title_txt.set_cursor_line_style(Style::default());
| --------------------- ^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1770:12
|
1770 | pub fn set_cursor_line_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:154:45
|
154 | self.date_txt.set_cursor_line_style(Style::default());
| --------------------- ^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1770:12
|
1770 | pub fn set_cursor_line_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:155:45
|
155 | self.tags_txt.set_cursor_line_style(Style::default());
| --------------------- ^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1770:12
|
1770 | pub fn set_cursor_line_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:162:49
|
162 | self.title_txt.set_cursor_style(active_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:163:48
|
163 | self.date_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:164:48
|
164 | self.tags_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:167:49
|
167 | self.title_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:168:48
|
168 | self.date_txt.set_cursor_style(active_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:169:48
|
169 | self.tags_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:172:49
|
172 | self.title_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:173:48
|
173 | self.date_txt.set_cursor_style(deactivate_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:174:48
|
174 | self.tags_txt.set_cursor_style(active_cursor_style);
| ---------------- ^^^^^^^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1941:12
|
1941 | pub fn set_cursor_style(&mut self, style: Style) {
| ^^^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:182:38
|
182 | self.title_txt.set_style(active_style);
| --------- ^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1629:12
|
1629 | pub fn set_style(&mut self, style: Style) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:184:17
|
183 | self.title_txt.set_block(
| --------- arguments to this method are incorrect
184 | / Block::default()
185 | | .borders(Borders::ALL)
186 | | .style(active_style)
187 | | .title("Title"),
| |___________________________________^ expected ratatui::widgets::block::Block<'_>
, found ratatui::widgets::Block<'_>
|
= note: ratatui::widgets::Block<'_>
and ratatui::widgets::block::Block<'_>
have similar names, but are actually distinct types
note: ratatui::widgets::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/widgets/block.rs:230:1
|
230 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
note: ratatui::widgets::block::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/widgets/block.rs:233:1
|
233 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1648:12
|
1648 | pub fn set_block(&mut self, block: Block<'a>) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:190:38
|
190 | self.title_txt.set_style(invalid_style);
| --------- ^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1629:12
|
1629 | pub fn set_style(&mut self, style: Style) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:192:17
|
191 | self.title_txt.set_block(
| --------- arguments to this method are incorrect
192 | / Block::default()
193 | | .borders(Borders::ALL)
194 | | .style(invalid_style)
195 | | .title(format!("Title : {}", self.title_err_msg)),
| |_____________________________________________________________________^ expected ratatui::widgets::block::Block<'_>
, found ratatui::widgets::Block<'_>
|
= note: ratatui::widgets::Block<'_>
and ratatui::widgets::block::Block<'_>
have similar names, but are actually distinct types
note: ratatui::widgets::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/widgets/block.rs:230:1
|
230 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
note: ratatui::widgets::block::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/widgets/block.rs:233:1
|
233 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1648:12
|
1648 | pub fn set_block(&mut self, block: Block<'a>) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:200:37
|
200 | self.date_txt.set_style(active_style);
| --------- ^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1629:12
|
1629 | pub fn set_style(&mut self, style: Style) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:202:17
|
201 | self.date_txt.set_block(
| --------- arguments to this method are incorrect
202 | / Block::default()
203 | | .borders(Borders::ALL)
204 | | .style(active_style)
205 | | .title("Date"),
| |__________________________________^ expected ratatui::widgets::block::Block<'_>
, found ratatui::widgets::Block<'_>
|
= note: ratatui::widgets::Block<'_>
and ratatui::widgets::block::Block<'_>
have similar names, but are actually distinct types
note: ratatui::widgets::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/widgets/block.rs:230:1
|
230 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
note: ratatui::widgets::block::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/widgets/block.rs:233:1
|
233 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1648:12
|
1648 | pub fn set_block(&mut self, block: Block<'a>) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:208:37
|
208 | self.date_txt.set_style(invalid_style);
| --------- ^^^^^^^^^^^^^ expected ratatui::style::Style
, found a different ratatui::style::Style
| |
| arguments to this method are incorrect
|
= note: ratatui::style::Style
and ratatui::style::Style
have similar names, but are actually distinct types
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/style.rs:192:1
|
192 | pub struct Style {
| ^^^^^^^^^^^^^^^^
note: ratatui::style::Style
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/style.rs:208:1
|
208 | pub struct Style {
| ^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1629:12
|
1629 | pub fn set_style(&mut self, style: Style) {
| ^^^^^^^^^
error[E0308]: mismatched types
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-journal-0.6.0/src/app/ui/entry_popup/mod.rs:210:17
|
209 | self.date_txt.set_block(
| --------- arguments to this method are incorrect
210 | / Block::default()
211 | | .borders(Borders::ALL)
212 | | .style(invalid_style)
213 | | .title(format!("Date : {}", self.date_err_msg)),
| |___________________________________________________________________^ expected ratatui::widgets::block::Block<'_>
, found ratatui::widgets::Block<'_>
|
= note: ratatui::widgets::Block<'_>
and ratatui::widgets::block::Block<'_>
have similar names, but are actually distinct types
note: ratatui::widgets::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.24.0/src/widgets/block.rs:230:1
|
230 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
note: ratatui::widgets::block::Block<'_>
is defined in crate ratatui
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ratatui-0.25.0/src/widgets/block.rs:233:1
|
233 | pub struct Block<'a> {
| ^^^^^^^^^^^^^^^^^^^^
= note: perhaps two different versions of crate ratatui
are being used?
note: method defined here
--> /home/rj/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tui-textarea-0.4.0/src/textarea.rs:1648:12
|
1648 | pub fn set_block(&mut self, block: Block<'a>) {
| ^^^^^^^^^
Is it possible to hide the content view (on the right)? I usually don't take notes there and the titles of the entries are enough for me to remember the context. So the content is taking a huge amount of space in my terminal and it is usually empty.
It would be nice to have a special key to toggle the visibility of content. I'm happy to submit a PR if you find this applicable.
It would be helpful to add a new GitHub action to generate binaries for each platform on new releases
Many users can be expected to have Git configured. Thus, it is very likely that, if Git is configured, also a preferred editor is set. With the git2
crate (MIT OR Apache-2.0), you can access this configuration and offer to use this editor as the default external editor. If the configuration should not be accessible for some reason, e.g., the current working directory is not a Git repository, Git is not configured, or a preferred editor for Git is not set, the current implementation should be applied as fallback. Thus, the configured Git editor would be an additional offer to the users.
For the implementation, first of all, run cargo add git2 --no-default-features
to add the crate with minimal dependencies to the Rust manifest. Then, to access the configuration, you can use the following function.
fn get_git_editor() -> Result<String, u8> {
git2::Repository::open(".").map_or(Err(64),
|r| {
r.config().map_or(Err(69), |c| c.get_string("core.editor").map_or(Err(65), Ok))
},
)
}
The function returns you either the configured Git editor or an integer according to the sysexits header; the latter is meant to be a placeholder for your preferred return value in case of an error. For the real Rust implementation of sysexits, you can use https://github.com/sorairolake/sysexits-rs (cargo add sysexits
).
What do you think about this feature?
I would like to have special keys to reorder the entries, for example:
My reasoning is that I want to sort my notes by their importance/priority.
Related: #264
It would be helpful to have the ability to copy and past from system clipboard. The current workaround using tmux or other terminal emulator built-in isn't that clear and forces the users to use other software to perform a task that can be implemented directly in the application.
The cross platform compatibility is something to consider since we need to make sure it works on X11 and Wayland on Linux and with Windows and Macos as well.
Error: error with configuration: unknown query parameter \C:\Users\asus\Documents\tui-journal\entries.db
while parsing connection URL
Caused by:
unknown query parameter \C:\Users\asus\Documents\tui-journal\entries.db
while parsing connection URL
Im running windows 11 and I installed the app via cargo command
Starting the App with the flag to write the configurations fails if the folder doesn't exist.
In this case, a new folder should be created.
With the new update from Ratatui and the breaking changes in it, we must do some adjustments in the source code for the breaking changes. It's important to do that because textarea doesn't specify it's ratatui version which will take the latest one which leads to compilation errors. See #259
The README and the Wiki needs to be updated after the implementation for the priority and the sort features are done.
Here is the missing features from the documentation:
The keybindings popup has a lot of information and not all keybindings are shown on smaller terminal windows.
Even though the ability to scroll does exist, it's not obvious for the users and it would be helpful to show a scrollbar when needed.
After the latest changes I've encountered and error while running the changelog-assembly workflow
Here is the link to the failed pipeline
@kevinmatthes Could you please have a look on it
Thank you for this application, it is very useful to take notes on active projects!
I would like to ask you to add an export option for the currently selected journal such that the entered text can be backed up in a different file as well as be processed by other tools. The entire buffer might be dumped into a plain text file named according to the user's input. One use case might be that a journal is valid source code which should be compiled, e.g. the journal could be written in Markdown and shall be turned into a PDF by Pandoc.
I the last release I tried the build binaries for it but it failed with different error messages.
This workflow should be rewritten with make file which can be tested separately
Since Aeruginous workflow is now completely functional in the repo's workflows, I think it's time to run the for the whole repo and filter out the unwanted entries before the next release.
The notes from this comment are important to achieve that
In the latest version v0.1.1, the command i
for editing the selected journal when the buffer is focused is not documented.
The current implementation of the settings module needs the following improvements and fixes:
I would like the buffer to be saved automatically upon closing external editor. Quitting vim with :wq then saving the buffer again with s seems unintuitive.
After adding the multi-select mode #34 it's now possible to export multiple journals at once and re-import them to other back-end files. Here are the main points:
After adding Visual mode it's not possible to write the letter 'v' in the built in editor anymore
It would be useful to be able to search all journals for some text. For the implementation, I would like to suggest to query the back-end for the search text and to select the (first) journal which contains that text or to highlight all journals' names in the left-hand sidebar which contain that search text.
For the SQL back-end, I would like to suggest to use select title from entries where content like "%{}%"
as template for the query in order to determine all matching journals; in order to prevent SQL injections, you could replace all non-alphanumeric characters by the SQL placeholder %
in the search text. Note: sqlite3 is not case sensitive regarding text search with placeholders.
After Adding the priority field to the journal it's useful for the users if they can define their default priority in the setting and this will be the suggestion when the users creates a new journal entry
With the new release from tui-textarea it's now possible to implement a mini visual mode in the build-in Editor since it supports selecting and copying the text.
...live in a terminl
-> ...live in a *terminal*
😅
Found tui-journal from nixpkgs and think it's cool. Would love to see a sorting feature. For example:
Seems like prior discussion was in #9 (comment) so I'm making a new issue as suggested.
The current release pipeline build the app binaries for various operating systems these binaries don't get attached to the release at the end
Border colors for textboxes aren't working anymore. I tested that in the new entry dialog and the validation colors aren't working anymore.
Here are the places to check and fix:
Aeruginous v2.2.0 has two new and interesting features: a version incrementing system as well as a CFF release date updater. As we assemble the RONLOG with Aeruginous, anyway, I would like to suggest to also add the version incrementing feature and the CFF release date synchronisation to the RONLOG assembly workflow because I noticed that these aspects became out of sync, somehow.
Your benefit would be that would only need to activate the RONLOG assembly workflow and all hard-coded version numbers in the entire code base would be updated automatically.
With the scrollbar implemented in the journals' list it would make sense to implement it to the editor too
It would be helpful to add a separate fuzzy finder for the journals besides the normal search.
The fuzzy finder and it's results could be built in a separate popup then only the selected journal in the main view will be change according to the fuzzy finder.
I think this approach as simple for the users and for the implementation
It would be helpful to move between different input controls in the popups with arrow keys beside the tab control since those are the controls that the non-vim users intuitively use.
We have the following popups to fix:
It would be helpful for users to have a way to add already existing tags to journals without having to type them again.
This could be achieved by creating a prompt inside the create/edit prompt with only a list of the tags inside, where the user can multi-select the tags to add them automatically to the tags text-field.
It's important to solve the case where the users has new tags and wanted to add more tags from the existing ones
Since more functions and keybindings are added, the help popup is getting cluttered with all the information in one page + the view needs scrolling functions for small terminals.
Here are the suggestions to solve these problems:
hjlk
<esc>
, <Ctrl>c
and q
<tab>
and <Shift><tab>
and maybe a highlighted letter in each tab to switch toI think it would be helpful to add a multi-selection mode for the journals-list where the user can toggle the selected journal and perform actions on them (like Delete, or export)
The selection mode could have the following functions:
<space>
a
i
<Esc>
and <Ctrl>c
d
>
Technically, it would suffice to harvest all changes as usual once, on release, such that one big fragment would be generated instead of multiple ones. That fragment would not even be saved in the repository as it would be processed (and, thus, removed) right after its creation during the RONLOG assembly. Aeruginous would therefore harvest all changes from the latest tag on, then.
Would you consider this a useful enhancement, @AmmarAbouZor? If so, I will adjust Aeruginous accordingly and suggest you the corresponding changes to your CI after releasing the respective new version of the tool.
(By the way: the latest version of Aeruginous fixes one of the most annoying bugs RONLOGs had so far -- the random re-ordering during the assembly of a new section; see kevinmatthes/aeruginous-rs#795.)
When starting the program with defining the path to the backend files the following errors occur:
The newly available widget Scrollbar is helpful for the journals list
The Journal Popup has the field for the date, and the users can modify it using an input-box with live validation and a hint.
It would be better if we can use the calendar widget their too.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.