Helium314 / HeliBoard

Customizable and privacy-conscious open-source keyboard
Apache License 2.0
1.86k stars 68 forks source link

Please add a timestamp button to the toolbar. #846

Open JaspetFirnoy opened 3 weeks ago

JaspetFirnoy commented 3 weeks ago

Desired feature: Have a timestamp button in the toolbar. When you press the button, it should input the date and time. The format of the timestamp should be customizable. For example, "yyyy-MM-dd HH:mm:ss"

Use cases: Keeping a daily journal Writing the date of an event

Alternative feature: Buttons in the toolbar that input user-defined formatted information. For example, time, location, device information (battery, memory, brand, model, operating system, etc.), And the combination of these. For example, time+" "+location

keyboard-junkie commented 1 week ago

I was thinking of similar user defined toolbar buttons, where user defined action would be bound to events like tap, long press.

An action would be print character / text e.g. one can bind an action to print special character not present in standard keyboard layout or print any text user want to associate with given button.

ccoVeille commented 1 week ago

I'm a bit afraid by such a feature. It would bring tons of feature, and then bugs.

It would make the keyboard very complicated to understand, and I think most user won't use it.

But yes, it's a valid request. But I find it's a niche.

That said, that's only my point of view. I'm a random guy. My voice doesn't count more than any other.

keyboard-junkie commented 1 week ago

I agree, this is actually "nice to have" / "low priority" feature — issues list contains things that should be definitively prioritized over things like this.

JaspetFirnoy commented 1 week ago

I'm a bit afraid by such a feature. It would bring tons of feature, and then bugs.

It would make the keyboard very complicated to understand, and I think most user won't use it.

But yes, it's a valid request. But I find it's a niche.

That said, that's only my point of view. I'm a random guy. My voice doesn't count more than any other.

I don't think the feature I proposed will lead to errors in the application. Maybe just 50 lines of code would be enough for its basic version.

I also don't think that adding the feature would overly complicate the application, as it would simply require adding one more line to the "Settings/Advanced" section.

I consider the feature I suggested to be somewhat niche, rather than entirely niche.

To the best of my knowledge, no other keyboard offers this feature. Therefore, if this feature is incorporated into this keyboard, anyone interested in using it would likely prefer this keyboard.

ccoVeille commented 1 week ago

My point was the fact. Your request doesn't seem useful for most people, so it's not something I would expect to be prioritized. It's a very small feature, yes. But I think it's the one of the kind yo open Pandora box, such as:

And over the time because of the number of features added, the configuration becomes a mess. And it's uneasy to changes this, without getting angry users, because a needed refactoring broke a feature used by 0.1%

That's what I'm worried

JaspetFirnoy commented 1 week ago

My point was the fact. Your request doesn't seem useful for most people, so it's not something I would expect to be prioritized. It's a very small feature, yes. But I think it's the one of the kind yo open Pandora box, such as:

  • oh, that's not my date format
  • I expect it to respect the timezone I want and not the one of my phone
  • then later
  • I want to be able to add my email
  • oh not only an email but I have many. I need a selector

And over the time because of the number of features added, the configuration becomes a mess. And it's uneasy to changes this, without getting angry users, because a needed refactoring broke a feature used by 0.1%

That's what I'm worried

This feature will enable the keyboard to:

• Gain a competitive advantage. • Become more comprehensive. • Influence other keyboards. • Prevent writing incorrect dates. • Not waste time with writing dates.

I believe that at least 33% of users, not just 0.1%, will use this feature.

Charles7z commented 1 week ago

This feature along with transform feature people are asking for are in Multiling O Keyboard.

They aren't a big deal. I personally removed the date & time ones because I never use them 🤷‍♂️

They shouldn't be problematic to implement or cause bugs outside of themselves.

However they should be done as a group not singular items thrown into the toolbar but rather a transform icon that will bring up a pop-up for the person to choose, similar to Multiling O Keyboard though it can also have them in the default toolbar.

The real problem is, if they run in the background trying to transform text then it eats resources — Multiling O Keyboard does this if you have them in the toolbar and not just in the transform key.

This is the transform key:

Screenshot_20240622-153141

This is the toolbar:

Screenshot_20240622-153050

ccoVeille commented 1 week ago

I'm more likely to support a selector like the screenshot that @Charles7z suggests than having suggestions or a icons to add dates.

It's seem easier to maintain, can help user to choose date format. More things could be added. We can imagine that even if the list is huge, we could sort them by last usage.

And also, if you don't need it, you don't enable it, keeping the keyboard simple for most users.

JaspetFirnoy commented 1 week ago

This feature along with transform feature people are asking for are in Multiling O Keyboard.

They aren't a big deal. I personally removed the date & time ones because I never use them 🤷‍♂️

They shouldn't be problematic to implement or cause bugs outside of themselves.

However they should be done as a group not singular items thrown into the toolbar but rather a transform icon that will bring up a pop-up for the person to choose, similar to Multiling O Keyboard though it can also have them in the default toolbar.

The real problem is, if they run in the background trying to transform text then it eats resources — Multiling O Keyboard does this if you have them in the toolbar and not just in the transform key.

This is the transform key:

Screenshot_20240622-153141

This is the toolbar:

Screenshot_20240622-153050

I think it would be more useful for the user to enter the settings section and determine the timestamp format in advance, rather than using a pop-up window. Because opening a window would be a waste of time.

The resources needed for such a simple feature are abundant even in calculators.

If only a timestamp button is added, the likelihood of it causing an error is close to impossible.

Charles7z commented 1 week ago

I think it would be more useful for the user to enter the settings section and determine the timestamp format in advance, rather than using a pop-up window. Because opening a window would be a waste of time.

did you look at how Multiling O Keyboard did it?

Everything can be configured buy the user in settings — which items, the specific format off the items, etc. 🤷🏻‍♂️

JaspetFirnoy commented 1 week ago

did you look at how Multiling O Keyboard did it?

I think Multiling O Keyboard is closed source. I prefer not to use closed source programs. Also, I have gotten used to and really like HeliBoard, so it would be much nicer if the feature I am looking for is in HeliBoard.

Charles7z commented 1 week ago

I think Multiling O Keyboard is closed source. I prefer not to use closed source programs. Also, I have gotten used to and really like HeliBoard, so it would be much nicer if the feature I am looking for is in HeliBoard.

It has nothing to do with any of that. It's about getting the idea clear in your mind to present to the developers something useful for all users.

Generally it's called research 😉

JaspetFirnoy commented 1 week ago

It has nothing to do with any of that. It's about getting the idea clear in your mind to present to the developers something useful for all users.

Generally it's called research 😉

Sorry, I didn't understand anything you wrote.

realpixelcode commented 5 days ago

But I think it's the one of the kind yo open Pandora box, such as:

How about only offering a couple placeholder variables for the day, month, year etc., requiring the user to do all the formatting? That way, the user could decide to use the feature for something else, like their e-mail address. The text to be inserted would then be fully customised by the user, and HeliBoard would not need to bother about having to pre-define anything.

Helium314 commented 4 days ago

But I think it's the one of the kind yo open Pandora box

I think it's been opened quite a while ago already. It feels like for every feature users want it it be tuned and extended in some way. And I'm totally fine with users opening issues about this. I can't implement everything, but for these specific wishes there are quite a few that can be implemented in a very contained way, so there is very little chance of breaking anything else.

A timestamp button (or maybe a custom text button with timestamp capability) should be doable in such a contained way. The formatting string can just be passed to SimpleDateFormat, which understands formats as the "yyyy-MM-dd HH:mm:ss" example above.