他言語へのローカライズ

カレンダーを他の言語にローカライズしたいと思います。注意すべき点はどのようなことですか?

カレンダーを翻訳する際に注意をはらうべき部分を、いくつか挙げます。

日付

カレンダーの日付の扱いには十分な注意が必要です。「日付の書式」を読んでよく確認してください。

レイアウト

ソリューションをファイルに統合した後は、大半のレイアウトの名前を変更してかまいません。例外は「Source No X」レイアウトです。この名前は変更しないでください。レイアウトメニューから取り除くのはかまいません。「calendar」レイアウトの名前を変更する場合は、「Go to Calendar Layout」スクリプトを編集してスクリプト名の変更を反映させてください。

繰り返しのオプション

「Repeat Options」レイアウトには、タブ名とテキスト(日や月の表記など)が含まれており、これらも翻訳対象となるでしょう。画面上部にあるオレンジ色のタブをドラッグして移動し、その下に重なっている“FileMaker自体の”タブを表示します。それから、週、月、年のタブを操作して、内容を翻訳します。曜日や月名の表記はレイアウト上のテキストなので、テキストツールで編集できます。これらのボタンから送られるスクリプトのパラメータは変更しないでください。スクリプトのパラメータは常に英語の曜日や月名の表記を使用します。カレンダーのユーザには、これが目に触れることはありません。

曜日の表記の条件付き書式の設定を変えたい場合もあるかもしれません。以下のように、「Self」を、たとえば英語の曜日に置き換えます。

not IsEmpty ( FilterValues ( $$sc_Repeat_DayOfWeek ; "Monday" ) )

「年」タブの月名についても、同様に設定します。

YesとNoの値一覧

YesとNoの値一覧の「Yes」と「No」を別の言語に変更するのは、翻訳の中でもまさに最も注意を要する部分です。多くの計算式やスクリプトで、この値が使用されているからです。値一覧を変更したら、以下のスクリプトと計算式で「Yes」と「No」の部分を置き換える必要があります。

計算式
  • CalendarRows::DateRangeStartAutoGlob 
  • CalendarRows::WeekNumbersDisplayCalc 
  • CalendarInterface::DateDisplayCalc 
  • CalendarInterface::NinjaCal_triple 
  • CalendarInterface::NinjaCal_basic 
  • CalendarInterface::NinjaCal_year 
スクリプト
  • Go to Calendar Tab ( Tab Name )
  • Load Calendar Layout
  • Go to Day
  • Go to Week
  • Insert into Calendar { Column }

時間の間隔

「Calendar Time Scale」値一覧にも英語のフレーズがあり、翻訳したい部分かもしれません。幸い、値一覧に加えて2つのフィールドも編集すると、ソフトウェアはすでにこれらの値を反映しています。「CalendarInterface::TimeIncrementAutoGlob」フィールド中の英語の値を翻訳し、その後「CalendarInterface::TimeScaleGlob」を編集します。2番目の「CalendarInterface::TimeScaleGlob」フィールドでは、計算式の「IF()」の部分のみを翻訳します。計算結果は翻訳せず、計算式の最後の方にある小文字の「day」はそのまま残しておきます。

Some of the time formats (the ones on the month view for example) can be switched to 24 hour format using a simple setting in one of our scripts (it is in the script "Format Event Time --- Edit Time Formats for Events Here ---" but others (like the times shown in the left hand column on the schedule screen) will need to be changed in layout mode.

All Day(終日)

「週」と「スクリーン」画面の「All Day」のフレーズは、「fieldCalendarRows::TimeDisplayMinutesCalc」フィールドにあります。

Done(完了)

このカレンダーには、To-Doリストを扱う際に英単語の「Done」を使うスクリプトが2つあります。To-Doリストを使う場合は、これを編集してローカライズする言語にしたいと考えるでしょう。「Mark Done」スクリプトを編集します。このスクリプトの用途はわかりやすいですね。次に「Capture Events by Date Range - Run SQL Query」スクリプトの編集ウインドウを開きます。スクリプトの前半に、SQLクエリ中の「Done」の単語を変更できる箇所のコメントがあります。