futo-org / android-keyboard

Offical FUTO Keyboard Issue Tracker and Source Mirror of https://gitlab.futo.org/keyboard/latinime
Other
805 stars 24 forks source link

Faster Keyboard Switching for Self-Hosted Whisper Servers #519

Closed thiswillbeyourgithub closed 3 weeks ago

thiswillbeyourgithub commented 3 months ago

Use Cases

Hi,

I've been using an APK on my Android phone that calls Whisper on a remote server, but as I am now self-hosting my own whisper server, I am using it much more and it's really a pain now how awkward it is to switch keyboards.

The only thing I can do now is to do a long press on the language switch button and then click on switch keyboard. The time needed is about 1.5 seconds, I'd say, and it's really disrupting my workflow :)

Proposal

What I'm proposing is to add a new action button that, when pressed, would trigger directly the switch keyboard popup instead of the language switch popup.

An even better solution would be to add an action that would switch directly to a specific keyboard.

References

No response

abb128 commented 3 months ago

You can disable the built-in voice input, in which case the voice input button will switch to your installed voice IME

thiswillbeyourgithub commented 3 months ago

Thank you but actually no I don't think I can : the app I'm using is a keyboard app, not a "voice" app.

Here's the app https://github.com/j3soon/whisper-to-input

If anyone has a better FOSS app to suggest to call whisper I'm all ears (hah!)

magakis commented 3 months ago

Use Cases

Hi,

I've been using an APK on my Android phone that calls Whisper on a remote server, but as I am now self-hosting my own whisper server, I am using it much more and it's really a pain now how awkward it is to switch keyboards.

The only thing I can do now is to do a long press on the language switch button and then click on switch keyboard. The time needed is about 1.5 seconds, I'd say, and it's really disrupting my workflow :)

Proposal

What I'm proposing is to add a new action button that, when pressed, would trigger directly the switch keyboard popup instead of the language switch popup.

An even better solution would be to add an action that would switch directly to a specific keyboard.

References

No response

This is a great suggestion and I second it for another reason.

For non-English languages, other keyboards do a better job at the moment. Switching between other keyboard for non-English languages and using FUTO for English is very convenient.

Or you can do what Gboard does where in the list with the other languages it also shows other available keyboards.

abb128 commented 3 months ago

Thank you but actually no I don't think I can : the app I'm using is a keyboard app, not a "voice" app.

Here's the app https://github.com/j3soon/whisper-to-input

If anyone has a better FOSS app to suggest to call whisper I'm all ears (hah!)

That looks like it should be a voice app to me. If it's not labeled as a voice IME then I'd say it's a bug that needs to be resolved there, not in FUTO Keyboard, see https://developer.android.com/reference/android/view/inputmethod/InputMethodSubtype#attr_android:imeSubtypeMode

thiswillbeyourgithub commented 3 months ago

Thank you but actually no I don't think I can : the app I'm using is a keyboard app, not a "voice" app. Here's the app https://github.com/j3soon/whisper-to-input If anyone has a better FOSS app to suggest to call whisper I'm all ears (hah!)

That looks like it should be a voice app to me. If it's not labeled as a voice IME then I'd say it's a bug that needs to be resolved there, not in FUTO Keyboard, see https://developer.android.com/reference/android/view/inputmethod/InputMethodSubtype#attr_android:imeSubtypeMode

I respectfully disagree: it's not a dictation app but a transcription app so just like futo voice it can't do newlines, commas are sometimes misplaced etc. So among the pros of this app: you have acces to a few keys like space, newline etc.

abb128 commented 3 months ago

It's standard for these sorts of IMEs to label themselves as voice IMEs by setting the subtype mode to voice in their xml, so that other keyboards can know to switch to it when the voice input button is pressed. If this app set its subtype mode attribute to voice then it would work automatically with FUTO Keyboard and some other keyboards.

I'm not sure what your disagreement here is exactly. It doesn't matter how it's implemented and whether it's dictation or transcription, if it's an IME that uses voice then it should have its mode set to voice. The standalone FUTO Voice Input app does this and it integrates well with keyboards like OpenBoard, Heliboard, etc. It doesn't limit the IME's functionality or ability to do spaces or newlines whatsoever, it's just a bit of metadata

thiswillbeyourgithub commented 3 months ago

Okay thank you very much for this information!

That being saidI also aggree with @magakis that there are other other benefits to adding this new action.

Also, the other app is afaik pre alpha, has bugs and very questionable esthetics so I'm not really expecting much improvement I must say...

Chinoman10 commented 3 months ago

FYI what Swiftkey does is allow a long-tap with a swipe to very easily switch between the different loaded languages. This would make it very convenient as my hold-tap delay is just 150 ms.

I've also had some issues with the transition, but I'll compile a list on another issue to be tracked...