Ampersand collision checker? - Printable Version -Shoutbox (https://shoutbox.menthix.net) +-- Forum: MsgHelp Archive (/forumdisplay.php?fid=58) +--- Forum: Messenger Plus! for Live Messenger (/forumdisplay.php?fid=4) +---- Forum: Translation (/forumdisplay.php?fid=24) +----- Thread: Ampersand collision checker? (/showthread.php?tid=59580) Ampersand collision checker? by ZrednaZ on 05-20-2006 at 06:56 PM
Peter "Kian" Hansen from my Danish translation team has offered to code an ampersand checker. I thought I'd go ahead and check first whether something like this was available already... RE: Ampersand collision checker? by Choli on 05-20-2006 at 07:22 PM
quote:Look at MsgPlus Hotkey Checker - 1.1.3. Read the whole thread, you'll see that making such program and that it works 100% correctly is nearly impossible. However, you can try RE: Ampersand collision checker? by ZrednaZ on 05-20-2006 at 08:05 PM
Thanks. I'm sure the tool is better than nothing. RE: Ampersand collision checker? by ShunterAlhena on 05-20-2006 at 08:55 PM
LOL my old piece of code I hope it's still useful to a degree RE: Ampersand collision checker? by Kian on 06-25-2006 at 12:16 PM well... i stopped the programming thing - its like pretty impossible to prorgame a program without any logic structure... the sections are like a mess compared to the visual menus... no logic at all so... filestatus: closed RE: Ampersand collision checker? by ShunterAlhena on 06-25-2006 at 12:22 PM yeah, exactly why I gave up back then... it's certainly possible to do a program, but it would take so much effort to produce and maintain that it's simpler to check the damn ampersands manually RE: Ampersand collision checker? by Kian on 06-25-2006 at 12:27 PM
heh well - its a bit - well - silly that the sections arent sorted so that the menus fit - i dont see the reason why they arent fitting. It would be nice if they did though... RE: Ampersand collision checker? by ShunterAlhena on 06-25-2006 at 12:30 PM well let's file an official request for Patchou to make the language files of Plus! 5 friendlier but that's likely to be years from now so we can take our time RE: Ampersand collision checker? by Kian on 06-25-2006 at 12:36 PM
Well... its not more complex to split the sections into logical structure than translating it all from sctrach as we have done a couple of times (two times?)... RE: Ampersand collision checker? by ShunterAlhena on 06-25-2006 at 12:40 PM
three times for me... 2.10, 3.00 and 4.00 if I recall correctly RE: Ampersand collision checker? by Kian on 06-25-2006 at 12:43 PM
ohwell - i was there from the beginning too - started 2001 or something - but i only thought we did the scratch-thing in 2,0 and 3,0 - i am not that good at memory-issues RE: Ampersand collision checker? by ShunterAlhena on 06-25-2006 at 12:47 PM well, it would certainly enhance translations, as virtually all ampersand-collisions could be ironed out. So for the benefit of all, let's write RE: Ampersand collision checker? by Kian on 06-25-2006 at 12:50 PM
agree - are you, or should I do the draft? RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 01:07 PM
Back then when this first was suggested and a program was made by ShunterAlhena, I already made such a 'draft' and the very bare boned basics for such an application. RE: Ampersand collision checker? by ShunterAlhena on 06-25-2006 at 01:13 PM
the Hungarian translation is made by me solely no-one else RE: Ampersand collision checker? by Kian on 06-25-2006 at 01:19 PM
well... i think its a bit sad that it wasnt done from the beginning - but Patchou might have his reasons - even thinking about writing a mail to make him change his mind about the existing structure is a bit awkward if its an improvement that would make it easier to fix collisions. RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 01:22 PM
quote:yeah, exactly... and also one of the reasons why such a program or an update of the 'draft' will always come too late. By the time the 'draft' is updated decently, all the translating and (manual) checking is already done. I remember the time when I was experimenting with such a tool during beta testing/translation period. By the time I had update half the draft, 3 more new beta/translation builds were released. Making all the work useless and again should be started with a new 'draft'... ------ The only usefull thing about such an app would be to check your translation some time after it is already been released in an public build (if the draft-update is on time). And usefull for the unofficial translations which are made long after a build is released. RE: RE: Ampersand collision checker? by Kian on 06-25-2006 at 01:22 PM
quote: By 'draft' i ment mail - a raw draft that should be mailed to Patchou... you know - 'Dear Patchou - please do the logic-structure thing in the translation-file' RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 01:24 PM
quote:ah... with 'draft' I mean the control file you would need which includes the whole list of controls and keys which are needed to check collisions (and this file would be almost as big as a translation itself... to give an idea of the scope of this). RE: Ampersand collision checker? by Kian on 06-25-2006 at 01:27 PM
heh i refered to a mail that should be mailed to Patchou to change the language-file so that such a program could be programmed quote: RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 01:32 PM
btw, such an email will actually not help at all... RE: Ampersand collision checker? by Kian on 06-25-2006 at 01:37 PM
I am aware of the standardbutton-issue 'OK', 'Cancel' etc... that would be a gap in such a ampersand collision-checker... and such issues could be solved by simply make a note about it like: RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 01:50 PM
quote:Believe me, you do not know what you're up against and you would soon see that it is far from as easy as that when you make such a program. The example of the OK, Cancel and Apply button is only one example out of the extremely long list of exactly the same issues. In fact the whole thing consists of situations like that. The situation where you could check one ini topic and safely say you have checked all possible combinations is very very rare and almost doesn't exist. quote:Sections will never ever be similar to the visual image. This is simply not doable and as good as impossible. Things like the OK, Cancel, Apply buttons are not "just a minor one-of-a-kind detail"; It happens in almost every panel, window and feature thruout Plus!. As said, you simply can not think in terms of "checking ini topics" when dealing with something like this. An ampersand collision checking program doesn't care what key is in what topic. The only thing that is important is to know what other keys a certain key relates to; hence why the index file of your program will contain a list of all the keys a certain key must be checked against and that for almost every key which exists. A program which depends on ini topics or which is based upon 'rules' will always seriously fail doing its job properly. In fact the program on its own would be dead simply and should/will contain only a few lines of code. It is the time, effort and precision you need to put into creating and updating the index file which makes this so hard to pull of. ----- Such a ampersand collision check program also even depends on how Plus! itself is actually programmed! Take the panel "Conversations > Chat Logging" for example. There you can choose between HTML or textfile logging, and depending on which choice you've made a different set of radio controls is shown. Currently Plus! is programmed in such a way that the control which you don't see still are loaded on the panel. This means that the ampersand are also present. You can see this if you press ALT+P. You will notice that the "Prefix lines" option is NOT selected/unselected. This is because there is actuall another same control (the one from the other HTML/Text option which is hidden at the moment). Thus this other 'hidden' control has that very same ampersand and Windows simply cycles between them instead of clicking the control. To see the difference press ALT+D and notice that Windows does check/uncheck the option to save logfiles. If Plus! was programmed so that such hidden controls are in fact not loaded, the ampersand selecting would behave as you might aspect. Nevertheless, can this be considered an ampersand collision? Yes, as the controls aren't selected when you press the ampersand. No, as pressing the ampersand for the other (hidden) controls do not influence those controls. RE: Ampersand collision checker? by Kian on 06-25-2006 at 02:03 PM
i never thought about the hiddens sides of Plus! - to me that sounds like you can accept hidden options by pressing they ampersands and then hit the Ok-button... RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 02:14 PM
quote:If that doesn't matter than any ampersand collision doesn't matter. The thing you just described is the whole essence of ampersand collisions. quote:I hope you didn't just suggested to also make the program automatically fix collisions For the sake of scope: if making a collision checking program is easy as hell, an auto-fixing program would be extremely difficult. quote:which will never ever be possible... And imagine the size of the translation file needed if Plus! was created that way. It would be a hundred times bigger than it is now containing hundreds and hundreds of duplicated sections and keys. quote:The OK/Cancel/apply is NOT an exception! That is the whole point. If it was "just an exception" then ok, it would be easy. But it isn't an exception, it is almost a rule of thumb. The exception would be the case where cross-topic collisions are not present. ----------- Forget about "checking ini topics" or about a program which works almost automatically (given a few exceptions which need special attention). An ampersand collision program will never ever work in that way. You always will need an index file as I described earlier. It is impossible without it. RE: RE: Ampersand collision checker? by Kian on 06-25-2006 at 02:31 PM
Easy tiggr... i am just trying to mess around with the idea... nothing else - quote: I dont think you get my point. My point is that if two menus are placed on eachother like layers and only one of them is visible the collision-checker is still seeing collisions even though it isnt 'real' collisions. The difficult thing is that the program should know which menu/layer is visible. But still i claim that it dosnt matter! If two equal shortcuts are found - one in the hidden layer and one in the visible layer - it isnt a collision to you and me but it is to the program. But would you care about if the shortcut is changed to fit the program? I wouldnt care at all as long as the shortcut works and dosnt coalate (how do you 'bend' 'collision'?) The point is: youre changing a shortcut/ampersand from being legal to legal - but only because the program dosnt know its already legal... the ampersand is moved but it is still working. Infact thats a typical problem: computers cant think so we have to make workarounds so that they still do what we want - just from another view... quote: I am aware of this: the collision-program fixes issues thats already okay... but as I said before: it is a typical OOP-problem - its almost impossible to get a computer to think the way we do and therefor stuff like this has to be done - it might seems like a awkward way but it is necessary and as long as the program dosnt mess up the ampersands its okay from my point of niew And the last part of your post: I know it would mean that the structure should be completly re-designed... and so should Messenger Plus. Thats why i said that I was sad about that it wasnt done from the beginning. I see that the amount of the language-file will expand... i dont know - still i think that certain sections could be organized as they are today... like the standard-button-issue - no need to translate 50 'Cancel'-buttons. And again: I am just thinking about it - messing around with the thoughts - but I know that Patchou has his reasons to do things the way he does... and I accept that... I am just thinking of how it could be done elsethen... RE: RE: RE: Ampersand collision checker? by CookieRevised on 06-25-2006 at 03:34 PM
quote:grrrrrawnn.... I'm easy though quote:It sure is in the way Plus! is programmed at the moment; As long as an option isn't ticked/unticked when you press an ampersand, but rather cycles thru the availbe options, then it is a collision, no matter how you try to interpret it. In fact, the way it is programmed at the moment in Plus! can cause unwanted effects as you actually can change those 'hidden' controls by accident. quote:No. The program doesn't need to know which layer is visible or what not. That is, it should depend on the special 'index' file, not on ini topics, not on visible layers or whatever else. quote:For me it sure is a collision as that is exactly what a collision is. An ampersand collides (with whatever) as long as it does not perform its duty. And that duty is ticking/unticking the control it is meant for. It doesn't matter if that happens because of hidden controls or even another 3rd party which prevents the use of a certain shortcut key so to speak. quote:collide A collision is exactly that, the same ampersand used on different controls in the same focus. If it does that, the ampersand does NOT work. It doesn't matter if that other control is hidden or whatever, if the visible control is not ticked/unticked you have a collision. quote:Some collisions might be intended though. And a program should never auto-fix ampersand collisions as a program (like you rightfully put it) can't think as a human beeing. Ampersands are (at least should be) placed with some logic behind it, not simply because some letters aren't available anymore. This has been discussed also in the past though... quote:That is not the issue. It can NOT be done, even when done from the start... quote:Not all cancel buttons are translated as "cancel" in some languages. In some languages it is more logical to translate it as "close" or "quit" or whatever so to speak depending on what dialog they're used on. The reason why there are so many OK, Cancel, etc buttons is because those are different buttons on different dialogs all together. In fact, this is a whole other issue than what I meant with duplicated stuff... What you just describe is: You have two totally different dialog windows with each an OK button. You could make the translation engine so that there is only 1 translation for the both of them. But this seriously decreases the the freedom of the translators. For a think like the OK button, this seems a bit useless, but consider controls with the same initial English translation "Contact List Viewer" on totally different dialog windows. It is quiet possible that on one dialog the translated text will fit, but on the other dialog it doesn't. Then what? You only have 1 string which you can translate, not two. So as translator you are forced to use the shortened version which will be used for both of them. Not to mention the thing I said above about how translations can be different for the same English version depending in what context and what dialog they are used on. So, this is totally different than: You have 1 dialog window like this: --------------------------------- What do you want todo? [X] Go to &bed [ ] Go to &toilet [x] Give me a &pillow or: [x] Give me a &radio [&OK] [&CANCEL] --------------------------------- When you select "bed" the seconday option "pillow" is shown and "radio" is not shown. When you select "toilet" the secondary option "radio" is shown and "pillow" is not shown. Now, "pillow" and "radio" can have the same ampersand as these options are not shown and used simultaniously (remember the chat logging panel in the Plus! preferences, its almost alike). Thus todo what you suggest, to make everything in topics as it is seen in real so one could easly check ampersand collisions, a translation file should look like this: [Window.whattodo_1] bed=Go to &bed toilet=Go to &toilet pillow=Give me a &pillow OK=&OK Cancel=&Cancel [Window.whattodo_2] bed=Go to &bed toilet=Go to &toilet radio=Give me a &radio OK=&OK Cancel=&Cancel As you can see, many duplicated topics and keys will be nessecairy with this. Imagine that this isn't just 1 dialog we're talking about but hundreds of dialogs with quite often many many suboptions, subsuboptions, subsubsuboptions, etc.... just like Plus! and you would have an idea of the big mess and total uselessness it will create. This is simply not doable, not now, not from the start of creating Plus!, never... A decent translation file for the above must be like: [Window.whattodo] bed=Go to &bed toilet=Go to &toilet pillow=Give me a &pillow radio=Give me a &radio OK=&OK Cancel=&Cancel And it is up to the translator (and the AC-program) to know that "pillow" and "radio" can have the same ampersands. For the AC-program, an index file must be made like this: (to put it simply): bed=toilet, pillow, radio, OK, Cancel toilet=bed, pillow, radio, OK, Cancel pillow=bed, toilet, OK, Cancel radio=bed, toilet, OK, Cancel OK=bed, toilet, pillow, radio, Cancel Cancel=bed, toilet, pillow, radio, OK each key which is read out contains a list of the other keys which needs to be checked against. Notice the lack of "pillow" in the "radio" key and vice versa. This makes that the program 'knowns' that "radio" and "pillow" can have the same ampersand as they are not checked against each other. quote:I know but the point is it can NOT be done otherwise in a decent way.... -------------------- EDIT: @Kian: rofl at your reply... I know the feeling thank god that webcams don't automatically send pictures @ZrednaZ: lol... well, you're actually right... need to cut down on lengthy posts RE: Ampersand collision checker? by Kian on 06-25-2006 at 03:44 PM
heh i thought i wrote so much you wouldnt answer - but i guess i was wrong. Sitting with hangovers is just not the best thing while trying to catch up your 'book-writings' - RE: RE: Ampersand collision checker? by ZrednaZ on 06-25-2006 at 11:24 PM
quote:Haha.. That's the thing about chatting with Cookie, you gotta choose your sentances carefully as he'll quote every single one explaining why it's accurate or inaccurate, effectively ending up with a relpy three times the length or your post. Write too much and you'll remain in front of your screen in your boxer shorts all day, trying to keep up while wondering where dinner time went, you don't want that. This takes me back to the good old days in which our discussion about Choli's translator program took place... RE: Ampersand collision checker? by Kian on 06-26-2006 at 06:41 PM
Okay - I give up - this is going nowhere... quote: Link me up buddy - i wanna read that... RE: Ampersand collision checker? by CookieRevised on 06-26-2006 at 06:56 PM
quote:I originally wanted to PM this to you as it would probably been off topic, but after rereading the old thread, the part which ZrednaZ talks about is actually very on topic, so... it starts roughly here: NapalmLos's reply to Messenger Plus! Translator PS: don't double post... post reported |