এনএসলোক্যালাইজড স্ট্রিং () এর দ্বিতীয় প্যারামিটারটি কী?


123

এতে *commentপ্যারামিটারটি কী :

NSString *NSLocalizedString(NSString *key, NSString *comment)

আমি যদি এটি করি:

NSLocalizedString(@"Hello_World_Key", @"Hello World")

এবং লোকালাইজেবল.স্ট্রিংসের দুটি সংস্করণ রয়েছে (ইংরাজী এবং স্প্যানিশ), প্রত্যেকের প্রবেশের দরকার আছে:

English.lproj/Localization.strings: @"Hello_World_Key" = @"Hello World";

Spanish.lproj/Localization.strings: @"Hello_World_Key" = @"Hola Mundo";

ইংরেজরা কি এক অপ্রয়োজনীয় নয়?

উত্তর:


72

মন্তব্য স্ট্রিং অ্যাপ্লিকেশন দ্বারা উপেক্ষা করা হয়। এটি অনুবাদকের সুবিধার জন্য ব্যবহৃত হয়, আপনার অ্যাপ্লিকেশনটিতে এটি কীটি পাওয়া যায় তার প্রাসঙ্গিক ব্যবহারের অর্থ যোগ করতে।

উদাহরণস্বরূপ, Hello_World_Keyকীটি কোনও প্রদত্ত ভাষায় বিভিন্ন মূল্যবোধ গ্রহণ করতে পারে, সেই Hello Worldবাক্যাংশটি "What's হোয়াটস আপ ওয়ার্ল্ড", "ইও ওয়ার্ল্ড", "গুড ডে ওয়ার্ল্ড" ইত্যাদি formal এই বাক্যাংশটি কতটা আনুষ্ঠানিক বা অনানুষ্ঠানিকভাবে হওয়া দরকার তার উপর নির্ভর করে ।

অনুবাদকের কাছে এই ব্যবহারের ইঙ্গিত দিতে আপনি মন্তব্য ক্ষেত্রে একটি স্ট্রিং যুক্ত করতে পারেন, যিনি (একজনের ধারণা করা হবে) আপনার অ্যাপ্লিকেশন স্থানীয়করণে আরও ভাল সক্ষম হবে।


277

দ্বিতীয় প্যারামিটারটি এমন একটি মন্তব্য যা আপনি জেনস্ট্রিংস কমান্ড-লাইন ইউটিলিটিটি ব্যবহার করেন তবে স্বয়ংক্রিয়ভাবে স্ট্রিং ফাইলটিতে উপস্থিত হবে যা আপনার উত্স কোডটি স্ক্যান করে আপনার জন্য স্ট্রিং ফাইল তৈরি করতে পারে।

মন্তব্যটি আপনার স্থানীয়করণের জন্য দরকারী। উদাহরণ স্বরূপ:

NSLocalizedString(@"Save",@"Title of the Save button in the theme saving dialog");

আপনি যখন জেনস্ট্রিংগুলি চালাবেন, এটি লোকালাইজেবল.স্ট্রিংস ফাইলে এই জাতীয় একটি এন্ট্রি তৈরি করবে:

/* Title of the Save button in the theme saving dialog */
"Save" = "Save";

@ জুয়ান্ডেলাটোরে: এই প্রশ্নটি কয়েক বছর পুরনো, সম্ভবত ৪ র্থ স্পেস (যে ব্যক্তি প্রশ্নটি জিজ্ঞাসা করেছেন) তার প্রশ্নের একটি দৃষ্টিপাত করেননি যেহেতু তিনি একটি উত্তর গ্রহণ করেছেন।
মান্নি

স্ট্রিং ফাইলটিতে এমন কোনও এন্ট্রি নেই যা আপনার নির্দিষ্ট করা শনাক্তকারীর সাথে মেলে It's
অস্কার

4
না, কীটি সেই ক্ষেত্রে ব্যবহৃত হয়, মন্তব্য নয়।
নিক লকউড

আসলকথা কি? হ্যাঁ এটি শর্ট আইডির জন্য দরকারী ( "id" - "word";যেমন আপনার উদাহরণ হিসাবে "Save" = "Save";) তবে আপনাকে ম্যানুয়ালি আরও কিছু যুক্ত করতে হবে"id" - "word 1 word 2 word 3";
user924

মন্তব্য (দ্বিতীয় প্যারামিটার) স্থানীয়করণের জন্য। আপনার অ্যাপ্লিকেশনটির জন্য অন্য ভাষায় স্ট্রিং যুক্ত করা এমন কাউকে কোন অনুবাদ প্রয়োগ করতে হবে তা জানতে প্রসঙ্গে প্রয়োজন। প্রথম প্যারামিটারটি কেবল স্থানীয়করণের স্ট্রিং ফাইলগুলিতে কীটি নির্দিষ্ট করে, স্ট্রিং ফাইলটি আসলে ইউআইতে প্রদর্শিত পাঠ্যের জন্য সংরক্ষণ করে।
রব কেনেগার

0

এটি অনুবাদ সম্পর্কে কেবল বিকাশকারী বোঝার জন্য, এটি হ'ল আপনি সংশ্লিষ্ট স্ট্রিং ফাইল থেকে সংশ্লিষ্ট স্ট্রিং পেতে একটি কী দিচ্ছেন।

মন্তব্য পরামিতি বিকাশকারীকে কীটি উপস্থাপন করে তা বুঝতে সক্ষম করে ...

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.