LonamiWebs / Stringlate

Android application to help in strings.xml translation
https://lonamiwebs.github.io/stringlate/index
MIT License
106 stars 48 forks source link

Add a progress bar #12

Closed RomFouq closed 7 years ago

RomFouq commented 7 years ago

I think a progress bar and a strings translated/to translate indicator would be handy. I like knowing where I am among all these strings... The progress could be added just under the button bar and the counter near the 'Next' button.

Thanks for your app that make translations much faster!

Lonami commented 7 years ago

I hope it doesn't bring people down when they've translated 100 strings and the bar hasn't even moved on large projects ;)

It's a fancy idea, I like it. How about this layout? photo_2016-12-19_17-58-11

Small font size and progress bar so it doesn't take up too much space (the keyboard already covers a lot).

Edit: Just read it, glad you like the application and thanks for the positive feedback!

CrimsonFork commented 7 years ago
What about using
and
instead of
<<
and
>>
?

Also maybe a save symbol instead of the text?

Additionally I think that it looks better if there is no status text under the progress bar. Maybe you could add a function to enable/disable this?

Lonami commented 7 years ago

It doesn't really matter, either a symbol or not for Previous/Next. It's a matter of taste, and I prefer the text: gives more information, it's more verbose.

Also maybe a save symbol instead of the text?

I could do add a black "Save-like" symbol.

I think that it looks better if there is no status text under the progress bar.

Again, matter of taste. I like the additional information, and it doesn't take too much space.

Maybe you could add a function to enable/disable this?

The less settings the better :)

CrimsonFork commented 7 years ago

The text may not take much space but I think that it may be a sort of disappointing if you see something like

13/496

(in my opinion)

I don't agree that "the less - the better". Something is perfect only if there is nothing to add and nothing to remove.

But maybe you could add something like themes or even an "expert mode" setting and hide anything less relevant inside. Just an idea of mine.

Am 20. Dezember 2016 11:40:39 MEZ, schrieb Lonami notifications@github.com:

It doesn't really matter, either a symbol or not for Previous/Next. It's a matter of taste, and I prefer the text: gives more information, it's more verbose.

Also maybe a save symbol instead of the text?

I could do add a black "Save-like" symbol.

I think that it looks better if there is no status text under the progress bar.

Again, matter of taste. I like the additional information, and it doesn't take too much space.

Maybe you could add a function to enable/disable this?

The less settinga the better :)

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-268211162

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

Lonami commented 7 years ago

but I think that it may be a sort of disappointing if you see something like 13/496

I actually made a joke on that (I hope it doesn't bring people down when they've translated 100 strings and the bar hasn't even moved) on my previous comment. But no, I doubt it disappoints. The same applies to the progress bar, if you've been an hour translating and it hasn't moved, then you feel the same.

There's no need to rush, do a bit on your free time, don't feel forced: feeling forced is not the point of the application.

I don't agree that "the less - the better". Something is perfect only if there is nothing to add and nothing to remove.

Sorry if I generalized a bit too much. What I meant is that I don't want settings that tweak things as small as showing or not the number of strings translated. Really, some settings screen have so many things that then it's crazy to find the setting you actually want to tweak.

But maybe you could add something like themes or even an "expert mode"

Something like "More settings — you won't usually need to tweak these"? I don't know, I like it how it is. Stringlate doesn't even have a Settings activity yet! Drop a new issue if it really bothers you though :)

CrimsonFork commented 7 years ago

Oh, I've actually forgot that it's not only for apps...

Lonami commented 7 years ago

Oh, I've actually forgot that it's not only for apps...

What did you mean?

CrimsonFork commented 7 years ago

Oh, sorry, wrong thread. ¯_(ツ)_/¯

Am 20. Dezember 2016 16:01:07 MEZ, schrieb Lonami notifications@github.com:

Oh, I've actually forgot that it's not only for apps...

What did you mean?

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

CrimsonFork commented 7 years ago

Could you add it as a background for the applicatoons lists? I think that would be useful especially if you think of #7 .

Lonami commented 7 years ago

@OffifialMITX do you actually mean the applications under the Discover activity or the history of repositories you have?

This presents new problems though: what locale should be shown? What if you have the phone set to English and the default is also English? It would show 0/xx, although the strings would already be on the default file. And what if you're translating it into a language which is not your native one?

CrimsonFork commented 7 years ago

I mean both (lists), but more important for the history, and I thought of just making the standart locale prewritten if it's not the standart of the application or translated already.

Am 21. Dezember 2016 23:06:00 MEZ, schrieb Lonami notifications@github.com:

@OffifialMITX do you actually mean the applications under the Discover activity or the history of repositories you have?

This presents new problems though: what locale should be shown? What if you have the phone set to English and the default is also English? It would show 0/xx, although the strings would already be on the default file. And what if you're translating it into a language which is not your native one?

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-268654249

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

Lonami commented 7 years ago

I cannot tell what language is used for the default file, although it mostly is English.

And again, maybe the user doesn't simply work with its native language: they might be translating it into any other. And an application can have a lot of localizations, it's not clear which one should be shown.

This is why it's shown per locale on the Translate activity.

CrimsonFork commented 7 years ago

I didn't know you can't say which is the standart locale, nevermind then.

Am 21. Dezember 2016 23:46:37 MEZ, schrieb Lonami notifications@github.com:

I cannot tell what language is used for the default file, although it mostly is English.

And again, maybe the user doesn't simply work with its native language: they might be translating it into any other. And an application can have a lot of localizations, it's not clear which one should be shown.

This is why it's shown per locale on the Translate activity.

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-268663896

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

CrimsonFork commented 7 years ago

What about depending the bar not by the numbers but by the characters from the original locale?

Lonami commented 7 years ago

Two reasons come to my mind:

  1. Not all languages have the same length of words, so it would be highly inaccurate.
  2. The number would be really really high.

I think that keeping it counting strings is more tangible (and easier to understand).

CrimsonFork commented 7 years ago

Both true but:

  1. Many apps have some really short strings lik "start" or "pause" or whatever and one or two relative long strings like the license agreement or help so you don't feel very great if you have ten strings, the first nine are single words, you are already happy that you did it in less then a minute and then there comes a novel. Besides, the progress bar should show how much from the original is translated and not how big the result is, or did I get it wrong?

  2. I thought about it either and I agree, that wouldn't be very useful. So maybe while the progress bar counts the characters the text still shows "x/y done".

Am 29. Dezember 2016 08:42:43 MEZ, schrieb Lonami notifications@github.com:

Two reasons come to my mind:

  1. Not all languages have the same length of words, so it would be highly inaccurate.
  2. The number would be really really high.

I think that keeping it counting strings is more tangible (and easier to understand).

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-269593356

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

Lonami commented 7 years ago

Besides, the progress bar should show how much from the original is translated and not how big the result is

But how can possibly tell this? What do you mean exactly?

CrimsonFork commented 7 years ago

I mean, the progress bar shows (or at least should show) how much of the original strings already have an equivalent one in the current locale and not how much content was created by the StringLate.

So what I've thought about is that Stringlate counts the characters and (if the locale is being created so there are 0 strings) sets x for original characters and y for the ones which belong to the translated string.

What I'm talking about is: z=character count from the actual original string.

So every time you translate a string the progress bar re-renders to (y+z/x).

I hope you could understand.

Am 29. Dezember 2016 11:12:46 MEZ, schrieb Lonami notifications@github.com:

Besides, the progress bar should show how much from the original is translated and not how big the result is

But how can possibly tell this? What do you mean exactly?

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-269608656

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

Lonami commented 7 years ago

the progress bar shows how much of the original strings already have an equivalent one in the current locale and not how much content was created by the Stringlate.

Correct. If there were 50/100 strings translated when you synchronized the repository, then the progress bar will show 50/100.

sets x for original characters and y for the ones which belong to the translated string.

Do you mean to set these numbers when you've synchronized the repository?

z=character count from the actual original string.

But different languages have different lengths… Comparing the characters of the original string with the translation is not reliable. Simple example: random in English has 6 characters, whereas azar in Spanish has 4. And this is a single word. Comparing those would make no sense.

So every time you translate a string the progress bar re-renders to (y+z/x).

OK, my mind blew up right there. Sorry, I don't know what you mean, but as for what I understand, I think that this is not feasible.

licaon-kter commented 7 years ago

I guess @OffifialMITX wants to count all the strings characters (in the file) and compare that to the total strings that were translated.

Say, translation has 10 strings, total 1000 chars. You translate 5 strings, progress bar says 5/10 But, those 5 strings (in the original form) have 200 chars, so it should amount to 20% (whereas your 5/10 indicator now kinda lies to you saying you've translated 50%)

CrimsonFork commented 7 years ago

Exactly, I've meant to reference only tge original locale.

Am 29. Dezember 2016 12:13:05 MEZ, schrieb licaon-kter notifications@github.com:

I guess @OffifialMITX wants to count all the strings characters (in the file) and compare that to the total strings that were translated.

Say, translation has 10 strings, total 1000 chars. You translate 5 strings, progress bar says 5/10 But, those 5 strings (in the original form) have 200 chars, so it should amount to 20% (whereas your 5/10 indicator now kinda lies to you saying you've translated 50%)

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/LonamiWebs/Stringlate/issues/12#issuecomment-269615554

-- Diese Nachricht wurde von meinem Android-Gerät mit K-9/p≡p gesendet.

Lonami commented 7 years ago

But, those 5 strings (in the original form) have 200 chars, so it should amount to 20%

Now that makes sense. Simply put: weighted strings. Perhaps translated/count (weighted %) on the indicator then?

CrimsonFork commented 7 years ago

What about the progress bar in the view of downloaded projects?

Maybe it is also not very useful to know how many percent you've translated, my idea was only to view it in the progress bat itself.

Besides, I'd like to see the progress bar moving only after clicking the "next" button, not after typing the first letter.

That's my opinion.

Lonami commented 7 years ago

What about the progress bar in the view of downloaded projects?

You mentioned this earlier, but again, how would I tell which locale is being translated? The last selected one per repository? Where should that go on the list items though?

Maybe it is also not very useful to know how many percent you've translated

I like it.

I'd like to see the progress bar moving only after clicking the "next" button, not after typing the first letter.

Yes, it feels weird. Edit: Fixed.

CrimsonFork commented 7 years ago

Yes, I think it should be the last used one. I have three ideas how this shoukd be displayed, I'll draw them later on when I'm at my laptop.

Lonami commented 7 years ago

I'll draw them later on when I'm at my laptop.

I was going to ask you, but I guess I don't need to add another comment to the discusion. Oh, wait…