Ad

ইংরেজিফরাসিস্প্যানিশ

বিনামূল্যে সম্পাদক অনলাইন | DOC > | XLS > | PPT >


OffiDocs ফেভিকন

লিঙ্গুকম্পোনেন্ট গ্রামার চেকিং

OffiDocs অনলাইনে OpenOffice প্রদান করে তাই আমরা Lingucomponent Grammar Checking-এ আগ্রহী যার লক্ষ্য হল ইংরেজি এবং অন্যান্য সমর্থিত ভাষার জন্য একটি গ্রামার চেকার ডিজাইন করা, বিকাশ করা এবং বাস্তবায়ন করা। একটি ব্যাকরণ পরীক্ষক API সংস্করণ 3.0 থেকে OpenOffice.org-এ উপলব্ধ।

ব্যাকরণ পরীক্ষাকে একটি পাঠ্য পুনরাবৃত্তি এবং মার্কআপ প্রক্রিয়ার একটি নির্দিষ্ট বাস্তবায়ন হিসাবে দেখা হয়, অন্যান্য পুনরাবৃত্তি/মার্কআপ প্রক্রিয়া যেমন বানান পরীক্ষা বা স্মার্ট ট্যাগিং মূলত একইভাবে কাজ করতে পারে (যদিও বর্তমানে সেগুলি এভাবে প্রয়োগ করা হয় না)। যদি নিম্নলিখিত ডকুমেন্টেশনে ব্যাকরণ চেকিং উল্লেখ করা থাকে তবে এটিকে টেক্সট মার্কআপের আরও সাধারণ কাজের জন্য একটি স্থানধারক হিসাবে দেখা যেতে পারে। যেহেতু টেক্সট পুনরুক্তি বহনকারী বস্তুগুলি নির্দিষ্ট মার্কআপ প্রক্রিয়া সম্পর্কে সচেতন থাকে সেগুলির জন্য সেগুলি ব্যবহার করা হয় মূলত সেই প্রক্রিয়ার প্রয়োজনের জন্য পুনরাবৃত্তিকে সূক্ষ্ম সুর করা সম্ভব।

ব্যাকরণ চেকিং প্রক্রিয়া নিয়ে গঠিত

- এক বা একাধিক নথি পরীক্ষা করতে হবে

- এক বা একাধিক ব্যাকরণ পরীক্ষক বাস্তবায়ন, প্রতিটি অন্তত একটি ভাষা সমর্থন করে।

- এক বা একাধিক ব্যাকরণ চেক ডায়ালগ (প্রতি নথিতে সর্বাধিক একটি দৃষ্টান্ত)

- ভুল হিসাবে চিহ্নিত পাঠ্যটিতে ক্লিক করার সময় একটি প্রসঙ্গ মেনু

- একটি গ্লোবাল ব্যাকরণ চেকিং ইটারেটর (সমস্ত নথিতে সাধারণ) সিঙ্গলটন হিসাবে প্রয়োগ করা হয়েছে, এক সময়ে একটি বাক্য (একটি ইচ্ছাকৃত নথির) পরীক্ষা করে।

- ব্যাকরণ পরীক্ষকের প্রতি একটি থ্রেড অবজেক্ট যা GUI ব্লক না করে চেকিং করতে ব্যবহৃত হয়

- একটি নথির পাঠ্যের মাধ্যমে পুনরাবৃত্তি করা বস্তু, একটি বস্তু যা অনুরোধ করা হয়েছিল একটি একক ব্যাকরণ চেকিং কার্য প্রতিনিধিত্ব করে

- একটি পাঠ্য নথিতে পাঠ্য ব্লকের প্রতিনিধিত্বকারী বস্তুগুলি ("ফ্ল্যাট অনুচ্ছেদ") যা নথির কংক্রিট কাঠামো থেকে বিমূর্ত করে এবং সাধারণ পাঠ্য স্ট্রিং এবং সাব স্ট্রিংগুলির অবস্থান এবং দৈর্ঘ্য বর্ণনা করে পূর্ণসংখ্যা মান দ্বারা পাঠ্যটিতে অ্যাক্সেস সরবরাহ করে।

 

অবজেক্ট এবং তাদের ইন্টারফেস

আমাদের তিনটি অংশ একসাথে কাজ করছে। প্রথম অংশটি পরীক্ষা করা নথি থেকে আসে এবং এটি একটি বাস্তবায়ন যা নির্দিষ্ট ধরণের নথির জন্য নির্দিষ্ট (যেমন লেখক বা ক্যালক)। এটি নথির পাঠ্যের অ্যাক্সেসকে এনক্যাপসুলেট করে। ব্যাকরণ ত্রুটির জন্য চেক করতে চায় এমন একটি নথিকে অবশ্যই ইন্টারফেস com.sun.star.text.XFlatParagraphIteratorProvider সমর্থন করতে হবে৷ এই ইন্টারফেসের মাধ্যমে এটি অবশ্যই com.sun.star.text.XFlatParagraphIterator প্রয়োগকারী বস্তু প্রদান করতে সক্ষম হবে যা com.sun.star.text.XFlatParagraph বাস্তবায়নকারী বস্তুগুলিকে ফেরত দেয়। পরবর্তী ইন্টারফেসটি com.sun.star.text.XTextMarkup থেকে নেওয়া হয়েছে। নিম্নলিখিতটিতে আমরা এই বস্তুগুলিকে "ফ্ল্যাট অনুচ্ছেদ পুনরাবৃত্তিকারী" (FPIterator) এবং "ফ্ল্যাট অনুচ্ছেদ" (FP) বলব। যদি "অনুচ্ছেদ" শব্দটি ব্যবহার করা হয় তবে এটি একটি "FP"ও নির্দেশ করবে, নথিতে একটি বাস্তব অনুচ্ছেদ নয় কারণ উভয়ই একই নয়।

নথির প্রেক্ষাপটে একটি এফপি অগত্যা একটি অনুচ্ছেদ নয়, এটি সেগুলির একটি সংগ্রহ হতে পারে (যেমন একটি তালিকা) এবং এতে কেবল ফ্লো টেক্সট নয়, অন্যান্য পাঠ্য বিষয়বস্তু যেমন টেক্সট ফ্রেম, হেডার এবং ফুটার ইত্যাদি। ডকুমেন্ট কোর এই ধরনের FP অবজেক্টের বস্তুগুলিকে দক্ষতার সাথে পরিচালনা করতে পারে এটি একটি নথি নির্দিষ্ট বাস্তবায়ন। FP সম্পূর্ণ অভ্যন্তরীণ পাঠ্য কাঠামো বা এর বৈশিষ্ট্যগুলি প্রকাশ করে না, এর বিষয়বস্তু শুধুমাত্র সম্পূর্ণ পাঠ্য ব্লক ধারণকারী একটি স্ট্রিং হিসাবে অ্যাক্সেসযোগ্য।

একটি FPIterator হল একটি বস্তু যা সমস্ত FP অবজেক্টের মাধ্যমে পুনরাবৃত্তি করতে দেয় যা একসাথে নথির পাঠ্য বিষয়বস্তু তৈরি করে। যে ক্রমানুসারে অনুচ্ছেদগুলি পুনরাবৃত্ত করা হয়েছে তা হল নির্বিচারে এবং FPIterator-এর বাস্তবায়নের বিশদ৷ "নিয়মিত" পাঠ্য বিষয়বস্তু সাধারণত পড়ার দিক দিয়ে সরবরাহ করা উচিত, তবে অন্যান্য পাঠ্য যেমন শিরোনাম এবং পাদচরণ (যা শুধুমাত্র একবারই বিদ্যমান কিন্তু প্রতিটি পৃষ্ঠায় পুনরাবৃত্তি হয়) বা পাঠ্য ফ্রেমগুলি (যা ফ্লো টেক্সটে এম্বেড করা যেতে পারে) কীভাবে উপযুক্ত পূর্বনির্ধারিত নয়। পাঠ্যের মাধ্যমে পুনরাবৃত্তি করা সর্বদা একটি পাঠ্য মার্কআপ প্রক্রিয়ার জন্য নির্ধারিত হয় যা পুরো নথির সাথে আচরণ করবে। এইভাবে পুনরাবৃত্তি ডকুমেন্টের শেষে মোড়ানো হবে এবং নির্দিষ্ট মার্কআপ প্রক্রিয়ার জন্য (যেমন ব্যাকরণ পরীক্ষা) সমস্ত অনুচ্ছেদগুলিকে "চেক করা" হিসাবে চিহ্নিত করার আগে এটি শেষ হবে না। "চেক করা" হিসাবে চিহ্নিত অনুচ্ছেদগুলি পুনরাবৃত্তিতে এড়িয়ে যাবে৷ সুতরাং একটি FPIterator এর ক্লায়েন্টদের জন্য এটি ব্যবহার করা সহজ: এটিকে নতুন FP অবজেক্টের জন্য জিজ্ঞাসা করুন যতক্ষণ না কেউ ফেরত না আসে এবং এটি কীভাবে বাস্তবায়িত হয় সে সম্পর্কে চিন্তা করবেন না।

দ্বিতীয় অংশটি একটি ব্যাকরণ পরীক্ষক। একটি ব্যাকরণ পরীক্ষক হল একটি উপাদান যা ইন্টারফেস com.sun.star.linguistic2.XGrammarChecker বাস্তবায়ন করে। প্রতিটি ভাষার জন্য একটি নির্দিষ্ট উপাদান থাকতে পারে যা এই ভাষায় ব্যাকরণের ত্রুটিগুলি পরীক্ষা করতে সক্ষম। কনফিগারেশন বলে দেবে কোন উপাদান কোন ভাষার জন্য দায়ী। একটি নির্দিষ্ট উপাদানের প্রতিনিধিত্বকারী com.sun.star.linguistic2.XGrammarChecker-এর বাস্তবায়ন এই ব্যাকরণ চেকিং উপাদানটির "ব্যক্তিগত" APIকে এনক্যাপসুলেট করবে। এই প্রাইভেট এপিআই হতে পারে ইউএনও ভিত্তিক বা বিশুদ্ধ জাভা, একটি CLI বা COM ইন্টারফেস, একটি C API ইত্যাদি, যা ব্যবহার করা যেতে পারে বা ইউএনও ইন্টারফেসের বাস্তবায়নের ভিতরে সেতু করা যেতে পারে। যেহেতু ইন্টারফেসটি বেশ ছোট তাই OpenOffice.org-এ ব্যবহার করার জন্য বিদ্যমান ব্যাকরণ চেকারগুলিকে মোড়ানো খুব জটিল হওয়া উচিত নয়।

মাঝখানে তৃতীয় উপাদানটি রয়েছে, যা অন্য দুটির মধ্যে মধ্যস্থতা করে। এটি ব্যাকরণ চেকিং প্রক্রিয়ার "যুক্তি" প্রয়োগ করে। যেহেতু এটি তাদের সংজ্ঞায়িত UNO API দ্বারা অন্য দুটি অংশের সাথে কথা বলে শুধুমাত্র এই মধ্যবর্তী অংশটি নির্দিষ্ট নথির ধরন বা ব্যাকরণ চেকিং উপাদান থেকে স্বাধীন। com.sun.star.linguistic2.GrammarCheckingIterator নামক একটি UNO পরিষেবা হল এমন একটি উপাদান যা প্রকৃতপক্ষে সমস্ত সমর্থিত পরিস্থিতিতে ব্যাকরণ পরীক্ষা করার প্রক্রিয়াটি বহন করে। এটি একটি সিঙ্গেলটন যা সমস্ত চলমান ব্যাকরণ চেকিং প্রক্রিয়াগুলিকে নিয়ন্ত্রণ করে এবং এইভাবে সমস্ত বিদ্যমান ব্যাকরণ চেকিং উপাদানগুলিও জানে৷ এটি com.sun.star.linguistic2.XGrammarCheckingIterator ইন্টারফেস প্রয়োগ করে এবং com.sun.star.linguistic2.XGrammarCheckingResultListener বাস্তবায়নকারী একটি বস্তু প্রদান করে। নিম্নলিখিত এই বস্তু GCIterator বলা হবে.


চালান Chrome Extensions

Ad