Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: accepted Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: review Blocking: | Blockedby: --+- Comment(by metux): Please also have a look at my branch: 50_history_sections.metux -- Ticket URL: www.midnight-commander.org/ticket/50#comment:8 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: accepted Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: review vote-winnie Blocking: | Blockedby: --+- Changes (by winnie): * keywords: review = review vote-winnie Comment: /me really likes the metux branch, therefore I vote for it. -- Ticket URL: www.midnight-commander.org/ticket/50#comment:9 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: accepted Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: vote-winnie vote-slyfox approved Blocking: | Blockedby: --+- Changes (by slyfox): * keywords: review vote-winnie = vote-winnie vote-slyfox approved Comment: 50_history_sections.metux look really good. As we updated ('''git log origin/mc-4.6 --stat po/''') - many files are already changed therefore make non-english users to lose their ~/.mc/history, so break it once again to make stable. -- Ticket URL: www.midnight-commander.org/ticket/50#comment:10 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: testing Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: fixed|Keywords: vote-winnie vote-slyfox approved Blocking: | Blockedby: --+- Changes (by metux): * status: accepted = testing * resolution: = fixed Old description: Original: http://savannah.gnu.org/bugs/?17269 ||Submitted by:||Egmont Koblinger egmont||Submitted on:||Wed 02 Aug 2006 12:48:15 PM UTC|| ||Category:||Core||Severity:||3 - Normal|| ||Status:||None||Privacy:||Public|| ||Assigned to:||None||Open/Closed:||Open|| ||Release:||current (CVS or snapshot)||Operating System:||GNU/Linux|| Discussion: {{{ Tue 19 Sep 2006 08:24:44 AM UTC, comment #7: I am attaching a patch which adds a new argument to fg_input_dialog_help() - the history section name. I've adjusted all callers (hopefully) to pass the new argument. Please, test the patch. The patch should be applied against latest CVS. This patch doesn't attemt to change the section names. However, the current choice for section names is really bad, IMHO. Maybe now is the time to rename those names for good. I'd like to hear your opinion on that matter too. Pavel Tsekov ptsekov Project Administrator Wed 13 Sep 2006 01:55:14 PM UTC, comment #6: I think I'll proceed as following: 1) Currently fg_input_dialog_help() assumes that it is passed translated strings. I won't change that because some of the callers pass as an argument a string which is the result of sprintf() on translated template string. However, I'll change fg_input_dialog_help() to prevent the translation of the already translated strings. Additionally I'll add comments to indicate that fg_input_dialog_help() and any wrappers must take translated strings. 2) Next I'll change fg_input_dialog_help() to take a new argument - the history section name. Then I will adjust all callers. Pavel Tsekov ptsekov Project Administrator Wed 13 Sep 2006 12:38:16 PM UTC, comment #5: My last comment may be slightly misleading. To clarify: nice_cd() and others use fg_input_dialog_help() which takes care of displaying the input dialog and derives history file section names from the input dialog heading. Pavel Tsekov ptsekov Project Administrator Wed 13 Sep 2006 10:00:24 AM UTC, comment #4: Localizing an already localized string definitely shows wrong design. Theoretically it can lead to false strings appearing on the screen (if the first translated string happens to be the same as an English string used somewhere else in mc). It's quite unlikely for this bug to ever occur, but still it's better to avoid it by good design. It'd be bad if the person first hitting this bug would have to choose different wording or if he had to fix mc in this respect. (Theoretically :-)) each function has a documented interface of what the meaning of its arguments are, and this documentation should state for all strings whether they are localized or not. You say: this may not be the best solution since the programmer must know that it should call nice_cd () with N_() instead of (). I think this approach is wrong. Every programmer wishing to use an already implemented function should first check the docs or the comments in the code to see what this function expects and then use it accordingly. If there's no docs stating whether the argument to nice_cd should be localized or not then _this is a bug in mc. If there are docs, however, then there's nothing you can do against wrong usage and it's not your problem anymore. (BTW it starts resembling the usually-misunderstood Hungarian notation by Simonyi, see: http://www.joelonsoftware.com/articles/Wrong.html for the right explanation. If strings are always stored in variables whose name begins with a prefix stating whether it's already localized, to be localized, or non-translateable, then these kinds of bugs are less likely to occur.) About your first suggestion: it avoids translating an already translated string, hence it should really be done. About your second suggestion: it could make the config file look the same even if for some reason the English UI string is modified. Hence it is a nice move, too. So, I recommend making both changes :-) Egmont Koblinger egmont Wed 13 Sep 2006 09:28:22 AM UTC, comment #3: I looked at that problem and the solution is pretty easy. Still I'd like to discuss the issue with anyone interested so we can find the best way to solve the problem. Most of the
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: testing Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: fixed|Keywords: vote-winnie vote-slyfox approved Blocking: | Blockedby: --+- Comment(by winnie): Please add a changelog entry!!! This is an important change which is currently not documented in the ChangeLog! -- Ticket URL: www.midnight-commander.org/ticket/50#comment:12 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: slavazanko Type: enhancement | Status: accepted Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: review Blocking: | Blockedby: --+- Changes (by slavazanko): * owner: = slavazanko * status: new = accepted Comment: I propose make names of sections with function name as prefix string. This will provide a unique names of sections. For example: {{{ [inp:mc_mkdir Enter directory name ] 0=... 1=... }}} See changeset:22fada9ce0f6493d9f33ce4d4a3f31338564fa55 -- Ticket URL: www.midnight-commander.org/ticket/50#comment:7 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: Type: enhancement | Status: new Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: Blocking: | Blockedby: --+- Comment(by winnie): any idea how to solve this in order to make the change so that they customisations are not lost between 4.6.1 and 4.6.2. One option would be in my eyes to write a small function which is executed if not certain headers are found in the configuration file. which will then read all values and backup the file to some place and write a new one with the static values. The other way would be much easier.. but also much more annoying for the endusers.. switch the behaviour and backup the configuration file in order there are notreadable values in it (and notify the user about this of course) so that the user can copy his customisations manually from the old file to the new one. -- Ticket URL: www.midnight-commander.org/ticket/50#comment:4 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: Type: enhancement | Status: new Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: review Blocking: | Blockedby: --+- Changes (by metux): * keywords: = review -- Ticket URL: www.midnight-commander.org/ticket/50#comment:5 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: Type: enhancement | Status: new Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: review Blocking: | Blockedby: --+- Comment(by winnie): Added branch 50_history_section_names.. Please review.. While reviewing this patch we also should think about a renaming of this section as Pavel suggested above. (In the text copied from savannah). Please discuss better fitting strings here. -- Ticket URL: www.midnight-commander.org/ticket/50#comment:6 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history -+-- Reporter: slavazanko | Owner: Type: defect | Status: new Priority: major | Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: Blocking: | Blockedby: -+-- Comment(by metux): Another way would be storing them exclusively in utf8 -- Ticket URL: www.midnight-commander.org/ticket/50#comment:2 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel
Re: [Midnight Commander] #50: savannah: localized headers in .mc/history
#50: savannah: localized headers in .mc/history --+- Reporter: slavazanko | Owner: Type: enhancement | Status: new Priority: major| Milestone: 4.6.2 Component: mc-core | Version: Resolution: |Keywords: Blocking: | Blockedby: --+- Changes (by metux): * type: defect = enhancement -- Ticket URL: www.midnight-commander.org/ticket/50#comment:3 Midnight Commander www.midnight-commander.org Midnight Development Center ___ Mc-devel mailing list http://mail.gnome.org/mailman/listinfo/mc-devel