 |
 |
Localizing a compiled NIB from an old (2013) Mac application
|
 |
|
 |
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status:
Offline
|
|
Long story short, I have a Japan-only Casio product with certain features that are only supported in the Japanese version of the required software. Thanks to .NET reflection, I was able to fully localize the Windows application, but I've so far been unsuccessful in trying to localize the MainMenu.nib file in the Mac version. Fortunately, the app UX is entirely image-driven, so I was able to copy the images from the English version of the software (which lacks support for the aforementioned features) to successfully localize the UX. The menu is still in Japanese, and the feature in question (configuring wifi) is entirely menu-driven, so it's kind of difficult to use.
I was finally able to get the NIB decompiled to a XIB thanks to AngelMB and something CharlesS wrote awhile back, but it looks like it's sort of a one-way decompile, unlike .NET reflection, so I've been unsuccessful in turning it back into a compiled NIB.
Is there any way I can either localize the NIB from the app, or create a new NIB? I know literally nothing about developing applications for Mac - the only desktop programming language I'm fluent in is C#, so this is all a black box for me. If there's just no way for me to localize the menus, I can accept that, but I'm wondering if I have options here.
|
Sell or send me your vintage Mac things if you don't want them.
|
|
|
|
|
 |
|
 |
Professional Poster
Join Date: Feb 2000
Location: Nashua NH, USA
Status:
Offline
|
|
|
|
|
|
|
|
 |
|
 |
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status:
Offline
|
|
But how do I do that? The XIB that was created from the compiled NIB will not compile, and when i compare it to a generic XIB (like if I create a new one in Xcode as a test), it's clearly not formatted correctly.
|
Sell or send me your vintage Mac things if you don't want them.
|
|
|
|
|
 |
|
 |
Posting Junkie
Join Date: Dec 2000
Status:
Offline
|
|
The main problem is probably due to the fact that Apple changed the XIB format at some point. The original, and the one that NibUnlocker created, was basically just a straight translation of the binary data in the NIB into XML. This is why it's so gnarly to look at, but also why it was relatively easy to make a conversion tool like NibUnlocker. The new format is a lot cleaner and easier to read by a human, but as there's no 1:1 relationship with the binary format anymore, making a converter that would work with that new format would be a lot more work. So that is likely the source of your trouble, especially since NibUnlocker isn't going to know about any of the features that were added to NIB/XIB in the intervening period since it was written, and consequently probably won't translate those properly.
With all that said, since the nib you're trying to decompile seems reasonably old, it's possible that I might be able to do something with it if you send it to me (support on the left side of the "at" sign, charlessoft dot com on the right of it). This isn't a promise that I'll be able to succeed at it, but I can give it a shot.
|
|
|
|
|
|
 |
|
 |
Addicted to MacNN
Join Date: Aug 2006
Location: The deep backwoods of the PNW
Status:
Offline
|
|
Thanks Charles!! I will do that as soon as I can.
I also wrote a PowerShell script (works in PS Core for Mac) to convert the base64-encoded Japanese strings to English using a public translation API, if it helps any.
The software is copyright 2013, IIRC. So hopefully there's something that can be done with it.
|
Sell or send me your vintage Mac things if you don't want them.
|
|
|
|
|
 |
 |
|
 |
|
|
|

|
|
 |
Forum Rules
|
 |
 |
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is Off
|
|
|
|
|
|
 |
 |
 |
 |
|
 |