উইকিঅভিধান
bnwiktionary
https://bn.wiktionary.org/wiki/%E0%A6%AA%E0%A7%8D%E0%A6%B0%E0%A6%A7%E0%A6%BE%E0%A6%A8_%E0%A6%AA%E0%A6%BE%E0%A6%A4%E0%A6%BE
MediaWiki 1.39.0-wmf.26
case-sensitive
মিডিয়া
বিশেষ
আলাপ
ব্যবহারকারী
ব্যবহারকারী আলাপ
উইকিঅভিধান
উইকিঅভিধান আলোচনা
চিত্র
চিত্র আলোচনা
মিডিয়াউইকি
মিডিয়াউইকি আলোচনা
টেমপ্লেট
টেমপ্লেট আলোচনা
সাহায্য
সাহায্য আলোচনা
বিষয়শ্রেণী
বিষয়শ্রেণী আলোচনা
উইকিসরাস
উইকিসরাস আলোচনা
TimedText
TimedText talk
মডিউল
মডিউল আলাপ
গ্যাজেট
গ্যাজেট আলোচনা
গ্যাজেট সংজ্ঞা
গ্যাজেট সংজ্ঞার আলোচনা
অদৃশ্য
0
2089
133025
123845
2022-08-27T08:07:45Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অদৃশ্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
অলক্ষ্য; অপ্রত্যক্ষ
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অদৃশ্য}}
5k88snzfy4efausatdaqbuza0sox9ox
অকন্টক
0
2180
133033
82234
2022-08-27T08:11:59Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকন্টক.wav|অডিও}}
===ব্যুৎপত্তি===
*[ন + কন্টক (কাঁটা) (যাতে)]
==={{অর্থ}}===
{{adjective-category|bn}}
# [[নিষ্কন্টক]],
# কাঁটা নেই যাতে,
# কন্টকশূন্য,
# কন্টকরহিত,
# বিবাদশূন্য,
#[[নিরুপদ্রব]]
#নিরাপদ
# নির্ব্বিঘ্ন
# [শত্রু কন্টক স্বরূপ ক্লেশকর বলিয়া] শত্রু রহিত
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
:* {{en}}: thornless
{{অনুবাদ-নীচ}}
# safe
# having no enemy;
{{উৎস-ভাষা|bn}}
pixrcxwkgpgc1gcyz0ebhn3yzwhj4gv
অঋণী
0
2197
133031
82219
2022-08-27T08:10:31Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অঋণী.wav|অডিও}}
=== ব্যুৎপত্তি ===
* স.অ+ঋণ+ইন(ইনি) স. অনণী
===বিশেষণ===
{{বিশেষণ|bn}}
# যে কারও কাছে [[ঋণী]] নয়
# [[ঋণমুক্ত]]
# যে [[ঋণ]] পরিশোধ করেছে।
# যে দেবঋণ, ঋষিঋণ ও পিতৃঋণ নামক তিন প্রকার ঋণ হতে যাগ, যজ্ঞ, দান ও সন্তানোৎপাদন দ্বারা মুক্ত হয়েছে।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
:* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
hvoy39cd0zlp2baheyn3iml07gg8qn5
অন্নপায়ী
0
2484
133130
124104
2022-08-27T09:54:32Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অন্নপায়ী.wav|অডিও}}
==ব্যুৎপত্তি==
রবীন্দ্রনাথ ঠাকুর তার "দুরন্ত আশা" কবিতায় এ শব্দটি ব্যবহার করেছিলেন।
===বিশেষ্য===
{{বিশেষ্য|bn}}
যে অন্ন পান করে।(রূপক)
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অন্নপায়ী}}
2d9czclmn0c9mezdujduiw0xys6r46l
অপভ্রংশ
0
2529
133131
126556
2022-08-27T09:54:33Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অপভ্রংশ.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
* কোন ভাষার শব্দাবলির বিকৃত বা অশুদ্ধ রুপ
# আসল শব্দটির অশুদ্ধ রূপ; অপভাষা
# প্রাকৃতের পরবর্তীরূপ
# অশুদ্ধি
# বিকৃতি।
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অপভ্রংশ}}
[[বিষয়শ্রেণী:অপ উপসর্গযোগে গঠিত শব্দ]]
ocdip12cr6ky3ek8s38r0v7nx8hht05
অপ্রতুল
0
2539
133027
124209
2022-08-27T08:07:47Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অপ্রতুল.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
যথেষ্ট নয় এমন।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অপ্রতুল}}
hqf3olnoxpxhx9uznnkasf1odu1mj8b
অনুপ্রেরণা
0
2543
133128
132659
2022-08-27T09:54:30Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অনুপ্রেরণা.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
# [[উদ্দীপনা]];
# [[উৎসাহ]]।
{{পূর্বনির্ধারিতবাছাই:অ, অনুপ্রেরণা}}
[[বিষয়শ্রেণী:৫-অক্ষর বিশিষ্ট বাংলা শব্দ]]
2ta228ftuffoe5a63aiv4mlx5x0qgxw
অন্তঃপাতী
0
2555
133129
124028
2022-08-27T09:54:31Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অন্তঃপাতী.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
অন্তর্গত।
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অন্তঃপাতী}}
3r7nsd3fuw7d6a7tak4evj4jhfvuz0t
অধিক্ষিপ্ত
0
2587
133026
123860
2022-08-27T08:07:46Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অধিক্ষিপ্ত.wav|অডিও}}
=== ব্যুৎপত্তি ===
অধি + ক্ষিপ্ + ত (র্ম)
=== বিশেষণ ===
{{বিশেষণ|bn}}
* [[নিন্দিত]]
* [[তিরস্কৃত]]
* [[অবজ্ঞাত]]
* [[অনাদৃত]]
== {{ভাষা|en}} ==
* [[:en:Blamed|Blamed]]
* [[:en:Abused|Abused]]
* [[:en:Condemned|Condemned]]
* [[:en:Improper|Improper]]
* [[:en:Forbidden|Forbidden]]
* [[:en:Low|Low]]
* [[:en:Vile|Vile]]
* [[:en:Despicable|Despicable]]
* [[:en:Wrong|Wrong]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অধিক্ষিপ্ত}}
4zjvjvzdd5o46qiaxku4af00y41on5y
উইকিঅভিধান:আলোচনাসভা
4
2595
132967
132871
2022-08-26T12:02:24Z
CSinha (WMF)
7877
/* ২০২২ ট্রাস্টি বোর্ডের নির্বাচনের জন্য সম্প্রদায়ের ভোটদান শুরু হয়েছে */ নতুন অনুচ্ছেদ
wikitext
text/x-wiki
{{উইকিঅভিধান:আলোচনাসভা/শীর্ষ}}[[বিষয়শ্রেণী:উইকিঅভিধানের প্রশাসন]]
<!-- অনুগ্রহপূর্বক নতুন আলোচনাসূত্র সবার নিচে যোগ করুন, ধন্যবাদ। -->
__NEWSECTIONLINK__
== নিস্ক্রিয় বট অ্যাকাউন্ট ==
<div class="boilerplate metadata rfa" style="background-color: #f5fff5; margin: 2em 0 0 0; padding: 0 10px 0 10px; border: 1px solid #AAAAAA;">আলোচনা অনুসারে
[https://meta.wikimedia.org/w/index.php?title=Steward_requests/Bot_status&oldid=22497793 মেটায়] আবেদনের ভিত্তিতে বট পতাকা অপসারণ করা হয়েছে। -- [[ব্যবহারকারী:MdsShakil|MdsShakil]] ([[ব্যবহারকারী আলাপ:MdsShakil|আলাপ]]) ০৪:০৯, ২৭ ডিসেম্বর ২০২১ (ইউটিসি)
-----
সুপ্রিয় সবাই, আমি নিম্নোক্ত নিস্ক্রিয় বট অ্যাকাউন্টগুলো থেকে বট পতাকা অপসারণের প্রস্তাব করছি,
* {{ব্যবহারকারী|RobotGMwikt}}, সর্বশেষ সম্পাদনা: ২১:৫১, ২৯ জুন ২০০৬
* {{ব্যবহারকারী|SpaceBirdyBot}}, সর্বশেষ সম্পাদনা: ১৫:৩৩, ৫ মার্চ ২০০৯
* {{ব্যবহারকারী|YS-Bot}}, সর্বশেষ সম্পাদনা: ১৩:১৮, ৯ অক্টোবর ২০১৫
এব্যাপারে সবাইকে মন্তব্য করতে অনুরোধ করছি, ধন্যবাদ -- [[ব্যবহারকারী:MdsShakil|MdsShakil]] ([[ব্যবহারকারী আলাপ:MdsShakil|আলাপ]]) ০৬:৪১, ২২ ডিসেম্বর ২০২১ (ইউটিসি)
*{{সমর্থন}} [[ব্যবহারকারী:Yahya|Yahya]] ([[ব্যবহারকারী আলাপ:Yahya|আলাপ]]) ১০:৪৮, ২২ ডিসেম্বর ২০২১ (ইউটিসি)
* বট পতাকা অপসারণে {{সমর্থন}}। [[ব্যবহারকারী:Aishik Rehman|Aishik Rehman]] ([[ব্যবহারকারী আলাপ:Aishik Rehman|আলাপ]]) ০২:৩৬, ২৩ ডিসেম্বর ২০২১ (ইউটিসি)
</div>
== বোর্ড অব ট্রাস্টিজ নির্বাচন সম্পর্কে প্রতিক্রিয়ার আহ্বান ==
:''বার্তাটি মেটা-উইকিতে অতিরিক্ত ভাষায় অনুবাদ করা হয়েছে।''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback:2022 Board of Trustees election/Upcoming Call for Feedback about the Board of Trustees elections|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Board of Trustees/Call for feedback:2022 Board of Trustees election/Upcoming Call for Feedback about the Board of Trustees elections}}&language=&action=page&filter= {{int:please-translate}}]</div>''
বোর্ড অব ট্রাস্টিজ আসন্ন নির্বাচন সম্পর্কে প্রতিক্রিয়ার আহ্বান প্রস্তুত করছে। এটি ৬ জানুয়ারী - ১০ ফেব্রুয়ারী ২০২২ এর মধ্যে হবে।
যদিও বিশদটি এক সপ্তাহ আগে চূড়ান্ত করা হবে, আমরা কমপক্ষে দুটি প্রশ্ন নিশ্চিত করেছি:
* ট্রাস্টি বোর্ডের মধ্যে উদীয়মান সম্প্রদায়ের প্রতিনিধিত্ব উন্নত করার সর্বোত্তম উপায় কি?
* নির্বাচনের সময় প্রার্থীদের অংশগ্রহণ কেমন হওয়া উচিত?
যদিও অতিরিক্ত প্রশ্ন যোগ করা যেতে পারে, আন্দোলনের কৌশল এবং শাসন টিম সম্প্রদায়ের সদস্য এবং সহকর্মীদের আলোচনার জন্য সময় দিতে চায়। এই সময়ে প্রশ্নের সম্পূর্ণ তালিকা না থাকার জন্য আমরা দুঃখিত৷ প্রশ্নগুলির তালিকা শুধুমাত্র একটি বা দুটি প্রশ্নের দ্বারা বাড়তে পারে। আমাদের উদ্দেশ্য অনুরোধের সাথে সম্প্রদায়কে অভিভূত করা নয়।
'''আপনি কি স্থানীয় কথোপকথনের আয়োজনে সহায়তা করতে চান?'''
মেটা, [https://t.me/wmboardgovernancechat টেলিগ্রামে] বা msg[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org-এ ইমেলের মাধ্যমে [[m:Special:MyLanguage/Movement Strategy and Governance|আন্দোলনের কৌশল এবং শাসন টিমের]] সাথে যোগাযোগ করুন।
আপনার কোনো প্রশ্ন থাকলে আমাদের সাথে যোগাযোগ করুন। আন্দোলনের কৌশল এবং শাসন টিমে ৩ জানুয়ারি পর্যন্ত কম কর্মী থাকবে। বিলম্বিত প্রতিক্রিয়ার জন্য ক্ষমা করুন; আমাদের বার্তা আপনার অবকাশ চলাকালীন পৌঁছে থাকলে আমরা ক্ষমাপ্রার্থী।
ধন্যবাদ, [[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১০:৪৫, ২৮ ডিসেম্বর ২০২১ (ইউটিসি)
== উইকি ভালোবাসে লোককথা ফিরে এসেছে! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
You are humbly invited to participate in the '''[[:c:Commons:Wiki Loves Folklore 2022|Wiki Loves Folklore 2022]]''' an international photography contest organized on Wikimedia Commons to document folklore and intangible cultural heritage from different regions, including, folk creative activities and many more. It is held every year from the '''1st till the 28th''' of February.
You can help in enriching the folklore documentation on Commons from your region by taking photos, audios, videos, and [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wlf_2022 submitting] them in this commons contest.
You can also [[:c:Commons:Wiki Loves Folklore 2022/Organize|organize a local contest]] in your country and support us in translating the [[:c:Commons:Wiki Loves Folklore 2022/Translations|project pages]] to help us spread the word in your native language.
Feel free to contact us on our [[:c:Commons talk:Wiki Loves Folklore 2022|project Talk page]] if you need any assistance.
'''Kind regards,'''
'''Wiki loves Folklore International Team'''
--[[ব্যবহারকারী:MediaWiki message delivery|MediaWiki message delivery]] ([[ব্যবহারকারী আলাপ:MediaWiki message delivery|আলাপ]]) ১৩:১৪, ৯ জানুয়ারি ২০২২ (ইউটিসি)
</div>
<!-- https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlf&oldid=22560402-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Tiven2240@metawiki পাঠিয়েছেন -->
== সম্প্রদায়ের ইচ্ছা তালিকার জরিপ 2022 ==
[[File:Community Wishlist Survey Lamp.svg|right|200px]]
'''[[m:Special:MyLanguage/Community Wishlist Survey 2022|সম্প্রদায়ের ইচ্ছা তালিকার জরিপ 2022]]''' শুরু হয়েছে!
এই জরিপটি হল এমন একটি প্রক্রিয়া, যার মাধ্যমে [[m:Special:MyLanguage/Community Tech|সম্প্রদায়ের প্রযুক্তি দলটির]] আগামী বছরের মাঝে কী নিয়ে কাজ করা উচিত তা স্থির করা হয়। আমরা সবাইকে '''২৩ জানুয়ারি'''-এর মধ্যে প্রস্তাবনা জমা দেওয়ার জন্য, অথবা অন্যদের প্রস্তাবনায় মন্তব্য করে সেগুলিকে আরও উন্নত করতে সহায়তা করার জন্য আহ্বান করছি।
২৮ জানুয়ারি ও ১১ ফেব্রুয়ারি-এর মধ্যে সম্প্রদায়ের লোকজন এই প্রস্তাবগুলিতে ভোট দিবেন।
সম্প্রদায়ের প্রযুক্তি দল, উইকিমিডিয়ার অভিজ্ঞ সম্পাদকদের জন্য সরঞ্জাম সৃষ্টিতে বেশি মনোনিবেশ করে থাকে। আপনি যে কোনও ভাষায় প্রস্তাব লিখতে পারেন, এবং আমরা সেগুলি আপনার জন্য অনুবাদ করব। আপনাকে ধন্যবাদ, এবং আমরা আপনার প্রস্তাবগুলি দেখার জন্য উন্মুখ হয়ে রয়েছি! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|talk]]) ২০:৪৫, ১০ জানুয়ারি ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30/bn&oldid=22381747-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:SGrabarczuk (WMF)@metawiki পাঠিয়েছেন -->
== ট্রাস্টি বোর্ডের নির্বাচন সম্পর্কে প্রতিক্রিয়া জানাতে আহ্বান করা হচ্ছে ==
<section begin="announcement-content" />:''[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short|বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short}}&language=&action=page&filter= {{int:please-translate}}]</div>''
ট্রাস্টি বোর্ডের নির্বাচন সম্পর্কে প্রতিক্রিয়া জানাতে আহ্বান করা হচ্ছে এবং এটি ৬ ফেব্রুয়ারি ২০২২ তারিখে শেষ হবে।
এই প্রতিক্রিয়া আহ্বান উদ্যোগে, আন্দোলনের কৌশল ও শাসন দল একটি ভিন্ন পদ্ধতি গ্রহণ করছে। আমাদের পদ্ধতির মধ্যে ২০২১ সালের প্রক্রিয়া থেকে সম্প্রদায়ের প্রতিক্রিয়া অন্তর্ভুক্ত থাকবে। আলোচনাটি মূল প্রশ্নগুলিতে ফোকাস করবে। উদ্দেশ্য হল এই মূল প্রশ্নগুলি সম্পর্কে সম্মিলিত সংলাপকে অনুপ্রাণিত করা এবং সহযোগিতামূলক প্রস্তাব বিকশিত করা।
[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections|কথোপকথনে অংশ নিন]]।
ধন্যবাদ,
আন্দোলনের কৌশল এবং শাসন<section end="announcement-content" />
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১০:০০, ১২ জানুয়ারি ২০২২ (ইউটিসি)
== সম্প্রদায়ের প্রযুক্তিকুশলীদের সাথে কথা বলুন ==
[[File:Community Wishlist Survey Lamp.svg|150px|right]]
{{int:Hello}}
We, the team working on the [[m:Special:MyLanguage/Community Wishlist Survey|Community Wishlist Survey]], would like to invite you to an online meeting with us. It will take place on [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20220119T1800 '''{{#time:j xg|2022-01-19}} ({{#time:l|2022-01-19}}), {{#time:H:i e|18:00|en|1}}'''] on Zoom, and will last an hour. This external system is not subject to the [[foundation:Privacy_policy|WMF Privacy Policy]]. [https://wikimedia.zoom.us/j/85804347114 '''Click here to join'''].
'''আলোচ্যসূচী'''
* Bring drafts of your proposals and talk to to a member of the Community Tech Team about your questions on how to improve the proposal
'''বিন্যাস ও কার্যপদ্ধতি'''
মিটিংটি রেকর্ড বা স্ট্রিম করা হবে না। অ্যাট্রিবিউশন ছাড়া বাকি নোটগুলি মেটা-উইকিতে নেওয়া হবে এবং প্রকাশ করা হবে।
আমরা ইংরেজি, ফরাসি, পোলিশ, স্প্যানিশ, জার্মান এবং ইতালীয় ভাষায় জিজ্ঞাসা করা প্রশ্নের উত্তর দিতে পারব। আপনি যদি আগে থেকে প্রশ্ন জিজ্ঞাসা করতে চান তবে সেগুলি [[m:Talk:Community Wishlist Survey|সম্প্রদায়ের ইচ্ছাতালিকা জরিপের আলাপ পাতায়]] যোগ করুন বা sgrabarczuk@wikimedia.org ঠিকানায় পাঠান।
[[m:Special:MyLanguage/User:NRodriguez (WMF)|নাটালিয়া রদ্রিগেজ]] ([[m:Special:MyLanguage/Community Tech|কমিউনিটি টেক]] ম্যানেজার) এই মিটিংটি সঞ্চালনা করবেন।
'''আমন্ত্রণ লিংক'''
* [https://wikimedia.zoom.us/j/85804347114 অনলাইনে যোগ দিন]
* মিটিং আইডি: <span dir=ltr>85804347114</span>
* [https://wikimedia.zoom.us/u/keu6UeRT0T আপনার অবস্থান অনুযায়ী ডায়াল করুন]
আশা করি আমরা আপনাকে দেখতে পাব! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|talk]]) ১৭:৩৮, ১৮ জানুয়ারি ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30/bn&oldid=22381747-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:SGrabarczuk (WMF)@metawiki পাঠিয়েছেন -->
== আন্দোলন কৌশল ও অনুশাসন খবর - প্রকাশন ৫ ==
<section begin="ucoc-newsletter"/>
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5/Global message|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Strategy and Governance/Newsletter/5/Global message}}&language=&action=page&filter= {{int:please-translate}}]</div>''
<span style="font-size:200%;">'''আন্দোলন কৌশল ও অনুশাসন খবর'''</span><br>
<span style="font-size:120%; color:#404040;">'''প্রকাশন ৫, জানুয়ারী ২০২২'''</span><span style="font-size:120%; float:right;">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5|'''সম্পূর্ণ সংবাদটি পড়ুন''']]</span>
----
আন্দোলন কৌশল ও অনুশাসন খবরের পঞ্চম সংখ্যায় আপনাকে স্বাগতম (পূর্বে সর্বজনীন আচরণবিধি সংবাদ হিসাবে পরিচিত ছিল)! পুনর্নির্মাণ সংবাদটি আন্দোলনের খসড়া সনদ, সর্বজনীন আচরণবিধি, আন্দোলন কৌশল বাস্তবায়ন সম্পর্কিত অনুদান, বোর্ড নির্বাচন এবং আন্দোলন কৌশল ও অনুশাসন সম্পর্কিত অন্যান্য বিষয় সংবাদ বিতরণ করে।
সংবাদটি ত্রৈমাসিক বিতরণ করা হবে, আর কিছু হালনাগাদ সাপ্তাহিক বা দ্বি-সাপ্তাহিক হিসাবে সাবস্ক্রাইবারদের কাছে সরবরাহ করা হবে। আপনি যদি এই হালনাগাদ পেতে চান তবে '''[[:m:Special:MyLanguage/Global message delivery/Targets/MSG Newsletter Subscription|এখানে]]''' সাবস্ক্রাইব করতে ভুলবেন না।
<div style="margin-top:3px; padding:10px 10px 10px 20px; background:#fffff; border:2px solid #808080; border-radius:4px; font-size:100%;">
*'''ট্রাস্টি বোর্ডের প্রতিক্রিয়া আহ্বান''' - আসন্ন উইকিমিডিয়া ফাউন্ডেশন ট্রাস্টি বোর্ড নির্বাচনের বিষয়ে আপনার মতামত জানাতে আমরা আপনাকে আমন্ত্রণ জানাচ্ছি। প্রতিক্রিয়ার আহ্বান ১০ জানুয়ারি ২০২২ শুরু হয়েছে এবং ১৬ ফেব্রুয়ারী ২০২২ শেষ হবে। ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Call for Feedback about the Board elections|আরও পড়ুন]])
*'''সর্বজনীন আচরণবিধি অনুসমর্থন''' - ২০২১ সালে, উইকিমিডিয়া ফাউন্ডেশন সম্প্রদায়কে সর্বজনীন আচরণবিধি নীতি কিভাবে বাস্তবায়ন করা যেতে পারে সে সম্পর্কে জিজ্ঞাসা করেছিল। প্রয়োগকারী নির্দেশিকার সংশোধিত খসড়াটি মার্চ মাসের মধ্যে সম্প্রদায়ের ভোটের জন্য প্রস্তুত হওয়া উচিত। ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Universal Code of Conduct Ratification|আরও পড়ুন]])
*'''আন্দোলনের কৌশল বাস্তবায়ন সম্পর্কিত অনুদান''' - যেহেতু আমরা বেশ কয়েকটি প্রস্তাব পর্যালোচনা করে চলেছি, আমরা আপনাকে আরও প্রস্তাব জমা দিতে উত্সাহিত করি যা আন্দোলনের কৌশল সংক্রান্ত সুপারিশ থেকে একটি নির্দিষ্ট উদ্যোগকে লক্ষ্য করে। ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Movement Strategy Implementation Grants|আরও পড়ুন]])
*'''সংবাদটির নতুন দিকনির্দেশ''' - UCoC সংবাদপত্রকে MSG সংবাদপত্র করার রূপান্তর প্রক্রিয়াতে আপনি ফ্যাসিলিটেটর টিমের সাথে এর নতুন নির্দেশগুলি কল্পনা এবং সিদ্ধান্ত নিতে অংশ নিতে পারেন। ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#The New Direction for the Newsletter|আরও পড়ুন]])
*'''ডিফ ব্লগস''' - উইকিমিডিয়া ডিফ-এ MSG সম্পর্কে পড়ুন। ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Diff Blogs|আরও পড়ুন]])</div><section end="ucoc-newsletter"/>
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৭:৪১, ১৯ জানুয়ারি ২০২২ (ইউটিসি)
== [ঘোষণা] নেতৃত্ব উন্নয়ন টাস্ক ফোর্স ==
প্রিয় সম্প্রদায়ের সদস্যরা,
[[:m:Strategy/Wikimedia movement/2018-20/Recommendations/Invest in Skills and Leadership Development|দক্ষতা ও নেতৃত্ব উন্নয়ন]] সুপারিশ ইঙ্গিত দেয় যে নেতৃত্বের বিকাশে সাফল্যের জন্য আমাদের আন্দোলনের বিশ্বব্যাপী সমন্বিত প্রযত্নের প্রয়োজন রয়েছে।
[[:m:Community Development|সম্প্রদায় উন্নয়ন দল]] একটি বৈশ্বিক এবং সম্প্রদায়ভিত্তিক [[:m:Leadership Development Task Force|নেতৃত্ব উন্নয়ন টাস্ক ফোর্স]] ([[:m:Leadership Development Task Force/Purpose and Structure|উদ্দেশ্য এবং কাঠামো]]) তৈরী করতে সহায়তা করছে। টাস্ক ফোর্সের উদ্দেশ্য হল নেতৃত্ব উন্নয়নের জন্য প্রয়োজনীয় পরামর্শ দেওয়া।
দলটি নেতৃত্ব উন্নয়ন টাস্ক ফোর্সের দায়িত্ব সম্পর্কে প্রতিক্রিয়া জানাতে আহ্বান করছে। এছাড়াও, যদি কোনও সম্প্রদায়ের সদস্য এই ১২-সদস্যের টাস্কফোর্সের অংশ হতে চান তবে আমাদের সাথে যোগাযোগ করুন। প্রতিক্রিয়ার সময় ২৫ ফেব্রুয়ারি ২০২২ পর্যন্ত।
'''প্রতিক্রিয়া কোথায় ভাগ করবেন?'''
<nowiki>#</nowiki>১ আগ্রহী সম্প্রদায়ের সদস্যরা [[:m:Talk:Leadership Development Task Force|আলোচনা পৃষ্ঠায়]] তাদের প্রতিক্রিয়া যুক্ত করতে পারেন।
<nowiki>#</nowiki>২ আগ্রহী সম্প্রদায়ের সদস্যরা Google Meet মাধ্যমে ১৮ ফেব্রুয়ারী, শুক্রবার একটি আঞ্চলিক আলোচনায় যোগ দিতে পারেন।
'''তারিখ এবং সময়'''
* Friday, 18 February · 7:00 – 8:00 PM IST ([https://zonestamp.toolforge.org/1645191032 Your Timezone]) ([https://calendar.google.com/event?action=TEMPLATE&tmeid=NHVqMjgxNGNnOG9rYTFtMW8zYzFiODlvNGMgY19vbWxxdXBsMTRqbnNhaHQ2N2Y5M2RoNDJnMEBn&tmsrc=c_omlqupl14jnsaht67f93dh42g0%40group.calendar.google.com Add to Calendar])
* Google Meet link: https://meet.google.com/nae-rgsd-vif
ধন্যবাদ, [[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৮:৫১, ৯ ফেব্রুয়ারি ২০২২ (ইউটিসি)
== ইন্টারফেস প্রশাসন ==
{{atopg
| status =
| result =
}}
উইকিঅভিধানে ইন্টারফেস প্রশাসন নেই। মিডিয়াউইকি নামস্থানে থাকা ভুল বা কমতি দৃষ্টিগোচর হলে করার কিছু থাকেনা। সম্প্রদায়ের পক্ষ থেকে উইকিপিডিয়ার সক্রিয় ও অভিজ্ঞ ইন্টারফেস প্রশাসক [[ব্যবহারকারী:আফতাবুজ্জামান|আফতাব ভাই]] বা উইকিভ্রমণের [[ব্যবহারকারী:Yahya|ইয়াহইয়া ভাইকে]] (তাদের স্থানীয় কার্যক্রমও অতীতে রয়েছে, ইয়াহইয়া ভাই স্বয়ংক্রিয় পরীক্ষক) দায়িত্ব প্রদানের প্রস্তাব করব। খুব বেশি কাজ নয়, কিছু সামান্য পরিবর্তন ও পরিবর্ধন প্রয়োজন হতে পারে। ইন্টারফেস প্রশাসনের প্রকল্প পাতাগুলো আমি দ্রুতই তৈরি করার চিন্তা করেছি। হয়ত খুব দ্রুতই কাজটি সমাপ্ত করব। কিন্তু এর আগে বিষয়টি নিয়ে আলোচনা শুরু করা উচিত মনে করেছি। ~ [[ব্যবহারকারী:খাত্তাব হাসান|খাত্তাব]] <sup>[[বিশেষ:অবদান/খাত্তাব হাসান|অ]], [[ব্যবহারকারী আলাপ:খাত্তাব হাসান|আ]], [[বিশেষ:ইমেইল/খাত্তাব হাসান|ই]]...</sup> ০৭:২৫, ১২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
:@[[ব্যবহারকারী:খাত্তাব হাসান|খাত্তাব হাসান]] যেহেতু বাংলা উইকিপিডিয়ায় আমার একটি আলোচনা চলমান। তাই আপতত আর কোথাও কোনো অধিকারের আবেদন করতে চাচ্ছি না (হ্যাট কালেক্টর হতে চাই না :P)। আমি আফতাব ভাই বা @[[ব্যবহারকারী:Aishik Rehman|Aishik Rehman]] ভাইকে এখানে ইন্টারফেস প্রশাসক হওয়ার অনুরোধ করছি। ঐশিক রেহমান বর্তমানে উইকিবইয়ের ইন্টারফেস প্রশাসক ও এই প্রকল্পের প্রশাসক। -- [[ব্যবহারকারী:Yahya|Yahya]] ([[ব্যবহারকারী আলাপ:Yahya|আলাপ]]) ০৮:০০, ১২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
::আপনার মন্তব্য ঠিক আছে। সেটাও হতে পারে। তবে উন্নয়নে বাধা হলে [[w:bn:উইকিপিডিয়া:সকল বিধি উপেক্ষা করুন|সকল বিধি উপেক্ষা করাই শ্রেয়।]] আমি অন্যদের মন্তব্যের জন্যও অপেক্ষা করব। -- ~ [[ব্যবহারকারী:খাত্তাব হাসান|খাত্তাব]] <sup>[[বিশেষ:অবদান/খাত্তাব হাসান|অ]], [[ব্যবহারকারী আলাপ:খাত্তাব হাসান|আ]], [[বিশেষ:ইমেইল/খাত্তাব হাসান|ই]]...</sup> ০৮:১২, ১২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
{{abot}}
== প্রকল্পের নাম ==
উইকিঅভিধান নাম আগেও আমার মনে খটকা তৈরি করত। আজকে প্রধান পাতা আলাপ পাতা পরিভ্রমণ করতে গিয়ে মহাদ্বার ভাই বিষয়টি স্পষ্টভাবে উল্লেখ করায় স্পষ্টভাবে নজরে এল। শব্দের শুরুতে বাংলায় "অ"-এর ব্যবহার থাকলেও মাঝখানে এর ব্যবহার নেই। যেকোনো ব্যাকরণ বইয়ে দেখা যেতে পারে। অভিধানের মত একটা ভারি ব্যাকরণ নির্ভরশীল প্রকল্পের নামে এই বিষয়টি মেনে নেয়া যায়না। আমি বিষয়টির জন্য সম্প্রদায়ের দৃষ্টি আকর্ষণ করতে চাইব। ~ [[ব্যবহারকারী:খাত্তাব হাসান|খাত্তাব]] <sup>[[বিশেষ:অবদান/খাত্তাব হাসান|অ]], [[ব্যবহারকারী আলাপ:খাত্তাব হাসান|আ]], [[বিশেষ:ইমেইল/খাত্তাব হাসান|ই]]...</sup> ০৭:২৫, ১২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
== Wiki Loves Folklore is extended till 15th March ==
<div lang="en" dir="ltr" class="mw-content-ltr">{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|frameless|180px]]
Greetings from Wiki Loves Folklore International Team,
We are pleased to inform you that [[:c:Commons:Wiki Loves Folklore|Wiki Loves Folklore]] an international photographic contest on Wikimedia Commons has been extended till the '''15th of March 2022'''. The scope of the contest is focused on folk culture of different regions on categories, such as, but not limited to, folk festivals, folk dances, folk music, folk activities, etc.
We would like to have your immense participation in the photographic contest to document your local Folk culture on Wikipedia. You can also help with the [[:c:Commons:Wiki Loves Folklore 2022/Translations|translation]] of project pages and share a word in your local language.
Best wishes,
'''International Team'''<br />
'''Wiki Loves Folklore'''
[[ব্যবহারকারী:MediaWiki message delivery|MediaWiki message delivery]] ([[ব্যবহারকারী আলাপ:MediaWiki message delivery|আলাপ]]) ০৪:৫০, ২২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
</div>
<!-- https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=22754428-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Rockpeterson@metawiki পাঠিয়েছেন -->
== সর্বজনীন আচরণবিধি (UCoC) প্রয়োগের নির্দেশিকা এবং অনুসমর্থন ভোট ==
'''সংক্ষিপ্ত:''' [[:m:Universal Code of Conduct/Enforcement guidelines|সংশোধিত প্রয়োগকারী নির্দেশিকা]] প্রকাশিত করা হয়েছে। নির্দেশিকা অনুসমর্থনের জন্য ভোট [[:m:Universal Code of Conduct/Enforcement guidelines/Voting|৭ মার্চ থেকে ২১ মার্চ 2022]] পর্যন্ত অনুষ্ঠিত হবে। ২৫ ফেব্রুয়ারী (১২:০০ UTC) এবং ৪ মার্চ (১৫:০০ UTC) সম্প্রদায়ের সদস্যরা প্রকল্প দল এবং খসড়া কমিটির সদস্যদের সাথে আলোচনায় অংশগ্রহণ করতে পারে। অংশগ্রহণ করার জন্য [[:m:Special:MyLanguage/Universal Code of Conduct/Conversations|সাইন আপ]] করুন।
'''বিস্তারিত:'''
[[:m:Universal Code of Conduct|সর্বজনীন আচরণবিধি]] (UCoC) পুরো উইকিমিডিয়া আন্দোলনের জন্য গ্রহণযোগ্য আচরণের একটি ভিত্তিরেখা সরবরাহ করে। UCoC এবং প্রয়োগের নির্দেশিকা সম্প্রদায়ের পরামর্শের পরে [[:m:Special:MyLanguage/Universal Code of Conduct/Drafting committee|স্বেচ্ছাসেবক-কর্মীদের খসড়া কমিটি]] দ্বারা লিখিত হয়েছিল। সংশোধিত নির্দেশিকা ২৪ জানুয়ারী ২০২২ প্রকাশিত হয়েছিল।
'''এরপরে কী?'''
'''#১ সম্প্রদায় কথোপকথন'''
নির্দেশিকা বুঝতে সহায়তা করার জন্য, [[:m:Special:MyLanguage/Movement Strategy and Governance|আন্দোলন কৌশল ও অনুশাসন]] (MSG) টিম UCoC প্রকল্প দল এবং খসড়া কমিটির সদস্যদের সাথে ২৫ ফেব্রুয়ারি (১২:০০ UTC) এবং ৪ মার্চ (১৫:০০ UTC) আলোচনার আয়োজন করেছে। অংশগ্রহণ করার জন্য [[:m:Special:MyLanguage/Universal Code of Conduct/Conversations|সাইন আপ]] করুন।
নির্দেশিকা সম্পর্কে প্রতিক্রিয়া [[:m:Talk:Universal Code of Conduct/Enforcement guidelines|আলাপ পাতায়]] ভাগ করা যায়। আপনি যে কোনও ভাষায় প্রতিক্রিয়া ভাগ করতে পারেন।
'''#২ অনুসমর্থনের ভোট'''
উইকিমিডিয়া ফাউন্ডেশনের ট্রাস্টি বোর্ড অনুসমর্থনের প্রক্রিয়া সম্পর্কে [[:m:Special:MyLanguage/Wikimedia Foundation Board noticeboard/January 2022 - Board of Trustees on Community ratification of enforcement guidelines of UCoC|একটি বিবৃতি প্রকাশ করেছে]] যেখানে যোগ্য ভোটাররা ভোটের মাধ্যমে প্রয়োগের নির্দেশিকা গ্রহণ বা বিরোধিতা করতে পারবে। উইকিমিডিয়ানদের গুরুত্বপূর্ণ তথ্য [[:m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voter information/Volunteer|অনুবাদ এবং ভাগ]] করে নেওয়ার জন্য আমন্ত্রিত করা হচ্ছে।
[[:m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voting|SecurePoll]] মাধ্যমে ভোটদান প্রক্রিয়া নির্ধারিত করা হয়েছে। ভোট ৭ মার্চ থেকে ২১ মার্চ ২০২২ পর্যন্ত চলবে।
[[:m:Universal Code of Conduct/Enforcement guidelines/Voter information#Voting eligibility|যোগ্য ভোটারদের]] একটি সমীক্ষা প্রশ্নের উত্তর দিতে এবং মন্তব্য ভাগ করার জন্য আমন্ত্রণ জানানো হচ্ছে। প্রস্তাবিত নির্দেশিকার ভিত্তিতে তারা UCoC প্রয়োগকে সমর্থন করেন কিনা তা ভোটারদের জিজ্ঞাসা করা হবে।
ধনাবাদ। [[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১৮:৩১, ২২ ফেব্রুয়ারি ২০২২ (ইউটিসি)
== Coming soon ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
=== Several improvements around templates ===
Hello, from March 9, several improvements around templates will become available on your wiki:
* Fundamental improvements of the [[Mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|VisualEditor template dialog]] ([[m:WMDE Technical Wishes/VisualEditor template dialog improvements|1]], [[m:WMDE Technical Wishes/Removing a template from a page using the VisualEditor|2]]),
* Improvements to make it easier to put a template on a page ([[m:WMDE Technical Wishes/Finding and inserting templates|3]]) (for the template dialogs in [[Mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|VisualEditor]], [[Mw:Special:MyLanguage/Extension:WikiEditor#/media/File:VectorEditorBasic-en.png|2010 Wikitext]] and [[Mw:Special:MyLanguage/2017 wikitext editor|New Wikitext Mode]]),
* and improvements in the syntax highlighting extension [[Mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] ([[m:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting|4]], [[m:WMDE Technical Wishes/Bracket Matching|5]]) (which is available on wikis with writing direction left-to-right).
All these changes are part of the “[[m:WMDE Technical Wishes/Templates|Templates]]” project by [[m:WMDE Technical Wishes|WMDE Technical Wishes]]. We hope they will help you in your work, and we would love to hear your feedback on the talk pages of these projects. </div> - [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] ১২:৩৮, ২৮ ফেব্রুয়ারি ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=22907463-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Johanna Strodt (WMDE)@metawiki পাঠিয়েছেন -->
== <section begin="announcement-header" />ট্রাস্টি বোর্ড নির্বাচনের জন্য প্রতিক্রিয়া আহ্বান সমাপ্ত হয়েছে <section end="announcement-header" /> ==
<section begin="announcement-content" />:''[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback is now closed|বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback is now closed|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback is now closed}}&language=&action=page&filter= {{int:please-translate}}]</div>''
[[m:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections|ট্রাস্টি বোর্ড নির্বাচনের জন্য প্রতিক্রিয়া আহ্বান]] সমাপ্ত হয়েছে। প্রতিক্রিয়া আহ্বান ১০ জানুয়ারি থেকে ১৬ ফেব্রুয়ারী ২০২২-এর মধ্যে হয়েছিল। প্রতিক্রিয়া আহ্বান [[m:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Discuss Key Questions#Questions|তিনটি মূল প্রশ্নের]] উপর দৃষ্টি নিবদ্ধ করে এবং [[m:Talk:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Discuss Key Questions|মেটা-উইকি-র]] উপর, অ্যাফিলিয়েটসদের সাথে বৈঠকের সময় এবং বিভিন্ন সম্প্রদায়ের কথোপকথন থেকে প্রতিক্রিয়া প্রাপ্ত হয়েছে। [[m:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Reports|রিপোর্ট]] মেটা-উইকিতে প্রকাশ করা হয়েছে।
এই তথ্যটি ট্রাস্টি বোর্ড এবং নির্বাচন কমিটির সাথে ভাগ করা হবে যাতে তারা আসন্ন ট্রাস্টি বোর্ড নির্বাচন সম্পর্কে জ্ঞাত সিদ্ধান্ত নিতে পারে। অভ্যন্তরীণ আলোচনার পরে ট্রাস্টি বোর্ড একটি ঘোষণা দেবে।
নির্বাচন প্রক্রিয়া উন্নত করতে এবং সহায়তা করার জন্য আপনাকে ধন্যবাদ।
শুভেচ্ছান্তে,
আন্দোলন কৌশল ও অনুশাসন>br /><section end="announcement-content" />
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৮:৪৫, ৫ মার্চ ২০২২ (ইউটিসি)
== সর্বজনীন আচরণবিধি (UCoC) প্রয়োগের নির্দেশিকা অনুসমর্থনের জন্য ভোট শুরু হয়েছে (৭ - ২১ মার্চ ২০২২) ==
[[metawiki:Special:MyLanguage/Universal Code of Conduct|সর্বজনীন আচরণবিধি]] (UCoC) [[metawiki:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines|প্রয়োগের নির্দেশিকার]] অনুমোদন শুরু হয়েছে। প্রতিটি যোগ্য সম্প্রদায়ের সদস্য ভোট দিতে পারেন।
SecurePoll ব্যবহার এবং ভোটিং যোগ্যতা সম্পর্কে জানতে, [[metawiki:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voter_information|এটি পড়ুন]]। ভোটের শেষ তারিখ ২১ মার্চ ২০২২।
'''এখানে ভোট দিন''' - https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/391
ধন্যবাদ। [[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১৬:৫৩, ৭ মার্চ ২০২২ (ইউটিসি)
== পশ্চিমবঙ্গ উইকিমিডিয়া ব্যবহারকারী দলের পক্ষ থেকে প্রকল্পের আহ্বান ==
[[File:Logo of West Bengal Wikimedians User Group.svg|100px|right|পশ্চিমবঙ্গ উইকিমিডিয়া ব্যবহারকারী দল]]
সুধী, [[:meta:West Bengal Wikimedians|পশ্চিমবঙ্গ উইকিমিডিয়া ব্যবহারকারী দলের]] পক্ষ থেকে পশ্চিমবঙ্গের উইকিমিডিয়া সম্প্রদায়ের সকলকে ২০২২ সালের কার্যকলাপের জন্য প্রকল্প জমা দেওয়ার আহ্বান করা হচ্ছে। [[:meta:West Bengal Wikimedians/Requests|এই পাতায়]] আপনারা আগামী এক বছরে কি উইকিমিডিয়া প্রকল্প রূপায়িত করতে চান, তাতে কত আনুমানিক খরচ হতে পারে, এই প্রকল্প থেকে উইকিমিডিয়ার কি লক্ষ্য পূরণ হবে, ইত্যাদি বিস্তারিত ভাবে জানান। আপনাদের প্রস্তাবিত প্রকল্প বিবেচনা করেই ব্যবহারকারী দলের তরফ থেকে উইকিমিডিয়া ফাউন্ডেশনের নিকট হতে গ্র্যান্টের আবেদন করা হবে এবং তা গৃহীত হলে আপনাদের প্রকল্পের জন্য অর্থ বরাদ্দ হবে। আগামী ৩১শে মার্চের মধ্যে বিস্তারিত প্রকল্প জমা নেওয়া হবে। ধন্যবাদান্তে, -- পশ্চিমবঙ্গ ব্যবহারকারী দলের পক্ষে থেকে [[ব্যবহারকারী:Bodhisattwa|বোধিসত্ত্ব]] ([[ব্যবহারকারী আলাপ:Bodhisattwa|আলাপ]]) ০৪:১৬, ৮ মার্চ ২০২২ (ইউটিসি)
== Wiki Loves Folklore 2022 ends tomorrow ==
[[File:Wiki Loves Folklore Logo.svg|right|frameless|180px]]
International photographic contest [[:c:Commons:Wiki Loves Folklore 2022| Wiki Loves Folklore 2022]] ends on 15th March 2022 23:59:59 UTC. This is the last chance of the year to upload images about local folk culture, festival, cuisine, costume, folklore etc on Wikimedia Commons. Watch out our social media handles for regular updates and declaration of Winners.
([https://www.facebook.com/WikiLovesFolklore/ Facebook] , [https://twitter.com/WikiFolklore Twitter ] , [https://www.instagram.com/wikilovesfolklore/ Instagram])
The writing competition Feminism and Folklore will run till 31st of March 2022 23:59:59 UTC. Write about your local folk tradition, women, folk festivals, folk dances, folk music, folk activities, folk games, folk cuisine, folk wear, folklore, and tradition, including ballads, folktales, fairy tales, legends, traditional song and dance, folk plays, games, seasonal events, calendar customs, folk arts, folk religion, mythology etc. on your local Wikipedia. Check if your [[:m:Feminism and Folklore 2022/Project Page|local Wikipedia is participating]]
A special competition called '''Wiki Loves Falles''' is organised in Spain and the world during 15th March 2022 till 15th April 2022 to document local folk culture and [[:en:Falles|Falles]] in Valencia, Spain. Learn more about it on [[:ca:Viquiprojecte:Falles 2022|Catalan Wikipedia project page]].
We look forward for your immense co-operation.
Thanks
Wiki Loves Folklore international Team
[[ব্যবহারকারী:MediaWiki message delivery|MediaWiki message delivery]] ([[ব্যবহারকারী আলাপ:MediaWiki message delivery|আলাপ]]) ১৪:৪১, ১৪ মার্চ ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=22754428-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Rockpeterson@metawiki পাঠিয়েছেন -->
== <section begin="announcement-header" />সর্বজনীন আচরণবিধি প্রয়োগের নির্দেশিকা অনুমোদনের ভোটদান প্রক্রিয়া শেষ হয়েছে<section end="announcement-header" /> ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote/Closing message|বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote/Closing message|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/Vote/Closing message}}&language=&action=page&filter= {{int:please-translate}}]</div>''
অভিনন্দন,
[[m:Special:MyLanguage/Universal Code of Conduct|সর্বজনীন আচরণবিধির]] (UCoC) [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines|সংশোধিত প্রয়োগকারী নির্দেশিকা]] অনুমোদনের ভোটদান প্রক্রিয়া ২১ মার্চ ২০২২-এ শেষ হয়েছে। '''{{#expr:2300}} এরও বেশি''' উইকিমিডিয়ান বিভিন্ন সম্প্রদায় জুড়ে ভোট দিয়েছে। যারা এই প্রক্রিয়াটিতে অংশ নিয়েছে তাদের সবাইকে ধন্যবাদ! যাচাই-বাছাই কারী গোষ্ঠী এখন নির্ভুলতার জন্য ভোট পর্যালোচনা করবে; তাদের কাজ শেষ করতে দুই সপ্তাহ পর্যন্ত সময় দিন।
ভোটদান প্রক্রিয়া থেকে চূড়ান্ত ফলাফলগুলি [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voting/Results|এখানে]] প্রাসঙ্গিক পরিসংখ্যান এবং মন্তব্যের সংক্ষিপ্তসার সহ ঘোষণা করা হবে। পরবর্তী পদক্ষেপগুলি সম্পর্কে জানতে [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voter information|ভোটার তথ্য পৃষ্ঠাটি]] দেখুন। আপনি যে কোনও ভাষায় [[m:Talk:Universal Code of Conduct/Enforcement guidelines|মেটা-উইকিতে]] প্রকল্পের আলাপ পৃষ্ঠায় মন্তব্য করতে পারেন। আপনি UCoC প্রকল্প টিমের সাথে ইমেলের মাধ্যমে যোগাযোগ করতে পারেন: ucocproject[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org
শুভেচ্ছান্তে!
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৯:২৫, ২৩ মার্চ ২০২২ (ইউটিসি)
== ইন্টারফেস প্রশাসকত্বের আবেদন ==
{{atopr
| status =
| result =
}}
যেহেতু কোনও ইন্টারফেস প্রশাসক নেই, তাই সাম্প্রতিক পরিবর্তনে নোটিশ দেওয়া সম্ভব নয়। এখানেই সম্প্রদায়ের অবগতির লক্ষ্যে আমার '''[[উইকিঅভিধান:ইন্টারফেস প্রশাসক হওয়ার আবেদন/খাত্তাব হাসান (সাময়িক)|ইন্টারফেস প্রশাসক হওয়ার আবেদনের]]''' বিষয়টি জানাচ্ছি। আশা করছি, সম্প্রদায় আবেদনটিতে মন্তব্য করবে।~ [[ব্যবহারকারী:খাত্তাব হাসান|খাত্তাব]] <sup>[[বিশেষ:অবদান/খাত্তাব হাসান|অ]], [[ব্যবহারকারী আলাপ:খাত্তাব হাসান|আ]], [[বিশেষ:ইমেইল/খাত্তাব হাসান|ই]]...</sup> ০৫:৩১, ৩১ মার্চ ২০২২ (ইউটিসি)
{{abot}}
== Announcing Indic Hackathon 2022 and Scholarship Applications ==
Dear Wikimedians, we are happy to announce that the Indic MediaWiki Developers User Group will be organizing [[m:Indic Hackathon 2022|Indic Hackathon 2022]], a regional event as part of the main [[mw:Wikimedia Hackathon 2022|Wikimedia Hackathon 2022]] taking place in a hybrid mode during 20-22 May 2022. The event will take place in Hyderabad. The regional event will be in-person with support for virtual participation. As it is with any hackathon, the event’s program will be semi-structured i.e. while we will have some sessions in sync with the main hackathon event, the rest of the time will be upto participants’ interest on what issues they are interested to work on. The event page can be seen on [[m:Indic Hackathon 2022|this page]].
In this regard, we would like to invite community members who would like to attend in-person to fill out a [https://docs.google.com/forms/d/e/1FAIpQLSc1lhp8IdXNxL55sgPmgOKzfWxknWzN870MvliqJZHhIijY5A/viewform?usp=sf_link form for scholarship application] by 17 April, which is available on the event page. Please note that the hackathon won’t be focusing on training of new skills, and it is expected that applications have some experience/knowledge contributing to technical areas of the Wikimedia movement. Please post on the event talk page if you have any queries. [[ব্যবহারকারী:MediaWiki message delivery|MediaWiki message delivery]] ([[ব্যবহারকারী আলাপ:MediaWiki message delivery|আলাপ]]) ১৮:৩১, ৭ এপ্রিল ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/South_Asia_Village_Pumps&oldid=23115331-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:KCVelaga@metawiki পাঠিয়েছেন -->
== মারিয়ানা ইস্কান্ডারের সাথে দক্ষিণ এশিয়া/ESEAP বার্ষিক পরিকল্পনা সভা ==
প্রিয় সম্প্রদায়ের সদস্যরা,
[[m:User:MIskander-WMF|মারিয়ানা ইস্কান্দারের]] [[m:Special:MyLanguage/Wikimedia Foundation Chief Executive Officer/Maryana’s Listening Tour|লিস্তেনিং টুর-এর]] ধারাবাহিকতায়, [[m:Special:MyLanguage/Movement Communications|আন্দোলন যোগাযোগ]] এবং [[m:Special:MyLanguage/Movement Strategy and Governance|আন্দোলনের কৌশল এবং শাসন]] টিম আপনাকে '''[[m:Special:MyLanguage/Wikimedia Foundation Annual Plan/2022-2023/draft|২০২২-২৩ উইকিমিডিয়া ফাউন্ডেশনের বার্ষিক পরিকল্পনা]]''' নিয়ে আলোচনায় আমন্ত্রণ জানাচ্ছে।
কথোপকথন এই প্রশ্নগুলি সম্পর্কে হবে:
* [[m:Special:MyLanguage/Wikimedia 2030|২০৩০ উইকিমিডিয়া আন্দোলনের কৌশল]] "knowledge as a service" এবং "knowledge equity"-র দিকে একটি দিকনির্দেশ নির্ধারণ করে। উইকিমিডিয়া ফাউন্ডেশন এই দুটি লক্ষ্য অনুযায়ী পরিকল্পনা করতে চায়। এই প্রসঙ্গে, উইকিমিডিয়া ফাউন্ডেশনের জন্য আপনার পরামর্শ কি?
* উইকিমিডিয়া ফাউন্ডেশন আঞ্চলিক পর্যায়ে কাজ করার আরও ভালো উপায় অন্বেষণ করে চলেছে। আমরা অনুদান, নতুন বৈশিষ্ট্য এবং সম্প্রদায়ের কথোপকথনে আমাদের আঞ্চলিক ফোকাস বাড়িয়ে চলেছি। আমরা আরও কিভাবে উন্নত করতে পারি?
* যে কেউ আন্দোলনের কৌশল প্রক্রিয়ায় অবদান রাখতে পারে। আমরা আপনাদের কার্যকলাপ, ধারণা, এবং অনুরোধ সম্পর্কে আরও জানতে চাই। কিভাবে উইকিমিডিয়া ফাউন্ডেশন আন্দোলনের কৌশল কার্যক্রমে কর্মরত স্বেচ্ছাসেবক এবং অ্যাফিলিয়েটসদের জন্য সমর্থন উন্নত করতে পারে?
<b>তারিখ এবং সময়</b>
[https://wikimedia.zoom.us/j/84673607574?pwd=dXo0Ykpxa0xkdWVZaUZPNnZta0k1UT09 জুমের] মাধ্যমে সভা অনুষ্ঠিত হবে। তারিখ এবং সময় হল ২৪ এপ্রিল (রবিবার) ০৭:০০ UTC ([https://zonestamp.toolforge.org/1650783659 স্থানীয় সময়])। আপনার [https://calendar.google.com/event?action=TEMPLATE&tmeid=MmtjZnJibXVjYXYyZzVwcGtiZHVjNW1lY3YgY19vbWxxdXBsMTRqbnNhaHQ2N2Y5M2RoNDJnMEBn&tmsrc=c_omlqupl14jnsaht67f93dh42g0%40group.calendar.google.com ক্যালেন্ডারে মিটিং যোগ করুন]। লাইভ ব্যাখ্যা কিছু ভাষার জন্য উপলব্ধ হবে।
ধন্যবাদ,
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১০:৪৯, ১৭ এপ্রিল ২০২২ (ইউটিসি)
== চলুন ডেস্কটপ উন্নয়ন সম্পর্কে কথা বলি ==
[[File:New table of contents shown on English wikipedia.png|thumb]]
সুপ্রিয়!
আপনি কি লক্ষ্য করেছেন যে কিছু উইকি [[mw:Special:MyLanguage/Reading/Web/Desktop_Improvements|ভিন্ন ডেস্কটপ ইন্টারফেস]] ব্যবহার করছে? আপনি কি আমাদের পরবর্তী পদক্ষেপগুলি সম্পর্কে জানতে আগ্রহী? নকশা বা প্রযুক্তিগত বিষয় সম্পর্কে আপনার কোনও প্রশ্ন বা মতামত রয়েছে?
ডেস্কটপ উন্নয়ন নিয়ে কাজ করা দলের সাথে একটি অনলাইন সভায় যোগ দিন! এটি '''২৯ এপ্রিল ২০২২ তারিখ [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20220429T1300 ১৩:০০ UTC], [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20220429T1800 ১৮ ০০ UTC]-তে''' জুমে সঞ্চালিত হবে। '''[https://wikimedia.zoom.us/j/88045453898 যোগ দিতে এখানে ক্লিক করুন]'''। সভার আইডি: 88045453898। [https://wikimedia.zoom.us/u/kcOMICmyyA আপনার অবস্থান অনুযায়ী ডায়াল করুন]।
'''আলোচ্যসূচি'''
* সাম্প্রতিক উন্নয়ন নিয়ে হালনাগাদ
* প্রশ্ন ও উত্তর, আলোচনা
'''বিন্যাস'''
সভাটি রেকর্ড বা স্ট্রিম করা হবে না। টীকাগুলি একটি [https://docs.google.com/document/d/1G4tfss-JBVxyZMxGlOj5MCBhOO-0sLekquFoa2XiQb8/edit# গুগল ডক ফাইলে] লেখা হবে। এই সভাটি সঞ্চালন করবেন [[mw:User:OVasileva_(WMF)|ওলগা ভাসিলেভা]] (পণ্য ব্যবস্থাপক)। সভার উপস্থাপনা অংশটি ইংরেজিতে দেওয়া হবে।
আমরা ইংরেজি, ফরাসি, ইতালীয় এবং পোলিশ ভাষায় করা প্রশ্নের উত্তর দিতে পারব। আপনি যদি আগে থেকে প্রশ্ন জিজ্ঞাসা করতে চান, তবে [[mw:Talk:Reading/Web/Desktop_Improvements|আলাপ পাতায়]] সেগুলি যোগ করুন বা sgrabarczuk@wikimedia.org ঠিকানায় সেগুলি প্রেরণ করুন।
এই সভায়, [[foundation:Friendly_space_policy|বন্ধুত্বপূর্ণ স্থানের নীতি]] এবং উইকিমিডিয়ার কারিগরি স্থানের জন্য [[mw:Special:MyLanguage/Code_of_Conduct|আচরণবিধি]] উভয় প্রযোজ্য হবে। জুম [[foundation:Privacy_policy|WMF-এর গোপনীয়তা নীতির]] অধীনে নয়।
আশা করি আমরা আপনাকে দেখতে পাব! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|আলাপ]]) ১৪:৩৬, ২৭ এপ্রিল ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30/bn&oldid=22381747-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:SGrabarczuk (WMF)@metawiki পাঠিয়েছেন -->
==প্রার্থিতা আহ্বান: ২০২২ ট্রাস্টি বোর্ড নির্বাচন==
প্রিয় সম্প্রদায়ের সদস্যরা,
[[m:Special:MyLanguage/Wikimedia Foundation elections/2022|২০২২ ট্রাস্টি বোর্ড নির্বাচন]] প্রক্রিয়া শুরু হয়ে গ্যাছে। [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Announcement/Call_for_Candidates|প্রার্থিতার আহ্বান]] জানানো হয়েছে।
ট্রাস্টি বোর্ড উইকিমিডিয়া ফাউন্ডেশনের কার্যক্রম তত্ত্বাবধান করে। সম্প্রদায়-এবং-অ্যাফিলিয়েট নির্বাচিত ট্রাস্টি এবং বোর্ড-নিযুক্ত ট্রাস্টিরা ট্রাস্টি বোর্ড গঠন করে। প্রতিটি ট্রাস্টি তিন বছরের মেয়াদে কাজ করে। উইকিমিডিয়া সম্প্রদায় সম্প্রদায়-এবং-অ্যাফিলিয়েট ট্রাস্টি নির্বাচনের জন্য ভোট দিতে পারে।
উইকিমিডিয়া সম্প্রদায় ২০২২ সালে ট্রাস্টি বোর্ডে দুটি আসন নির্বাচন করার জন্য ভোট দেবে। এটি ট্রাস্টি বোর্ডের প্রতিনিধিত্ব, বৈচিত্র্য, এবং দক্ষতা উন্নত করার একটি সুযোগ।
ট্রাস্টি বোর্ডে যোগদানের জন্য [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Apply to be a Candidate|আপনার প্রার্থিতা জমা দিন]]।
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৯:০৮, ২৯ এপ্রিল ২০২২ (ইউটিসি)
== Coming soon: Improvements for templates ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<!--T:11-->
[[File:Overview of changes in the VisualEditor template dialog by WMDE Technical Wishes.webm|thumb|Fundamental changes in the template dialog.]]
Hello, more changes around templates are coming to your wiki soon:
The [[mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|'''template dialog''' in VisualEditor]] and in the [[mw:Special:MyLanguage/2017 wikitext editor|2017 Wikitext Editor]] (beta) will be '''improved fundamentally''':
This should help users understand better what the template expects, how to navigate the template, and how to add parameters.
* [[metawiki:WMDE Technical Wishes/VisualEditor template dialog improvements|project page]], [[metawiki:Talk:WMDE Technical Wishes/VisualEditor template dialog improvements|talk page]]
In '''syntax highlighting''' ([[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] extension), you can activate a '''colorblind-friendly''' color scheme with a user setting.
* [[metawiki:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting#Color-blind_mode|project page]], [[metawiki:Talk:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting|talk page]]
Deployment is planned for May 10. This is the last set of improvements from [[m:WMDE Technical Wishes|WMDE Technical Wishes']] focus area “[[m:WMDE Technical Wishes/Templates|Templates]]”.
We would love to hear your feedback on our talk pages!
</div> -- [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] ১১:১৩, ২৯ এপ্রিল ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=23222263-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Johanna Strodt (WMDE)@metawiki পাঠিয়েছেন -->
== সম্পাদনা সংবাদ ২০২২ #১ ==
<section begin="message"/><i>[[metawiki:VisualEditor/Newsletter/2022/April|অন্য আরেকটি ভাষায় এটি পড়ুন]] • [[m:VisualEditor/Newsletter|এই বহুভাষী বার্তাপত্রের জন্য সদস্যতার তালিকা]]</i>
[[File:Junior Contributor New Topic Tool Completion Rate.png|thumb|নতুন সম্পাদকরা এই নতুন সরঞ্জাম ব্যবহার করে আরও সফল হয়।]]
[[mw:Special:MyLanguage/Help:DiscussionTools#New discussion tool|নতুন আলোচনা সরঞ্জাম]] সম্পাদকদের আলোচনা পাতায় নতুন ==অনুচ্ছেদ== তৈরিতে সহায়তা করে। নতুন সম্পাদকরা এই নতুন সরঞ্জাম ব্যবহার করে আরও সফল হন। আপনি [[mw:Talk pages project/New topic#21 April 2022|প্রতিবেদনটি পড়তে পারেন]]। শীঘ্রই, সম্পাদনা দল পরীক্ষায় অংশগ্রহণকারী ২০টি উইকিপিডিয়াতে এইগুলো চালু করবে। আপনি চাইলে [[Special:Preferences#mw-prefsection-editing-discussion]]-এ গিয়ে এটি বন্ধ করতে পারবেন।<section end="message"/>
[[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ১৮:৫৫, ২ মে ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/Newsletter/Wikis_with_VE&oldid=22019984-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Quiddity (WMF)@metawiki পাঠিয়েছেন -->
== <section begin="announcement-header" />উইকিমিডিয়া ফাউন্ডেশন ২০২২ ট্রাস্টি বোর্ড নির্বাচন - নির্বাচন স্বেচ্ছাসেবকদের জন্য আহ্বান<section end="announcement-header" /> ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Strategy and Governance/Election Volunteers/2022/Call for Election Volunteers|বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Strategy and Governance/Election Volunteers/2022/Call for Election Volunteers|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Strategy and Governance/Election Volunteers/2022/Call for Election Volunteers}}&language=&action=page&filter= {{int:please-translate}}]</div>''
আন্দোলনের কৌশল এবং শাসন দল আসন্ন ট্রাস্টি বোর্ড নির্বাচনে নির্বাচনী স্বেচ্ছাসেবক হিসাবে সহযোগিতা করার জন্য সম্প্রদায়ের সদস্যদের খুঁজছেন৷
নির্বাচন স্বেচ্ছাসেবক প্রোগ্রামেটি ২০২১ সালের উইকিমিডিয়া ট্রাস্টি বোর্ড নির্বাচনের সময় শুরু হয়েছিল। প্রোগ্রামেটি সফল হয়। নির্বাচনী স্বেচ্ছাসেবকদের সহায়তায়, আমরা ১৭৫৩ ভোটারের নির্বাচনে অংশগ্রহণ এবং প্রচার বাড়াতে সক্ষম হয়েছিলাম। সামগ্রিক ভোটদান ছিল ১০.১৩%, ১.১% বেশি, এবং ২১৪টি উইকি নির্বাচনে প্রতিনিধিত্ব করেছিল।
মোট ৭৪টি উইকি যারা ২০১৭-এ অংশগ্রহণ করেনি তারা ২০২১ সালের নির্বাচনে ভোট দিয়েছে। আপনি অংশগ্রহণ উন্নত করতে সাহায্য করতে পারেন?
নির্বাচনী স্বেচ্ছাসেবকরা নিম্নলিখিত ক্ষেত্রে সাহায্য করবে:
* সংক্ষিপ্ত বার্তা অনুবাদ করা, এবং সম্প্রদায়েতে চলমান নির্বাচন প্রক্রিয়া ঘোষণা করা।
* '''ঐচ্ছিক''': মন্তব্য এবং প্রশ্নের জন্য সম্প্রদায়েটিতে নিরীক্ষণ রাখা।
স্বেচ্ছাসেবকদের উচিত:
* কথোপকথন এবং ইভেন্টের সময় ফ্রেন্ডলি স্পেস নীতি বজায় রাখা।
* নিরপেক্ষভাবে সম্প্রদায়ের কাছে নির্বাচনের নির্দেশিকা এবং ভোটদানের তথ্য উপস্থাপন করা।
আপনি কি নির্বাচনী স্বেচ্ছাসেবক হতে চান এবং ভোটে আপনার সম্প্রদায়ের প্রতিনিধিত্ব নিশ্চিত করতে চান? হালনাগাদ পেতে এখানে [[m:Special:MyLanguage/Movement Strategy and Governance/Election Volunteers/About|সাইন আপ করুন]]। আপনি অনুবাদ সম্পর্কিত প্রশ্নের জন্য [[m:Special:MyLanguage/Talk:Movement Strategy and Governance/Election Volunteers/About|আলাপ পাতা]] ব্যবহার করতে পারেন।<br /><section end="announcement-content" />
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১০:০০, ১২ মে ২০২২ (ইউটিসি)
== Results of Wiki Loves Folklore 2022 is out! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
Hi, Greetings
The winners for '''[[c:Commons:Wiki Loves Folklore 2022|Wiki Loves Folklore 2022]]''' is announced!
We are happy to share with you winning images for this year's edition. This year saw over 8,584 images represented on commons in over 92 countries. Kindly see images '''[[:c:Commons:Wiki Loves Folklore 2022/Winners|here]]'''
Our profound gratitude to all the people who participated and organized local contests and photo walks for this project.
We hope to have you contribute to the campaign next year.
'''Thank you,'''
'''Wiki Loves Folklore International Team'''
--[[ব্যবহারকারী:MediaWiki message delivery|MediaWiki message delivery]] ([[ব্যবহারকারী আলাপ:MediaWiki message delivery|আলাপ]]) ১৬:১২, ৪ জুলাই ২০২২ (ইউটিসি)
</div>
<!-- https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=23454230-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:Tiven2240@metawiki পাঠিয়েছেন -->
== ২০২২ নির্বাচনী কম্পাসের জন্য বিবৃতির প্রস্তাব রাখুন ==
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass| বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass}}&language=&action=page&filter= {{int:please-translate}}]</div>''
প্রিয় সবাই,
স্বেচ্ছাসেবকদের [[m:Special:MyLanguage/Wikimedia Foundation elections/2022|২০২২ ট্রাস্টি বোর্ডের]] '''[[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Community_Voting/Election_Compass|নির্বাচন কম্পাসের বিবৃতির প্রস্তাবের জন্য]]''' আমন্ত্রণ জানানো হচ্ছে।
নির্বাচনী কম্পাস এমন একটি সংরঞ্জাম যা ভোটারদের তাদের বিশ্বাস এবং দৃষ্টিভঙ্গির সাথে সর্বোত্তম সারিবদ্ধ প্রার্থীদের সনাক্ত করতে সহায়তা করে। সম্প্রদায়ের সদস্যরা বিবৃতির প্রস্তাব রাখবেন এবং প্রার্থীরা লিকার্ট স্কেল ব্যবহার করে উত্তর দেবেন (একমত/অসম্মত/নিরপক্ষ)। বিবৃতির উত্তর নির্বাচন কম্পাস সরঞ্জামে আপলোড করা হবে। ভোটাররা বিবৃতিতে তাদের উত্তর ভাগ করে সরঞ্জামটি ব্যবহার করবে (একমত/অসম্মত/নিরপক্ষ)। ফলাফলে সেই প্রার্থীদের শনাক্ত হবে যারা ভোটারদের বিশ্বাস ও দৃষ্টিভঙ্গির সাথে সর্বোত্তমে সারিবদ্ধ হয়।
এখানে নির্বাচন কম্পাসের সময়রেখা দেওয়া রয়েছে:
* জুলাই ৮ - ২০: স্বেচ্ছাসেবকরা নির্বাচন কম্পাসের জন্য বিবৃতির প্রস্তাব রাখবে।
* জুলাই ২১ - ২২: নির্বাচন কমিটি স্পষ্টতার জন্য বিবৃতিগুলির পর্যালোচনা করে এবং বিষয়বস্তুর বাইরের বিবৃতিগুলি সরিয়ে দেবে।
* জুলাই ২৩ - আগস্ট ১: স্বেচ্ছাসেবকরা বিবৃতি উপর ভোট দেবে।
* আগস্ট ২ - ৪: নির্বাচন কমিটি শীর্ষ ১৫ বিবৃতি বেছে নেবে।
* আগস্ট ৫ - ১২: প্রার্থীরা বিবৃতির সঙ্গে নিজেদের সারিবদ্ধ করবে।
* আগস্ট ১৫: ভোটারদের জন্য নির্বাচনী কম্পাস খোলা হবে।
নির্বাচন কমিটি আগস্টের শুরুতে সেরা ১৫টি বিবৃতির নির্বাচন করবে। আন্দোলন কৌশল ও অনুশাসন টিম দ্বারা সমর্থিত নির্বাচন কমিটি প্রক্রিয়াটি তত্ত্বাবধান করবে। আন্দোলন কৌশল ও অনুশাসন টিম প্রশ্নের স্পষ্টতা, সদৃশতা, ভুল ইত্যাদি পরীক্ষা করবে।
শুভেচ্ছান্তে,
আন্দোলন কৌশল ও অনুশাসন
''এই বার্তা-টি বোর্ড নির্বাচন কার্যকরী দল এবং নির্বাচন কমিটির পক্ষ থেকে পাঠানো হয়েছে।''
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ০৯:০৫, ১২ জুলাই ২০২২ (ইউটিসি)
==উইকিম্যানিয়া ২০২২ – বাংলাদেশ পর্বে অংশগ্রহণের আহ্বান ==
[[চিত্র:Wikimania Bangladesh Logo Horizontal.svg|right|250px|frameless]]
প্রিয় সবাই, অত্যন্ত আনন্দের সাথে জানাচ্ছি যে, [[w:উইকিম্যানিয়া|উইকিম্যানিয়া]] ২০২২ উপলক্ষ্যে আগামী ১২ আগস্ট উইকিমিডিয়া বাংলাদেশ বাংলাদেশের রাজধানী ঢাকায় '''উইকিম্যানিয়া ২০২২ – বাংলাদেশ পর্ব''' নামে একটি দিনব্যাপী সম্মেলনের আয়োজন করেছে। এই সম্মেলনে উইকিমিডিয়া প্রকল্পের অন্তর্ভুক্ত যেমন উইকিপিডিয়া, অন্যান্য উইকিসমূহ, মুক্ত জ্ঞান ও বিষয়বস্তু সম্পর্কিত সামাজিক এবং প্রযুক্তিগত দিক উপস্থাপনা ও আলোচনা করা হবে। বাংলাদেশে অবস্থানকারী উইকিমিডিয়ানরা এই সম্মেলনে অংশগ্রহণ করতে পারবেন। আসনসংখ্যা সীমিত হবার কারণে এই অনুষ্ঠানে অংশগ্রহণ নিশ্চিত করার লক্ষ্যে অংশগ্রহণের প্রাথমিক আবেদন সংগ্রহ করা হচ্ছে। আবেদন করতে [https://docs.google.com/forms/d/e/1FAIpQLSekWAubA6o1ZHE_WXY6O880ym7w16R1PHW_DeRaPNIM4kdIdw/viewform এখানে ক্লিক করুন]।
উইকিম্যানিয়া ২০২২ এর বৈশ্বিক আয়োজন ১১ - ১৪ আগস্ট ২০২২ অনলাইনে অনুষ্ঠিত হবে। এই আয়োজনে অংশগ্রহণ করতে ইচ্ছুক
বাংলাদেশে বসবাসকারী উইকিমিডিয়ানদের জন্য উইকিমিডিয়া বাংলাদেশ কর্তৃক সীমিত সংখ্যক ইন্টারনেট ডাটা প্যাকেজ বৃত্তি দেয়া হবে। আপনি যদি বৃত্তি পেতে আগ্রহী হন, তবে [https://docs.google.com/forms/d/e/1FAIpQLSez6uADSg0DtimssWHK510rAaDKpAPOPz_qHvvXgkBnJQA7sQ/viewform এই গুগল ফর্মটি] পূরণ করুন। জমা পড়া প্রাথমিক আবেদনগুলো যাচাই-বাছাইয়ের পরে বৃত্তিপ্রাপ্তদের তালিকা চূড়ান্ত করা হবে।
বিস্তারিত তথ্যের জন্য ভিজিট করুন: https://bd.wikimedia.org/s/235
আবেদন গ্রহণ ''' ১ আগস্ট, ২০২২''' পর্যন্ত চলবে। মূল আয়োজকদলের পক্ষে [[ব্যবহারকারী:MdsShakil|MdsShakil]] ([[ব্যবহারকারী আলাপ:MdsShakil|আলাপ]]) ১৫:১৩, ২৭ জুলাই ২০২২ (ইউটিসি)
== উইকিম্যানিয়া ২০২২ — বাংলাদেশ পর্ব: উপস্থাপনা সেশনের আহ্বান ==
[[চিত্র:Wikimania Bangladesh Logo With Text.svg|100px|right|উইকিম্যানিয়া বাংলাদেশের লোগো]]
সুপ্রিয় সবাই,
উইকিম্যানিয়া ২০২২ উপলক্ষ্যে [[w:উইকিমিডিয়া বাংলাদেশ|উইকিমিডিয়া বাংলাদেশ]] কর্তৃক আয়োজিত [[:wmbd:উইকিম্যানিয়া বাংলাদেশ, ২০২২|উইকিম্যানিয়া ২০২২ বাংলাদেশ পর্বে]] [[:wmbd:উইকিম্যানিয়া বাংলাদেশ, ২০২২/উপস্থাপনা|উপস্থাপনা সেশনের আহ্বান]] করা হয়েছে। এই আয়োজনে ৬টি বিষয়ভিত্তিক উপস্থাপনা এবং ৬টি সংক্ষিপ্ত উপস্থাপনা সেশন নেওয়ার সুযোগ রয়েছে। প্রতিটি বিষয়ভিত্তিক উপস্থাপনার জন্য সময় থাকছে ১৫ মিনিট এবং প্রতিটি সংক্ষিপ্ত উপস্থাপনার জন্য সময় থাকছে ৫ মিনিট। সময়ের অপ্রতুলতার কারণে উপস্থাপনার সংখ্যা বৃদ্ধির সুযোগ না থাকায় জমা পড়া উপস্থাপনা প্রস্তাবের সংখ্যা বেশি হলে গুরুত্ব অনুসারে উপস্থাপনাসমূহ চূড়ান্তভাবে নির্বাচন করা হবে। আগ্ৰহীদের [https://docs.google.com/forms/d/e/1FAIpQLScBlKBK5bsZ41D2gZr0mVbNP14JBTh0UMfZt5JCVY2ehSkM7w/viewform এই গুগল ফর্মটি] পূরণ করার জন্য অনুরোধ করা হচ্ছে। উল্লেখ্য যে, '''৩ আগস্ট''' পর্যন্ত অনুরোধ গ্ৰহণ চলবে এবং '''৬ আগস্ট''' যাচাই-বাছাই করে ফলাফল জানানো হবে।
মূল আয়োজক দলের পক্ষে, [[ব্যবহারকারী:MdsShakil|MdsShakil]] ([[ব্যবহারকারী আলাপ:MdsShakil|আলাপ]]) ১৫:১৩, ২৭ জুলাই ২০২২ (ইউটিসি)
== রবীন্দ্রনাথ শব্দটি কত অক্ষরের? ==
রবীন্দ্রনাথ শব্দের অক্ষর সংখ্যা পাঁচ না চার? মতামত দিন। [[ব্যবহারকারী:Salil Kumar Mukherjee|Salil Kumar Mukherjee]] ([[ব্যবহারকারী আলাপ:Salil Kumar Mukherjee|আলাপ]]) ০৪:৫৯, ৩ আগস্ট ২০২২ (ইউটিসি)
== WikiConference India 2023: Initial conversations ==
Dear Wikimedians,
Hope all of you are doing well. We are glad to inform you to restart the conversation to host the next WikiConference India 2023 after WCI 2020 which was not conducted due to the unexpected COVID-19 pandemic, it couldn't take place. However, we are hoping to reinitiate this discussion and for that we need your involvement, suggestions and support to help organize a much needed conference in February-March of 2023.
The proposed 2023 conference will bring our energies, ideas, learnings, and hopes together. This conference will provide a national-level platform for Indian Wikimedians to connect, re-connect, and establish their collaboration itself can be a very important purpose on its own- in the end it will empower us all to strategize, plan ahead and collaborate- as a movement.
We hope we, the Indian Wikimedia Community members, come together in various capacities and make this a reality. We believe we will take learnings from earlier attempts, improve processes & use best practices in conducting this conference purposefully and fruitfully.
Here is a survey [https://docs.google.com/forms/d/e/1FAIpQLSfof80NVrf3b9x3AotDBkICe-RfL3O3EyTM_L5JaYM-0GkG1A/viewform form] to get your responses on the same notion. Unfortunately we are working with short timelines since the final date of proposal submission is 5 September. We request you please fill out the form by 28th August. After your responses, we can decide if we have the community need and support for the conference. You are also encouraged to add your support on [[:m:WikiConference_India_2023:_Initial_conversations|'''this page''']], if you support the idea.
Regards, [[User:Nitesh Gill|Nitesh Gill]], [[User:Nivas10798|Nivas10798]], [[User:Neechalkaran|Neechalkaran]], ০৬:৩৯, ২৪ আগস্ট ২০২২ (ইউটিসি)
<!-- https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/South_Asia_Village_Pumps&oldid=23115331-এর তালিকা ব্যবহার করে বার্তাটি ব্যবহারকারী:KCVelaga@metawiki পাঠিয়েছেন -->
== ২০২২ ট্রাস্টি বোর্ডের নির্বাচনের জন্য সম্প্রদায়ের ভোটদান শুরু হয়েছে ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open| বার্তাটি মেটা-উইকিতে আরও একাধিক ভাষায় অনুবাদ করা হয়েছে।]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open}}&language=&action=page&filter= {{int:please-translate}}]</div>''
প্রিয় সবাই,
[[m:Special:MyLanguage/Wikimedia Foundation elections/2022|২০২২ ট্রাস্টি বোর্ড নির্বাচনের জন্য]] সম্প্রদায়ের ভোটদান শুরু হয়েছে। ভোট দিতে আপনাকে সাহায্য করার জন্য নিচে কিছু তথ্য দেওয়া হয়েছে:
* [https://board-elections-compass-2022.toolforge.org/ নির্বাচনী কম্পাস] দেখুন যা ১৫টি ভিন্ন বিষয়ে প্রার্থীদের দৃষ্টিভঙ্গি ব্যাখ্যা করে।
* [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|প্রার্থীদের বিবৃতি]] ও [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Affiliate_Organization_Participation/Candidate_Questions|অ্যাফিলিয়েট প্রশ্নের উত্তর]] পড়ুন।
* [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Apply to be a Candidate|ট্রাস্টি বোর্ড যে দক্ষতাগুলির প্রত্যাশা করছে]] এবং [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|বিশ্লেষণ কমিটি কীভাবে প্রত্যাশিত দক্ষতা রয়েছে এমন প্রার্থীদের চিহ্নিত করেছে]] সে সম্পর্কে আরও জানুন।
* [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Campaign_Videos|ভিডিও দেখুন যেখানে প্রার্থীরা সম্প্রদায়ের দ্বারা প্রস্তাবিত প্রশ্নের উত্তর দিয়েছেন]]।
ভোট দিতে [[Special:SecurePoll/vote/Wikimedia_Foundation_Board_Elections_2022|সিকিউরপোলে]] যান। '''ভোটের সময়কাল ২৩ আগস্ট ০০:০০ ইউটিসি থেকে ৬ সেপ্টেম্বর ২০২২ ২৩:৫৯ ইউটিসি পর্যন্ত।''' নিজের যোগ্যতা যাচাই করতে [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Voter_eligibility_guidelines|ভোটার যোগ্যতা পাতা]] দেখুন।
শুভেচ্ছান্তে,
আন্দোলন কৌশল ও অনুশাসন
''এই বার্তাটি বোর্ড নির্বাচন কার্যকরী দল এবং নির্বাচন কমিটির পক্ষ থেকে পাঠানো হয়েছে।''<br /><section end="announcement-content" />
[[ব্যবহারকারী:CSinha (WMF)|CSinha (WMF)]] ([[ব্যবহারকারী আলাপ:CSinha (WMF)|আলাপ]]) ১২:০২, ২৬ আগস্ট ২০২২ (ইউটিসি)
kk8b580m4l9fexzfm4tbyuqfwuqfep3
অংশী
0
2666
133028
113093
2022-08-27T08:10:00Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অংশী.wav|অডিও}}
=== ব্যুৎপত্তি ===
* (''[[সংস্কৃত]]'') অংশ+ ইন্ = অংশী
==={{অর্থ}}===
{{adjective-category|bn}}
# ভাগী; যে অংশ করিয়া লয়; যে ভাগ পাইতে পারে; ভাগার্হ; (কিছুতে) যার অংশ আছে; অংশবিশিষ্ট
# [অংশ বিশিষ্ট] অংশধর; অংশের আধার। যেমন "কৃষ্ণ যদি অংশ হইত অংশী নারায়ণ।"-চৈতন্যচরিতামৃত।
# '''স্ত্রীলিঙ্গ''' অং̑শিনী- অংশবিশিষ্টা; অংশধরা; যা হতে অংশ সমুহ প্রকাশ হয়। যেমন "অবতরি কৃষ্ণ যৈছে করেন অবতার। অংশিনী রাধার হৈতে তিন গনের বিস্তার।"-চৈতন্যচরিতামৃত।
==== সম্পর্কিত শব্দ ====
* [[অংশীদার]]
* [[অংশীদারি]]
===={{অনুবাদসমূহ}}====
{{অনুবাদ-শীর্ষ}}
* {{en}}: share-holder, allottee, co-sharer, partner, share
* {{ta}}: [[பங்காளி]], [[பங்குதாரர்]]
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
mnw5fevma63qdwharor80ygaidhztt4
অকর্মা
0
2667
133021
111812
2022-08-27T08:07:29Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকর্মা.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# [[কোন]] কাজের নয় এমন;
# [[অলস]];
# কুকর্মকারী;
# অন্যায়কারী।
12i4zd3qo8ol1hzi94spl8xs3xoy6to
অকপটচিত্ত
0
2824
133017
82237
2022-08-27T08:07:22Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকপটচিত্ত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[সাহসী]]।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
tr9sdtcr6r8wp4uq55637y1hhfgy6fh
অতিপ্রজ
0
2911
133024
123820
2022-08-27T08:07:44Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অতিপ্রজ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
* প্রচুর পরিমাণে উৎপাদনশীল
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অতিপ্রজ}}
1uu4rugtgnb61v6ub7zeuewk76lo23h
অংশুমালী
0
3088
133029
108951
2022-08-27T08:10:17Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অংশুমালী.wav|অডিও}}
==={{অর্থ}}===
*{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# [মূল-অংশুমালিন্।]
# '''ব্যুৎপত্তি''' [[অংশুমালা]] + ইন্-স্ত্য- যার [[অংশুমালা]] আছে]
# সূর্য্য।
*{{adjective-category|bn}}
#কিরণমালাবিশিষ্ট। যেমন "দিনমণি যেন অংশুমালী।"-মেঘদূত।
#'''স্ত্রীলিঙ্গ''' - অংশুমালিনী।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
:* {{en}}: Sun
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
ko8146ptcgx59lhthjfl60kqauw88h7
অকপট
0
3095
133016
82236
2022-08-27T08:07:21Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকপট.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# কপটতাহীন
# [[সরল]]
# ছলশূন্য
# ছলনাশূন্য
== {{ভাষা|en}} ==
# Not hypocritical
# Frank
# sincere
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
khllkklhwzhhosw3vrl47yqcy5dhfu9
অকরণীয়
0
3099
133019
115953
2022-08-27T08:07:24Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকরণীয়.wav|অডিও}}
=== বিশেষণ ===
{{বিশেষণ|bn}}
* করণের অযোগ্য
* অকর্তব্য
=== ব্যবহার ===
* অকরণীয় কার্য
* অকরণীয় [[ঘর]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
ayin6wisvzxndiiiay4z7zwli7yme1n
অকর্তব্য
0
3102
133020
123646
2022-08-27T08:07:26Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকর্তব্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# [[অনুচিত]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকর্তব্য}}
2hs72mwcz5p59050nrskj3u48o4hpe5
অকাতর
0
3109
133023
82275
2022-08-27T08:07:34Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকাতর.wav|অডিও}}
=== ব্যুৎপত্তি ===
ন + কাতর
=== বিশেষণ ===
{{বিশেষণ|bn}}
* [[অব্যাকুল]]
* [[নির্ভয়]]
===ক্রিয়া বিশেষণ===
{{ক্রিয়া বিশেষণ|bn}}
* অক্লেশে
[[বিষয়শ্রেণী:বাংলা ক্রিয়া বিশেষণ]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
lvplu2cjyct1kcsklki03kng106lofy
অকলঙ্কিত
0
3165
133022
123655
2022-08-27T08:07:31Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকলঙ্কিত.wav|অডিও}}
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকলঙ্কিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# [[কলঙ্কী]] নয় এমন
# [[সাধু]]
# [[নির্দোষ]]
=== সমার্থক শব্দ ===
* [[অকলঙ্কী]]
=== আরও দেখুন ===
# [[অকলঙ্ক]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{stub}}
{{পূর্বনির্ধারিতবাছাই:অ, অকলঙ্কিত}}
95k16jgndqd6lc778glbzahl7ous8x9
অইছন
0
6409
133013
82213
2022-08-27T08:07:13Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অইছন.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[সেইরূপ]]
#[[সেইরকম]]
== ক্রিয়া-বিশেষণ ==
#[[ওইভাবে]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
[[বিষয়শ্রেণী:ক্রিয়া-বিশেষণ]]
l0rtb4k1i0m3stlzk553v0ljhz1hhr7
অংশাঙ্কিত
0
6411
133012
82173
2022-08-27T08:07:09Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অংশাঙ্কিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[মাপের]] [[ভাগবিশিষ্ট]]
#[[চিহ্নবিশিষ্ট]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
4vwsd67q0azitpyj1egfm4nqluzz9le
অংশ্যমান
0
6413
133030
111230
2022-08-27T08:10:22Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অংশ্যমান.wav|অডিও}}
=== ব্যুৎপত্তি ===
=== বিশেষণ ===
{{বিশেষণ|bn}}
# [[ভাগ]]/বিভাজিত [[করা]] হচ্ছে [[এমন]]।
==== ব্যবহার টীকা ====
==== সমার্থক শব্দ ====
==== বিপরীতার্থক শব্দ ====
==== উদ্ভূত হয়েছে ====
==== সম্পর্কিত শব্দ ====
==== অনুবাদ ====
=== তথ্যসূত্র ===
জামিল চৌধুরী, [https://archive.org/details/BanglaAcademyAdhunikBanglaAbhidhan2016/page/n20/mode/1up, বাংলা আকাডেমি আধুমিক বাংলা অভিধান, পাতা ২] [https://isbnsearch.org/isbn/9840754947 9840754947]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
0dh2kahi69e4xyg68qpua3w25xwcokt
অকঠোর
0
6417
133032
82226
2022-08-27T08:11:55Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকঠোর.wav|অডিও}}
===ব্যুৎপত্তি===
*[ন + কঠোর]
==={{অর্থ}}===
{{adjective-category|bn}}
# [[অকঠিন]]; যে বস্তু শক্ত নহে।
# যে বিষয় দুরূহ নহে; সহজ; সরল; সুখবোধ্য।
# যা উগ্র বা রুক্ষ নহে; অকর্কশ।
# [হৃদয়, স্বভাব ইত্যাদি] সদয়; কোমল।
# '''বিশেষ্য'''- অকঠোরতা, অকঠোরত্ব।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
nxmnhj5o55gczl9fb1q2c4ypus4ytjj
অকণ্টক
0
6418
133014
123640
2022-08-27T08:07:18Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকণ্টক.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কণ্টকহীন
#[[কাঁটাশূন্য]]
#[[নিষ্কণ্টক]]
== আলংকারিক অর্থে ==
#[[নিরুপদ্রব]]
#নিঃশত্রু
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকণ্টক}}
21rxway5xc71fynz3n1eedj3qwi6f6s
অকথিত
0
6420
133015
82232
2022-08-27T08:07:20Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকথিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[অনুক্ত]]
#না-বলা
#[[অনুচ্চারিত]]
:উদাহরণ:-'''অকথিত''' কাহিনী
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
o804fe87jh6rm15ypqjgdkr5n4yfv0y
অকম্প
0
6421
133018
123644
2022-08-27T08:07:24Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== উচ্চারণ ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-অকম্প.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কম্পনহীন
#[[স্থির]]
#[[নিশ্চল]]
#:উদাহরণ:'''অকম্প''' প্রদীপশিখা
#[[অবিচলিত]]
#:উদাহরণ:'''অকম্পিত''' হৃদয়ে
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকম্প}}
58q5xo4g36mtiadh0f1awbok5f2b0kp
অকর
0
6422
133052
82242
2022-08-27T09:49:26Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকর.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
#করহীন, হস্তহীন
#[[নিষ্কর]],[[শুল্ক]] বা করের [[অযোগ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
665r8pa111bk7kkv3mn8nrym5rmpmm2
133067
133052
2022-08-27T09:50:57Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকর.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
# করহীন, হস্তহীন
# [[নিষ্কর]],[[শুল্ক]] বা করের [[অযোগ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
6woatkofpjarjjtmz5m3f4naact9zxk
অকলুষিত
0
6430
133054
82262
2022-08-27T09:49:42Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকলুষিত.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
#দোষযুক্ত বা মালিন্যযুক্ত [[নয়]] এমন
#[[নির্দোষ]]
#[[অমলিন]]
#:উদাহরণ:'''অকলুষিত''' চরিত্র
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
kof90nj9tdwvk1fy2ic8rya7t1j51nx
অকাণ্ড
0
6606
133057
82274
2022-08-27T09:49:55Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাণ্ড.wav}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[গুঁড়ি]] বা কাণ্ডহীন বৃক্ষ
===বিশেষণ===
{{বিশেষণ|bn}}
#[[অঘটনীয়]]
#আকস্মিক, অতর্কিত
#কাণ্ডহীন
ctzk7qrkj8gdlsgfgvuifls4nqd744m
অকাম
0
6608
133058
82277
2022-08-27T09:49:58Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাম.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
#নিষ্কাম, বাসনাশূন্য, কাম বা ভোগবাসনা নেই এমন।
#জিতেন্দ্রিয়
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[অকাজ]]
#[[কুকাজ]]
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
[[বিষয়শ্রেণী:আঞ্চলিক শব্দ]]
662ak2de33227s8itya1hnt1waomfwb
অকাম্য
0
6609
133059
123665
2022-08-27T09:50:20Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাম্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[অবাঞ্ছনীয়]]
#অনভিপ্রেত
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকাম্য}}
6exe3g4t7l7ub3yhdh50d48eb1u2vvl
অকায়
0
6610
133060
82280
2022-08-27T09:50:44Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকায়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[দেহ]]হীন
#[[অশরীরী]]
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[পরমাত্মা]]
#রাহুগ্রহ
93h7w0wznvtygakducqc4s6yzx0w2rg
অ-কার
0
6613
133044
108936
2022-08-27T09:49:06Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অ-কার.wav}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[অ]] [[বর্ণ]] [[বা]] [[ধ্বনি]] ।
io4te54367tdnkafkotj1dy47i7u2c1
অকারান্ত
0
6614
133061
82284
2022-08-27T09:50:45Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকারান্ত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#অন্তে অ [[ধ্বনি]]যুক্ত।
c8ofp4x7vpza52a6e3c57sjo7ysmaxv
অকার্য
0
6615
133062
82285
2022-08-27T09:50:47Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকার্য.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[অকাজ]], বাজে কাজ
#[[কুকাজ]], অনুচিত কাজ
#অবৈধ কাজ
===বিশেষণ===
{{বিশেষণ|bn}}
#অকরণীয়, অকর্তব্য
djtqectnckl1722yddv9xonqo957ewc
অকালি
0
6616
133064
82300
2022-08-27T09:50:50Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকালি.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
# [[শিখ]]সম্প্রদায়বিশেষ (যারা উপাসনাকালে অকালপুরুষকে অর্থাৎ অবিনশ্বর আত্মাকে ভজনা করে)
dw71v3ejydvxrubghsjmxgbri0ntnd6
অকীক
0
6618
133066
82308
2022-08-27T09:50:53Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকীক.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#ঈষৎ নীলাভ
#ঈষৎ শ্বেতাভ শ্যামল পাণ্ডুবর্ণ মূল্যবান ভারতীয় প্রস্তরবিশেষ।
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
rl4je5sx08n55r1kckayetd7pb46plm
অকীর্তিত
0
6630
133069
123671
2022-08-27T09:50:58Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকীর্তিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#অপ্রচারিত
#অঘোষিত
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকীর্তিত}}
onnpo0wud8z06g59wbrfyl9gfl966gy
অকুব
0
6634
133070
82316
2022-08-27T09:51:03Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকুব.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#আক্কেল
#কাণ্ডজ্ঞান
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
tbgzz5grfxf6w4qsgdpt5stxenukdu0
অকুলীন
0
6636
133071
82321
2022-08-27T09:51:07Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকুলীন.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কুলীন বংশজাত নয় এমন
#বংশমর্যাদাহীন
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
8dnn5flqoxz7a40aoglbkktm32z36u1
অকুশল
0
6637
133072
82322
2022-08-27T09:51:09Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকুশল.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#অমঙ্গল
===বিশেষণ===
{{বিশেষণ|bn}}
#অপটু
#কুশল বা দক্ষ নয় এমন
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
7ex70trlftf39mig14enie3w46xsfn5
অকৃতদার
0
6643
133074
82336
2022-08-27T09:51:14Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃতদার.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[অবিবাহিত]]
#দার পরিগ্রহ করেনি এমন
==সংস্কৃত==
ন+কৃতদার
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
228x9ty9yqx636mdegee5l9bymdlyot
অকৃততাপরাধ
0
6644
133073
82335
2022-08-27T09:51:12Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃততাপরাধ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#অপরাধ করেনি এমন।
#নিরপরাধ
==সংস্কৃত==
ন+কৃত+অপরাধ
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
hgcjgdfrtby3slhdgkwid81jdndvfc4
অকৃতার্থ
0
6646
133077
82338
2022-08-27T09:51:17Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃতার্থ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#বিফলমনোরথ
#অসফল
== সংস্কৃত==
ন+কৃতার্থ
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
by5wwfrvugdeid69c1cvt2hw4zyobj8
অকৃতী
0
6647
133078
109489
2022-08-27T09:51:25Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃতী.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#অক্ষম, অপটু
#সাফল্যহীন
===বিশেষ্য===
{{বিশেষ্য|bn}}
#অকৃতিত্ব
==সংস্কৃত==
ন+ক্রিতিন
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
hsn42qe8tdcljgbt6qxq79qg1avic0r
অকৃতদ্বাহ
0
6648
133076
82337
2022-08-27T09:51:15Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃতদ্বাহ.wav|অডিও}}
{{বিশেষণ|subject=পুং}}
#অবিবাহিত
#উদ্বাহ অর্থাৎ বিবাহ করেনি এমন
==সংস্কৃত==
ন+কৃত+উদ্বাহ
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
005llcp80gyk1op46jfnjujwf4azupj
অকৃত্যকারী
0
6657
133080
123673
2022-08-27T09:51:31Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃত্যকারী.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কুকর্মকারী
#যে অকাজ বা কুকাজ করে
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকৃত্যকারী}}
1788b5igywf75rge5sp7qynh40wuwyn
অকৃষ্ট
0
6658
133082
123674
2022-08-27T09:51:34Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃষ্ট.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কর্ষণ করা বা চাষ হয়নি এমন
#অচষা
#পতিত বা অনাবাদি জমি
==সংস্কৃত==
ন+কৃষ্ট
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকৃষ্ট}}
ewiauykg7muepwf9a41saqd88k4ige9
অকৈতব
0
6663
133083
82353
2022-08-27T09:51:36Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৈতব.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#কৈতব অর্থাৎ ছল নেই এমন
#ছল করে না এমন
#অকপট, ছলনাহীন
#সত্য
==সংস্কৃত==
ন+কৈতব
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
grwurhvp816dgklvuyjkggf5r54xiwo
অক্টোপাস
0
6666
133084
127185
2022-08-27T09:51:41Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্টোপাস.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[আট]]টি [[বাহু]] বা [[শুঁড়]] বিশিষ্ট [[সামুদ্রিক]] প্রানিবিশেষ
#[[চতুর্দিক]] থেকে [[মারাত্মক]] [[আক্রমণ]]।
=== উদ্ধৃতি ===
* {{quote-book|bn|date=2020-12-10|author=Many authors|title=জয়ঢাক বসন্ত ২০১৮ joydhak WEBZINE spring2018 issuePDF: joydhak WEBZINE|publisher=Joydhak Webzine
|text=অক্টোপাস সমুদ্রের সবচেয়ে অদ্ভুত , এবং কৌতূহলােদ্দীপক প্রাণীদের মধ্যে অন্যতম । অক্টোপােডা অর্ডার - এর প্রাণী অক্টোপাস সমুদ্রের{{nb...}}}}
* {{quote-book|bn|date=2020-09-01|author=Bangachi Team|title=ব্যাঙাচি–সমুদ্র: ব্যাঙের ছাতার বিজ্ঞান কর্তৃক প্রকাশিত ম্যাগাজিন|publisher=ব্যাঙাচি
|text=অক্টোপাস । কিছুদিন আগে সে ডিম দিয়েছে । তার দিতে হয় । অক্সিজেনের যাতে কোনােরকম অভাব বাসায় ছােটো ছােটো অশ্রদানার মতাে ঝুলছে ৪৬০{{nb...}}}}
* {{quote-book|bn|date=2017-07-19|author=প্রেমেন্দ্র মিত্র Premendra Mitra|title=কিশোর গল্প সঞ্চয়ন Kishor Galpa Sanchayan|publisher=Parul Prakashani Private Limited|isbn=9789386708199
|text=সাগর-দানব আসলে ওই ছোটো অক্টোপাস। সমুদ্রের খুব গভীর স্তরে যে তার বাস রবারের থলে ফেটে যাবার পর তার দেহ ফেপে ফুলে ওঠাই তার প্রমাণ।}}
* {{quote-book|bn|year=1980|title=Bāṃlā granthapañjī: kraẏalabhya Bāṃlā granthera bishaẏānuga tālikā|page=339}}
* {{quote-book|bn|date=2020-08-28|author=Debjyoti Bhattacharyya|title=জয়ঢাক শীত ২০১৯ joydhak WEBZINE winter 2019 issuePDF: joydhak WEBZINE|publisher=joydhak WEBZINE
|text=অভিযাত্রীদের সাবধান করে দেওয়া ছিল অক্টোপাস সম্বন্ধে । ভেলা তখন সমুদ্রের যে অংশ দিয়ে যাচ্ছিল সে অঞ্চলটা অক্টোপাস সমৃদ্ধ ।}}
* {{quote-book|bn|year=1969|author=Aloka Chattopadhyaya|title=Kr̥shñakali
|text=জলের ভেতর থেকে একটা অক্টোপাস এসে তাকে কঠিন বাঁধনে বেঁধে ভয়ে শরীর কাঁপছে । জল থেকে মুখ তুলে দেখল মুনিয়া তাকে ফেলেই পালাচ্ছে ।}}
* {{quote-book|bn|date=2020-09-01|author=Multiple authors|title=জয়ঢাক শরৎ ২০১৯ joydhak WEBZINE Autumn 2019 issuePDF: joydhak WEBZINE|publisher=joydhak WEBZINE
|text=অভিজ্ঞ লােকেরা আমাদের পইপই করে সাবধান করে দিয়েছিলেন যে সামুদ্রিক জীবটা সম্পর্কে সেটা হল অক্টোপাস । কেননা তারা ভেলার ওপরে উঠেও{{nb...}}}}
* {{quote-book|bn|author=সুকুমার রায়|title=সুকুমার রায় প্রবন্ধ সংকলন - Boiraag Publication|publisher=বইরাগ পাবলিকেশন
|text=ডুবুরীরা হাঙরের চাইতেও ভয় করে ' অক্টোপাস'কে । পিটার স্নেল একজন নামজাদা ডুবুরী ছিল । সে একবার জলে নামতেই একটা প্রকাণ্ড অক্টোপাস{{nb...}}}}
* {{quote-book|bn|author=Brian Stewart|title=Donkey Ollie Sunday School Lessons... Bengali Book One: বিশ্বকে আরও উন্নত করা Making the World Better with Jesus|publisher=Boat Angel Outreach Center
|text=আমরা মহাসাগরের নিচে অসহায় হয়ে পরেছিলাম এবং একটা বিরাট অক্টোপাস আমাদের । মারতে আসছিল | | “ এইটা ছিল খুবুই ভয়ংকর জিহু বলল{{nb...}}}}
* {{quote-book|bn|year=1989|author=Jāmālauddīna Mollā|title=Samagra Jāmālauddīna Mollā
|text=৪৩ উত্তর যাত্রাবাড়ি জানুয়ারী ২৫ , ১৯৭৩ অক্টোপাস কখনাে সহজ চোখে দেখা নয় । লেখা নেই নাম । কীতিমান আধিক্যের জাঁহাবাজ নরপতি নয়নয়{{nb...}}}}
* {{quote-book|bn|year=1985|author=Ema. Āi Caudhurī|title=Seṇṭa Mārṭina
|text=মাছ ও নানাপ্রকার জীব যেমন অক্টোপাস , জেলিফিস , স্কুইড , বিভিন্ন রকমের সােলাস্কা , নটিলয়েড় , চিংড়ি , সরীসৃপ ও বহ , বড় বড় সাগরের{{nb...}}}}
* {{quote-book|bn|year=1992|author=Ema. Esa. Ema Nāsirula Isalāma|title=Bāṃlādeśera rāshṭranīti
|text=ঐ টাইগারশার্ক আর হ্যামারহেডের জৈবিক মিলনে সৃষ্টি হল এক শঙ্কর প্রাণী , তার নাম অক্টোপাস । ধরুন , টাইগারশার্কটি হল একচেটিয়া{{nb...}}}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্টোপাস}}
gvs2aras19eu7qka86vq1vs70b79k2x
অয়াক্ত
0
6681
133085
127183
2022-08-27T09:51:43Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ত (বিশেষ্য).wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[সময়]]
#[[বার]]
=== উদ্ধৃতি ===
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ১৯ বর্ষ | ১৬তম সংখ্যা | ৩১শে ডিসেম্বর, ১৯৬৫ইং | The Fortnightly Ahmadi - New Vol: 19 Issue: 16 - Date: 31st December 1965|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ছহী বোখারীতে বর্ণিত আছে যে, আল্লাতালা প্রথমে উম্মতে মোহাম্মদীয়ার জন্য পঞ্চাশ অক্ত নামায ফরজ করে ছিলেন, কিন্তু নবী করীমের (সাঃ){{nb...}}}}
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ২১ বর্ষ | ১ম সংখ্যা | ১৫ই মে, ১৯৬৭ইং | The Fortnightly Ahmadi - New Vol: 21 Issue: 01 - Date: 15th May 1967|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ভাইবাল জনমশাখির ১৯৫ পৃষ্ঠায় বলছেন, 'পাঞ্চ নমাজ পাঞ্চ অক্ত রোজে তরহিয়া পান্থান।' অর্থাৎ পঁাচ অক্ত নমাজ এবং ত্রিশ রোজা ফরজ।}}
==আরবি==
*[[বখৎ]]
==হিন্দি==
*[[বখত]]শ্য
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ত (বিশেষ্য)}}
p2urhvsdcdkvjxubbkj66uvm04g2syy
133113
133085
2022-08-27T09:54:00Z
Aishik Rehman
5592
Aishik Rehman [[অক্ত (বিশেষ্য)]] পাতাটিকে [[ওয়াক্ত (বিশেষ্য)]] শিরোনামে কোনো পুনর্নির্দেশনা ছাড়াই স্থানান্তর করেছেন
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ত (বিশেষ্য).wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[সময়]]
#[[বার]]
=== উদ্ধৃতি ===
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ১৯ বর্ষ | ১৬তম সংখ্যা | ৩১শে ডিসেম্বর, ১৯৬৫ইং | The Fortnightly Ahmadi - New Vol: 19 Issue: 16 - Date: 31st December 1965|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ছহী বোখারীতে বর্ণিত আছে যে, আল্লাতালা প্রথমে উম্মতে মোহাম্মদীয়ার জন্য পঞ্চাশ অক্ত নামায ফরজ করে ছিলেন, কিন্তু নবী করীমের (সাঃ){{nb...}}}}
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ২১ বর্ষ | ১ম সংখ্যা | ১৫ই মে, ১৯৬৭ইং | The Fortnightly Ahmadi - New Vol: 21 Issue: 01 - Date: 15th May 1967|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ভাইবাল জনমশাখির ১৯৫ পৃষ্ঠায় বলছেন, 'পাঞ্চ নমাজ পাঞ্চ অক্ত রোজে তরহিয়া পান্থান।' অর্থাৎ পঁাচ অক্ত নমাজ এবং ত্রিশ রোজা ফরজ।}}
==আরবি==
*[[বখৎ]]
==হিন্দি==
*[[বখত]]শ্য
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ত (বিশেষ্য)}}
p2urhvsdcdkvjxubbkj66uvm04g2syy
133125
133113
2022-08-27T09:54:24Z
Aishik Rehman
5592
Aishik Rehman [[ওয়াক্ত (বিশেষ্য)]] পাতাটিকে [[অয়াক্ত]] শিরোনামে কোনো পুনর্নির্দেশনা ছাড়াই স্থানান্তর করেছেন
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ত (বিশেষ্য).wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[সময়]]
#[[বার]]
=== উদ্ধৃতি ===
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ১৯ বর্ষ | ১৬তম সংখ্যা | ৩১শে ডিসেম্বর, ১৯৬৫ইং | The Fortnightly Ahmadi - New Vol: 19 Issue: 16 - Date: 31st December 1965|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ছহী বোখারীতে বর্ণিত আছে যে, আল্লাতালা প্রথমে উম্মতে মোহাম্মদীয়ার জন্য পঞ্চাশ অক্ত নামায ফরজ করে ছিলেন, কিন্তু নবী করীমের (সাঃ){{nb...}}}}
* {{quote-book|bn|author=মোহাম্মদ হাবিবুল্লাহ্ | Mohammad Habibullah|title=পাক্ষিক আহ্মদী - নব পর্যায় ২১ বর্ষ | ১ম সংখ্যা | ১৫ই মে, ১৯৬৭ইং | The Fortnightly Ahmadi - New Vol: 21 Issue: 01 - Date: 15th May 1967|publisher=Ahmadiyya Muslim Jama'at Bangladesh
|text=ভাইবাল জনমশাখির ১৯৫ পৃষ্ঠায় বলছেন, 'পাঞ্চ নমাজ পাঞ্চ অক্ত রোজে তরহিয়া পান্থান।' অর্থাৎ পঁাচ অক্ত নমাজ এবং ত্রিশ রোজা ফরজ।}}
==আরবি==
*[[বখৎ]]
==হিন্দি==
*[[বখত]]শ্য
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ত (বিশেষ্য)}}
p2urhvsdcdkvjxubbkj66uvm04g2syy
অক্রমিক
0
6698
133086
123681
2022-08-27T09:51:48Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্রমিক.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#বিশৃঙ্খল
#ক্রমহীন
#ধারাবাহিকতাহীন
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্রমিক}}
23zmhxlpqnfrepo52s6qwbx8f4dnoby
অক্রিয়
0
6699
133087
127622
2022-08-27T09:51:54Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্রিয়.wav|অডিও}}
===ব্যুৎপত্তি===
* [[সংস্কৃত]] জাত;
* ন + ক্রিয়া
===বিশেষণ===
{{বিশেষণ|bn}}
# [[কর্মহীন]];
# [[নিষ্ক্রিয়]];
# [[নিরুদ্যম]];
# ধর্মকর্মরহিত।
===বিশেষ্য===
{{বিশেষ্য|bn}}
# ক্রিয়া বা কর্মের [[অতীত]] যিনি অর্থাৎ [[পরমাত্মা]]।
=== উদ্ধৃতি ===
* {{quote-book|bn|year=1993|author=Rebatapriẏa Baṛuẏā|title=Biśuddhimārge Bauddhatattva
|text=কামভূমি , রূপভূমি এবং অরূপভূমি অনুসারে তিন প্রকার অক্রিয় চিত্ত । কামভূমির দুই প্রকার অক্রিয় চিত্তের মধ্যে অহেতুক অক্রিয় চিত্ত{{nb...}}}}
* {{quote-book|bn|year=1980|author=Satyadāsa Maṃgala|title=Gītā mañjushā
|text=ক্রিয়া যিনি সম্পাদন না করেন তিনিই অক্রিয় । ক্রিয়া বলতে শ্রোত এবং শাস্ত্রবিহিত সমস্ত কর্মকেই নির্দেশ করে । এর মধ্যে আবার শ্রৌত{{nb...}}}}
* {{quote-book|bn|year=1964|author=Abani Bhushan Ghosh|title=Buddhite yāra byākhyā cale
|text=মস্তিষ্ক অক্রিয় হয় , তবে সম্পূর্ণ অক্রিয় নাও হতে পারে । নিদ্রার গাঢ়তার তারতম্যে অক্রিয়তারও কম - বেশী হয় ।}}
* {{quote-book|bn|year=1986|title=Śrīmadbhagabadgītā o Śrīman Madhusūdana Sarasvatīkr̥ta ṭīkā: anubāda, bistr̥ta tāt̲paryya, Bhābaprakāśa prabhr̥ti sahita
|text=কারণ এস্থলে ' অক্রিয় ' এই কথাটীর দ্বারাই যখন সৰ্ব্বকৰ্ম্মসন্ন্যাসী এইরূপ অর্থ পাওয়া যায় তখন ' নিরগ্নি ' এই কথাটী নিরর্থক হইয়া{{nb...}}}}
* {{quote-book|bn|year=1971|author=Śibadāsa Bhaṭṭācārya|title=Gītara bāstabasammata artha o byākhyā
|text=আদি সৃষ্টির সক্রিয় ও অক্রিয় অবস্থা আছে । সক্রিয় অবস্থায় এক সৃষ্টি আর একটি সৃষ্টির উদ্ভব , এইভাবে চলিতে থাকে ।}}
* {{quote-book|bn|year=1971|author=Birendranath Biswas|title=Rabīndraśabdakosha
|text=খাণ্ডববনদাহ বাস্তবতার একান্ত অক্রিয় । অনু . passive . পর্বত বা নৈকট্য থেকে বহু দূরে গেছে — সেই সরােবর বিরাজ করে অক্রিয় অর্থাৎ দূরত্ব{{nb...}}}}
* {{quote-book|bn|year=2000|title=Chittagong University journal of arts and humanities
|text=17 ) ( ক ) নিয়ত মিথ্যাদৃষ্টি ( ভ্রান্ত ধারণা ) ( ১ ) অক্রিয় দৃষ্টি : সচরাচর অক্রিয় মানে ক্রিয়াহীন , বা যার কোন কার্যক্রম নেই{{nb...}}}}
* {{quote-book|bn|year=1962|author=Hiranmay Banerjee|title=Rabīndra darśana
|text=যেটি অক্রিয় সত্তা সেটি সক্রিয় সত্তার খানিকটা অনুকল , খানিকটা প্রতিকল । এই আংশিক ভাবে অনুকল সত্তাটিকে নিজের ব্যবহারে লাগিয়ে এই{{nb...}}}}
* {{quote-book|bn|year=1963|author=Sailendra Biswas|title=Samsad English-Bengali Dictionary|page=884}}
* {{quote-book|bn|date=2021-04-27|author=রিচার্ড ডকিন্স|title=দ্য সেলফিশ জিন|publisher=Boierhut Publications
|text=কেন তারা এত অক্রিয় ? মাঝে মাঝে কেন তারা সরাসরি সবকিছুর নিয়ন্ত্রণ নেয় না ? এর উত্তরটা হচ্ছে তারা সেটা করতে পারেনা কারণ সময়ের{{nb...}}}}
* {{quote-book|bn|year=1986|author=Swami Someśvarānanda|title=Dharma o ājakera jijñāsā
|text=প্রথমত depressant— এগুলিতে মনকে কিছুটা অক্রিয় করে দেয় , যেমন codeine , heroin , methadone ইত্যাদি । দ্বিতীয়ত stimulant- এগুলি কাজে উৎসাহ এনে দেয় এবং{{nb...}}}}
* {{quote-book|bn|year=1972|author=Swami Mahadevananda Giri|title=Svāmī Mahādebānanda racanābalī
|text=স্মৃতিতে পূৰ্ত্তাদি কৰ্ম্ম ত্যাগীকে অক্রিয় বলে । জ্ঞান কৰ্ম্মের সমুচ্চয়বাদী কেহ কেহ বলেন নিরগ্নি ও অক্রিয় হইতে নাই ।}}
* {{quote-book|bn|year=1992|author=Rañjitakumāra Mitra|title=Thiyeṭāre dr̥śyera bikāśa o samīkshā
|text=কোন একটি অক্রিয় ' ( Neutral ) বর্ণ ই এই জাতীয় পর্দার জন্য বিশেষ উপযােগী । কালাে , নীল , নীল - সবুজ এবং ধূসর — এই চারটি বর্ণই মঞ্চে{{nb...}}}}
* {{quote-book|bn|year=1963|author=Swami Bidyāraṇya|title=Bhāgabata-dharmera prācīna itihāsa
|text=ইহাতে এই প্রকারে শঙ্কা করা যায়— যদি পরম পুরুষ স্বয়ং অক্রিয় হন , তবে তিনি কি প্রকারে ঈশ্বর হন ও জগৎ সৃষ্টি করেন ?}}
* {{quote-book|bn|year=1972|author=Swami Mahadevananda Giri|title=Svāmī Mahādebānanda racanābalī
|text=গাঢ় নিদ্রাকালে মনক্রিয়া প্রাণে লয় হইয়া থাকে , মন তখন অক্রিয় নিস্পন্দ । যখন স্পন্দন বা ক্রিয়া আরম্ভ হয় তখন মনের অব্যক্তভাব{{nb...}}}}
* {{quote-book|bn|year=1972|author=Sourendra Mohan Sinha|author2=Kumar Bhattacharya|title=Gītā abhidhāna
|text=... সেরূপ ক্রিয়াও যাহার অবিদ্যমান তিনি অক্রিয় ; এরূপ ক্রিয়ার উদাহরণ তপােদানাদি ; অতএব যাহার তপােদানাদি নাই তিনি অক্রিয় ( শ ){{nb...}}}}
* {{quote-book|bn|year=1995|author=Śaṅkarācārya|title=Śaṅkarācāryyera granthamālā: Śrīmadyatīśvara-Śaṅkarācāryya praṇīta granthasamūhera samābeśa
|text=অতএব তােমার বরপ অক্রিয় , ইহা সিদ্ধ হইল । তাই বলিয়াছেন , -সৰ্য্যালােকে মানবগণ যেমন ঘ ঘ কায্যে প্রবৃত্ত হয় , সেই প্রকার{{nb...}}}}
{{পূর্বনির্ধারিতবাছাই:অ, অক্রিয়}}
nbz6txffwwc5i29uqfxuhcq73szo4tv
অক্রূর
0
6710
133089
123683
2022-08-27T09:52:40Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্রূর.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#অকুটিল
#[[সরল]]
#ক্রূরতাহীন
===বিশেষ্য===
{{বিশেষ্য|bn}}
#[[শ্রীকৃষ্ণ|শ্রীকৃষ্ণের]] [[পিতৃব্য]] ([[ইনি]] [[কিশোর]] শ্রীকৃষ্ণকে [[বৃন্দাবন]] [[থেকে]] [[মথুরা]]য় [[নিয়ে]] [[গিয়েছিলেন]])
==সংস্কৃত==
ন+ক্রূর
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্রূর}}
rwjd1b5r62ul5s432yngfmdjtrguwve
অক্রেয়
0
6711
133090
123684
2022-08-27T09:52:42Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্রেয়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#[[ক্রয়]] করবার বা কেনার [[অসাধ্য]] বা [[অযোগ্য]]।
#কেনা [[যায়]] না এমন।
#[[দুর্মূল্য]], [[আক্রা]]
==সংস্কৃত==
ন+ক্রেয়
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্রেয়}}
2ffkeubrd9rsnjl9aomtxmxrkv85swj
অকুমার
0
6879
133147
82317
2022-08-27T10:04:12Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
== {{ভাষা|bn}} ==
{{বিশেষ্য|
# যথার্থ [[কুমার]]
# পাঁচের অধিক বয়সের [[বালক]]}}
===অন্যান্য বানান===
===ব্যুৎপত্তি===
[[সংস্কৃত]] বা [[তৎসম]] '''অ(নঞ্, সম্যক্ অর্থে)+কুমার; নতৎ''' থেকে
===উচ্চারণ===
অকুমার্
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকুমার.wav|অডিও}}
==== ব্যবহার টীকা ====
==== সমার্থক শব্দ ====
==== বিপরীতার্থক শব্দ ====
* [[অকুমারী]]
==== উদ্ভূত হয়েছে ====
==== সম্পর্কিত শব্দ ====
==== আরও দেখুন ====
==== তথ্যসূত্র ====
* {{Cite book|editor=মুহম্মদ এনামুল হক |title=বাংলা একাডেমী ব্যবহারিক বাংলা অভিধান |url= |chapter=অ |publisher=[[বাংলা একাডেমী]] |date=জুন ২০১১ |location=[[ঢাকা]], [[বাংলাদেশ]] |isbn=984-07-4939-0 |page=৪ |quote=}}
==== বহিঃসংযোগ ====
{{DEFAULTSORT:অকুমার}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
3m09jtovze5oh69fidmb462z5lon24s
অপর্ণা
0
6910
133132
124146
2022-08-27T09:54:35Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অপর্ণা.wav|অডিও}}
===বিশেষ্য===
{{বিশেষ্য|bn}}
#যিনি তপস্যাকালে পর্ণ অর্থাৎ গাছের পাতাও খাননি; দুর্গা; পার্বতী
== তথ্যসূত্র ==
* আহমদ শরীফ সম্পাদিত ''বাংলা একাডেমী সংক্ষিপ্ত অভিধান''
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অপর্ণা}}
rjj98xtb3w8f8rlf3y7cb2hc49idhda
অপুত্রক
0
6911
133133
124161
2022-08-27T09:54:37Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অপুত্রক.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
#পুত্রহীন; নিঃসন্তান
==সংস্কৃত==
ন+পুত্র+(সমাসান্ত) ক
== তথ্যসূত্র ==
* আহমদ শরীফ সম্পাদিত ''বাংলা একাডেমী সংক্ষিপ্ত অভিধান''
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অপুত্রক}}
olwrqvnx4vldvyr3fq4eekjljzpcf0y
অগ্র
0
7063
133104
123724
2022-08-27T09:53:45Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্র.wav|অডিও}}
==বিশেষণ==
===বিশেষণ===
{{বিশেষণ|bn}}
#প্রথম, প্রধান
== {{ভাষা|en}} ==
first, primary
==জার্মান==
erste(n)
==তথ্যসূত্র==
↑ রাজশেখর বসু (২০১২) স্ংকলিত ও সম্পাদিত; আধুনিক বঙ্গভাষার অভিধান , ১৩শ সংস্করণ, পৃ.৪৩, এম সি সরকার, কলকাতা থেকে প্রকাশিত।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্র}}
grnni5ep2clm7y0pzkggptqcz1bsocc
টেমপ্লেট:বিশেষ্য-বাংলা
10
7368
133148
114399
2022-08-27T10:05:08Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
{{-bn-}}
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-বিশেষ্য-বাংলা.wav|অডিও}}
==={{ব্যুৎপত্তি}}===
#{{{1|}}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
#{{{2|}}}
==={{সমার্থক শব্দ}}===
#{{{3|}}}
==={{উদ্ভূত}}===
#{{{4|}}}
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
52jqjh5ln27mzo00u8abr5dbwkf8i37
133149
133148
2022-08-27T10:05:45Z
MdsShakil
6871
[[Special:Contributions/MdsShakil|MdsShakil]] ([[User talk:MdsShakil|আলাপ]])-এর সম্পাদিত সংস্করণ হতে [[User:Aishik Rehman|Aishik Rehman]]-এর সম্পাদিত সর্বশেষ সংস্করণে ফেরত যাওয়া হয়েছে
wikitext
text/x-wiki
{{-bn-}}
===উচ্চারণ===
{{অডিও-দেশ-ভাষা|bn}}
==={{ব্যুৎপত্তি}}===
#{{{1|}}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
#{{{2|}}}
==={{সমার্থক শব্দ}}===
#{{{3|}}}
==={{উদ্ভূত}}===
#{{{4|}}}
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
br7tssu1d4wwcdf1w2kdiasfnedduam
অইল
0
7384
133045
82216
2022-08-27T09:49:11Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অইল.wav}}
==={{ভাষা|bn}}===
{{audio-IND-BAN-language|bn}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# অম্লকূচির গাছ -ইহার কষ লাগাইয়া চামড়া নরম, পরিষ্কার ও রং করা হয়
# [সংস্কৃত ব̣লীক, "ব̣লীক নীধ্রে পটল-প্রান্তে,"-অমর◦], চালের ছাঁইচ। ত̆লা, যেমন, ছাঁচ-তলা;
ওল-তলা।
# [শ্রীহট্ট, পূর্ব বঙ্গ] ক্রিয়া, [[হইল]]
{{উৎস-ভাষা|bn}}
nkfhh5pkf84d73pwgdiv5t967ajiwx5
অওঘর্ষণ
0
7385
133046
82221
2022-08-27T09:49:12Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অওঘর্ষণ.wav}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# সঙ্গীতের স্বরের [[ঐক্য]]
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: harmony
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
ma8vhjyszqned4ou4xxdkvzz8f617ra
অওরো
0
7386
133047
82222
2022-08-27T09:49:14Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অওরো.wav}}
==={{ভাষা|bn}}===
{{audio-IND-BAN-language|bn}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
#অবতরণ
# [[অষ্টমস্বর]] হইতে ক্রমশঃ নিম্ন নিম্ন স্বরে অবতরণ।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
i2em6kl8s48k97qfevhjc5truj6bei4
অংশান্তর
0
7396
133134
82176
2022-08-27T09:54:41Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অংশান্তর.wav|অডিও}}
==={{ভাষা|bn}}===
{{audio-IND-BAN-language|bn}}
===ব্যুৎপত্তি===
[[অংশ]] + [[অন্তর]]
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# অন্য অংশ; পৃথক্; ভাগ
# অংশদ্বয়ের ব্যবধান
{{উৎস-ভাষা|bn}}
4qdllxnb00bdjqvcsdv838ftwk42s2m
অংশাংশ
0
7397
133136
82170
2022-08-27T09:54:43Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অংশাংশ.wav|অডিও}}
==={{ভাষা|bn}}===
{{audio-IND-BAN-language|bn}}
===ব্যুৎপত্তি===
[অংশ + [[অংশ]] (অংশের অংশ)]
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# বিভাগের ভাগ; কলা। (যেমন- "অংশের অংশ যেই কলা তার নাম।"-চৈতন্যচরিতামৃত।)
# [অংশ ও অংশ-দ্বন্দ্ব◦] ভিন্ন ভিন্ন ভাগ, পরস্পর ভাগ।
# যার যে ন্যায্য অংশ।
{{উৎস-ভাষা|bn}}
bq6zdf8nfxb6vxqga0ety0glhx3aqfv
অংশুপট্ট
0
7408
133138
82187
2022-08-27T09:54:52Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অংশুপট্ট.wav|অডিও}}
===ব্যুৎপত্তি===
[অংশু (সূক্ষ্মসূত্র নির্ম্মিত) পট্ট (রেশমী বস্ত্র)]
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
#পট্ট [[বস্ত্র]]; ক্ষৌমবাস; [[গরদ]], তসর, মটকা, রেশমী অর্থাৎ কৃমিকোষজাত সূক্ষ্ম সূত্রনির্ম্মিত বস্ত্র।
#
# যেমন ''পীতবর্ণ অংশুপট্টে শোভে বনমালী।"
# সূর্য্য;।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
b1b47cughe7l32q2g9huwn17yf95hzk
অংহ্রিপ
0
7433
133139
82211
2022-08-27T09:55:04Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অংহ্রিপ.wav|অডিও}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# [[অঙ্ঘ্রিপ]]
# [[অটবী]]
# [[উদ্ভিদ]]
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
''বাঁকা লেখা''
a3jg4ph96oucl3nabamutasyrpb8atp
অকটকিনা
0
7437
133048
82225
2022-08-27T09:49:15Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকটকিনা.wav}}
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
#কঠোর বা কড়াকড়ি নিয়মের অভাব। বাঁধাবাঁধি নিয়ম বা ধরাকাট না থাকার ভাব
# [[অকঠোরতা]]; [[অপ্রতিবন্ধ]]
# '''বিশেষণ'''- অকঠোর; অকঠিন; অকর্কশ।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
83khzpfxjgo5kdjyw5uh3yrszg39tka
অকাপট্য
0
7446
133145
82276
2022-08-27T10:02:13Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাপট্য.wav|অডিও}}
'''ব্যুৎপত্তি''' [ন +কাপট্য]
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# [[অকপটতা]]
# [[সারল্য]]
# [[ঔদার্য্য]]
{{উৎস-ভাষা|bn}}
0qtr3n0721vlc1fa4pi7s8ie913q6en
133146
133145
2022-08-27T10:04:05Z
Aishik Rehman
5592
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাপট্য.wav|অডিও}}
===ব্যুৎপত্তি===
[ন +কাপট্য]
==={{অর্থ}}===
{{বিশেষ্য-বিষয়শ্রেণী|bn}}
# [[অকপটতা]]
# [[সারল্য]]
# [[ঔদার্য্য]]
{{উৎস-ভাষা|bn}}
6ah95ytjvgjrkc7icru82nepxjjj3pf
অক্রিয়কর্মা
0
7470
133088
115970
2022-08-27T09:52:02Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্রিয়কর্মা.wav|অডিও}}
{{audio-IND-BAN-language|bn}}
==={{অর্থ}}===
{{adjective-category|bn}}
#[[কুকর্মকারী]]
{{উৎস-ভাষা|bn}}
7h304p258syubzgj9rw03so8a09xw6w
অকড়িয়া
0
7471
133049
115957
2022-08-27T09:49:18Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকড়িয়া.wav}}
{{audio-IND-BAN-language|bn}}
===ব্যুৎপত্তি===
(গ্রাম্য) ন + কড়িয়া (কড়ি- যুক্ত)]
==={{অর্থ}}===
{{adjective-category|bn}}
# যার কড়ি নাই
# ধনহীন; [[দরিদ্র]]।
# কড়ি দিয়া ক্রীত নহে; [[মূল্যহীন]]
{{উৎস-ভাষা|bn}}
hnqq9vc7ugmiy9ldodgt83vc0yd7sne
অকণ্ঠস্থ
0
7472
133050
82229
2022-08-27T09:49:19Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকণ্ঠস্থ.wav}}
==={{ভাষা|bn}}===
{{audio-IND-BAN-language|bn}}
==={{অর্থ}}===
{{adjective-category|bn}}
# '''ব্যুৎপত্তি''' [ন + কণ্ঠ + স্হা + অ (র্ত্তৃ)]
# প্রকৃতপক্ষে যা কণ্ঠে ধারণ করা বা যা [[কণ্ঠাগত]] হয় নাই।
# [[মুখস্থ]] করা নয়; [[অনভ্যস্ত]]।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}:
{{অনুবাদ-নীচ}}
{{উৎস-ভাষা|bn}}
k771koxmbquc30jibpkjykirjkoi3nj
অকালপক্ব
0
8689
133063
82295
2022-08-27T09:50:49Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকালপক্ব.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# [[ইঁচড়ে]] [[পাকা]]
emcqd5ycaqsuafhhy3s0u08t05655t3
অংশিন
0
9237
133137
82178
2022-08-27T09:54:45Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অংশিন.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# ভাগের [[অধিকারী]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
jketbfg9v278dur69mi1agjqroohkgi
অকল্প
0
9238
133055
123659
2022-08-27T09:49:44Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকল্প.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
# নিশ্চল
# কম্পনশূন্য
# [[স্থির]]
# [[অবিচলিত]]
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: anecdotal
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকল্প}}
l3kmhub109m85em1po6v6c906eyvb6k
অকমর্ণ্য
0
9239
133051
123643
2022-08-27T09:49:23Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকমর্ণ্য.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
# কাজের অযোগ্য
# [[অকেজো]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকমর্ণ্য}}
7k9ah9hq7ecn6bga0p5bxnhigljomqz
অকলঙ্কী
0
9240
133053
123658
2022-08-27T09:49:39Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকলঙ্কী.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
# নিষ্কলঙ্ক
# [[নির্দোষ]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকলঙ্কী}}
h8k9k1yyh7g5pa08haubhdpmav14rmy
অকাট
0
9241
133056
82272
2022-08-27T09:49:51Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকাট.wav}}
===বিশেষণ===
{{বিশেষণ|bn}}
# [[নিরেট]]
# [[মহামূর্খ]]
# হাঁদা।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: cogency
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
27g81htp96ft1sykz4ztqlrb34d6sv0
অকিল্মিষ
0
9248
133065
123668
2022-08-27T09:50:51Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকিল্মিষ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# পাপশূন্য
# দোষহীন।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকিল্মিষ}}
819meb3zfjs92ncz4mh7jxs5524ggbk
অকীর্তিকর
0
9249
133068
123670
2022-08-27T09:50:57Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকীর্তিকর.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অখ্যাতিজনক।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অকীর্তিকর}}
1k8ib5wu011hf41t1k4bq3aw2ar5uf3
অকৃতোদ্বাহ
0
9254
133079
82342
2022-08-27T09:51:27Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃতোদ্বাহ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অবিবাহিত
''ন কৃত উদ্বাহ''
# ।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
lxu5amxshp8v9kk1ntwe2twq1kkss4w
অকৃপ
0
9255
133081
82346
2022-08-27T09:51:33Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অকৃপ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# দয়াহীন
# নিষ্ঠুর।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: bountiful
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
iuj82zpmmf0kbxywvfxzjm9afmh6663
অক্লান্ত
0
9259
133091
123686
2022-08-27T09:53:00Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্লান্ত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# ক্লান্তিহীন।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: persisting
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্লান্ত}}
izaq3e5lgo7yusva73lzfs0zwtii029
অক্ষম
0
9274
133092
123696
2022-08-27T09:53:12Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ষম.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# ক্ষমতা নাই যাহার
#[[দুর্বল]]
# [[অসমর্থ]]
''বিশেষ্য পদ''
# অক্ষমতা।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: disablement
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ষম}}
5rst45sym882jqifsb5tipbrc8xtpf4
অক্ষীয়
0
9290
133093
123701
2022-08-27T09:53:17Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ষীয়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অক্ষ সম্বন্ধীয়
# কৌণিক।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: axial
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ষীয়}}
m0f2eepirozr1dvo1jyabwm22c6x2ym
অক্ষুণ্ন
0
9291
133094
123702
2022-08-27T09:53:18Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ষুণ্ন.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# মনস্তাপশন্য
# অব্যাহত
# অবিকৃত
# অখন্ড।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ষুণ্ন}}
6t90ufgx0hjpglsawdvwdniotnj0orh
অক্ষোভ
0
9292
133095
123703
2022-08-27T09:53:19Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অক্ষোভ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# দুঃখবিহীন।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অক্ষোভ}}
m8395a0z1ma8pnylpanubuyn8iphqij
অখণ্ডনীয়
0
9296
133096
131853
2022-08-27T09:53:20Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অখণ্ডনীয়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অকাট্য; খণ্ডন করা যায় না এমন।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
[[বিষয়শ্রেণী:অনির্ণেয়-অক্ষর বিশিষ্ট বাংলা শব্দ]]
{{পূর্বনির্ধারিতবাছাই:অ, অখণ্ডনীয়}}
48jqlw6o8h4iwwctz6rcoyi23vob1ll
অখল
0
9299
133097
82419
2022-08-27T09:53:21Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অখল.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অবিভক্ত
# অক্ষত
# পরিপূর্ণ
''বিশেষ্য পদ''
# অখন্ডতা।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: integral
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অখন্ড}}
bugf5vdo77g70frceiv1jhjuwufudhd
অখাত
0
9300
133098
82420
2022-08-27T09:53:22Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অখাত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# খনন করা হয় নাই এমন
স্বাভাবিক ভাবে সৃষ্ট (জলাশয়
# হ্রদ)।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: undug
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
0748tj5eahyham8hb3ni65pd7nvbdwd
অখুশী
0
9304
133099
82424
2022-08-27T09:53:38Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অখুশী.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অসন্তুষ্ট।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
cgwig27tpne83a0d27qvfwq54tpy79l
অখ্যাত
0
9305
133100
123710
2022-08-27T09:53:39Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অখ্যাত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অপ্রসিদ্ধ
# নিন্দিত
# নগণ্য।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: discredit
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অখ্যাত}}
q1qrgnjb3dfkh9tf0hf70mmuzlmsu20
অগ
0
9307
133101
82427
2022-08-27T09:53:41Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# গতিশূন্য
# নিশ্চল
''বিশেষ্য পদ''
# পর্বত।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: advancement
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
qn7yvlo3bbq2uui9lfxi0hca6gh2ovb
অগন্তব্য
0
9317
133102
123712
2022-08-27T09:53:42Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগন্তব্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# গমনের অযোগ্য; যেখানে যাওয়া উচিত নহে এমন।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগন্তব্য}}
hba0beigo5cadgc0l951enpovsayh7i
অগম্য
0
9320
133103
123713
2022-08-27T09:53:43Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগম্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# দুর্গম
# অগন্তব্য
# দুর্বোধ
(স্ত্রীলিঙ্গ) অগম্যা- যৌনমিলনের পক্ষে অবৈধ।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: impregnability
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগম্য}}
hqp4qmzxrbvotcw3j8aqtpmi227wpo2
অগ্রহনীয়
0
9385
133105
123727
2022-08-27T09:53:48Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্রহনীয়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# গ্রহনের অযোগ্য।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্রহনীয়}}
nbcs25mzoddobqq2b026w7oifmu15u5
অগ্রাহ্য
0
9387
133106
123729
2022-08-27T09:53:49Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্রাহ্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# গ্রহনের অযোগ্য
# বাতিল
# অবজ্ঞেয়।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: disaccord
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্রাহ্য}}
hygsww1x12tw50vgfbfengx6v4fnvdr
অগ্রিম
0
9388
133107
123730
2022-08-27T09:53:51Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্রিম.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# প্রথম
# জেষ্ঠ্য
# আগাম
# অগ্রে দেয়।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: prepaid
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্রিম}}
qbb0yo1z5x4a3ukyk0x7l0di6vipaoo
অগ্রিয়
0
9389
133108
123731
2022-08-27T09:53:52Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্রিয়.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অগ্রিম
# অগ্র সম্বন্ধীয়।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্রিয়}}
l3mh0r2xgw0xdenc5kypchpxk4o55c4
অগ্র্য
0
9391
133109
123733
2022-08-27T09:53:54Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অগ্র্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# আদ্য
# শ্রেষ্ঠ
''অগ্র ষ''
# ।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অগ্র্য}}
bp2z6acop53gtrr0y0z98dxvwfg1cev
অঘ্রাত
0
9405
133110
123735
2022-08-27T09:53:55Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঘ্রাত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অনাঘ্রাত
# যাহার ঘ্যাণ লওয়া হয় নাই এমন (অঘ্রাত পুষ্প)।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঘ্রাত}}
p5dy21dv1ld7ntot8hc8o1lk98dtccb
অঙ্কিত
0
9412
133111
123741
2022-08-27T09:53:57Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঙ্কিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# ক্ষোদিত
# বর্ণিত
# বিবৃত।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: delineated
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঙ্কিত}}
h6oef0wk9w54eaz6g061fspmpn2a4z6
অঙ্কুরিত
0
9414
133112
123742
2022-08-27T09:53:59Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঙ্কুরিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# মুকুলিত।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: germinate
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঙ্কুরিত}}
bi9zmq86ua5alz6blgbr97xcey0asnb
অঙ্গী
0
9446
133114
123770
2022-08-27T09:54:02Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঙ্গী.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# শরীরী।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: accede
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঙ্গী}}
j68gxm4jma1u8toma52pfdxcztdful3
অঙ্গীকৃত
0
9449
133115
123773
2022-08-27T09:54:03Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঙ্গীকৃত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# প্রতিশ্রুত।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঙ্গীকৃত}}
kxgb4z68gbqgfwodusoww4xnfypfv96
অঙ্গীভূত
0
9450
133116
123774
2022-08-27T09:54:05Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অঙ্গীভূত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অংশত্ব প্রাপ্ত
# অঙ্গের অর্ন্তভুত।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: accede
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অঙ্গীভূত}}
mzffgjhs5x2geo9j4vzuqm21epd213j
অচঞ্চল
0
9459
133117
123779
2022-08-27T09:54:06Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচঞ্চল.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# স্থির
# চপলতাহীন।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: unflappable
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচঞ্চল}}
k0lep1jimj3mhbrvax6sc2juyk7hri1
অচিত্ত
0
9469
133118
123780
2022-08-27T09:54:07Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচিত্ত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# চেতনহীন
# অজ্ঞান।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: unprepossessing
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচিত্ত}}
3w1htdqjk2hqf67mm0nfbhsinfr30tv
অচিন্ত্য
0
9473
133119
123781
2022-08-27T09:54:08Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচিন্ত্য.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# চিন্তার অতীত; চিস্তা করা যায় না এমন।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: undreamed
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচিন্ত্য}}
pmkaghyv2m6304gorct3s4q6s4nx3az
অচূর্ণ
0
9478
133120
123783
2022-08-27T09:54:19Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচূর্ণ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# আস্ত
# গোটা।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: undestroyed
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচূর্ণ}}
nl5kpd9epey0ossk34p3b74t881fwjb
অচূর্ণিত
0
9479
133121
123784
2022-08-27T09:54:20Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচূর্ণিত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# চূর্ণ হয় না এমন
# অপিষ্ট।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচূর্ণিত}}
6a356qgsjhr9vwtjutydf7zqkd4rx98
অচেষ্ট
0
9483
133122
123785
2022-08-27T09:54:21Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচেষ্ট.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# নিশ্চেষ্ট
# উদাসীন
# অবশ।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: unattempted
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচেষ্ট}}
1qchsk6htd3h26sgyz97v8res6j3p3y
অচ্ছ
0
9484
133123
123786
2022-08-27T09:54:23Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচ্ছ.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# স্বচ্ছ
# পরিস্কার
# নির্মল।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: indissoluble
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচ্ছ}}
ccvnootzb5z1g1o5zxhipnnvmxvo8sz
অচ্ছিদ্র
0
9485
133124
123787
2022-08-27T09:54:24Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচ্ছিদ্র.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# নিশ
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচ্ছিদ্র}}
d7v98hnfqj6u38wn8mki4ifz9hrg5qd
অচ্ছিন্ন
0
9486
133126
123788
2022-08-27T09:54:25Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচ্ছিন্ন.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# সম্পূর্ণ
# গোটা।
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচ্ছিন্ন}}
0xd4p0bz2ry9x6wvgn9nvyl12we35kr
অচ্ছুত
0
9487
133127
123789
2022-08-27T09:54:26Z
MdsShakil
6871
অডিও যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-অচ্ছুত.wav|অডিও}}
===বিশেষণ===
{{বিশেষণ|bn}}
# অস্পৃশ্য
# হরিজন সম্প্রদায় (জাতি); যাহাকে ছোঁওয়া অনুচিত।
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: unclean
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
{{পূর্বনির্ধারিতবাছাই:অ, অচ্ছুত}}
retroxf8f01wyv5bkmudqzf03yn4h9g
অপশব্দ
0
10534
132993
124149
2022-08-27T06:21:53Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===বিশেষ্য===
{{বিশেষ্য|bn}}
# ব্যাকরণদুষ্ট শব্দ
# অশ্লীল শব্দ।
{{উইকিপিডিয়া}}
[[বিষয়শ্রেণী:বাংলা বিশেষ্য]]
{{পূর্বনির্ধারিতবাছাই:অ, অপশব্দ}}
lner7o745rcep20r3np0k4jb3km3zg3
অপসৃত
0
10540
132994
83620
2022-08-27T06:24:04Z
MdsShakil
6871
/* বিশেষণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===বিশেষণ===
{{বিশেষণ|bn}}
# পলায়ন বা প্রস্থান করিয়াছে এমন
==={{অনুবাদসমূহ}}===
{{অনুবাদ-শীর্ষ}}
* {{en}}: [[disarticulate]]
{{অনুবাদ-নীচ}}
[[বিষয়শ্রেণী:বাংলা বিশেষণ]]
tjbr2s2blj3tczsjoyi6pyzum8id1dh
অপহ্নব
0
10547
132995
124152
2022-08-27T06:25:46Z
MdsShakil
6871
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
===বিশেষ্য===
{{বিশেষ্য|bn}}
# অপলাপ
# গোন
# অস্বীকার বর্ণনীয় বিষয়কে গেপন করিয়া উপমানের স্থাপন
{{পূর্বনির্ধারিতবাছাই:অ, অপহ্নব}}
4mydapgqw5rfgvlueqc2cwtmcdueqmr
ব্যবহারকারী:Aishik Rehman/খেলাঘর
2
22949
133034
132851
2022-08-27T09:10:06Z
Aishik Rehman
5592
wikitext
text/x-wiki
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
1lls95rhf81vs2zk82nwvc6g8jzgtk0
133035
133034
2022-08-27T09:21:35Z
Aishik Rehman
5592
wikitext
text/x-wiki
*[[#tab-1-container|Tab 1]]
*<a href="#tab-3-container">Tab 3</a>
</ul>
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
Tab 1 content
</div>
<div id="tab-2-container" class="tab-container">
Tab 2 content
</div>
<div id="tab-3-container" class="tab-container">
Tab 3 content
</div>
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
73kxdtvyctz17yc440izlrwq71uo5mz
133036
133035
2022-08-27T09:22:56Z
Aishik Rehman
5592
wikitext
text/x-wiki
*[[#tab-1-container|Tab 1]]
*[[#tab-3-container|Tab 2]]
*[[#tab-3-container|Tab 3]]
<div class="wrapper">
<div id="tab-1-container" class="tab-container">Tab 1 content</div>
<div id="tab-2-container" class="tab-container">Tab 2 content</div>
<div id="tab-3-container" class="tab-container">Tab 3 content</div>
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
jr6vubix3ky6jf1mdr3kdyt0bibt46x
133037
133036
2022-08-27T09:23:47Z
Aishik Rehman
5592
wikitext
text/x-wiki
*[[#tab-1-container|Tab 1]]
*[[#tab-2-container|Tab 2]]
*[[#tab-3-container|Tab 3]]
<div class="wrapper">
<div id="tab-1-container" class="tab-container">Tab 1 content</div>
<div id="tab-2-container" class="tab-container">Tab 2 content</div>
<div id="tab-3-container" class="tab-container">Tab 3 content</div>
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
kx7515suczdvxwt3r15okcqfbx08b2p
133038
133037
2022-08-27T09:26:37Z
Aishik Rehman
5592
wikitext
text/x-wiki
*[[#tab-1-container|বাংলা]]
*[[#tab-2-container|ইংরেজি]]
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=অ অ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=আ আ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ই ই] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঈ ঈ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=উ উ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঊ ঊ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঋ ঋ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=এ এ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঐ ঐ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ও ও] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঔ ঔ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=অ অ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=আ আ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ই ই] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঈ ঈ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=উ উ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঊ ঊ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঋ ঋ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=এ এ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঐ ঐ] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ও ও] -
* [http://bn.wiktionary.org/w/index.php?title=বিশেষ:Allpages&from=ঔ ঔ] -
</div>
<div id="tab-2-container" class="tab-container">Tab 2 content</div>
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
hgc59p4b63x8gppotgx88ikkamymsmn
133039
133038
2022-08-27T09:28:26Z
Aishik Rehman
5592
wikitext
text/x-wiki
*[[#tab-1-container|বাংলা]]
*[[#tab-2-container|ইংরেজি]]
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
* অ
* আ
* ই
* ঈ
* উ
</div>
<div id="tab-2-container" class="tab-container">
* A
* B
* C
* D
* E
* F
</div>
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
07dg913095ba2i0fcrnkgmt3c71c5bn
133141
133039
2022-08-27T09:57:55Z
Aishik Rehman
5592
wikitext
text/x-wiki
<h2 class="nav-tab-wrapper">
<span class="nav-tab nav-tab-active">|বাংলা]]</span>
<span class="nav-tab">Second|ইংরেজি]]
<a href="#tab-3" class="nav-tab">Third</a>
</h2>
<section id="tab-1" class="tab-content active">
<P>Some content here.</P>
</section>
<section id="tab-2" class="tab-content hidden">
<p>Some more here.</p>
</section>
<section id="tab-3" class="tab-content hidden">
<p>Something else here.</p>
</section>
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
* অ
* আ
* ই
* ঈ
* উ
</div>
<div id="tab-2-container" class="tab-container">
* A
* B
* C
* D
* E
* F
</div>
</div>
<h2 class="nav-tab-wrapper">
<a href="#tab-1" class="nav-tab nav-tab-active">First</a>
<a href="#tab-2" class="nav-tab">Second</a>
<a href="#tab-3" class="nav-tab">Third</a>
</h2>
<hr />
<section id="tab-1" class="tab-content active">
<P>Some content here.</P>
</section>
<section id="tab-2" class="tab-content">
<p>Some more here.</p>
</section>
<section id="tab-3" class="tab-content">
<p>Something else here.</p>
</section>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
4acpp3pyku4dif3a0r7qfwas6lvqtyg
133142
133141
2022-08-27T09:58:48Z
Aishik Rehman
5592
wikitext
text/x-wiki
<h2 class="nav-tab-wrapper">
<span class="nav-tab nav-tab-active">বাংলা</span>
<span class="nav-tab">ইংরেজি</span>
</h2>
<section id="tab-1" class="tab-content active">
<P>Some content here.</P>
</section>
<section id="tab-2" class="tab-content hidden">
<p>Some more here.</p>
</section>
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
* অ
* আ
* ই
* ঈ
* উ
</div>
<div id="tab-2-container" class="tab-container">
* A
* B
* C
* D
* E
* F
</div>
</div>
<h2 class="nav-tab-wrapper">
<a href="#tab-1" class="nav-tab nav-tab-active">First</a>
<a href="#tab-2" class="nav-tab">Second</a>
<a href="#tab-3" class="nav-tab">Third</a>
</h2>
<hr />
<section id="tab-1" class="tab-content active">
<P>Some content here.</P>
</section>
<section id="tab-2" class="tab-content">
<p>Some more here.</p>
</section>
<section id="tab-3" class="tab-content">
<p>Something else here.</p>
</section>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
r0hg7089b0mrha98dqkkmj4rde5901a
133143
133142
2022-08-27T09:59:23Z
Aishik Rehman
5592
wikitext
text/x-wiki
<div class="nav-tab-wrapper">
<span class="nav-tab nav-tab-active">বাংলা</span>
<span class="nav-tab">ইংরেজি</span>
</div>
<div id="tab-1" class="tab-content active">
Some content here.
</div>
<div id="tab-2" class="tab-content hidden">
Some more here.
</div>
<div class="wrapper">
<div id="tab-1-container" class="tab-container">
* অ
* আ
* ই
* ঈ
* উ
</div>
<div id="tab-2-container" class="tab-container">
* A
* B
* C
* D
* E
* F
</div>
</div>
<h2 class="nav-tab-wrapper">
<a href="#tab-1" class="nav-tab nav-tab-active">First</a>
<a href="#tab-2" class="nav-tab">Second</a>
<a href="#tab-3" class="nav-tab">Third</a>
</h2>
<hr />
<section id="tab-1" class="tab-content active">
<P>Some content here.</P>
</section>
<section id="tab-2" class="tab-content">
<p>Some more here.</p>
</section>
<section id="tab-3" class="tab-content">
<p>Something else here.</p>
</section>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
j6ljzyk2y5nesldv69xwukox8j4e26m
133144
133143
2022-08-27T09:59:57Z
Aishik Rehman
5592
wikitext
text/x-wiki
<div class="nav-tab-wrapper">
<span class="nav-tab nav-tab-active">বাংলা</span>
<span class="nav-tab">ইংরেজি</span>
</div>
<div id="tab-1" class="tab-content active">
Some content here.
</div>
<div id="tab-2" class="tab-content hidden">
Some more here.
</div>
<div class="row">
<div class="col-50-left">
<h4 class="block_title">Bengali proverbs of the day</h4>
<div class="fixBox box">
*জুতা সেলাই থেকে চণ্ডীপাঠ (prov) all activities irrespective of high and low, great and small.
জোর যার মুলুক তার (prov) a mighty person has his sway over everything; (prov) might is right.
ঢাকের দায়ে মনসা বিকানো (figurative) excessive expense for a useless thing; (prov) to sell one’s homestead to grease one’s car.
*ধর্মের ঢাক আপনি বাজে (prov) virtue proclaims itself.</li><li>
*ঢিল মারলে পাটকেল পড়ে (prov) Tit for tat.</li><li>
*ঢেঁকিস্বর্গে গেলেও ধান ভানে (prov) A drudge will drudge even in heaven.</li></ul>
</div>
</div>
<div class="col-50-right">
<h4 class="block_title">Random Figurative phrases</h4>
<div id="figContainer" aria-live="polite">
<div class="fixBox box" id="figurative">
*ক্ষুরধার (adjective) (figurative) as sharp as a razor: ক্ষুরধার লেখনী.
* এক কড়ার মুরোদ নেই, having not an iota of power/ability.
* খই ফোটা (verb intransitive) burst open noisily in the process of being toasted; (figurative) talk much and fast:
<div class="row">
<div id="figButton" style="padding:6px; float:right; margin:0 8px 8px 0;">Load more</div>
</div>
</div>
</div>
</div>
</div>
{{NUMBEROFEDITS}}
{{mfd|help=off}}
* Rhymes: অন্ত্যমিল:
* Appendix: উইকিসরাস>পরিশিষ্ট:
* Citations: উদ্ধৃতি:
* Thesaurus: থিসরাস:
* [[অ্যালকুহেলিকা]], মদের ঘোর
* চিন্তাইকারী
* ফাহামবাগ
* মানবাধিকারবার
* পাঁঠালপাতা
* একাডেমিশিয়াল
* চানভুদাই
* সাকাতুয়া
* জ্ঞানকীর পোলা
* জামাতাল
* চিন্তাইকারী
* টকমারানি
* তখতাবধায়ক
* হাড়হাভাডে
* ব্রাজলিল
* পুটুহন্তাস
* কামালগোটা
* বামাত
* ফুটবলদ
* আলোচোনা
* ট্যাগটিভিস্ট
* মুসলমানবতা
* ফ্যাম্পায়ার
* পরপুটুপয়মালপুলক
* সুফা
* ইমরাণ্ডি
* গুজবুক
* ইকবালখিল্যতা
* নুনূর্ষূ
* বাম্রাজ্যবাদ
* ফেসবুকাচোদা
* সুফা
* বার্গস্বাধীনতা
* চেকিনগুণিয়া
* হোগায়ক
* আলজারজি
* বন্ধুকাঠি
* ভঙ্গীকার
* পাছুশুঁকরে
* ভাববাচ্যু
* নরাদ টাকলা
* দুখীপাছু
* গদিমাতৃক
* নামকহারাম
* খালেদাবোমা
* আমিশয়
* ণূড়াকামিতা
* উটকথা
* শবে ঝুলন
* আলীমদ্বার
* আরামাদান
* ককস্বাধীনতা
* মাথাফাঁকা
* ডিমবাবুয়ে
* সিকিচরম
* আধাচরম
* শবে ঝুলন
* গোয়াযম
* দীর্ঘজেবী
* তালপুরুষ
g14u3edrnu2vqgp204leg8us9p1vfxr
ব্যবহারকারী:Aishik Rehman/common.js
2
24493
133000
130899
2022-08-27T07:00:01Z
Aishik Rehman
5592
javascript
text/javascript
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links
for MW-1.34.2 with MobileFrontend and MinervaNeue
Just replace span text and href to add links */
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand mw-ui-icon-small"> \
<span>Labs</span> \
</a> \
</li> \
<ul class="level2"> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 1" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-download"> \
<span>Lab One</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 2" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-mapPin"> \
<span>Lab 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/খেলাঘর ২" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Three</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 4" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Four</span> \
</a> \
</li> \
</ul> \
</ul>\
<ul> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Tools" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-editLock-base20"> \
<span>Tools & Management</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==Pronunciation===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==Pronunciation===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==Pronunciation===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==Pronunciation===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
2lyrhfczqzh95kmauq97q0ckwk9adob
133001
133000
2022-08-27T07:07:19Z
Aishik Rehman
5592
javascript
text/javascript
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links
for MW-1.34.2 with MobileFrontend and MinervaNeue
Just replace span text and href to add links */
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand mw-ui-icon-small"> \
<span>Labs</span> \
</a> \
</li> \
<ul class="level2"> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 1" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-download"> \
<span>Lab One</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 2" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-mapPin"> \
<span>Lab 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/খেলাঘর ২" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Three</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 4" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Four</span> \
</a> \
</li> \
</ul> \
</ul>\
<ul> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Tools" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-editLock-base20"> \
<span>Tools & Management</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'Add audio pronunciation'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==Pronunciation===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'Pronunciation' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+Pronunciation' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'Pronunciation' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
4wvjqpvzs5rvsr5mzwe67ybcr7xfi4x
133002
133001
2022-08-27T07:10:44Z
Aishik Rehman
5592
javascript
text/javascript
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links
for MW-1.34.2 with MobileFrontend and MinervaNeue
Just replace span text and href to add links */
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand mw-ui-icon-small"> \
<span>Labs</span> \
</a> \
</li> \
<ul class="level2"> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 1" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-download"> \
<span>Lab One</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 2" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-mapPin"> \
<span>Lab 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/খেলাঘর ২" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Three</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 4" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Four</span> \
</a> \
</li> \
</ul> \
</ul>\
<ul> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Tools" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-editLock-base20"> \
<span>Tools & Management</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
nvs8qhiy2uc7ckmdr5rsk26huvjyr57
133003
133002
2022-08-27T07:19:17Z
Aishik Rehman
5592
javascript
text/javascript
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links
for MW-1.34.2 with MobileFrontend and MinervaNeue
Just replace span text and href to add links */
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand mw-ui-icon-small"> \
<span>Labs</span> \
</a> \
</li> \
<ul class="level2"> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 1" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-download"> \
<span>Lab One</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 2" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-mapPin"> \
<span>Lab 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/খেলাঘর ২" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Three</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 4" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Four</span> \
</a> \
</li> \
</ul> \
</ul>\
<ul> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Tools" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-editLock-base20"> \
<span>Tools & Management</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
sb3f5a7fgeacpd5yduthyunz3wn3fuv
133004
133003
2022-08-27T07:22:31Z
Aishik Rehman
5592
javascript
text/javascript
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links
for MW-1.34.2 with MobileFrontend and MinervaNeue
Just replace span text and href to add links */
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand mw-ui-icon-small"> \
<span>Labs</span> \
</a> \
</li> \
<ul class="level2"> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 1" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-download"> \
<span>Lab One</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 2" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-mapPin"> \
<span>Lab 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/খেলাঘর ২" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Three</span> \
</a> \
</li> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Lab 4" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-bellOutline-base20"> \
<span>Lab Four</span> \
</a> \
</li> \
</ul> \
</ul>\
<ul> \
<li> \
<a href="/wiki/ব্যবহারকারী:Aishik Rehman/Tools" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-wikimedia-editLock-base20"> \
<span>Tools & Management</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms
// This will only work on Firefox, until the other browsers implement
// MediaRecorder (which might not actually be that far away).
// commons uploader does not work as of now
// UI suggestions would be most welcome.
// <nowiki>
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: 'Bangladesh.', in: 'India'},
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
aszbqt2mteau5l0f5p8n2xuut1gzits
133006
133004
2022-08-27T07:27:55Z
Aishik Rehman
5592
javascript
text/javascript
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: ''},
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'Language not found.' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
hfku6md6tn273yib6t2l5i93msurnhl
133007
133006
2022-08-27T07:28:43Z
Aishik Rehman
5592
javascript
text/javascript
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: ''},
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api.parse' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'কোন ভাষা নির্ধারণ করা হয় নি।' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
88sa09nxx4i8102uu4cd2rdhlxv3e4a
133009
133007
2022-08-27T07:29:32Z
Aishik Rehman
5592
javascript
text/javascript
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: ''},
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'কোন ভাষা নির্ধারণ করা হয় নি।' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
5oyww0qkgiu1cffknjl27agv6kj5zop
133010
133009
2022-08-27T07:36:13Z
Aishik Rehman
5592
javascript
text/javascript
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: 'Bangladesh', in: 'India'},
en: { us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'কোন ভাষা নির্ধারণ করা হয় নি।' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
0fphxy81j0acx48efldl44s2k64hz7b
133011
133010
2022-08-27T07:36:52Z
Aishik Rehman
5592
javascript
text/javascript
$.when( mw.loader.using( ['mediawiki.util', 'ext.gadget.Editor']), $.ready ).then(function () {
var mediaDevices = navigator.mediaDevices || navigator,
getUserMedia = (
mediaDevices.getUserMedia ||
mediaDevices.webkitGetUserMedia ||
mediaDevices.mozGetUserMedia ||
mediaDevices.msGetUserMedia
),
hasTabs = 'tabbedLanguages' in window,
$sections = $( hasTabs ? languageContainers : '#mw-content-text > .mw-parser-output > h2' );
var accentList = {
// I'll assume that capitalized versions of the region codes themselves
// are fine for the template display.
// Empty strings means no special categorization.
// I have no idea whether these are the right accents to have available
// as options.
bn: { bd: 'Bangladesh', in: 'India'},
en: { bd: 'Bangladesh', us: 'U.S.', uk: 'British', ca: 'Canadian', au: 'Australian', nz: 'New Zealand' },
de: { de: '', at: '', ch: '' },
fr: { fr: '', 'ca-qc': '' },
pt: { pt: '', br: '' },
zh: { cmn: 'Mandarin', 'cmn-2': 'Mandarin', yue: 'Cantonese', nan: 'Min Nan', cdo: 'Min Dong', hak: 'Hakka', wuu: 'Wu' },
};
if (
getUserMedia &&
'MediaRecorder' in window &&
( mw.config.get( 'wgNamespaceNumber' ) === 0 || mw.config.get( 'wgPageName' ) === 'Wiktionary:Sandbox' ) &&
mw.config.get( 'wgAction' ) === 'view' &&
!/&printable=yes|&diff=|&oldid=/.test( window.location.search )
) {
var stopIcon = '◼',
recordIcon = '⚫',
pauseIcon = '❚❚',
playIcon = '►',
saveIcon = '✔',
uploadsInProgress = 0;
mw.util.addCSS( '\
.YRAddAudio-Box { \
font-size: 10px; \
} \
.YRAddAudio-RecordButton { \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-RecordButton:hover { \
color: #DD0000; \
} \
.YRAddAudio-Recording { \
color: #DD0000; \
font-weight: bold; \
text-shadow: 0 0 1px #DD0000; \
} \
.YRAddAudio-PlayButton { \
display: none; \
margin-right: 3px; \
/* color: #AAAAAA; */ \
cursor: pointer; \
} \
.YRAddAudio-PlayButton:hover { \
color: #AAAAAA; \
} \
.YRAddAudio-SaveButton { \
display: none; \
margin-right: 3px; \
cursor: pointer; \
} \
.YRAddAudio-SaveButton:hover { \
color: #33FF22; \
} \
.YRAddAudio-accent { \
margin: 1px; \
padding: 1px; \
cursor: pointer; \
} \
.YRAddAudio-accent:hover { \
margin: 0px; \
border: 1px solid #AAA; \
padding: 1px; \
} \
.YRAddAudio-activeAccent { \
font-weight: bold; \
} \
'
);
function AButton( sectionIndex, language, headerLevel, oldHeader ) {
var recording = false,
recorder,
$elem,
$recordButton,
$playButton,
$saveButton,
$accentList,
accent,
langcode;
// Todo: Accent field.
// Todo: Licensing information in the form.
this.$elem = $elem = $( '<div>', {
addClass: 'YRAddAudio-Box',
append: [
$recordButton = $( '<span>', {
text: recordIcon,
addClass: 'YRAddAudio-RecordButton',
title: 'Record audio pronunciation for this word',
click: function recordOrStop() {
function startRecording() {
recorder.start();
$recordButton.addClass( 'YRAddAudio-Recording' );
}
try {
if ( !recorder ) {
setupRecorder( function ( r ) {
recorder = r;
startRecording();
} );
langcode = findLang( sectionIndex );
if ( accentList[ langcode ] ) {
var accentElemList = {};
$accentList = $( '<span>' )
.css( { display: 'inline-block' } )
.insertBefore( $saveButton )
.hide();
$.each( accentList[ langcode ], function ( accentcode, accentname ) {
$accentList.append(
accentElemList[ accentcode ] = $( '<span>' )
.text( accentcode.toUpperCase() )
.attr( 'title', 'Accent/dialect: ' + accentcode.toUpperCase() )
.addClass( 'YRAddAudio-accent' )
.on( 'click', function () {
if ( accent ) {
accentElemList[ accent ].removeClass( 'YRAddAudio-activeAccent' );
}
if ( accent === accentcode ) {
accent = undefined;
} else {
$( this ).addClass( 'YRAddAudio-activeAccent' );
accent = accentcode;
}
} )
);
} );
}
} else {
if ( recording ) {
recorder.stop();
$recordButton.removeClass( 'YRAddAudio-Recording' );
$accentList && $accentList.show();
$playButton.show();
$saveButton.show();
} else {
startRecording();
}
}
//this.innerText = recording ? recordIcon : stopIcon;
recording = !recording;
} catch( e ) {
console.log( e, 6 );
}
}
} ),
$playButton = $( '<span>', {
text: playIcon,
addClass: 'YRAddAudio-PlayButton',
css: {
//display: 'none'
},
title: 'Play recording',
click: function () {
recorder.play();
}
} ),
$saveButton = $( '<span>', {
text: saveIcon,
addClass: 'YRAddAudio-SaveButton',
title: 'Add this recording to the entry',
click: function () {
// addEdit, tying into upload
//mw.loader.using( 'mediawiki.ForeignApi', function () {
mw.loader.using( [ 'mediawiki.ForeignUpload', 'mediawiki.api' ], function () {
recorder.add( langcode, accent );
} );
}
} ),
'অডিও উচ্চারণ যুক্ত করুন'
],
css: {
'font-size': '10px'
},
} );
function setupRecorder( cb ) {
function acceptStream( stream ) {
var fileExtension = MediaRecorder.isTypeSupported( 'audio/ogg' ) ? 'ogg' : 'webm',
mimeType = 'audio/' + fileExtension,
mediaRecorder = new MediaRecorder( stream, { mimeType: mimeType } ),
chunks = [],
blob;
mediaRecorder.ondataavailable = function ( e ) {
chunks.push( e.data );
};
mediaRecorder.onstop = function () {
blob = new Blob( chunks, { 'type': mimeType } );
chunks = [];
};
function editPage( langcode, accent ) {
var editor = new Editor(),
title = mw.config.get( 'wgPageName' ),
//langcode = findLang( sectionIndex ),
// Todo: Accent
filename = ( langcode + '-' + ( accent ? accent + '-' : '' ) + title ).replace( /[\.:]/g, '-' ) + '.' + fileExtension,
// Todo: Accent text
audioTemplate =
'* \{\{audio|' + filename + ( accent ? '|Audio (' + accent.toUpperCase() + ')' : '' ) + '|lang=' + langcode + '\}\}',
addedWikitext =
// Use '{\{subst:=\}\}' so as not to interfere
// with other scripts.
( oldHeader ? '' : '\n\{\{subst:=\}\}==উচ্চারণ===\n' ) +
audioTemplate;
if ( !langcode ) {
return editor.error( 'কোন ভাষা নির্ধারণ করা হয় নি।' );
}
// Capitalize
filename = filename.charAt( 0 ).toUpperCase() + filename.slice( 1 );
( new mw.Api() ).parse( audioTemplate ).done( function ( html ) {
// Hopefully this is wrapped.
var $addedElement = $( html ),
$addedHeader = oldHeader ||
$( '<span>' ).append( $( '<h3>').text( 'উচ্চারণ' ) ),
$redLink = $addedElement.find( '.audiofile a.new' );
if ( $redLink.length === 0 ) {
// No redlink, file space already exists.
// (Or there's a parsing error. Ignoring that.)
editor.error( 'Audio file already exists.' );
return;
}
// This isn't actually a direct transclusion of the
// file. Things may break or be inaccurate as a
// result.
$redLink.replaceWith( $( '<audio>' ).attr( {
'src': window.URL.createObjectURL( blob ),
controls: 'controls'
} ) );
editor.addEdit(
{
edit: function ( w ) {
var untilPostPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'(?=\n={3,}(?!Alternative|Etymology).+=+\n))'
);
var inPronunciationHeaderReg = new RegExp(
'((?:\n|^)==' + language + '==' +
'[\\s\\S]*?' +
'\n(?:\\{\\{subst:=\\}\\}|=)=+উচ্চারণ' +
'.+=+)'
);
if ( !oldHeader ) {
w = w.replace( untilPostPronunciationHeaderReg, '$1' +
addedWikitext +
'\n'
);
} else {
w = w.replace( inPronunciationHeaderReg, '$1' + '\n' +
addedWikitext
);
}
// console.log( 'wikitext', w );
// Then add '\{\{audio|' + filename + '|' + accent + '|lang=' + langcode + '\}\}'
// With a header, if applicable. Maybe use the whole
// '\{\{subst:=\}\}' stuff so as not to interfere
// with the other scripts.
return w;
},
redo: function () {
oldHeader || $addedHeader.insertBefore( $elem );
$addedElement.insertBefore( $elem );
$elem.hide();
},
undo: function () {
oldHeader || $addedHeader.remove();
$addedElement.remove();
$elem.show();
},
after_save: function upload() {
var FU = new mw.ForeignUpload(),
username = mw.config.get( 'wgUserName' );
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = 'wait';
}
uploadsInProgress++;
FU.setFile( blob );
FU.setFilename( filename );
FU.setText(
// Copied from en-us-test.ogg.
// Dunno if it's what people usually use...
'==\{\{int:description\}\}==' +
'\n\{\{Information' +
'\n |description = \{\{en|Pronunciation of the term in ' + ( accent ? accent + ' ' : '' ) + language + '\}\}' +
'\n |date = ' + ( new Date() ).toISOString().split( 'T' )[ 0 ] +
'\n |source = \{\{own\}\}' +
'\n |author = \[\[User:' + username + '|' + username + '\]\]' +
'\n |permission =' +
'\n |other_versions =' +
'\n\}\}' +
'\n' +
'\n==\{\{int:license-header\}\}==' +
'\n\[\[Category:' + language + ' pronunciation|' + title + '\]\]' +
'\n\{\{self|Cc-by-sa-3.0\}\}'
);
FU.setComment(
'Upload ' + language + ( accent ? ' (' + accent + ')' : '' ) + ' audio for ' +
'\[\[wikt:' + title + '|' + title + '\]\] ' +
'(\[\[wikt:User:Yair rand/AddAudio.js|AddAudio.js\]\])'
);
FU.upload().done( function () {
uploadsInProgress--;
if ( uploadsInProgress === 0 ) {
document.body.style.cursor = '';
// Do a quick purge, so the file
// shows up right.
( new mw.Api() ).post( {
action: 'purge',
titles: title
} );
}
} ).fail( function () {
editor.error( 'Upload failed: ' + ( FU.stateDetails.error ? FU.stateDetails.error.info : '' ) );
} );
},
summary: '+[[File:' + filename + ']]'
},
$addedElement[ 0 ]
);
} );
}
cb( {
start: function () {
mediaRecorder.start();
},
stop: function () {
mediaRecorder.stop();
// Close the stream?
},
play: function () {
if ( blob ) {
new Audio( window.URL.createObjectURL( blob ) ).play();
}
},
add: editPage
} );
}
function noStream( err ) {
$elem
.css( 'font-color', '#A00' )
.text( 'Error: ' + err );
}
if ( navigator.mediaDevices ) {
getUserMedia.call( mediaDevices, { audio: true } )
.then( acceptStream )
.catch( noStream );
} else {
getUserMedia.call( navigator, { audio: true }, acceptStream, noStream );
}
}
}
function findLang( sectionIndex ) {
// Find lang code for this section by pulling it from the headword.
// If tabbedLanguages loaded after addaudio, hasTabs might be no
// longer accurate.
return ( 'tabbedLanguages' in window?
$( languageContainers[ sectionIndex ] ).find( '.headword' ) :
$sections.eq( sectionIndex ).find( '~* .headword' )
).attr( 'lang' );
}
// Todo: Editor log for uploading.
$sections.each( function ( sectionIndex ) {
var $section = $( this ),
language = hasTabs ?
tabbedLanguages[ sectionIndex ] :
$section.find( '.mw-headline' ).text();
// Maybe use nextUntil instead of ~ here.
$section.find( hasTabs ? 'h3, h4' : '~h3, ~h4' ).each( function () {
var $this = $( this ),
text = $this.find( '.mw-headline' ).text(),
$button,
oldHeader;
if ( !text.startsWith( 'Alternative' ) && !text.startsWith( 'Etymology' ) ) {
oldHeader = text.startsWith( 'উচ্চারণ' );
$button = ( new AButton( sectionIndex, language, this.nodeNode, oldHeader ) ).$elem;
if ( oldHeader ) {
// We already have a pronunciation header.
$button.insertAfter( $this );
} else {
// We don't have a pronunciation header, so we have to
// add one before the first pos header.
$button.insertBefore( $this );
}
return false;
}
} );
} );
}
} );
//</nowiki>
ng82zd9gl8ulx6u1cmjlydem6ebm46p
133135
133011
2022-08-27T09:54:42Z
Aishik Rehman
5592
পাতাকে '$('.nav-tab').click(function(e){ var target_tab_selector = $(this).attr('href'); $('.tab-content').addClass('hidden'); $('.tab-content').removeClass('active'); $(target_tab_selector).removeClass('hidden'); $(target_tab_selector).addClass('active'); })' দিয়ে প্রতিস্থাপিত করা হল
javascript
text/javascript
$('.nav-tab').click(function(e){
var target_tab_selector = $(this).attr('href');
$('.tab-content').addClass('hidden');
$('.tab-content').removeClass('active');
$(target_tab_selector).removeClass('hidden');
$(target_tab_selector).addClass('active');
})
fcd4cjo2s1arxhqwnjdyz7p7bwgfrgv
ব্যবহারকারী:Aishik Rehman/common.css
2
24817
133040
130910
2022-08-27T09:35:17Z
Aishik Rehman
5592
css
text/css
.wrapper {
position: relative;
}
.tab-container {
display: none;
position: absolute;
top: 0;
left: 0;
}
.tab-container:first-child { display: block }
:target { display: block }
/* just for demo */
ul {
list-style: none;
margin: 0;
padding: 0;
}
li {
display: inline-block;
margin-right: 1rem;
}
li {
/* display: block; */
}
.tab-container li {
width: 20px;
background: violet;
text-align: center;
margin-right: 10px;
}
.tab-container {
background: white;
}
cbq6eqz4vayt3qglwjmvoii0w5b5xeh
133075
133040
2022-08-27T09:51:15Z
Aishik Rehman
5592
পাতা খালি করা হয়েছে
css
text/css
phoiac9h4m842xq45sp7s6u21eteeq1
133140
133075
2022-08-27T09:55:10Z
Aishik Rehman
5592
css
text/css
.active{display:block}
.hidden{display:none}
8trwdrua0hl38uxwhpio4835wp1v8jv
মকুফ
0
50918
132982
131684
2022-08-27T05:32:47Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মোকুফ্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[মাফ]];
# [[নিষ্কৃতি]];
# [[অব্যাহতি]]।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
hhct98a43pynylpdk5a8f63lofxtn85
মকান
0
50919
132976
131682
2022-08-27T05:23:52Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মোকান্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[গৃহ]];
# ঘর।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
1tv5sjl20o03hs54cfyu67npvstmqx5
মকাম
0
50920
132977
131683
2022-08-27T05:25:46Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মোকাম্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[আবাস]]স্থল;
# ঠিকানা।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
8urkbun8sdmy8vjlh7yag9vv12xe1q0
মওকুফ
0
50921
132968
131822
2022-08-27T05:06:19Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মও্কুফ্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মাফ;
# [[নিষ্কৃতি]]।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
a5cy3rgxw2lixrezurelrg4cuju7zj9
মওত
0
50922
132974
131681
2022-08-27T05:22:08Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মওত্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[মৃত্যু]]।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
t6b318gyl6bbzusl80h8endrwehgxcm
মওজুদ
0
50923
132970
131823
2022-08-27T05:11:40Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মও্জুদ্।
=== বিশেষণ ===
{{বিশেষণ|bn}}
# [[সঞ্চিত]]।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
t0bf193sdxazxy12coswqyy0c12jwzc
মক্তব
0
50925
132985
131685
2022-08-27T05:40:51Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[ফারসি]] জাত।
===উচ্চারণ===
* মক্তোব্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[প্রাথমিক]] বিদ্যালয়;
# বিদ্যালয়।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
mmyvabmry3rj57ha25h7rqq4cd76b45
মখদুম
0
50926
132988
131824
2022-08-27T05:49:59Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
* [[আরবি]] জাত।
===উচ্চারণ===
* মখ্দুম্।
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# ইসলামি শাস্ত্রবিষয়ের শিক্ষক;
# আধ্যাত্মিক [[গুরু]]।
[[বিষয়শ্রেণী:২-অক্ষর বিশিষ্ট বাংলা শব্দ]]
ij8vdczj1i2geo0xsl2i15k3m8xaasj
ব্যবহারকারী:MdsShakil/JWB-settings.json
2
52988
133041
131478
2022-08-27T09:43:45Z
MdsShakil
6871
Updating JWB settings /*semi-automatic*/
json
application/json
{
"default": {
"string": {
"articleList": "",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": true,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": []
},
"অডিও": {
"string": {
"articleList": "অ-কার\nঅই\nঅইছে\nঅইন\nঅইল\nঅঋণ\nঅওঘর্ষণ\nঅওরো\nঅকট-বিকট\nঅকটকিনা\nঅকটু\nঅকড়িয়া\nঅকণ্ঠস্থ\nঅকথ্য\nঅকবি\nঅকমর্ণ্য\nঅকম্পন\nঅকম্প্র\nঅকর\nঅকরণ\nঅকরণি\nঅকরণী\nঅকরুণ\nঅকরোটি\nঅকর্ণ\nঅকর্তা\nঅকর্তৃত্ব\nঅকর্মকাণ্ড\nঅকর্মঠ\nঅকর্মভোগ\nঅকর্মার ধাড়ি\nঅকলঙ্কী\nঅকলমন্দি\nঅকলুষ\nঅকলুষিত\nঅকল্প\nঅকল্পনা\nঅকল্মষ\nঅকল্যাণ\nঅকল্যাণকরী\nঅকষ্টকল্পনা\nঅকষ্টবদ্ধ\nঅকাট\nঅকাঠিন্য\nঅকাণ্ড\nঅকাপট্য\nঅকাম\nঅকাম্য\nঅকায়\nঅকারান্ত\nঅকার্য\nঅকাল\nঅকালপক্ক\nঅকালপক্ব\nঅকালি\nঅকিল্মিষ\nঅকীক\nঅকীর্তি\nঅকীর্তিকর\nঅকীর্তিত\nঅকু\nঅকুতোভয়\nঅকুব\nঅকুমার\nঅকুমারী\nঅকুল\nঅকুলান\nঅকুলীন\nঅকুশল\nঅকুস্থল\nঅকুস্থান\nঅকূপার\nঅকূলপাথার\nঅকৃতজ্ঞতা\nঅকৃততাপরাধ\nঅকৃতদার\nঅকৃতদ্বাহ\nঅকৃতার্থ\nঅকৃতী\nঅকৃতোদ্বাহ\nঅকৃত্য\nঅকৃত্যকারী\nঅকৃপ\nঅকৃষ্ট\nঅকৈতব\nঅঁকোল\nঅকৌশল\nঅক্কা প্রাপ্তি\nঅক্কা\nঅক্টোপাস\nঅক্টোবর\nঅক্ত (বিশেষ্য)\nঅক্ত\nঅক্রম\nঅক্রমিক\nঅক্রিয়\nঅক্রিয়কর্মা\nঅক্রূর\nঅক্রেয়\nঅক্রোধ\nঅক্লান্ত\nঅক্লেশে\nঅক্ষ\nঅক্ষক\nঅক্ষকর্ণ\nঅক্ষকুশল\nঅক্ষকোবিদ\nঅক্ষত\nঅক্ষম\nঅক্ষয়\nঅক্ষি\nঅক্ষীয়\nঅক্ষুণ্ন\nঅক্ষোভ\nঅখণ্ডনীয়\nঅখন্ড\nঅখল\nঅখাত\nঅখাদ্য\nঅখিল\nঅখুশী\nঅখ্যাত\nঅগ\nঅগন্তব্য\nঅগম্য\nঅংগুস্তানা\nঅগ্র\nঅগ্রজ\nঅগ্রণী\nঅগ্রহনীয়\nঅগ্রাহ্য\nঅগ্রিম\nঅগ্রিয়\nঅগ্রে\nঅগ্র্য\nঅঘ্রাত\nঅঙ্কলক্ষ্মী\nঅঙ্কিত\nঅঙ্কুরিত\nঅঙ্গ\nঅঙ্গী\nঅঙ্গীকৃত\nঅঙ্গীভূত\nঅচঞ্চল\nঅচিত্ত\nঅচিন্ত্য\nঅচূর্ণ\nঅচূর্ণিত\nঅচেষ্ট\nঅচ্ছ\nঅচ্ছিদ্র\nঅচ্ছিন্ন\nঅচ্ছুত\nঅচ্ছেদ\nঅজ্ঞাবাদ\nঅত্যুক্তি\nঅদৃষ্ট\nঅনুপ্রেরণা\nঅন্তঃপাতী\nঅন্নপায়ী\nঅপভ্রংশ\nঅপর্ণা\nঅপুত্রক\nঅংশ\nঅংশক\nঅংশকূট\nঅংশন\nঅংশাঅংশি\nঅংশান্তর\nঅংশাবতার\nঅংশাংশ\nঅংশিত\nঅংশিন\nঅংশীদার\nঅংশীদারি\nঅংশীদারী\nঅংশু\nঅংশুক\nঅংশুকায়\nঅংশুধর\nঅংশুপট্ট\nঅংশুপতি\nঅংশুবাণ\nঅংশুমৎ\nঅংশুমৎফলা\nঅংশুমান\nঅংশুমালা\nঅংশুল\nঅংশুশিরা\nঅংশুহস্ত\nঅংস\nঅংসকূট\nঅংসফলক\nঅংসফলকাস্থি\nঅংসভার\nঅংহ\nঅংহতি\nঅংহ্রি\nঅংহ্রিপ\nআম",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": false,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": []
}
}
jt5bvdfmd7hi17ixwrd7y2447lk2hq9
133042
133041
2022-08-27T09:45:08Z
MdsShakil
6871
Updating JWB settings /*semi-automatic*/
json
application/json
{
"default": {
"string": {
"articleList": "",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": true,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": []
},
"অডিও": {
"string": {
"articleList": "অ-কার\nঅই\nঅইছে\nঅইন\nঅইল\nঅঋণ\nঅওঘর্ষণ\nঅওরো\nঅকট-বিকট\nঅকটকিনা\nঅকটু\nঅকড়িয়া\nঅকণ্ঠস্থ\nঅকথ্য\nঅকবি\nঅকমর্ণ্য\nঅকম্পন\nঅকম্প্র\nঅকর\nঅকরণ\nঅকরণি\nঅকরণী\nঅকরুণ\nঅকরোটি\nঅকর্ণ\nঅকর্তা\nঅকর্তৃত্ব\nঅকর্মকাণ্ড\nঅকর্মঠ\nঅকর্মভোগ\nঅকর্মার ধাড়ি\nঅকলঙ্কী\nঅকলমন্দি\nঅকলুষ\nঅকলুষিত\nঅকল্প\nঅকল্পনা\nঅকল্মষ\nঅকল্যাণ\nঅকল্যাণকরী\nঅকষ্টকল্পনা\nঅকষ্টবদ্ধ\nঅকাট\nঅকাঠিন্য\nঅকাণ্ড\nঅকাপট্য\nঅকাম\nঅকাম্য\nঅকায়\nঅকারান্ত\nঅকার্য\nঅকাল\nঅকালপক্ক\nঅকালপক্ব\nঅকালি\nঅকিল্মিষ\nঅকীক\nঅকীর্তি\nঅকীর্তিকর\nঅকীর্তিত\nঅকু\nঅকুতোভয়\nঅকুব\nঅকুমার\nঅকুমারী\nঅকুল\nঅকুলান\nঅকুলীন\nঅকুশল\nঅকুস্থল\nঅকুস্থান\nঅকূপার\nঅকূলপাথার\nঅকৃতজ্ঞতা\nঅকৃততাপরাধ\nঅকৃতদার\nঅকৃতদ্বাহ\nঅকৃতার্থ\nঅকৃতী\nঅকৃতোদ্বাহ\nঅকৃত্য\nঅকৃত্যকারী\nঅকৃপ\nঅকৃষ্ট\nঅকৈতব\nঅঁকোল\nঅকৌশল\nঅক্কা প্রাপ্তি\nঅক্কা\nঅক্টোপাস\nঅক্টোবর\nঅক্ত (বিশেষ্য)\nঅক্ত\nঅক্রম\nঅক্রমিক\nঅক্রিয়\nঅক্রিয়কর্মা\nঅক্রূর\nঅক্রেয়\nঅক্রোধ\nঅক্লান্ত\nঅক্লেশে\nঅক্ষ\nঅক্ষক\nঅক্ষকর্ণ\nঅক্ষকুশল\nঅক্ষকোবিদ\nঅক্ষত\nঅক্ষম\nঅক্ষয়\nঅক্ষি\nঅক্ষীয়\nঅক্ষুণ্ন\nঅক্ষোভ\nঅখণ্ডনীয়\nঅখন্ড\nঅখল\nঅখাত\nঅখাদ্য\nঅখিল\nঅখুশী\nঅখ্যাত\nঅগ\nঅগন্তব্য\nঅগম্য\nঅংগুস্তানা\nঅগ্র\nঅগ্রজ\nঅগ্রণী\nঅগ্রহনীয়\nঅগ্রাহ্য\nঅগ্রিম\nঅগ্রিয়\nঅগ্রে\nঅগ্র্য\nঅঘ্রাত\nঅঙ্কলক্ষ্মী\nঅঙ্কিত\nঅঙ্কুরিত\nঅঙ্গ\nঅঙ্গী\nঅঙ্গীকৃত\nঅঙ্গীভূত\nঅচঞ্চল\nঅচিত্ত\nঅচিন্ত্য\nঅচূর্ণ\nঅচূর্ণিত\nঅচেষ্ট\nঅচ্ছ\nঅচ্ছিদ্র\nঅচ্ছিন্ন\nঅচ্ছুত\nঅচ্ছেদ\nঅজ্ঞাবাদ\nঅত্যুক্তি\nঅদৃষ্ট\nঅনুপ্রেরণা\nঅন্তঃপাতী\nঅন্নপায়ী\nঅপভ্রংশ\nঅপর্ণা\nঅপুত্রক\nঅংশ\nঅংশক\nঅংশকূট\nঅংশন\nঅংশাঅংশি\nঅংশান্তর\nঅংশাবতার\nঅংশাংশ\nঅংশিত\nঅংশিন\nঅংশীদার\nঅংশীদারি\nঅংশীদারী\nঅংশু\nঅংশুক\nঅংশুকায়\nঅংশুধর\nঅংশুপট্ট\nঅংশুপতি\nঅংশুবাণ\nঅংশুমৎ\nঅংশুমৎফলা\nঅংশুমান\nঅংশুমালা\nঅংশুল\nঅংশুশিরা\nঅংশুহস্ত\nঅংস\nঅংসকূট\nঅংসফলক\nঅংসফলকাস্থি\nঅংসভার\nঅংহ\nঅংহতি\nঅংহ্রি\nঅংহ্রিপ\nআম",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "Q9610",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": false,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": []
}
}
2y3tpy4sjjfpyw526q5m49plv9usy7e
133043
133042
2022-08-27T09:48:41Z
MdsShakil
6871
Updating JWB settings /*semi-automatic*/
json
application/json
{
"default": {
"string": {
"articleList": "",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": true,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": []
},
"অডিও": {
"string": {
"articleList": "অ-কার\nঅই\nঅইছে\nঅইন\nঅইল\nঅঋণ\nঅওঘর্ষণ\nঅওরো\nঅকট-বিকট\nঅকটকিনা\nঅকটু\nঅকড়িয়া\nঅকণ্ঠস্থ\nঅকথ্য\nঅকবি\nঅকমর্ণ্য\nঅকম্পন\nঅকম্প্র\nঅকর\nঅকরণ\nঅকরণি\nঅকরণী\nঅকরুণ\nঅকরোটি\nঅকর্ণ\nঅকর্তা\nঅকর্তৃত্ব\nঅকর্মকাণ্ড\nঅকর্মঠ\nঅকর্মভোগ\nঅকর্মার ধাড়ি\nঅকলঙ্কী\nঅকলমন্দি\nঅকলুষ\nঅকলুষিত\nঅকল্প\nঅকল্পনা\nঅকল্মষ\nঅকল্যাণ\nঅকল্যাণকরী\nঅকষ্টকল্পনা\nঅকষ্টবদ্ধ\nঅকাট\nঅকাঠিন্য\nঅকাণ্ড\nঅকাপট্য\nঅকাম\nঅকাম্য\nঅকায়\nঅকারান্ত\nঅকার্য\nঅকাল\nঅকালপক্ক\nঅকালপক্ব\nঅকালি\nঅকিল্মিষ\nঅকীক\nঅকীর্তি\nঅকীর্তিকর\nঅকীর্তিত\nঅকু\nঅকুতোভয়\nঅকুব\nঅকুমার\nঅকুমারী\nঅকুল\nঅকুলান\nঅকুলীন\nঅকুশল\nঅকুস্থল\nঅকুস্থান\nঅকূপার\nঅকূলপাথার\nঅকৃতজ্ঞতা\nঅকৃততাপরাধ\nঅকৃতদার\nঅকৃতদ্বাহ\nঅকৃতার্থ\nঅকৃতী\nঅকৃতোদ্বাহ\nঅকৃত্য\nঅকৃত্যকারী\nঅকৃপ\nঅকৃষ্ট\nঅকৈতব\nঅঁকোল\nঅকৌশল\nঅক্কা প্রাপ্তি\nঅক্কা\nঅক্টোপাস\nঅক্টোবর\nঅক্ত (বিশেষ্য)\nঅক্ত\nঅক্রম\nঅক্রমিক\nঅক্রিয়\nঅক্রিয়কর্মা\nঅক্রূর\nঅক্রেয়\nঅক্রোধ\nঅক্লান্ত\nঅক্লেশে\nঅক্ষ\nঅক্ষক\nঅক্ষকর্ণ\nঅক্ষকুশল\nঅক্ষকোবিদ\nঅক্ষত\nঅক্ষম\nঅক্ষয়\nঅক্ষি\nঅক্ষীয়\nঅক্ষুণ্ন\nঅক্ষোভ\nঅখণ্ডনীয়\nঅখন্ড\nঅখল\nঅখাত\nঅখাদ্য\nঅখিল\nঅখুশী\nঅখ্যাত\nঅগ\nঅগন্তব্য\nঅগম্য\nঅংগুস্তানা\nঅগ্র\nঅগ্রজ\nঅগ্রণী\nঅগ্রহনীয়\nঅগ্রাহ্য\nঅগ্রিম\nঅগ্রিয়\nঅগ্রে\nঅগ্র্য\nঅঘ্রাত\nঅঙ্কলক্ষ্মী\nঅঙ্কিত\nঅঙ্কুরিত\nঅঙ্গ\nঅঙ্গী\nঅঙ্গীকৃত\nঅঙ্গীভূত\nঅচঞ্চল\nঅচিত্ত\nঅচিন্ত্য\nঅচূর্ণ\nঅচূর্ণিত\nঅচেষ্ট\nঅচ্ছ\nঅচ্ছিদ্র\nঅচ্ছিন্ন\nঅচ্ছুত\nঅচ্ছেদ\nঅজ্ঞাবাদ\nঅত্যুক্তি\nঅদৃষ্ট\nঅনুপ্রেরণা\nঅন্তঃপাতী\nঅন্নপায়ী\nঅপভ্রংশ\nঅপর্ণা\nঅপুত্রক\nঅংশ\nঅংশক\nঅংশকূট\nঅংশন\nঅংশাঅংশি\nঅংশান্তর\nঅংশাবতার\nঅংশাংশ\nঅংশিত\nঅংশিন\nঅংশীদার\nঅংশীদারি\nঅংশীদারী\nঅংশু\nঅংশুক\nঅংশুকায়\nঅংশুধর\nঅংশুপট্ট\nঅংশুপতি\nঅংশুবাণ\nঅংশুমৎ\nঅংশুমৎফলা\nঅংশুমান\nঅংশুমালা\nঅংশুল\nঅংশুশিরা\nঅংশুহস্ত\nঅংস\nঅংসকূট\nঅংসফলক\nঅংসফলকাস্থি\nঅংসভার\nঅংহ\nঅংহতি\nঅংহ্রি\nঅংহ্রিপ\nআম",
"timelimit": "3000",
"sizelimit": "0",
"summary": "",
"watchPage": "nochange",
"throttle": "0",
"skipContains": "উচ্চারণ",
"skipNotContains": "",
"containFlags": "",
"skipCategories": "",
"namespacelist": [
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"10",
"11",
"12",
"13",
"14",
"15",
"100",
"101",
"710",
"711",
"828",
"829",
"2300",
"2301",
"2302",
"2303"
],
"cmtitle": "",
"linksto-title": "",
"pssearch": "",
"titles": "",
"srsearch": "",
"smwquery": ""
},
"bool": {
"preparse": false,
"minorEdit": false,
"autosave": false,
"enableRETF": false,
"redir-follow": false,
"redir-skip": false,
"redir-edit": true,
"skipNoChange": false,
"exists-yes": false,
"exists-no": true,
"exists-neither": false,
"containRegex": false,
"categorymembers": false,
"cmtype-page": true,
"cmtype-subcg": true,
"cmtype-file": true,
"linksto": false,
"backlinks": true,
"embeddedin": false,
"imageusage": false,
"rfilter-redir": false,
"rfilter-nonredir": false,
"rfilter-all": true,
"linksto-redir": true,
"prefixsearch": false,
"psstrict": true,
"watchlistraw": false,
"proplinks": false,
"smwask": false
},
"replaces": [
{
"replaceText": "== {{ভাষা|bn}} ==",
"replaceWith": "== {{ভাষা|bn}} ==\\n===উচ্চারণ===\\n{{অডিও|bn|LL-Q9610 (ben)-Shakil Hosen (MdsShakil)-{{#JWB-SAFESUBST:#PAGENAME}}.wav}}",
"useRegex": false,
"regexFlags": "",
"ignoreNowiki": false
}
]
}
}
1g6rgtd3dbmvh0q7e966yznj3hb8lnb
সঞ্চিত
0
53275
132969
2022-08-27T05:10:40Z
Salil Kumar Mukherjee
7406
ভুক্তি তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষণ ===
{{বিশেষণ|bn}}
# সঞ্চয় করা হয়েছে এমন।
i2nskq3n6d8zh1hnvgys72jcmbed7ko
132971
132969
2022-08-27T05:12:39Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষণ ===
{{বিশেষণ|bn}}
# সঞ্চয় করা হয়েছে এমন।
# আহৃত।
rudunp8as1o9hfjfkguxjpsgel8exkc
মৃত্যু
0
53276
132972
2022-08-27T05:19:56Z
Salil Kumar Mukherjee
7406
ভুক্তি তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মরণ।
j67lsa1yyww4dbmm88yf9zadqr5qh7z
132973
132972
2022-08-27T05:21:41Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মরণ;
# প্রাণত্যাগ।
ni60mb2pu3xeu3mz3thqxbdg73tforj
132975
132973
2022-08-27T05:22:45Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# [[মরণ]];
# প্রাণত্যাগ।
rczz3t1hqnvip51p6zqk4tp0y11a6ra
মাফ
0
53277
132978
2022-08-27T05:30:27Z
Salil Kumar Mukherjee
7406
ভুক্তি তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মার্জনা;
1wpetg8zwmwpu0wx40n7ok1gn6cviq7
132979
132978
2022-08-27T05:30:56Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মার্জনা;
# ক্ষমা।
857pzm9n4b2x1l0tel0jdafv40icxfu
132980
132979
2022-08-27T05:31:32Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মার্জনা;
# ক্ষমা;
# রেহাই।
ajea1l948r24c451j2hb8y6qye1rpz6
132981
132980
2022-08-27T05:32:07Z
Salil Kumar Mukherjee
7406
লিঙ্ক যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# মার্জনা;
# [[ক্ষমা]];
# রেহাই।
r7evpwe3lnfhx2eh4ra3nywlai9gwfj
প্রাথমিক
0
53278
132983
2022-08-27T05:38:45Z
Salil Kumar Mukherjee
7406
ভুক্তি তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষণ ===
{{বিশেষণ|bn}}
# প্রারম্ভিক;
jp50lopozuypia5netshx1nipitucl7
132984
132983
2022-08-27T05:39:48Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষণ ===
{{বিশেষণ|bn}}
# প্রারম্ভিক;
# আরম্ভকালীন।
ajj1dhxv0tyg6jk6t5132dc5p3coq06
গুরু
0
53279
132986
2022-08-27T05:48:23Z
Salil Kumar Mukherjee
7406
ভুক্তি তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# শিক্ষক;
1ckh47nte0geoxtjjhg5qv3imw4293f
132987
132986
2022-08-27T05:49:01Z
Salil Kumar Mukherjee
7406
অর্থ যোগ
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# শিক্ষক;
# আচার্য।
1fplq0bsy2dvvrgiqdgbkcm0gk2zbys
আনুষ্ঠানিক
0
53280
132989
2022-08-27T06:10:05Z
MdsShakil
6871
+
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
=== বিশেষণ ===
{{বিশেষণ|bn}}
# অনুষ্ঠান বিষয়ক
# বিধিমত অনুষ্ঠান অনুসারে
b99mz732amiymuam0f5s43qgxyodhh3
132990
132989
2022-08-27T06:10:31Z
MdsShakil
6871
/* বিশেষণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
=== বিশেষণ ===
{{বিশেষণ|bn}}
# অনুষ্ঠান বিষয়ক
# বিধিমত অনুষ্ঠান অনুসারে
03mu9hbyz5i1xh60bhrgfjathur4tyk
132991
132990
2022-08-27T06:11:51Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
* [আনুশ্ঠানিক্]
=== বিশেষণ ===
{{বিশেষণ|bn}}
# অনুষ্ঠান বিষয়ক
# বিধিমত অনুষ্ঠান অনুসারে
onv2rqqo5bw2p8bx9uwmmpue3ojjtdy
132992
132991
2022-08-27T06:17:40Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
* [আনুশ্ঠানিক্]
{{অডিও|bn|LL-Q9610 (ben)-Titodutta-আনুষ্ঠানিক.wav|অডিও}}
=== বিশেষণ ===
{{বিশেষণ|bn}}
# অনুষ্ঠান বিষয়ক
# বিধিমত অনুষ্ঠান অনুসারে
c642do9xgahyfxo66tce69m5d4jy3ce
132997
132992
2022-08-27T06:36:08Z
MdsShakil
6871
/* {{ভাষা|bn}} */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
* [আনুশ্ঠানিক্]
{{অডিও|bn|LL-Q9610 (ben)-Titodutta-আনুষ্ঠানিক.wav|অডিও}}
=== বিশেষণ ===
{{বিশেষণ|bn}}
# অনুষ্ঠান বিষয়ক
# বিধিমত অনুষ্ঠান অনুসারে
=== অনুবাদ ===
* [[official]]
op3xnc0ns7yv1aeyxhfyifqrna73xgt
সাম্প্রতিক
0
53281
132996
2022-08-27T06:34:15Z
MdsShakil
6871
"== {{ভাষা|bn}} == === ব্যুৎপত্তি === ===উচ্চারণ=== === বিশেষণ === {{বিশেষণ|bn}} # আধুনিক # আজকালকার # ইদানীন্তন ===অনুবাদ=== # [[recent]]" দিয়ে পাতা তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
=== বিশেষণ ===
{{বিশেষণ|bn}}
# আধুনিক
# আজকালকার
# ইদানীন্তন
===অনুবাদ===
# [[recent]]
fllm7tn459erhrngdg2ua7kqzrodgjq
133005
132996
2022-08-27T07:26:05Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
{{অডিও|bn|LL-Q9610 (ben)-MdsShakil-সাম্প্রতিক.wav}}
=== বিশেষণ ===
{{বিশেষণ|bn}}
# আধুনিক
# আজকালকার
# ইদানীন্তন
===অনুবাদ===
# [[recent]]
nezm3t3akku1wu2pvxl9gd8asifgei4
ধারাবাহিক
0
53282
132998
2022-08-27T06:45:09Z
MdsShakil
6871
"== {{ভাষা|bn}} == === ব্যুৎপত্তি === ===উচ্চারণ=== === বিশেষ্য === {{বিশেষ্য|bn}} # নিরবচ্ছিন্ন" দিয়ে পাতা তৈরি
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# নিরবচ্ছিন্ন
icso1j5j7qtdgwilf6dous5t7bh3807
132999
132998
2022-08-27T06:45:52Z
MdsShakil
6871
/* {{ভাষা|bn}} */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# নিরবচ্ছিন্ন
=== অনুবাদ ===
# [[series]]
s66iom8364j3f3ohon5slahdiwaqwi6
133008
132999
2022-08-27T07:28:49Z
MdsShakil
6871
/* উচ্চারণ */
wikitext
text/x-wiki
== {{ভাষা|bn}} ==
=== ব্যুৎপত্তি ===
===উচ্চারণ===
* {{অডিও|bn|LL-Q9610 (ben)-MdsShakil-ধারাবাহিক.wav}}
=== বিশেষ্য ===
{{বিশেষ্য|bn}}
# নিরবচ্ছিন্ন
=== অনুবাদ ===
# [[series]]
hizhjb5k2dimr8two4hi9uvusxw9ky0