New Zenner
- Join Date:
- Feb 2016
- Location:
- Japan
- Posts:
- 2
- Plugin Contributions:
- 0
Views: 83,569
New Zenner
Zen Follower
I seem to be doing something similar, trying to match older Japanese version with English 1.5.4. I am upgrading our store from 1.5.1. Japanese names have many different readings, to get the correct reading the name should have "Kana" fields. The old Japanese ZenCart could do that but I haven't been able to do that with newer versions I modified. Name order is the opposite of English, Family Name First Name. The address order too is different starting with the postal code, prefecture, street address. When the user is in English mode the name and address order should revert and the Kana fields not appear. Have you been able to make any of this work?
Totally Zenned
cjcraven:
I seem to be doing something similar, trying to match older Japanese version with English 1.5.4. I am upgrading our store from 1.5.1. Japanese names have many different readings, to get the correct reading the name should have "Kana" fields. The old Japanese ZenCart could do that but I haven't been able to do that with newer versions I modified. Name order is the opposite of English, Family Name First Name. The address order too is different starting with the postal code, prefecture, street address. When the user is in English mode the name and address order should revert and the Kana fields not appear. Have you been able to make any of this work?
When you say that regardiing swtching from japanese to english that the katana fields should "revert" are you. Implying that a customer's name entered with katana should show as english or something? Or which change is expected?
I ask because the customers table which includes the first and last name of the customer only supports entry of one name per customer, not two+ or a translation.
Zen Follower
The Japanese localize script adds 2 fields to the database;
ALTER TABLE address_book ADD entry_firstname_kana varchar(32) NOT NULL default '';
ALTER TABLE address_book ADD entry_lastname_kana varchar(32) NOT NULL default '';
ALTER TABLE customers ADD customers_firstname_kana varchar(32) NOT NULL default '';
ALTER TABLE customers ADD customers_lastname_kana varchar(32) NOT NULL default '';
ALTER TABLE orders ADD customers_name_kana varchar(64) NOT NULL default '';
ALTER TABLE orders ADD delivery_name_kana varchar(64) NOT NULL default '';
ALTER TABLE orders ADD billing_name_kana varchar(64) NOT NULL default '';
INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) VALUES ('ふりがなが必要な国', 'FURIKANA_NECESSARY_COUNTRIES', 'Japanese', 'ふりがなが必要な国名をカンマで区切って入力してください', '5', '100', '', now());
Zen Follower
There are various changes to the core files too but I can't find them all at the moment.
Zen Follower
I tried before to get Kana to work but without luck. Please see my old post:
https://www.zen-cart.com/showthread.php?212913-Trouble-with-kana-fields&p=1244221#post1244221
Besides the database changes, the customers.php file needs to be changed in a number of places to account for kana fields. Also at least the below files need changing too.
admin\includes\application_top.php
admin\customers.php
includes\modules\pages\account_edit\header_php.php
includes\modules\pages\account_edit\jscript_form_check.php
includes\modules\pages\address_book_process\header_php.php
includes\modules\pages\login\jscript_form_check.php
includes\modules\checkout_new_address.php
includes\modules\create_account.php
includes\templates\template_default\templates\tpl_account_edit_default.php
includes\templates\template_default\templates\tpl_modules_address_book_details.p hp
includes\templates\template_default\templates\tpl_modules_checkout_new_address.p hp
includes\templates\template_default\templates\tpl_modules_create_account.php
includes\application_top.php
Zen Follower
In order to get the address format correct the database table "Address_Format" needs to be modified.
Add one row
address_format_id "7"
address_format "$lastname $firstname 様$cr$postcode$cr$state$city$cr$streets$cr$country$cr$telephone$cr$fax"
address_summary "$statename $city"
Zen Follower
This is from the 1.5.1 admin/customers.php file, notice about 5 modifications for Kana. Download the Japanese version to better see these changes.
$customers_firstname = zen_db_prepare_input(zen_sanitize_string($_POST['customers_firstname']));
$customers_lastname = zen_db_prepare_input(zen_sanitize_string($_POST['customers_lastname']));
// ->furikana
$customers_firstname_kana = zen_db_prepare_input($_POST['customers_firstname_kana']);
$customers_lastname_kana = zen_db_prepare_input($_POST['customers_lastname_kana']);
// <-furikana
// ->furikana
if (FURIKANA_NESESSARY)
$sql_data_array = array('customers_firstname' => $customers_firstname,
'customers_lastname' => $customers_lastname,
'customers_firstname_kana' => $customers_firstname_kana,
'customers_lastname_kana' => $customers_lastname_kana,
'customers_telephone' => $customers_telephone,
'customers_fax' => $customers_fax,
'customers_email_address' => $customers_email_address,
'customers_group_pricing' => $customers_group_pricing,
'customers_newsletter' => $customers_newsletter,
'customers_email_format' => $customers_email_format,
'customers_authorization' => $customers_authorization,
'customers_referral' => $customers_referral
);
else
$sql_data_array = array('customers_firstname' => $customers_firstname,
'customers_lastname' => $customers_lastname,
'customers_email_address' => $customers_email_address,
'customers_telephone' => $customers_telephone,
'customers_fax' => $customers_fax,
'customers_group_pricing' => $customers_group_pricing,
'customers_newsletter' => $customers_newsletter,
'customers_email_format' => $customers_email_format,
'customers_authorization' => $customers_authorization,
'customers_referral' => $customers_referral
);
// <-furikana
if (ACCOUNT_GENDER == 'true') $sql_data_array['customers_gender'] = $customers_gender;
if (ACCOUNT_DOB == 'true') $sql_data_array['customers_dob'] = ($customers_dob == '0001-01-01 00:00:00' ? '0001-01-01 00:00:00' : zen_date_raw($customers_dob));
zen_db_perform(TABLE_CUSTOMERS, $sql_data_array, 'update', "customers_id = '" . (int)$customers_id . "'");
$db->Execute("update " . TABLE_CUSTOMERS_INFO . "
set customers_info_date_account_last_modified = now()
where customers_info_id = '" . (int)$customers_id . "'");
if ($entry_zone_id > 0) $entry_state = '';
// ->furikana
if (FURIKANA_NESESSARY)
$sql_data_array = array('entry_firstname' => $customers_firstname,
'entry_lastname' => $customers_lastname,
'entry_firstname_kana' => $customers_firstname_kana,
'entry_lastname_kana' => $customers_lastname_kana,
'entry_street_address' => $entry_street_address,
'entry_postcode' => $entry_postcode,
'entry_city' => $entry_city,
'entry_country_id' => $entry_country_id);
else
$sql_data_array = array('entry_firstname' => $customers_firstname,
'entry_lastname' => $customers_lastname,
'entry_street_address' => $entry_street_address,
'entry_postcode' => $entry_postcode,
'entry_city' => $entry_city,
'entry_country_id' => $entry_country_id);
// <-furikana
// ->furikana
if (FURIKANA_NESESSARY)
$customers = $db->Execute("select c.customers_id, c.customers_gender, c.customers_firstname,
c.customers_lastname, c.customers_dob, c.customers_email_address,
c.customers_firstname_kana, c.customers_lastname_kana,
a.entry_company, a.entry_street_address, a.entry_suburb,
a.entry_postcode, a.entry_city, a.entry_state, a.entry_zone_id,
a.entry_country_id, c.customers_telephone, c.customers_fax,
c.customers_newsletter, c.customers_default_address_id,
c.customers_email_format, c.customers_group_pricing,
c.customers_authorization, c.customers_referral
from " . TABLE_CUSTOMERS . " c left join " . TABLE_ADDRESS_BOOK . " a
on c.customers_default_address_id = a.address_book_id
where a.customers_id = c.customers_id
and c.customers_id = '" . (int)$customers_id . "'");
else
$customers = $db->Execute("select c.customers_id, c.customers_gender, c.customers_firstname,
c.customers_lastname, c.customers_dob, c.customers_email_address,
a.entry_company, a.entry_street_address, a.entry_suburb,
a.entry_postcode, a.entry_city, a.entry_state, a.entry_zone_id,
a.entry_country_id, c.customers_telephone, c.customers_fax,
c.customers_newsletter, c.customers_default_address_id,
c.customers_email_format, c.customers_group_pricing,
c.customers_authorization, c.customers_referral
from " . TABLE_CUSTOMERS . " c left join " . TABLE_ADDRESS_BOOK . " a
on c.customers_default_address_id = a.address_book_id
where a.customers_id = c.customers_id
and c.customers_id = '" . (int)$customers_id . "'");
// <-furikana
<?php
// ->furikana
if (FURIKANA_NESESSARY) {
?>
var customers_firstname_kana = document.customers.customers_firstname_kana.value;
var customers_lastname_kana = document.customers.customers_lastname_kana.value;
if (customers_firstname_kana == "" || customers_firstname_kana.length < <?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?>) {
error_message = error_message + "<?php echo JS_FIRST_NAME_KANA; ?>";
error = 1;
}
if (customers_lastname_kana == "" || customers_lastname_kana.length < <?php echo ENTRY_LAST_NAME_MIN_LENGTH; ?>) {
error_message = error_message + "<?php echo JS_LAST_NAME_KANA; ?>";
error = 1;
}
<tr>
<td class="main"><?php echo ENTRY_FIRST_NAME_KANA; ?></td>
<td class="main">
<?php
if ($error == true) {
if ($entry_firstname_kana_error == true) {
echo zen_draw_input_field('customers_firstname_kana', $cInfo->customers_firstname_kana, zen_set_field_length(TABLE_CUSTOMERS, 'customers_firstname_kana', 50)) . ' ' . ENTRY_FIRST_NAME_KANA_ERROR;
} else {
echo $cInfo->customers_firstname_kana . zen_draw_hidden_field('customers_firstname_kana');
}
} else {
echo zen_draw_input_field('customers_firstname_kana', $cInfo->customers_firstname_kana, zen_set_field_length(TABLE_CUSTOMERS, 'customers_firstname_kana', 50), true);
}
?></td>
</tr>
<tr>
<td class="main"><?php echo ENTRY_LAST_NAME_KANA; ?></td>
<td class="main">
<?php
if ($error == true) {
if ($entry_lastname_kana_error == true) {
echo zen_draw_input_field('customers_lastname_kana', $cInfo->customers_lastname_kana, zen_set_field_length(TABLE_CUSTOMERS, 'customers_lastname_kana', 50)) . ' ' . ENTRY_LAST_NAME_KANA_ERROR;
} else {
echo $cInfo->customers_lastname_kana . zen_draw_hidden_field('customers_lastname_kana');
}
} else {
echo zen_draw_input_field('customers_lastname_kana', $cInfo->customers_lastname_kana, zen_set_field_length(TABLE_CUSTOMERS, 'customers_lastname_kana', 50), true);
}
?></td>
</tr>
<?php
}
?>
<?php
Zen Follower
In order to properly sell in the Japanese market these issues need to be resolved, unfortunately I'm not a programmer and it is beyond my skill.
New Zenner
Recently upgraded its website 1.5.5 works far better. Site of Bulgarian and for Auto Accessories http://hopshop.bg/ ... I put my package language 1.3,8 because there is no new language Bulgarian .. Admin me in English .. Where did I find that missing something in the language add or change further for now .. everything is ok .. Thank creators and people who develop ZenCart ...
Zen Follower
I'm also looking at adding Japanese language support to my (experimental) online shop here in Tokyo, which runs 1.5.5d perfectly well in English.
I've looked at the Japanese ZenCart 1.5.1 language files, extra modules for shipping and payment, and the localization script.
Since the Japanese Zencart is---I think---a pure localization, for support of multiple languages I surmise that parts of the localization script (and parts of other files that simply replace English terminology with Japanese) should be removed and put into language files and templates.
Is that the correct approach to take?
Totally Zenned
Welcome to Zen Cart. This FAQ somewhat describes the LANGUAGE system, though does not heavily go into the "override" portion of the system: https://www.zen-cart.com/content.php?229-language-files-what-are-they-and-how-are-they-used
The override system is a little more explained here: https://www.zen-cart.com/content.php?228-understanding-the-override-system
And there is a file that can be downloaded from the plugins area to be used/viewed on your local computer to better understand the override system: https://www.zen-cart.com/downloads.php?do=file&id=1393
Basically, it is recommended that words not be incorporated into the code, instead that defined variables be used and other tools to support language related display such as in addresses that the house number appear on the "correct" side of the street name, or that a quantity appears in the correct location of the "sentence".
Zen Follower
Thank you mc12345678, I will check out the cheatsheet, though I notice it only is applicable correctly up to 1.5.5b. Since I began at 1.5.5c before upgrading to 1.5.5d, I will need to some to check what differences there might be.
I spent about 8 months looking into Zencart before deciding on the international 1.5.5c (at that time the latest) rather than the old Japanese 1.5.1(something), and run only in English at the moment.
I contacted the Facebook page of the Zencart Japan team last year, no reply at all despite my offer to work with them to update the Japanese version to 1.5.5c (and now 1.5.5d). The website also appears dead, and the forums do not function (at least search does not) when looking for modules.
Since the main changes appear to be not that difficult, in terms of name and address changes, my main problems are conceptual: does making localization changes to name and address formats mean that all users in all languages will be forced to use a format, or can one easily separate sets of fields to use per language (not that that is a major problem if one can only use a single type of format for names and addresses).
The only modules added to the Japanese 1.5.1 Zencart version appear to be addition of credit card and convenience store payments using Remise (a payment brand in Japan), and the addition of two express mail delivery services (Sagawa and Kuroneko Yamato) in the shipping modules. I am not sure if cod_table (pay on delivery) is a Japanese addition or not, and need to check the modules in 1.5.5d actually to compare.
So as far as I am concerned, since I am quite fluent in Japanese, with some cooperation with like-minded people here on this forum we could prepare a Japanese language and module update for 1.5.5d, assuming programming changes in the modules for updating from 1.5.1 to 1.5.5d is not too difficult (or necessary even).
I'll get spend some time on the cheatsheet this weekend and see if I understand whether all or some of the Japanese localization can be handled by the language (no extension of functionality, just translations) and override system (additions/modifications of functionality - but it seems language files also fall under override). One thing I am really eager to understand is whether localization falls within the ambit of the override system.
Many thanks in advance,
Gernot Hassenpflug
Zen Follower
After revisiting several related threads on Japanese language packs (a misnomer I find) dating back to 2006 (version 1.3.8 or so), and the contributions therein, I conclude that there are three major areas included in what could be referred to a Japanese language pack-age.
I don't know if I got the breakdown correct, but here goes.
Zen Follower
After looking at the Japanese 1.5.1 paypal files and the current 1.5.5e files, I don't see anything customized in the Japanese ones that hasn't been already put into the 1.5.5e files. There has certainly been a heck of a lot of work in the time since 1.5.1 by Dr. Byte!
In particular, I noticed that the differences do not show up any language-specific text, which is great.
On the other hand, the 3 shipping modules (nittsu.php, sagawaex.php, yamato.php) (and their related language and class files) do have specific Japanese-language strings in them. Presumably, for Anglicization, the best would be to make new defines for these texts, and override them with language-specific overrides; or perhaps one could just override the entire module and edit the texts in-situ as needed. Will have to test that.
In any case, I am not sure if the shipping modules will work out of the box in 1.5.5e, nor whether they are still current against the latest Nittsu, Sagawa and Yamato APIs. Again, will need to test that.
A related question would be what happens when Paypal, Nittsu, Sagawa, Yamato or whoever makes changes to their interface that breaks the modules. Fixing such issues could be quite a bit of work, but I assume any to modules would be released individually here on this site (for example I am happy to share any work I do for my site with the community).
Zen Follower
I have split work into four parts:
(1) DB changes: leave till later (address format definition(s), name order, hiragana/katakana name field support, etc.)
(2) module changes: addition of Japanese shipping modules to 1.5.5e. This seems to require minimal changes to the declaration function and use of zone_country_id statements (apart from language-specifics).
(3) language addition of Japanese.
(4) template additions/changes (email, etc., as required).
I have started work on making the language files.
First, the differences to includes/languages/english.php between 1.5.1-jp-1 and 1.5.5.e:
4c4
< * @copyright Copyright 2003-2011 Zen Cart Development Team
---
> * @copyright Copyright 2003-2016 Zen Cart Development Team
7c7
< * @version $Id: english.php 19690 2011-10-04 16:41:45Z drbyte $
---
> * @version $Id: Author: DrByte Tue Jan 5 15:06:15 2016 -0500 Modified in v1.5.5 $
19c19,20
< @setlocale(LC_TIME, 'en_US');
---
> $locales = array('en_US', 'en_US.utf8', 'en', 'English_United States.1252');
> @setlocale(LC_TIME, $locales);
139d139
< define('BOX_BBINDEX', 'Forum');
271,274c271,274
< define('PREVNEXT_BUTTON_FIRST', '<<FIRST');
< define('PREVNEXT_BUTTON_PREV', '[<< Prev]');
< define('PREVNEXT_BUTTON_NEXT', '[Next >>]');
< define('PREVNEXT_BUTTON_LAST', 'LAST>>');
---
> define('PREVNEXT_BUTTON_FIRST', '«FIRST');
> define('PREVNEXT_BUTTON_PREV', '[« Prev]');
> define('PREVNEXT_BUTTON_NEXT', '[Next »]');
> define('PREVNEXT_BUTTON_LAST', 'LAST»');
479a480
> define('WARNING_PRODUCT_QUANTITY_ADJUSTED', 'Quantity has been adjusted to what is in stock. ');
509a511
> define('TEXT_AUTHORIZATION_PENDING_CHECKOUT', 'Checkout Unavailable - Approval Pending');
586a589
> define('PAYMENT_JAVASCRIPT_DISABLED', 'We could not continue with checkout as Javascript is disabled. You must enable it to continue');
602a606,607
> define('ERROR_TEXT_COUNTRY_DISABLED_PLEASE_CHANGE', 'Sorry, but we no longer accept billing or shipping addresses in "%s". Please update this address to continue.');
>
608a614
> define('ERROR_DATABASE_MAINTENANCE_NEEDED', '<a href="http://www.zen-cart.com/content.php?334-ERROR-0071-There-appears-to-be-a-problem-with-the-database-Maintenance-is-required" target="_blank">ERROR 0071: There appears to be a problem with the database. Maintenance is required.</a>');
I therefore modified/added corresponding fields to the includes/languages/japanese.php, so that the differences to the 1.5.1-jp-1 module are as follows:
20c20,21
< @setlocale(LC_TIME, 'ja_JP.UTF-8');
---
> $locales = array('ja_JP', 'ja_JP.UTF-8', 'ja', 'Japanese_Japan.932');
> @setlocale(LC_TIME, $locales);
292,295c293,296
< define('PREVNEXT_BUTTON_FIRST', '<<最初');
< define('PREVNEXT_BUTTON_PREV', '[<< 前へ]');
< define('PREVNEXT_BUTTON_NEXT', '[次へ >>]');
< define('PREVNEXT_BUTTON_LAST', '最後>>');
---
> define('PREVNEXT_BUTTON_FIRST', '«最初');
> define('PREVNEXT_BUTTON_PREV', '[« 前へ]');
> define('PREVNEXT_BUTTON_NEXT', '[次へ »]');
> define('PREVNEXT_BUTTON_LAST', '最後»');
498a500
> define('WARNING_PRODUCT_QUANTITY_ADJUSTED', 'ご注文個数を在庫中数量に変えました。 ');
528a531
> define('TEXT_AUTHORIZATION_PENDING_CHECKOUT', '現在チェックアウトを利用できません - 承認手続き中');
605a609
> define('PAYMENT_JAVASCRIPT_DISABLED', 'Javascriptが無効になっているためチェックアウトの手続きを進めません。Javascriptを有効にしてください。');
621a626,627
> define('ERROR_TEXT_COUNTRY_DISABLED_PLEASE_CHANGE', 'お手数ですが、"%s"の支払い先または郵送先を受け入れなくなりました。この住所を更新してください。');
>
627a634
> define('ERROR_DATABASE_MAINTENANCE_NEEDED', '<a href="http://www.zen-cart.com/content.php?334-ERROR-0071-There-appears-to-be-a-problem-with-the-database-Maintenance-is-required" target="_blank">ERROR 0071: データベース問題が発生しているようです。メンテナンスが必要です。</a>');
```Some contents of japanese.php are still in English in 1.5.1-jp-1, I may translate those later, but first I wanted to update to 1.5.5e standard, based on english.php.
Next, I'll work on the contents of includes/languages/Japanese.
Note: I keep getting token expired on my submissions even after Ctrl-R, pressing the reload icon in the URL bar of Friefox. Ctrl-F5 does not help either. I tried logging out and loggin in again now.
Zen Follower
Files that changes in includes/languages/english top-level directory between 1.5.1-jp-1 and 1.5.5e. These will need updating in the languages/japanese:
Furthermore, a file that is only in 1.5.5e and not in 1.5.1-jp-1:
page.php
After updating the Japanese files I should put them somewhere accessible, even though a work in progress.
I will tackle the lower level directories after that, here the breakdown (no idea of differences yet):
Furthermore, a new directory only in 1.5.5e and not in 1.5.1-jp-1:
responsive_classic
Zen Follower
Translation of language files is completed.
First, the 18 files in the previous post were handled.
Note: in password_forgotten.php Japanese-specific definition EMAIL_GREET is translated ("様", read as "sama", to follow the name of the person addressed).
This is used in checkout_process.php as well (no update needed there).
In any case, definition additions and other changes to the core code I will tackle later.
Next, I took on the sub-directories in languages/japanese/.
A. Classic
One file updated:
B. extra_definitions
No files updated.
New in 1.5.5e is contents of responsive_classic/
Contains one file to translate:
C. html_includes
In classic/
3. define_site_map.php
New in 1.5.5e is contents of responsive_classic/
Most of those 12 files are placeholders at present, so I only translated a handful of items.
D. Images
No files to update.
E. modules
E.1 order_total/
One file updated:
E2. payment/
Following files updated:
Following file changed:
6. linkpoint_api.php -> firstdata_hco.php
Translation update was minimal.
Following files brought forward to 1.5.5e:
7. remisecps_zen.php
8. remise_zen.php
Note that the above 2 files also exist und languages/english/modules/payment in 1.5.1-jp,
so I brought those forward too and translated them, as they had been left completely in Japanese.
Following file is only in 1.5.5e:
9. payeezyjszc.php
So I copied it to lanauges/japanese/modules/payment
Note that this is untranslated for now, but also none of the Paypal modules were translated in 1.5.1-jp either,
so this is something to do later (having done the remise modules I am confident I can handle that).
H.3 shipping/
The following files were updated:
Based on the above modules, a new module for Yupack service should be fairly simple to code later.
F. New in 1.5.5e: responsive_classic
Three files to translate, based on those in the other (classic and default) templates.
I updated the Japanese-specific payment and shipping modules in two places:
I copied across the entire button directory of Japanese images:
includes/templates/template_default/buttons/japanese
There do not appear to be any button changes between 1.5.1-jp and 1.5.5e.
Zen Follower
Sumamry so far:
The above work was purely on the user side of the site, comparing changes between the English 1.5.1 and 1.5.5e, and then updating the Japanese language files 1.5.1 to 1.5.5e standard (since they do not exist in 1.5.5e).
The exception here is the Japanese-version module and class files, which were updated to 1.5.5e standard by inspection of other 1.5.5e modules (and note that the shipping modules need updating, and the remise payment module is untested for present use).
To actually make use of all of this, the following changes are required:
(1) updates to the admin/ folder. If not interested in localization, probably the admin/includes/language/japanese/ and admin/includes/languages/japanese/images/buttons/ could be left out. But a lot of customization has been done in 1.5.1-jp compared to 1.5.1, to support use in Japan. A diff between 1.5.1-jp and 1.5.1 showed up 97 files with changes. Of these 80 were in admin/includes/languages/japanese/ and likely can be skipped for now. Some naviagation sidebox has been added, so japanese.php and english.php include some changes for that.
The following files have changes, but do not appear to be directly related to Japanese:
(2) updates to the includes/ folder. Some work on modules was handled earlier and is not repeated here.
(3) updates to the zc_install/ folder and actual database changes. The zc_install/includes/languages/japanese/ files (11 of them) are probably not needed at this stage. english.php and japanese.php again have the customized navigation sidebox additions, as does zc_install/includes/templates/template_default/sideboxes/navigation.php.
Other small changes are in:
The job now is two-fold, as I see it:
First. in the above files, the logic of adding Japan-specific support in various files and in the database (with the localized sql file) needs to be added to the corresponding 1.5.5e files. At the same time, and non-Japanese-specific upgrades should be taken into account (not all changes may need to be carried forward). In particular, for now localization is not my goal, so only addition of Japan-centric information should be carried out.
This would involve comparing 1.5.1 international and 1.5.5e files, quite a job since there are many changes.
Second, any language-specific files would need to be added in 1.5.5e. diff does not work so great comparing translations, so probably the best (though tedious) way would be to to a file-by-file comparison between 1.5.1-jp and the 1.5.5e english files. No doulbt some files are no longer there, others might be new, or the functionality moved elsewhere.
I am not sure if overrides of definitions are required in any of the above, as opposed to only Japanese language additions in the language sub-folder. Even templates seem to be in this sub-folder.
However, for admin use, where I seem to recall overrides to not work, the support need for furigana would mean some changes to existing admin files. How to do this I am not quite sure, confused after too much reading of different topics...
Zen Follower
Comments to self:
Tell staff why this post should be reviewed.