Miranda NG Official Community Forum

Forum for English speaking Miranda NG users => Localization => Topic started by: vultures on 15 03 2015, 17:24:14

Title: Serbian Translation - In Progress
Post by: vultures on 15 03 2015, 17:24:14
Hello... Здравствујте.  :D

Cutting right to the chase, I've begun Miranda NG translation just yesterday. Here's what I've picked up on:
- the =Core= file from the GitHub, since it seemed to me as the most up-to date one;
- the Russian translation file, the langpack_russian with more that 40k lines.

Currently, I'm about 10% done into the translation. I do have some important questions:


Any other help will be greatly appreciated, since the 'Languages' sections are scarce with insight for new translators.

=======================
Important - Translation Status
langpack_serbian.txt | 77847 bytes | core
Downloads (http://www.miranda-ng.org/en/downloads/) | Wiki (http://wiki.miranda-ng.org/index.php?title=Langpacks/en#Download) | SVN (http://svn.miranda-ng.org/main/trunk/langpacks/serbian/)
=======================


Cheers,
vultures.
Title: Re: Serbian Translation - In Progress - Questions
Post by: Wishmaster on 15 03 2015, 17:43:51
Hi,
there is some info about how to create a langpack here (http://wiki.miranda-ng.org/index.php?title=Help:Howto/How_to_translate_langpacks#Creating_a_new_langpack). Some more info in russian can be found here (http://wiki.miranda-ng.org/index.php?title=Langpacks/ru). The langpacks/english is usually updated after some more lines changed in the source code, and you have to Run Refresh.bat after that to merge changes in your langpacks. A Diff tool (like the one included in TortoiseSVN) is very useful to see the changes. And there is "Untranslated" folder.

About uploading it: It is comitted right to our SVN, not to GitHub. You can get an account there or upload your work on the forums and someone will committ for you, giving you proper credits.
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 15 03 2015, 23:55:04
Thank you, Wishmaster ^^

I'm gonna keep typing (and typing) whilst storing backup copies, just in case.
TortoiseSVG should be enough; it's a powerful tool, hence the simplicity of LangPackMgr's interface.

I did understand this - My SVN client should "checkout" what I select so that I could sync with svn.miranda-ng.org from that point.
What I don't really get is - does it work the same on both ends, do I upload directly to Miranda NG's SVN? What does the 'trac' server have to do with it, if it does anyway? SVN server (this, and every other I've looked at) lacks login capabilities, unlike GitHub and Trac.

Thank you for your concern with apprentice contributors,
vultures.
Title: Re: Serbian Translation - In Progress - Questions
Post by: AnrDaemon on 16 03 2015, 02:18:11
http://svnbook.org/ - a must read for anyone getting in the ways of version control. Not only Subversion. (Also, Subversion, of course, have authentication capabilities. Doesn't mean they are required for normal operation.)
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 16 03 2015, 07:37:39
vultures, IMHO much better than LangPackMgr is using way described on wiki as Wishmaster linked. You can use your classic text editor and Refresh.bat script will also redistribute your already translated strings in one file to other files (so you don't need to write it few times for same strings in different plugins).

About SVN server you're free to Checkout ( = prepare and download content of svn server to your disk) and then regularly do Update ( = download new commits from svn server to your disk) without any registration. Only when you want to Commit something to server, your SVN client will raise Auth dialog to type login and password. Only chosen people have commit rights - it's not related to user registration on trac.

Don't download anything manually and use SVN client instead as it will save your time for updating (and eventually commiting) langpack.

Also don't use that Github repository, it is just mirror of our SVN repository ( http://svn.miranda-ng.org/main/trunk/ ) and commits on that Github mirror are available with delays.
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 16 03 2015, 09:57:06
Thank you all for being welcoming, inviting and after all - verbose about your experiences with Miranda_NG and its SVN.
Let's update on my efforts from last night:
Quote from: console
ERROR: Langpack_serbian.txt in your langpack folder wasn't found. Make sure you have freshly refreshed langpack using Refresher.bat script
I've tried setting up that particular file myself, and the script deletes it along the way.

There aren't any uncertainties following the russian translation I've downloaded. It's neat, I'm just replacing translated keys in an appended file with all the strings from various plugins.
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 16 03 2015, 11:29:22
vultures, here I prepared the skeleton for you.

It contains the tools and langpacks folders - with english and serbian subfolders. English contains original english folder with strings to translate (you can download it from SVN manually when there is something new). Serbian is right now almost empty (it's minimal skeleton to begin with).

Is there any existing langpack that you want to suck existing translations from? If *yes* then replace the "langpacks/serbian/Deprecated/old langpack/langpack_serbian.txt" file with your existing langpack. If *not* then ignore it. It's really for old Miranda IM translations to not throw already translated strings away but to potentially reuse it in the future (e.g. when there is new plugin adopted which was already translated in old langpack)

Then run Refresh.bat -> it will suck strings from english langpack, it will translate them with existing ones from your old langpack (if specified as stated above) and create the Plugins, Untranslated and =CORE=.txt

Then you can keep translating the files in Plugins folder and =CORE=.txt file.

When you run the Refresh.bat again -> it will suck strings from english langpack, it will translate them with existing ones from your already translated strings in Plugins folder and =CORE=.txt file and then it will translate the missing ones with existing ones from your old langpack. And it will recreate fresh version of the Plugins, Untranslated and =CORE=.txt

When new English strings are released ( = you have new ones in your English folder) run Refresh.bat again, it will do the thing stated above. You can run it freely anytime - it should update your langpack correctly. - oh and also it creates final langpack_serbian.txt file that you can copy into your Miranda - actually it tries to do that automatically with MirCmd plugin. But this part is not required - you don't need MirCmd plugin at all if you don't want automatic install of updated langpack.


Is this better understandable now? :-)  (this doesn't require SVN at all if you'll be downloading the English folder manually)
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 16 03 2015, 12:42:03
Thank you, Robyer. That is exactly what I have in my Miranda NG folder.
Here's what I did - the tools folder was already there (I pulled it off /trunk manually) and afterwards I've installed TortoiseSVG. And just because Refresh.bat gave me a hard time (deleting zero-byte langpack_serbian.txt over and over again) I fired up TortoiseSVG''s repo browser and did some sync-ing with Miranda NG's SVN server.
Now, I can update the english template via SVN, and those two recursive folders. I'll try and set up the appended file template once I've done some more translation, just pointing it out, through langpack_russian revision (I've got better workflow 'cause I'm both an english and russian speaker).

Back to those forty thousand lines, I guess.  8)
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 18 03 2015, 00:49:05
About 18% into translation, hints for future translators, or just reference otherwise:
Title: Re: Serbian Translation - In Progress - Questions
Post by: AnrDaemon on 18 03 2015, 08:56:01
About 18% into translation, hints for future translators, or just reference otherwise:
  • If you are sane, keep three (3) or more copies of your files. Working at a great pace means higher error treshold  :THUMBS UP: ;
  • Rolling saves are a lifeline of your work, and should be regarded as a must if (and when) you're often distracted ;
Any sane version control system take care of both of these issues.
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 20 03 2015, 01:38:08
Ok, now I've got some sort of translation workflow; it allows for slight increase in productivity and also some on-the-fly error checking.
Altough I've got a fair understanding how to translate most of those bland/technical terms, the manner of this langpack is user_comfort-oriented with a few common expressions that draw root from basic english and widespread computer syntax.
I don't think the document is erroneous by any means, I triple-checked it before 7zipping and made sure the terminology is consistent, too.

This is the basic (Miranda NG - core) translation with the jpgen.js ommit update. 77847 bytes in length, header included.
It can be downloaded here (http://s000.tinyupload.com/?file_id=62273609311472063626) for the next one-hundred days.

I wish to thank everyone supporting me on this topic, with particular gratitude towards:

Since Miranda NG is packed with several "essential" plug-ins, the next update should feature, more or less (preferrably more), those translations in addition to this one. It's gonna be a looong ride; once I finish translating everything I'll try and give some notes for future reference on Miranda NG wikis, since I think they can benefit similar efforts in the future.
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 20 03 2015, 03:28:20
I'm glad you continue with your progress :)

About file for download - is it meant to be for common users to download from here and use it, or for us to commit your work to SVN?

If it is the second, then please upload your whole "serbian" folder in a format as I provided you. The point of using that structure is also because we use automatic build scripts which handle "compiling" the langpack to final langpack_*.txt file automatically, similar to what Refresh.bat is doing. :)
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 07:47:51
vultures, I've tried to separate this whole langpack to pieces, with help of translate.js script. It's just a trial version of this, please check this out and let me know what you think of rhis - http://svn.miranda-ng.org/main/trunk/langpacks/serbian/
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 20 03 2015, 08:09:01
watcher, may I ask why you didn't use Refresh.bat script, but some different one? It seems it does basically the same, but just with different output (it's not keeping untranslated lines in =CORE= and Plugins/* - which is imho wrong). Also you can delete that langpack file now - it did import of that strings, but is has no future purpose anymore.
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 08:31:48
Robyer, i don't like untranslated empty lines in ready part, i don't like reference links to files, it was not supposed to be like that, language file should be clean from both of those stuff and using translate.js to clean this stuff afterwords - it was not intended to work this way - ask Basil. I want to use ready and clean language files with no empty lines and to generate them with Mataese's tool which dies it 5-10 times faster than translate.js.  Let vultures decide which way he likes better - i will not interfere. I myself don't like your way of leaving empty lines and file references. I like to translate in Untranslated section and then move it to ready part, all clean and accurate - this is why it was created in a first place.

Post Merge: 20 03 2015, 08:45:49
(it's not keeping untranslated lines in =CORE= and Plugins/* - which is imho wrong)

In my opinion your way is wrong. Let's say someone started working with your Refresh bat and then suddenly left it. You've got left with horrific half empty =Core= and plugins. I don't like this one bit. Maybe this is a good way for you to work, but it's not in any way the optimal one, but you've taught everyone to work like you, providing Refresher.bat. I try to avoid it where i can. Ukrainian  and Belorussian maintainers and darthraiden and Mataes agree with my way of doing things.
Title: Re: Serbian Translation - In Progress - Questions
Post by: Wishmaster on 20 03 2015, 08:58:12
Watcher,I disagree with you. Keeping empty lines has the advantage that someone who wants to join translation can just start with translating the missing lines, he doesn't have to use refresh.bat at all.

Also it is easier for me to see which lines are missing and which are translated in the first place.


I don't care how you release them but in the SVN there should be the empty lines (its not that much for German anyways).
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 08:59:37
One more thing - vultures, uses our Russian lang for references and i think our way of work will fit him better, but it's for him to decide.
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 09:01:39
Watcher,I disagree with you. Keeping empty lines has the advantage that someone who wants to join translation can just start with translating the missing lines, he doesn't have to use refresh.bat at all.

Also it is easier for me to see which lines are missing and which are translated in the first place.

It's easier for you - for me it's useless junk that bothers me in my langpack. Once again - this is not how it was intended, you want to work like this, fine, don't say to me that it's the right way, i will not accept that for myself.
Title: Re: Serbian Translation - In Progress - Questions
Post by: Wishmaster on 20 03 2015, 09:05:17
watcher, that's fine. You use your way, I use mine. :)
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 09:05:59
Wishmaster, agreed  :)
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 20 03 2015, 09:08:43
watcher, I see. To provide my points:

1) My way is MUCH easier for translator/maintainer to write and update translation.

2) These files on SVN aren't and shouldn't be the "clean result". It is the "raw" stuff which gets "compiled" into release clean form and only this is clean result that is being published.

3) You don't need to use translate.js for "compiling" release format, because yeah, it's slow (due to parsing, translating, and doing again). I don't know where/what Mataes' tool is, but it could and should easily provide stripping comments and empty lines from result file and do it very quickly. It doesn't need the already cleaned files (unless it just simple append whole files together).

I recommend to trying to solve issues at correct place. If your problem is that tool you use to generate langpack keeps comments and blank translations, then we should fix that tool. Not the way raw langpack files are saved.
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 09:17:09
Robyer, this is your opinion, i stay with mine, this is how we kept things for years and years before any scripts and our lang was the only one that wasn't abandoned. Let the serbian guy decide how he wants to work. Maybe your way works better for him too - i'm not saying that mine is perfect, this is just how we prefer to do things. Maybe this is harder for rest of the guys, well, than switching to Refresh.bat takes 1 minute  ;D
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 09:42:00
Robyer,  even better way - http://trac.miranda-ng.org/changeset/12447

I provide 2 batch files - one leaves empty lines and references, second do not, so vultures can try both ways, choose the most comfortable one, or even use both  ;D First - generate files with empty lines, translate whatever you want, then use the second batch file to leave it all clean while keeping freshly translated lines  ;D
Title: Re: Serbian Translation - In Progress - Questions
Post by: Robyer on 20 03 2015, 09:47:33
watcher, yeah, ok, whatever floats his goat  ;D

(https://forum.miranda-ng.org/proxy.php?request=http%3A%2F%2Fi.redsnapperverytasty.com%2Fgraphics%2Fwp-content%2Fuploads%2F2013%2F08%2Fwhatever-floats-your-goat-500x438.jpg&hash=e1fb36853bf21d85363e948ca2dd5802)
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 10:14:02
My goat was brutally murdered :(
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 20 03 2015, 11:34:20
Apart for not sharing the fuss over the dilemma for wrapping empty lines with ready langpacks, I certainly do share your enthusiasm. Let's be clear, using one giant langpack file, which by my own means of doing translation via langpack_russian is my own preference. I've done translations before and even with similar large outputs - and you've gotta agree how being fluent in two languages gets you places whilst directly translating into your native language is only supposed to do so.  ;)

Knowing slavic and anglo-saxon langs is just like being able to compare bit-logic and hex-code on-the-fly, and that's an advantage I'm willing to use. On the other hand, it has nothing to do with those means that maintainers of Miranda NG utilize, like Git, SVN and Trac. As far as my opinion is concerned, the only thing I know is that GitHub is chosen descendent of SVN for online collaboration - and simply because it allows for greater developer control of large-scale projects. Imagine 30+ forks and only one (dedicated) lead dev - and on SVN - and you'll get my idea.

Since you've let me decide what the translation process should look like, lemme sum up once again:

Thank you guys. The scripts are useful tools but (and be certain of it) they are meant for guys like yourselves, already used to doing things their way, getting comfortable with whatever tools you've used all along.

For future translators sake (I don't think anyone's gonna team up with me on this immediately) those couple'o refreshing (and installing) scripts are useful for working in ready enviroments. If you had one translator for the core, another for protocols and the third one chasing the translations for remaining plug-ins this could prove very handy for somewhat internal version control and that is, before commiting to either SVN or GitHub.

With core Miranda done, I can use expressions and strings to speed up the rest of my (currently pending) translation. Its benefits are great, and I'm yet to decide upon a dedicated tool for the process.


P.S. (I almost forgot) -- @Watcher: yes, that's what SVN is supposed to offer should someone decide to team up with me.
Title: Re: Serbian Translation - In Progress - Questions
Post by: watcher on 20 03 2015, 15:33:32
Anyway - now new (and unfinished  ;D) serbian langpack is included here (http://wiki.miranda-ng.org/index.php?title=Langpacks/en#Download) and on miranda-ng site in Downloads (http://www.miranda-ng.org/en/downloads/) in Langpacks section below.
Title: Re: Serbian Translation - In Progress - Questions
Post by: vultures on 20 03 2015, 19:22:34
Aaand - thanks, really appreciate it.
I'm a dawg.  :THUMBS UP: