X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from miniserver.rucotec.ch ([213.189.151.242] verified) by post.selbstdenker.com (CommuniGate Pro SMTP 6.3.7) with ESMTPS id 27120597 for webobjects-dev@wocommunity.org; Fri, 14 Jan 2022 22:08:25 +0100 Received-SPF: none receiver=post.selbstdenker.com; client-ip=213.189.151.242; envelope-from=markus.ruggiero@rucotec.ch Received: from localhost (localhost [127.0.0.1]) by miniserver.rucotec.ch (Postfix) with ESMTP id 7E61A34CDA89 for ; Fri, 14 Jan 2022 22:08:04 +0100 (CET) Received: from miniserver.rucotec.ch ([127.0.0.1]) by localhost (miniserver.rucotec.ch [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FFkMi4CFaiin for ; Fri, 14 Jan 2022 22:08:03 +0100 (CET) Received: from smtpclient.apple (50-244-68-153-static.hfc.comcastbusiness.net [50.244.68.153]) by miniserver.rucotec.ch (Postfix) with ESMTPSA id 8F9FB34CDA78 for ; Fri, 14 Jan 2022 22:08:02 +0100 (CET) From: "Markus Ruggiero (rucotec)" Content-Type: multipart/signed; boundary="Apple-Mail=_F40B8B57-5711-4FA2-8D78-0798649ADF2D"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\)) Subject: Howto debug localization?? Message-Id: <93990C76-504A-4E52-8E5C-7887C5118628@rucotec.ch> Date: Fri, 14 Jan 2022 16:08:00 -0500 To: WebObjects & WOnder Development X-Mailer: Apple Mail (2.3654.120.0.1.13) --Apple-Mail=_F40B8B57-5711-4FA2-8D78-0798649ADF2D Content-Type: multipart/alternative; boundary="Apple-Mail=_F9516685-5C70-4A77-83F8-8618E0A7C8BC" --Apple-Mail=_F9516685-5C70-4A77-83F8-8618E0A7C8BC Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Probably trivial, most probably stupid me, but.... Why does my D2W app not localize its navigation? It ignores = English.lproj/Localizable.strings file! When I create an out-of-the-box new D2WTest app, everything is ok, = localizations are picked up when I edit the .strings file. But my app = refuses to read that file at all (or ignore its contents). Comparing = both projects file by file reveals nothing I have both files Localizable.strings and NavigationMenu.plist in utf-8 = at the right place in the project setup. That=E2=80=99s the start of NavigationMenu.plist=20 ( { name =3D Root; children =3D ("TAB_ServiceStuff", "TAB_ProductStuff", = "TAB_LookupLists", "TAB_EDocStuff", "TAB_EMRStuff"); }, /* = **************************************************************************= ******************* */ { name =3D "TAB_ServiceStuff"; children =3D ("TAB_Service", "TAB_ServiceStep", = "TAB_ServiceType"); action =3D = "session.navController.genericQueryAction"; }, /* = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */ { name =3D "TAB_Service"; action =3D = "session.navController.genericQueryAction"; }, { name =3D "TAB_ServiceStep"; action =3D = "session.navController.genericQueryAction"; }, { name =3D "TAB_ServiceType"; action =3D = "session.navController.genericQueryAction"; }, and here is the start of Localizable.strings { "Nav.TAB_ServiceStuff" =3D "Service"; "Nav.TAB_ProductStuff" =3D "Product"; "Nav.TAB_LookupLists" =3D "Lookups"; "Nav.TAB_EDocStuff" =3D "EDoc"; "Nav.TAB_EMRStuff" =3D "EMR"; "Nav.TAB_Service =3D "Service"; "Nav.TAB_ServiceStep =3D "Service Step"; "Nav.TAB_ServiceType =3D "Service Type"; "Nav.TAB_Product =3D "Product"; "Nav.TAB_EDocSurgeryContract" =3D "Surgery Contract"; "Nav.TAB_EDocSection" =3D "Section"; "Nav.TAB_EDocTextBlock" =3D "Text Block"; "Nav.TAB_EMRParam" =3D "Parameter"; "Nav.TAB_EMRParamAllergy" =3D "Allergy"; "Nav.TAB_EMRParamBodyComplaint" =3D "Body Complaint"; "Nav.TAB_EMRParamMedication" =3D "Medication"; "Nav.TAB_EMRParamOrgan" =3D "Organ"; "Nav.TAB_EMRParamPastMedicalHistory" =3D "Med. History"; "Nav.TAB_EMRParamReviewOfSystem" =3D "Review of System"; "Nav.TAB_EMRParamSocialHistory" =3D "Social History"; "Nav.TAB_EMRData" =3D "Data"; "ERD2W.advancedFindButtonLabel" =3D "Advanced..."; } How do I debug this? Anything obvious I am missing (must be! It was a = very long work week, though) ? Markus Ruggiero rucotec GmbH web https://rucotec.ch Steinenvorstadt 79 email markus.ruggiero@rucotec.ch 4051 Basel / Switzerland mobile +41 79 508 4701 --Apple-Mail=_F9516685-5C70-4A77-83F8-8618E0A7C8BC Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Probably trivial, most probably stupid me,

but....

Why does my D2W app not localize its = navigation? It ignores English.lproj/Localizable.strings file!

When I create an = out-of-the-box new D2WTest app, everything is ok, localizations are = picked up when I edit the .strings file. But my app refuses to read that = file at all (or ignore its contents). Comparing both projects file by = file reveals nothing

I have both files Localizable.strings and = NavigationMenu.plist in utf-8 at the right place in the project = setup.

That=E2=80= =99s the start of NavigationMenu.plist 
(
{
name =3D = Root;
= children =3D ("TAB_ServiceStuff", "TAB_ProductStuff", = "TAB_LookupLists", "TAB_EDocStuff", = "TAB_EMRStuff");
},

= /* = **************************************************************************= ******************* */

= {
= name =3D "TAB_ServiceStuff";
children =3D = ("TAB_Service", "TAB_ServiceStep", = "TAB_ServiceType");
action =3D = "session.navController.genericQueryAction";
= },

/* = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D */

= {
name =3D = "TAB_Service";
= action =3D = "session.navController.genericQueryAction";
= },
= {
name =3D = "TAB_ServiceStep";
action =3D = "session.navController.genericQueryAction";
= },
= {
name =3D = "TAB_ServiceType";
action =3D = "session.navController.genericQueryAction";
= },

and here is the start = of Localizable.strings

{
    "Nav.TAB_ServiceStuff" =3D "Service";
    "Nav.TAB_ProductStuff" =3D "Product";
    "Nav.TAB_LookupLists" =3D "Lookups";
    "Nav.TAB_EDocStuff" =3D "EDoc";
    "Nav.TAB_EMRStuff" =3D "EMR";

    "Nav.TAB_Service =3D "Service";
    "Nav.TAB_ServiceStep =3D "Service Step";
    "Nav.TAB_ServiceType =3D "Service Type";

    "Nav.TAB_Product =3D = "Product";

    = "Nav.TAB_EDocSurgeryContract" =3D "Surgery Contract";
 =   "Nav.TAB_EDocSection" =3D "Section";
    = "Nav.TAB_EDocTextBlock" =3D "Text Block";

    "Nav.TAB_EMRParam" =3D "Parameter";
    "Nav.TAB_EMRParamAllergy" =3D "Allergy";
    "Nav.TAB_EMRParamBodyComplaint" =3D "Body = Complaint";
    "Nav.TAB_EMRParamMedication" =3D = "Medication";
    "Nav.TAB_EMRParamOrgan" =3D = "Organ";
    = "Nav.TAB_EMRParamPastMedicalHistory" =3D "Med. History";
    "Nav.TAB_EMRParamReviewOfSystem" =3D "Review of = System";
    "Nav.TAB_EMRParamSocialHistory" =3D = "Social History";

    = "Nav.TAB_EMRData" =3D "Data";

    = "ERD2W.advancedFindButtonLabel" =3D "Advanced...";
}

How do I = debug this? Anything obvious I am missing (must be! It was a very long = work week, though) ?


Markus = Ruggiero


rucotec GmbH              =           web https://rucotec.ch
Steinenvorstadt 79          =       email markus.ruggiero@rucotec.ch
4051 Basel / = Switzerland         mobile +41 79 508 4701








= --Apple-Mail=_F9516685-5C70-4A77-83F8-8618E0A7C8BC-- --Apple-Mail=_F40B8B57-5711-4FA2-8D78-0798649ADF2D Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCCzkw ggUhMIIECaADAgECAhBDXz2PBS4rcSTMoUCPbeA+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQG EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50 aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTE5MDUyMjAwMDAwMFoXDTIyMDUyMTIzNTk1 OVowKzEpMCcGCSqGSIb3DQEJARYabWFya3VzLnJ1Z2dpZXJvQHJ1Y290ZWMuY2gwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIAEK8S00IWrMmIpBkw5CcIS9RfaNGWyJOxskmtuYoHWE4 +QYfOO5tlWt4O5F6bTYsRWp1PpLirrdLhQoYIFp0P5Mi0nsBjNVP0zR0jNpDZreNcLcP7wmuIkUY C0fzxFgnRieFFgaXFm5yf46rqAJMVry/uR/KqwvY1d2F2gOb4DmntPp7TJtDsVyWQDtB82Uep+EO 9j71phQuMUb5TyA4aOdSb6UfCev1RgEw8vXrTdf+1rLzRZvIR1syfsqcLVmIO9WSl9mTH7IlZQhx SmTLqSTvTLssRGprVK8dhJl0nDvFuKknUGNxwCwON1ojJdZPgUJi1K+VvkCqDlI61czNAgMBAAGj ggHTMIIBzzAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUFRQz2DQf fM2xz9tI/Gy05p6XXc0wDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYI KwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUH AgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwu c2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxD QS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNv bS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggr BgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wJQYDVR0RBB4wHIEabWFya3VzLnJ1Z2dp ZXJvQHJ1Y290ZWMuY2gwDQYJKoZIhvcNAQELBQADggEBACeso6Iombd/K2MXqk+u5cFNAi3kNRv5 t1WMA2YodqQxz/i/H9OxagG8Ukk5IcHgrikpy0dlOgJ9nOGEWJYrzZbLWZCMd7I8NQpT28vnkgKM 51tzAARg7mHu+SPKwvnDfYB8CFNSQ+Wlkq8wJHL9ALuTeGCRdnRmNtit8o/sRV25KoH6+0U2k08U TO5J+bzVendvcfygdf3bPp3+imRIlXJihwb2fg6OOMqVCnUFHKrdJULZ+SWSWNclriu5GbM1pKql d5dIrApf9M9b9XbY89XgHdFHA5bx7taL1Ie1msC23llmUVSYTHjNOqNrprgfKXvao1taAQvpDhzx BQXzO6YwggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQsw CQYDVQQGEwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAc BgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQsw CQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3Jk MRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBB dXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXj So5MqXUfItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQ PKA19xeWQcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ 79Khj1YBrf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se 3ed0PewDch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0j BBgwFoAUU3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0A MA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMC BggrBgEFBQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2Ny bC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYG CCsGAQUFBwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJU cnVzdFJTQUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3Qu Y29tMA0GCSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHz tuOCtKF+xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz 1g3nIVO9IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk 2ddQXyn7kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI +jheXUV1eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO 2VnpsXP4KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3 a08LwEsL1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEG VqR1hiuQOZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niF hsM47qodx/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6m SWE3Bn7i5ZgtwCLXgAIe5W8mybM2JzGCA8QwggPAAgEBMIGrMIGWMQswCQYDVQQGEwJHQjEbMBkG A1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0 aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBh bmQgU2VjdXJlIEVtYWlsIENBAhBDXz2PBS4rcSTMoUCPbeA+MA0GCWCGSAFlAwQCAQUAoIIB6TAY BgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yMjAxMTQyMTA4MDBaMC8G CSqGSIb3DQEJBDEiBCCGcby1RcXvOFWO6kKWygYRU3Wzua3dusSrDF5el3t8uzCBvAYJKwYBBAGC NxAEMYGuMIGrMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAw DgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3Rp Z28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhBDXz2PBS4r cSTMoUCPbeA+MIG+BgsqhkiG9w0BCRACCzGBrqCBqzCBljELMAkGA1UEBhMCR0IxGzAZBgNVBAgT EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBM aW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNl Y3VyZSBFbWFpbCBDQQIQQ189jwUuK3EkzKFAj23gPjANBgkqhkiG9w0BAQsFAASCAQBknmtwwBxQ Cqqz0H6FDNIqAvzy+S82/dd21X0nj77QbMNwikPanFmCXx1prjcef3Ntu1AYieob5BARlY8apJCc L6KLepcL79WgaaCkNhtTN5ig7pthO48gSprw0nrUEWKsmPxqQUnpTGr7sq/wmKKA6z7Wg8C7Dnpb r+B28gF/0B7RPiW1O35zAXSGBBUt3mQjeercpGgQ+JgbO+Om69kOUfmwaxLWAexH+Xs72qm8L+OD 86emRcHTRpBYemfAom6FtWDUfb/gyh65dOlQWA+fRWjCF1fKHJ+5CNny57gg97Bs676Ffm/Tgh4w hXUzpBBcxKTF6G8ZFb1jBjVlZR4NAAAAAAAA --Apple-Mail=_F40B8B57-5711-4FA2-8D78-0798649ADF2D--