USENET হল একটি বিকেন্দ্রীভূত বিশ্ব বার্তাপ্রেরণ ব্যবস্থা। এটি 100,000 টিরও বেশি গ্রুপের সাথে প্রথম বিশ্বব্যাপী সামাজিক নেটওয়ার্ক হিসাবে বিবেচিত হয় যা বিভিন্ন বিষয় এবং বিশেষীকরণ নিয়ে কথা বলছে। এটি আগ্রহী পাঠকের জন্য ইউজেনেটকে জ্ঞান এবং আলোচনার একটি বিশেষ ভান্ডার করে তোলে৷
কোটি কোটি পাঠ্য এবং বাইনারি ফাইল পান, 110,000 টিরও বেশি নিউজগ্রুপ। এখনই নিউজহোস্টিং-এ 58% সংরক্ষণ করুন!
গ্নাস কি?
সাম্প্রতিক বছরগুলিতে USENET-এর পতন সত্ত্বেও, এখনও এমন লোক রয়েছে যারা আলোচনার আশ্রয় এবং খবর ভাগ করার জন্য এটি ব্যবহার করে। ইউজেনেট ব্যবহারকারীদের অধিকাংশই আজকাল গুগল গ্রুপের ওয়েবসাইটের মাধ্যমে নেটওয়ার্কের সাথে ইন্টারফেস করে। আপনি যদি Emacs ব্যবহার করেন, তবে, এটির মাধ্যমে USENET নিউজগ্রুপগুলি দেখার একটি উপায় রয়েছে৷
Gnus হল একটি Emacs প্যাকেজ যা নিউজগ্রুপ পড়ার জন্য ডিজাইন করা হয়েছে। এটি একটি সমৃদ্ধ প্রোগ্রাম যাতে অনেক শক্তিশালী বৈশিষ্ট্য রয়েছে যা খবর পড়া সহজ এবং সুবিধাজনক করে তোলে। অধিকন্তু, Emacs-এর ভিতরে থাকার কারণে, ব্যবহারকারী সহজেই পোস্টের মধ্যে টেক্সট ম্যানিপুলেট করতে পারে এবং বাকি Emacs সিস্টেমের সাথে ব্যবহার করতে পারে।
ইমাক্সে নিউজরিডার কেন ব্যবহার করবেন?
Emacs সর্বদা সম্প্রসারণযোগ্যতার রান্নাঘরের সিঙ্ক হিসাবে বিবেচিত হয়েছে। শুধুমাত্র অনেক প্যাকেজ এবং অতিরিক্ত বৈশিষ্ট্য রয়েছে বলেই নয়, পাঠ্য সম্পাদনার বাইরেও Emacs-এর মৌলিক ফাংশনগুলিকে প্রসারিত করাও খুব সহজ৷
Emacs ইন্টারঅপারেবিলিটির ধারণার উপর কাজ করে। এই ধারণাটি Emacs কে এর প্যাকেজগুলিকে একটি সম্পূর্ণ পরিবেশ তৈরি করার অনুমতি দেয় যেখানে আপনি পাঠ্য তৈরি করতে এবং বিভিন্ন উপায়ে পরিবর্তন করতে পারেন৷
উদাহরণস্বরূপ, Emacs তার নিজস্ব ফাইল ম্যানেজার নিয়ে আসে:dired, একটি সাধারণ Emacs প্যাকেজ যা আপনাকে একটি ডিরেক্টরি কাঠামো অতিক্রম করতে এবং ফাইল খুলতে দেয়। যাইহোক, অন্যান্য ফাইল ম্যানেজার থেকে ভিন্ন, dired এর ফলাফল পাঠ্য হিসাবে প্রদর্শন করে।
আপনি যদি জার্নালিংয়ের জন্যও অর্গ মোড ব্যবহার করেন তবে আপনি সেই পাঠ্যটি অনুলিপি করতে পারেন এবং আপনার অর্গ ফাইলগুলির মধ্যে ডাইরেড থেকে বিস্তৃত লিঙ্ক তৈরি করতে পারেন৷
একটি প্যাকেজের পাঠ্য আউটপুটকে একটি ভিন্ন প্যাকেজে ইনপুট হিসাবে ব্যবহার করার Emacs ক্ষমতার সাথে, এটি gnus-এর মতো একটি নিউজরিডারকে Emacs ইকোসিস্টেমের জন্য অমূল্য করে তোলে।
এটি আপনাকে, উদাহরণস্বরূপ, একটি নিউজ পোস্ট থেকে পাঠ্যের একটি অনুচ্ছেদ অনুলিপি করার অনুমতি দেয়, তারপরে সেই পাঠ্যটিকে Org মোডে রাখুন এবং এটিকে একটি জার্নাল এন্ট্রি, এজেন্ডা পোস্ট বা ধারণা ক্যাপচার হিসাবে যুক্ত করুন৷
gnus ইনস্টল করা হচ্ছে
19.32 সংস্করণ থেকে Emacs-এর প্রতিটি ডিফল্ট ইনস্টলেশনে Gnus আসে। আপনি যদি Emacs-এর সাম্প্রতিক সংস্করণ ব্যবহার করেন, তাহলে সম্ভবত এটি ইতিমধ্যেই gnus-এর সাথে এসেছে।
আপনি Alt টিপে সিস্টেমে gnus ইনস্টল করা আছে কিনা তা পরীক্ষা করতে পারেন + X এবং gnus
টাইপ করুন . এটি gnus-এর একটি বেয়ার, কনফিগার না করা সংস্করণ লোড করবে।
USENET গ্রুপ পড়ার জন্য gnus সেট আপ করা হচ্ছে
জিনাসের প্রাথমিক সেটআপ তুলনামূলকভাবে সহজবোধ্য। একটি .newsrc ফাইল তৈরি করার জন্য আপনাকে আপনার init.el ফাইলে কয়েকটি বিকল্প সেট করতে হবে।
.newsrc ফাইলটি আপনার হোম ডিরেক্টরিতে অবস্থিত নিউজগ্রুপ পাঠকদের জন্য একটি আদর্শ ফাইল। এটির প্রাথমিক উদ্দেশ্য হল একটি USENET সার্ভারে সমস্ত উপলব্ধ এবং সদস্যতা নেওয়া গোষ্ঠীগুলিকে লগ করা৷
৷এছাড়াও, .newsrc ফাইলটি একটি স্টেট ফাইল হিসাবেও কাজ করে যা আপনি ইতিমধ্যে পড়া সমস্ত পোস্ট ট্র্যাক করে৷
একটি .newsrc ফাইল তৈরি করতে, নিম্নলিখিত কমান্ডটি চালান:
touch /home/$USER/.newsrc
প্রাথমিক কনফিগারেশন
একবার হয়ে গেলে, আপনি init.el ফাইল, Emacs-এর কনফিগারেশন ফাইল সেট আপ করা শুরু করতে পারেন। ডিফল্টরূপে, আপনি এই ফাইলটি "/home/$USER/.emacs.d/" বা "/home/$USER/.config/emacs"-এ খুঁজে পেতে পারেন৷
সঠিকভাবে gnus আরম্ভ করার জন্য, আপনাকে init.el ফাইলে নিম্নলিখিত লাইন যোগ করতে হবে:
(setq user-full-name '"yourusername") (setq user-mail-address '"[email protected]") (setq gnus-select-method '(nntp "news.eternal-september.org"))
- ব্যবহারকারী-পূর্ণ-নাম একটি সাধারণ বিকল্প যা Emacs-এ আপনার ব্যবহারকারীর নাম সেট করে। আপনি যখন নিউজ পোস্ট পাঠাবেন তখন এই নামটি আপনার "থেকে" হেডারে gnus প্রদর্শিত হবে৷
- ব্যবহারকারী-মেল-ঠিকানা এছাড়াও একটি সাধারণ বিকল্প। ব্যবহারকারী-পূর্ণ-নামের অনুরূপ, এটি gnus কে এই ইমেলটি আপনার "থেকে" শিরোনামে প্রদর্শন করতে বলে। আমার ক্ষেত্রে, আমি একটি অবৈধ ইমেল ঠিকানা দিয়েছি।
- শেষ বিকল্প, gnus-select-method , একটি gnus-নির্দিষ্ট বিকল্প যা নিউজরিডারকে বলে যে কোন পরিষেবা এবং সার্ভারের সাথে সংযোগ করতে হবে৷ আমার ক্ষেত্রে, আমি আমার সার্ভার হিসাবে "news.eternal-september.org" সহ nntp পরিষেবা নির্বাচন করেছি৷
রিমোট USENET প্রমাণীকরণ
উল্লেখ্য একটি গুরুত্বপূর্ণ বিষয় হল যে আপনি যদি একটি USENET প্রদানকারী ব্যবহার করেন যার জন্য প্রমাণীকরণের প্রয়োজন হয়, তাহলে আপনাকে একটি প্রমাণীকরণ ফাইলে আপনার অ্যাকাউন্টের বিবরণ প্রদান করতে হবে। এটি সেই ফাইল যেখানে gnus USENET সার্ভারের বিবরণ এবং সেইসাথে আপনার ব্যবহারকারীর নাম এবং পাসওয়ার্ড পড়বে৷
একটি তৈরি করতে, আপনি Ctrl টিপুন + X , Ctrl + F এবং /home/$USER/.authinfo
টাইপ করুন ইম্যাক্সে। এই কমান্ডটি আপনার হোম ডিরেক্টরিতে একটি .authinfo ফাইল তৈরি করবে এবং এটি একটি বাফারে খুলবে৷
.authinfo ফাইলের সাধারণ সিনট্যাক্স এইরকম কিছু দেখায়:
machine news.domain.name login yourusername force yes password yourpasswordgoeshere
- মেশিন পরিবর্তনশীল নির্দেশ করে যে আপনি একটি ভিন্ন মেশিন বা সার্ভারের সাথে সংযোগ করছেন।
- ডোমেন নামের ক্ষেত্রটি gnus কে বলে যে এটি সেই মেশিনের ঠিকানা যা আপনি সংযোগ করতে চান৷
- লগইন ক্ষেত্রটি হল যেখানে আপনি আপনার USENET অ্যাকাউন্টের ব্যবহারকারীর নাম রাখবেন৷ ৷
- “জোর হ্যাঁ” সার্ভারের প্রয়োজন না থাকলেও বিকল্পটি gnus কে আপনাকে প্রমাণীকরণ করতে বলে৷
- শেষে, পাসওয়ার্ড পরিবর্তনশীল আপনার USENET অ্যাকাউন্টের পাসওয়ার্ড ধারণ করে।
স্থানীয় USENET সার্ভার ব্যবহার করা
উপরন্তু, gnus একটি স্থানীয় স্পুল ফাইল থেকে তার উত্স নিতে পারে। আপনার যদি এমন কোনো পরিষেবা থাকে যা স্বয়ংক্রিয়ভাবে আপনার নিউজগ্রুপগুলিকে আপনার স্থানীয় মেশিনে ডাউনলোড করে তাহলে এটি কার্যকর৷
৷এটি করার জন্য, আপনাকে "gnus-select-method" ফাংশনে nntp সেটিংস পরিবর্তন করতে হবে:
(setq gnus-select-method '(nnspool ""))
যাইহোক, আপনি যদি আপনার স্থানীয় ইউজেনেট সার্ভার হিসাবে Leafnode ব্যবহার করেন, তাহলে আপনাকে এটি একটি NNTP সার্ভার হিসাবে সেট আপ করতে হবে। এটি কারণ Leafnode একটি সাধারণ “/var/sool/” ডিরেক্টরির পরিবর্তে একটি USENET সার্ভারের মতো আচরণ করে।
একই মেশিনে চলমান একটি Leafnode সার্ভার ব্যবহার করতে, আপনি নিম্নলিখিত টাইপ করতে পারেন:
(setq gnus-select-method '(nntp "localhost"))
এটি হয়ে গেলে, Alt টিপে gnus চালান + x এবং gnus
টাইপ করুন কমান্ড বাফারে। এটি gnus লোড করবে এবং আপনার দূরবর্তী USENET সার্ভারে উপলব্ধ সমস্ত গ্রুপ আনবে৷
প্রাথমিক ব্যবহার
একবার জিনাস লোড হয়ে গেলে, আপনাকে একটি ফাঁকা স্ক্রীন দ্বারা স্বাগত জানানো হবে। এর কারণ হল, ডিফল্টরূপে, gnus সমস্ত নিউজগ্রুপ লুকিয়ে রাখে যেগুলি সদস্যতা ত্যাগ করা এবং পড়া হয়েছে৷
আপনি Shift টিপে USENET সার্ভারে উপলব্ধ সমস্ত নিউজগ্রুপের একটি তালিকা দেখতে পারেন + 6 . এটি gnus এর জন্য সার্ভার স্ক্রীন আনবে। আমার ক্ষেত্রে, এটি ইটারনাল সেপ্টেম্বর থেকে উপলব্ধ সমস্ত নিউজগ্রুপ নিয়ে এসেছে।
USENET গ্রুপ সদস্যতা
এখান থেকে, আপনি U চাপতে পারেন হয় সাবস্ক্রাইব বা একটি নির্দিষ্ট সংবাদ গোষ্ঠীর সদস্যতা ত্যাগ করতে। আপনি যখন প্রথম gnus শুরু করবেন তখন এটি সেই গ্রুপটিকে ল্যান্ডিং স্ক্রিনে রাখবে।
উদাহরণস্বরূপ, আমি সার্ভার স্ক্রীনে "alt.religion.emacs" এবং "alt.folklore.computers" উভয়েই সদস্যতা নিয়েছি। আমি একবার gnus পুনরায় লোড করার পরে, এটি আমার ব্রাউজ করার জন্য এই দুটি গ্রুপকে প্রধান স্ক্রিনে রাখে।
বাফার আন্দোলন
সেখান থেকে, নিউজগ্রুপে যেতে এন্টার টিপুন এবং স্ট্যান্ডার্ড Emacs মুভমেন্ট কী ব্যবহার করুন, যেমন Ctrl + N এবং Ctrl + P , গ্রুপের বিভিন্ন পোস্টের মাধ্যমে স্ক্রোল করুন।
এছাড়াও আপনি এন্টার টিপুন অথবা ট্যাব মূল. একটি পোস্ট এবং ব্যাকস্পেস খুলতে এবং স্পেস পোস্টের মধ্যে উপরে এবং নিচে স্ক্রোল করার কী।
Emacs এর অনুসন্ধান ফাংশন ব্যবহার করুন (Ctrl + S এবং Ctrl + R আপনি যা চান তা খুঁজে পেতে দ্রুত পোস্টগুলির মধ্য দিয়ে যেতে।
পোস্ট করা এবং USENET পোস্টগুলিতে উত্তর দেওয়া
একটি নিউজগ্রুপের মধ্যে একটি নতুন পোস্ট তৈরি করতে A টিপুন একটি বার্তা সম্পাদক আনতে যেখানে আপনি আপনার পোস্টের বিবরণ লিখতে পারেন।
Ctrl টিপুন + C দুইবার যখন আপনি সেই নির্দিষ্ট নিউজগ্রুপে বার্তা পাঠানোর কাজ শেষ করেন।
কিন্তু আপনি যদি কোনো গ্রুপে কোনো পোস্টের উত্তর দিতে চান তাহলে আপনি Shift চাপতে পারেন। + S , Shift + F . এটি একটি "ফলোআপ" বাফার শুরু করবে যেখানে gnus আপনাকে একটি বার্তা সম্পাদকের কাছে নিয়ে আসবে যেখানে আপনার জন্য ইতিমধ্যে উদ্ধৃত মূল পোস্ট রয়েছে৷
একটি নতুন বার্তা পোস্ট করার অনুরূপ, আপনি Ctrl টিপতে পারেন + C সেই পোস্টে ফলোআপ পাঠাতে দুবার।
স্কোরফাইলের মাধ্যমে ফিল্টার করা
Gnus-এর একটি শক্তিশালী কিন্তু সহজ ব্যবহারযোগ্য ফিল্টারিং সিস্টেম রয়েছে যা স্কোরফাইল ব্যবহার করে। এটি একটি নিয়মিত কিলফাইলের থেকে আলাদা যেখানে পোস্টগুলি একটি নির্দিষ্ট প্যাটার্ন বা মানদণ্ডে আঘাত করার সময় স্বয়ংক্রিয়ভাবে "হত্যা" হয়ে যায়৷
স্কোরফাইলগুলি ব্যবহারকারীকে একটি নির্দিষ্ট পোস্টের অভ্যন্তরীণ স্কোর ক্রমবর্ধমানভাবে কমাতে বা বাড়ানোর অনুমতি দেয়, যা গ্নাসকে বলে যে কোন পোস্টগুলিকে অগ্রাধিকার দিতে হবে এবং কোনটি দূরবর্তী সার্ভার থেকে লুকাতে হবে বা না টানতে হবে৷
ফিল্টারিংয়ের প্রকারগুলি
তদ্ব্যতীত, জিনাসের একটি বৈশিষ্ট্য সমৃদ্ধ ফিল্টারিং সিস্টেমও রয়েছে। এটি ব্যবহারকারীকে একটি নির্দিষ্ট ফিল্টারের বিভিন্ন অংশ নিয়ন্ত্রণ এবং সূক্ষ্ম-টিউন করার অনুমতি দেয়৷
উদাহরণস্বরূপ, আমি যদি একটি নির্দিষ্ট পোস্টের স্কোর কম করতে চাই। আমি এটিকে হাইলাইট করতে পারি এবং L টিপুন . এটি কমান্ড বাফারে একটি ছোট মেনু নিয়ে আসবে যা আমাকে জিজ্ঞাসা করবে যে পোস্টের কোন প্রপার্টি আমি স্কোরের উপর ভিত্তি করে রাখতে চাই।
বৈশিষ্ট্যগুলির তালিকা বিস্তৃত, তবে যেগুলি সবচেয়ে গুরুত্বপূর্ণ তা হল:
- A লেখকের নামের বিপরীতে স্কোর করতে।
- S বিষয়ের পাঠ্যের বিপরীতে স্কোর করতে।
- L লাইনের সংখ্যার বিপরীতে স্কোর করতে।
- B পাঠ্যের মূল অংশের বিপরীতে স্কোর করতে।
আমার ক্ষেত্রে, আমি পোস্টের লেখকের উপর ভিত্তি করে এই পোস্টটি স্কোর করতে চাই, তাই আমি A চাপলাম .
ফিল্টারের সাথে মিল করার পদ্ধতি
সেখান থেকে, gnus আপনাকে এই স্কোরে যে ধরনের স্ট্রিং ম্যাচিং করতে চান তা জানতে চাইবে। আপনি সঠিক, সাবস্ট্রিং, ফাজি এবং রেগুলার এক্সপ্রেশন থেকে বেছে নিতে পারেন:
- ঠিক টেক্সট মেলানোর জন্য সম্পূর্ণ স্ট্রিং ব্যবহার করে।
- সাবস্ট্রিং টেক্সট মেলে স্ট্রিং টুকরা ব্যবহার করে. এর মানে হল যে পোস্টে আঘাত করার জন্য পুরো লেখার মিল থাকার দরকার নেই৷ ৷
- অস্পষ্ট নিউজগ্রুপের জন্য উপলব্ধ পূর্ববর্তী পোস্টগুলির উপর ভিত্তি করে একটি ভবিষ্যদ্বাণীমূলক মডেল ব্যবহার করে। এটি বিশেষভাবে সৃজনশীল পোস্টারদের জন্য উপযোগী যারা প্রতীক, সংখ্যা এবং তাদের পাঠ্যকে অস্পষ্ট করার যে কোন প্রকার ব্যবহার করে সাবস্ট্রিং ম্যাচিং এড়ানোর চেষ্টা করে৷
- Regexp টেক্সট ফিল্টার করতে আরো প্রচলিত রেগুলার এক্সপ্রেশন ব্যবহার করে।
আমার ক্ষেত্রে, আমি সাবস্ট্রিং নির্বাচন করেছি তাই আমি S চাপলাম .
ফিল্টারের সময়কাল
সবশেষে, gnus আপনাকে জিজ্ঞাসা করবে যে আপনি এই স্কোরটি অস্থায়ী, স্থায়ী বা অবিলম্বে করতে চান কিনা।
- অস্থায়ী মানে স্কোর একটি নির্দিষ্ট তারিখে মেয়াদ শেষ হবে। আপনি যখন সীমিত সময়ের জন্য একটি নির্দিষ্ট পোস্ট বা পোস্টারের স্কোর কম বা বাড়াতে চান তখন এটি কার্যকর।
- স্থায়ী মানে স্কোর মেয়াদ শেষ হবে না। এটি স্প্যামারদের ফিল্টার করার জন্য উপযোগী যারা গ্রুপে বার্গিং করতে পারে।
- অবিলম্বে মানে gnus বর্তমান বাফারে স্কোরটি স্কোরফাইলে যোগ না করে প্রয়োগ করবে। আপনি যদি এখন পোস্টগুলিকে ফিল্টার করতে চান কিন্তু ক্রমাগতভাবে স্কোর করতে না চান তবে এটি কার্যকর৷
আমার ক্ষেত্রে, আমি এই ফিল্টারটিকে স্থায়ী করতে চেয়েছিলাম তাই আমি P টিপলাম .
অভিনন্দন! Emacs-এ নিউজরিডার হিসেবে gnus কীভাবে ব্যবহার করবেন সে সম্পর্কে আপনার এখন প্রাথমিক ধারণা রয়েছে। এছাড়াও, আপনার কাছে একটি মৌলিক ধারণা রয়েছে যে কীভাবে একটি প্রমাণীকৃত USENET সার্ভারের সাথে সংযোগ করতে হয় সেইসাথে স্কোরফাইলগুলি এবং ফিল্টারিংকে সঠিকভাবে ব্যবহার করা যায়৷
যাইহোক, যদি এই সমস্ত আলোচনা আপনাকে Emacs সম্পর্কে আরও জানতে আগ্রহী করে তোলে, তাহলে আপনার শিখতে হবে কিভাবে Doom Emacs ইনস্টল করতে হয়।
কোটি কোটি পাঠ্য এবং বাইনারি ফাইল পান, 110,000 টিরও বেশি নিউজগ্রুপ। এখনই নিউজহোস্টিং-এ 58% সংরক্ষণ করুন!
প্রায়শই জিজ্ঞাসিত প্রশ্ন
1. আমি একটি বার্তা লিখেছি এবং এটি আর পাঠাতে চাই না। আমি কিভাবে আমার পোস্ট বা ফলোআপ বাতিল করতে পারি?
এটি অজানা, তবে আপনি যে বর্তমান পোস্টটি লিখছেন তা বাতিল করা সম্ভব হতে পারে। এটি করতে, আপনি Ctrl টিপুন + C , Ctrl + D .
2. gnus-এ একাধিক USENET সার্ভার যোগ করা কি সম্ভব?
হ্যাঁ! আপনার init.el ফাইলে আপনাকে শুধু আরেকটি "gnus-select-method" ভেরিয়েবল যোগ করতে হবে।
উদাহরণস্বরূপ, আপনার init.el ফাইলটি নিচের মত দেখতে পারে:
(setq user-full-name '"ramcesred") (setq user-mail-address '"[email protected]") (setq gnus-select-method '(nntp "news.eternal-september.org")) (setq gnus-select-method '(nntp "nntp.aioe.org")). (setq gnus-select-method '(nntp "localhost"))
একবার হয়ে গেলে, আপনার gnus কনফিগারেশন পুনরায় লোড করতে Emacs পুনরায় লোড করুন।
3. আমি একটি নিবন্ধ পড়েছি, এবং এখন এটি আমার প্রধান স্ক্রীন তালিকা থেকে চলে গেছে। যখন আমি সক্রিয়ভাবে এটি অনুসরণ করি তখন কি আমার পক্ষে একটি নির্দিষ্ট পোস্ট পিন করা সম্ভব?
হ্যাঁ! আপনি gnus-summary-tic-article-forward ব্যবহার করে এটি করতে পারেন ফাংশন আপনি U টিপে এই ফাংশনটি অ্যাক্সেস করতে পারেন সেই পোস্টটি নির্বাচন করার সময় কী৷
এটা মনে রাখা গুরুত্বপূর্ণ, তবে, এটি শুধুমাত্র এই একটি নিবন্ধটিকে "পিন" করবে। সেই থ্রেডের মধ্যে অন্যান্য সমস্ত উত্তর ডিফল্টরূপে প্রদর্শিত হবে না। এটি করতে, Shift টিপুন + A , Shift + T সেই বিষয়ের জন্য পুরো থ্রেডটি পুনর্গঠন করতে।