Wiktionary jawiktionary https://ja.wiktionary.org/wiki/Wiktionary:%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8 MediaWiki 1.47.0-wmf.5 case-sensitive メディア 特別 トーク 利用者 利用者・トーク Wiktionary Wiktionary・トーク ファイル ファイル・トーク MediaWiki MediaWiki・トーク テンプレート テンプレート・トーク ヘルプ ヘルプ・トーク カテゴリ カテゴリ・トーク 付録 付録・トーク TimedText TimedText talk モジュール モジュール・トーク Event Event talk 0 1015 2281123 2280742 2026-06-09T04:33:02Z Intolerable situation 84391 /* {{trans}} */ 2281123 wikitext text/x-wiki {{wikipedia|き}} [[ファイル:Japanese_Hiragana_kyokashotai_KI.svg|thumb|150px|き 教科書体]] [[ファイル:Japanese_Hiragana_KI.png|thumb|書き順]] =={{L|ja}}== [[Category:かな]] *[[平仮名]] *五十音図: [[か行]] [[い段]] *いろは順: 第38位。「さ」の次。「ゆ」の前。 *字源: [[幾]]の草体 *[[片仮名]]:[[キ]] *[[ローマ字]]:ki ==={{noun}}・木=== {{ja-noun|木|樹|材|柝}}<ref>「材」の表記は『改訂新版 漢字源』より。</ref> [[category:{{ja}}_木|*]] [[category:木|*]] {{wikipedia|木}} {{wikipedia|木 (数学)}} {{wikipedia|木構造 (データ構造)}} #('''木'''・'''樹''')多年生[[植物]]で[[木本]]の性質を持つものの称。[[樹木]]。[[ツリー]]。 #('''木'''・'''材''')語義1を切り出し、道具や建物を作る材料。[[材木]]、[[木材]]。 #('''木'''・'''柝''')語義2を用いて作った打楽器の一種。[[拍子木]]。 #*チョンと'''木'''が入る。<small>(注:=拍子木が「チョン」と打ち鳴らされる。)</small> #{{タグ|ja|数学}}('''木''')[[グラフ理論]]で[[閉路]]を持たない連結[[グラフ]]。任意の[[ノード]]を[[ね|根]]として決めると、全てのノードは[[唯一]]の[[おや|親]]ノードを持つ。[[ツリー]]。 #{{タグ|ja|情報技術}}('''木''')グラフ理論の木の形の[[データ構造]]。[[ツリー]]。 ===={{pron}}==== {{ja-pron|acc=1}} {{ja-accent-common|region=京阪|h|き|ー}} ===={{trans}}==== {{trans-top|樹木}} *{{T|is}}: {{t|is|tré}} *{{T|ain}}: [[ニ]] (ni) *{{T|ay}}: [[khoka]] *{{T|ak}}: {{t-|ak|dua}} *{{T|az}}: {{t|az|ağac}} *{{T|any}}: {{tø|any|baka}} *{{T|af}}: {{t|af|boom}} *{{T|ar}}: {{Arab|[[شجر|شَجَرٌ]]}} (šájar) {{m}} ''(集合名詞)'', {{Arab|[[شجرة|شَجَرَةٌ]]}} (šájara) {{f}} ''(単数)'' *{{T|arc}}: (シリア文字) [[ܐܝܠܢܐ]] (’īlānā’) {{m}}、(ヘブル文字) [[אילנא]] (’īlānā’) {{m}} *{{T|sq}}: {{t|sq|dru|m}}, {{t|sq|pemë|f}} *{{T|hy}}: {{t|hy|ծառ|tr=çaṙ|sc=Armn}} *{{T|it}}: {{t|it|albero|m}} *{{T|yi}}: [[בוים]] (boym) {{m}} *{{T|io}}: [[arboro]] {{m}} *{{T|ig}}: [[osịsị]] *{{T|ia}}: [[arbore]] *{{T|id}}: {{t|id|pohon}} *{{T|cy}}: {{t|cy|coeden}}, {{t|cy|pren}};〔口語〕{{t-|cy|colfen}} *{{T|uk}}: {{t|uk|дерево|n|tr=dérevo|sc=Cyrl}} *{{T|uz}}: {{t|uz|daraxt}} *{{T|ur}}: {{ur-Arab|[[پیڑ]]}} (pe.r) *{{T|en}}: (高木){{t|en|tree}};(低木){{t|en|shrub}} *:{{T|ang}}: {{t-|ang|treow|alt=trēow}}, {{t-|ang|beam|alt=bēam}}, {{t-|ang|wudu}} *{{T|et}}: {{t|et|puu}} *{{T|eo}}: {{t|eo|arbo}} *{{T|myv}}: [[чувто]] (chuvto) *{{T|oj}}: [[mitig]], [[mitigoog]] {{p}} *{{T|nl}}: {{t|nl|boom|m}} *{{T|gag}}: {{tø|gag|fidan}}, {{tø|gag|aaç}} *{{T|kk}}: {{t|kk|ағаш|tr=ağaş|sc=Cyrl}}, {{t|kk|дарақ|tr=daraq|sc=Cyrl}} *{{T|csb}}: {{t-|csb|drzéwò|n}} *{{T|ca}}: {{t|ca|arbre|m}} *{{T|gl}}: [[árbore]] {{f}} *{{T|yue}}: [[樹]]/[[树]](syu<sup>6</sup>), [[喬木]]/[[乔木]](kiu<sup>4</sup>muk<sup>6</sup>) *{{T|kn}}: {{t|kn|ಮರ|tr=mara}}, {{t|kn|ವೃಕ್ಷ|tr=vr̥kṣa}}, {{t|kn|ತರು|tr=taru}}, {{t|kn|ದ್ರುಮ|tr=druma}}, {{t|kn|ಪಾದಪ|tr=pādapa}} *{{T|ki}}: {{t-|ki|mũtĩ|c3}} *{{T|se}}: [[muorra]] *{{T|el}}: {{t|el|δέντρο|n|tr=déntro|sc=Grek}}, {{t|el|δένδρο|n|tr=déndro|sc=Grek}} *{{T|ky}}: {{t|ky|жыгач|tr=cığaç|sc=Cyrl}}, {{t|ky|дарак|tr=daraq|sc=Cyrl}} *{{T|gn}}: [[yvyra]] *{{T|km}}: {{Khmr|[[ដើមឈើ]]}} (darm cher) *{{T|cr}}: [[ᒥᔥᑎᒄ]] *{{T|kl}}: {{t-|kl|orpik}} *{{T|crh}}: {{tø|crh|terek}} *{{T|ka}}: [[ხე]] (xe) *{{T|qu}}: [[sacha]], [[sachakuna]] {{p}} *{{T|xh}}: [[umthi]] *{{T|egy}}: {{tø|egy|šn|sc=Egyp}} *{{T|cu}}: {{tø|cu|дрѣво|n|tr=drěvo|sc=Cyrs}} *{{T|non}}: [[tré]] *{{T|sm}}: {{t-|sm|la'au|alt=lā’au}} *{{T|sa}}: {{t|sa|तरु|m|tr=taru-|sc=Deva}}, {{t|sa|द्रुम|m|tr=druma-|sc=Deva}}, {{t|sa|वृक्ष|m|tr=vr̥kṣa-|sc=Deva}}, {{t|sa|कुज|m|tr=kuja-|sc=Deva}} *{{T|scn}}: {{t|scn|àrbulu|m}} *{{T|jv}}: {{t|jv|wit}} *{{T|sd}}: {{sd-Arab|[[ون]]}} (vanu) *{{T|sv}}: {{t|sv|träd|n}} *{{T|gd}}: [[craobh]] {{f}} *{{T|es}}: (高木){{t|es|árbol|m}};(低木){{t|es|arbusto|m}} *{{T|sk}}: {{t|sk|strom|m}} *{{T|sl}}: {{t|sl|drevo|n}} *{{T|sw}}: {{t|sw|mti}} {{s}}, {{t|sw|miti}} {{p}} (クラス3/4) *{{T|ceb}}: [[punuan]] *{{T|sh}}: *:キリル文字: [[дрво]] {{n}}, [[стабло]] {{n}} *:ラテン文字: {{t|sh|drvo|n}}, {{t|sh|stablo|n}} *{{T|so}}: {{t|so|geed}} *{{T|wen}}: *:{{T|hsb}}: [[štom]] *{{T|th}}: {{t|th|ต้นไม้|tr=tôn mái}} *{{T|tl}}: {{t|tl|puno}} *{{T|tg}}: [[дарахт]] (darakht) *{{T|tt}}: {{t|tt|агач|tr=agač}} *{{T|ta}}: {{t|ta|மரம்|tr=maram}} *{{T|cs}}: {{t|cs|strom|m}} *{{T|ce}}: {{tø|ce|дитт|tr=ditt|sc=Cyrl}} *{{T|cv}}: {{tø|cv|йывӑҫ|tr=yıvăś|sc=Cyrl}} *{{T|zh}}: {{t|zh|樹}}/{{t|zh|树|tr=shù}}, {{t|zh|喬木}}/{{t|zh|乔木|tr=qiáomù}} *{{T|ko}}: {{t|ko|나무}} *{{T|tzh}}: {{tø|tzh|te'}} *{{T|tzo}}: {{tø|tzo|te'}} *{{T|te}}: {{t|te|చెట్టు|tr=ceṭṭu}} *{{T|da}}: {{t|da|træ|n}} *{{T|de}}: 〔単数〕{{t|de|Baum|m}},〔複数〕{{t|de|Baum|p|alt=Bäume}} *{{T|tpn}}: [[ybyrá]] *{{T|tpi}}: [[diwai]] *{{T|tk}}: {{t|tk|agaç}} *{{T|tr}}: {{t|tr|ağaç}} *{{T|nah}}: [[cuahuitl]] *{{T|fy}}: [[beam]] *{{T|no}}: {{t|no|tre|n}} *{{T|ba}}: {{t-|ba|ағас|tr=ağas|sc=Cyrl}} *{{T|eu}}: [[zuhaitz]] *{{T|hu}}: {{t|hu|fa}} *{{T|pa}}: [[ਦਰੱਖ਼ਤ]] (daraḵḵẖt), [[ਪੇੜ]](pēṛ) *{{T|my}}: {{t|my|သစ်ပင်|tr=sacʻ paṅʻ}}, {{t|my|အပင်|tr=ʼa paṅʻ}}, {{t|my|သစ်|tr=sacʻ}} *{{T|hi}}: {{t|hi|वृक्ष|m|tr=vṛkṣa|sc=Deva}}, {{t|hi|पेड़|tr=peṛa}} *{{T|fi}}: {{t|fi|puu}} *{{T|fo}}: {{t-|fo|træ}} *{{T|fr}}: {{t|fr|arbre|m}} *{{T|bg}}: {{t|bg|дърво|n|tr=dǎrvo|sc=Cyrl}} *{{T|br}}: [[gwez]] ''(集合名詞)'' [[gwezenn]] {{f|s}} *{{T|vi}}: {{t|vi|cây}} *{{T|he}}: [[עץ|עֵץ]] (‛ēts) {{m}} *{{T|fa}}: {{t|fa|درخت|tr=deraxt|sc=fa-Arab}}, {{t-|fa|شجر|tr=šajar|sc=fa-Arab}} *{{T|bn}}: {{t|bn|গাছ|tr=gācha}}, {{t-|bn|বৃক্ষ|tr=br̥ksha}} *{{T|pl}}: {{qualifier|高木}} {{t|pl|drzewo|n}}; {{qualifier|低木}} {{t|pl|krzew|m}} *{{T|pt}}: {{t|pt|árvore|f}} *{{T|mk}}: {{t-|mk|дрво|n|tr=d'rvo|sc=Cyrl}} *{{T|mas}}: 〔単数〕{{tø|mas|chani|alt=olchani|m}},〔複数〕{{tø|mas|keek|alt=ilkeek}} *{{T|mr}}: [[झाड]] (zhād) *{{T|ml}}: {{t|ml|മരം|tr=maraṃ}}, {{t|ml|വൃക്ഷം|tr=vr̥kṣaṃ}} *{{T|mt}}: {{t-|mt|siġra}} *{{T|ms}}: {{t|ms|pokok}} *{{T|mnc}}: {{MongolUnicode|lang=mnc|[[ᠮᠣᠣ]]}} ({{t|mnc|moo}}) *{{T|gv}}: [[billey]] *{{T|mnw}}: {{t|mnw|ဆု|tr=chu}} *{{T|mn}}: {{t|mn|мод|tr=mod|sc=Cyrl}} *{{T|lo}}: {{t|lo|ຕົ້ນໄມ້|tr=ton-mai|sc=Laoo}} *{{T|la}}: {{t|la|arbor|f}} *{{T|lv}}: {{t|lv|koks}} *{{T|lt}}: {{qualifier|高木}} {{t|lt|mẽdis|m}}; {{qualifier|低木}} {{t|lt|krū́mas|m}} *{{T|ro}}: {{t|ro|arbore|m}}, {{t|ro|copac|m}}, {{t|ro|pom|m}} *{{T|lb}}: {{t|lb|Baam}} *{{T|ru}}: {{t|ru|дерево|alt=де́рево|n|tr=dérevo|sc=Cyrl}} {{trans-bottom}} {{trans-top|グラフ理論}} *{{T|en}}: {{t|en|tree}} *{{T|sv}}: {{t|sv|träd|n}} *{{T|ko}}: {{t|ko|나무}} {{trans-bottom}} {{trans-top|データ構造}} *{{T|en}}: {{t|en|tree}} *{{T|sv}}: {{t|sv|träd|n}} {{trans-bottom}} ==={{noun}}・黄=== {{ja-noun|黄}} #{{context|color|lang=ja}}卵の[[きみ|黄身]]のような色。[[きいろ|黄色]]。 ===={{pron}}==== {{ja-pron|acc=0|acc2=1}} {{ja-accent-common|region=京阪|h||きー}} ==={{noun}}・生=== {{ja-noun|生}} #[[まじりけ]]のないこと。元のままで手を加えていないこと。 ==={{verb}}=== {{head|ja|動詞 活用形}}【[[来]]】 #「[[くる]]」の連用形。 ===漢字=== [[Wiktionary:漢字索引 音訓 き]]参照 =={{L|ojp}}== [[Category:{{ojp}}]] ===万葉仮名の表記=== *甲:[[支]]、[[伎]]、[[岐]]、[[企]]、[[棄]]、[[寸]]、[[吉]]、[[杵]]、[[來]]、[[枳]]、[[耆]]、[[祗]]、[[祁]] *乙:[[貴]]、[[己]]、[[忌]]、[[紀]]、[[記]]、[[奇]]、[[寄]]、[[幾]]、[[機]]、[[木]]、[[城]]、[[綺]]、[[騎]]、[[基]]、[[氣]]、[[歸]]、[[樹]]、[[黄]] ==={{noun}}/{{adjectivenoun}}・黄=== {{ojp-noun|黄}} #{{context|color|lang=ojp}}色の名。[[黄色]]。[[きい]]。 {{古典日本語ナリ活用|き}} ==={{noun}}・酒=== {{ojp-noun|酒}} [[Category:{{ojp}}_酒|*]] #[[さけ]]。 #*[[神酒]]([[みき|み'''き''']])、[[御神酒]]([[おみき|おみ'''き''']]) ==={{noun}}・城=== {{ojp-noun|城|柵}} #[[しろ]]。[[城郭]]。 #*[[城戸|'''城'''戸]]([[きど|'''き'''ど]]) #[[とりで]]。[[城砦]]。{{ふりがな|堡塁|ほうるい}}。 #*[[干城|干'''城''']]([[たてき|たて'''き''']]) #*渟足'''柵'''(ぬたりの'''き''') ==={{noun}}・木=== {{ojp-noun|木}} [[Category:{{ojp}}_木|*]] #[[樹木]]、[[材木]]。 ===={{pron}}==== {{ojp-pron-noun-1-3}} ==={{verb}}=== {{head|ojp|動詞 活用形}}【[[来]]】 # 「[[く]]」の[[連用形]]。 ==={{auxverb}}=== {{head|ojp|助動詞}} #(体験過去)過去に自分が体験したことを回想する。 #*花面白かり'''き'''。 (花はすばらしかっ'''た''' 。) #*かれを見'''し'''とき (彼を見'''た''' とき) #伝聞などの、自己が体験し得ないこと、見なかったことについても自己の記憶に刻まれている場合。 #*音に聞き目にはいまだ見ず佐用比売が領布振り'''き'''とふ松浦山。 (評判に聞きまだ見ない。佐用比売が領布を振っ'''た'''という松浦山は。)(万葉集883) ====[[付録:日本語の活用|活用]]==== {{inf-ja-aux |接続 = 連用 |未然形 = せ |連用形 = ○ |終止形 = き |連体形 = し |已然形 = しか |命令形 = ○ |}} *カ変・サ変には未然形にも接続する。 **カ変は未然「こ」・連用「き」とも連体「し」・已然「しか」で接続する。サ変は未然「せ」の場合連体「し」・已然「しか」で接続し、連用「し」の場合終止「き」で接続する。 **カ変の連用形に接続する用例は少なく、複合名詞「{{おくりがな3|来|き|'''し'''|方|かた||きしかた}}」以外は殆ど見られない。 *未然形「せ」は「~せば~まし」という構文で「もしも~としたら~だろうに」という意味を表すのにのみ用いる。 ===={{syn}}==== *[[けり]] [[Category:日本語の基本語彙]] ===その他=== #ク活用の[[形容詞]]の[[連体形]]の[[活用語尾]] #* [[たかし|高き]]山。([[高い]]山) ==文字コード== {{codepoint}} c5l63otinsdcp34799s6bapqoe7z01g 2281124 2281123 2026-06-09T04:52:28Z Intolerable situation 84391 /* {{trans}} */ 2281124 wikitext text/x-wiki {{wikipedia|き}} [[ファイル:Japanese_Hiragana_kyokashotai_KI.svg|thumb|150px|き 教科書体]] [[ファイル:Japanese_Hiragana_KI.png|thumb|書き順]] =={{L|ja}}== [[Category:かな]] *[[平仮名]] *五十音図: [[か行]] [[い段]] *いろは順: 第38位。「さ」の次。「ゆ」の前。 *字源: [[幾]]の草体 *[[片仮名]]:[[キ]] *[[ローマ字]]:ki ==={{noun}}・木=== {{ja-noun|木|樹|材|柝}}<ref>「材」の表記は『改訂新版 漢字源』より。</ref> [[category:{{ja}}_木|*]] [[category:木|*]] {{wikipedia|木}} {{wikipedia|木 (数学)}} {{wikipedia|木構造 (データ構造)}} #('''木'''・'''樹''')多年生[[植物]]で[[木本]]の性質を持つものの称。[[樹木]]。[[ツリー]]。 #('''木'''・'''材''')語義1を切り出し、道具や建物を作る材料。[[材木]]、[[木材]]。 #('''木'''・'''柝''')語義2を用いて作った打楽器の一種。[[拍子木]]。 #*チョンと'''木'''が入る。<small>(注:=拍子木が「チョン」と打ち鳴らされる。)</small> #{{タグ|ja|数学}}('''木''')[[グラフ理論]]で[[閉路]]を持たない連結[[グラフ]]。任意の[[ノード]]を[[ね|根]]として決めると、全てのノードは[[唯一]]の[[おや|親]]ノードを持つ。[[ツリー]]。 #{{タグ|ja|情報技術}}('''木''')グラフ理論の木の形の[[データ構造]]。[[ツリー]]。 ===={{pron}}==== {{ja-pron|acc=1}} {{ja-accent-common|region=京阪|h|き|ー}} ===={{trans}}==== {{trans-top|樹木}} *{{T|is}}: {{t|is|tré}} *{{T|ain}}: [[ニ]] (ni) *{{T|ay}}: [[khoka]] *{{T|ak}}: {{t-|ak|dua}} *{{T|az}}: {{t|az|ağac}} *{{T|any}}: {{tø|any|baka}} *{{T|af}}: {{t|af|boom}} *{{T|ar}}: {{Arab|[[شجر|شَجَرٌ]]}} (šájar) {{m}} ''(集合名詞)'', {{Arab|[[شجرة|شَجَرَةٌ]]}} (šájara) {{f}} ''(単数)'' *{{T|arc}}: (シリア文字) [[ܐܝܠܢܐ]] (’īlānā’) {{m}}、(ヘブル文字) [[אילנא]] (’īlānā’) {{m}} *{{T|sq}}: {{t|sq|dru|m}}, {{t|sq|pemë|f}} *{{T|hy}}: {{t|hy|ծառ|tr=çaṙ|sc=Armn}} *{{T|it}}: {{t|it|albero|m}} *{{T|yi}}: [[בוים]] (boym) {{m}} *{{T|io}}: [[arboro]] {{m}} *{{T|ig}}: [[osịsị]] *{{T|ia}}: [[arbore]] *{{T|id}}: {{t|id|pohon}} *{{T|cy}}: {{t|cy|coeden}}, {{t|cy|pren}};〔口語〕{{t-|cy|colfen}} *{{T|uk}}: {{t|uk|дерево|n|tr=dérevo|sc=Cyrl}} *{{T|uz}}: {{t|uz|daraxt}} *{{T|ur}}: {{ur-Arab|[[پیڑ]]}} (pe.r) *{{T|en}}: (高木){{t|en|tree}};(低木){{t|en|shrub}} *:{{T|ang}}: {{t-|ang|treow|alt=trēow}}, {{t-|ang|beam|alt=bēam}}, {{t-|ang|wudu}} *{{T|et}}: {{t|et|puu}} *{{T|eo}}: {{t|eo|arbo}} *{{T|myv}}: [[чувто]] (chuvto) *{{T|oj}}: [[mitig]], [[mitigoog]] {{p}} *{{T|nl}}: {{t|nl|boom|m}} *{{T|gag}}: {{tø|gag|fidan}}, {{tø|gag|aaç}} *{{T|kk}}: {{t|kk|ағаш|tr=ağaş|sc=Cyrl}}, {{t|kk|дарақ|tr=daraq|sc=Cyrl}} *{{T|csb}}: {{t-|csb|drzéwò|n}} *{{T|ca}}: {{t|ca|arbre|m}} *{{T|gl}}: {{t|gl|árbore|f}} *{{T|yue}}: [[樹]]/[[树]](syu<sup>6</sup>), [[喬木]]/[[乔木]](kiu<sup>4</sup>muk<sup>6</sup>) *{{T|kn}}: {{t|kn|ಮರ|tr=mara}}, {{t|kn|ವೃಕ್ಷ|tr=vr̥kṣa}}, {{t|kn|ತರು|tr=taru}}, {{t|kn|ದ್ರುಮ|tr=druma}}, {{t|kn|ಪಾದಪ|tr=pādapa}} *{{T|ki}}: {{t-|ki|mũtĩ|c3}} *{{T|se}}: [[muorra]] *{{T|el}}: {{t|el|δέντρο|n|tr=déntro|sc=Grek}}, {{t|el|δένδρο|n|tr=déndro|sc=Grek}} *{{T|ky}}: {{t|ky|жыгач|tr=cığaç|sc=Cyrl}}, {{t|ky|дарак|tr=daraq|sc=Cyrl}} *{{T|gn}}: [[yvyra]] *{{T|km}}: {{Khmr|[[ដើមឈើ]]}} (darm cher) *{{T|cr}}: [[ᒥᔥᑎᒄ]] *{{T|kl}}: {{t-|kl|orpik}} *{{T|crh}}: {{tø|crh|terek}} *{{T|ka}}: [[ხე]] (xe) *{{T|qu}}: [[sacha]], [[sachakuna]] {{p}} *{{T|xh}}: [[umthi]] *{{T|egy}}: {{tø|egy|šn|sc=Egyp}} *{{T|cu}}: {{tø|cu|дрѣво|n|tr=drěvo|sc=Cyrs}} *{{T|non}}: [[tré]] *{{T|sm}}: {{t-|sm|la'au|alt=lā’au}} *{{T|sa}}: {{t|sa|तरु|m|tr=taru-|sc=Deva}}, {{t|sa|द्रुम|m|tr=druma-|sc=Deva}}, {{t|sa|वृक्ष|m|tr=vr̥kṣa-|sc=Deva}}, {{t|sa|कुज|m|tr=kuja-|sc=Deva}} *{{T|scn}}: {{t|scn|àrbulu|m}} *{{T|jv}}: {{t|jv|wit}} *{{T|sd}}: {{sd-Arab|[[ون]]}} (vanu) *{{T|sv}}: {{t|sv|träd|n}} *{{T|gd}}: [[craobh]] {{f}} *{{T|es}}: (高木){{t|es|árbol|m}};(低木){{t|es|arbusto|m}} *{{T|sk}}: {{t|sk|strom|m}} *{{T|sl}}: {{t|sl|drevo|n}} *{{T|sw}}: {{t|sw|mti}} {{s}}, {{t|sw|miti}} {{p}} (クラス3/4) *{{T|ceb}}: [[punuan]] *{{T|sh}}: *:キリル文字: [[дрво]] {{n}}, [[стабло]] {{n}} *:ラテン文字: {{t|sh|drvo|n}}, {{t|sh|stablo|n}} *{{T|so}}: {{t|so|geed}} *{{T|wen}}: *:{{T|hsb}}: [[štom]] *{{T|th}}: {{t|th|ต้นไม้|tr=tôn mái}} *{{T|tl}}: {{t|tl|puno}} *{{T|tg}}: [[дарахт]] (darakht) *{{T|tt}}: {{t|tt|агач|tr=agač}} *{{T|ta}}: {{t|ta|மரம்|tr=maram}} *{{T|cs}}: {{t|cs|strom|m}} *{{T|ce}}: {{tø|ce|дитт|tr=ditt|sc=Cyrl}} *{{T|cv}}: {{tø|cv|йывӑҫ|tr=yıvăś|sc=Cyrl}} *{{T|zh}}: {{t|zh|樹}}/{{t|zh|树|tr=shù}}, {{t|zh|喬木}}/{{t|zh|乔木|tr=qiáomù}} *{{T|ko}}: {{t|ko|나무}} *{{T|tzh}}: {{tø|tzh|te'}} *{{T|tzo}}: {{tø|tzo|te'}} *{{T|te}}: {{t|te|చెట్టు|tr=ceṭṭu}} *{{T|da}}: {{t|da|træ|n}} *{{T|de}}: 〔単数〕{{t|de|Baum|m}},〔複数〕{{t|de|Baum|p|alt=Bäume}} *{{T|tpn}}: [[ybyrá]] *{{T|tpi}}: [[diwai]] *{{T|tk}}: {{t|tk|agaç}} *{{T|tr}}: {{t|tr|ağaç}} *{{T|nah}}: [[cuahuitl]] *{{T|fy}}: [[beam]] *{{T|no}}: {{t|no|tre|n}} *{{T|ba}}: {{t-|ba|ағас|tr=ağas|sc=Cyrl}} *{{T|eu}}: [[zuhaitz]] *{{T|hu}}: {{t|hu|fa}} *{{T|pa}}: [[ਦਰੱਖ਼ਤ]] (daraḵḵẖt), [[ਪੇੜ]](pēṛ) *{{T|my}}: {{t|my|သစ်ပင်|tr=sacʻ paṅʻ}}, {{t|my|အပင်|tr=ʼa paṅʻ}}, {{t|my|သစ်|tr=sacʻ}} *{{T|hi}}: {{t|hi|वृक्ष|m|tr=vṛkṣa|sc=Deva}}, {{t|hi|पेड़|tr=peṛa}} *{{T|fi}}: {{t|fi|puu}} *{{T|fo}}: {{t-|fo|træ}} *{{T|fr}}: {{t|fr|arbre|m}} *{{T|bg}}: {{t|bg|дърво|n|tr=dǎrvo|sc=Cyrl}} *{{T|br}}: [[gwez]] ''(集合名詞)'' [[gwezenn]] {{f|s}} *{{T|vi}}: {{t|vi|cây}} *{{T|he}}: [[עץ|עֵץ]] (‛ēts) {{m}} *{{T|fa}}: {{t|fa|درخت|tr=deraxt|sc=fa-Arab}}, {{t-|fa|شجر|tr=šajar|sc=fa-Arab}} *{{T|bn}}: {{t|bn|গাছ|tr=gācha}}, {{t-|bn|বৃক্ষ|tr=br̥ksha}} *{{T|pl}}: {{qualifier|高木}} {{t|pl|drzewo|n}}; {{qualifier|低木}} {{t|pl|krzew|m}} *{{T|pt}}: {{t|pt|árvore|f}} *{{T|mk}}: {{t-|mk|дрво|n|tr=d'rvo|sc=Cyrl}} *{{T|mas}}: 〔単数〕{{tø|mas|chani|alt=olchani|m}},〔複数〕{{tø|mas|keek|alt=ilkeek}} *{{T|mr}}: [[झाड]] (zhād) *{{T|ml}}: {{t|ml|മരം|tr=maraṃ}}, {{t|ml|വൃക്ഷം|tr=vr̥kṣaṃ}} *{{T|mt}}: {{t-|mt|siġra}} *{{T|ms}}: {{t|ms|pokok}} *{{T|mnc}}: {{MongolUnicode|lang=mnc|[[ᠮᠣᠣ]]}} ({{t|mnc|moo}}) *{{T|gv}}: [[billey]] *{{T|mnw}}: {{t|mnw|ဆု|tr=chu}} *{{T|mn}}: {{t|mn|мод|tr=mod|sc=Cyrl}} *{{T|lo}}: {{t|lo|ຕົ້ນໄມ້|tr=ton-mai|sc=Laoo}} *{{T|la}}: {{t|la|arbor|f}} *{{T|lv}}: {{t|lv|koks}} *{{T|lt}}: {{qualifier|高木}} {{t|lt|mẽdis|m}}; {{qualifier|低木}} {{t|lt|krū́mas|m}} *{{T|ro}}: {{t|ro|arbore|m}}, {{t|ro|copac|m}}, {{t|ro|pom|m}} *{{T|lb}}: {{t|lb|Baam}} *{{T|ru}}: {{t|ru|дерево|alt=де́рево|n|tr=dérevo|sc=Cyrl}} {{trans-bottom}} {{trans-top|グラフ理論}} *{{T|en}}: {{t|en|tree}} *{{T|sv}}: {{t|sv|träd|n}} *{{T|ko}}: {{t|ko|나무}} {{trans-bottom}} {{trans-top|データ構造}} *{{T|en}}: {{t|en|tree}} *{{T|sv}}: {{t|sv|träd|n}} {{trans-bottom}} ==={{noun}}・黄=== {{ja-noun|黄}} #{{context|color|lang=ja}}卵の[[きみ|黄身]]のような色。[[きいろ|黄色]]。 ===={{pron}}==== {{ja-pron|acc=0|acc2=1}} {{ja-accent-common|region=京阪|h||きー}} ==={{noun}}・生=== {{ja-noun|生}} #[[まじりけ]]のないこと。元のままで手を加えていないこと。 ==={{verb}}=== {{head|ja|動詞 活用形}}【[[来]]】 #「[[くる]]」の連用形。 ===漢字=== [[Wiktionary:漢字索引 音訓 き]]参照 =={{L|ojp}}== [[Category:{{ojp}}]] ===万葉仮名の表記=== *甲:[[支]]、[[伎]]、[[岐]]、[[企]]、[[棄]]、[[寸]]、[[吉]]、[[杵]]、[[來]]、[[枳]]、[[耆]]、[[祗]]、[[祁]] *乙:[[貴]]、[[己]]、[[忌]]、[[紀]]、[[記]]、[[奇]]、[[寄]]、[[幾]]、[[機]]、[[木]]、[[城]]、[[綺]]、[[騎]]、[[基]]、[[氣]]、[[歸]]、[[樹]]、[[黄]] ==={{noun}}/{{adjectivenoun}}・黄=== {{ojp-noun|黄}} #{{context|color|lang=ojp}}色の名。[[黄色]]。[[きい]]。 {{古典日本語ナリ活用|き}} ==={{noun}}・酒=== {{ojp-noun|酒}} [[Category:{{ojp}}_酒|*]] #[[さけ]]。 #*[[神酒]]([[みき|み'''き''']])、[[御神酒]]([[おみき|おみ'''き''']]) ==={{noun}}・城=== {{ojp-noun|城|柵}} #[[しろ]]。[[城郭]]。 #*[[城戸|'''城'''戸]]([[きど|'''き'''ど]]) #[[とりで]]。[[城砦]]。{{ふりがな|堡塁|ほうるい}}。 #*[[干城|干'''城''']]([[たてき|たて'''き''']]) #*渟足'''柵'''(ぬたりの'''き''') ==={{noun}}・木=== {{ojp-noun|木}} [[Category:{{ojp}}_木|*]] #[[樹木]]、[[材木]]。 ===={{pron}}==== {{ojp-pron-noun-1-3}} ==={{verb}}=== {{head|ojp|動詞 活用形}}【[[来]]】 # 「[[く]]」の[[連用形]]。 ==={{auxverb}}=== {{head|ojp|助動詞}} #(体験過去)過去に自分が体験したことを回想する。 #*花面白かり'''き'''。 (花はすばらしかっ'''た''' 。) #*かれを見'''し'''とき (彼を見'''た''' とき) #伝聞などの、自己が体験し得ないこと、見なかったことについても自己の記憶に刻まれている場合。 #*音に聞き目にはいまだ見ず佐用比売が領布振り'''き'''とふ松浦山。 (評判に聞きまだ見ない。佐用比売が領布を振っ'''た'''という松浦山は。)(万葉集883) ====[[付録:日本語の活用|活用]]==== {{inf-ja-aux |接続 = 連用 |未然形 = せ |連用形 = ○ |終止形 = き |連体形 = し |已然形 = しか |命令形 = ○ |}} *カ変・サ変には未然形にも接続する。 **カ変は未然「こ」・連用「き」とも連体「し」・已然「しか」で接続する。サ変は未然「せ」の場合連体「し」・已然「しか」で接続し、連用「し」の場合終止「き」で接続する。 **カ変の連用形に接続する用例は少なく、複合名詞「{{おくりがな3|来|き|'''し'''|方|かた||きしかた}}」以外は殆ど見られない。 *未然形「せ」は「~せば~まし」という構文で「もしも~としたら~だろうに」という意味を表すのにのみ用いる。 ===={{syn}}==== *[[けり]] [[Category:日本語の基本語彙]] ===その他=== #ク活用の[[形容詞]]の[[連体形]]の[[活用語尾]] #* [[たかし|高き]]山。([[高い]]山) ==文字コード== {{codepoint}} 9lpbxvbx9hylb3457e07tadix0o1v6y 0 1041 2281104 2180788 2026-06-09T02:25:18Z Y-ange'777 121643 過剰かつ不当な差し戻しを訂正。 2281104 wikitext text/x-wiki {{kana-DEFAULTSORT|か}} ==漢字== <span lang="ja" xml:lang="ja" style="font-size:350%">{{PAGENAME}}</span> * {{部首|夊|7}} * {{総画|10}} {{kanji variants|夓|昰|𠍺|𡔰|𡕾|𨂮|𭼂|𰣠|𰣡=[[古字]]|𠀼|𠌘|𡕭|𡕻|𡖃|𣋗|𤴞|𩖳|𮶖|𰲭|𱂙|𱘤|𲅵|𲊱=[[同字]]|𭐢|𭐣|𭐥=[[俗字]]}} {{筆順}} ===字源=== * [[象形文字|象形]]。人の頭上に[[太陽]]があるさまを象る<ref group="字源">林志強等評注 『《文源》評注』 中国社会科学出版社、2017年、145頁。<br> 劉劍『古文字構形學』福建人民出版社、2006年、P.283</ref>。季節の「[[なつ]]」を意味する[[漢語]]{[[夏]] {{phoneme|*ɡrˤah}}}を表す字。 **原字「⿱日頁」中の「[[頁]]」が「[[夒]]」に訛変して「⿱日夒」の字形となり、「[[日]]」を省略して「[[夓]]」の字形となり、「[[𦥑]]」を省略して「夏」の字形となる。 ** かつて[[金文]]を根拠に「大きな面をつけて踊る人の姿を象る」という説があった<ref group="字源">白川静『普及版 字通』「[https://kotobank.jp/word/%E5%A4%8F-42060#w-2954241 夏]」</ref>が、[[甲骨文字]]の資料が示すようにこれは誤った分析である。 {{字源}} ====<参考文献>==== * [[上古音]]は布之道『[http://www.kaom.net/sgy_bzd.php 広韻形声考]』による。 <references group="字源" /> ===字義=== # [[なつ]]。四季のひとつ。 # 中国の王朝名。 ## [[禹]]によって開かれた中国の史書における最初の王朝。[[桀]]の代に[[殷]]に滅ぼされ、遺族は[[杞]]に封ぜられた。→[[w:夏 (三代)|夏 (三代)]]参照 ## [[五胡十六国]]の国のひとつ。→[[w:夏 (五胡十六国)|夏 (五胡十六国)]]参照 ## [[西夏]]の正称。→[[w:西夏|西夏]]参照 ===語源=== # '''なつ''':一説に、「空き時間」を意味する[[漢語]]{[[暇]] {{phoneme|*graas}}}に由来し、もと農作業が忙しくない季節の呼び名<ref group="語源">Laurent Sagart, Chinese 夏 ‘summer’: time of leisure ?, ''Sino-Tibetan-Austronesian'', 2023年2月11日。 https://stan.hypotheses.org/2246</ref>。 # '''王朝名''':一説に、「下」を意味する[[漢語]]{[[下]] {{phoneme|*graaʔ}}}に由来し<ref group="語源">楊寛 『中国上古史導論』 上海人民出版社、2016年。</ref>、もと上帝に対する下界や中原地域の呼び名。のちにそれらの地域を統治する伝説上の王朝の呼び名となった。 <references group="語源" /> {{漢字}} =={{L|ja}}== {{ja-kanji|常用=カ,ゲ,なつ|施策=教育:2|呉音=ゲ|漢音=カ|訓=なつ|古訓=おおきなり}} ==={{noun}}=== {{Wikipedia|夏}} [[Category:日本語]] [[Category:日本語_名詞|なつ]] [[Category:日本語_季語_夏|!]] [[Category:{{ja}} 暦|なつ]] # '''[[なつ]]''' [[季節]]([[四季]])の一つ。[[春]]の次、[[秋]]の前。 ===={{rel}}==== * [[春]] [[夏]] [[秋]] [[冬]] ===={{syn}}==== * [[サマー]] ===={{trans}}==== {{trans-see|なつ}} ===ことわざ=== * [[飛んで火に入る夏の虫]] ===熟語=== {{top|5|12em}} * [[甘夏]] * [[一夏]] * [[炎夏]] * [[華夏]] * [[夏芽]] * [[夏官]] * [[夏期]] * [[夏季]] * [[夏季熱]] * [[夏珪]] * [[夏枯草]] * [[夏蚕]] * [[夏日]] * [[夏日斑]] * [[夏伯]] * [[夏半]] * [[夏風楽]] * [[夏眠]] * [[夏卵]] * [[夏緑樹林]] * [[夏炉冬扇]] * [[季夏]] * [[九夏]] * [[去夏]] * [[夏解]] * [[夏安居]] * [[夏書]] * [[夏経]] * [[夏行]] * [[解夏]] * [[夏至]] * [[夏至線]] * [[夏至点]] * [[夏衆]] * [[夏中]] * [[結夏]] * [[夏花]] * [[夏臘]] * [[今夏]] * [[昨夏]] * [[三夏]] * [[子夏]] * [[朱夏]] * [[首夏]] * [[春夏秋冬]] * [[消夏]] * [[銷夏]] * [[暑夏]] * [[諸夏]] * [[初夏]] * [[盛夏]] * [[西夏]] * [[西夏文字]] * [[西洋夏雪草]] * [[大夏]] * [[中夏]] * [[仲夏]] * [[長夏]] * [[蔓夏枯草]] * [[冬扇夏炉]] * [[冬虫夏草]] * [[常夏]] * [[常夏月]] * [[夏茜]] * [[夏梅]] * [[夏扇]] * [[夏帯]] * [[夏神楽]] * [[夏陰]] * [[夏掛]] * [[夏風邪]] * [[夏鴨]] * [[夏柑]] * [[夏着]] * [[夏菊]] * [[夏狂言]] * [[夏水鶏]] * [[夏草]] * [[夏葛]] * [[夏胡頽子]] * [[夏茱萸]] * [[夏雲]] * [[夏毛]] * [[夏木立]] * [[夏小麦]] * [[夏仔]] * [[夏子]] * [[夏衣]] * [[夏作物]] * [[夏座敷]] * [[夏時間]] * [[夏時刻]] * [[夏白菊]] * [[夏水仙]] * [[夏姿]] * [[夏蝉]] * [[夏麻]] * [[夏空]] * [[夏大根]] * [[夏橙]] * [[夏足袋]] * [[夏椿]] * [[夏蔦]] * [[夏灯台]] * [[夏隣]] * [[夏鳥]] * [[夏念仏]] * [[夏野]] * [[夏場]] * [[夏羽織]] * [[夏萩]] * [[夏場所]] * [[夏黄櫨]] * [[夏初月]] * [[夏端月]] * [[夏羽]] * [[夏祓]] * [[夏服]] * [[夏藤]] * [[夏沸瘡]] * [[夏布団]] * [[夏帽子]] * [[夏祭]] * [[夏豆]] * [[夏蜜柑]] * [[夏道]] * [[夏虫]] * [[夏目]] * [[夏芽]] * [[夏物]] * [[夏桃]] * [[夏館]] * [[夏山]] * [[寧夏]] * [[半夏]] * [[半夏生]] * [[晩夏]] * [[火夏星]] * [[真夏]] * [[真夏日]] * [[孟夏]] * [[来夏]] * [[立夏]] * [[冷夏]] {{bottom}} ===関連語句=== * [[季節]](きせつ) * [[春]](はる) * [[秋]](あき) * [[冬]](ふゆ) =={{L|tyz}}== {{tyz-han|hạ|nom=y|pos=noun}} {{チュノム|qn=hạ}} ==={{noun}}=== #[[なつ]]。 =={{L|okm}}== {{okm-han|tg=강〯|tg2=ᅘᅡᆼ〯|tg3=ᅘᅡᆼ〮|hm=하|hmj=녀름}} =={{L|zh}}== {{zh-cat|xia4|固有名詞|姓|hsk=甲|hsk2=3|常=1}} [[Category:{{yue}}|ha6]] * {{trans_link|zh|夏}} * '''ローマ字表記''' ** '''[[普通話]]''' *** '''[[ピンイン]]''': [[xià]] (xia4) *** '''[[ウェード式]]''': hsia<sup>4</sup> *** '''[[注音符号]]''': [[ㄒ]][[ㄧ]][[ㄚ]]ˋ ** '''[[広東語]]''' *** '''[[イェール式]]''': ha6 ** '''[[閩南語]]''' *** '''[[POJ]]''': hā ** '''[[客家語]]''' *** '''[[白話字]]''': ha ** '''[[閩東語]]''' *** '''[[平話字]]''': hâ ** '''[[呉語]]''' *** '''[[ピンイン]]''': ya3, gho3 ** '''[[中古音]]''': *hæH ** '''[[上古音]]''': *ɡˁraʔ {*[ɡ]ˁraʔ} ~ [g]ˁraʔ-s, *ɢˁraʔ {*[ɢ]ˁraʔ} ==={{name}}=== #中国人の[[姓]]のひとつ。[[百家姓]]第154位。 =={{L|ko}}== {{ko-hanja|하|eumhun=[[여름]] 하|pos=name|cat2=姓}} ==={{name}}=== #朝鮮人の[[姓]]のひとつ。 =={{L|vi}}== {{vi-han|hạ|hè|pos=noun}} ==={{noun}}=== #[[なつ]]。 =={{コード}}== {{文字コード|jis=1-18-38|mj={{mjmoji|009419|009420|057256}}|gb=CFC4|cns=1-546E|big5=AE4C|ksx=1001-793E}} {{検字|倉頡=MUHE|四角=1024.7}} {{字典|dj=0485.290|hdz=20869.100|大字源=1735/1736|大漢語林=2100/2101|康煕=0245.120|新大字典=2904/2906|新潮漢字=2156|諸橋=5720}} d739bqs4jsqw7naw5z9hu4v599me5pa はい 0 1877 2281092 2214409 2026-06-09T01:54:36Z うーむ 129171 /* */ 2281092 wikitext text/x-wiki {{also|ハイ|ばい|バイ|パイ}} {{同音の漢字|Wiktionary:漢字索引 音訓 は#ハイ}} =={{ja}}== [[category:{{ja}}]] ===名詞:灰=== {{wikipedia|灰}} [[category:{{ja}}_{{noun}}]] '''はい'''【[[灰]]】 #固体が燃えた後に残る、燃焼物が含んでいた不 燃物又は[[酸化物]]で、特に[[粒子]]状になっているもの。 #[[火山]]が噴火した際に排出する粒子状の岩石。[[火山灰]]。 ===={{trans}}==== {{top}} *イタリア語: [[cenere]] *英語: [[ash]] *スペイン語: [[ceniza]] *中国語: [[灰]],[[灰烬]]/[[灰燼]] *ドイツ語: [[Asche]] *フランス語: [[cendre]] *ポーランド語: [[popiół]] *ポルトガル語: [[cinza]] *ルーマニア語: [[scrum]] [[cenuşă]] *ロシア語: [[пепел]] *{{ko}}: {{lang|ko|[[재]]}} {{bottom}} ===名詞:鮠・鯈・芳養=== [[Category:{{ja}}_魚]] {{wikipedia|ハヤ}} '''はい'''【[[鮠]], [[鯈]], [[芳]][[養]]】 # [[はや]]の[[別称]]。 ===名詞:蔤=== [[Category:{{ja}}_食品]] {{wikipedia|レンコン}} '''はい'''【[[蔤]]】 # [[蓮根|レンコン]]の[[別称]]。 ===={{trans}}==== *[[{{en}}]]: [[lotus]] [[root]] ===名詞:蝿=== {{ja-noun|蝿|蠅}} #{{context|dated|方言|昆虫|lang=ja}}[[はえ]]の古称、方言。 ===感動詞=== {{wikipedia}} [[Category:日本語_感動詞]] '''はい''' #[[質問]]に[[肯定的]]な[[回答]]をする語。[[反対語]]は「[[いいえ]]」 #*(肯定的質問に対して)「あなたは学生ですか。」「'''はい'''、そうです。」 #*(否定的質問に対して)「マスクはもうありませんか。」「'''はい'''、ありません。」 #[[勧誘]]や[[命令]]に応じる場合に使う語。 #*「'''はい'''、[[承知]]しました。」 #*「そろそろ出発するぞ」「'''はい'''」「立て」「'''はい'''」「進め」「'''はい'''」 #呼ばれた時に答える語。 #*「'''はい'''、○○(名前)です。」 #*「'''はい'''、何でしょうか。」 #[[相鎚]]を打つのに使う語 #聞き取れないときや理解しがたいときに聞き返す語 #*「'''はい'''? 何ですって?」 #時間の区切りを知らせる語。また終了、完成、決着などを表す語。 #*「'''はい'''、そこまで」 #*「1、2、3、'''はい'''!」 #*「'''はい'''、できた」 #*「'''はい'''、おれの勝ち」 #ものをあげたり渡したりするときの語 #*「おみやげです。'''はい'''、どうぞ」 #*「買い物行ってきて。'''はい'''、これお金。」 #人を呼びこんだり注意を促したりするときに使う語 #*「'''はい'''、こちらへどうぞ」 #*「'''はい'''、静かに。授業を始めます」 #[[牛]]、[[馬]]などを進ませる掛け声。 #*「'''はい'''、どうどう」 #文末に置いて、あまり自信のない様子や、へりくだった様子を示す語 #*「~だと思います、'''はい'''。」 ===={{etym}}==== (肯定の返事) おそらく漢語の[[拝]]から。 ====同義語==== ;質問に同意したりする場合に使う語 :*[[うん]](くだけた表現) :*[[ええ]] :*[[ああ]] :*[[然り]](古語) ;クイズやアンケートで答える語 :*[[イエス]] :*[[○]]、[[まる]] ;相槌 :*[[うん]](くだけた表現) :*[[ええ]] ;呼ばれた時に答える語 :*[[おう]](くだけた表現) ===={{trans}}==== {{trans-top|肯定的な返答}} *[[{{is}}]]<!--*Icelandic-->: [[já]] *[[{{ay}}]]<!--*Aymara-->: [[jisa]] *[[{{ar}}]]<!--*Arabic-->: {{ARchar|[[نعم|نَعَم]]}} {{Unicode|(náʕam)}}, {{ARchar|[[ايوه]]}} (’áiwa), {{ARchar|[[أجل]]}} *[[{{arc}}]]<!--*Aramaic-->::(シリア文字) [[ܐܝܢ]] (eyn)、(ヘブル文字) [[אין‎]] (eyn) *[[{{hy}}]]<!--*Armenian-->: [[այո]] (ayo) *[[{{it}}]]<!--*Italian-->: [[sì]] *[[{{yi}}]]<!--*Yiddish-->: [[יאָ]] (yo) *[[{{iu}}]]<!--*Inuktitut-->: [[ᐄ]] *[[{{ia}}]]<!--*Interlingua-->: [[si]] *[[{{cy}}]]<!--*Welsh-->: [[ie]] *[[{{vo}}]]<!--*Volapük-->: [[si]] *[[{{uk}}]]<!--*Ukrainian-->: {{lang|uk|[[так]]}} (tak), {{lang|uk|[[та]]}} (ta) (非公式), {{lang|uk|[[да]]}} (da) (一般的でない) *[[{{ur}}]]<!--*Urdu-->: {{URchar|[[ھاں]]}} (hā̃), {{URchar|[[ہاں]]}} *[[{{en}}]]: [[yes]], [[yeah]], [[ay]], [[aye]] *[[{{et}}]]<!--*Estonian-->: [[jah]] *[[{{eo}}]]<!--*Esperanto-->: [[jes]] *[[{{nl}}]]<!--*Dutch-->: [[ja]] *[[{{ca}}]]<!--*Catalan-->: [[sí]] *広東語: [[係]] (hai) *[[{{el}}]]<!--*Greek-->: [[ναι]] (ne) *[[{{gn}}]]<!--*Guarani-->: [[heẽ]] *[[{{ka}}]]<!--*Georgian-->: [[დიახ]] (diaχ), [[კი]] (ki) *[[{{ku}}]]<!--*Kurdish-->: [[belê]], [[erê]], [[a]], [[e]], [[ئا]] ,[[به‌ڵێ]] *[[{{hr}}]]<!--*Croatian-->: [[da]] *[[{{qu}}]]<!--*Quechua-->: [[arí]] *[[{{sc}}]]<!--*Sardinian-->: [[eja]] *[[{{sv}}]]<!--*Swedish-->: [[ja]], [[jo]] *[[{{es}}]]<!--*Spanish-->: [[sí]], [[simón]] (メキシコ、グアテマラにおける口語') *[[{{sk}}]]<!--*Slovak-->: [[áno]], [[hej]], [[no]] *[[{{sl}}]]<!--*Slovene-->: [[ja]], [[da]](文章語)' *[[{{ceb}}]]<!--*Cebuano-->: [[oo]] *[[{{sr}}]]<!--*Serbian-->: {{lang|sr|[[да]]}} ([[da]]) *[[{{th}}]]<!--*Thai-->: {{t+|th|ใช่|tr=châi}}, {{t+|th|ถูก|tr=thùuk}}, {{t+|th|ถูกต้อง|tr=thùuk tɔ̂ɔŋ}}〔公的な場で〕, {{t+|th|อืม|tr=ˀɯɯm}}〔略式〕 *[[{{tl}}]]<!--*Tagalog-->: [[oo]] *[[{{cs}}]]<!--*Czech-->: [[ano]] *[[{{zh}}]]<!--*Chinese-->: [[是]](shì), {{zh-ts|對|对}}(duì), [[嗯]] (n) *[[{{ko}}]]: {{lang|ko|[[예]], [[네]]}} *[[{{za}}]]<!--*Zhuang-->: [[wx]] *[[{{te}}]]<!--*Telugu-->: [[అవును]], [[ఔను]] *[[{{da}}]]<!--*Danish-->: [[ja]] *[[{{de}}]]<!--*German-->: [[ja]], [[doch]](否定疑問に対して) *[[{{tr}}]]<!--*Turkish-->: [[evet]] *[[{{no}}]]<!--*Norwegian-->: [[ja]] , [[jo]] *[[{{eu}}]]<!--*Basque-->: [[bai]] *[[{{hu}}]]<!--*Hungarian-->: [[igen]], [[de igen]] *[[{{bik}}]]<!--*Bikol-->: [[oo]] *[[{{hi}}]]<!--*Hindi-->: [[हाँ]] (hā̃) *[[{{fi}}]]<!--*Finnish-->: [[kyllä]] *[[{{fr}}]]<!--*French-->: [[oui]], [[si]](否定疑問に対して) *[[{{bg}}]]<!--*Bulgarian-->: {{lang|bg|[[да]]}} *[[{{br}}]]<!--*Breton-->: [[ya]], [[eo]], [[geo]] *[[{{vi}}]]<!--*Vietnamese-->: {{lang|vi|[[vâng]]}} (北), {{lang|vi|[[dạ]]}} (南), {{lang|vi|[[ờ]]}} (非公式) *[[{{he}}]]<!--*Hebrew-->: [[כן]] (ken) *[[{{fa}}]]<!--*Persian-->: {{FAchar|[[بله]]}} {{Unicode|(ˈbæle)}}, {{FAchar|[[آره]]}} (āré) *[[{{bn}}]]<!--*Bengali-->: [[হ্যাঁ]] (ɦæ̃) *[[{{pl}}]]<!--*Polish-->: [[tak]] *[[{{pt}}]]<!--*Portuguese-->: [[sim]] *[[{{mi}}]]<!--*Maori-->: [[āe]] *[[{{mk}}]]<!--*Macedonian-->: [[da]] *[[{{mt}}]]<!--*Maltese-->: [[iva]] *[[{{ms}}]]<!--*Malay-->: [[ya]] *[[{{lo}}]]<!--*Lao-->: {{t|lo|ແມ່ນ|tr=mëën|sc=Laoo}}, {{t|lo|ແມ່ນແລ້ວ|tr=mëën-lëëw|sc=Laoo}} *[[{{la}}]]<!--*Latin-->: [[ita]], [[ita vero]], [[sic]], [[recte]] *[[{{lv}}]]<!--*Latvian-->: [[jā]] *[[{{lt}}]]<!--*Lithuanian-->: [[taip]] *[[{{ro}}]]<!--*Romanian-->: [[da]] *[[{{ru}}]]<!--*Russian-->: {{lang|ru|[[да]]}} (da) *[[{{rm}}]]<!--*Romansch-->: [[gea]] {{trans-bottom}} * 否定疑問文に対する返答については、各言語の説明を参照すること。 {{trans-top|呼ばれたときの応答}} *[[{{en}}]]: [[here]] *[[{{ko}}]]: {{lang|ko|[[네]], [[예]]}} {{trans-bottom}} {{trans-top|相槌}} *[[{{en}}]]: [[uh-huh]] *[[{{ko}}]]: {{lang|ko|[[네]], [[예]], [[글쎄]], [[글쎄요]]}} {{trans-bottom}} ==={{verb}}=== {{head|ja|動詞 活用形}} #「[[はう]]」の連用形。 ---- =={{ryu}}== [[Category:{{ryu}}]] ==={{noun}}=== [[Category:{{ryu}}_{{noun}}]] '''はい''' # [[ひでり|日照り]] ===={{syn}}==== *[[ひゃん]] rah18bshudf0wdu5p24psp4iqxa4c12 he 0 2524 2280997 2275887 2026-06-08T15:30:43Z M-30722 1202 2280997 wikitext text/x-wiki {{wikipedia}} {{seeup2}} ==記号== ===={{code}}==== '''{{PAGENAME}}''' #{{ISO639-1}} #*[[w:ISO 639|ISO 639-2言語コード]]は"[[heb]]"。 ===={{etym}}==== *{{en}}:[[Hebrew]] =={{L|ain}}== {{ain-kana}} ==={{pron}}=== * {{ain-IPA}} ==={{parti}}=== {{head|ain|parti}} # ~か。 #* {{quote|ain|[[tu]] [[po]] [[kor]] [[pe]] [[oraun]] “[[konto]] [[i=]][[enkorke]] [[he]] [[ta]] [[kapacir]] [[tono]] [[utar]] [[set]] [[kar]] [[wa]] [[oka]] [[na]].”|二人の子供を持っていて、それから「川上の方でタカ神たちが巣を作っているぞ。」|ref=<ref>{{citation|author=貝澤とぅるしの|title=6-1 ウエペケㇾ「ヌサコㇿカムイ イカオピューキ」(祭壇を司る神さまが私 を助けた)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書1/3|year=1969|publication-date=2015年3月}}</ref>}} #* {{quote|ain|[[hokure]] [[suy]] [[kespa]] [[an]] [[kor]] [[a=]][[kor]] [[ottena]] [[e=]][[ne]] [[wa]] [[e=]][[ek]] [[kunip]] [[patek]] [[a=]][[etanosintaro]] [[he]] [[tap]].|さあ、毎年、私のオッテナが来ることばかりを楽しみにしています。|ref=<ref>{{citation|author=平賀さだも|title=10-3 ウエペケㇾ「ウラユシウンクㇽ」(ウラユシの人)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書2/3|year=1969|publication-date=2015年3月}}</ref>}} #* {{quote|ain|[[kamuy]] [[ne]] [[an]] [[kur]] [[ruyno]] [[simoye]] [[ruyno]] [[moymoyke]] [[a=]][[ki]] [[yak]] [[easir]] [[wen]] [[kamuy]] [[tumi]] [[u]] [[sone]] [[ka]] [[un]] [[a=]][[yayposore]] [[ne]] [[hi]] [[he]] [[ne]] [[ya]].|神なる人よ、激しい奮闘激しい働きを私たちがしたら初めて悪神の戦争を本当に通り抜けられるでしょうか。|ref=<ref>{{citation|author=平賀さだも|title=13-5 ユカㇻ「アペサㇰスクㇷ゚ ワッカサㇰスクㇷ゚ 」謡い途中でテープ切れ終了(火なしに育った、水なしに育った)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書2/3|year=1969|publication-date=2015年3月}}</ref>}} #* {{quote|ain|“[[teeta]] [[kane]] [[a=]][[onaha]] [[a=]][[unuhu]] [[e=]][[ronnu]] [[hi]] [[e=]][[oyra]] [[he]] [[ki]] [[ya]].|「昔むかし両親をお前が殺したことを忘れたか。|ref=<ref>{{citation|author=鍋澤ねぷき|title=16-10 ウエペケㇾ「アアチャハ イレス」(私の叔父に育てられた)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書2/3|year=1969|publication-date=2015年3月}}</ref>}} #* {{quote|ain|[[ayne]] [[sine]] [[pa]] [[he]] [[turano]] [[oka]][[=an]] [[kor]] [[suy]] [[nea]] [[a=]][[maci]] [[suy]] [[a=]][[rayke]] [[rusuy]], [[neun]] [[a=]][[eyaynita]] [[yakka]] [[a=]][[eyaynita]] [[ka]] [[koyaykus]].|そうして1年'''ほど'''一緒に過ごしたのですが、やはりその嫁も、また殺したくなりました。いくら我慢しようとしても我慢できません。|ref=<ref>{{citation|author=平目よし|title=18-4 ウエペケㇾ「ウッコッナイ アイヌ アネ」途中でテープ切れ(好色が元で死んだ男の話)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書3/3|year=1969|publication-date=2015年3月}}</ref>}} #* {{quote|ain|[[ta]] [[turasi]] [[e=]][[hemesu]] [[nay]] [[poro]] [[kot]] [[he]] [[oma]] [[wa]] [[kari]] [[e=]][[hemesu]] [[nay]], [[nay]] [[arke]] [[wa]] [[kerepnoye]] [[a=]][[saha]] [[ne]].|この、あなたがのぼってきた沢は大きな窪地に入っていて、あなたが通ってきた沢の片側のトリカブトは私の姉です。|ref=<ref>{{citation|author=黒川てしめ|title=24-3 ウエペケㇾ 「ケレㇷ゚ノイェ ケレㇷ゚トゥㇽセ 」(トリカブトとオオトリカブト)|publisher=文化庁 アイヌ語の保存・継承に必要なアーカイブ化に関する調査研究事業|journal=第2年次調査研究報告書3/3|year=1969|publication-date=2015年3月}}</ref>}} ===参考文献=== {{Reflist}} =={{L|en}}== {{wikipedia|lang=en}} ===発音=== ;強形 *{{IPA|lang=en|hiː}} * {{音声|en|en-us-he.ogg|a=米}} * {{音声|en|En-uk-he.ogg|a=英}} ;弱形 *{{IPA|lang=en|i, hi(ː)}} ===人称代名詞=== {{head|en|pronoun|複数|they|所有格|his|目的格|him|所有代名詞|his|再帰代名詞|himself}} # (第三人称単数男性主格){{ふりがな|彼|かれ}}。 #*1902年, Beatrix Potter. "The Tale of Peter Rabbit"<ref>Beatrix Potter. "The Tale of Peter Rabbit". 1902. (Project Gutenberg. January 30, 2005. https://www.gutenberg.org/files/14838/14838-h/14838-h.htm)</ref> #*{{ux|en|The window was too small for Mr. McGregor, and '''he''' was tired of running after Peter.|その窓はマグレガーさんには小さ過ぎました。彼はピーターを追いかけるのにうんざりしました。}} #{{タグ|en|古用法}}(性を問わない3人称単数主格) [[かれ|彼]][[または]][[彼女]]。その[[ひと|人]]。 #*1900年, L. Frank Baum, "The Wonderful Wizard of Oz"<ref>L. Frank Baum. "The Wonderful Wizard of Oz". 1900. (Project Gutenberg. Release Date: February, 1993. Most recently updated: October 19, 2020. https://www.gutenberg.org/files/55/55-h/55-h.htm)</ref> #*{{ux|en|In this country everyone must pay for everything '''he''' gets.|この国では誰もが、自分が得ようとする全てに対価を払わなければならない。}} ===={{syn}}==== *(語義2)[[he or she]], [[s/he]], [[they]] ===={{rel}}==== {{英語 人称代名詞}} ==={{noun}}=== {{en-noun}} #[[男性]]、{{ふりがな|雄|おす}}。 #*{{ux|en|Is your dog a '''he''' or a she?|あなたの犬は'''雄'''か雌のどちらですか。}} ====対義語==== *[[she]] [[カテゴリ:ベーシック英語 850単語]] =={{L|ki}}== ===語源=== Hinde (1904) は{{etyl|en|-}} {{l|en|give}} にあたるキクユ語「ジョゴウィニ方言」(''Jogowini dialect'')の訳語として kuha を記録している<ref name="hh1904">Hinde, Hildegarde (1904). [https://archive.org/details/vocabulariesofka00hindiala ''Vocabularies of the Kamba and Kikuyu languages of East Africa''], pp. 26&ndash;27. Cambridge: Cambridge University Press.</ref>。なお、これに対応する{{etyl|sw|-}}は {{l|sw|pa|kupa}} などが挙げられている<ref name="hh1904" />。 ==={{pron}}=== * {{IPA|lang=ki|hɛ}} ===動詞=== {{head|ki|verb}}(不定形: {{l|ki|kũhe}}) # [[あたえる|与える]]。[[あげる]]。 ====ことわざ==== * {{l|ki|mwana ndaheanagwo}} ====関連語==== 名詞: * {{l|ki|kĩheeo|kĩhe(e)o}} * {{l|ki|maheeo}} ===参考文献=== * {{R:ki:Armstrong|p=361}} =={{L|es}}== ==={{verb}}=== {{es-verb-form}} # [[haber]] の直説法現在第一人称単数形。 # haber の命令法第二人称単数形。 =={{L|fi}}== ==={{etym}}1=== {{etyl|fiu-fin-pro|fi}} {{m|fiu-fin-pro|*hek}} < {{etyl|urj-fpr-pro|fi}} {{m|urj-fpr-pro|*sej}} {{cog|se|sii}} {{cog|myv|сынь}} ===={{pron}}==== {{fi-pronunciation|a=LL-Q1412 (fin)-Seqv-he.wav|a2=LL-Q1412 (fin)-Susannaanas-he.wav|a3=LL-Q1412 (fin)-Nurtsio-he.wav}} ===={{pronoun}}==== {{head|fi|pronoun|cat2=人称代名詞}} #{{label|fi|人物のみ}} [[かれら|彼ら]]、[[彼女ら]]、その[[ひとたち|人たち]]。 #: {{syn|fi|het}} (方言), {{l|fi|hyö}} (方言), {{l|fi|ne}} (口語) #: {{uxi|fi|'''He''' tulevat huomenna, jos '''heille''' ei ilmaannu estettä.|'''彼ら/彼女らは'''トラブルがなければ、明日来るよ。 }} # {{label|fi|敬意を表して|{{m|fi|hän}} に対応}} [[かれ|彼]]、[[彼女]]、その[[ひと|人]]。 #{{label|fi|間接話法で}} 彼ら、彼女ら、その人たち。 #: 主節の主語を指すが、この場合人間であるかは問わない ====={{usage}}===== * 標準フィンランド語では、動詞が人称と数の両方を示している場合でも {{m|fi||he}} は一般的に省略されない({{m|fi|hän}}の用法と比較を)。 ====={{decl}}===== * 不規則変化(語幹 {{m|fi||hei-}} は複数形の場合も同じ)であり、共格形と具格形は存在しない。欠格形はもうほぼ使われていない。 * 標準的な格変化に加えて、{{m|fi||he}} や他の人称代名詞には特定の対格形が存在する。{{m|fi||he}} の場合は {{m|fi|heidät}} という語形である。 {{fi-decl-pron|1s=[[hän]]|2s=[[hänen]]|3s=[[häntä]]|4s=[[hänet]]|5s=[[hänessä]]|6s=[[hänestä]]|7s=[[häneen]]|8s=[[hänellä]]|9s=[[häneltä]]|10s=[[hänelle]]|11s=[[hänenä]]|12s=[[häneksi]]|13s=[[hänettä]]|1p='''he'''|2p=[[heidän]]|3p=[[heitä]]|4p=[[heidät]]|5p=[[heissä]]|6p=[[heistä]]|7p=[[heihin]]|8p=[[heillä]]|9p=[[heiltä]]|10p=[[heille]]|11p=[[heinä]]|12p=[[heiksi]]|13p=[[heittä]]|adv=no}} ====={{drv}}===== {{top3}} * {{l|fi|heidänlainen}} * {{l|fi|heidänlaisensa}} * {{l|fi|heikäläinen}} {{bottom}} ====={{desc}}===== * {{desc|fkv|het}} <!-- ===={{seealso}}==== {{fi-personal pronouns}}--> ====参考文献==== * {{R:fi:KTSK|num=1|accessdate=2024-10-09}} ==={{etym}}2=== {{etyl|phn|fi}} {{m|phn|𐤄}} や {{etyl|hbo|fi}} {{m|hbo|ה}} より ===={{pron}}==== {{fi-p|he(:)}} ===={{noun}}==== {{fi-noun}} # [[ヘー]]。 #: ヘブライ文字とフェニキア文字の5番目の文字名 ====={{decl}}===== {{fi-decl-rosé|he|ä|ill_sg_vowel=e}} ==註== <references/> 7l5q8a7ok2dn05vmbpae0ug7j244v9p dormir 0 7593 2281273 1709192 2026-06-09T11:20:11Z Kuroco2k 84207 2281273 wikitext text/x-wiki =={{L|ast}}== ==={{alter}}=== * {{l|ast|adormir}} ==={{etym}}=== {{etyl|la|ast}} {{m|la|dormīre}} ==={{verb}}=== {{ast-verb}} #{{context|intransitive|lang=ast}}{{おくりがな2|眠|ねむ|る|ねむる}}。 {{ast-conj-ir|dorm}} ---- =={{L|ia}}== ==={{verb}}=== {{ia-verb|ir}} #{{context|intransitive|lang=ia}}{{おくりがな2|眠|ねむ|る|ねむる}}。 {{ia-conj|dorm|ir|intr=yes}} ---- =={{L|vec}}== ==={{etym}}=== {{etyl|la|vec}} {{m|la|dormīre}} ==={{verb}}=== {{head|vec|verb}} #{{context|intransitive|lang=vec}}{{おくりがな2|眠|ねむ|る|ねむる}}。 {{vec-conj-auto}} ===={{syn}}==== * {{l|vec|momir}}, {{l|vec|polegiar}} ===={{rel}}==== * {{l|vec|indormesar}} * {{l|vec|indormesarse}} * {{l|vec|indormia}} ---- =={{L|oc}}== ==={{alter}}=== * {{l|oc|dourmir}} ==={{etym}}=== {{etyl|pro|oc}} {{m|pro|dormir}} < {{etyl|la|oc}} {{m|la|dormīre}} ==={{pron}}=== * {{音声|oc|LL-Q942602-Davidgrosclaude-dormir.wav|音声(ラングドック)}} ==={{verb}}=== {{oc-verb|dorm|ir}} #{{context|intransitive|lang=oc}}{{おくりがな2|眠|ねむ|る|ねむる}}。 {{oc-conj-ir|dorm}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|dormīre}} < {{etyl|itc-pro|ca}} {{m|itc-pro|*dormiō}} < {{etyl|ine-pro|ca}} {{m|ine-pro|*drem-}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Unjoanqualsevol-dormir.wav|音声}} * {{rhymes|i(ɾ)|s=2}} ==={{verb}}=== {{ca-verb|ir|dorm}} #{{context|intransitive|lang=ca}}{{おくりがな2|眠|ねむ|る|ねむる}}。 {{ca-conj-ir-pure|dorm}} ===={{ant}}==== *[[despertar]] ===={{drv}}==== {{top}} * {{l|ca|adormir}} * {{l|ca|condormir}} * {{l|ca|dorment}} * {{l|ca|dormida}} * {{l|ca|dormidor}} * {{l|ca|dormidora}} * {{l|ca|dormilec}} * {{l|ca|dormilega}} * {{l|ca|dormiment}} * {{l|ca|dormisquejar}} * {{l|ca|dormitar}} {{bottom}} ===={{rel}}==== * {{l|ca|dormició}} * {{l|ca|dormitiu}} * {{l|ca|dormitori}} ---- =={{L|fro}}== ==={{etym}}=== {{etyl|la|fro}} {{m|la|dormīre}} ==={{verb}}=== {{head|fro|verb}} #{{context|intransitive|lang=fro}}{{おくりがな2|眠|ねむ|る|ねむる}}。 ===={{conjugation}}==== {{fro-conj-iii}} ===={{desc}}==== * {{desc|frm|dormir}} ** {{desc|fr|dormir}} * {{desc|nrf|dormi}} * {{desc|wa|doirmi}} ---- =={{L|pro}}== ==={{etym}}=== {{etyl|la|pro}} {{m|la|dormīre}} ==={{verb}}=== {{head|pro|verb}} #{{おくりがな2|眠|ねむ|る|ねむる}}。 ===={{desc}}==== * {{desc|oc|dormir}} ----- =={{L|es}}== ==={{pron}}=== * {{IPA|lang=es|doɾˈmiɾ}} ==={{etym}}=== {{etyl|la|es}} ''[[dormire]]'' ==={{verb}}=== {{es-verb|dorm|ir|pres=duermo}} # {{おくりがな2|眠|ねむ|る|ねむる}}。 ===={{conjug}}==== {{es-conj|<ue-u>}} {{es-conj|dormirse<ue-u>}} ===={{rel}}==== *[[dormición]] *[[dormitar]] *[[dormitivo]] *[[dormitorio]] *[[adormecer]] ----- =={{L|frm}}== ==={{etym}}=== {{etyl|fro|frm}} {{m|fro|dormir}} < {{etyl|la|frm}} {{m|la|dormīre}} ==={{verb}}=== {{head|frm|verb}} #{{context|intransitive|lang=frm}}{{おくりがな2|眠|ねむ|る|ねむる}}。 ===={{desc}}==== * {{desc|fr|dormir}} ---- =={{L|fr}}== ==={{etym}}=== {{etyl|frm|fr}} {{m|frm|dormir}} < {{etyl|fro|fr}} {{m|fro|dormir}} < {{etyl|la|fr}} {{m|la|dormīre}} < {{etyl|itc-pro|fr}} {{m|itc-pro|*dormiō}} < {{etyl|ine-pro|fr}} {{m|ine-pro|*drem-}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-dormir.ogg|音声}} * {{rhymes|iʁ}} ==={{verb}}=== {{fr-verb}} # {{おくりがな2|眠|ねむ|る|ねむる}}、眠っている。 ===={{conjugation}}==== {{fr-conj-auto}} ===={{rel}}==== *[[dormance]] *[[dormant]] *[[dormeur]] *[[dormitif]] *[[endormir]] ---- =={{L|pt}}== ==={{pron}}=== * {{IPA|lang=pt|doɾˈmiɾ}} ==={{etym}}=== {{etyl|la|pt}} ''[[dormire]]'' ==={{verb}}=== {{pt-verb||dormir}} # {{おくりがな2|眠|ねむ|る|ねむる}}、{{おくりがな2|泊|と|まる|とまる}}。 # [[静止]]している、活動していない。 ===={{conjugation}}==== {{pt-conj||dormir}} ==={{noun}}=== {{pt-noun|m}} # [[睡眠]]。 ==={{rel}}=== *[[dormida]] *[[dormideira]] *[[dormitar]] *[[dormitivo]] *[[dormitório]] *[[adormecer]] ==={{desc}}=== * {{desc|kea|durmi}} * {{desc|pov|durmi}} * {{desc|pap|drumi}} ---- =={{L|lld}}== ==={{alter}}=== * {{l|lld|dormí}} ==={{etym}}=== {{etyl|la|lld}} {{m|la|dormīre}} ==={{verb}}=== {{head|lld|verb}} #{{context|intransitive|lang=lld}}{{おくりがな2|眠|ねむ|る|ねむる}}。 ===={{conjugation}}==== {{lld-conj-IV|dorm|ester}} sabsuhn0jrif3jpmktnnxl1awshi5du カテゴリ:動物 14 10058 2280921 2019022 2026-06-08T13:45:21Z 鍼灸 112313 2280921 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学}} * {{Pathnav|カテゴリ|分野|自然|生物}} </div> {{wikipedia|category=動物}} [[動物]]に関する語彙 {{DEFAULTSORT:とうふつ}} [[カテゴリ:動物学|*とうふつ]] [[カテゴリ:生物|*とうふつ]] [[カテゴリ:分野の一覧]] lv23u7intr8vh6pvshj05xutklnkh4q 通貨 0 13302 2281179 2210278 2026-06-09T08:46:31Z Jiba1219 100610 2281179 wikitext text/x-wiki {{kana-DEFAULTSORT|つうか}} {{wikipedia|通貨}} =={{L|ja}}== {{ja-pron|つうか|acc=1|acc_ref=NHK}} ==={{noun}}=== {{ja-noun|[[つうか]]}} {{topcat|ja|通貨}} #[[もの|物]]や[[サービス]]の[[価値]]が[[一定]]の[[単位]]で[[化体]]され、[[国家]]等の[[強制力]]により[[流通]]が[[保証]]されたもの。流通貨幣の[[略]]とされる。 ===={{syn}}==== *[[貨幣]] ===={{prov}}==== *[[基軸通貨]] ===={{trans}}==== {{top}} *[[アラム語]]: *:[[シリア文字]]: [[ܟܣܦܐ]] (kespā, kespo) {{m}} *:[[ヘブル文字]]: [[כספא]] (kespā, kespo) {{m}} *{{cs}}: [[peníze]] {{m}} {{p}} *[[{{da}}]]<!--*Danish-->: [[valuta]] {{c}}, [[møntenhed]] {{c}} *[[{{de}}]]<!--*German-->: [[Währung]] {{f}} *[[{{el}}]]<!--*Greek-->: [[νόμισμα]] {{n}} *{{en}}:{{trans_link|en|currency}} *[[{{eo}}]]<!--*Esperanto-->: [[mono]], [[valuto]] *[[{{fi}}]]<!--*Finnish-->: [[valuutta]], [[raha]], [[rahayksikkö]] *[[{{fr}}]]<!--*French-->: [[monnaie]] {{f}} *{{he}}: [[כסף]] (késef) {{m}} *[[{{ia}}]]<!--*Interlingua-->: [[moneta]], [[numerario]] *[[{{id}}]]<!--*Indonesian-->: [[mata uang]], [[valuta]] *{{is}}: [[gjaldmiðill]] {{m}} *[[{{nl}}]]<!--*Dutch-->: [[munteenheid]] {{f}} *[[{{no}}]]<!--*Norwegian-->: [[valuta]] *[[{{pl}}]]<!--*Polish-->: [[Waluta]] *[[{{pt}}]]<!--*Portuguese-->: [[moeda]] {{f}} *[[{{ru}}]]<!--*Russian-->: [[валюта]] (val'úta) {{f}}, [[деньги]] (d'én’gi) {{p}} *[[{{sl}}]]<!--*Slovenian-->: [[valuta]] *[[{{es}}]]<!--*Spanish-->: [[moneda]] {{f}} *[[{{sv}}]]<!--*Swedish-->: [[valuta]] *[[{{te}}]]<!--*Telugu-->: [[ద్రవ్యం]] (dravyaM) *[[{{th}}]]<!--*Thai-->: {{THchar|[[เงินตรา]]}} *[[{{tr}}]]<!--*Turkish-->: [[para birimi]] *[[{{zh}}]]<!--*Chinese-->: {{t|zh|货币|tr=huòbì}} {{bottom}} ===脚注=== {{Reflist}} =={{L|zh}}== {{zh-cat|tong1huo4|noun}} {{topcat|zh|通貨}} {{yue-cat|tung1fo3|noun}} {{topcat|yue|通貨}} ==={{pron}}=== {{cmn-pron|tōnghuò}} {{yue-pron|tung1 fo3}} ==={{noun}}=== {{zhchars|s=通货}} #(日本語に同じ)通貨。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|통화}} {{topcat|ko|通貨}} #(日本語に同じ)通貨。 3bnfcpi6tnlfdrp40a58hkpfwo1v34r 2281180 2281179 2026-06-09T08:46:45Z Jiba1219 100610 2281180 wikitext text/x-wiki {{kana-DEFAULTSORT|つうか}} {{wikipedia|通貨}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|つうか|acc=1|acc_ref=NHK}} ==={{noun}}=== {{ja-noun|[[つうか]]}} {{topcat|ja|通貨}} #[[もの|物]]や[[サービス]]の[[価値]]が[[一定]]の[[単位]]で[[化体]]され、[[国家]]等の[[強制力]]により[[流通]]が[[保証]]されたもの。流通貨幣の[[略]]とされる。 ===={{syn}}==== *[[貨幣]] ===={{prov}}==== *[[基軸通貨]] ===={{trans}}==== {{top}} *[[アラム語]]: *:[[シリア文字]]: [[ܟܣܦܐ]] (kespā, kespo) {{m}} *:[[ヘブル文字]]: [[כספא]] (kespā, kespo) {{m}} *{{cs}}: [[peníze]] {{m}} {{p}} *[[{{da}}]]<!--*Danish-->: [[valuta]] {{c}}, [[møntenhed]] {{c}} *[[{{de}}]]<!--*German-->: [[Währung]] {{f}} *[[{{el}}]]<!--*Greek-->: [[νόμισμα]] {{n}} *{{en}}:{{trans_link|en|currency}} *[[{{eo}}]]<!--*Esperanto-->: [[mono]], [[valuto]] *[[{{fi}}]]<!--*Finnish-->: [[valuutta]], [[raha]], [[rahayksikkö]] *[[{{fr}}]]<!--*French-->: [[monnaie]] {{f}} *{{he}}: [[כסף]] (késef) {{m}} *[[{{ia}}]]<!--*Interlingua-->: [[moneta]], [[numerario]] *[[{{id}}]]<!--*Indonesian-->: [[mata uang]], [[valuta]] *{{is}}: [[gjaldmiðill]] {{m}} *[[{{nl}}]]<!--*Dutch-->: [[munteenheid]] {{f}} *[[{{no}}]]<!--*Norwegian-->: [[valuta]] *[[{{pl}}]]<!--*Polish-->: [[Waluta]] *[[{{pt}}]]<!--*Portuguese-->: [[moeda]] {{f}} *[[{{ru}}]]<!--*Russian-->: [[валюта]] (val'úta) {{f}}, [[деньги]] (d'én’gi) {{p}} *[[{{sl}}]]<!--*Slovenian-->: [[valuta]] *[[{{es}}]]<!--*Spanish-->: [[moneda]] {{f}} *[[{{sv}}]]<!--*Swedish-->: [[valuta]] *[[{{te}}]]<!--*Telugu-->: [[ద్రవ్యం]] (dravyaM) *[[{{th}}]]<!--*Thai-->: {{THchar|[[เงินตรา]]}} *[[{{tr}}]]<!--*Turkish-->: [[para birimi]] *[[{{zh}}]]<!--*Chinese-->: {{t|zh|货币|tr=huòbì}} {{bottom}} ===脚注=== {{Reflist}} =={{L|zh}}== {{zh-cat|tong1huo4|noun}} {{topcat|zh|通貨}} {{yue-cat|tung1fo3|noun}} {{topcat|yue|通貨}} ==={{pron}}=== {{cmn-pron|tōnghuò}} {{yue-pron|tung1 fo3}} ==={{noun}}=== {{zhchars|s=通货}} #(日本語に同じ)通貨。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|통화}} {{topcat|ko|通貨}} #(日本語に同じ)通貨。 b5sn4zbop28qnhbsb6cpyj7rs0smlt5 2281271 2281180 2026-06-09T11:17:39Z Jiba1219 100610 端末の問題なのか不明だがtopcatを使用した場所に不自然な行間が... 2281271 wikitext text/x-wiki {{kana-DEFAULTSORT|つうか}} {{wikipedia|通貨}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|つうか|acc=1|acc_ref=NHK}} ==={{noun}}=== {{ja-noun|[[つうか]]}} #[[もの|物]]や[[サービス]]の[[価値]]が[[一定]]の[[単位]]で[[化体]]され、[[国家]]等の[[強制力]]により[[流通]]が[[保証]]されたもの。流通貨幣の[[略]]とされる。 ===={{syn}}==== *[[貨幣]] ===={{prov}}==== *[[基軸通貨]] ===={{trans}}==== {{top}} *[[アラム語]]: *:[[シリア文字]]: [[ܟܣܦܐ]] (kespā, kespo) {{m}} *:[[ヘブル文字]]: [[כספא]] (kespā, kespo) {{m}} *{{cs}}: [[peníze]] {{m}} {{p}} *[[{{da}}]]<!--*Danish-->: [[valuta]] {{c}}, [[møntenhed]] {{c}} *[[{{de}}]]<!--*German-->: [[Währung]] {{f}} *[[{{el}}]]<!--*Greek-->: [[νόμισμα]] {{n}} *{{en}}:{{trans_link|en|currency}} *[[{{eo}}]]<!--*Esperanto-->: [[mono]], [[valuto]] *[[{{fi}}]]<!--*Finnish-->: [[valuutta]], [[raha]], [[rahayksikkö]] *[[{{fr}}]]<!--*French-->: [[monnaie]] {{f}} *{{he}}: [[כסף]] (késef) {{m}} *[[{{ia}}]]<!--*Interlingua-->: [[moneta]], [[numerario]] *[[{{id}}]]<!--*Indonesian-->: [[mata uang]], [[valuta]] *{{is}}: [[gjaldmiðill]] {{m}} *[[{{nl}}]]<!--*Dutch-->: [[munteenheid]] {{f}} *[[{{no}}]]<!--*Norwegian-->: [[valuta]] *[[{{pl}}]]<!--*Polish-->: [[Waluta]] *[[{{pt}}]]<!--*Portuguese-->: [[moeda]] {{f}} *[[{{ru}}]]<!--*Russian-->: [[валюта]] (val'úta) {{f}}, [[деньги]] (d'én’gi) {{p}} *[[{{sl}}]]<!--*Slovenian-->: [[valuta]] *[[{{es}}]]<!--*Spanish-->: [[moneda]] {{f}} *[[{{sv}}]]<!--*Swedish-->: [[valuta]] *[[{{te}}]]<!--*Telugu-->: [[ద్రవ్యం]] (dravyaM) *[[{{th}}]]<!--*Thai-->: {{THchar|[[เงินตรา]]}} *[[{{tr}}]]<!--*Turkish-->: [[para birimi]] *[[{{zh}}]]<!--*Chinese-->: {{t|zh|货币|tr=huòbì}} {{bottom}} ===脚注=== {{Reflist}} {{topcat|ja|通貨} =={{L|zh}}== {{zh-cat|tong1huo4|noun}} {{topcat|zh|通貨}} {{yue-cat|tung1fo3|noun}} {{topcat|yue|通貨}} ==={{pron}}=== {{cmn-pron|tōnghuò}} {{yue-pron|tung1 fo3}} ==={{noun}}=== {{zhchars|s=通货}} #(日本語に同じ)通貨。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|통화}} #(日本語に同じ)通貨。 {{topcat|ko|通貨}} 9i3yjhhc3ac8psmfgab6phe3caidfd7 2281272 2281271 2026-06-09T11:18:38Z Jiba1219 100610 2281272 wikitext text/x-wiki {{kana-DEFAULTSORT|つうか}} {{wikipedia|通貨}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|つうか|acc=1|acc_ref=NHK}} ==={{noun}}=== {{ja-noun|[[つうか]]}} #[[もの|物]]や[[サービス]]の[[価値]]が[[一定]]の[[単位]]で[[化体]]され、[[国家]]等の[[強制力]]により[[流通]]が[[保証]]されたもの。流通貨幣の[[略]]とされる。 ===={{syn}}==== *[[貨幣]] ===={{prov}}==== *[[基軸通貨]] ===={{trans}}==== {{top}} *[[アラム語]]: *:[[シリア文字]]: [[ܟܣܦܐ]] (kespā, kespo) {{m}} *:[[ヘブル文字]]: [[כספא]] (kespā, kespo) {{m}} *{{cs}}: [[peníze]] {{m}} {{p}} *[[{{da}}]]<!--*Danish-->: [[valuta]] {{c}}, [[møntenhed]] {{c}} *[[{{de}}]]<!--*German-->: [[Währung]] {{f}} *[[{{el}}]]<!--*Greek-->: [[νόμισμα]] {{n}} *{{en}}:{{trans_link|en|currency}} *[[{{eo}}]]<!--*Esperanto-->: [[mono]], [[valuto]] *[[{{fi}}]]<!--*Finnish-->: [[valuutta]], [[raha]], [[rahayksikkö]] *[[{{fr}}]]<!--*French-->: [[monnaie]] {{f}} *{{he}}: [[כסף]] (késef) {{m}} *[[{{ia}}]]<!--*Interlingua-->: [[moneta]], [[numerario]] *[[{{id}}]]<!--*Indonesian-->: [[mata uang]], [[valuta]] *{{is}}: [[gjaldmiðill]] {{m}} *[[{{nl}}]]<!--*Dutch-->: [[munteenheid]] {{f}} *[[{{no}}]]<!--*Norwegian-->: [[valuta]] *[[{{pl}}]]<!--*Polish-->: [[Waluta]] *[[{{pt}}]]<!--*Portuguese-->: [[moeda]] {{f}} *[[{{ru}}]]<!--*Russian-->: [[валюта]] (val'úta) {{f}}, [[деньги]] (d'én’gi) {{p}} *[[{{sl}}]]<!--*Slovenian-->: [[valuta]] *[[{{es}}]]<!--*Spanish-->: [[moneda]] {{f}} *[[{{sv}}]]<!--*Swedish-->: [[valuta]] *[[{{te}}]]<!--*Telugu-->: [[ద్రవ్యం]] (dravyaM) *[[{{th}}]]<!--*Thai-->: {{THchar|[[เงินตรา]]}} *[[{{tr}}]]<!--*Turkish-->: [[para birimi]] *[[{{zh}}]]<!--*Chinese-->: {{t|zh|货币|tr=huòbì}} {{bottom}} ===脚注=== {{Reflist}} {{topcat|ja|通貨}} =={{L|zh}}== {{zh-cat|tong1huo4|noun}} {{topcat|zh|通貨}} {{yue-cat|tung1fo3|noun}} {{topcat|yue|通貨}} ==={{pron}}=== {{cmn-pron|tōnghuò}} {{yue-pron|tung1 fo3}} ==={{noun}}=== {{zhchars|s=通货}} #(日本語に同じ)通貨。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|통화}} #(日本語に同じ)通貨。 {{topcat|ko|通貨}} 3b3yps6nm2qpa6tz2ef1ludrdug315m 2281290 2281272 2026-06-09T11:23:21Z M-30722 1202 訳語並べ替え等。この位置にtopcatを配置した場合は表示いかがでしょうか? 2281290 wikitext text/x-wiki {{kana-DEFAULTSORT|つうか}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|つう|か|yomi=o}} ==={{pron}}=== {{ja-pron|つうか|acc=1|acc_ref=NHK}} {{ja-accent-common|region=京阪|a|つ|ーか}} ==={{noun}}=== {{ja-noun|[[つうか]]}} #{{topcat|ja|通貨}}[[もの|物]]や[[サービス]]の[[価値]]が[[一定]]の[[単位]]で[[化体]]され、[[国家]]等の[[強制力]]により[[流通]]が[[保証]]されたもの。流通貨幣の[[略]]とされる。 ===={{syn}}==== *[[貨幣]] ===={{prov}}==== *[[基軸通貨]] ===={{trans}}==== {{top}} *{{T|is}}: [[gjaldmiðill]] {{m}} *{{T|arc}}: *:[[シリア文字]]: [[ܟܣܦܐ]] (kespā, kespo) {{m}} *:[[ヘブル文字]]: [[כספא]] (kespā, kespo) {{m}} *{{T|ia}}: [[moneta]], [[numerario]] *{{T|id}}: [[mata uang]], [[valuta]] *{{T|en}}: {{t|en|currency}} *{{T|eo}}: [[mono]], [[valuto]] *{{T|nl}}: [[munteenheid]] {{f}} *{{T|el}}: {{t|el|νόμισμα|n}} *{{T|sv}}: [[valuta]] *{{T|es}}: [[moneda]] {{f}} *{{T|sl}}: [[valuta]] *{{T|th}}: {{t|th|เงินตรา}} *{{T|cs}}: [[peníze]] {{m}} {{p}} *{{T|zh}}: {{t|zh|货币|tr=huòbì}} *{{T|te}}: {{t|te|ద్రవ్యం}} *{{T|da}}: [[valuta]] {{c}}, [[møntenhed]] {{c}} *{{T|de}}: [[Währung]] {{f}} *{{T|tr}}: [[para birimi]] *{{T|no}}: [[valuta]] *{{T|fi}}: [[valuutta]], [[raha]], [[rahayksikkö]] *{{T|fr}}: [[monnaie]] {{f}} *{{T|he}}: [[כסף]] (késef) {{m}} *{{T|pl}}: [[Waluta]] *{{T|pt}}: [[moeda]] {{f}} *{{T|ru}}: {{t|ru|валюта|f}}, {{t|ru|деньги|p}} {{bottom}} ===脚注=== {{Reflist}} =={{L|zh}}== {{zh-cat|tong1huo4|noun}}{{topcat|zh|通貨}} {{yue-cat|tung1fo3|noun}}{{topcat|yue|通貨}} ==={{pron}}=== {{cmn-pron|tōnghuò}} {{yue-pron|tung1 fo3}} ==={{noun}}=== {{zhchars|s=通货}} #(日本語に同じ)通貨。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|통화}} #{{topcat|ko|通貨}}(日本語に同じ)通貨。 qjgyazybtste78mkqzobxqxvax4kpf5 0 13918 2280846 2177507 2026-06-08T12:22:16Z RoKouKok 112415 2280846 wikitext text/x-wiki {{kana-DEFAULTSORT|きゅう}} ==漢字== {{kanji|人|4}} {{kanji variants|庥|烋|𠇲=[[訛字]]|𠇾|𬽼=[[同字]]|𫹎}} {{筆順}} ===字源=== *[[会意文字|会意]]または[[象形文字|象形]]。「[[人]]」+「[[木]]/[[𥝌]]」。人を覆う樹木を象る。「[[こかげ]]」「[[かげる|かげらす]]」を意味する[[漢語]]{[[庥]] {{phoneme|*hu}}}を表す字。仮借して「[[やすむ]]」を意味する漢語{[[休]] {{phoneme|*hu}}}に用いる。<ref name="a" group="字源">雷縉碚「“休”字形義分析及“對揚王休”解」『古文字研究』第35輯、中華書局、 2024年、636-641頁。</ref> **かつては人が木陰でやすむさまを象り、「やすむ」を意味する漢語{休}を表す字であるとする説<ref group="字源">裘錫圭 『文字学概要』 商務印書館、1988年、143-144頁。<br>季旭昇撰 『説文新証』 芸文印書館、2014年、492頁。<br>王子楊 「釈花東甲骨卜辞中的“𥝌”」 『古文字研究』第31輯 中国古文字研究会等編、中華書局、2016年、73-79頁。<br>林志強等評注 『《文源》評注』 中国社会科学出版社、2017年、533頁。</ref>が主流であったが、金文で「休」が「やすむ」の意味で用いられた例が見られず、『{{w|詩経}}』においてもほとんどが「かげらす」から引伸した「[[かばう]]」の意味で用いられていることなどを根拠に、この説は否定されている。<ref name="a" group="字源" /> **戦の講和の軍門を示し、戦時の褒賞が原義(白川)。この記述は[[甲骨文字]]や[[金文]]などの資料と一致していない記述が含まれていたり根拠のない憶測に基づいていたりするためコンセンサスを得られていない。 {{字源}} ====字源==== <references group="字源" /> ===関連字=== {| class="wikitable" |+ 「[[休]]」を音符とする[[形声文字]] (諧声域=*KU) |- ! !! !! 見母 !! 溪母 !! 匣母 !! 影母 !! 曉母 |- ! rowspan="4" | 一等 || 平声 豪韻 | || || || || [[茠]][[𣐾]] |- ! 上声 皓韻 | || || || || |- ! 去声 號韻 | || || || || |- ! 入声 沃韻 | || || || || |- ! !! !! 見母 !! 溪母 !! 匣母 !! 影母 !! 曉母 |- ! rowspan="4" | 二等 || 平声 肴韻 | || || || || |- ! 上声 巧韻 | || || || || - |- ! 去声 效韻 | || || || || |- ! 入声 覺韻 | || || || || |- ! !! !! 見母 !! 溪母 !! 群母 !! 影母 !! 曉母 |- ! rowspan="4" | 三等A || 平声 尤韻 | || [[恘]] || || || [[休]][[貅]][[㹯]][[鵂]][[𩢮]][[㾋]][[庥]][[髤]][[咻]]<br>(幽韻:[[烋]]) |- ! 上声 有韻 | || || || || (麌韻:[[咻]]) |- ! 去声 宥韻 | || || || - || |- ! 入声 屋韻 | || || || || |- ! !! !! 見母 !! 溪母 !! 群母 !! 影母 !! 曉母 |- ! rowspan="4" | 三等B || 平声 脂韻 | || || || || |- ! 上声 旨韻 | || || || || |- ! 去声 至韻 | || || || - || |- ! 入声 屋韻 | || || || || |} ===字義=== #[[やすむ]]、[[やすまる]]、[[やすめる]] #[[やめる]]、[[やむ]] =={{L|ja}}== [[Category:{{ja}}]] {{ja-kanji|常用=キュウ,やす-む,やす-まる,やす-める|施策=教育:1|呉音=ク|漢音=キュウ|訓=やす-む,やす-まる,やす-める}} ===={{prov}}==== {{rel-top}} *[[休意]] *[[休演]] *[[休暇]] *[[休火山]] *[[休会]] *[[休学]] *[[休刊]] *[[休閑]] *[[休館]] *[[休業]] *[[休憩]] *[[休校]] *[[休耕]] *[[休航]] *[[休講]] *[[休載]] *[[休止]] *[[休日]] *[[休祥]] *[[休場]] *[[休職]] *[[休心]] *[[休診]] *[[休錘]] *[[休戚]] *[[休戦]] *[[休息]] *[[休足]] *[[休怠]] *[[休題]] *[[休廷]] *[[休転]] *[[休電]] *[[休泊所]] *[[休符]] *[[休眠]] *[[休養]] *[[休漁]] *[[運休]] *[[帰休]] *[[公休]] *[[週休]] *[[代休]] *[[定休]] *[[年休]] *[[不休]] *[[半休]] *[[無休]] *[[盟休]] *[[遊休]] *[[臨休]] *[[連休]] {{rel-bottom}} =={{L|zh}}== {{zh-cat|xiu1|動詞|副詞|常=1}} ==={{pron}}=== {{zh-han |m=xiū |m-s=xiu1 |m-x=xiǔ |m-nj=xiù |dg=щю |c=jau1 |c-dg=haau1 |c-t=hiu1 |g=xiu1 |pfs=hiû |hrs=hiuˋ |gd=hiu1 |j=xiou1 |mb=hiú |md=hiĕu |mn=hiu |mn-t=hiun1/hiu1 |mn-l=hiu1 |px=pt,xy:hiu1 |sp=jau1 |w=1shieu |w-j=1shieu |x=xiou1 }} ** '''[[中古音]]''': xjuw ** '''[[上古音]]''': *** '''白一平-サガール''': *qʰ(r)u *** '''鄭張''': *qʰu ==={{verb}}=== #{{おくりがな2|休|やす|む|やすむ}}、[[休息]]する。 #[[離縁]]する。 ==={{adverb}}=== #〜するな。 =={{L|ko}}== {{ko-han|휴|eumhun=[[쉬다|쉴]] 휴}} ==={{prov}}=== * {{l|ko|만사휴의}} &lt;[[萬事休矣]]&gt; * {{l|ko|연휴}} &lt;[[連休]]&gt; * {{l|ko|황금연휴}} &lt;[[黃金連休]]&gt; * {{l|ko|휴지}} &lt;[[休止]]&gt;, &lt;[[休紙]]&gt; * {{l|ko|휴지통}} &lt;[[休紙桶]]&gt; * {{l|ko|휴지화}} &lt;[[休紙化]]&gt; =={{L|vi}}== {{vi-han|hưu}} =={{コード}}== {{文字コード|jis=1-21-57|mj={{mjmoji|006577}}|gb=D0DD|cns=1-4732|big5=A5F0|ksx=1001-7D4C}} {{検字|倉頡=OD|四角=2429.0}} {{字典|dj=0203.020|hdz=10117.180|大字源=163|大漢語林=203|康煕=0096.020|新大字典=360|新潮漢字=235|諸橋=440}} f6trzozzqsr073eo0yxr5u1eha550u3 sentir 0 15368 2281351 2114261 2026-06-09T11:43:25Z Kuroco2k 84207 2281351 wikitext text/x-wiki =={{L|ast}}== ==={{etym}}=== {{etyl|la|ast}} {{m|la|sentīre}} ==={{verb}}=== {{ast-verb}} #[[感じる]]。 #{{おくりがな2|聞|き|く|きく}}。 #{{おくりがな2|思|おも|う|おもう}}。 ===={{rel}}==== * {{l|ast|sentimientu}} * {{l|ast|sensación}} * {{l|ast|sentir campanes}} ---- =={{L|it}}== ==={{verb}}=== {{it-verb}} #{{apocopic form of|lang=it|sentire}} ==={{anag}}=== * {{anagrams|it|a=einrst|sterni}} ---- =={{L|io}}== ==={{pron}}=== * {{io-IPA}} ==={{verb}}=== {{head|io|verb form}} #{{l|io|sentar}}の過去不定詞。 ---- =={{L|vec}}== ==={{etym}}=== {{etyl|la|vec}} {{m|la|sentīre}} ==={{verb}}=== {{head|vec|verb}} #{{context|他動詞|lang=vec}}{{おくりがな2|聞|き|く|きく}}。 #{{context|他動詞|lang=vec}}[[感じる]]。 ===={{conjugation}}==== {{vec-conj-auto}} ---- =={{L|oc}}== ==={{etym}}=== {{etyl|pro|oc}} {{m|pro|sentir}} < {{etyl|la|oc}} {{m|la|sentīre}} ==={{pron}}=== * {{音声|oc|LL-Q14185 (oci)-Davidgrosclaude-sentir.wav}} ==={{verb}}=== {{oc-verb|sent|ir}} #[[感じる]]。 #[[におう]]。 {{oc-conj-ir|sent}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|roa-oca|ca}} {{m|roa-oca|sentir}} < {{etyl|la|ca}} {{m|la|sentīre}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Unjoanqualsevol-sentir.wav}} * {{rhymes|i(ɾ)|s=2}} ==={{verb}}=== {{ca-verb|ir-pure|sent|past_part=sentit}} #[[感じる]]。 #{{おくりがな2|聞|き|く|きく}}。 #{{context|自動詞|代名詞hiを伴って|lang=ca}}{{おくりがな2|聞|き|こえる|きこえる}}。 #{{context|Castilianism|lang=ca}}{{おくりがな2|悔|く|いる|くいる}}。 #: {{ux|ca|Ho '''sento'''.|ごめんなさい。}} {{ca-conj-ir-pure|sent}} ===={{rel}}==== * {{l|ca|ressentir-se}} * {{l|ca|sentida}} * {{l|ca|sentiment}} * {{l|ca|sentimental}} * {{l|ca|sentit}} * {{l|ca|sentor}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|sentir}} < {{etyl|la|gl}} {{m|la|sentīre}} < {{etyl|ine-pro|gl}} {{m|ine-pro|*sent-}} ==={{pron}}=== * {{IPA|lang=gl|senˈtiɾ}} ==={{verb}}=== {{head|gl|verb}} #{{おくりがな2|聞|き|く|きく}}。 #[[感じる]]。 {{gl-conj-ir (e-i)|sent|sint}} ---- =={{L|osp}}== ==={{etym}}=== {{etyl|la|osp}} {{m|la|sentīre}} < {{etyl|ine-pro|osp}} {{m|ine-pro|*sent-}} ==={{verb}}=== {{head|osp|verb}} #{{context|他動詞|lang=osp}}[[感じる]]。 ===={{desc}}==== * {{desc|es|sentir}} * {{desc|lad|sentir|sintir|סינטיר}} ---- =={{L|fro}}== ==={{etym}}=== {{etyl|la|fro}} {{m|la|sentīre}} ==={{verb}}=== {{head|fro|verb}} #[[感じる]]。 #[[におう]]。 {{fro-conj-iii|sent}} ===={{desc}}==== * {{desc|nrf|senti}} * {{desc|fr|sentir}} ---- =={{L|roa-opt}}== ==={{etym}}=== {{etyl|la|roa-opt}} {{m|la|sentīre}} < {{etyl|ine-pro|roa-opt}} {{m|ine-pro|*sent-}} ==={{verb}}=== {{head|roa-opt|verb}} #{{context|他動詞|lang=roa-opt}}[[感じる]]。 ===={{desc}}==== * {{desc|gl|sentir}} * {{desc|pt|sentir}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|sentir}} < {{etyl|la|es}} {{m|la|sentīre}} < {{etyl|ine-pro|es}} {{m|ine-pro|*sent-}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{head|es|verb}} #[[感じる]]。 #{{おくりがな2|思|おも|う|おもう}}。 ===={{conjug}}==== {{es-conj|<ie-i>}} {{es-conj|sentirse<ie-i>|nocomb=1}} ===={{drv}}==== * {{l|es|lo siento}} * {{l|es|ojos que no ven, corazón que no siente}} * {{l|es|sentirse}} * {{l|es|sentido}} ===={{rel}}==== * {{l|es|asentir}} * {{l|es|sensación}} * {{l|es|sensible}} * {{l|es|sensitivo}} * {{l|es|sensual}} * {{l|es|sentimiento}} * {{l|es|sentimental}} ==={{noun}}=== {{es-noun|m|es}} #[[意見]]。 #[[感情]]。 ---- =={{L|fr}}== ==={{etym}}=== {{etyl|fro|fr}} {{m|fro|sentir}} < {{etyl|la|fr}} {{m|la|sentīre}} < {{etyl|ine-pro|fr}} {{m|ine-pro|*sent-}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-sentir.ogg|a=Paris}} ==={{verb}}=== {{fr-verb}} #[[感じる]] #[[におう]]。[[香気]]、[[臭気]]を放つ。 ===={{conjugation}}==== {{fr-conj-auto}} ===={{hypo}}==== * {{l|fr|empester}} * {{l|fr|exhaler}} * {{l|fr|puer}} ===={{drv}}==== {{top}} * {{l|fr|ne plus se sentir}} * {{l|fr|ne plus se sentir pisser}} * {{l|fr|ressentir}} * {{l|fr|ressentiment}} * {{l|fr|se sentir d'attaque}} * {{l|fr|se sentir pousser des ailes}} * {{l|fr|sentir l'écurie}} * {{l|fr|sentir le fagot}} * {{l|fr|sentir le roussi}} * {{l|fr|sentir le soufre}} * {{l|fr|sentir le vécu}} {{bottom}} ===={{rel}}==== * {{l|fr|assentiment}} * {{l|fr|sens}} * {{l|fr|sensation}} * {{l|fr|sensible}} * {{l|fr|sensuel}} * {{l|fr|sentiment}} ==={{seealso}}=== * {{l|fr|nez}} * {{l|fr|odorat}} ==={{anag}}=== * {{anagrams|fr|retins|ternis}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|sentir}} < {{etyl|la|pt}} {{m|la|sentīre}} < {{etyl|ine-pro|pt}} {{m|ine-pro|*sent-}} ==={{pron}}=== * {{IPA|lang=pt|se&#771;ˈtiɾ}} ==={{verb}}=== {{head|pt|verb}} #[[感じる]]。 ====活用==== {{pt-conj|s|entir}} ===={{hypo}}==== * {{l|pt|cheirar}}; {{l|pt|escutar}}, {{l|pt|ouvir}}; {{l|pt|tocar}}, {{l|pt|encostar}}; {{l|pt|provar}}, {{l|pt|degustar}}; {{l|pt|ver}}, {{l|pt|enxergar}}, {{l|pt|olhar}} ===={{drv}}==== * {{l|pt|sinto muito}} ===={{rel}}==== * {{l|pt|sensação}} * {{l|pt|sensato}} * {{l|pt|sensibilidade}} * {{l|pt|sensibilizar}} * {{l|pt|sensível}} * {{l|pt|sensitivo}} * {{l|pt|senso}} * {{l|pt|sensual}} * {{l|pt|sentença}} * {{l|pt|sentidamente}} * {{l|pt|sentido}} * {{l|pt|sentimento}} ---- =={{L|lad}}== ==={{verb}}=== {{lad-verb|heb=סינטיר}} #{{l|lad|sintir}}の異形。 4g860g41zydn1pg0oz8hmm6mpw62u5x 小満 0 17250 2281062 1462310 2026-06-09T00:43:22Z ふゆくれ 95641 2281062 wikitext text/x-wiki {{kana-DEFAULTSORT|しょうまん}} =={{L|ja}}== {{節気}} {{ja-kanjitab|しょう|まん|yomi=o}} {{wikipedia|小満}} ==={{pron}}=== {{ja-pron|しょうまん|acc=0}} *{{X-SAMPA|s\o:maN\}} ==={{noun}}=== {{ja-noun|[[しょうまん]]|kyu=小滿|reki=せうまん}} #{{context|暦|夏|lang=ja}}[[二十四節気]]の一つ。あらゆるものが成長して満ちてくるころ。四月[[中]]。 ## [[定気法]]では、太陽黄経が60度のときを含む日。5月21日ごろ。 ## [[平気法]]では、[[冬至]]から12分の5年後。5月23日ごろ。 #{{q|暦}} 小満(1)から[[芒種]]までの期間。 ===={{rel}}==== *[[七十二候]] **[[初候]]: [[蚕起食桑]](日本)、[[苦菜秀]](中国) **[[次候]]: [[紅花栄]](日本)、[[靡草死]](中国) **[[末候]]: [[麦秋至]](日本)、[[小暑至]](中国) {{二十四節気/日本語}} h5kl7nlctbpihj8omt9pug8ptsqu09c 芒種 0 17251 2281072 1917560 2026-06-09T01:08:51Z ふゆくれ 95641 2281072 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼうしゅ}} =={{L|ja}}== {{節気}} {{ja-kanjitab|ぼう|しゅ|yomi=o}} {{wikipedia}} ==={{pron}}=== {{ja-pron|ぼうしゅ|acc=1|acc_ref=SMK7,DJR,NHK,NKD2}} ==={{noun}}=== {{ja-noun|[[ぼうしゅ]]}} #{{タグ|ja|暦|夏}} [[二十四節気]]の一つ。6月6日あたり。またはそれから[[夏至]]までの期間。{{季語|夏}}。 ===={{rel}}==== *[[七十二候]] **[[初候]]: [[螳螂生]](日本・中国) **[[次候]]: [[腐草為蛍]](日本)、[[鵙始鳴]](中国) **[[末候]]: [[梅子黄]](日本)、[[反舌無声]](中国) {{二十四節気/日本語}} ===脚注=== {{Reflist}} =={{L|zh}}== {{中国の節気}} {{wikipedia|lang=zh}} {{wikipedia|lang=yue}} {{wikipedia|Mông-chúng|lang=hak}} {{wikipedia|Mòng-cṳ̄ng|lang=cdo}} {{wikipedia|Bông-chéng|lang=nan}} ==={{pron}}=== {{cmn-pron|mángzhòng|s=mang2zong3}} {{yue-pron|mong4 zung3}} {{hak-pron|miòng-chung/mòng-chung|h=mong zhungˇ|gd=mong2 zung4}} {{mnp-pron|mông-ce̤̿ng}} {{cdo-pron|mòng-cṳ̄ng}} {{nan-pron|bông-chéng|t=mang5 zong2}} {{cpx-pron|pt:^morng2 zoeng3/xy:morng2 zyoeng3}} {{wuu-pron|sh:6maon tson}} {{gan-pron|mong4 zung}} {{cjy-pron|mon1 zung2}} {{hsn-pron|man2 zhong4}} ==={{noun}}=== {{zh-cat|mang2zhong4|noun|暦}} {{zhx-sic-cat|mang2zong3|noun|暦}} {{yue-cat|mong4jung3|noun|暦}} {{hak-cat|miong2chung4|noun|暦}} {{mnp-cat|mong2coeng4|noun|暦}} {{cdo-cat|mong5cung2|noun|暦}} {{nan-cat|bong5cheng2|noun|暦}} {{nan-tws-cat|mang5zong2|noun|暦}} {{cpx-cat|morng2zoeng3|noun|暦}} {{wuu-cat|maon3tson1|noun|暦}} {{gan-cat|mong4zung|noun|暦}} {{cjy-cat|mon1zung2|noun|暦}} {{hsn-cat|man2zhong4|noun|暦}} {{zhchars|s=芒种}} #(日本語に同じ)芒種。 {{二十四節気/中国語繁体字}} ==={{desc}}=== {{CJKV||芒種|j=ぼうしゅ|망종|mang chủng}} ;その他の言語: * {{desc|za|muengzcungq|bor=1}} =={{L|ko}}== {{ko-hanjatab}} ==={{noun}}=== {{ko-head|noun|망종|cat2=暦}} #(日本語に同じ)芒種。 =={{L|vi}}== {{vi-hantutab}} ==={{noun}}=== {{vi-head|noun|mang|chủng|cat2=暦}} #(日本語に同じ)芒種。 ja4ebrrmfie7jmzxkz6o85a5e4dngrb venir 0 18038 2281386 2169506 2026-06-09T11:55:51Z Kuroco2k 84207 2281386 wikitext text/x-wiki =={{L|ast}}== ==={{etym}}=== {{etyl|la|ast}} {{m|la|venīre}} ==={{verb}}=== {{ast-verb}} #{{おくりがな2|来|く|る|くる}}。 =={{L|an}}== ==={{alter}}=== * {{alter+|an|vinre}} ==={{etym}}=== {{etyl|la|an}} {{m|la|venīre}} ==={{pron}}=== * {{an-pr}} ==={{verb}}=== {{head|an|verb}} #{{タグ|an|自動詞}}{{おくりがな2|来|く|る|くる}}。 ===={{rel}}==== * {{l|an|intervenir}} =={{L|frp}}== ==={{alter}}=== * {{alter+|frp|vegnir}} ==={{etym}}=== {{etyl|la|frp}} {{m|la|venīre}} ==={{verb}}=== {{head|frp|verb}} #{{おくりがな2|来|く|る|くる}}。 {{frp-conj-venir}} =={{L|it}}== ==={{verb}}=== {{head|it|verb}} #{{apocopic form of|it|venire}} ==={{anag}}=== * {{anagrams|it|a=einrv|Nervi|nervi|verni}} =={{L|io}}== ==={{pron}}=== {{io-IPA}} ==={{verb}}=== {{head|io|verb form}} #{{l|io|venar}}の過去不定詞。 =={{L|ia}}== ==={{verb}}=== {{ia-verb|ir}} #{{おくりがな2|来|く|る|くる}}。 #: {{ant|ia|ir}} {{ia-conj|ven|ir|intr=yes}} =={{L|oc}}== ==={{etym}}=== {{etyl|pro|oc}} {{m|pro|venir}} < {{etyl|la|oc}} {{m|la|venīre}} ==={{pron}}=== * {{IPA|lang=oc|beˈni}} * {{音声|oc|LL-Q942602-Davidgrosclaude-venir.wav|a=Languedocian}} ==={{verb}}=== {{oc-verb|ven|ir}} #{{おくりがな2|来|く|る|くる}}。 {{oc-conj-table|venir|venent|vengut|veni|venes|ven|venèm|venètz|venon|veniái|veniás|veniá|veniam|veniatz|venián|venguèri|venguères|venguèt|venguèrem|venguèretz|venguèron|vendrai|vendràs|vendrà|vendrem|vendretz|vendràn|vendriái|vendriás|vendriá|vendriam|vendriatz|vendrián|venga|vengas|venga|vengam|vengatz|vengan|venguèsse|venguèsses|venguèsse|venguèssem|venguèssetz|venguèsson|vèni|vengam|venètz}} =={{L|ca}}== ==={{alter}}=== * {{alter+|ca|vindre}} ==={{etym}}=== {{etyl|la|ca}} {{m|la|venīre}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Unjoanqualsevol-venir.wav|a=Catalonia}} ==={{verb}}=== {{ca-verb|pres_1_sg=vinc|past_part=vingut}} #{{タグ|ca|自動詞}}{{おくりがな2|来|く|る|くる}}。 {{ca-conj-ir-tenir|ven|vin|ve<!-- -->|pres_ind_2_sg=véns<!-- -->|pres_ind_3_pl=vénen<!-- -->|impr_2_sg=vine<!-- -->}} ===={{drv}}==== * {{l|ca|que ve}} * {{l|ca|venir a tomb}} * {{l|ca|venir de gust}} * {{l|ca|venir d'un fil}} ===={{rel}}==== * {{l|ca|intervenir}} * {{l|ca|revenir}} =={{L|osp}}== ==={{etym}}=== {{etyl|la|osp}} {{m|la|venīre}} ==={{pron}}=== * {{IPA|lang=osp|βeˈniɾ}} ==={{verb}}=== {{head|osp|verb}} #{{おくりがな2|来|く|る|くる}}。 ===={{desc}}==== * {{desc|es|venir}} * {{desc|lad|venir|ב׳יניר}} =={{L|fro}}== ==={{etym}}=== 881年初出。{{etyl|la|fro}} {{m|la|venīre}} ==={{verb}}=== {{head|fro|verb}} #{{おくりがな2|来|く|る|くる}}、[[到着]]する。 {{fro-conj-venir|}} ===={{desc}}==== * {{desc|roa-brg|veindre|alts=1}} * {{desctree|frm|venir}} * {{desc|nrf|v'nîn|v'nir|alts=1}} * {{desc|wa|vni|alts=1}} =={{L|pro}}== ==={{etym}}=== {{etyl|la|pro}} {{m|la|venīre}} ==={{verb}}=== {{head|pro|verb}} #{{おくりがな2|来|く|る|くる}}。 ===={{desc}}==== * {{desc|oc|venir}} =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|venir}} < {{etyl|la|es}} {{m|la|venīre}} ==={{pron}}=== * {{IPA|lang=es|be.ˈniɾ}} ==={{verb}}=== {{es-verb|ven|ir|pres=vengo|pret=vine}} #{{タグ|es|自動詞}}{{おくりがな2|来|く|る|くる}}。 ===={{conjug}}==== {{es-conj}} {{es-conj|venirse|nocomb=1}} ===={{ant}}==== *[[ir]] ===={{drv}}==== {{col3|lang=es|agárrate que vienen curvas|cosas que van y vienen|venir Élver|cuando tú vas yo vengo de regreso|de agárrate que hay curvas|de agárrate y no te menees|en lo por venir|ires y venires|venir a por<t:to come for, come after><qq:pursue, target>|ni ir ni venir|no hay mal que por bien no venga|no venir a cuento|no venir al caso|sin venir a cuento|ven acá|venir al caso|venir a demostrar|venir a la melena|venir a las manos|venir a las puñadas|venir a menos|venir al viento|venir el cuervo|venir el parto derecho|venir de familia|venir mal dadas |venirse abajo|venirse al humo|venir por|voy y vengo}} ===={{rel}}==== {{col3|lang=es|advenir|antevenir|avenir|circunvenir|contravenir|convenir|desavenir|desconvenir|devenir|disconvenir|entrevenir|eventual|intervenir|invenir|porvenir|prevenir|provenir|reconvenir|revenir|sobrevenir|subvenir|supervenir|venidero|venida|ventura}} =={{L|frm}}== ==={{etym}}=== {{etyl|fro|frm}} {{m|fro|venir}} ==={{verb}}=== {{head|frm|verb|cat2=第三群動詞}} # {{おくりがな2|来|く|る|くる}}。 #: {{cot|frm|aller}} ===={{desc}}==== * {{desc|fr|venir}} =={{L|nrf}}== ==={{etym}}=== {{etyl|fro|nrf}} {{m|fro|venir}} < {{etyl|la|nrf}} {{m|la|venīre}} ==={{verb}}=== {{head|nrf|verb}} # {{おくりがな2|来|く|る|くる}}。 {{nrf-conj-venir}} =={{L|fr}}== ==={{etym}}=== {{etyl|frm|fr}} {{m|frm|venir}} < {{etyl|fro|fr}} {{m|fro|venir}} < {{etyl|la|fr}} {{m|la|venīre}} ==={{pron}}=== * {{IPA|lang=fr|v(ə).niʁ}} ==={{verb}}=== {{fr-verb}} # {{おくりがな2|来|く|る|くる}}。 #(助動詞、+不定詞)近い過去を表す。 ====活用==== {{fr-conj-venir||être}} ===={{syn}}==== *[[arriver]] ===={{ant}}==== *[[aller]] ===={{drv}}==== {{col4|lang=fr|a beau mentir qui vient de loin|à venir|aller et venir|advenir|avenir|circonvenir|contrevenir|convenir|devenir|en venir au fait|en venir aux mains|en venir à|évènement|éventualité|intervenir|inventer|l'appétit vient en mangeant|mésavenir|nouveau venu|obvenir|parvenir|prendre les choses comme elles viennent|prévenir|premier venu|provenir|ressouvenir|revenir|redevenir|souvenir|subvenir|survenir|tout vient à point à qui sait attendre|un malheur ne vient jamais seul|venir à bout|venir à Canossa|venir au monde|venir de|venir du cœur|venir en âge|venir en aide|voir venir}} ===={{rel}}==== *[[venue]] *[[éventuel]] ===={{desc}}==== * {{desc|en|venue}} * {{desc|ht|vin|vini}} ==={{anag}}=== * {{anagrams|fr|a=einrv|verni}} =={{L|roa-poi}}== ==={{etym}}=== {{etyl|fro|roa-poi}} {{m|fro|venir}} < {{etyl|la|roa-poi}} {{m|la|venīre}} ==={{verb}}=== {{head|roa-poi|verb}} #{{おくりがな2|来|く|る|くる}}。 =={{L|lad}}== ==={{alter}}=== * {{alter+|lad|vinir}} ==={{etym}}=== {{etyl|osp|lad}} {{m|osp|venir}} < {{etyl|la|lad}} {{m|la|venīre}} ==={{verb}}=== {{lad-verb|heb=ב׳יניר}} #{{タグ|lad|自動詞|再帰動詞}}{{おくりがな2|来|く|る|くる}}。 ===={{rel}}==== {{col3|lang=lad|avenir|kontravenir|konvenir|dezavenirse|devenir|intervenir|prevenir|provenir|revenir|subvenir|venidero|venida|ventura}} i945anzsctji6z0ud65i9yypp29enqt カテゴリ:植物 14 19928 2280923 2019020 2026-06-08T13:45:55Z 鍼灸 112313 2280923 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学}} * {{Pathnav|カテゴリ|分野|自然|生物}} </div> {{wikipedia|category=植物}} [[植物]]に関する語彙 {{DEFAULTSORT:しよくふつ}} [[カテゴリ:植物学|*しよくふつ]] [[カテゴリ:生物|*しよくふつ]] [[カテゴリ:分野の一覧]] c0jka9tf4lwg1ocjsjeqqddv5xejk37 競技 0 20351 2281166 2166648 2026-06-09T07:02:13Z Jiba1219 100610 2281166 wikitext text/x-wiki {{kana-DEFAULTSORT|きょうぎ}} =={{L|ja}}== {{ja-kanjitab|きょう|ぎ|yomi=kan,goon}} {{wikipedia}} ==={{pron}}=== {{ja-pron|きょうぎ|acc=1|acc_ref=DJR,NHK}} ==={{noun}}=== {{ja-noun-suru|[[きょうぎ]]}} #[[一定]]の[[規則]]のもとで[[優劣]]を[[あらそう|争う]]もの。 ===={{trans}}==== *{{en}}: [[contest]], [[competition]], [[match]] *{{zh}}: {{t|zh|比赛|tr=bǐsài}} ==={{verb}}=== {{日本語サ変活用}} ===脚注=== <references /> =={{L|zh}}== {{zh-cat|jing4ji4|verb}} {{yue-cat|ging6gei6|verb}} {{nan-cat|keng7ki1|verb}} {{nan-tws-cat|geng6gi6|verb}} ==={{pron}}=== {{cmn-pron|jìngjì}} {{yue-pron|ging6 gei6,ging3 gei6}} {{nan-pron|kēng-ki/twv:kèng-ki|t=gêng6 gi6}} ==={{verb}}=== {{zhchars|s=竞技}} #競技する。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|경기}} #(日本語に同じ)競技。 atye1kqr0z4805lrg7xwb1fcnv2wags Wiktionary:執筆依頼/ハンガリー語/V 4 21028 2281120 1731016 2026-06-09T03:57:55Z NekoyamaWataru 87354 /* ve */ 語義・活用等記載されたものを整理 2281120 wikitext text/x-wiki == v == == va == == ve == :[[véka]] == vi == == vo == == vö == <!-- ű ő --> pcjokk3dkv3394o9xxd7bddfvy10ipr proteger 0 21185 2281364 1832201 2026-06-09T11:51:09Z Kuroco2k 84207 2281364 wikitext text/x-wiki {{also|protéger}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} ''[[protegere]]'' ==={{pron}}=== * {{a|Latin America}} {{IPA|lang=es|pɾo.teˈheɾ}} * {{a|Castilian}} {{IPA|pɾo.teˈxeɾ}} ==={{verb}}=== {{es-verb|proteg|er|pres=protejo}} #{{おくりがな2|守|まも|る|まもる}}、{{おくりがな2|防|ふせ|ぐ|ふせぐ}}、[[保護]]する、[[庇護]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * [[difendere]] ===={{rel}}==== * [[protección]] * [[protector]] * [[protectoría]] * [[protectorio]] * [[protegido]] ---- =={{L|frm}}== ==={{verb}}=== {{head|frm|verb}} #{{おくりがな2|守|まも|る|まもる}}、[[保護]]する。 {{frm-conj-ger|prote}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[protegere]]'' ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|pɾu.tɨ.ˈʒeɾ}} * {{a|Brazil}} {{IPA|pɾo.te.ˈʒeɾ}} ==={{verb}}=== {{pt-verb}} #[[保護]]する。{{おくりがな2|守|まも|る|まもる}}、[[庇護]]する。 #(de, contra: ~から)保護する、{{おくりがな2|防|ふせ|ぐ|ふせぐ}}。 #[[擁護]]する {{pt-conj|prote|ger}} ===={{rel}}==== * [[protecção]], [[proteção]] * [[protector]], [[protetor]] * [[protectoral]], [[protetoral]] * [[protectório]], [[protetório]] * [[protegido]] pbr8ze759fhqj81ahk3em6m678iotwi 成功 0 22508 2281147 1773979 2026-06-09T06:21:36Z Jiba1219 100610 2281147 wikitext text/x-wiki =={{L|ja}}== {{ja-kanjitab|せい|こう|yomi=o}} ==={{pron}}=== {{ja-pron|せいこう|acc=0|acc_ref=DJR,NHK}} ==={{noun}}=== {{Wikipedia|成功 (任官)}} {{ja-noun-suru|[[せいこう]]|じょうごう}} #(せいこう)うまくいくこと。[[目的]]を[[達成]]すること。 #* 歴史も教えている通り、自分の国の地位は既にある点に達したに{{ruby|拘|かか}}わらず、外交がそれに伴わなければ思う様に往かぬ事がある。しかしながら国民が十分に進歩して、国民的勢力が常に政府の{{ruby|後|しり}}えにあれば必ずこの国の外交は'''成功'''する。<small>――{{Cite web|author=[[w:大隈重信|大隈重信]]|url=https://www.aozora.gr.jp/cards/001879/card57987.html|title=図書カード:東亜の平和を論ず|publisher=青空文庫|year=1904|accessdate=2023-05-21}}</small> #* 実際のところ、アメリカでは、一昨年の秋頃から、人間の力で雪を降らすことを研究している。そしてそれはかなりの程度まで'''成功'''している。<small>――{{Cite web|author=[[w:中谷宇吉郎|中谷宇吉郎]]|url=https://www.aozora.gr.jp/cards/001569/card59207.html|title=図書カード:雪を降らす話|publisher=青空文庫|year=1950|accessdate=2023-05-21}}</small> #(せいこう)社会的地位を得たり[[富裕]]になったりすること。 #*多くの人がこの書を読んで志を立てて'''成功'''したと聞きます。その内に私と同じようにキリスト信者になった者もすくなくないとのことであります。そして彼らの内にある者は早くすでに立派にキリスト教を「卒業」して今は背教者をもって自から任ずる者もあります。<small>――{{Cite web|author=[[w:内村鑑三|内村鑑三]]|url=https://www.aozora.gr.jp/cards/000034/card519.html|title=図書カード:後世への最大遺物|publisher=青空文庫|year=1894|accessdate=2023-05-21}}</small> #*夢想家が、この世で'''成功'''したというためしは、古今東西にわたって、未だ一つも無かったと言ってよい。<small>――{{Cite web|author=[[w:太宰治|太宰治]]|url=https://www.aozora.gr.jp/cards/000035/card45689.html|title=図書カード:砂子屋|publisher=青空文庫|year=1940|accessdate=2023-05-21}}</small> #{{context|日本史|じょうごう|lang=ja|skey=しようこう じょうごう}}[[平安時代]]中期以降において、[[朝廷]]の[[行事]]及び[[殿舎]]の[[営繕]]、[[寺社]]の[[堂塔]][[修造]]費用など本来、朝廷の公費で負担すべきところを、任官希望者を募り任料を納めさせるか、または自己負担でそれぞれの事業の功を成らせて、見返りに[[官職]]に[[叙任]]するという[[売官]][[制度]]の一種。 ===={{ant}}==== 語義1 *[[失敗]] *[[不成功]] ===={{idiom}}==== *[[失敗は成功のもと]] ===={{trans}}==== 語義1 {{trans-top}} *{{T|is}}: {{t|is|árangur|m}} *{{T|ga}}: {{t|ga|áitheas|m}} *{{T|az}}: {{t|az|müvəffəqiyyət}}, {{t|az|uğur}} *{{T|af}}: {{t|af|sukses}} *{{T|ar}}: {{t|ar|نَجَاح|m|tr=najá}} *{{T|sq}}: {{t|sq|sukses}} *{{T|hy}}: {{t|hy|հաջողություն}} *{{T|it}}: {{t|it|successo|m}} *{{T|yi}}: {{t|yi|הצלחה|f|tr=hatslokhe}} *{{T|inh}}: {{t|inh|аьттув}} *{{T|id}}: {{t|id|keberhasilan}}, {{t|id|sukses}} *{{T|cy}}: {{t|cy|llwyddiant|m}} *{{T|vo}}: {{t|vo|plöp}} *{{T|uk}}: {{t|uk|у́спіх|m}} *{{T|uz}}: {{t|uz|muvaffaqiyat}} *{{T|en}}: {{t|en|success}} *{{T|et}}: {{t|et|edu}} *{{T|nl}}: {{t|nl|succes|n}}, {{t|nl|welgang|m}}, {{t|nl|goed gevolg|n}} *{{T|kk}}: {{t|kk|жетістік}}, {{t|kk|табыс}} *{{T|ca}}: {{t|ca|èxit|m}}, {{t|ca|succés|m}} *{{T|gl}}: {{t|gl|éxito|m}} *{{T|kn}}: {{t|kn|ಯಶಸ್ಸು|sc=Knda}} *{{T|el}}: {{t|el|επιτυχία|f|sc=Grek}} *:{{T|grc}}: {{t|grc|εὐπραγία|f|sc=Grek}} *{{T|ky}}: {{t|ky|ийгилик}}, {{t+|ky|жетишкендик}} *{{T|km}}: {{t|km|ជោគជ័យ|tr=couk cey|sc=Khmr}} *{{T|ka}}: {{t|ka|წარმატება}} *{{T|sa}}: {{t|sa|स्वस्ति|n}} *{{T|sv}}: {{t|sv|framgång}}, {{t|sv|succé}} *{{T|es}}: {{t|es|éxito|m}}, {{t|es|acierto|m}} *{{T|sk}}: {{t|sk|úspech|m}} *{{T|sl}}: {{t|sl|uspeh|m}} *{{T|sh}}: {{t|sh|успех}}/{{t|sh|uspeh|m}}, {{t|sh|успјех}}/{{t|sh|uspjeh|m}} *{{T|ckb}}: {{t|ckb|سەرکەوتن}} *{{T|th}}: {{t|th|ความสำเร็จ|tr=kwaam-săm-rèt}}, {{t|th|ผลสำเร็จ}} *{{T|tl}}: {{t|tl|tagumpay}} *{{T|tg}}: {{t|tg|муваффақият}} *{{T|tt}}: {{t|tt|уңыш}} *{{T|ta}}: {{t|ta|வெற்றி|sc=Taml}} *{{T|cs}}: {{t|cs|úspěch|m}}, {{t|cs|zdar|m}} *{{T|ce}}: {{t|ce|аьтто}} *{{T|te}}: {{t|te|లక్ష్యాన్ని చేరుట|sc=Telu}} *{{T|da}}: {{t|da|succes}} *{{T|de}}: {{t|de|Erfolg|m}} *{{T|tk}}: {{t|tk|üstünlik}} *{{T|tr}}: {{t|tr|başarı}} *{{T|no}}: *:{{T|nn}}: {{t|no|suksess|m}} *:{{T|nb}}: {{t|nb|suksess|m}} *{{T|ht}}: {{t|ht|siksè}} *{{T|ba}}: {{t|ba|уңыш}} *{{T|eu}}: {{t|eu|arrakasta}} *{{T|hu}}: {{t|hu|eredmény}}, {{t|hu|kimenetel}}, {{t|hu|siker}} *{{T|my}}: {{t|my|ဇေယျ|sc=Mymr}}, {{t|my|အောင်ပန်း|sc=Mymr}} *{{T|hi}}: {{t|hi|सफलता|f}}, {{t|hi|सफ़लता|f}} *{{T|fi}}: {{t|fi|menestys}}, {{t|fi|onnistuminen}} *{{T|fo}}: {{t|fo|gott úrslit|n}} *{{T|fr}}: {{t|fr|succès|m}}, {{t|fr|réussite|f}} *{{T|bg}}: {{t|bg|успе́х}} *{{T|vi}}: {{t|vi|thành công|alt=sự thành công}} *{{T|he}}: {{t|he|הַצלָחָה|f|tr=hatzlakhá|sc=Hebr}} *{{T|be}}: {{t|be|по́спех|m}} *{{T|fa}}: {{t|fa|موفقیت|tr=movaffaqiyat|sc=fa-Arab}}, {{t|fa|سوکسه|tr=sukse|sc=fa-Arab}} {{qualifier|まれ}} *{{T|bn}}: {{t|bn|কামিয়াবি}}, {{t|bn|সফলতা|tr=śôphôlôta}}, {{t|bn|সাফল্য|tr=śaphôllô}} *{{T|pl}}: {{t|pl|powodzenie|n}}, {{t|pl|sukces|m}} *{{T|pt}}: {{t|pt|sucesso|m}}, {{t|pt|êxito|m}} *{{T|mi}}: {{t|mi|angitu}} *{{T|mk}}: {{t|mk|у́спех|m}} *{{T|mr}}: {{t|mr|यश}} *{{T|mn}}: {{t+|mn|амжилт}} *{{T|lo}}: {{t|lo|ຄວາມສຳເລັດ}}, {{t|lo|ຜົນສຳເລັດ}} *{{T|la}}: {{t|la|successus|m}}, {{t|la|fructus}} *{{T|lv}}: {{t|lv|veiksme|f}} *{{T|lt}}: {{t|lt|sėkmė|f}} *{{T|ro}}: {{t|ro|succes|n}}, {{t|ro|succese|n-p}} *{{T|lb}}: {{t|lb|Succès}} *{{T|rue}}: {{t|rue|у́спіх}} *{{T|ru}}: {{t|ru|успе́х|m}}, {{t|ru|уда́ча|f}} {{trans-bottom}} ==={{verb}}=== ===={{conjug}}==== {{日本語サ変活用|kana=せいこう}} ===={{trans}}==== {{trans-top}} *{{T|az}}: {{t|az|alınmaq}} *{{T|ar}}: {{t|ar|نَجَحَ}} *:{{T|arz}}: {{t|arz|نجح|tr=nagaḥ}} *{{T|it}}: {{t|it|riuscire}} *{{T|en}}: {{t|en|succeed}} (in) *{{T|eo}}: {{t|eo|sukcesi}} *{{T|ca}}: {{t|ca|reeixir}} *{{T|gl}}: {{t|gl|conseguir}} *{{T|el}}: {{t|el|επιτυγχάνω|sc=Grek}}, {{t|el|καταφέρνω|sc=Grek}}, {{t|el|κατορθώνω|sc=Grek}} *{{T|shn}}: {{t|shn|ထိုင်ယိူင်းမၢႆ}} *{{T|sv}}: {{t|sv|lyckas}} *{{T|es}}: {{t|es|conseguir}} *{{T|sl}}: {{t|sl|uspeti}} *{{T|sw}}: {{t|sw|fanikiwa}} *{{T|ckb}}: {{t|ckb|سەرکەوتن}} *{{T|th}}: {{t|th|ประสบความสำเร็จ}}, {{t|th|ได้ดี}} *{{T|khb}}: {{t|khb|ᦺᦡᧉᦡᦲ}} *{{T|cs}}: {{t|cs|uspět}} *{{T|de}}: [[erfolgreich]] [[sein]], [[Erfolg]] [[haben]], {{t|de|gelingen}}, {{t|de|geraten}} *{{T|nrf}}: {{t|nrf|rêussi}} *{{T|hu}}: {{t|hu|sikerül}} *{{T|fi}}: {{t|fi|menestyä}}, {{t|fi|onnistua}} *{{T|fr}}: {{t|fr|réussir}}, {{t|fr|avoir du succès}} *{{T|vi}}: {{t|vi|thành công }} *{{T|he}}: {{t|he|הִצְלִיחַ|tr=hitzlíaḥ|sc=Hebr}}, {{t|he|עָשָׂה חַיִל|tr='asá ḥáyil}} *{{T|pl}}: {{t|pl|dać radę|pf}}, {{t|pl|poradzić sobie|pf}}, {{t|pl|udać się |pf}} {{qualifier|komu? czemu?}} *{{T|pt}}: [[ter]]/[[obter]] [[sucesso]]/[[êxito]], {{t|pt|conseguir}} *{{T|mi}}: {{t|mi|tutuki}} *{{T|la}}: {{t|la|succedere}} *{{T|ro}}: {{t|ro|reuși}} *{{T|ru}}: {{t|ru|преуспе́ть}}, {{impf}} {{t|ru|достига́ть це́ли}}, {{pf}} {{t|ru|дости́чь це́ли}} {{trans-bottom}} ===脚注=== {{Reflist}} =={{L|zh}}== {{wikipedia|lang=zh}} {{zh-cat|cheng2gong1|verb|hsk=乙|hsk2=4}} {{dng-cat|чынгун|verb}} {{yue-cat|sing4gung1|verb}} {{nan-cat|seng5kong1|verb}} {{nan-tws-cat|seng5gong1|verb}} {{cpx-cat|sing2gorng1|verb}} {{hak-cat|siin2kung1|verb}} {{wuu-cat|zen1kon1|verb}} ==={{pron}}=== {{cmn-pron|chénggōng|dg=чын1гун1|a=Zh-chénggong.ogg}} {{yue-pron|sing4 gung1|a=LL-Q9186-Luilui6666-成功.wav}} {{nan-pron|ml,tw,jj,ph:sêng-kong|t=sêng5 gong1}} {{cpx-pron|pt,xy:sing2 gorng1}} {{hak-pron|sṳ̀n-kûng|h=shin gungˋ}} {{wuu-pron|sh:6zen kon}} ==={{verb}}=== {{zhchars}} #成功する。 ==={{adjective}}=== {{zhchars}} #うまくいった。[[首尾]]の良い。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|성공}} #成功。うまくいくこと。 =={{L|vi}}== ==={{verb}}=== {{vi-head|verb|thành|công}} #成功する。 95o7tnaet0vofu56w7wpv0pc49chki7 チタン 0 23005 2281221 1918006 2026-06-09T10:52:42Z うーむ 129171 /* */ 2281221 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ちだん}} =={{L|ja}}== {{wikipedia}} ==={{etym}}=== {{etyl|de|ja}} {{m|de|Titan}} ==={{noun}}=== {{ja-noun}} #{{context|chemical element|metal|lang=ja}}[[原子番号]] 22、[[元素記号]] [[Ti]] の[[金属元素]]。単体は常温常圧では銀白色の固体。 ===={{trans}}==== {{trans-top}} *{{T|is}}: {{t|is|títan|n}} *{{T|ga}}: {{t|ga|tíotáiniam|m}} *{{T|ast}}: {{t|ast|titaniu|m}} *{{T|af}}: {{t|af|titaan}} *{{T|ar}}: {{t|ar|تِيتَانْيُوم|m|tr=titanyum}} *{{T|sq}}: {{t|sq|titan|?}} *{{T|hy}}: {{t|hy|տիտան}} *{{T|it}}: {{t|it|titanio|m}} *{{T|ia}}: {{t|ia|titanium}} *{{T|cy}}: {{t|cy|titaniwm|m}} *{{T|vo}}: {{t|vo|titanin}}, (古用法) {{t|vo|tütin}} *{{T|uk}}: {{t|uk|тита́н|m}} *{{T|uz}}: {{t|uz|titan}}, {{t|uz|титан}} *{{T|ur}}: {{t|ur|رنجاتو|?|tr=rañjātu}} *{{T|en}}: {{t|en|titanium}} *{{T|et}}: {{t|et|titaan}} *{{T|eo}}: {{t|eo|titanio}} *{{T|oc}}: {{t|oc|titani|m}} *{{T|nl}}: {{t|nl|titanium|n}}, {{t|nl|titaan|n}} *{{T|kk}}: {{t|kk|титан}} *{{T|csb}}: {{t|csb|titan}} *{{T|ca}}: {{t|ca|titani|m}} *{{T|gl}}: {{t|gl|titanio|m}} *{{T|el}}: {{t|el|τιτάνιο|n}} *{{T|km}}: {{t|km|ទីតាន}} *{{T|ka}}: {{t|ka|ტიტანი}} *{{T|kw}}: {{t|kw|titaniom|m}} *{{T|sv}}: {{t|sv|titan|n}} *{{T|gd}}: {{t|gd|titanium|m}} *{{T|es}}: {{t|es|titanio|m}} *{{T|sk}}: {{t|sk|titán|m}} *{{T|sl}}: {{t|sl|titan|m}} *{{T|sw}}: {{t|sw|titani}} *{{T|sh}}: *:キリル文字: {{t|sh|титан|m}}, {{t|sh|титаниј|m}} *:ラテン文字: {{t|sh|titan|m}}, {{t|sh|titanij|m}} *{{T|th}}: {{t|th|ไทเทเนียม}} *{{T|tg}}: {{t|tg|титан}} *{{T|ta}}: {{t|ta|டைட்டேனியம்}} *{{T|cs}}: {{t|cs|titan|m}} *{{T|zh}}: {{t|cmn|鈦|tr=tài}} *{{T|ko}}: {{t|ko|티탄}}, {{t|ko|티타늄}}, {{t|ko|타이타늄}} *{{T|te}}: {{t|te|టైటానియం}} *{{T|da}}: {{t|da|titan|n}} *{{T|de}}: {{t|de|Titan|n}} *{{T|tr}}: {{t|tr|titan}}, {{t|tr|titanyum}} *{{T|nv}}: {{t|nv|béésh doo ńdiniichxíihii}} *{{T|fy}}: {{t|fy|titaan|?}} *{{T|no}}: {{t|no|titan|?}} *{{T|eu}}: {{t|eu|titanioa}} *{{T|haw}}: {{t|haw|kaikaniuma}} *{{T|hu}}: {{t|hu|titán}} *{{T|hi}}: {{t|hi|रंजातु|?}} *{{T|fi}}: {{t|fi|titaani}} *{{T|fo}}: {{t|fo|titan|n}} *{{T|fr}}: {{t|fr|titane|m}} *{{T|fur}}: {{t|fur|titani|?}} *{{T|bg}}: {{t|bg|тита́н|m}} *{{T|br}}: {{t|br|titan|?}} *{{T|vi}}: {{t|vi|titan}} *{{T|he}}: {{t|he|טיטניום|m|tr=titánium}} *{{T|be}}: {{t|be|тыта́н|m}} *{{T|pl}}: {{t|pl|tytan|m}} *{{T|pt}}: {{t|pt|titânio|m}} *{{T|mi}}: {{t|mi|konuhinauri}} *{{T|mk}}: {{t|mk|тита́н|m}} *{{T|mt}}: {{t|mt|titanju|?}} *{{T|ms}}: {{t|ms|titanium}} *{{T|gv}}: {{t|gv|çhitaanium|?}} *{{T|mn}}: {{t|mn|титан}} *{{T|la}}: {{t|la|titanium|n}} *{{T|lv}}: {{t|lv|titāns|?}} *{{T|lt}}: {{t|lt|titanas|?}} *{{T|ln}}: {{t|ln|titani|c9a|c10a}} *{{T|ro}}: {{t|ro|titan|n}} *{{T|lb}}: {{t|lb|Titan|?}} *{{T|ru}}: {{t|ru|тита́н|m}} {{trans-bottom}} nvrb54ckifd04n2varzy7hft9n0cmc8 真理 0 25243 2281162 2097091 2026-06-09T06:48:42Z Jiba1219 100610 2281162 wikitext text/x-wiki {{kana-DEFAULTSORT|しんり}} {{also|眞理}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|しん|り|yomi=o}} ==={{pron}}=== {{ja-pron|しんり|acc=1}} {{ja-accent-common|region=京阪|a|し|んり}} ==={{noun}}=== {{ja-noun|[[しんり]]|kyu=眞理}} # [[ただしい|正しい]]と[[みとめる|認め]]られた[[事実]]や[[法則]]。 ===={{syn}}==== *[[真実]]、[[真]] ===={{rel}}==== *[[実]] *[[真理値]] ===={{trans}}==== {{trans-top|1.}} *{{T|en}}: {{t|en|truth}} *{{T|nl}}: {{t|nl|waarheid|f}} *{{T|el}}: {{t|el|αλήθεια}} *{{T|sa}}: {{t|sa|satya}} *{{T|szl}}: {{t|szl|prowda|f}} *{{T|cs}}: {{t|cs|pravda|f}} *{{T|de}}:{{t|de|Wahrheit|f}} *{{T|fr}}: {{t|fr|vérité|f}} *{{T|pl}}: {{t|pl|prawda|f}} *{{T|la}}: {{t|la|veritas|f}} *{{T|wa}}: {{t|wa|vraiye|f}} {{trans-bottom}} =={{L|zh}}== ==={{pron}}=== {{cmn-pron|zhēnlǐ|a=Zh-zhenli.ogg}} {{yue-pron|zan1 lei5|a=LL-Q9186-Luilui6666-真理.wav}} {{nan-pron|chin-lí|t=zing1 li2}} {{hak-pron|chṳ̂n-lî}} {{cpx-pron|pt,xy:zing1 *li3}} {{wuu-pron|sh:1tsen li6}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)真理。 {{zh-cat|zhen1li3|名詞|hsk=乙|hsk2=5}} {{yue-cat|jan1lei5|名詞}} {{nan-cat|chin1li2|名詞}} {{nan-tws-cat|zing1li2|名詞}} {{hak-cat|ciin1li1|名詞}} {{cpx-cat|zing1li3|名詞}} {{wuu-cat|tsen1li2|名詞}} =={{L|vi}}== ==={{noun}}=== {{vi-head|noun|chân|lý}} #(日本語に同じ)真理。 ern1a02gd5iy2j1o7vwh4oxbhguvglt 親切 0 25269 2281136 1918316 2026-06-09T06:06:44Z Jiba1219 100610 2281136 wikitext text/x-wiki {{kana-DEFAULTSORT|しんせつ}} =={{L|ja}}== {{ja-kanjitab|しん|せつ|yomi=o}} ==={{pron}}=== {{ja-pron|しんせつ|acc=1|acc_ref=DJR|acc2=0|acc2_ref=DJR}} ==={{noun}}=== {{ja-noun|[[しんせつ]]}} #[[こまる|困って]]いる[[ひと|人]]等の[[み|身]]になり、何かを[[する|して]]やったりすること。 ===={{syn}}==== *[[おもいやり]] ===={{drv}}==== *[[親切心]] ===={{trans}}==== *{{T|hy}}: {{t|hy|բարություն}} *{{T|en}}: {{t|en|kindness}} ==={{adjectivenoun}}=== {{ja-adjectival noun|[[しんせつ]]}} ===={{conjug}}==== {{日本語ダ活用}} ===={{syn}}==== *[[やさしい]] ===脚注=== {{Reflist}} =={{L|zh}}== ==={{pron}}=== {{cmn-pron|qīnqiè|a=Zh-qīnqiè.oga}} {{yue-pron|can1 cit3}} {{nan-pron|chhin-chhiat|t=cing1 ciag4}} {{hak-pron|chhîn-chhiet|h=cinˋ cied}} ==={{adjective}}=== {{zhchars|s=亲切}} #{{おくりがな2|親|した|しい|したしい}}。 #親切な。 {{zh-cat|qin1qie4|形容詞}} {{yue-cat|chan1chit3|形容詞}} {{nan-tws-cat|cing1ciag4|形容詞}} {{nan-cat|chhin1chhiat4|形容詞}} {{hak-cat|chhin1chhiet5|形容詞}} =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|친절}} #(日本語に同じ)親切。 =={{L|vi}}== ==={{adjective}}=== {{vi-head|adjective|thân|thiết}} #親切な。 p3kdwkpwi4cnkbejoq4u70zar9c55se ハイ 0 26419 2281091 2127558 2026-06-09T01:53:42Z うーむ 129171 /* */ 2281091 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{wikipedia}} {{also|はい|ばい|バイ|パイ}} =={{L|ja}}== ==={{noun}}・{{adjectivenoun}}・造語成分=== {{head|ja|noun|cat2=造語成分}} # [[たかい|高い]]さま。 # [[気分]]が[[高揚]]したさま。 {{日本語ダ活用}} ===={{etym}}==== *{{etyl|en|ja}} {{m|en|high}} の[[音写]]。 ==={{noun}}=== {{head|ja|noun|cat2=蛇}} {{wikipedia|ハイ (ヘビ)}} # ヘビ亜目ワモンベニヘビ属に属する[[ヒャン]]の亜種である[[へび]]の一種。{{学名は|Sinomicrurus japonicus boettgeri}}。別名、[[おきなわはい]]。 === 同音の漢字 === *'''[[Wiktionary:漢字索引 音訓 は#ハイ]]'''参照。 58n7igx2zcusa9aszqy8dz4dscc17pf mit 0 27059 2281039 1782891 2026-06-08T17:23:52Z M-30722 1202 [[en:mit]]より 2281039 wikitext text/x-wiki =={{symb}}== ==={{code}}=== '''mit''' #{{ISO639-3}} =={{L|bsa}}== ==={{pronoun}}=== {{head|bsa|pronoun}} #{{ふりがな|私|わたし}}。 =={{L|iba}}== ==={{pron}}=== * {{IPA|lang=iba|mit}} ==={{adjective}}=== {{head|iba|adjective}} #{{おくりがな2|小|ちい|さい|ちいさい}}。 =={{L|vo}}== ==={{noun}}=== {{vo-noun}} #{{topcat|vo|肉}}[[肉]]。 {{vo-decl-noun}} ===={{drv}}==== * {{l|vo|bubamit}} * {{l|vo|jipamit}} * {{l|vo|stägamit}} ===={{seealso}}==== * {{l|vo|möt}} =={{L|en}}== ==={{noun}}=== {{en-noun}} #{{l|en|mitt}}の旧綴り。 =={{L|ang}}== ==={{pron}}=== * {{ang-IPA|mit}} * {{rhymes|lang=ang|it|s=1}} ==={{preposition}}=== {{head|ang|preposition}} #{{l|ang|mid}}の異形。 =={{L|odt}}== ==={{alter}}=== * {{alter+|odt|mid|midi|bit||まれ}} ==={{etym}}=== {{etyl|gmw-pro|odt}} {{m|gmw-pro|*midi}} < {{etyl|gem-pro|odt}} {{m|gem-pro|*midi}} < {{etyl|ine-pro|odt}} {{m|ine-pro|*meth₂}} < {{m|ine-pro|*me}} ==={{preposition}}=== {{head|odt|preposition}} #〜[[と]]、〜と[[ともに]]。 ===={{rel}}==== * {{l|odt|midi}} ===={{desc}}==== * {{desc|dum|met}} ** {{desc|nl|met}} ** {{desc|li|mit}} =={{L|goh}}== ==={{alter}}=== * {{alter+|goh|miti}} ==={{etym}}=== {{etyl|gmw-pro|goh}} {{m|gmw-pro|*midi}} ==={{preposition}}=== {{head|goh|prepositions}} #〜[[と]]、〜と[[ともに]]。 ===={{desc}}==== * {{desc|gmh|mite|mit}} ** {{desc|yi|מיט}} ** {{desc|wym|myt}} ** {{desc|cim|met}} ** {{desc|de|mit}} ** {{desc|bar|mit}} ** {{desc|hrx|mit}} ** {{desc|lb|mat}} =={{L|osx}}== ==={{preposition}}=== {{head|osx|preposition}} #{{l|osx|mid}}の異形。 =={{L|sl}}== ==={{noun}}=== {{head|sl|noun}} #{{topcat|sl|神話}}[[神話]]。 =={{L|sh}}== ==={{etym}}=== {{bor|sh|grc|μῦθος}} ==={{noun}}=== {{sh-noun+|head=mȋt|g=m-in}} #{{topcat|sh|神話}}[[神話]]。 {{sh-decl-noun|mit|mitovi|mita|mitova|mitu|mitovima|mit|mitove|mite|mitovi|mitu|mitovima|mitom|mitovima}} =={{L|zom}}== ==={{etym}}=== {{etyl|tbq-kuk-pro|zom}} {{m|tbq-kuk-pro|*mik}} ==={{pron}}=== * {{IPA|lang=zom|mît}} * {{hyph|zom|mit}} ==={{noun}}=== {{head|zom|noun|head=mìt}} #{{タグ|zom|解剖学}}{{ふりがな|目|め}}。 ===={{drv}}==== * {{l|zom|mitmul}} =={{L|enm}}== ==={{preposition}}=== {{head|enm|preposition}} #{{l|enm|mid}}の異形。 ==={{adjective}}=== {{head|enm|adjective}} #{{l|enm|mid}}の異形。 =={{L|nds}}== ==={{preposition}}=== {{head|nds|preposition}} #{{タグ|nds|GLG}}{{l|nds|mid}}の異綴。 =={{L|ctd}}== ==={{etym}}=== {{etyl|tbq-kuk-pro|ctd}} {{m|tbq-kuk-pro|*mik}} < {{etyl|sit-pro|ctd}} {{m|sit-pro|*mjək}} ==={{noun}}=== {{head|ctd|noun}} #{{タグ|ctd|解剖学}}{{ふりがな|目|め}}。 =={{L|da}}== ==={{pron}}=== * {{IPA|lang=da|/mit/|[mid̥]}} ==={{pronoun}}=== {{head|da|pronoun}} #{{l|da|min}}の中性形。 =={{L|de}}== ==={{etym}}=== {{etyl|gmh|de}} {{m|gmh|mite}}, {{m|gmh|mit}} < {{etyl|goh|de}} {{m|goh|miti}}, {{m|goh|mit}} < {{etyl|gmw-pro|de}} {{m|gmw-pro|*midi}} ==={{pron}}=== * {{IPA|lang=de|mɪt}} * {{音声|de|De-mit.ogg}} * {{音声|de|De-mit2.ogg|a=Berlin}} * {{rhymes|lang=de|ɪt|s=1}} ==={{preposition}}=== {{head|de|preposition|与格支配}} #〜[[と]]、〜と[[ともに]]、[[協力]]して。 #:{{ant|de|ohne}} #*{{ux|de|Er [[feiern|feiert]] ''mit'' seinen [[Freund]]en [[zusammen]].|彼は、友達と一緒にパーティーをしている。}} ===={{rel}}==== *{{comp}}: 1. [[Mitarbeit]], [[Mitgefühl]], [[Mitglied]], [[mithalten]], [[mitkommen]], [[Mitlaut]], [[Mitleid]], [[mitnehmen]], [[mitnichten]], [[Mitschuld]], [[mitunter]], [[mitwirken]] [[カテゴリ:{{de}}_基本語彙1000]] =={{L|txb}}== ==={{alter}}=== * {{l|txb|mīt}} ==={{etym}}=== {{etyl|ine-toc-pro|txb}} {{m|ine-toc-pro|*ḿət(ə)}} < {{etyl|ine-pro|txb}} {{m|ine-pro|*médʰu}} ==={{noun}}=== {{head|txb|noun}} #{{タグ|txb|食品}}[[蜂蜜]]。 =={{L|tpi}}== ==={{etym}}=== {{etyl|en|tpi}} {{m|en|meat}} ==={{noun}}=== {{head|tpi|noun}} #{{topcat|tpi|肉}}[[肉]]。 =={{L|tr}}== ==={{etym}}=== {{bor|tr|fr|mythe}} ==={{pron}}=== * {{IPA|lang=tr|ˈmit}} * {{hyph|tr|mit}} ==={{noun}}=== {{tr-noun|i|ler}} #{{topcat|tr|神話}}[[神話]]。 #: {{syn|tr|efsane|mitos}} {{tr-infl-noun-c|i|poss=1}} =={{L|nn}}== ==={{noun}}=== {{nn-noun-m1}} #{{l|nn|midd}}の2012年以前の綴り。 =={{L|nb}}== ==={{noun}}=== {{nb-noun-m1}} #{{l|nb|midd}}の2005年以前の綴り。 =={{L|hu}}== ==={{pron}}=== * {{hu-IPA}} * {{音声|hu|Hu-mit.ogg}} ==={{pronoun}}=== {{head|hu|pronoun form}} #{{l|hu|mi}}の単数対格。 #{{タグ|hu|口語}}{{ふりがな|何故|なぜ}}。 ===={{drv}}==== * {{l|hu|nincs mit}} =={{L|fr}}== ==={{pron}}=== * {{fr-IPA|pos=v}} * {{音声|fr|LL-Q150 (fra)-Pamputt-mit.wav|a=Brétigny-sur-Orge}} * {{音声|fr|LL-Q150 (fra)-Poslovitch-mit.wav|a=Vosges}} * {{homophones|lang=fr|mi|mie|mies|mis|mît}} ==={{verb}}=== {{fr-verb-form}} #[[mettre]] の直説法単純過去第三人称単数形。 =={{L|hrx}}== ==={{etym}}=== {{etyl|gmh|hrx}} {{m|gmh|mite}} < {{etyl|goh|hrx}} {{m|goh|mit}} ==={{pron}}=== * {{IPA|lang=hrx|mit}} ==={{preposition}}=== {{head|hrx|preposition|与格支配}} #〜[[と]]、〜と[[ともに]]。 #〜[[で]]、〜を用いて。 ===={{ant}}==== * {{l|hrx|ohne}} ===={{drv}}==== * ('''''mit''' + dem'') {{l|hrx|mim}} =={{L|pdc}}== ==={{etym}}=== {{etyl|gmh|pdc}} {{m|gmh|mite}} < {{etyl|goh|pdc}} {{m|goh|mit}} ==={{adverb}}=== {{head|pdc|adverb}} #〜に{{おくりがな2|沿|そ|っ|そう}}て。 ==={{preposition}}=== {{head|pdc|preposition}} #〜[[と]]、〜と[[ともに]]。 =={{L|pl}}== ==={{etym}}=== {{bor|pl|grc|μῦθος|t=myth}} ==={{pron}}=== {{pl-pr|a=Pl-mit.ogg}} ==={{noun}}=== {{pl-noun|m-in}} #{{topcat|pl|神話}}[[神話]]。 #:{{syn|pl|plotka}} {{pl-decl-noun-m-in}} ===={{drv}}==== * {{l|pl|mityczny}} ===={{rel}}==== * {{l|pl|mitologia}} =={{L|ro}}== ==={{etym}}=== {{bor|ro|grc|μῦθος}}又は{{bor|ro|fr|mythe}} ==={{pron}}=== * {{IPA|lang=ro|ˈmit}} ==={{noun}}=== {{ro-noun|n|mituri}} #{{topcat|ro|神話}}[[神話]]。 {{ro-noun-n-uri}} ===={{rel}}==== *[[mitic]] *[[mitologie]] =={{L|lus}}== ==={{etym}}1=== {{etyl|tbq-kuk-pro|lus}} {{m|tbq-kuk-pro|*mik}} < {{etyl|sit-pro|lus}} {{m|sit-pro|*mjək}} ===={{noun}}==== {{head|lus|noun}} #{{タグ|lus|解剖学}}{{ふりがな|目|め}}。 ==={{etym}}2=== {{etyl|tbq-kuk-pro|lus}} {{m|tbq-kuk-pro|*mit}} ===={{verb}}==== {{head|lus|verb}} #(炎や光が){{おくりがな2|消|き|える|きえる}}。 =={{L|jbo}}== ===Rafsi=== {{jbo-rafsi}} #{{l|jbo|mintu}}のrafsi。 ejmcapg91wl0njlg3c4rarf0r65hk91 元帥 0 27964 2281176 2059504 2026-06-09T08:39:17Z Jiba1219 100610 2281176 wikitext text/x-wiki {{kana-DEFAULTSORT|げんすい}} {{wikipedia|元帥}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|げんすい|acc=1}} ==={{noun}}=== {{ja-noun|[[げんすい]]}} [[Category:{{ja}} 軍隊の階級]] #[[諸将]]の[[統率]][[者]]。[[全軍]]の[[総大将]] #[[軍人]]の[[階級]]における'''[[大元帥]]'''に次ぐ[[最高位]]。<!--[[上級大将]]の[[上]]。*******最高位なのだから注記は不要。--> #[[日本軍|旧日本軍]]における[[元帥府]]に列せられた[[陸軍|陸]][[海軍]][[大将]]。 ===={{trans}}==== *英語: [[marshal]] ===={{rel}}==== *[[元帥府]]、[[大元帥]] =={{L|zh}}== [[Category:{{zh}}|yuan2shuai4]] ==={{pron}}=== {{cmn-pron|yuánshuài}} {{yue-pron|jyun4 seoi3}} {{nan-pron|goân-sòe}} {{hak-pron|ngièn-soi|h=ngien soiˇ}} ==={{noun}}=== [[Category:{{zh}}_{{noun}}|yuan2shuai4]] [[Category:{{zh}}_軍隊の階級|yuan2shuai4]] {{zhchars|s=元帅}} #元帥。 [[Category:{{yue}}|yun4seui3]] [[Category:{{yue}}_{{noun}}|yun4seui3]] [[Category:{{yue}}_軍隊の階級|yun4seui3]] [[Category:{{nan}}|goan5soe3]] [[Category:{{nan}}_{{noun}}|goan5soe3]] [[Category:{{nan}}_軍隊の階級|goan5soe3]] [[Category:{{hak}}|ngien2soi4]] [[Category:{{hak}}_{{noun}}|ngien2soi4]] [[Category:{{hak}}_軍隊の階級|ngien2soi4]] =={{L|ko}}== [[Category:{{ko}}|원수]] ==={{noun}}=== [[Category:{{ko}}_{{noun}}|원수]] [[Category:{{ko}}_軍隊の階級|원수]] {{lang|ko|'''元帥'''([[원수]])}} #元帥。 '''元帥様'''([[원수님]]) =={{L|vi}}== [[Category:{{vi}}|nguyen1soai3 nguyênsoai]] ==={{noun}}=== [[Category:{{vi}}_{{noun}}|nguyen1soai3 nguyênsoai]] [[Category:{{vi}}_軍隊の階級|nguyen1soai3 nguyênsoai]] {{lang|vi|'''元帥'''([[nguyên soái]])}} #元帥。 e4yfpatfwq4c36hewrgrk57rqaajqry volver 0 28468 2281380 1677337 2026-06-09T11:55:51Z Kuroco2k 84207 2281380 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] [[Category:スペイン語 動詞]] ===発音=== {{IPA|bolˈβeɾ}} ===語源=== ラテン語 ''[[volvere]]'' ===動詞=== # {{おくりがな|返|す|かえす}}、[[ひっくりかえす|ひっくり返す]]、[[うらがえす|裏返す]]。 # [[反転]]させる、{{おくりがな|回|す|まわす}}。 # {{おくりがな|返|る|かえる}}、{{おくりがな|戻|る|もどる}}。 #([[volver a]] "不定詞"){{おくりがな|再|び|ふたたび}}~する。 ===={{conjug}}==== {{es-conj}} {{es-conj|volverse|nocomb=1}} ====類義語==== *[[volcar]] *[[regresar]] ===関連語=== *[[volvedor]] *[[vuelta]] *[[volumen]] *[[voltio]] *[[envolver]] *[[revolver]] ---- ==ポルトガル語== [[Category:ポルトガル語]] [[Category:ポルトガル語 動詞]] ===発音=== {{IPA|vulˈveɾ}} ===語源=== ラテン語 ''[[volvere]]'' ===動詞=== # {{おくりがな|回|す|まわす}}、{{おくりがな|向|ける|むける}}。 # {{おくりがな|返|す|かえす}}、[[返却]]する。 ===関連語=== *[[volta]] *[[volúvel]] *[[volume]] *[[envolver]] *[[revolver]] a49qd2pmlu1wst9ndz9d6mlt5s900q3 helar 0 29191 2281252 1676138 2026-06-09T11:06:59Z Kuroco2k 84207 2281252 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] [[Category:スペイン語 動詞]] ===発音=== {{es-pr}} *{{音声|es|LL-Q1321 (spa)-Rodelar-helar.wav}} ===語源=== ラテン語 ''[[gelare]]'' ===動詞=== {{es-verb|hel|ar|pres=hielo}} # {{lb|es|impersonal}} {{送り活2|凍|こお|ら|こおる}}せる、[[凍結]]させる。 #(寒さが)[[枯死]]させる。 ===={{conjug}}==== {{es-conj|<ie>}} ===関連語=== *[[heladero]], [[heladera]] *[[helado]], [[helada]] *[[heladura]] *[[helamiento]] *[[hielo]] *[[heladizo]] *[[gelatina]] hgma3zujwr9x8t351mz6xvec21q7b43 がしょう 0 29700 2280901 2075205 2026-06-08T13:21:00Z M-30722 1202 2280901 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かしょう|かじょう|がじょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[画匠]]】[[画家]]。[[絵描き]]。 *【[[画商]]】[[絵画]]を[[売買]]する[[商人]]。 *【[[画障]]】[[絵]]が描かれている[[ふすま|襖]][[障子]]。 *【[[臥床]]】[[とこ|床]]に[[つく]]こと。 *【[[賀正]]】[[正月]]を祝う言葉。 *【[[賀頌]]】[[いわう|祝っ]]て[[徳]]を[[たたえる|讃える]]こと。また、その[[ことば|言葉]]や[[文章]]。 *【[[雅称]]】{{ふりがな|風雅|ふうが|yomilink=n}}な[[名称]]。 1hwxqiiy1s859j2slemnbh9c1wc5lfi かちょう 0 30884 2280874 2221410 2026-06-08T12:54:08Z M-30722 1202 2280874 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|がちょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[佳調]], [[嘉調]]】[[規則]][[ただしい|正しい]][[調子]]。 *【[[加徴]]】[[租税]]などを[[おおめ|多め]]に[[徴収]]すること。 *【[[加重]]】[[おもさ|重さ]]、[[責任]]、[[負担]]などが[[くわわる|加わる]]こと。 *【[[嘉兆]]】[[めでたい|目出度い]][[きざし|兆し]]。 *【[[家長]]】[[一家]]の[[長]]。 *【[[歌調]]】{{ふりがな|歌|うた}}の[[調子]]。 *【[[火長]]】[[律令制]]下で[[兵士]]十人の[[長]]。 *【[[花朝]]】[[陰暦]]の[[二月]]。 *【[[花鳥]]】{{ふりがな|花|はな}}と{{ふりがな|鳥|とり}}。 *【[[苛重]]】[[きびしい|厳しく]][[おもい|重い]]。 *【[[蚊帳]]】{{ふりがな|蚊|か}}などの[[害虫]]を[[ふせぐ|防ぐ]][[目的]]で[[寝床]]を[[おおう|覆う]][[道具]]。[[かや]]。 *【[[課丁]]】[[律令制]]で、[[調]]、[[庸]]、[[雑徭]]を[[負担]]する[[もの|者]]。 *【[[課徴]]】[[租税]]などを[[とりたてる|取り立てる]]こと。 *【[[課長]]】[[官庁]]や[[会社]]などで[[課]]を[[管理]]する[[職]]。 fn9h9wlv2ddp1kj0t61d6cjmhylp1mz 0 31453 2280906 2176181 2026-06-08T13:25:48Z M-30722 1202 2280906 wikitext text/x-wiki {{kana-DEFAULTSORT|かん}} ==漢字== {{kanji|心3|11}} {{kanji variants|惯=[[簡体字]]|貫=語義3}} * 筆順 : [[忄]]、[[貫]]の順に書く。 ===字源=== * [[形声文字|形声]]。「[[心]]」 + [[音符]]「[[貫]] {{phoneme|*KLON}}」。「[[なれる]]」を意味する[[漢語]]{[[慣]] {{phoneme|*krˤonh}}}を表す字。 {{字源}} ====参考文献==== * [[上古音]]は布之道『[http://www.kaom.net/sgy_bzd.php 広韻形声考]』による。 <references group="字源" /> ===字義=== #[[なれる]]、[[ならす]]。 #*[[慣用]]、[[習慣]] #[[ほしいまま]]にする。 #「[[貫]]」の[[通字]](『{{w|漢語大字典}}』掲載)。[[つらぬく]]。 =={{L|ja}}== {{ja-kanji|常用=カン,な-れる,な-らす|施策=教育:5|呉音=ケン<クヱン|漢音=カン<クヮン|訓=な-れる,な-らす}} ==={{prov}}=== {{top}} *[[慣習]] *[[慣性]] *[[慣用]] *[[慣用音]] *[[慣用句]] *[[慣例]] *[[簡易慣用字体]] *[[習慣]] {{bottom}} =={{L|zh}}== {{zh-cat|guan4}} [[Category:{{yue}}|gwaan3]] {{trans_link|zh|{{PAGENAME}}}} * '''ローマ字表記''' ** '''[[普通話]]''' *** '''[[ピンイン]]''': guàn (guan4) *** '''[[ウェード式]]''': kuan<sup>4</sup> ** '''[[広東語]]''' *** '''[[イェール式]]''': gwaan3 =={{L|ko}}== {{ko-han|관}} =={{L|za}}== [[Category:古壮字|gonq]] '''ローマ字表記''' *[[gonq]] #「[[𭀷]]」の[[同字]]。 =={{L|vi}}== {{vi-han|quen|quán|pos=adjective}} ==={{adjective}}=== quen #[[なじむ|馴染ん]]だ。 #慣れた。 #[[親密]]な[[関係]]の。 =={{コード}}== {{文字コード|jis=1-20-23|mj={{mjmoji|011841}}|gb=9154|cns=1-686B|big5=BA44|ksx=1001-4E31}} {{検字|倉頡=PWJC|四角=9708.6}} {{字典|dj=0739.010|hdz=42349.010|大字源=3013|大漢語林=3643|康煕=0399.130|新大字典=5115|新潮漢字=3704|諸橋=11111}} 2p3mo3iyy6oknr5l1qtcxmvf4cr2vs6 こうか 0 31475 2281105 2081933 2026-06-09T02:58:21Z 鍼灸 112313 2281105 wikitext text/x-wiki {{also|こうが|ごうか|ごうが}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[光華]]】 *【[[公家]]】 *【[[公暇]]】 *【[[公課]]】 *【[[功科]]】 *【[[功課]]】 *【[[功過]]】 *【[[劫火]]】 *【[[効果]]】 *【[[工科]]】 *【[[弘化]]】 *【[[後架]]】 *【[[桁架]]】 *【[[校歌]]】 *【[[構架]]】 *【[[洪化]]】 *【[[甲科]]】 *【{{w|甲賀}}】 *【[[皇化]]】 *【[[皇家]]】 *【[[硬化]]】 *【[[硬貨]]】 *【[[紅花]]】 *【[[紅霞]]】 *【[[考課]]】 *【[[耕稼]]】 *【[[膠化]]】 *【[[閤下]]】 *【[[降下]]】 *【[[降嫁]]】 *【[[香火]]】 *【[[高価]]】 *【[[高廈]]】 *【[[高架]]】 *【[[高歌]]】 *【[[鴻化]]】 *【[[黄禍]]】 *【[[鉱化]]】 *【[[篝火]]】 {{stub|homonym}} sha1ww79edgwel0tocpprw0ylav1nh5 2281107 2281105 2026-06-09T03:00:03Z 鍼灸 112313 2281107 wikitext text/x-wiki {{also|こうが|ごうか|ごうが}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[光華]]】 *【[[公家]]】 *【[[公暇]]】 *【[[公課]]】 *【[[功科]]】 *【[[功課]]】 *【[[功過]]】 *【[[劫火]]】 *【[[効果]]】 *【[[工科]]】 *【[[弘化]]】 *【[[後架]]】 *【[[桁架]]】 *【[[校歌]]】 *【[[構架]]】 *【[[洪化]]】 *【[[甲科]]】 *【{{w|甲賀}}】 *【[[皇化]]】 *【[[皇家]]】 *【[[硬化]]】 *【[[硬貨]]】 *【[[紅花]]】 *【[[紅霞]]】 *【[[考課]]】 *【[[耕稼]]】 *【[[膠化]]】 *【[[閤下]]】 *【[[降下]]】 *【[[降嫁]]】 *【[[香火]]】 *【[[高価]]】 *【[[高廈]]】 *【[[高架]]】 *【[[高歌]]】 *【[[鴻化]]】 *【[[黄禍]]】 *【[[鉱化]]】 *【[[篝火]]】 {{stub}} b7qvkineui4bjhvedhrrye28q9nr9qm 0 32411 2280908 2121475 2026-06-08T13:29:16Z M-30722 1202 2280908 wikitext text/x-wiki {{kana-DEFAULTSORT|かん}} ==漢字== {{kanji|貝|4}} {{kanji variants|贯=[[簡体字]]}} {{筆順}} ===字源=== *[[象形文字|象形]]。縦棒が二つの貝を貫通した形を象る。「[[つらぬく]]」「[[うがつ]]」を意味する[[漢語]]{[[貫]] {{phoneme|*koons}}}を表す字<ref group="字源">林澐 「説干、盾」 『古文字研究』第22輯 安徽大学古文字研究室編、中華書局、2000年、93-95頁。<br>蘇建洲 「西周金文“干”字再議」 『出土文献研究』第20輯 中國文化遺産研究院編、中西書局、2021年、19-25頁。</ref>。 **『説文解字』では「[[毌]]」+「[[貝]]」と分析されているが、[[金文]]などの資料とは一致しない誤った分析である。また、「毌」なる字の実在は確認されていない。 {{字源}} <references group="字源" /> ===字義=== #[[つらぬく]]、[[とおす]]、[[とおる]]。 #*[[貫通]]、[[縦貫]] #財貨を連ねたもの、財貨を連ねる紐、[[ぜにさし]]。 #貨幣の単位。最小単位を1000程度にまとめたもの。 #つらぬきとおったもの、[[すじみち]]。 #[[出身地]]、[[本籍]]。 #*[[本貫]] #(日本) 重さの単位。 #*[[尺貫法]]、[[百貫でぶ]] =={{L|ja}}== {{ja-kanji|常用=カン,つらぬ-く|呉音=カン<クヮン|漢音=カン<クヮン|訓=つらぬ-く,ぬき,ぬ-く}} ==={{suffix}}=== [[Category:{{ja}} {{suffix}}]] [[Category:{{ja}} 通貨]] [[Category:{{ja}} 単位]] {{wikipedia|貫 (曖昧さ回避)}} #貨幣の単位。1000文。 #[[尺貫法]]における重さの単位。1貫=1000[[匁]]≒3.75kg ==={{prov}}=== {{prov-top}} *[[貫木]] *[[貫緡]] *[[貫差]] *[[貫籍]] *[[貫首]] *[[貫主]] *[[貫生]] *[[貫穿]] *[[貫属]] *[[貫代]] *[[貫高]] *[[貫長]] *[[貫頂]] *[[貫通]] *[[貫徹]] *[[貫乳]] *[[貫入]] *[[貫納]] *[[貫目]] *[[貫文]] *[[貫流]] *[[貫禄]] *[[貫手]] *[[一貫]] *[[横貫]] *[[大貫]] *[[頭貫]] *[[看貫]] *[[郷貫]] *[[釘貫]] *[[榑貫]] *[[腰貫]] *[[四方貫]] *[[尺貫法]] *[[地貫]] *[[縦貫]] *[[菅貫]] *[[千貫]] *[[手貫]] *[[通貫]] *[[綱貫]] *[[頰貫]] *[[突貫]] *[[胴貫]] *[[練貫]] *[[柱貫]] *[[樋貫]] *[[飛貫]] *[[百貫]] *[[本貫]] *[[満貫]] *[[目貫]] *[[櫓貫]] *[[指貫]] {{prov-bottom}} =={{L|zh}}== {{zh-cat|guan4|固有名詞|姓}} {{trans_link|zh|{{PAGENAME}}}} *'''ローマ字表記''' **'''[[普通話]]''' ***'''[[ピンイン]]''': [[guàn]] ([[guan4]]) ***'''[[ウェード式]]''': kuan<sup>4</sup> ***'''[[注音符号]]''': ㄍㄨㄢˋ **'''[[広東語]]''' ***'''[[イェール式]]''': gun3 **'''[[閩南語]]''' ***'''[[POJ]]''': kǹg, kùiⁿ, koàn **'''[[呉語]]''' ***'''[[ピンイン]]''': kuoe3 **'''[[中古音]]''': kwan, kwanH **'''[[上古音]]''': ***'''白一平-サガール''': *kˤo[n], *kˤon-s ***'''鄭張''': *koːn, *koːns ==={{name}}=== #中国人の[[姓]]の一つ。 =={{L|ko}}== {{ko-han|관|pos=noun|pos2=依|cat2=通貨|cat3=単位}} ==={{noun}}=== #{{タグ|ko|略語|sort=관}}[[本貫]]。 ===依存名詞=== #貨幣の単位。1000文。 #重さの単位。1貫≒3.75kg =={{L|vi}}== {{vi-han|quan}} =={{コード}}== {{文字コード|u2=2F9D4|jis=1-20-51|mj={{mjmoji|025013|025014|025015}}|gb=D89E|cns=1-5D4B|big5=B365|ksx=1001-4E3B}} {{検字|倉頡=WJBUC|四角=7780.6}} {{字典|dj=1668.010|hdz=63628.150|大字源=9630|大漢語林=10990|康煕=1205.170|新大字典=16266/16299|新潮漢字=12244|諸橋=36681}} s50nsw4vb8kscu6em2ekdti63z0zqu1 0 32548 2280922 2032197 2026-06-08T13:45:35Z M-30722 1202 2280922 wikitext text/x-wiki {{kana-DEFAULTSORT|しつ}} ==漢字== {{kanji|土|8}} {{kanji variants|执=[[簡体字]]|𠌷=[[俗字]]}} {{筆順}} ===字源=== * [[象形文字|象形]]。手枷がはめられている人を象る<ref group="字源">裘錫圭 『文字学概要』 商務印書館、1988年、127頁。<br>張世超、孫凌安、金国泰、馬如森 『金文形義通解』 中文出版社、1996年、2488-2491頁。<br>季旭昇撰 『説文新証』 芸文印書館、2014年、774頁。<br>林志強等評注 『《文源》評注』 中国社会科学出版社、2017年、393頁。</ref>。「[[とらえる]]」「[[とる]]」を意味する[[漢語]]{[[執]] {{phoneme|*tip}}}を表す字。 ** 『[[説文解字]]』では「[[丮]]」+「[[㚔]]」と説明されているが、これは誤った分析である。[[甲骨文字]]の形を見ればわかるように「丮」とは関係がない。 <references group="字源" /> ===意義=== #[[とる]]、[[まもる]]、[[もつ]]、[[ふさぐ]]、[[はからう]]、[[さばく]]、[[とらえる]]。 #*[[執行]]、[[執政]] #[[とも]]、[[同志]]。 #[[むすぶ]]。 =={{L|ja}}== {{ja-kanji|常用=シツ,シュウ,と-る|呉音=シュウ<シフ|漢音=シュウ<シフ|慣用音=シツ|訓=と-る,し}} ==={{drv}}=== *[[執する]] ==={{prov}}=== {{top}} *[[執権]] *[[執行]] *[[執事]] *{{ふりがな|執念|しゅうねん}} *[[執務]] *[[執拗]] *[[執着]] *[[確執]] *[[固執]] *[[偏執]] *[[愛執]] {{bottom}} =={{L|zh}}== {{zh-cat|zhi2}} {{trans_link|zh|{{PAGENAME}}}} * '''ローマ字表記''' ** '''[[普通話]]''' *** '''[[ピンイン]]''': '''[[zhí]] ([[zhi2]])''', [[pǒu]] ([[pou3]]) *** '''[[ウェード式]]''': '''chih<sup>2</sup>''', p'ou<sup>3</sup> ** '''[[広東語]]''' *** '''[[イェール式]]''': jap1 =={{L|ko}}== {{ko-han|집|eumhun=[[잡다|잡을]] 집}} =={{L|vi}}== {{vi-han|chấp}} =={{コード}}== {{文字コード|jis=1-28-25|mj={{mjmoji|009111}}|gb=88CC|cns=1-595A|big5=B0F5|ksx=1001-727B}} {{検字|倉頡=GJKNI|四角=4541.7, 4441.7,4541.7}} {{字典|dj=0467.150|hdz=10457.050|大字源=1571|大漢語林=1912|康煕=0231.090|新大字典=2667|新潮漢字=1957|諸橋=5193}} 8lcqx2fh1xjjoekl434lv1s87is2zxu freír 0 33784 2281303 1851757 2026-06-09T11:30:29Z Kuroco2k 84207 2281303 wikitext text/x-wiki {{DEFAULTSORT:freir}} {{also|Freir}} =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|friir}} < {{etyl|la|es}} {{m|la|frīgere}} < {{etyl|ine-pro|es}} {{m|ine-pro|*bʰer-}}. ==={{pron}}=== * {{IPA|lang=es|fɾeˈiɾ}} ==={{verb}}=== {{es-verb}} #{{context|cooking|lang=es}}油で調理する、{{おくりがな|揚|げる|あげる}}、{{おくりがな|炒|める|いためる}}。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|cocinar}} ===={{drv}}==== * {{l|es|al freír de los huevos lo verá}} * {{l|es|freírsela}} * {{l|es|mandar a freír espárragos}} * {{l|es|refreír}} * {{l|es|sofreír}} ===={{rel}}==== * {{l|es|frito}} * {{l|es|fritura}} * {{l|es|fritanga}} * {{l|es|freidora}} * {{l|es|freidura}} * {{l|es|freiduría}} * {{l|es|freimiento}} k2l87gq8g8ybi9clzu0tw1mlkcby051 0 35167 2281175 2280782 2026-06-09T08:28:08Z RoKouKok 112415 2281175 wikitext text/x-wiki {{kana-DEFAULTSORT|ゴ}} ==漢字== {{kanji|口|4}} {{kanji variants|𠮣=[[古字]]|𭇁=[[俗字]]|𠵥=[[籀文]]}} {{筆順}} ===字源=== * [[形声文字|形声]]。[[原字]]「⿱五五」は獣肉を掛けるために用いる器具を象る。[[羨符]]「[[口]]」を加えて「[[𠵥]]」の字形となり、「⿱五五」が「[[五]]」に類化して「[[吾]]」の字形となる。「獣肉を掛ける器具」を意味する[[漢語]]{[[互]] {{phoneme|*ɡ(ɫ)ˤah}}}を表す字。<ref name="a" group="字源">方稚松「釋甲骨文中的「互」及相關問題」『中央研究院歷史語言研究所集刊』第91本第1分、中央研究院歴史語言研究所、2020年、1-31頁。</ref>[[仮借]]して「[[われ]]」を意味する漢語{[[吾]] {{phoneme|*ŋˤa}}}に用いる。 {{字源}} ====参考文献==== * [[上古音]]は布之道『[http://www.kaom.net/sgy_bzd.php 広韻形声考]』による。 <references group="字源" /> ===意義=== #(一人称)われ、わたし。[[春秋]]戦国時代の漢籍のほか、古墳時代の[[銘]]などにも見える。 =={{L|ja}}== {{ja-kanji|施策=人名用追加:1951|呉音=グ|漢音=ゴ|訓=われ,わが,あ,あが}} ====代名詞==== [[Category:{{ja}}_{{pronoun}}|われ]] #([[われ]]、[[わ]]、上代では[[あれ]]、[[あ]]){{context|dated|lang=ja|skey=われ}}一人称の代名詞。 ==={{prov}}=== *[[吾子]] =={{L|ojp}}== {{ojp-pronoun|わ|あ|あれ|われ|わが}}(同義)[[我]] # [[自分自身]]のことを指す[[一人称]]。{{ふりがな|私|わたくし}}。 #* 「{{ふりがな|吾|われ||特殊=|yomilink=|yomi1=|yomi2=|yomi3=|yomi4=|yomi5=}}は面影糸を巣と張る蜘蛛」 =={{L|zh}}== ==={{etym}}=== {{etyl|sit-pro|zh|sort=wu2}} {{m|sit-pro|*ŋa|t=私}} {{zh-cat|wu2|代名詞|文章語}} {{yue-cat|ng4|代名詞}} ==={{pron}}=== {{zh-han |m=wú,wǔ,ya |m-nj=wǔ/ńg |c=ng4 |pfs=ǹg/ngâ|hrs=ng/nga|gd=n2/nga1 |md=ngù |mn=xm,qz,tw:ngô͘/qz,zz:gô͘ |mn-t=u5 |px=pt,xy:gou2 |w=6ngu,6ng }} ** '''[[中古音]]''': ngu ** '''[[上古音]]''': *** '''白一平-サガール''': *ŋˤa *** '''鄭張''': *ŋaː ==={{pronoun}}=== 普通話:wú 広東語:ng4 #(文章語 第一人称)[[わたし|私]]。 #*一般には、'''[[我]]'''。 #(広東語 第一人称)[[わたし|私]]。 =={{L|ko}}== {{ko-han|오}} =={{L|vi}}== {{vi-han|ngo}} =={{コード}}== {{文字コード|jis=1-24-67|mj={{mjmoji|008120}}|gb=CEE1|cns=1-4940|big5=A75E|ksx=1001-676E}} {{検字|倉頡=MMR|四角=1060.1}} {{字典|dj=0398.020|hdz=10585.130|大字源=1098|大漢語林=1292|康煕=0180.030|新大字典=1826|新潮漢字=1334|諸橋=3379}} fk0jx37m8zgsqnewy17zmnayu32kzla 0 36255 2280963 2037494 2026-06-08T14:36:36Z KashiDisco 119947 /* 字源 */ 2280963 wikitext text/x-wiki {{kanji header|部画=田:5+5}} ===字源=== * 「[[白田]]」の[[合字]]。{{w|奈良時代}}に現れた。<ref group="字源">笹原宏之『美しい日本の一文字』、自由国民社、2024年、16-17頁。</ref> ** {{w|六朝時代}}の漢籍『{{w|捜神後記}}』に「[[畠]]」の記載があるといわれるが、「白田」の二字であった可能性がある。原本は現存せず、事実を確認することはできない。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一一頁。<br>大原望『[https://ksbookshelf.com/nozomu-oohara/WaseikanjiJiten/WaseikanjiJiten_58.html 和製漢字の辞典2014]』</ref> ** 七世紀初頭の{{w|百済}}の木簡に「[[畠]]」が見つかったという報告もあるが、「[[白]]」と「[[田]]」の間の間隔が大きく、二字ではないかという疑いがある。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、三頁。</ref> ** もと「[[畑]]」とは使い分けられていたが、のち混用されるようになった([[畑#字源]]参照)。 ====参考文献==== <references group="字源" /> ===意義=== # '''[[はたけ]]'''。しろはた。はくでん。 [[Category:日本の国字]] =={{L|ja}}== [[Category:{{ja}}]] {{ja-kanji|施策=人名用追加:2004/9,表外字体:印刷標準:はたけ|音=(ハク)|訓=はたけ,はた}} =={{L|ko}}== [[Category:{{ko}}|전]] {{ko-hanja|hangeul=[[전]]|eumhun=|rv=jeon|mr=chŏn|y=cen}} ==文字情報== {{character info}} {{文字コード|jis=1-40-11|mj={{mjmoji|017690}}|gb=AE83|ksx=1002-6C26}} {{検字|倉頡=HAW|四角=2660.0}} {{字典|dj=1202.120|大字源=6083|大漢語林=7200|新大字典=10187|新潮漢字=7369|諸橋=21827}} nfsgn8fuuzyw32g3swbft4yejsmp1gc 2280965 2280963 2026-06-08T14:39:11Z M-30722 1202 2280965 wikitext text/x-wiki {{kana-DEFAULTSORT|はたけ}} ==漢字== {{kanji|田|5}} ===字源=== * 「[[白田]]」の[[合字]]。{{w|奈良時代}}に現れた。<ref group="字源">笹原宏之『美しい日本の一文字』、自由国民社、2024年、16-17頁。</ref> ** {{w|六朝時代}}の漢籍『{{w|捜神後記}}』に「[[畠]]」の記載があるといわれるが、「白田」の二字であった可能性がある。原本は現存せず、事実を確認することはできない。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一一頁。<br>大原望『[https://ksbookshelf.com/nozomu-oohara/WaseikanjiJiten/WaseikanjiJiten_58.html 和製漢字の辞典2014]』</ref> ** 七世紀初頭の{{w|百済}}の木簡に「[[畠]]」が見つかったという報告もあるが、「[[白]]」と「[[田]]」の間の間隔が大きく、二字ではないかという疑いがある。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、三頁。</ref> ** もと「[[畑]]」とは使い分けられていたが、のち混用されるようになった([[畑#字源]]参照)。 ====参考文献==== <references group="字源" /> ===意義=== # '''[[はたけ]]'''。しろはた。はくでん。 =={{L|ja}}== {{ja-kanji|施策=人名用追加:2004/9,表外字体:印刷標準:はたけ|音=(ハク)|訓=はたけ,はた|国=1}} =={{L|ko}}== {{ko-han|전}} =={{コード}}== {{文字コード|jis=1-40-11|mj={{mjmoji|017690}}|gb=AE83|ksx=1002-6C26}} {{検字|倉頡=HAW|四角=2660.0}} {{字典|dj=1202.120|大字源=6083|大漢語林=7200|新大字典=10187|新潮漢字=7369|諸橋=21827}} 27rz2ge5x8o569a23zd67oyb0qxcsgf 0 37929 2281301 2036425 2026-06-09T11:26:47Z M-30722 1202 2281301 wikitext text/x-wiki {{kana-DEFAULTSORT|きょ}} ==漢字== {{kanji|木|17}} {{kanji variants|櫸=[[別体]]/[[繁体字]]|榉=[[簡体字]]|﨔=[[俗字]]|櫸}} =={{L|ja}}== {{ja-kanji|施策=表外字体:印刷標準:キョ|呉音=コ|漢音=キョ|訓=けやき}} ==={{noun}}=== [[Category:{{ja}}_{{noun}}|けやき]] [[Category:{{ja}}_木|けやき]] #(けやき)ニレ科ケヤキ属の[[落葉樹]]の[[総称]]。 =={{L|zh}}== {{zh-cat|ju3}} {{trans_link|zh|{{PAGENAME}}}} * '''ローマ字表記''' ** '''[[普通話]]''' *** '''[[ピンイン]]''': [[jǔ]] (ju3), [[luǒ]] (luo3) *** '''[[ウェード式]]''': chü<sup>3</sup>, lo<sup>3</sup> =={{L|ko}}== {{ko-han|거|eumhun=느티나무 거}} =={{コード}}== {{文字コード|jis=1-61-16|mj={{mjmoji|014717}}|gb=99DB|ksx=1027-1-3D77}} {{検字|倉頡=DHCQ,XDHCQ|四角=4795.2}} {{字典|大字源=4593|大漢語林=5562|新大字典=7684|新潮漢字=5601|諸橋=15883}} 8dyk8a8kyf6qbpjhnuzhqmpxmy7a3vh 0 38658 2280946 2162873 2026-06-08T14:06:22Z KashiDisco 119947 /* 字源 */ 2280946 wikitext text/x-wiki {{kanji header|部画=衣:5+17}} {{kanji variants|𧜎=[[拡張新字体]]}} ===字源=== * 「[[襻]]」の字音が失われ、[[会意]]化による変形を経たもの。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一一頁。</ref> ====参考文献==== <references group="字源" /> ===意義=== # [[Category:日本の国字|たすき]] =={{L|ja}}== [[Category:{{ja}}|たすき]] {{ja-kanji|施策=表外字体:印刷標準:たすき|訓=たすき}} ==={{noun}}=== [[Category:{{ja}}_{{noun}}|たすき]] #('''[[たすき]]''')[[和服]]の[[そで|袖]]や[[たもと|袂]]が邪魔にならないようからげる[[ひも|紐]]や[[ぬの|布]]。 #('''たすき''')一方の肩から他方の腰まで斜めにかける輪状の紐や布。[[駅伝]]では[[バトン]]代わりに使われる。 #('''たすき''')紐や線、細長い物を斜めに交差すること。その形や模様。 #('''たすき''')[[神事]]で[[ものいみ|物忌み]]の[[しるし]]で[[かた|肩]]にかける紐。 #('''たすき'''){{context|architecture|lang=ja|skey=たすき}}斜めに十字状に交差して取り付ける建材。 #('''たすき''')[[漢字]]の画の「[[ノ]]」の部分。 ===={{prov}}==== ==文字情報== {{character info}} {{文字コード|jis=1-75-07|mj={{mjmoji|024185}}|gb=D27A|cns=15-684A}} {{検字|倉頡=LHCQ,LHCJ|四角=3725.2}} {{字典|dj=1594.310|大字源=9163|大漢語林=10493|新大字典=15443|新潮漢字=11738|諸橋=34737}} f214setkwkf7layqilk6010mrx5de4y 2281300 2280946 2026-06-09T11:25:46Z M-30722 1202 2281300 wikitext text/x-wiki {{kana-DEFAULTSORT|たすき}} ==漢字== {{kanji|衣|17}} {{kanji variants|𧜎=[[拡張新字体]]}} ===字源=== * 「[[襻]]」の字音が失われ、[[会意]]化による変形を経たもの。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一一頁。</ref> ====参考文献==== <references group="字源" /> =={{L|ja}}== {{ja-kanji|施策=表外字体:印刷標準:たすき|訓=たすき|国=1}} ==={{noun}}=== [[Category:{{ja}}_{{noun}}]] #('''[[たすき]]''')[[和服]]の[[そで|袖]]や[[たもと|袂]]が邪魔にならないようからげる[[ひも|紐]]や[[ぬの|布]]。 #('''たすき'''){{タグ|ja|陸上競技|label=no}}一方の肩から他方の腰まで斜めにかける輪状の紐や布。[[駅伝]]では[[バトン]]代わりに使われる。 #('''たすき''')紐や線、細長い物を斜めに交差すること。その形や模様。 #('''たすき''')[[神事]]で[[ものいみ|物忌み]]の[[しるし]]で[[かた|肩]]にかける紐。 #('''たすき'''){{タグ|ja|建築}}斜めに十字状に交差して取り付ける建材。 #('''たすき''')[[漢字]]の画の「[[ノ]]」の部分。 =={{コード}}== {{文字コード|jis=1-75-07|mj={{mjmoji|024185}}|gb=D27A|cns=15-684A}} {{検字|倉頡=LHCQ,LHCJ|四角=3725.2}} {{字典|dj=1594.310|大字源=9163|大漢語林=10493|新大字典=15443|新潮漢字=11738|諸橋=34737}} nhcbwb2f0wekq165cvm7122d801wu4j 特別 0 40241 2281177 2214550 2026-06-09T08:40:55Z Jiba1219 100610 2281177 wikitext text/x-wiki {{kana-DEFAULTSORT|とくべつ}} =={{L|ja}}== {{ja-kanjitab|とく|べつ|yomi=o}} {{wikipedia}} ==={{pron}}=== {{ja-pron|とくべつ|acc=0|acc_ref=DJR4,NHK}} {{ja-accent-common|region=京阪|h||とくべつ}} ==={{noun}}=== {{ja-noun|とくべつ}} #一般と{{おくりがな2|異|こと|なる|ことなる}}[[性質]]を持っており、{{おくりがな2|広|ひろ|く|ひろい}}[[通用]]している物とは[[区別]]される様子。 #[[特段]]の取り扱うをする様子。[[格別]]。 ==={{adv}}=== {{ja-adv|とくべつ}} #(程度を強めて)[[特に]]。[[とりわけ]]。 #(打消しを伴って、程度が強くないことを表す)[[それほど]]。[[たいして]]。 #(打消しを伴って、取り立てるべきものがないことを表す)これといって。[[別段]]。 ===={{syn}}==== *[[特殊]] *[[異常]] *[[ことさら]] *[[スペシャル]] ===={{ant}}==== *[[一般]] *[[普通]] *[[平常]] *[[通常]] *[[庸常]] *[[尋常]] ===={{trans}}==== *{{T|en}}: [[specialty]], [[uncommonness]] ==={{adjectivenoun}}=== {{ja-adjectival noun|とくべつ}} {{日本語ダ活用|kana=とくべつ}} ===={{trans}}==== 形容詞 {{trans-top}} *{{T|it}}: [[speciale]] *{{T|en}}: [[special]], [[especial]], [[exceptional]], [[uncommon]] *{{T|es}}: [[especial]] *{{T|de}}: [[speziell]], [[besonders]] *{{T|fr}}: [[spécial]] *{{T|pl}}: [[specjalny]] *{{T|pt}}: [[especial]] *{{T|ro}}: [[special]] *{{T|ru}}: [[особый]], [[специальный]] {{trans-bottom}} 副詞 *{{T|en}}: [[specially]], [[especially]], [[exceptionally]], [[uncommonly]] ===脚注=== {{Reflist}} =={{L|zh}}== ==={{pron}}=== {{cmn-pron|èbié|a=zh-tèbié.ogg}} {{yue-pron|dak6 bit6|t=ak5 bet5}} {{nan-pron|xm,zz,tw,sg:te̍k-pia̍t/qz,jj,ph:tia̍k-pia̍t|t=dêg8 biag8/dêg8 biêg8}} {{cdo-pron|dĕk-biék}} {{cpx-pron|pt,xy:deh7 beh7}} {{hak-pron|thi̍t-phe̍t|h=tidˋ piedˋ}} {{wuu-pron|sh,sz,jx:8deq biq8}} {{gan-pron|tet6 piet6}} *{{ltc}}: dok bjet ==={{adj}}=== {{zh-cat|te4bie2|adj|adv}} {{yue-cat|dak6bit6|adj|adv}} {{nan-cat|tek8piat8|adj|adv}} {{nan-tws-cat|deeg8biag8|adj|adv}} {{cdo-cat|dek7biek4|adj|adv}} {{cpx-cat|deh7beh7|adj|adv}} {{hak-cat|thit6phet6|adj|adv}} {{wuu-cat|deh4bih4|adj|adv}} {{gan-cat|tet6piet6|adj|adv}} {{ltc-cat|dok1bjet1|adj|adv}} {{zhchars|s=特别}} #特別な。 ==={{adv}}=== {{zhchars|s=特别}} #[[特に]]。 ==={{desc}}=== {{CJKV||特別|j=とくべつ|특별|đặc biệt}} =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|특별}} #(日本語に同じ)特別。 =={{L|vi}}== ==={{adj}}=== {{vi-head|adj|đặc|biệt}} #特別な。 rbxuhsmk1nf36dva9jcb4ix2jrft3su perder 0 40909 2281371 1677050 2026-06-09T11:51:11Z Kuroco2k 84207 2281371 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] [[Category:スペイン語 動詞]] ===発音=== {{IPA|peɾˈðeɾ}} ===語源=== ラテン語 ''[[perdere]]'' ===動詞=== {{es-verb|perd|er|pres=pierdo}} # {{おくりがな|失|う|うしなう}}、[[なくす]]、[[紛失]]する、{{おくりがな|損|なう|そこなう}}、(体重が){{おくりがな|減|る|へる}}。 # {{おくりがな|逃|す|のがす}}、見逃す、乗り遅れる。 # [[無駄]]にする、[[浪費]]する。 # [[亡]]くす、[[死別]]する。 # {{おくりがな|負|ける|まける}}、{{おくりがな|敗|れる|やぶれる}}、[[敗北]]する。 # {{おくりがな|迷|う|まよう}}、経路が分からなくなる。 ===={{conjug}}==== {{es-conj|<ie>}} ===関連語=== *[[perdedor]] *[[pérdida]] *[[perdición]] ---- ==ポルトガル語== [[Category:ポルトガル語]] [[Category:ポルトガル語 動詞]] ===発音=== {{IPA|pɨɾˈdeɾ}} ===語源=== ラテン語 ''[[perdere]]'' ===動詞=== # {{おくりがな|失|う|うしなう}}、[[なくす]]、[[紛失]]する、{{おくりがな|損|なう|そこなう}}、(体重が){{おくりがな|減|る|へる}}。 # {{おくりがな|逃|す|のがす}}、見逃す、乗り遅れる。 # [[無駄]]にする、[[浪費]]する。 # [[亡]]くす、[[死別]]する。 # {{おくりがな|負|ける|まける}}、{{おくりがな|敗|れる|やぶれる}}、[[敗北]]する。 # {{おくりがな|迷|う|まよう}}、経路が分からなくなる。 ===活用=== {{pt-conj| |perder}} ===関連語=== *[[perda]] *[[perdição]] *[[perdido]] lze8pd7xmu5kx41lbbvy20j70qlrqcf crecer 0 41411 2281257 1378895 2026-06-09T11:12:41Z Kuroco2k 84207 2281257 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] ==={{etym}}=== *{{etyl|la|es}} {{term|la|crescere|crēscĕre}}、{{term/t|la|crēscō}}の現在能相不定詞 ===={{cogn}}==== *{{fr}}:{{term|fr|croître}} *{{it}}:{{term|it|crescere}} *{{en}}:{{term|en|crescent}}. ===発音=== {{IPA|kɾeˈθeɾ}} ===動詞=== {{es-verb|crec|er|pres=crezco}} # [[成長]]する、{{おくりがな2|伸|の|びる|のびる}}、{{おくりがな2|生|は|える|はえる}}。 # 大きくなる、[[増大]]する、[[増進]]する、{{おくりがな2|広|ひろ|がる|ひろがる}}、[[拡大]]する。 #(月が){{おくりがな2|満|み|ちる|みちる}}、(河川などが)[[増水]]する。 ===={{conjug}}==== {{es-conj}} ===={{ant}}==== * [[decrecer]] ====関連語==== *[[creces]] *[[crecido]] *[[creciente]] *[[crecimiento]] *[[incremento]] i2rd8j7pcuxhr7u6805dh9k51shcl1i バイ 0 41743 2281094 2127556 2026-06-09T01:55:18Z うーむ 129171 /* */ 2281094 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|はい|ハイ|パイ|ばい}} {{同音の漢字|Wiktionary:漢字索引 音訓 は#バイ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun}} #{{タグ|ja|略語|俗語|性的指向}}[[バイセクシュアル]]。 eivl4vbbvri9l931ph47ovlgk75sil3 abolir 0 41889 2281247 1643010 2026-06-09T11:03:38Z Kuroco2k 84207 2281247 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{ast-verb-ir|abol}} #[[廃止]]する。 {{ast-conj-ir|abol}} ===={{rel}}==== * {{l|ast|abolición}} ---- =={{L|ca}}== ==={{verb}}=== {{ca-verb|ir|abol}} #[[廃止]]する。 {{ca-conj-ir|abol}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|abolēre}} ==={{pron}}=== * {{IPA|lang=es|aβoˈliɾ}} ==={{verb}}=== {{es-verb|abol|ir}} #{{context|transitive|lang=es}}[[廃止]]する、[[撤廃]]する。 ===={{conjugation|es}}==== 欠如動詞。活用語尾が-i-で始まる人称、数のみに活用する。具体的には、直説法現在単数および第三人称複数、接続法現在のすべて、命令法における第二人称複数以外のすべて、を欠く。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== *[[abolición]] ---- =={{L|fr}}== ==={{etym}}=== {{etyl|la|fr}} {{m|la|abolēre}} ==={{pron}}=== {{fr-IPA}} [[File:Fr-abolir.ogg]] ==={{verb}}=== {{fr-verb}} #{{context|transitive|lang=fr}}[[廃止]]する。 ===={{conj|fr}}==== {{fr-conj-auto}} ===={{rel}}==== * [[abolissement]] * [[abolisseur]] * [[abolitif]] * [[abolition]] ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|abolēre}} ==={{pron}}=== *(ポルトガル){{IPA|lang=pt|ɐβuˈliɾ}} *(ブラジル){{IPA|aboˈlir}} ==={{verb}}=== {{pt-verb|ab|olir}} #[[廃止]]する。 #(習慣的行動を)[[やめる]]。[[停止]]する。 ===={{conjug|pt}}==== {{pt-conj|ab|olir}} ===={{rel}}==== * [[abolição]] azvg7cqcn20j9craolhapyimj5mz81p 大蛇 0 41911 2281191 1468467 2026-06-09T09:45:53Z うーむ 129171 2281191 wikitext text/x-wiki {{kana-DEFAULTSORT|だいじゃ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいじゃ]]}} # [[おおきい|大きい]][[へび|蛇]]。 ==={{wagokanji}}=== {{ja-wagokanji|おろち}} #{{wagokanji of|おろち}} <!--発音 (日本語) アクセントや発音記号の記載のない限りコメントアウト ===={{pron|ja}}==== ;(アクセント等の記載) :{{IPA|??}} :{{X-SAMPA|??}} --> ===={{etym}}==== <!--語源--> ===={{trans}}==== ; 大きい蛇 *{{en}}: [[large]] [[snake]] ; おろち *{{en}}: [[giant]] [[snake]] ===={{rel}}==== <!--関連語--> * {{ふりがな|八岐大蛇|やまたのおろち}} * {{syn}}: [[うわばみ]] * {{idiom}}: [[大蛇を見るとも女を見るな]] =={{ko}}== [[Category:{{ko}}|대사]] ==={{noun}}=== [[Category:{{ko}}_{{noun}}|대사]] *ハングル表記:{{lang|ko|[[대사]]}} # [[おおきい|大きい]][[へび|蛇]]。 =={{zh}}== [[Category:{{zh}}|da4chi2]] ==={{noun}}=== [[Category:{{zh}} {{noun}}|da4chi2]] # [[おおきい|大きい]][[へび|蛇]]。 ca6v7n7rqhorfvthww1dzir9gorfexq 2281192 2281191 2026-06-09T09:46:28Z うーむ 129171 2281192 wikitext text/x-wiki {{kana-DEFAULTSORT|だいじゃ}} {{wikipedia}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいじゃ]]}} # [[おおきい|大きい]][[へび|蛇]]。 ==={{wagokanji}}=== {{ja-wagokanji|おろち}} #{{wagokanji of|おろち}} <!--発音 (日本語) アクセントや発音記号の記載のない限りコメントアウト ===={{pron|ja}}==== ;(アクセント等の記載) :{{IPA|??}} :{{X-SAMPA|??}} --> ===={{etym}}==== <!--語源--> ===={{trans}}==== ; 大きい蛇 *{{en}}: [[large]] [[snake]] ; おろち *{{en}}: [[giant]] [[snake]] ===={{rel}}==== <!--関連語--> * {{ふりがな|八岐大蛇|やまたのおろち}} * {{syn}}: [[うわばみ]] * {{idiom}}: [[大蛇を見るとも女を見るな]] =={{ko}}== [[Category:{{ko}}|대사]] ==={{noun}}=== [[Category:{{ko}}_{{noun}}|대사]] *ハングル表記:{{lang|ko|[[대사]]}} # [[おおきい|大きい]][[へび|蛇]]。 =={{zh}}== [[Category:{{zh}}|da4chi2]] ==={{noun}}=== [[Category:{{zh}} {{noun}}|da4chi2]] # [[おおきい|大きい]][[へび|蛇]]。 q8mbuauuurm6hnkncec59j6stm5axd2 こうが 0 42582 2281106 1919515 2026-06-09T02:59:42Z 鍼灸 112313 2281106 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|こうか|ごうか|ごうが}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[姮娥]]】 *【[[光画]]】 *【[[光駕]]】 *【[[公衙]]】 *【[[広雅]]】 *【[[甲賀]]】 *【[[江河]]】 *【[[紅河]]】 *【[[高臥]]】 *【[[高雅]]】 *【[[黄河]]】 {{stub}} 2qmi83pca0nvlp6lu8lfxkrc8z26p3r ごうか 0 42583 2281108 2046484 2026-06-09T03:00:27Z 鍼灸 112313 2281108 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|こうか|こうが|ごうが}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[劫火]]】全[[世界]]を[[やきつくす|焼き尽くす]]という[[大火]]。 *【[[号火]]】[[のろし|狼煙]]。 *【[[業果]]】{{ふりがな|業|ゴウ|yomilink=n}}による[[むくい|報い]]。 *【[[業火]]】[[悪業]]が[[み|身]]を[[ほろぼす|滅ぼす]]ことを[[たとえる|譬え]]た[[地獄]]の[[猛火]]。 *【[[豪家]]】[[財産]]があり、その[[地方]]で[[勢力]]のある[[いえ|家]]。 *【[[豪華]]】[[はなやか|華やか]]でいかにもお[[かね|金]]がかかっているさま。 4rrf6siaevvd8eqv5ww50foun6k7cuv ごうが 0 42584 2281109 1919517 2026-06-09T03:00:53Z 鍼灸 112313 2281109 wikitext text/x-wiki {{also|こうか|こうが|ごうか}} {{kana-DEFAULTSORT}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[聱牙]]】[[文字]]・[[ことば|言葉]]などが[[難解]]なこと。また、そのさま。 *【[[恒河]]】{{w|ガンジス川}}。 5n97h8pwd5fg97ymqh3rzllmfzjlod3 purificar 0 42829 2281203 1142402 2026-06-09T10:42:16Z Kuroco2k 84207 2281203 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] [[Category:スペイン語 動詞]] ===発音=== {{IPA|puɾifiˈkaɾ}} ===語源=== [[puro]], [[-ficar]] ===動詞=== # [[純化]]する、[[清浄]]にする、[[精製]]する。 # {{ふりがな|清|きよ|める}}める、[[浄化]]する。 ===={{conjug}}==== {{es-conj}} ====類義語==== *[[purgar]] ===関連語=== *[[purificación]] *[[purificador]] *[[purificatorio]] ---- ==ポルトガル語== [[Category:ポルトガル語]] [[Category:ポルトガル語 動詞]] ===発音=== {{IPA|puɾifiˈkaɾ}} ===語源=== [[puro]], [[-ficar]] ===動詞=== # [[純化]]する、不純物を{{ふりがな|除|のぞ|く}}く、[[精製]]する、[[精錬]]する。 # {{ふりがな|清|きよ|める}}める、[[浄化]]する。 ====類義語==== *[[purgar]] *[[assear]] *[[limpar]] *[[santificar]] ===関連語=== *[[purificação]] *[[purificador]] *[[purificante]] *[[purificativo]] *[[purificatório]] itvsk7zjei3f9y9id1drvm6jsu02n24 ばい 0 43520 2281093 2196025 2026-06-09T01:54:57Z うーむ 129171 /* */ 2281093 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|はい|ハイ|バイ|パイ}} {{同音の漢字|Wiktionary:漢字索引 音訓 は#バイ}} =={{L|ja}}== ==={{noun}}=== {{Wikipedia|バイ}} {{ja-noun|貝|蛽|海蠃}} #[[w:エゾバイ科|エゾバイ科]]の[[まきがい|巻き貝]]。[[かいがら|貝殻]]は[[紡錘]]形で[[かたい|堅く]]て[[丈夫]]。[[たかさ|高さ]]は6~7cmくらい。[[北海道]][[南部]]から[[九州]]までの[[あさい|浅い]][[海]]に[[生息]]。[[肉]]は[[食用]]にし、[[から|殻]]は[[べいごま]]や貝[[細工]]の[[材料]]にする。 ==={{parti}}=== {{ja-parti}} [[Category:{{ja}} 肥筑方言]] #(方言、九州北部)断定の意。~だよ。 ===={{syn}}==== *[[たい]] ==={{homonym}}=== {{ja-homonym}} *【[[馬医]]】1.[[うま|馬]]の[[治療]]や[[診断]]をする[[医者]]。2.[[律令制]]で、{{ふりがな|馬寮|めりょう|yomilink=n}}の[[官馬]]の[[世話]]などをした[[もの|者]]。うまくすし。 h8nswufhj1p9po9iwhmia4l2lbuv01r カテゴリ:エストニア語 鳥 14 46877 2281152 1593533 2026-06-09T06:30:34Z 鍼灸 112313 2281152 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{et}}|{{et}}_生物|disp4=生物|{{et}}_動物|disp5=動物|{{et}}_脊索動物|disp6=脊索動物|{{et}}_脊椎動物|disp7=脊椎動物|last=鳥}} * {{Pathnav|カテゴリ|分野|生物|動物|脊索動物|脊椎動物|鳥|last={{et}}}} </div> [[カテゴリ:エストニア語 脊椎動物|*とり]] [[カテゴリ:鳥|えすとにあ]] 08f7n0vicb93xdb94nyjp49mol7cyp6 こうかい 0 50946 2281127 2271637 2026-06-09T05:12:33Z ~2026-33980-76 131891 /* 日本語 */ 2281127 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|こうがい|ごうかい|ごうがい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[交会]]】[[ひと|人]]と人とが[[したしい|親しく]]すること。 *【[[公会]]】[[公式]]の[[会議]]。 *【[[公廨]]】[[役所]]。 *【[[公海]]】[[特定]]の[[国家]]の[[主権]]に[[属する|属さ]]ず、[[各国]]が[[自由]]に[[航行]]できる[[海域]]。 *【[[公開]]】[[自由]]に見たり聞いたりできるように{{ふりがな|公|おおやけ}}に[[開放]]すること。 *【[[叩解]]】[[パルプ]]の[[繊維]]を[[たたく|叩いて]][[ほぐす|解す]]こと。 *【[[工会]]】[[労働組合]]。 *【[[後会]]】[[後日]]に[[あう|会う]]こと。 *【[[後悔]]】[[あと|後]]になって[[自分]]のしたことを[[くやむ|悔やむ]]こと。 *【[[更改]]】[[かえる|変えて]][[あたらしい|新しく]]すること。 *【[[江海]]】[[大河]]と[[うなばら|海原]]。 *【[[港界]]】[[みなと|港]]の[[境界]]。 *【[[狡獪]]】[[わるがしこい|悪賢い]]こと。 *【[[紅海]]】[[アフリカ大陸]]と[[アラビア半島]]との[[あいだ|間]]にある[[ほそながい|細長い]][[うみ|海]]。 *【[[航海]]】[[船舶]]で[[渡航]]すること。 *【[[講会]]】[[講]]の[[集会]]。 *【[[講解]]】[[意味]][[内容]]を[[解説]]すること。 *【[[鋼塊]]】[[鋳型]]に[[ながしこむ|流し込んで]][[かためる|固めた]][[金属]]。[[インゴット]]。 *【[[降海]]】[[さかな|魚]]が[[かわ|川]]から[[うみ|海]]に[[くだる|下る]]こと。 *【[[降灰]]】[[火山灰]]が[[ふる|降る]]こと。 *【[[香会]]】[[香]]の[[かおり|香り]]を[[観賞]]する[[集会]]。 *【[[黄海]]】[[中国]]と[[朝鮮半島]]との[[あいだ|間]]の[[海域]]。 *【[[訇磕]]】[[みず|水]]が激しく流れるときの大きな[[おと|音]]の[[形容]]。 104cqkq4o6uv7k979ynshstan1x5ew1 食傷 0 51227 2280932 1556096 2026-06-08T13:49:58Z M-30722 1202 2280932 wikitext text/x-wiki {{kana-DEFAULTSORT|しょくしょう}} =={{L|ja}}== {{ja-kanjitab|しょく|しょう|yomi=o}} ==={{noun}}=== {{ja-noun|[[しょくしょう]]}} #{{タグ|ja|病気}}[[しょくあたり|食中り]]。[[食中毒]]。 # [[おなじ|同じ]]ものを[[たべる|食べ]][[つづける|続け]]て[[あきる|飽き]]てしまった様子。 # 同じ[[できごと|出来事]]などが[[連続]]して[[おこる|起こり]][[あきあき|飽き飽き]]している様子。 <!-- 正確性? ==概要== 基本的に食べ物に対して飽きていたり食あたりになったときのことを指すが、「最近の[[ポップ・ミュージック]]に食傷気味だ」や、「[[ゲーム]]のグラフィック批判に食傷だよ」など食べ物以外のものに使うこともあり、使い方は多様にわたる。 ==備考== 相手が傷んだ食べ物を口にした際、表現に戸惑う苦しみ、痛みの症状に陥る。これを第三者的に目にする状況では、相手が動きを止め、心理的な倦怠に襲われた風(食い合わせの悪さが原因による、相手が不快な様子も含む)に見える事から日常言語に組み込まれた。 --> ===={{rel}}==== *[[ワンパターン]] *[[倦怠]] *[[メタファー]] *[[不快]] ===={{trans}}==== {{trans-see|語義1|食中毒}} 3shmjlxrprdfuq5lhkztfuognx6njxt tool 0 55131 2281361 1798224 2026-06-09T11:50:03Z M-30722 1202 2281361 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{etyl|enm}} {{m|enm|tool}}, {{m|enm|tol}} < {{etyl|ang}} {{m|ang|tōl}} < {{etyl|non}} {{m|non|tól}} か ==={{pron}}=== *{{IPA|lang=en|tuːl}} * {{音声|en|LL-Q1860 (eng)-Vealhurl-tool.wav|a=英}} ==={{noun}}=== {{en-noun}} #{{topcat|en|道具}}[[道具]]、[[工具]]。 #[[手段]]。 #{{ふりがな|手先|てさき}}。 ===={{drv}}==== * [[toolbar]] * [[toolbox]] * [[toolchain]] * [[tool chest]] * [[tooling]] * [[toolkit]] * [[toolmaker]] * [[toolset]] =={{L|et}}== ==={{pron}}=== {{IPA|lang=et|toːlʲ}} ==={{etym}}=== {{bor|et|de|Stuhl}} ==={{noun}}=== {{head|et|noun}} #{{タグ|et|家具}}[[椅子]]。 ib44cmadcv1qpxqd5m5sag4nyzpp8em ぼうし 0 58190 2281119 2137745 2026-06-09T03:19:10Z 鍼灸 112313 2281119 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうし|ほうじ|ぼうじ}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[亡姉]]】[[しぬ|死んだ]][[あね|姉]]。 *【[[亡子]]】死んだ[[こども|子供]]。 *【[[亡師]]】死んだ[[師匠]]。 *【[[傍視]]】[[かたわら|傍ら]]で[[みる|見]]ていること。[[傍観]]。 *【[[坊市]]】{{ふりがな|町|まち}}。 *【[[帽子]]】[[日光]]などを[[ふせぐ|防ぐ]]ため[[あたま|頭]]に[[かぶる]]もの。 *【[[某氏]]】とある[[人物]]。 *【[[某紙]]】とある[[新聞]]。 *【[[某誌]]】とある[[雑誌]]。 *【[[暴死]]】[[突然]]に死ぬこと。 *【[[眸子]]】{{ふりがな|眸|ひとみ}}。 *【[[紡糸]]】[[いと|糸]]を[[つむぐ]]こと。 *【[[茅茨]]】{{ふりがな|茅|ちがや}}と{{ふりがな|茨|いばら}}。 *【[[謀士]]】[[謀略]]を[[めぐらす]][[ひと|人]]。 *【[[鋩子]]】[[刀剣]]の[[きっさき|切っ先]]。 *【[[防止]]】ふせぐこと。 *【[[旁諮]]】[[旁訊]]。 p6vysfe3sx9uj6qndxvnuw3vaggecod がちょう 0 58540 2280875 2221835 2026-06-08T12:54:28Z M-30722 1202 2280875 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かちょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[画帳]]】[[絵]]を[[かく]]ための[[帳面]]。[[スケッチブック]] *【[[画調]]】[[絵画]]や[[写真]]などで、[[画面]][[全体]]の[[調子]]。 *【[[鵝鳥]]/[[鵞鳥]]】[[野生]]の[[雁]]を[[かいならす|飼いならして]]つくられた[[家禽]]。 3m1l9s59g7hy4v0jpi9pgix586mge5h 画帳 0 58541 2280878 1471390 2026-06-08T13:00:22Z M-30722 1202 [[en:sketchbook]]より訳語追加 2280878 wikitext text/x-wiki {{kana-DEFAULTSORT|がちょう}} =={{L|ja}}== {{ja-kanjitab|が|ちょう|yomi=o}} ==={{noun}}=== [[File:Sketch-book.jpg|thumb]] {{ja-noun|[[がちょう]]}} #{{タグ|ja|美術}}[[絵]]を[[かく]]ための[[帳面]]。 ===={{syn}}==== * [[スケッチブック]]、[[画帖]] ===={{trans}}==== {{trans-top}} *{{T|ga}}: {{t|ga|leabhar sceitseála|m}} *{{T|ar}}: {{t|ar|دفتر رسم|m|tr=daftar rasm}} *{{T|hy}}: {{t|hy|էսքիզների տետր}}; {{t|hy|նկարչական ալբոմ}} *{{T|vo}}: {{t|vo|skätabuk}}, {{t|vo|skätamabuk}} *{{T|en}}: {{t|en|sketchbook}}, {{t|en|sketch pad}} *{{T|eo}}: {{t|eo|skizlibro}} *{{T|nl}}: {{t|nl|schetsboek|n}} *{{T|sv}}: {{t|sv|skissbok|c}} *{{T|es}}: {{t|es|cuaderno de bocetos|m}} *{{T|cs}}: {{t|cs|skicák|m}} *{{T|zh}}: {{t|cmn|素描簿}}, {{t|cmn|素描本|tr=sùmiáoběn}} *{{T|de}}: {{t|de|Skizzenbuch|n}} *{{T|tr}}: {{t|tr|eskiz defteri}}, {{t|tr|taslak defteri}} *{{T|no}}: *:{{T|nb}}: {{t|nb|skisseblokk|m|f}}, {{t|nb|skissebok|m|f}} *{{T|hu}}: {{t|hu|vázlatfüzet}} *{{T|fi}}: {{t|fi|luonnoslehtiö}}; {{t|fi|luonnoskirja}} *{{T|fr}}: {{t|fr|carnet de croquis|m}} *{{T|bg}}: {{t|bg|ски́цник|m}} *{{T|be}}: {{t|be|альбо́м|m}}, {{t|be|блакно́т|m}}, {{t|be|скетчбу́к|m}} *{{T|pl}}: {{t|pl|szkicownik|m}} *{{T|ru}}: {{t|ru|скетчбу́к|m}}, {{t|ru|блокно́т|m}}, {{t|ru|альбо́м|m}} {{trans-bottom}} bc250baftkmsabqyezen00s22rz78g0 2280898 2280878 2026-06-08T13:12:31Z M-30722 1202 /* {{trans}} */ 2280898 wikitext text/x-wiki {{kana-DEFAULTSORT|がちょう}} =={{L|ja}}== {{ja-kanjitab|が|ちょう|yomi=o}} ==={{noun}}=== [[File:Sketch-book.jpg|thumb]] {{ja-noun|[[がちょう]]}} #{{タグ|ja|美術}}[[絵]]を[[かく]]ための[[帳面]]。 ===={{syn}}==== * [[スケッチブック]]、[[画帖]] ===={{trans}}==== {{trans-top}} *{{T|ga}}: {{t|ga|leabhar sceitseála|m}} *{{T|ar}}: {{t|ar|دفتر رسم|m|tr=daftar rasm}} *{{T|hy}}: {{t|hy|էսքիզների տետր}}; {{t|hy|նկարչական ալբոմ}} *{{T|vo}}: {{t|vo|skätabuk}}, {{t|vo|skätamabuk}} *{{T|en}}: {{t|en|sketchbook}}, {{t|en|sketch pad}} *{{T|eo}}: {{t|eo|skizlibro}} *{{T|nl}}: {{t|nl|schetsboek|n}} *{{T|sv}}: {{t|sv|skissbok|c}} *{{T|es}}: {{t|es|cuaderno de bocetos|m}} *{{T|cs}}: {{t|cs|skicák|m}} *{{T|zh}}: {{t|cmn|素描簿}}, {{t|cmn|素描本|tr=sùmiáoběn}} *{{T|ko}}: {{t|ko|스케치북}} *{{T|de}}: {{t|de|Skizzenbuch|n}} *{{T|tr}}: {{t|tr|eskiz defteri}}, {{t|tr|taslak defteri}} *{{T|no}}: *:{{T|nb}}: {{t|nb|skisseblokk|m|f}}, {{t|nb|skissebok|m|f}} *{{T|hu}}: {{t|hu|vázlatfüzet}} *{{T|fi}}: {{t|fi|luonnoslehtiö}}; {{t|fi|luonnoskirja}} *{{T|fr}}: {{t|fr|carnet de croquis|m}} *{{T|bg}}: {{t|bg|ски́цник|m}} *{{T|be}}: {{t|be|альбо́м|m}}, {{t|be|блакно́т|m}}, {{t|be|скетчбу́к|m}} *{{T|pl}}: {{t|pl|szkicownik|m}} *{{T|ru}}: {{t|ru|скетчбу́к|m}}, {{t|ru|блокно́т|m}}, {{t|ru|альбо́м|m}} {{trans-bottom}} huo8juyq5j10xgv1islbljtuyav66tm libra 0 58914 2281008 2279061 2026-06-08T15:56:28Z M-30722 1202 2281008 wikitext text/x-wiki {{also|Libra}} =={{L|it}}== ==={{noun}}=== {{it-noun|libr|f|a|e}} #{{タグ|it|計測機器}}[[天秤]]。 #{{タグ|it|星座}}[[てんびん座]]。 =={{L|en}}== ==={{etym}}=== {{etyl|la}} {{m|la|libra}} ==={{noun}}=== {{en-noun|librae|irr=y}} #{{タグ|en|単位}}[[ローマ]]の[[重量]][[単位]]。約327[[グラム]]。 #{{タグ|en|単位}}[[スペイン語圏]]・[[ポルトガル語]]圏で用いられる重量単位。約460グラム。 #[[libbra]]の異綴。 ===アナグラム=== * [[Arbil]] * [[brail]] =={{L|es}}== ==={{pron}}=== * {{IPA|lang=es|ˈliβɾa̠}} ==={{etym}}1=== {{etyl|la|es}} {{m|la|libra}} ==={{noun}}=== {{es-noun|f}} #{{タグ|es|単位|label=秤量の単位}}[[ポンド]]。 #{{タグ|es|通貨|label=貨幣の単位}}[[ポンド]]。 ====={{syn}}===== * [[libra esterlina]] {{f}} ==={{etym}}2=== ===={{verb}}==== {{es-verb-form}} #[[librar]]の命令法非公式第二人称単数形。 #librarの直説法現在公式第二人称単数形。 #librarの直説法現在第三人称単数形。 =={{L|cs}}== ==={{pron}}=== {{cs-IPA}} *{{音声|cs|Cs-libra.ogg}} ==={{noun}}=== {{cs-noun|g=f}} #{{タグ|cs|単位|label=秤量の単位}}[[ポンド]]。 #{{タグ|cs|通貨|label=貨幣の単位}}[[ポンド]]。 {{cs-ndecl|<f>}} =={{L|pt}}== ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|ˈli.βɾɐ}} ==={{noun}}=== {{pt-noun|f|s}} #{{タグ|pt|単位|label=秤量の単位}}[[ポンド]]。 #{{タグ|pt|通貨|label=貨幣の単位}}[[ポンド]]。 =={{L|la}}== ==={{noun}}=== {{la-noun+|lībra<1>}} #{{タグ|la|単位}}秤量の単位[[リブラ]]、1リブラは1ポンド=12オンスに等しい。略 '''[[lb.]]'''。 #{{タグ|la|計測機器}}[[天秤]]。{{ふりがな|衡|はかり}}。 #[[水準器]]。 {{la-ndecl|lībra<1>}} ===={{rel}}==== * {{l|la|librare}} * {{l|la|libratio}} ===={{desc}}==== {{top}} *{{desc|it|libra|libbra|lira}} *{{desc|gl|libra}} *{{desc|es|libra}} *{{desc|fr|livre}} *{{desc|pt|libra}} *{{desc|ro|livră}} {{bottom}} ==={{verb}}=== {{la-verb-form|librā}} #{{l|la|librāre}}の命令法能相現在第二人称単数形。 q6hm0i8twue57o4hh5414syt13meztl 創造 0 60965 2281040 2202538 2026-06-08T18:30:24Z Jiba1219 100610 2281040 wikitext text/x-wiki {{kana-DEFAULTSORT|そうぞう}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|そう|ぞう|yomi=goon}} ==={{pron}}=== {{ja-pron|そうぞう|acc=0}} {{ja-accent-common|region=京阪|h||そーぞー}} ==={{noun}}=== {{ja-noun-suru|[[そうぞう]]}} #[[かみ|神]]が[[万物]]を{{おくりがな2|創|つく|る|つくる}}こと。 #*「元始に神天地を創造り給へり」(「創世記一章一節」『文語訳聖書』) #[[自分]]の[[かんがえ|考え]]で[[あたらしい|新しい]]物を[[つくりだす|創り出す]]こと。[[独創]]。 ===={{syn}}==== * [[創生]] * [[クリエイト]]([[クリエート]]) ===={{ant}}==== *(万物を創ること)[[殲滅]]、[[撲滅]] *(独創)[[模倣]] ==={{verb}}=== ===={{conjug}}==== {{日本語サ変活用|kana=そうぞう}} ===={{trans}}==== {{top}} *{{T|en}}: {{t|en|create}} *{{T|zh}}: {{t|zh|創造}} *{{T|no}}: *:{{T|nb}}: {{t|no|skape}} *{{T|fr}}: {{t|fr|créer}} *{{T|la}}: {{t|la|creare}} *{{T|ru}}: {{t|ru|создовать|impf}}, {{t|ru|создать|pf}} {{bottom}} =={{L|zh}}== {{zh-cat|chuang4zao4|動詞}} {{yue-cat|chong3jou6|動詞}} {{nan-cat|chhong3cho7|動詞}} {{nan-tws-cat|cang3zao6|動詞}} {{hak-cat|chhong3chho4|動詞}} {{wuu-cat|tshaon3zau2|動詞}} ==={{pron}}=== {{cmn-pron|chuàngzào|a=Zh-chuàngzào.ogg}} {{yue-pron|cong3 zou6}} {{nan-pron|xm,zz,tw:chhòng-chō/qz:chhòng-chǒ|t=cang3 zao6}} {{hak-pron|chhóng-chho|h=congˊ co˖}} {{wuu-pron|sh:5tshaon zau}} ==={{verb}}=== {{zhchars|s=创造}} #創造する。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|창조}} #(日本語に同じ)創造。 =={{L|vi}}== ==={{verb}}=== {{vi-head|verb|sáng|tạo}} #創造する。 g4piomz3yitvvrl5my2fp0l2k9ohl4k ngoenzneix 0 67165 2281098 1797618 2026-06-09T02:09:53Z ふゆくれ 95641 2281098 wikitext text/x-wiki =={{L|za}}== ==={{etym}}=== {{compound|lang=za|ngoenz|neix}} ===={{pron}}==== {{za-pron}} ==={{noun}}=== {{za-head|noun}} #{{context|time|lang=za}}{{ふりがな|今日|きょう}}。 6kamrfokgkb162e56zhyo2oj6r1lo0e ngoenz 0 67166 2281097 1797617 2026-06-09T02:08:48Z ふゆくれ 95641 2281097 wikitext text/x-wiki =={{L|za}}== ==={{etym}}=== {{derived|za|tai-pro|*ŋwanᴬ}} ==={{pron}}=== {{za-pron}} ==={{noun}}=== {{za-head|noun|𭥓|昋|昙|艮|𭦂|𨑨|晏|㫨|𭥔}} #{{context|暦|lang=za}}{{ふりがな|日|ひ}}。 ===={{drv}}==== *[[ngoenzneix]] 7mkk5ooyvp4kdja6o29fccr77chm75t buscar 0 70585 2281251 2201522 2026-06-09T11:05:41Z Kuroco2k 84207 /* {{conjugation}} */ 2281251 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{ast-verb-ar|busc}} #{{おくりがな2|探|さが|す|さがす}}。 {{ast-conj-ar|busc||busqu}} ===={{syn}}==== * {{l|ast|guetar}} ===={{rel}}==== * {{l|ast|buscu}} =={{L|ca}}== ==={{etym}}=== {{etyl|es|ca}} ''buscar'' ==={{verb}}=== {{ca-verb|ar|busc}} #{{おくりがな2|探|さが|す|さがす}}。 ===={{conjugation}}==== 語根''c'' が語尾の''e'' や''i'' の前で''qu'' に変わる他は[[cantar]]のように活用する。 {{ca-conj-ar|busc}} ===={{syn}}==== * {{l|ca|cercar}} =={{L|es}}== ==={{pron}}=== * {{es-IPA}} * {{音声|es|es-us-buscar.ogg}} * {{音声|es|Es-am-lat-buscar.ogg|a=ラテンアメリカ}} ==={{verb}}=== {{es-verb|busc|ar|pret=busqué}} #{{おくりがな2|探|さが|す|さがす}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|buscarruidos}} * {{l|es|buscavidas|g=m}} * {{l|es|buscón}}, {{l|es|buscona}} * {{l|es|búsqueda}} ===={{seealso}}==== * {{l|es|esculcar}} =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} ''buscar'' ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|buʃ.ˈkaɾ}} *(ブラジル){{IPA|lang=pt|busˈkaɾ}} ==={{verb}}=== {{pt-verb|bus|car}} #{{おくりがな2|探|さが|す|さがす}}、{{おくりがな3|捜|さが|し|求|もと|める|さがしもとめる}}。 #:{{syn|pt|procurar|pesquisar}} #…に向かっていく #*{{ux|pt|O rio busca o mar.|川は海に向かって流れる。}} ===={{conjugation}}==== {{pt-conj|bus|car}} ===={{rel}}==== * [[busca]] * [[buscador]] * [[busca-pé]] okgycxxhx0gpalc2hctubcac30vstj6 pegar 0 71041 2281373 1675855 2026-06-09T11:51:12Z Kuroco2k 84207 2281373 wikitext text/x-wiki =={{id}}== ==={{noun}}=== {{id-noun}} [[Category:{{id}}_走禽類]] #{{ふりがな|雉|きじ}}。 ---- =={{oc}}== ==={{etym}}=== {{etyl|lat|oci}} ''[[picare|picāre]]'' < ''[[pix]]'' ==={{verb}}=== {{oc-verb|peg|ar}} #(接着剤などで)[[くっつける]]。 ===={{syn}}==== * {{l|oc|empegar}} ---- =={{ca}}== ==={{etym}}=== {{etyl|lat|cat}} ''[[picare|picāre]]'' < ''[[pix]]'' ==={{pron}}=== * {{ca-IPA}} *{{homonym}}: {{l|ca|pagar}} ==={{verb}}=== {{ca-verb|ar|peg}} #(人を){{おくりがな2|殴|なぐ|る|なぐる}}。 #{{context|dialectal|lang=ca}}(何かで体を)殴る。{{おくりがな2|叩|たた|く|たたく}}。 #{{context|dialectal|lang=ca}} (''[[bot]]'', ''[[salt]]'' 等と共に用いて){{おくりがな2|跳|と|ぶ|とぶ}}。 #* ''Va '''pegar''' un bot'' #*: 彼は'''跳んだ'''。 #{{context|dialectal|lang=ca}}[[くっつける]]。 {{ca-conj-ar|peg}} ===={{syn}}==== * {{l|ca|agafar}}, {{l|ca|donar}}, {{l|ca|empènyer}}, {{l|ca|enganxar}}, {{l|ca|encolar}}, {{l|ca|fer}}, {{l|ca|saltar}}, {{l|ca|topar}}, {{l|ca|xocar}} ==={{rel}}=== * {{l|ca|pegar-se un toc a la barra}} ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[picare|picāre]]'' < ''[[pix]]'' ==={{verb}}=== {{es-verb|peg|ar|pret=pegué}} #{{context|intransitive+|lang=es}}[[くっつける]]。 #{{context|transitive+|lang=es}}{{おくりがな2|殴|なぐ|る|なぐる}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|apegar}} * {{l|es|apego}} * [[despegar]] * [[pega]] * [[pegamento]] * [[pegamiento]] * [[pegado]] * [[pegajoso]] * [[pegar ojo]] ---- =={{pt}}== ==={{etym}}=== {{etyl|lat|por}} ''[[picare|picāre]]'' < ''[[pix]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|pɨ.ˈɣaɾ}} * {{a|BR}} {{IPA|pe.ˈɡa(ʁ)}} ==={{verb}}=== {{pt-verb|peg|ar|past participle=pegado or pego}} #{{context|transitive+|lang=pt}}[[くっつける]]。[[つかむ|掴む]]。 #{{context|Brazil|transitive+|lang=pt}}(バス、タクシーなどに)[[のる|乗る]]。 #*{{lang|pt|Pegar o ônibus.}}: バスに乗る。 #[[かかる]]。作動する。 #*{{lang|pt|O motor não pega.}}: エンジンがかからない。 ===={{conjugation|por}}==== {{pt-conj|pe|gar}} ===={{syn}}==== * {{l|pt|agarrar}} * {{l|pt|colar}} *[2]: {{l|pt|apanhar}}, {{l|pt|tomar}} *[3]: [[funcionar]] ====成句==== *{{lang|pt|[[pegar no sono]]}}: [[ねむる|眠る]] *:{{lang|pt|A criança pegou no sono}}: 子供は眠った。 *{{lang|pt|[[pegar fogo]]}}: 火がつく ===={{drv}}==== *{{lang|pt|[[pegador]]}} qsxndn42jd26h6k56x5ibwv1bbooa28 家長 0 71187 2280871 2275969 2026-06-08T12:52:32Z M-30722 1202 2280871 wikitext text/x-wiki {{kana-DEFAULTSORT|かちょう}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|か|ちょう|yomi=o}} ==={{pron}}=== {{ja-pron|かちょう|acc=1}} {{ja-accent-common|region=京阪|a|か|ちょー}} ==={{noun}}=== {{ja-noun|[[かちょう]]}} #[[一家]]の[[長]]。 #*[[かれ|彼]]の[[すわる|坐っ]]て[[いる]]のは[[おもや|母屋]]の[[中央]]、'''家長'''のいる[[べし|べき]]{{ふりがな|正座|しょうざ}}である。([[w:中島敦|中島敦]]『南島譚』) ===={{syn}}==== *[[戸主]] ===={{drv}}==== *[[家長権]] ===={{trans}}==== *{{T|en}}: {{t|en|patriarch}} =={{L|zh}}== {{zh-cat|jia1zhang3|名詞}} {{yue-cat|ga1jeung2|名詞}} {{nan-cat|ka1tiunn2|名詞}} {{nan-tws-cat|ge1ziang2|名詞}} {{hak-cat|ka1chong3|名詞}} {{ltc-cat|kae1trjang2|名詞}} {{och-cat|kratang|名詞}} ==={{pron}}=== {{cmn-pron|jiāzhǎng}} {{yue-pron|gaa1 zoeng2}} {{nan-pron|xm,qz,twv:ka-tióng/zz:kee-tiáng/tw:ka-tiúⁿ/zz:kee-tióⁿ/twv:ke-tiúⁿ|t=gê1 ziang2/gê1 diên2}} {{hak-pron|kâ-chóng}} *{{ltc}}: kae trjangX *{{och}}: *:白一平-サガール: *kˤra traŋʔ *:鄭張: *kraː taŋʔ ==={{noun}}=== {{zhchars|s=家长}} #家長。 #[[保護者]]。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|가장}} #(日本語に同じ)家長。 =={{L|vi}}== ==={{noun}}=== {{vi-head|noun|gia|trưởng}} #(日本語に同じ)家長。 a6a8kp04gx7k2hf5q9ds5ewp75ofkzi 大夫 0 73053 2281148 1665897 2026-06-09T06:24:06Z Jiba1219 100610 2281148 wikitext text/x-wiki {{DEFAULTSORT:たいふ}} {{wikipedia}} =={{L|ja}}== [[category:{{ja}}]] ===={{noun}}==== [[category:{{ja}}_{{noun}}]] {{jachars}} # (たいふ){{context|historical|lang=ja}} [[中国]]の[[周]]代から[[春秋戦国時代]]にかけての身分を表す言葉で[[領地]]を持った[[貴族]]。[[卿]]の下、[[士]]の上に位し、しばしば、士とあわせ、代表的支配層として、[[士大夫]]と称される。 # (だいぶ){{context|historical|日本|lang=ja}} [[律令制]]における官職名。 ##「[[職]]」又は「[[坊]]」の長官職([[かみ]])。 ##[[太政官]]においては三位以上、[[寮]]においては四位以上、[[中国]]以下の[[国司]]においては五位以上の官吏の称とされた。 # (たいふ){{context|historical|日本|lang=ja}} 2.より、五位以上の官吏を指す通称。 # (たいふ)「[[家老]]」の異称。 # (たいふ)「[[まつ|松]]」の異称。 # (たいふ・たゆう) [[かんぬし|神主]]職のひとつ。 # (たゆう) [[能楽]]で[[シテ]]方[[いえもと|家元]]の称。 # (たゆう) [[文楽]]の[[浄瑠璃]]語り。 # (たゆう){{context|historical|lang=ja}} [[遊女]]の階層の最上位。 # (たゆう)[[万歳]]の謡い手。相方を[[才蔵]]という。 [[Category:日中で意味が大きく異なる漢語|たいふ]] =={{L|zh}}== [[Category:{{zh}}|dai4fu]] ==={{pron}}=== * {{IPA1| ta˥˩fu }} * {{IPA1| tai˥˩fu }} ** [[file:zh-dàifu.ogg]] **{{nan}}: {{IPA1| tai˨˩hu˥˥ }} ==={{noun}}=== [[Category:{{zh}}_{{noun}}|dai4fu1]] #(古語・廃語)(ピンイン:dàfū 注音:ㄉㄚˋ ㄈㄨ) [[周]]代から[[春秋戦国時代]]にかけての身分を表す言葉で[[領地]]を持った[[貴族]]。[[卿]]の下、[[士]]の上に位し、しばしば、士とあわせ、代表的支配層として、[[士大夫]]と称される。 #(ピンイン:dàifu 注音:ㄉㄞˋ ˙ㄈㄨ {{nan}}:POJ:tāi-hu)[[医者]](近年廃れてきた表現)。 ===={{syn}}==== * [[医生]] [[Category:HSKレベル4級|dai4fu]] [[Category:HSKレベル甲|dai4fu]] [[Category:{{nan}}|tai7hu1]] [[Category:{{nan}}_{{noun}}|tai7hu1]] lqjd76g6ap5st7o5tjtuwrbi2uzjbkm 下問 0 73250 2280882 1473892 2026-06-08T13:03:09Z M-30722 1202 2280882 wikitext text/x-wiki {{kana-DEFAULTSORT|かもん}} =={{L|ja}}== {{ja-kanjitab|か|もん|yomi=o}} ==={{pron}}=== {{ja-pron|かもん|acc=0}} {{ja-accent-common|region=京阪|h|かも|ん}} ==={{noun}}=== {{ja-noun-suru|[[かもん]]}} #[[めした|目下]]の[[もの|者]]に[[とう|問う]]こと。 #*[[下大夫]]の[[ひとり|一人]][[として]]{{ふりがな|朝|ちょう|yomilink=n}}に[[つらなる|つらなっ]]ていた[[ため]]に[[かれ|彼]]もまた'''下問'''を[[うける|受け]]た。([[w:中島敦|中島敦]]『李陵』) ===={{syn}}==== *[[下聞]] ==={{verb}}=== {{日本語サ変活用}} 8zql950jd5ddy6rh46lm66s6sqkg66n Botschafter 0 76072 2281336 1403426 2026-06-09T11:39:33Z M-30722 1202 2281336 wikitext text/x-wiki =={{L|de}}== ==={{pron}}=== *{{IPA|lang=de|ˈboːtʃaftɐ}} *{{音声|de|De-Botschafter.ogg}} ==={{etym}}=== *{{affix|de|Botschaft|-er}} ==={{noun}}=== {{de-noun|g=m||Botschafter}} #{{タグ|de|外交}}[[大使]]。 #*{{ux|de|Der ''Botschafter'' ist der [[persönlich]]e [[Repräsentant]] des [[Staatsoberhaupt]]es seiner [[Nation]].}} {{de-decl-noun|Botschafter|Botschafter|Botschafters|Botschafter|Botschafter|Botschaftern|Botschafter|Botschafter}} ===={{colloc}}==== {{top}} *1. der Botschaftler [[bereisen|bereist]] ein [[Land]] *1. der [[deutsch]]e Botschafter {{bottom}} [[カテゴリ:{{de}}_基本語彙1000]] nkrv2rgskxa7o8gzpznm3gdknw6in4f ひんこん 0 76165 2281103 360945 2026-06-09T02:23:00Z うーむ 129171 /* */ 2281103 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[稟懇]]】:懇請すること。 *【[[貧困]]】:貧しく苦労すること。 s854mhage7cmeyk97g0b5gt59ofchaw じんぞう 0 79969 2281003 2279085 2026-06-08T15:40:36Z M-30722 1202 2281003 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しんそう|しんぞう|じんそう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[腎臓]]】[[血液]]中の[[不要]]な[[物質]]を[[こす|濾し]]取り[[尿]]を[[つくりだす|作り出す]][[臓器]]。 *【[[人造]]】[[人間]]が[[つくる|造る]]こと。 lcuy43okohgkxoclg57mqi6tjz3xxjd 農耕 0 80070 2280999 2278977 2026-06-08T15:35:10Z M-30722 1202 2280999 wikitext text/x-wiki {{kana-DEFAULTSORT|のうこう}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|のう|こう|yomi=o}} ==={{noun}}=== {{ja-noun-suru|[[のうこう]]}} #{{タグ|ja|農業}}[[田畑]]を[[たがやす|耕して]][[農作物]]を[[つくる|作る]]こと。 #*生計を主宰している者が会社、官公庁等に勤務するなど他に主たる職業を有し、他方が家庭にあって'''農耕'''に従事している場合において、次に掲げる場合に該当するときは、その農業(中略)の事業主は、当該家庭にあって'''農耕'''に従事している者と推定する。([http://www.nta.go.jp/shiraberu/zeiho-kaishaku/tsutatsu/kihon/shotoku/03/01.htm 所得税基本通達12-3] 2010年12月2日閲覧) ===={{rel}}==== *[[農地]]、[[耕地]] ====={{syn}}===== *[[農業]] - 事業として行う農耕 *[[耕作]] ===={{trans}}==== *{{T|en}}: {{t|en|cultivation}} ==={{verb}}=== {{日本語サ変活用}} =={{L|zh}}== {{zh-cat|nong2geng1|動詞|名詞|文章語|農業}} {{yue-cat|nung4gaang1|動詞|名詞|農業}} {{nan-cat|long5keng1|動詞|名詞|農業}} {{nan-tws-cat|long5gen1|動詞|名詞|農業}} {{ltc-cat|nowng1keang1|動詞|名詞|農業}} {{och-cat|nungkreng|動詞|名詞|農業}} ==={{pron}}=== {{cmn-pron|nónggēng}} {{yue-pron|nung4 gaang1}} {{nan-pron|lông-keng|t=long5 gên1}} *{{ltc}}: nowng keang *{{och}}: *:白一平-サガール: *nˤ[o]ŋ kˤ<r>eŋ *:鄭張: *nuːŋ kreːŋ ==={{verb}}=== {{zhchars|s=农耕}} #[[たがやす|耕す]]。 ==={{noun}}=== {{zhchars|s=农耕}} #(文章語)[[農業]]。 ===={{syn}}==== *{{zh-l|本業}} *{{zh-l|農業}} =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|농경|cat2=農業}} #(日本語に同じ) 7sp18spsiegoe0ol8xu1rykjg69s34s تومور 0 82080 2281023 1416864 2026-06-08T16:44:00Z M-30722 1202 2281023 wikitext text/x-wiki =={{L|fa}}== ==={{etym}}=== *{{etyl|fr|fa}} {{m|fr|tumeur}} より。 ==={{noun}}=== {{fa-noun|tr=tumor|pl=تومورها}} #{{タグ|fa|腫瘍学}}[[腫瘍]]。 66tefbl37fzz3rr2pcwg82q0l05l79c 主流 0 82562 2280944 2278264 2026-06-08T14:05:32Z M-30722 1202 2280944 wikitext text/x-wiki {{kana-DEFAULTSORT|しゅりゅう}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|しゅ|りゅう|yomi=o}} ==={{pron}}=== {{ja-pron|しゅりゅう|acc=0}} {{ja-accent-common|region=京阪|h|しゅりゅ|ー}} ==={{noun}}=== {{ja-noun|[[しゅりゅう]]}} #{{タグ|ja|地形}}[[かわ|川]]などの[[おも|主]]な[[ながれ|流れ]]。 #:{{syn|ja|本流}} #:{{ant|ja|支流}} #[[思想]]や[[学問]]などの[[中心]]となる[[流派]]。 =={{L|zh}}== {{zh-cat|zhu3liu2|名詞|地形|hsk=丁|hsk2=6}} {{yue-cat|jyu2lau4|名詞|地形}} {{nan-cat|chu2liu5|名詞|地形}} {{nan-tws-cat|zu2liu5|名詞|地形}} {{cpx-cat|zy3liu2|名詞|地形}} ==={{pron}}=== {{cmn-pron|zhǔliú|a=Zh-zhuliú.ogg}} {{yue-pron|zyu2 lau4|a=LL-Q9186 (yue)-Luilui6666-主流.wav}} {{nan-pron|chú-liû|t=zu2 liu5}} {{cpx-pron|pt,xy:zy3 liu2}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)主流。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|주류|cat2=地形}} #(日本語に同じ)主流。 lyp1fdt1depensnjdc756uqxraale6r 普遍 0 83599 2281131 1476296 2026-06-09T05:57:29Z Jiba1219 100610 2281131 wikitext text/x-wiki =={{L|ja}}== ==={{pron}}=== {{ja-pron|ふへん|acc=0|acc_ref=DJR}} ==={{noun}}=== {{ja-noun-suru|[[ふへん]]}} #[[ひろい|広く]][[ゆきわたる|行き渡る]]こと。 #[[すべて|全て]]のものに[[共通]]していること。 ===={{ant}}==== *[[特殊]] ===={{rel}}==== *[[普遍化]] *[[普遍的]] ==={{verb}}=== {{日本語サ変活用}} ===脚注=== {{Reflist}} =={{L|zh}}== {{zh-cat|pu3bian4|adjective4|hsk=乙|hsk2=4}} {{yue-cat|pou2pin3|adjective}} {{nan-cat|phoo2phian3|adjective}} {{nan-tws-cat|pou2bing3|adjective}} {{hak-cat|phu1phien1|adjective}} {{wuu-cat|phu2pi3|adjective}} ==={{pron}}=== {{cmn-pron|pǔbiàn|a=Zh-pubiàn.ogg}} {{yue-pron|pou2 pin3|a=LL-Q9186-Luilui6666-普遍.wav}} {{nan-pron|qz,tw:phó͘-phiàn/xm,zz:phó͘-piàn|t=pou2 bing3}} {{hak-pron|phû-phiên|h=puˋ pienˇ}} {{wuu-pron|sh:5phu pi5}} ==={{adjective}}=== {{zhchars}} #[[普遍的]]な。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|보편}} #(日本語に同じ)普遍。 =={{L|vi}}== ==={{verb}}=== {{vi-head|verb|phổ|biến}} #[[普遍化]]する。 9rzbwiisiw3j673lh1ep6dkvu9ofrjo のうこう 0 83757 2280998 2039936 2026-06-08T15:31:37Z M-30722 1202 2280998 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[農工]]】[[農業]]と[[工業]]。 *【[[農功]]】[[農作業]]。 *【[[農耕]]】[[たがやす|耕す]]こと。 *【[[農高]]】[[農業高等学校]]の略。 *【[[濃香]]】[[濃厚]]な香り。 *【[[濃厚]]】[[こい|濃い]]こと。 0n4e5xud45ob468dp51moqsuvzkcx3x 保留 0 85707 2281302 1476813 2026-06-09T11:27:47Z Jiba1219 100610 2281302 wikitext text/x-wiki {{kana-DEFAULTSORT|ほりゅう}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|ほりゅう|acc=0|acc_ref=SMK7,DJR,NHK}} ==={{noun}}=== {{ja-noun-suru|[[ほりゅう]]}} #[[そのまま]]の[[状態]]で[[とどめる|留めて]]おくこと。 #[[そのば|その場]]で[[決定]]・[[発表]]せず[[のばす|延ばす]]こと。 ==={{verb}}=== {{日本語サ変活用}} ===脚注=== {{Reflist}} =={{L|zh}}== {{zh-cat|bao3liu2|verb|hsk=乙|hsk2=5}} {{yue-cat|bou2lau4|verb}} {{nan-cat|po2liu5|verb}} {{nan-tws-cat|bo2liu5|verb}} {{cpx-cat|bor3liu2|verb}} {{hak-cat|po3liu2|verb}} {{wuu-cat|pau2lieu1|verb}} ==={{pron}}=== {{cmn-pron|bǎoliú|a=Zh-baoliú.ogg}} {{yue-pron|bou2 lau4|a=LL-Q9186-Luilui6666-保留.wav}} {{nan-pron|pó-liû|t=bo2 liu5}} {{cpx-pron|pt,xy:bor3 liu2}} {{hak-pron|pó-liù|h=boˊ liu}} {{wuu-pron|sh:5pau lieu}} ==={{verb}}=== {{zhchars}} #(原形を){{おくりがな2|保|たも|つ|たもつ}}。 #[[留保]]する。 #{{おくりがな2|残|のこ|して|のこす}}おく。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|보류}} #(日本語に同じ)保留。 =={{L|vi}}== ==={{verb}}=== {{vi-head|verb|bảo|lưu}} #保留する。 ff9w40tbhmhumonf6iynln90baktjk0 打倒 0 88087 2281007 2278656 2026-06-08T15:51:46Z M-30722 1202 2281007 wikitext text/x-wiki {{kana-DEFAULTSORT|だとう}} =={{L|ja}}== {{ja-kanjitab|だ|とう|yomi=o}} ==={{pron}}=== {{ja-pron|だとう|acc=0}} {{ja-accent-common|region=京阪|h|だと|ー}} ==={{noun}}=== {{ja-noun-suru|[[だとう]]}} # [[あいて|相手]]を[[うちたおす|打ち倒す]]こと。 #* 旧弊の'''打倒''' / 奴隷制の'''打倒''' ===={{syn}}==== * [[撃破]] ===={{ant}}==== * [[樹立]] ==={{verb}}=== {{日本語サ変活用}} =={{L|zh}}== {{zh-cat|da3dao3|動詞|hsk=乙}} {{yue-cat|da2dou2|動詞}} {{nan-cat|tann2to2|動詞}} {{cpx-cat|da3dor3|動詞}} ==={{pron}}=== {{cmn-pron|dǎdǎo}} {{yue-pron|daa2 dou2}} {{nan-pron|táⁿ-tó}} {{cpx-pron|pt,xy:da3 *dor3}} ==={{verb}}=== {{zhchars}} #打倒する。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|타도}} #(日本語に同じ)打倒。 =={{L|vi}}== ==={{verb}}=== {{vi-head|verb|đả|đảo}} #打倒する。 bhtbf5iz2gzpnqgmr6lbnaeczfkhrqm だとう 0 88089 2281006 2222669 2026-06-08T15:48:45Z M-30722 1202 2281006 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たとう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[打倒]]】[[うちたおす|打ち倒す]]こと。 *【[[妥当]]】[[よい|良く]][[あてはまる|当て嵌まる]]こと。 sn6wlfxfgzzbqklmeshlz09vqgp8e3b 大胆 0 88125 2281114 1923178 2026-06-09T03:10:06Z 鍼灸 112313 2281114 wikitext text/x-wiki {{kana-DEFAULTSORT|だいたん}} =={{L|ja}}== {{ja-kanjitab|だい|たん|yomi=o}} ==={{pron}}=== {{ja-pron|だいたん|acc=3}} {{ja-accent-common|region=京阪|a|だいた|ん}} ==={{noun}}=== {{ja-noun|[[だいたん]]}} #[[度胸]]があって、物事を[[おそれる|恐れず]]に[[おもいきって|思い切って]]やってのけること。 ===={{rel}}==== *[[大胆不敵]] ==={{adjectivenoun}}=== [[Category:{{ja}}_{{adjectivenoun}}]] {{日本語ダ活用}} =={{L|zh}}== [[Category:{{zh}}|da4dan3]] ==={{adjective}}=== [[Category:{{zh}}_{{adjective}}|da4dan3]] [[Category:HSKレベル乙|da4dan3]] {{zhchars}} ({{zh-ts|'''[[大膽]]'''}} dàdǎn) #大胆な。 ils7gyngve8m5x6m3e4nxmdv6gdka3m たいだん 0 88173 2281110 2235772 2026-06-09T03:04:26Z 鍼灸 112313 2281110 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|だいたん|だいだん|タイタン}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[対談]]】[[ふたり|二人]]が[[むかいあう|向かい合って]][[はなしあう|話し合う]]こと。 *【[[退団]]】[[所属]]している[[団体]]を[[しりぞく|退く]]こと。 88qc7p45ysvq5dg3imxy1bgv00808c1 Botschafters 0 90832 2281337 1404536 2026-06-09T11:40:08Z M-30722 1202 2281337 wikitext text/x-wiki =={{L|de}}== ==={{pron}}=== *{{IPA|lang=de|ˈboːtʃaftɐs}} ==={{noun}}=== {{de-noun-form}} #{{l|de|Botschafter}}の単数属格。 r9r5o5v26i7qzv1vny9fn4jdtzl9wfh Botschaftern 0 90833 2281339 1404537 2026-06-09T11:40:30Z M-30722 1202 2281339 wikitext text/x-wiki =={{L|de}}== ==={{pron}}=== *{{IPA|lang=de|ˈboːtʃaftɐn}} ==={{noun}}=== {{de-noun-form}} #{{l|de|Botschafter}}の複数与格。 5wclchtndkgtw9t69v3h5ipnwm4lkc6 絮叨 0 100928 2280937 2278160 2026-06-08T13:58:19Z M-30722 1202 2280937 wikitext text/x-wiki {{kana-DEFAULTSORT|じょとう}} =={{L|ja}}== ==={{adjectivenoun}}=== {{ja-adjectival noun|[[じょとう]]}} #[[多弁]]なさま。 ==={{conjug}}=== {{日本語タルト活用}} =={{L|zh}}== {{zh-han|xu4dao|動詞|形容詞|hsk=丁}} {{yue-han|seui5dou1|動詞|形容詞}} {{nan-han|su3tho1|動詞|形容詞}} ==={{pron}}=== {{cmn-pron|xùdao|xùdāo}} {{yue-pron|seoi5 dou1}} {{nan-pron|qz:sìr-tho͘/xm:sù-tho/zz:sì-tho}} ==={{verb}}=== {{zhchars}} #[[くどくど]]{{おくりがな2|話|はな|す|はなす}}。 ==={{adjective}}=== {{zhchars}} #[[くどくどしい]]。 2vzyopswav8c1e6womj9084k8w5r612 2280938 2280937 2026-06-08T13:58:35Z M-30722 1202 /* {{L|zh}} */ 2280938 wikitext text/x-wiki {{kana-DEFAULTSORT|じょとう}} =={{L|ja}}== ==={{adjectivenoun}}=== {{ja-adjectival noun|[[じょとう]]}} #[[多弁]]なさま。 ==={{conjug}}=== {{日本語タルト活用}} =={{L|zh}}== {{zh-cat|xu4dao|動詞|形容詞|hsk=丁}} {{yue-cat|seui5dou1|動詞|形容詞}} {{nan-cat|su3tho1|動詞|形容詞}} ==={{pron}}=== {{cmn-pron|xùdao|xùdāo}} {{yue-pron|seoi5 dou1}} {{nan-pron|qz:sìr-tho͘/xm:sù-tho/zz:sì-tho}} ==={{verb}}=== {{zhchars}} #[[くどくど]]{{おくりがな2|話|はな|す|はなす}}。 ==={{adjective}}=== {{zhchars}} #[[くどくどしい]]。 dg7ytvdxtpygwiwahm8k6oudi7iwo0n かんせい 0 106093 2281086 2128986 2026-06-09T01:25:13Z うーむ 129171 /* */ 2281086 wikitext text/x-wiki {{also|かんぜい|がんせい}} =={{L|ja}}== ==={{homonym}}=== {{ja-homonym}} *【[[官製]]】[[政府]]がつくること。または、政府がつくったもの。 *【[[陥穽]]】①[[おとしあな|落とし穴]]。②人を[[おとしいれる|陥れる]][[計略]]。 *【[[乾性]]】①[[乾燥]]するのが[[はやい|速い]][[性質]]。②[[水分]]量が[[すくない|少ない]]性質。 *【[[喚声]]】[[おどろく|驚いたり]][[興奮]]したときに[[だす|出す]][[さけびごえ|叫び声]]。 *【[[歓声]]】[[よろこぶ|喜んで]][[発する]][[おおごえ|大声]]。 *【[[感性]]】①[[外界]]からの[[刺激]]に対する[[感受性]]。②外界からの刺激に対する[[こころ|心]]の[[はたらき]]。 *【[[慣性]]】[[物体]]が[[外力]]を[[うける|受けない]]限りもとの[[運動]][[状態]]を[[たもつ|保とう]]とする[[性質]]。 *【[[完成]]】[[目標]]や[[希望]]の[[とおり]]に、あるいは[[機能]]を果たせる[[水準]]まで、[[完全]]に[[できあがる|出来上がる]]こと。 *【[[管制]]】①何かを[[集中]]的に[[管理]]、[[制限]]すること。②[[航空機]]の[[安全]]かつ[[円滑]]な[[運航]]を行うために、主に[[地上]]から航空交通の[[指示]]や[[情報]]を航空機に与える業務。 *【[[閑静]]】[[しずか|静か]]で[[ひっそり]]としているさま。 *【[[甘井]]】[[おいしい]][[みず|水]]がでる[[いど|井戸]]。 *【[[甘精]]】[[サッカリン]]。 *【[[汗青]]】[[記録]]。[[史書]]。[[汗簡]]。 *【[[喊声]]】大声を[[はりあげる|張り上げる]]こと。 *【[[間性]]】[[生物]]の[[個体]]が示す[[雌雄]]の[[中間]]的な[[性質]]。 *【[[寒声]]】①[[さむざむ|寒々]]とした[[こえ|声]]。②[[冷水]]の[[おと|音]]。③[[寒風]]が吹く音。 *【[[感声]]】[[感嘆]]して出す声。 *【[[寛政]]】[[日本]]の[[元号]]の一つ。 *【[[箝制]]】[[自由]]を[[うばう|奪う]]こと。 *【[[澗声]]】[[たにがわ|谷川]]の水が流れる音。 *【[[監生]]】かつての[[中国]]における[[大学生]]の呼称。 *【[[監製]]】[[監督]]して作らせること。 *【[[諫制]]】[[いさめる|諌め]][[とどめる|止める]]こと。 *【[[鼾声]]】[[いびき]]。 *【[[檻穽]]】[[おり|檻]]と[[おとしあな|落とし穴]]。 lsgl560bfa9hhjd9ghfebpkyywhisuf 2281318 2281086 2026-06-09T11:36:28Z M-30722 1202 2281318 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かんぜい|がんせい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[官製]]】[[政府]]がつくること。または、政府がつくったもの。 *【[[陥穽]]】①[[おとしあな|落とし穴]]。②人を[[おとしいれる|陥れる]][[計略]]。 *【[[乾性]]】①[[乾燥]]するのが[[はやい|速い]][[性質]]。②[[水分]]量が[[すくない|少ない]]性質。 *【[[喚声]]】[[おどろく|驚いたり]][[興奮]]したときに[[だす|出す]][[さけびごえ|叫び声]]。 *【[[歓声]]】[[よろこぶ|喜んで]][[発する]][[おおごえ|大声]]。 *【[[感性]]】①[[外界]]からの[[刺激]]に対する[[感受性]]。②外界からの刺激に対する[[こころ|心]]の[[はたらき]]。 *【[[慣性]]】[[物体]]が[[外力]]を[[うける|受けない]]限りもとの[[運動]][[状態]]を[[たもつ|保とう]]とする[[性質]]。 *【[[完成]]】[[目標]]や[[希望]]の[[とおり]]に、あるいは[[機能]]を果たせる[[水準]]まで、[[完全]]に[[できあがる|出来上がる]]こと。 *【[[管制]]】①何かを[[集中]]的に[[管理]]、[[制限]]すること。②[[航空機]]の[[安全]]かつ[[円滑]]な[[運航]]を行うために、主に[[地上]]から航空交通の[[指示]]や[[情報]]を航空機に与える業務。 *【[[閑静]]】[[しずか|静か]]で[[ひっそり]]としているさま。 *【[[甘井]]】[[おいしい]][[みず|水]]がでる[[いど|井戸]]。 *【[[甘精]]】[[サッカリン]]。 *【[[汗青]]】[[記録]]。[[史書]]。[[汗簡]]。 *【[[喊声]]】大声を[[はりあげる|張り上げる]]こと。 *【[[間性]]】[[生物]]の[[個体]]が示す[[雌雄]]の[[中間]]的な[[性質]]。 *【[[寒声]]】①[[さむざむ|寒々]]とした[[こえ|声]]。②[[冷水]]の[[おと|音]]。③[[寒風]]が吹く音。 *【[[感声]]】[[感嘆]]して出す声。 *【[[寛政]]】[[日本]]の[[元号]]の一つ。 *【[[箝制]]】[[自由]]を[[うばう|奪う]]こと。 *【[[澗声]]】[[たにがわ|谷川]]の水が流れる音。 *【[[監生]]】かつての[[中国]]における[[大学生]]の呼称。 *【[[監製]]】[[監督]]して作らせること。 *【[[諫制]]】[[いさめる|諌め]][[とどめる|止める]]こと。 *【[[鼾声]]】[[いびき]]。 *【[[檻穽]]】[[おり|檻]]と[[おとしあな|落とし穴]]。 ffsug08tgtwa650v3uqr6ib68z2f08h 特長 0 112553 2280914 2278008 2026-06-08T13:36:30Z M-30722 1202 2280914 wikitext text/x-wiki {{kana-DEFAULTSORT|とくちょう}} =={{L|ja}}== {{ja-kanjitab|とく|ちょう|yomi=o}} ==={{pron}}=== {{ja-pron|とくちょう|acc=0}} {{ja-accent-common|region=京阪|h||とくちょー}} ==={{noun}}=== {{ja-noun|[[とくちょう]]}} #[[特別]]の[[長所]]。 ===={{syn}}==== * [[特色]] * [[特徴]] =={{L|zh}}== {{zh-cat|te4chang2|名詞}} {{yue-cat|dak6cheung4|名詞}} {{nan-cat|tek8tiong2|名詞}} ==={{pron}}=== {{cmn-pron|tècháng}} {{yue-pron|dak6 coeng4}} {{nan-pron|qz:tia̍k-tióng/tw,xm:te̍k-tióng/zz:te̍k-tiáng|t=dêg8 ciang5}} ==={{noun}}=== {{zhchars|s=特长}} #(日本語に同じ)特長。 s8jq3vkju3m7yx8yunstq1c8aoob0ex 神像 0 113337 2281000 2278668 2026-06-08T15:38:56Z M-30722 1202 2281000 wikitext text/x-wiki {{kana-DEFAULTSORT|しんぞう}} =={{L|ja}}== {{ja-kanjitab|しん|ぞう|yomi=o}} ==={{pron}}=== {{ja-pron|しんぞう|acc=0}} {{ja-accent-common|region=京阪|h||しんぞー}} ==={{noun}}=== {{ja-noun|[[しんぞう]]}} #{{タグ|ja|美術}}[[かみ|神]]の[[すがた|姿]]を[[彫刻]]や[[絵画]]に[[あらわす|表した]]もの。 =={{L|zh}}== {{zh-cat|shen2xiang4|名詞}} {{yue-cat|san1jeung6|名詞}} {{nan-cat|sin5siong7|名詞}} {{hak-cat|siin2siong4|名詞}} {{wuu-cat|zen3zhian2|名詞}} ==={{pron}}=== {{cmn-pron|shénxiàng}} {{yue-pron|san4 zoeng6}} {{nan-pron|xm,tp,kh:sîn-siōng/zz:sîn-siāng/qz:sîn-siǒng}} {{hak-pron|sṳ̀n-siong|h=shin siongˇ}} {{wuu-pron|sh:6zen zhian}} ==={{noun}}=== {{zhchars}} #[[神仏]]の[[像]]。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|신상|cat2=美術}} #(日本語に同じ)神像。 =={{L|vi}}== ==={{noun}}=== {{vi-head|noun|thần|tượng}} #[[像]]。 #[[偶像]]、[[アイドル]]。 ag2gdt7euafbbdty5pbjchrmu5kyf1q tumor suppressor 0 113635 2280955 1589202 2026-06-08T14:25:42Z M-30722 1202 2280955 wikitext text/x-wiki {{DEFAULTSORT:tumorsuppressor}} =={{L|en}}== ==={{alter}}=== * {{l|en|tumour suppressor}} (英国) ==={{noun}}=== {{head|en|noun}} #{{タグ|en|腫瘍学}} [[がん抑制因子]]、[[腫瘍抑制因子]]。その機能が失われることで、[[発がん]]の原因となる因子。代表例としてp53など。 ===={{drv}}==== *tumor suppressor gene: tumor suppressor を[[コード]]する[[遺伝子]]。 *tumor suppressor protein: tumor suppressor として機能する[[タンパク質]]。 ===={{rel}}==== *[[oncogene]] hvogcvq18czg2engu88dioksu8g4759 慣用 0 115376 2280905 2277153 2026-06-08T13:24:41Z M-30722 1202 2280905 wikitext text/x-wiki {{kana-DEFAULTSORT|かんよう}} =={{L|ja}}== {{ja-kanjitab|かん|よう|yomi=o}} ==={{pron}}=== {{ja-pron|かんよう|acc=0}} {{ja-accent-common|region=京阪|h||かんよー}} ==={{noun}}=== {{ja-noun-suru|[[かんよう]]}} #[[ひろい|広く]][[一般]]に[[もちいる|用い]]られること。 ===={{rel}}==== *[[慣用句]] ==={{verb}}=== {{日本語サ変活用}} =={{L|zh}}== {{zh-cat|guan4yong4|動詞}} {{yue-cat|gwaan3yung6|動詞}} {{nan-cat|koan3eng7|動詞}} ==={{pron}}=== {{cmn-pron|guànyòng}} {{yue-pron|gwaan3 jung6}} {{nan-pron|tw:koàn-ēng/tw:koàn-iōng}} ==={{verb}}=== {{zhchars|s=惯用}} #[[常用]]する。 ===={{rel}}==== *[[慣用語]] =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|관용}} #(日本語に同じ)慣用。 sp7ltw4m7tre0ab48u1y0e8t7suzzw6 勧説 0 115636 2281077 2206713 2026-06-09T01:20:14Z うーむ 129171 /* 名詞 */ 2281077 wikitext text/x-wiki {{kana-DEFAULTSORT|かんせつ}} {{also|劝说|勸說}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|かんせつ|acc=0}} {{ja-pron|かんぜい|acc=0}} ==={{noun}}=== {{ja-noun-suru|[[かんせつ]]|[[かんぜい]]}} #[[とく|説い]]て[[すすめる|勧める]]こと ==={{verb}}=== {{日本語サ変活用}} qmollig61frpqn47acat4xsy513ku6j 2281078 2281077 2026-06-09T01:20:33Z うーむ 129171 /* 名詞 */ 2281078 wikitext text/x-wiki {{kana-DEFAULTSORT|かんせつ}} {{also|劝说|勸說}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|かんせつ|acc=0}} {{ja-pron|かんぜい|acc=0}} ==={{noun}}=== {{ja-noun-suru|[[かんせつ]]|[[かんぜい]]}} #[[とく|説い]]て[[すすめる|勧める]]こと。 ==={{verb}}=== {{日本語サ変活用}} sxohq62j4rh6o8qh0vrgqy2uo155o44 nacer 0 115806 2281315 1869133 2026-06-09T11:33:25Z Kuroco2k 84207 2281315 wikitext text/x-wiki {{also|ñacer|naçer}} =={{L|ast}}== ==={{alter}}=== * [[ñacer]] ==={{etym}}=== {{etyl|VL.|ast}} {{m|la|*nascere}} < {{etyl|la|ast}} {{m|la|nāscī}} ==={{verb}}=== {{ast-verb}} #{{おくりがな2|生|う|まれる|うまれる}}。 ===={{seealso}}==== * {{l|ast|parir}} ---- =={{L|gl}}== ==={{alter}}=== *{{l|gl|nascer}} ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|nacer}}, {{m|roa-opt|nascer}} < {{etyl|VL.|gl}} {{m|la|*nascere}} < {{etyl|la|gl}} {{m|la|nāscī}} ==={{pron}}=== * {{IPA|lang=gl|[naˈθeɾ]|[naˈseɾ]}} ==={{verb}}=== {{head|gl|verb}} #{{おくりがな2|生|う|まれる|うまれる}}。 #nacerの接続法未来第一・三人称単数形。 #nacerの人称不定詞第一・三人称単数形。 {{gl-conj-cer|na}} ===={{seealso}}==== * {{l|gl|parir}} ---- =={{L|roa-opt}}== ==={{alter}}=== * {{l|roa-opt|naçer}}, {{l|roa-opt|nascer}} ==={{etym}}=== {{etyl|VL.|roa-opt}} {{m|la|*nascere}} < {{etyl|la|roa-opt}} {{m|la|nāscī}} < {{etyl|ine-pro|roa-opt}} {{m|ine-pro|*ǵenh₁-}} ==={{pron}}=== * {{IPA|lang=roa-opt|naˈt͡seɾ}} ==={{verb}}=== {{head|roa-opt|verb}} #{{おくりがな2|生|う|まれる|うまれる}}。 ===={{rel}}==== * {{l|roa-opt|irmão}} * {{l|roa-opt|nacença}} * {{l|roa-opt|nada}} * {{l|roa-opt|nado}} * {{l|roa-opt|Natal}} * {{l|roa-opt|natura}} * {{l|roa-opt|natural}} * {{l|roa-opt|natureza}} ===={{desc}}==== * {{desc|gl|nacer}} * {{desc|pt|nascer}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} < {{etyl|VL.|es}} {{m|la|*nascĕre}} < {{etyl|la|es}} {{m|la|nāscī}} < {{etyl|ine-pro|es}} {{m|ine-pro|*ǵenh₁-}} ==={{pron}}=== * {{IPA|lang=es|na.ˈθeɾ}} (''スペイン'') * {{IPA|na.ˈseɾ}} (''ラテンアメリカ'') ==={{verb}}=== {{es-verb|nac|er|pres=nazco|part=nacido}} #{{おくりがな2|生|う|まれる|うまれる}} ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|nacer con estrella}} * {{l|es|nacedero}} * {{l|es|no nací ayer}} ===={{rel}}==== {{top}} * {{l|es|naciente}} * {{l|es|nacimiento}} * {{l|es|nación}} * {{l|es|natal}} * {{l|es|nativo}} * {{l|es|natural}} * {{l|es|naturaleza}} * {{l|es|renacimiento}} * {{l|es|natura}} * {{l|es|nato}} * {{l|es|nonato}} * {{l|es|navidad}} * {{l|es|natalidad}} * {{l|es|natalicio}} * {{l|es|neonatal}} * {{l|es|neonatología}} * {{l|es|neonato}} * {{l|es|prenatal}} * {{l|es|innato}} * {{l|es|antenatal}} * {{l|es|postnatal}} * {{l|es|naíf}} * {{l|es|mortinato}} * {{l|es|cognado}} * {{l|es|preternatural}} {{bottom}} ===={{desc}}==== * {{desc|cbk|nace}} ===={{seealso}}==== * {{l|es|dar a luz}} * {{l|es|parir}} ==={{anag}}=== * {{anagrams|es|cenar|crean}} fjgn7yjd8ggjxlylsqvs67xqt8v1ena 現代 0 120428 2281151 2170463 2026-06-09T06:30:22Z Jiba1219 100610 2281151 wikitext text/x-wiki {{kana-DEFAULTSORT|げんだい}} =={{L|ja}}== {{wikipedia}} {{ja-kanjitab|げん|だい|yomi=o}} ==={{pron}}=== {{ja-pron|げんだい|acc=1|acc_ref=NHK,DJR}} {{ja-accent-common|region=京阪|a|げ|んだい}} ==={{noun}}・{{adverb}}=== {{ja-noun|[[げんだい]]}} [[category:{{ja}}_{{adverb}}]] #[[時間]]に関する[[認識]]で、[[現在]]を含む[[時代]]。 #{{タグ|ja|歴史}}[[歴史]]の時代[[区分]]で、現在を含む時代。 ===={{syn}}==== *{{ふりがな|今日|こんにち|yomilink=n}} ===={{drv}}==== *[[現代的]] *[[現代っ子]] ===={{rel}}==== 語義2 *[[古代]]、[[中世]]、[[近世]]、[[近代]] ===={{trans}}==== *{{T|en}}: [[present]] [[day]], [[present-day]], [[modern]] [[time]]s, [[today]] ===脚注=== {{Reflist}} =={{L|zh}}== ==={{pron}}=== {{cmn-pron|xiàndài|a=zh-xiàndài.ogg|dg=щян3дэ3}} {{yue-pron|jin6 doi6|t=yen5 oi5}} {{nan-pron|hiān-tāi|t=hing7 do7/hêng7 do7}} {{hak-pron|hien-thoi|h=hien˖ toi˖}} {{wuu-pron|sh:6yi de}} ==={{noun}}=== {{zhchars|s=现代}} #(日本語に同じ)[[現在]]を含む[[時代]]。 ==={{adjective}}=== {{zhchars|s=现代}} # 現代の、[[現代的]]な。 {{zh-cat|xian4dai4|noun|adjective|歴史}} {{dng-cat|щяндэ|noun|adjective|歴史}} {{yue-cat|yin6doi6|noun|adjective|歴史}} {{nan-cat|hian7tai7|noun|adjective|歴史}} {{nan-tws-cat|hing7do7|noun|adjective|歴史}} {{hak-cat|hien4thoi4|noun|adjective|歴史}} {{wuu-cat|yi3de3|noun|adjective|歴史}} =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|현대|cat2=歴史}} #(日本語に同じ)現代。 =={{L|vi}}== ==={{adjective}}=== {{vi-head|adjective|hiện|đại}} #現代の。 4ymuxjmpv5vdi489ova6i99c6sp2m2g 用例 0 120545 2280939 2278166 2026-06-08T14:00:02Z M-30722 1202 2280939 wikitext text/x-wiki {{kana-DEFAULTSORT|ようれい}} {{WiktionaryPage|ウィクショナリーにおける用例の提示については、[[Wiktionary:用例]]をご覧ください。}} =={{L|ja}}== {{ja-kanjitab|よう|れい|yomi=o}} ==={{pron}}=== {{ja-pron|ようれい|acc=0}} {{ja-accent-common|region=京阪|h||よーれー}} ==={{noun}}=== {{ja-noun|[[ようれい]]}} # [[もちいる|用いら]]れた例、用いる例。特に[[語句]]や[[言語]][[表現]]についていう。 #* [[必要]]に[[応じる|応じ]]てその[[語]]の[[出所]]、又は'''用例'''などの[[証拠]]を[[あげる|挙げる]]事は[[著者]]の[[責任]]を重くするための事で(…) ([[w:山田美妙|山田美妙]]『日本大辞書』)〔1892年〕 #* [[乗法]][[公式]]'''用例''' (後藤嘉之、美島近一郎『代数学表解』)〔1905年〕 #* 「[[ただ|直]]に」は、[[うつしみ|現身]]と現身と[[直接]]に会うことで、それゆえ[[万葉]]に'''用例'''が[[なかなか]]多い。 ([[w:斎藤茂吉|斎藤茂吉]]『万葉秀歌』)〔1938年〕 #* [[w:近松門左衛門|近松]]の[[語彙]]にあっては、「[[きづかひ|気遣]]」は、その数に[[おいて|於て]]、'''用例'''二七一と云う[[あまりにも|余りにも]][[文献]]的に[[爆発的]]となって来るのである。 ([[w:中井正一|中井正一]]『言語は生きている』)〔1950年〕 #* (…)[[基本]][[法]]の中で「[[可能]]な[[かぎり|限り]]」という[[ことば|言葉]]を使っている'''用例'''で[[ございます]]けれども、[[たった]]三つしかございません。 ([[w:小西洋之|小西洋之]]、 第180回国会 予算委員会 第8号)〔2012年〕 ===={{rel}}==== * [[例文]] * [[例句]] * [[文例]] * [[作例]] * [[引用]] ===={{trans}}==== *{{T|en}}: {{t|en|quotation}} *{{T|zh}}: {{t|zh|例句}} hdrdbkinpe7h87xigb1k11tapjliqjh 腫瘤 0 120587 2280947 1480549 2026-06-08T14:07:38Z M-30722 1202 2280947 wikitext text/x-wiki {{kana-DEFAULTSORT|しゅりゅう}} =={{L|ja}}== {{ja-kanjitab|しゅ|りゅう|yomi=o}} ==={{pron}}=== {{ja-pron|しゅりゅう|acc=0}} {{ja-accent-common|region=京阪|h|しゅりゅ|ー}} ==={{noun}}=== {{ja-noun|[[しゅりゅう]]}} #{{タグ|ja|腫瘍学}}動物の[[からだ|体]]の[[内部]]や[[表面]]にできる[[病変]]性の[[組織]]の盛り上がり。 #* [[図中]][[ひだりて|左り手]]に見える'''腫瘤'''は「[[ポリープ]]」状の癌[[腫瘍]]、この'''腫瘤'''の上半部に[[一寸]]隠れて暗く見える[[個所]]は[[幽門]]輪である。(桐原真一『胃鏡診断法』170ページ)〔1943年〕 #* 例えば、[[乳腺]]の中に[[超音波]]画像で[[どうも]]'''腫瘤'''のようなものがあった場合、これが[[がん]]であるかないかと[[診断]]するときには、[[おさえる|押さえ]]てどれぐらい[[かたち|形]]が変わるかというのをやるんです。([[w:足立信也|足立信也]]、参議院会議録情報 第162回国会 厚生労働委員会 第16号)〔2005年〕 ===={{rel}}==== * [[腫瘍]] * [[肉腫]] * [[癌]] ===={{trans}}==== * {{t|en|tumour}} =={{L|zh}}== {{wikipedia|lang=zh}} {{zh-cat|zhong3liu2|名詞|腫瘍学}} ==={{pron}}=== {{cmn-pron|zhǒngliú}} ==={{noun}}=== {{zhchars|s=肿瘤}} #[[腫瘍]]。 ghu68m5hkoaufk0960zxy8s4hc9zrpz 2280948 2280947 2026-06-08T14:08:13Z M-30722 1202 2280948 wikitext text/x-wiki {{kana-DEFAULTSORT|しゅりゅう}} =={{L|ja}}== {{ja-kanjitab|しゅ|りゅう|yomi=o}} ==={{pron}}=== {{ja-pron|しゅりゅう|acc=0}} {{ja-accent-common|region=京阪|h|しゅりゅ|ー}} ==={{noun}}=== {{ja-noun|[[しゅりゅう]]}} #{{タグ|ja|腫瘍学}}動物の[[からだ|体]]の[[内部]]や[[表面]]にできる[[病変]]性の[[組織]]の盛り上がり。 #* [[図中]][[ひだりて|左り手]]に見える'''腫瘤'''は「[[ポリープ]]」状の癌[[腫瘍]]、この'''腫瘤'''の上半部に[[一寸]]隠れて暗く見える[[個所]]は[[幽門]]輪である。(桐原真一『胃鏡診断法』170ページ)〔1943年〕 #* 例えば、[[乳腺]]の中に[[超音波]]画像で[[どうも]]'''腫瘤'''のようなものがあった場合、これが[[がん]]であるかないかと[[診断]]するときには、[[おさえる|押さえ]]てどれぐらい[[かたち|形]]が変わるかというのをやるんです。([[w:足立信也|足立信也]]、参議院会議録情報 第162回国会 厚生労働委員会 第16号)〔2005年〕 ===={{rel}}==== * [[腫瘍]] * [[肉腫]] * [[癌]] ===={{trans}}==== {{trans-see|腫瘍}} =={{L|zh}}== {{wikipedia|lang=zh}} {{zh-cat|zhong3liu2|名詞|腫瘍学}} ==={{pron}}=== {{cmn-pron|zhǒngliú}} ==={{noun}}=== {{zhchars|s=肿瘤}} #[[腫瘍]]。 5a3vdceg78cfx86ym6vzee7tpvw8t7j competir 0 121501 2281267 1697309 2026-06-09T11:12:44Z Kuroco2k 84207 2281267 wikitext text/x-wiki =={{ast}}== ==={{etym}}=== {{bor|ast|la|competere}} ==={{verb}}=== {{head|ast|verb}} #[[競争]]する。 ===={{rel}}==== * {{l|ast|competición}} * {{l|ast|competente}} * {{l|ast|pedir}} ---- =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|competere}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Unjoanqualsevol-competir.wav|音声}} * {{rhymes|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|ir|compet}} #[[競争]]する。 {{ca-conj-ir|compet}} ===={{rel}}==== * {{l|ca|competició}} * {{l|ca|competitiu}} ---- =={{L|gl}}== ==={{etym}}=== {{bor|gl|la|competere}} ==={{verb}}=== {{gl-verb|compet|ir|pres=compito}} #[[競争]]する。 {{gl-conj (pedir)|compet|compit}} ===={{syn}}==== * {{l|gl|rivalizar}} ===={{rel}}==== * {{l|gl|competencia}} * {{l|gl|competente}} * {{l|gl|competición}} * {{l|gl|competidor}} * {{l|gl|competitivo}} * {{l|gl|pedir}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|competere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb|compet|ir|pres=compito}} #[[競争]]する。 ===={{conjug}}==== {{es-conj|<i>}} ===={{rel}}==== * {{l|es|competición}} * {{l|es|competencia}} * {{l|es|competente}} * {{l|es|competitivo}} * {{l|es|pedir}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|competere}}. ==={{pron}}=== * {{a|Brazil}} {{IPA|lang=pt|kõ.pe.ˈtʃi(ʁ)}} * {{a|South Brazil}} {{IPA|ˌkõ.pe.ˈt͡ʃi(ɻ)}} * {{a|PT}} {{IPA|kõ.pɨ.ˈtiɾ}} ==={{verb}}=== {{pt-verb|comp|etir}} #[[競争]]する。 {{pt-conj|comp|etir}} ===={{syn}}==== * {{l|pt|rivalizar}} ===={{rel}}==== * {{l|pt|competência}} * {{l|pt|competente}} * {{l|pt|competição}} * {{l|pt|competidor}} * {{l|pt|pedir}} iq9fxxhew5frnwxxnt905i3b46flcm8 educar 0 121797 2281295 2239538 2026-06-09T11:23:40Z Kuroco2k 84207 2281295 wikitext text/x-wiki =={{ca}}== [[Category:{{ca}}]] ==={{etym}}=== {{etyl|lat|cat}} ''[[educare|educāre]]'' ==={{verb}}=== {{head|cat|verb}} #[[教育]]する {{ca-conj-ar|educ}} ===={{drv}}==== * [[educat]] ---- =={{gl}}== [[Category:{{gl}}]] ==={{etym}}=== {{etyl|la|gl}} ''[[educare|educāre]]'' ==={{verb}}=== {{head|gl|verb}} #[[教育]]する #educarの接続法未来第一・三人称単数形 #educarの人称不定詞第一・三人称単数形 {{gl-conj-car|educ|eduqu}} ---- =={{ie}}== ==={{verb}}=== {{head|ie|verb}} #[[教育]]する ---- =={{la}}== ==={{verb}}=== {{la-verb-form|ēdūcar}} #[[educere|ēdūcere]]の直説法受動態未来第一人称単数形 #ēdūcereの接続法受動態現在第一人称単数形 ---- =={{pt}}== [[Category:{{pt}}]] ==={{etym}}=== {{etyl|lat|por}} ''[[educare|educāre]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|i.ðu.ˈkaɾ}} * {{hyphenation|e|du|car}} ==={{verb}}=== {{head|por|verb}} #[[教育]]する ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[educare|educāre]]'' ==={{verb}}=== {{es-verb|educ|ar|pret=eduqué}} #[[教育]]する ===={{conjug}}==== {{es-conj}} c81ld061fcyyogoetdshmifiprk16st soltar 0 122323 2281347 2239624 2026-06-09T11:43:24Z Kuroco2k 84207 2281347 wikitext text/x-wiki =={{pt}}== ==={{etym}}=== ''[[solto]]'' + ''[[-ar]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|soɫˈtaɾ}} * {{hyphenation|sol|tar}} ==={{verb}}=== {{head|por|verb}} #[[解放]]する #{{おくりがな2|解|ほど|く|ほどく}} {{pt-conj|solt|ar}} ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== ''[[suelto]]'' ==={{verb}}=== {{es-verb|solt|ar|pres=suelto}} #[[解放]]する #{{おくりがな2|解|ほど|く|ほどく}} ===={{conjug}}==== {{es-conj|<ue>}} ===={{rel}}==== * [[soltero]] * [[soltura]] * [[soltadizo]] * soltar un [[pedo]] * [[suelto]] bahhlpx9ma8vl7q8wp4u7i6mzcfdbc8 テンプレート:es-conj 10 122325 2281199 2220043 2026-06-09T10:40:07Z Kuroco2k 84207 暫くエラーが出まくると思うが、なるべく早くの修正を心がける 2281199 wikitext text/x-wiki <includeonly>{{#invoke:es-verb|show}}</includeonly><!-- --><noinclude>{{es-conj|brutalizar}}{{documentation}}</noinclude> lbo429bqrdd0cbaj5e6m39v18m25r0c fluir 0 122446 2281308 1958584 2026-06-09T11:30:31Z Kuroco2k 84207 2281308 wikitext text/x-wiki =={{L|io}}== ==={{verb}}=== {{head|io|verb form}} #[[fluar]]の不定過去形。 ---- =={{L|sco}}== ==={{pron}}=== *{{IPA|lang=sco|flør}} ==={{noun}}=== {{sco-noun}} #{{alternative form of|sco|flair}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} ''[[fluere]]'' ==={{verb}}=== {{es-verb|flu|ir|pres=fluyo}} #{{おくりがな2|流|なが|れる|ながれる}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[fluencia]] * [[fluido]] * [[flujo]] ---- =={{L|pt}}== ==={{verb}}=== {{head|pt|verb}} #{{おくりがな2|流|なが|れる|ながれる}}。 #{{おくりがな2|注|そそ|ぐ|そそぐ}}。 {{pt-conj|fl|uir}} lqeffrytk57usct1j2vh4manc2ix4by preferir 0 122638 2281369 2239731 2026-06-09T11:51:10Z Kuroco2k 84207 2281369 wikitext text/x-wiki =={{ca}}== ==={{verb}}=== {{head|cat|verb}} #~の方を{{おくりがな2|好|この|む|このむ}} {{ca-conj-ir|prefer}} ---- =={{pt}}== ==={{verb}}=== {{head|por|verb}} #~の方を{{おくりがな2|好|この|む|このむ}} {{pt-conj|pref|erir}} ===={{rel}}==== * [[preferência]] * [[preferível]] ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|prefer|ir|pres=prefiero}} #~の方を{{おくりがな2|好|この|む|このむ}} ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{rel}}==== * [[preferencia]] * [[preferible]] * [[preferente]] 0pvglwd0ue8v6i05qg04rzl44ceq150 pensar 0 122877 2281372 2239827 2026-06-09T11:51:11Z Kuroco2k 84207 2281372 wikitext text/x-wiki =={{ast}}== [[Category:{{ast}}]] ==={{etym}}=== {{etyl|lat|ast}} ''[[pensare|pēnsāre]]'' ==={{verb}}=== {{head|ast|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} {{ast-conj-ar|pens}} ===={{drv}}==== * [[pensamientu]] =={{ca}}== [[Category:{{ca}}]] ==={{etym}}=== {{etyl|lat|cat}} ''[[pensare|pēnsāre]]'' ==={{pron}}=== * {{a|Standard}} {{IPA|pən'sa}}, {{X-SAMPA|p@n"sa}} * {{a|Valencian}} {{IPA|pen'saɾ}}, {{X-SAMPA|pen"sa4}} * {{rhymes|a(ɾ)|lang=ca}} ==={{verb}}=== {{head|cat|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} #{{おくりがな3|思|おも|い|出|だ|す|おもいだす}} {{ca-conj-ar|pens}} =={{gl}}== [[Category:{{gl}}]] ==={{etym}}=== {{etyl|lat|glg}} ''[[pensare|pēnsāre]]'' ==={{verb}}=== {{head|glg|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} {{gl-conj-ar|pens}} ===={{drv}}==== * [[pensamento]] =={{io}}== ==={{verb}}=== {{io-verb|pens}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} =={{ia}}== ==={{verb}}=== {{ia-verb|ar}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} {{ia-conj|pens|ar}} =={{mwl}}== [[Category:{{mwl}}]] ==={{etym}}=== {{etyl|lat|mwl}} ''[[pensare|pēnsāre]]'' ==={{verb}}=== {{head|mwl|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} ===={{rel}}==== * [[pensamiento]] =={{pt}}== [[Category:{{pt}}]] ==={{etym}}=== {{etyl|roa-ptg|por}} ''pensar'' < {{etyl|lat|por}} ''[[pensare|pēnsāre]]'' ==={{pron}}=== * {{a|PT}} {{IPA|pẽˈsaɾ}} ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} {{pt-conj|pens|ar}} ===={{rel}}==== * [[pensamento]] =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[pensare|pēnsāre]]'' ==={{verb}}=== {{es-verb|pens|ar|pres=pienso}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} ===={{conjug}}==== {{es-conj|<ie>}} ===={{rel}}==== * [[pensamiento]] * [[pensativo]] =={{vec}}== [[Category:{{vec}}]] ==={{etym}}=== {{etyl|lat|vec}} ''[[pensare|pēnsāre]]'' ==={{verb}}=== {{head|vec|verb}} #{{おくりがな2|考|かんが|える|かんがえる}}、{{おくりがな2|思|おも|う|おもう}} {{vec-conj-ar|pens|éser}} jd3pc68c8nf7bv2aj80ybcfjrq27s8x urgir 0 123727 2281312 2240026 2026-06-09T11:31:56Z Kuroco2k 84207 2281312 wikitext text/x-wiki =={{ca}}== ==={{verb}}=== {{head|cat|verb}} #[[緊急]]である {{ca-conj-ir|urg}} ---- =={{pt}}== [[Category:{{pt}}]] ==={{etym}}=== {{etyl|lat|por}} ''[[urgere|urgēre]]'' ==={{verb}}=== {{head|por|verb}} #[[緊急]]である #{{おくりがな2|急|いそ|いで|いそぐ}}[[行動]]する {{pt-conj|ur|gir}} ===={{rel}}==== * [[urgência]] * [[urgente]] ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[urgere|urgēre]]'' ==={{verb}}=== {{es-verb|urg|ir|pres=urjo}} #[[緊急]]である ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[urgencia]] * [[urgente]] r6kgquvkubg99upfflt9vsx4gz5cvn4 gemir 0 124116 2281253 1521952 2026-06-09T11:06:59Z Kuroco2k 84207 2281253 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[gemere]]'' ==={{verb}}=== {{es-verb|gem|ir|pres=gimo}} #{{おくりがな2|呻|うめ|く|うめく}} ===={{conjug}}==== {{es-conj|<i>|nocomb=1}} ===={{rel}}==== * [[gemido]] 12df142mxk5bxshrobkmudhfyucu9ic 軍府 0 124396 2280912 2277296 2026-06-08T13:33:46Z M-30722 1202 2280912 wikitext text/x-wiki {{kana-DEFAULTSORT|ぐんぷ}} =={{L|ja}}== {{ja-kanjitab|ぐん|ふ|k2=ぷ|yomi=o}} ==={{pron}}=== {{ja-pron|ぐんぷ|acc=1}} {{ja-accent-common|region=京阪|a|ぐ|んぷ}} ==={{noun}}=== {{ja-noun|[[ぐんぷ]]}} #{{タグ|ja|軍事}}[[武器]]を[[いれる|入れる]][[倉庫]]。[[武器庫]]。 #{{タグ|ja|軍事}}[[将軍]]の[[執務]]する[[場所]]。 ===={{trans}}==== {{trans-see|語義1|武器庫}} 9ezf02fny8bpmm3zmkayxaglu1i554z valer 0 125165 2281387 1679276 2026-06-09T11:55:52Z Kuroco2k 84207 2281387 wikitext text/x-wiki =={{L|ca}}== ==={{alter}}=== * [[valdre]] ==={{etym}}=== {{etyl|la|ca}} {{m|la|valēre}} ==={{verb}}=== {{ca-verb|er|val}} #~の[[価値]]がある #[[役にたつ]]、[[有用]]な。 {{ca-conj-dre2|val|infinitive=valer}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|la|gl}} {{m|la|valēre}} ==={{verb}}=== {{head|gl|verb}} #[[役にたつ]]、[[有用]]な。 {{gl-conj (valer)|v}} [[Category:{{gl}}_{{verb}}_不規則変化]] ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|valēre}} ==={{verb}}=== {{es-verb|val|er|pres=valgo}} #~の[[価値]]がある。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[vale]] * [[valor]] * [[valiente]] * [[valentía]] ---- =={{L|nrf}}== ==={{etym}}=== {{etyl|la|nrf}} {{m|la|valēre}} ==={{verb}}=== {{head|nrf|verb}} #{{label|nrf|Jersey}} ~の[[価値]]がある。 ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-ptg|pt}} ''valer'' < {{etyl|la|pt}} {{m|la|valēre}} < {{etyl|ine-pro|pt}} {{m|ine-pro|*wal}} ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|vɐˈleɾ}} * {{hyphenation|va|ler}} ==={{verb}}=== {{pt-verb||valer}} #~の[[価値]]がある。 {{pt-conj||valer}} [[Category:{{pt}}_{{verb}}_不規則変化]] i6oe0p78zn220od5tla49h5l9zuq1hy カテゴリ:エストニア語 植物 14 125443 2281149 986643 2026-06-09T06:26:47Z 鍼灸 112313 2281149 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{et}}|{{et}}_科学|disp4=科学|{{et}}_自然科学|disp5=自然科学|{{et}}_生物学|disp6=生物学|{{et}}_植物学|disp7=植物学|last=植物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{et}}}} </div> [[Category:エストニア語_植物学|*しよくふつ]] [[Category:エストニア語 生物|*しよくふつ]] [[Category:植物|えすとにあこ]] 5zkz1o6mfn4twclzruxm36n3m9cs47x amplificar 0 125902 2281240 1558858 2026-06-09T11:03:37Z Kuroco2k 84207 2281240 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|amplific|ar|pret=amplifiqué}} #[[拡大]]する、[[増大]]させる ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[amplio]] * [[ampliar]] 98duvrjctvygbwwf4nmg0cqekwore67 ampliar 0 125905 2281243 2240296 2026-06-09T11:03:37Z Kuroco2k 84207 2281243 wikitext text/x-wiki =={{ca}}== [[Category:{{ca}}]] ==={{etym}}=== {{etyl|lat|cat}} ''[[ampliare|ampliāre]]'' ==={{verb}}=== {{head|cat|verb}} #[[拡張]]する {{ca-conj-ar|ampli}} ---- =={{oc}}== [[Category:{{oc}}]] ==={{etym}}=== {{etyl|lat|oci}} ''[[ampliare|ampliāre]]'' ==={{verb}}=== {{head|oci|verb}} #[[拡張]]する ---- =={{pt}}== ==={{verb}}=== {{head|por|verb}} #[[拡張]]する {{pt-conj|ampli|ar}} ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[ampliare|ampliāre]]'' ==={{verb}}=== {{es-verb|ampli|ar|pres=amplío}} #[[拡張]]する ===={{conjug}}==== {{es-conj|<í>}} ===={{rel}}==== * [[amplio]] * [[ampliación]] * [[amplificar]] 50j9vkdakm94w75u1xsoyxmelmzzfio fugar 0 126024 2281304 2223496 2026-06-09T11:30:29Z Kuroco2k 84207 2281304 wikitext text/x-wiki {{also|Fugar}} =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[fugare|fugāre]]'' ==={{pron|spa}}=== * {{IPA2|fuˈgaɾ|fuˈɣ̞äɾ}} ==={{verb}}=== {{es-verb|fug|ar|pret=fugué}} #{{おくりがな2|逃|に|げる|にげる}} ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * [[escapar]] * [[huir]] ===={{rel}}==== * [[fuga]] * [[fugitivo]] jhxy5jelypruy2sxliyaq8t0lpuk0lj fortificar 0 126132 2281306 1522021 2026-06-09T11:30:30Z Kuroco2k 84207 2281306 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[fortificare|fortificāre]]'' ==={{verb}}=== {{es-verb|fortific|ar|pret=fortifiqué}} #[[要塞]]を{{おくりがな2|築|きず|く|きずく}}、[[防御]]を{{おくりがな2|固|かた|める|かためる}} #[[強化]]する ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[fortificación]] * [[fuerza]] * [[fuerte]] ah55vdyyzassy1v6j2iaboz3euhj902 ungir 0 127358 2281311 1522077 2026-06-09T11:31:56Z Kuroco2k 84207 2281311 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[ungere|ungĕre]]'' ==={{verb}}=== {{es-verb|ung|ir|pres=unjo}} #{{ふりがな|油|あぶら}}を{{おくりがな2|塗|ぬ|って|ぬる}}{{おくりがな2|清|きよ|める|きよめる}} ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[untar]] * [[ungüento]] sktud693n8l9kd6hrlkjcxjunhi2zp7 dislocar 0 127845 2281274 1558877 2026-06-09T11:20:12Z Kuroco2k 84207 2281274 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|disloc|ar|pret=disloqué}} #{{context|他動詞|lang=es}} [[脱臼]]する ===={{conjug}}==== {{es-conj}} h8upe8uyk85rxg892t8scua3mqiz6kh permanecer 0 129522 2281370 2241182 2026-06-09T11:51:10Z Kuroco2k 84207 2281370 wikitext text/x-wiki =={{pt}}== [[Category:{{pt}}]] ==={{etym}}=== {{etyl|roa-ptg|por}} ''[[permanescer]]'' < {{etyl|lat|por}} ''[[permanere|permanēre]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|pɨɾ.mɐ.nɨ.ˈseɾ}} ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|留|とど|まる|とどまる}}、[[残存]]する #{{おくりがな2|住|す|む|すむ}} {{pt-conj|permane|cer}} ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[permanere|permanēre]]'' ==={{verb}}=== {{es-verb|permanec|er|pres=permanezco}} #{{おくりがな2|留|とど|まる|とどまる}} ===={{conjug}}==== {{es-conj}} arnx1uty5zqeld0pi61b9npscuwmgd4 brutalizar 0 129961 2281200 1558996 2026-06-09T10:40:16Z Kuroco2k 84207 2281200 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|brutaliz|ar|pret=brutalicé}} #[[残忍]]にする ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{rel}}==== * [[brutal]] p58diqyzgfgvwu7nst0ke5ir97c6urk corregir 0 130312 2281258 2241382 2026-06-09T11:12:41Z Kuroco2k 84207 2281258 wikitext text/x-wiki =={{ca}}== [[Category:{{ca}}]] ==={{etym}}=== {{etyl|lat|cat}} ''[[corrigere]]'' ==={{verb}}=== {{head|cat|verb}} #{{おくりがな2|正|ただ|す|ただす}} {{ca-conj-ir|correg}} ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== {{etyl|lat|spa}} ''[[corrigere]]'' ==={{verb}}=== {{es-verb|correg|ir|pres=corrijo}} #{{おくりがな2|正|ただ|す|ただす}} ===={{conjug}}==== {{es-conj|<i>}} ===={{syn}}==== * [[enmendar]] * [[rectificar]] ===={{rel}}==== * [[correcto]] * [[corrección]] * [[correctivo]] * [[corrector]] * [[corregible]] * [[corregidor]] * [[incorregible]] 21n4aizvy75rrl0uf1uso4fdid2vsii ventar 0 131007 2281382 2241573 2026-06-09T11:55:51Z Kuroco2k 84207 2281382 wikitext text/x-wiki =={{io}}== ==={{verb}}=== {{io-verb|vent}} #{{ふりがな|風|かぜ}}が{{おくりがな2|吹|ふ|く|ふく}} ---- =={{nn}}== ==={{verb}}=== {{head|nno|verb form}} #[[venta]], [[vente]]の現在形 ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|vent|ar|pres=viento}} #{{context|intransitive|lang=es}}{{ふりがな|風|かぜ}}が{{おくりがな2|吹|ふ|く|ふく}} #{{context|transitive|lang=es}}{{おくりがな2|臭|にお|い|におい}}を{{おくりがな2|嗅|か|ぐ|かぐ}} ===={{conjug}}==== {{es-conj|<ie>}} b8iutjao2es5ouwtw6wbjl765180j60 continuar 0 131479 2281263 2267522 2026-06-09T11:12:43Z Kuroco2k 84207 2281263 wikitext text/x-wiki =={{L|ca}}== ==={{pron}}=== * {{rhymes|lang=ca|a(ɾ)}} ==={{verb}}=== {{ca-verb|ar|continu}} #{{おくりがな2|続|つづ|ける|つづける}}、[[継続]]する。 {{ca-conj-ar|continu}} =={{L|es}}== ==={{pron}}=== * {{IPA|lang=es|kon.ti.ˈnwaɾ}} ==={{etym}}=== {{etyl|la|es}} {{m|la|continuāre}} ==={{verb}}=== {{es-verb|continu|ar|pres=continúo}} #{{おくりがな2|続|つづ|ける|つづける}}、[[継続]]する。 ===={{conjug}}==== {{es-conj|<ú>}} ===={{rel}}==== * [[continuación]] * [[continuador]] * [[continuativo]] * [[continuidad]] * [[continuo]] =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|continuāre}} ==={{pron}}=== * {{a|EP}} {{IPA|lang=pt|[kõ.ti.ˈnwaɾ]}} * {{a|Brazil, Northeast}} {{IPA|lang=pt|[kõn.tʃi.ˈnwax]|[kõn.tʃi.ˈnwah]}} * {{a|Brazil, South}} {{IPA|lang=pt|[kõn.ti.ˈnwaɾ]|[kõn.tʃi.ˈnwa]}} * {{a|Brazil, Caipira}} {{IPA|lang=pt|[kõn.tʃi.ˈnwaɻ]}} ==={{verb}}=== {{head|pt|verb}} #{{おくりがな2|続|つづ|ける|つづける}}、[[継続]]する。 {{pt-conj|continu|ar}} b8q6v4dbnt2i695zi8svbkjy7rdcdl8 fotografiar 0 131607 2281305 2241963 2026-06-09T11:30:30Z Kuroco2k 84207 2281305 wikitext text/x-wiki =={{ca}}== ==={{verb}}=== {{head|cat|verb}} #[[写真]]を{{おくりがな2|撮|と|る|とる}} {{ca-conj-ar|fotografi}} ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|fotografi|ar|pres=fotografío}} #[[写真]]を{{おくりがな2|撮|と|る|とる}} ===={{conjug}}==== {{es-conj|<í>}} ===={{syn}}==== * [[sacar]] ===={{rel}}==== * [[foto]], [[fotografía]] * [[fotógrafo]] f4fo5g3t3xrefl0513ogfbjvdmojjpm てん 0 132828 2281231 1790817 2026-06-09T10:55:44Z うーむ 129171 /* 日本語 */ 2281231 wikitext text/x-wiki {{DEFAULTSORT:てん}} {{wikipedia|テン属}} =={{ja}}== [[Category:{{ja}}]] ==={{noun}}=== [[Category:{{ja}}_{{noun}}]] [[Category:{{ja}}_イタチ科]] '''てん'''【[[黄鼬]]、[[貂]]、[[雷獣]]】 #ネコ目イタチ科テン属に属する[[食肉類]]の総称。学名:[[Martes]] #1.に属する食肉類の一種。[[テン]]を参照。 ===={{trans}}==== *{{de}}: [[Marder]] *{{en}}: [[marten]] *{{ko}}: [[담비]] *{{lb}}: [[Marder]] === 同音の漢字 === *'''[[Wiktionary:漢字索引 音訓 て#テン]]'''参照。 jpoqa3jeejrv8d9awyejgnpbucescfy fertilizar 0 133691 2281307 2242432 2026-06-09T11:30:30Z Kuroco2k 84207 2281307 wikitext text/x-wiki =={{pt}}== ==={{verb}}=== {{head|por|verb}} #(土地などを)[[肥沃]]にする {{pt-conj|fertiliz|ar}} ===={{rel}}==== * [[fértil]] * [[fertilização]] ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== ''[[fértil]]'' + ''[[-izar]]'' ==={{verb}}=== {{es-verb|fertiliz|ar|pret=fertilicé}} #(土地などを)[[肥沃]]にする ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[fértil]] * [[fertilidad]] * [[fertilización]] * [[fertilizante]] ky8e1j24stapkjwsnpwdl67il84xv5d aparecer 0 135508 2281242 2242908 2026-06-09T11:03:37Z Kuroco2k 84207 2281242 wikitext text/x-wiki =={{gl}}== ==={{etym}}=== {{etyl|LL.|glg}} ''[[apparescere|appārēscere]]'' < {{etyl|lat|glg}} ''[[apparere|apparēre]]'' ==={{verb}}=== {{head|glg|verb}} #{{おくりがな2|現|あらわ|れる|あらわれる}}、[[生]]じる {{gl-conj-cer|apare}} ===={{rel}}==== * [[aparente]] * [[desaparecer]] * [[parecer]] ---- =={{pt}}== ==={{etym}}=== {{etyl|roa-opt|por}} ''aparecer'' < {{etyl|LL.|por}} ''[[apparescere|appārēscere]]'' < {{etyl|lat|por}} ''[[apparere|apparēre]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|ɐ.pɐ.ɾɨ.ˈseɾ}} ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|現|あらわ|れる|あらわれる}}、[[生]]じる {{pt-conj|apare|cer}} ===={{rel}}==== * [[aparecimento]] * [[aparente]] * [[desaparecer]] * [[parecer]] ---- =={{es}}== ==={{etym}}=== {{etyl|LL.|spa}} ''[[apparescere|appārēscere]]'' < {{etyl|lat|spa}} ''[[apparere|apparēre]]'' ==={{verb}}=== {{es-verb|aparec|er|pres=aparezco}} #{{おくりがな2|現|あらわ|れる|あらわれる}}、[[生]]じる ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[aparente]] * [[aparentemente]] * [[desaparecer]] * [[parecer]] 8d6zycr8rkqvwmf2v60g9h7h0lmxale desaparecer 0 135514 2281284 2242909 2026-06-09T11:20:14Z Kuroco2k 84207 2281284 wikitext text/x-wiki =={{pt}}== ==={{etym}}=== ''[[des-]]'' + ''[[aparecer]]'' ==={{pron|por}}=== * {{a|South Brazil}} {{IPA|ˌde.za.ˌpa.ɾe.ˈse(ɻ)}} * {{a|PT}} {{IPA|ˌdɨ.zɐ.ˌpɐ.ɾɨ.ˈseɾ}} ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|消|き|える|きえる}} {{pt-conj|desapare|cer}} ===={{syn}}==== * [[sumir]], [[ocultar]], [[ausentar]] ===={{ant}}==== * [[aparecer]], [[surgir]] ===={{rel}}==== * [[desaparecido]] * [[desaparecimento]] ---- =={{es}}== [[Category:{{es}}]] ==={{etym}}=== ''[[des-]]'' + ''[[aparecer]]'' ==={{verb}}=== {{es-verb|desaparec|er|pres=desaparezco}} #{{context|intransitive|lang=es}}{{おくりがな2|消|き|える|きえる}} ===={{conjug}}==== {{es-conj}} {{es-conj|desaparecerse}} ===={{ant}}==== * [[aparecer]] ===={{rel}}==== * [[desaparición]] hpta9jj1w0uae6ws7hh0o1vqyf3ew57 vagar 0 137403 2281388 2243499 2026-06-09T11:55:52Z Kuroco2k 84207 2281388 wikitext text/x-wiki =={{gl}}== ==={{verb}}=== {{head|glg|verb}} #[[ぶらつく]]、[[放浪]]する {{gl-conj-car|vag|vagu}} ===={{rel}}==== * [[vagabundo]] ---- =={{pt}}== ==={{etym}}=== {{etyl|roa-opt|por}} ''vagar'' < {{etyl|lat|por}} ''[[vagari|vagārī]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|vɐˈɣaɾ}} ==={{verb}}=== {{head|por|verb}} #[[ぶらつく]]、[[放浪]]する {{pt-conj|va|gar}} ---- =={{es}}== ==={{etym}}=== {{etyl|la|es}} ''[[vagari|vagārī]]'' ==={{verb}}=== {{es-verb|vag|ar|pret=vagué}} #[[ぶらつく]]、[[放浪]]する ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{syn}}==== * [[divagar]] ===={{rel}}==== * [[divagar]] * [[vagabundo]] * [[vago]] cgeupzijj76f4r3uevaxu32bbsep5uk irrigar 0 138768 2281321 1559094 2026-06-09T11:39:08Z Kuroco2k 84207 2281321 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|irrig|ar|pret=irrigué}} #[[灌漑]]する #(傷口を)[[洗浄]]する ===={{conjug}}==== {{es-conj}} m9g298u2x0hnhcw6giit1qa1r5pr6ep intricar 0 139116 2281325 1559096 2026-06-09T11:39:09Z Kuroco2k 84207 2281325 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|intric|ar|pret=intriqué}} #[[intrincar]]の異綴 ===={{conjug}}==== {{es-conj}} s8tmubdm55lzm8r13az9d8qsr7kpg8h intrincar 0 139117 2281323 2244169 2026-06-09T11:39:08Z Kuroco2k 84207 2281323 wikitext text/x-wiki =={{pt}}== ==={{etym}}=== {{etyl|lat|por}} ''[[intricare|intricāre]]'' ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|困|こま|ら|こまる}}せる #[[複雑]]にする {{pt-conj|intrin|car}} ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[intricare|intricāre]]'' ==={{alter}}=== * [[intricar]] ==={{verb}}=== {{es-verb|intrinc|ar|pret=intrinqué}} #[[複雑]]にする、[[混乱]]させる ===={{conjug}}==== {{es-conj}} a5f1niiiy4mabuun8z2miaokug5cnre intrigar 0 140133 2281324 2244576 2026-06-09T11:39:08Z Kuroco2k 84207 2281324 wikitext text/x-wiki =={{io}}== ==={{etym}}=== {{etyl|epo|ido}} ''[[intrigi]]'' ==={{verb}}=== {{io-verb|intrig}} #(自動詞)[[陰謀]]を{{おくりがな2|企|くわだ|てる|くわだてる}} ===={{drv}}==== * [[intrigizar]] ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|intrig|ar|pret=intrigué}} #[[陰謀]]を{{おくりがな2|企|くわだ|てる|くわだてる}} ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[intriga]] ---- =={{vec}}== ==={{verb}}=== {{head|vec|verb}} #(他動詞){{おくりがな2|塞|ふさ|ぐ|ふさぐ}}、{{おくりがな2|遮|さえぎ|る|さえぎる}} {{vec-conj-ar|intrig|aver}} ===={{rel}}==== * [[intrigo]] 52729wba0nste47sgysxu1hozy6adx6 impedir 0 140174 2281335 1672287 2026-06-09T11:39:12Z Kuroco2k 84207 2281335 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|impedīre}} ==={{verb}}=== {{es-verb|imped|ir|pres=impido}} #{{おくりがな2|妨|さまた|げる|さまたげる}}、{{おくりがな2|遅|おく|らせる|おくらせる}}。 ===={{conjug}}==== {{es-conj|<i>}} ===={{syn}}==== * [[estorbar]] ===={{rel}}==== {{top}} * [[impedancia]] * [[impedido]] * [[impedidor]] * [[impediencia]] * [[impediente]] * [[impedimenta]] * [[impedimento]] * [[impeditivo]] {{bottom}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|impedīre}} ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|ĩ.pɨ.ˈðiɾ}} ==={{verb}}=== {{head|pt|verb}} #{{おくりがな2|妨|さまた|げる|さまたげる}}、{{おくりがな2|遅|おく|らせる|おくらせる}}。 {{pt-conj|imp|edir}} cx00vqzmjl61tfqu5v9eweik7ofzkkc inmunizar 0 141967 2281328 1559106 2026-06-09T11:39:10Z Kuroco2k 84207 2281328 wikitext text/x-wiki =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|inmuniz|ar|pret=inmunicé}} [[Category:{{es}}_医学]] #[[免疫]]を{{おくりがな2|与|あた|える|あたえる}} ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[inmune]] * [[inmunidad]] * [[inmunización]] kru01x3tzjfvz7zsiy55gpcmn7k8d8t industrializar 0 142631 2281330 2245508 2026-06-09T11:39:10Z Kuroco2k 84207 2281330 wikitext text/x-wiki =={{pt}}== ==={{verb}}=== {{head|por|verb}} #[[産業]]化する、[[工業化]]する {{pt-conj|industrializ|ar}} ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|industrializ|ar|pret=industrialicé}} #[[産業]]化する、[[工業化]]する ===={{conjug}}==== {{es-conj}} 1d55qioer88ewn9kjwydprpacokx00z adecuar 0 143117 2281245 1523555 2026-06-09T11:03:38Z Kuroco2k 84207 2281245 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[adaequare|adaequāre]]'' ==={{verb}}=== {{es-verb|adecu|ar|pres=adecúo}} #[[適応]]させる ===={{conjug}}==== {{es-conj|<+,ú>}} qfzwydvat4nf840wlbg9bf4a6z9l9mz crucificar 0 144678 2281259 1626635 2026-06-09T11:12:42Z Kuroco2k 84207 2281259 wikitext text/x-wiki =={{L|oc}}== ==={{verb}}=== {{head|oc|verb}} # {{ふりがな|磔|はりつけ}}にする。 ---- =={{L|ca}}== ==={{verb}}=== {{head|ca|verb}} # {{ふりがな|磔|はりつけ}}にする。 ===={{conjug}}==== {{ca-conj-ar|crucific}} ---- =={{L|es}}== ==={{verb}}=== {{es-verb|crucific|ar|pret=crucifiqué}} # {{ふりがな|磔|はりつけ}}にする。 # ひどく{{おくりがな2|苦|くる|しめる|くるしめる}}。 ===={{conjug}}==== {{es-conj}} ---- =={{L|pt}}== ==={{verb}}=== {{head|pt|verb}} # {{ふりがな|磔|はりつけ}}にする。 ===={{conjug}}==== {{pt-conj|crucifi|car}} ===={{rel}}==== * {{l|pt|cruz}} 5la9mdizrn1iib7ijaahux8fu3q0h98 sacrificar 0 144713 2281349 2188635 2026-06-09T11:43:26Z Kuroco2k 84207 2281349 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{head|ast|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 ===={{rel}}==== * [[sacrificiu]] =={{L|ca}}== ==={{pron}}=== * {{IPA|lang=ca|səkɾifiˈka}} * {{rhymes|lang=ca|a(ɾ)}} ==={{verb}}=== {{head|ca|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[sacrifici]] * [[sacrificial]] =={{L|es}}== ==={{verb}}=== {{es-verb|sacrific|ar|pret=sacrifiqué}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 #[[動物]]を[[安楽死]]させる。 {{es-conj-car|sacrifi}} ===={{rel}}==== * [[sacrificio]] * [[sacrificador]] * [[sacrificatorio]] =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[sacrificium]]'' ==={{verb}}=== {{head|pt|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 #{{context|chess|lang=pt}}[[故意]]に{{ふりがな|駒|こま}}を取らせる。 {{pt-conj|sacrifi|car}} eftqfz9i234hmz71eexczg6rl87s0wl 2281354 2281349 2026-06-09T11:44:17Z Kuroco2k 84207 2281354 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{head|ast|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 ===={{rel}}==== * [[sacrificiu]] =={{L|ca}}== ==={{pron}}=== * {{IPA|lang=ca|səkɾifiˈka}} * {{rhymes|lang=ca|a(ɾ)}} ==={{verb}}=== {{head|ca|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 {{ca-conj-ar|sacrific}} ===={{rel}}==== * [[sacrifici]] * [[sacrificial]] =={{L|es}}== ==={{verb}}=== {{es-verb|sacrific|ar|pret=sacrifiqué}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 #[[動物]]を[[安楽死]]させる。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[sacrificio]] * [[sacrificador]] * [[sacrificatorio]] =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[sacrificium]]'' ==={{verb}}=== {{head|pt|verb}} #[[犠牲]]にする、{{ふりがな|生贄|いけにえ}}を{{おくりがな2|捧|ささ|げる|ささげる}}。 #{{context|chess|lang=pt}}[[故意]]に{{ふりがな|駒|こま}}を取らせる。 {{pt-conj|sacrifi|car}} 5o4k4chgbumsi2ffdr292ovm08zn1g3 legalizar 0 145963 2281393 2246819 2026-06-09T11:57:13Z Kuroco2k 84207 2281393 wikitext text/x-wiki =={{pt}}== ==={{verb}}=== {{head|por|verb}} #[[合法]]化する {{pt-conj|legaliz|ar}} ---- =={{es}}== [[Category:{{es}}]] ==={{verb}}=== {{es-verb|legaliz|ar|pret=legalicé}} #[[合法]]化する #(乗り物を)[[登録]]する ===={{conjug}}==== {{es-conj}} 3229ozle7x4g7t7yk1qkxcvfsx1qjku elegir 0 149524 2281294 2247466 2026-06-09T11:23:40Z Kuroco2k 84207 2281294 wikitext text/x-wiki =={{ca}}== ==={{etym}}=== {{etyl|lat|cat}} ''[[eligere]]'' ==={{verb}}=== {{head|cat|verb}} #{{おくりがな2|選|えら|ぶ|えらぶ}} {{ca-conj-ir|eleg}} ===={{syn}}==== * [[escollir]] ---- =={{es}}== ==={{etym}}=== {{etyl|la|es}} ''[[eligere|ēligere]]'' ==={{verb}}=== {{es-verb|eleg|ir|pres=elijo|part2=electo}} #{{おくりがな2|選|えら|ぶ|えらぶ}} ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * [[esleír]], [[eligir]] (廃語) * [[escoger]], [[seleccionar]] ===={{rel}}==== * [[elección]] * [[elegible]] * [[elegido]] * [[reelegir]] 5rhnfpp5hb9k9rmlsrd7a5ygd3xsfp1 𠌷 0 151908 2280924 991234 2026-06-08T13:46:08Z M-30722 1202 2280924 wikitext text/x-wiki ==漢字== {{kanji|人|11}} {{kanji variants|執}} ===意義=== #「[[執]]」の[[俗字]](『[[w:正字通|正字通]]』掲載)。 =={{コード}}== {{文字コード}} pfrnj5k21wzi0rr3mhswq0phk3edkzc instituir 0 152066 2281327 2247702 2026-06-09T11:39:09Z Kuroco2k 84207 2281327 wikitext text/x-wiki =={{pt}}== ==={{verb}}=== {{head|por|verb}} #{{おくりがな2|設|もう|ける|もうける}}、[[制定]]する {{pt-conj|instit|uir}} ---- =={{es}}== ==={{verb}}=== {{es-verb|institu|ir}} #{{おくりがな2|設|もう|ける|もうける}}、[[制定]]する ===={{conjug}}==== {{es-conj}} 57y0bafejykacbf5kf3d588k3y5ffmz घर्म 0 153476 2280918 1380526 2026-06-08T13:42:47Z Kuroco2k 84207 2280918 wikitext text/x-wiki =={{L|sa}}== ==={{etym}}=== {{etyl|ine-pro|sa}} {{m|ine-pro|*gʰarmás}} < {{m|ine-pro|*gʷʰer-}} + {{m|ine-pro|*-mós}} ==={{pron}}=== {{sa-IPA|a=2}} ==={{noun}}=== {{sa-noun|head=घ॒र्म|g=m|घृ}} #[[熱]]。 #[[あつさ|暑さ]]、[[炎暑]]。 #[[日光]]。 ===={{decl}}==== {{sa-decl-noun-m|gharmá}} ===={{desc}}==== *{{desc|pi|ghamma}} *{{desc|pra|𑀖𑀫𑁆𑀫}} {{see desc}} *{{desc|gu|ઘર્મ|lbor=1}} *→ ヒンドゥースターニー語: **{{desc|hi|घर्म}} **{{desc|ur|گھَرْم}} =={{L|hi}}== ==={{etym}}=== {{bor+|hi|sa|घ॒र्म}} ==={{pron}}=== *{{hi-IPA}} ==={{noun}}=== {{hi-noun|g=m|tr=gharm|ur=گھرم}} #[[熱]]。 #[[あつさ|暑さ]]、[[炎暑]]。 #[[なつ|夏]]。 #[[日光]]。 ===={{decl}}==== {{hi-ndecl|<M>}} ===={{seealso}}==== *{{l|hi|गर्मी|tr=gharmī}} 3h5p4638bl7084pmo0p42va8ah72vfd verse 0 153661 2281385 1845296 2026-06-09T11:55:52Z Kuroco2k 84207 2281385 wikitext text/x-wiki {{also|Verse|versé|'verse}} =={{L|en}}== ==={{pron}}=== * {{IPA|ˈvɜ(ː|ɹ)s|lang=en}} * {{音声|en|en-us-verse.ogg|音声 (米)}} ==={{etym}}1=== *一部は{{etyl|ang}} {{m|ang|vers}}、一部は{{etyl|fro}} {{m|fro|vers}}より。ともに、{{etyl|la}} {{m|la|versus||一行詩<行<畝}}< {{m|la|vertere||耕す}} ===={{noun}}==== {{en-noun}} #{{context|literature|lang=en}}[[韻文]]。 #{{context|literature|lang=en}}[[詩歌]]。 #[[詩節]]。 #聖書の[[節]]。 ====={{comp}}===== * [[blank verse]] * [[free verse]] ====={{rel}}===== * [[versification]] * [[versify]] ====={{desc}}===== *{{desc|ja|バース}} ===={{verb}}==== {{en-verb|vers|ing}} #{{context|obsolete|lang=en}}韻文を作成する。 #{{context|transitive|lang=en}}詩情をこめ話す。 ==={{etym}}2=== {{rfe|lang=en}} ===={{verb}}==== {{en-verb|vers|ing}} #~について[[教育]]する。 ===={{comp}}==== * [[well-versed]], [[well versed]] ==={{etym}}3=== *{{back-form|lang=en|versus}}''*verses''を三人称単数現在形と誤解したことによる。 ===={{verb}}==== {{en-verb|vers|ing}} #{{context|colloquial|ゲームなどで|lang=en}} 相手する、対抗する。 [[Category:ベーシック英語 850単語]] ---- =={{L|nl}}== ==={{pron}}=== * {{音声|nl|Nl-verse.ogg|音声}} ==={{adjective}}=== {{head|nl|adjective form}} #{{l|nl|vers}}の原級中性単数限定形。 versの原級通性単数。 versの原級複数形。 ---- =={{L|es}}== ==={{verb}}=== {{es-verb-form|versar}} #{{es-verb form of|ending=ar|mood=imperative|pers=2|formal=yes|number=singular|versar}} #{{es-verb form of|ending=ar|mood=subjunctive|tense=present|pers=1|number=singular|versar}} #{{es-verb form of|ending=ar|mood=subjunctive|tense=present|pers=2|formal=yes|number=singular|versar}} #{{es-verb form of|ending=ar|mood=subjunctive|tense=present|pers=3|number=singular|versar}} ---- =={{L|fr}}== ==={{verb}}=== {{fr-verb-form}} #{{活用形|verser||1|s|pres|ind|lang=fr}} #{{活用形|verser||3|s|pres|ind|lang=fr}} #{{活用形|verser||1|s|pres|sub|lang=fr}} #{{活用形|verser||3|s|pres|sub|lang=fr}} #{{活用形|verser||2|s|imp|lang=fr}} ---- =={{L|la}}== ==={{noun}}=== {{la-part-form|verse}} #{{inflection of|versus||voc|m|s|lang=la}} 975w7y2fkvdnvrcbd14csmas698k9r1 カテゴリ:菌類 14 153683 2280930 2019021 2026-06-08T13:48:02Z 鍼灸 112313 2280930 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|菌類学}} * {{Pathnav|カテゴリ|分野|自然|生物}} </div> {{wikipedia|category=菌類}} [[菌類]]に関する語彙 {{DEFAULTSORT:きんるい}} [[カテゴリ:生物|*きんるい]] [[カテゴリ:菌類学|*きんるい]] [[カテゴリ:分野の一覧]] stkpc80asy34kahh8tf1yfx7hqr574s interrogar 0 156305 2281326 2248480 2026-06-09T11:39:09Z Kuroco2k 84207 2281326 wikitext text/x-wiki =={{pt}}== ==={{etym}}=== {{etyl|lat|por}} ''[[interrogare|interrogāre]]'' ==={{verb}}=== {{head|por|verb}} #[[質問]]する。[[尋問]]する。 {{pt-conj|interro|gar}} ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[interrogare|interrogāre]]'' ==={{verb}}=== {{es-verb|interrog|ar|pret=interrogué}} #[[質問]]する。[[尋問]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[interrogación]] * [[interrogador]] lfiz0hu33asv7j6zz6jebr26fzvfygy distinguir 0 159533 2281275 1667281 2026-06-09T11:20:12Z Kuroco2k 84207 2281275 wikitext text/x-wiki =={{L|es}}== ==={{verb}}=== {{es-verb|distingu|ir|pres=distingo}} #{{おくりがな3|見|み||分|わ|ける|みわける}}。[[判別]]する。[[区別]]する。 ===={{conjug}}==== {{es-conj}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[distinguere]]'' ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|diʃ.tĩ.ˈɡiɾ}} * {{hyphenation|dis|tin|guir|lang=pt}} ==={{verb}}=== {{pt-verb|distingu|ir}} #{{おくりがな3|見|み||分|わ|ける|みわける}}。[[判別]]する。[[区別]]する。 {{pt-conj|distin|guir}} fsyso9wv6bnp02f9nr50do6e9hqa6si consentir 0 160839 2281264 1652841 2026-06-09T11:12:43Z Kuroco2k 84207 2281264 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|cōnsentīre}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ir|consent}} #[[同意]]する。[[承諾]]する。 {{ca-conj-ir|consent}} ===={{drv}}==== * {{l|ca|consentiment}} ---- =={{L|fro}}== ==={{etym}}=== 10世紀に初出。{{etyl|la|fro}} {{m|la|cōnsentīre}} ==={{verb}}=== {{head|fro|verb}} #[[同意]]する。[[承諾]]する。 {{fro-conj-iii|prefix=con}} ===={{desc}}==== *{{en}}: {{l|en|consent}} *{{fr}}: {{l|fr|consentir}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|cōnsentīre}} ==={{verb}}=== {{es-verb|consent|ir|pres=consiento}} #[[同意]]する。[[承諾]]する。 #{{おくりがな2|耐|た|える|たえる}}。 #{{おくりがな2|甘|あま|やかす|あまやかす}}。 ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{rel}}==== * [[consentido]] * [[consentimiento]] ---- =={{L|fr}}== ==={{etym}}=== 10世紀に初出。{{etyl|la|fr}} {{m|la|cōnsentīre}} ==={{pron}}=== * {{fr-IPA}} :[[File:Fr-consentir.ogg]] ==={{verb}}=== {{fr-verb}} #[[同意]]する。[[承諾]]する。 ===={{conjugation}}==== {{fr-conj-auto}} ===アナグラム=== * [[centrions]] ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|cōnsentīre}} ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|kõsẽˈtiɾ}} ==={{verb}}=== {{pt-verb|cons|entir}} #{{おくりがな2|許|ゆる|す|ゆるす}}。[[許可]]する。 #[[同意]]する。[[承諾]]する。 {{pt-conj|cons|entir}} fgzwajd20ue47te25lab6s58ds9bo5z カテゴリ:リトアニア語 植物 14 164757 2281153 2095167 2026-06-09T06:33:36Z 鍼灸 112313 2281153 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{lt}}|{{lt}}_科学|disp4=科学|{{lt}}_自然科学|disp5=自然科学|{{lt}}_生物学|disp6=生物学|{{lt}}_植物学|disp7=植物学|last=植物}} * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{lt}}}} </div> {{catmore}} [[カテゴリ:{{lt}}_植物学|*しよくふつ]] [[カテゴリ:{{lt}}_生物|*しよくふつ]] [[カテゴリ:植物|りとあにあこ]] dtek747ajbkjrf2fxpalu399fjlukrd perpetuar 0 166236 2281368 1393982 2026-06-09T11:51:10Z Kuroco2k 84207 2281368 wikitext text/x-wiki =={{ca}}== ==={{verb}}=== {{ca-verb|ar|perpetu}} #[[永続]]させる。[[不滅]]にする。 {{ca-conj-ar|perpetu}} ===={{rel}}==== * [[perpetu]], [[perpetual]] ---- =={{es}}== ==={{verb}}=== {{es-verb|perpetu|ar|pres=perpetúo}} #[[永続]]させる。[[不滅]]にする。 ===={{conjug}}==== {{es-conj|<ú>}} ===={{rel}}==== * [[perpetuo]] cg1bak4imr2y0wmnzgn0a4e1tj11n7i democratizar 0 168005 2281287 1551493 2026-06-09T11:20:16Z Kuroco2k 84207 2281287 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|grc|spa}} {{term|grc|δημοκρατίζειν}} ==={{pron|spa}}=== * {{a|Castilian}} {{IPA|de̞mo̞kratiˈθaɾ}} * {{a|Others}} {{IPA|de̞mo̞kratiˈsaɾ}} ==={{verb}}=== {{es-verb|democratiz|ar|pret=democraticé}} [[Category:{{es}}_政治]] #[[民主化]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[democracia]] * [[democrático]] ---- =={{pt}}== ==={{verb}}=== {{pt-verb|democratiz|ar}} [[Category:{{pt}}_政治]] #[[民主化]]する。 {{pt-conj|democratiz|ar}} 6a7yfdimn0j385ly4dk3s6vjtctxn4d タイタン 0 168363 2281111 1926056 2026-06-09T03:04:54Z 鍼灸 112313 2281111 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たいだん|だいたん|だいだん}} {{wikipedia}} {{wikipedia|タイタン (衛星)}} =={{L|ja}}== ==={{etym}}=== {{bor|ja|en|Titan}} [[cf.]][[チタン]]。 ==={{name}}=== {{ja-proper noun}} #{{context|Greek mythology|Roman mythology|lang=ja}}オリュンポスの神々に先行する、巨大な体を持つとされる神々(複数)。 #*[[憔悴]]し[[ぼろ]]をまとい疲れ切ってる[[防寨]]の人々は、二十四時間の間一食もせず、一睡もせず、余すところは数発の弾のみとなり、ポケットを探っても弾薬はなく、ほとんど全員傷を受け、黒くよごれた布片で頭や腕をまき、着物には穴があいてそこから血が流れ、武器としては悪い銃と古い鈍った[[サーベル]]にすぎなかったが、しかも'''タイタン'''族のように巨大となったのである。({{w|ビクトル・ユーゴー}} {{w|豊島与志雄}}訳『{{w|レ・ミゼラブル}}』) #{{context|天体|lang=ja}}[[土星]]の[[第六]][[衛星]][[名]]。 ===={{rel}}==== *[[ティーターン]]({{grc}}:{{unicode|Τιτάν}}の音写) *([[おも|主]]な[[ほか|他]]の[[土星]]の[[衛星]]):[[レア]]、[[イアペトゥス]] *[[巨人]] 314a1ew5w2vhzmxly7gv7t4aacxnvkf たんご 0 168485 2281117 2168840 2026-06-09T03:16:01Z 鍼灸 112313 2281117 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たんこ|だんこ|だんご|タンゴ}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[単語]]】[[言語]][[単位]]の一つ。 *【[[端午]]】[[五月]]の[[節句]]。 *【[[丹後]]】[[丹後国]]。 ffto971m943yslcizbxzo2cg4vto1zj だんご 0 168489 2281118 2168841 2026-06-09T03:16:33Z 鍼灸 112313 2281118 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たんこ|たんご|だんこ|タンゴ}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[団子]]】丸く固めたもの。 *【[[段碁]]】[[囲碁]]で[[初段]]以上の[[技量]]のもの。 hfvatx77f7ajucbg7oh6cqtlyjv49cm 丹後 0 168497 2281135 1486150 2026-06-09T06:05:37Z うーむ 129171 /* 固有名詞 */ 2281135 wikitext text/x-wiki {{DEFAULTSORT:たんこ}} {{wikipedia}} =={{ja}}== [[Category:{{ja}}]] ==={{name}}=== [[Category:{{ja}}_{{name}}]] [[Category:旧国名]] {{jachar|丹|後}} ([[たんご]]) # 旧国名の一つ。[[丹後国]]。 # 京都府にあった地名。{{w|丹後町}}。 t3o866sv8n1weaatcawk858g2a0khtc カテゴリ:藻類 14 170016 2280926 2019024 2026-06-08T13:46:55Z 鍼灸 112313 2280926 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|分野|科学|自然科学|生物学|植物学|藻類学}} * {{Pathnav|分野|自然|生物|植物}} </div> [[藻類]]に関する語彙 {{DEFAULTSORT:そうるい}} [[カテゴリ:藻類学|*そうるい]] [[カテゴリ:生物|*そうるい]] 68s8bd8dld8j1incv9as7ffzhutrh1m 2280928 2280926 2026-06-08T13:47:20Z 鍼灸 112313 2280928 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|分野|科学|自然科学|生物学|藻類学}} * {{Pathnav|分野|自然|生物}} </div> [[藻類]]に関する語彙 {{DEFAULTSORT:そうるい}} [[カテゴリ:藻類学|*そうるい]] [[カテゴリ:生物|*そうるい]] egrz5b721xciw4819xj5ljw4yxv3t6w inferir 0 172179 2281329 1526556 2026-06-09T11:39:10Z Kuroco2k 84207 2281329 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[inferre|īnferre]]'' ==={{verb}}=== {{es-verb|infer|ir|pres=infiero}} #[[推量]]する。 ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{rel}}==== * [[inferencia]] ---- =={{pt}}== ==={{verb}}=== {{pt-verb|inf|erir}} #[[推量]]する。 {{pt-conj|inf|erir}} qxj9srvk79bok2sl6whltpghyggbdrh situar 0 173144 2281346 1394052 2026-06-09T11:43:24Z Kuroco2k 84207 2281346 wikitext text/x-wiki =={{ca}}== ==={{etym}}=== {{etyl|ML.|cat}} ''[[situare]]'' ==={{verb}}=== {{ca-verb|ar|situ}} #{{おくりがな2|置|お|く|おく}}。[[位置]]づける。 {{ca-conj-ar|situ}} ===={{drv}}==== * [[situar-se]] * [[situació]] ---- =={{es}}== ==={{verb}}=== {{es-verb|situ|ar|pres=sitúo}} #{{おくりがな2|置|お|く|おく}}。[[位置]]づける。 #[[投資]]する。 ===={{conjug}}==== {{es-conj|<ú>}} ===={{syn}}==== *(語義1) [[ubicar]], [[localizar]] ---- =={{pt}}== ==={{etym}}=== {{etyl|lat|por}} ''[[situs]]'' ==={{verb}}=== {{pt-verb|situ|ar}} #{{おくりがな2|置|お|く|おく}}。[[位置]]づける。 {{pt-conj|situ|ar}} 0jkzktttpwfyhfetrgt8t4w44txxljp confiar 0 173606 2281265 2016680 2026-06-09T11:12:43Z Kuroco2k 84207 2281265 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} *''confidare'' < {{m|la|cōnfīdere}} ==={{verb}}=== {{es-verb|confi|ar|pres=confío}} #[[信用]]する、[[信頼]]する。 #{{おくりがな2|委|ゆだ|ねる|ゆだねる}}。 ===={{conjug}}==== {{es-conj|<í>}} ===={{drv}}==== * [[desconfiar]] ===={{rel}}==== * [[fiar]] * [[confianza]] * [[confiado]] * [[confidente]] ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} ''confiar'' < {{etyl|la|pt}} *''confidare'' < {{m|la|cōnfīdere}} ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|kõ.fi.ˈaɾ|kõ.ˈfjaɾ}} * {{hyphenation|con|fi|ar}} ==={{verb}}=== {{pt-verb|confi|ar}} #{{おくりがな2|委|ゆだ|ねる|ゆだねる}}。 #{{おくりがな2|頼|たよ|る|たよる}}、[[信頼]]する。 {{pt-conj|confi|ar}} 22hhqokiav1l8bgulabsp1z7fd5ysde bhūmi 0 173655 2280959 1549136 2026-06-08T14:29:44Z M-30722 1202 2280959 wikitext text/x-wiki {{DEFAULTSORT:bhumi}} =={{L|pi}}== ===語源=== * {{etyl|sa|-}} {{l|sa|भूमि|tr=bhūmi-}}を参照。 ===名詞=== {{head|pi|noun|g=f}} # [[大地]]、{{l|ja|地}}。 ====類義語==== * {{l|pi|paṭhavī}}, [[bhū]], [[mahī]], [[medinī]] ====派生語==== {{rel-top|名詞}} * {{l|pi|bhūmikampa}} * {{l|pi|bhūmikama|g=m}} * {{l|pi|bhūmicāla}} * {{l|pi|bhūmidevatā|g=f}} * {{l|pi|bhūminānatta|g=n}} * {{l|pi|bhūmipappaṭaka|g=m}} * {{l|pi|bhūmipāla|g=m}} {{rel-bottom}} 形容詞: * {{l|pi|bhūmiladdha}} 分類不明: * {{l|pi|bhūmiladdhuppanna}} ====関連語==== 名詞: * {{l|pi|bhū|g=f}} * {{l|pi|bhūma|g=m}} * {{l|pi|bhūri|g=f}} 形容詞: * {{l|pi|bhūmaka}}, {{l|pi|bhūmika}} ===={{comp}}==== *[[suvaṇṇabhumi]](>{{th}}:[[สุวรรณภูมิ]]) === 参考 === * [[w:水野弘元|水野弘元]]『増補改訂パーリ語辞典』春秋社、2009年。ISBN 4-393-10156-1 g1j67lzgfnhovyk32g99k3tzajufwq7 カテゴリ:リトアニア語 動物 14 174101 2281155 1595865 2026-06-09T06:34:18Z 鍼灸 112313 2281155 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{lt}}|{{lt}}_科学|disp4=科学|{{lt}}_自然科学|disp5=自然科学|{{lt}}_生物学|disp6=生物学|{{lt}}_動物学|disp7=動物学|last=動物}} * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|動物|last={{lt}}}} </div> [[カテゴリ:{{lt}}_動物学|*とうふつ]] [[カテゴリ:{{lt}}_生物|*とうふつ]] [[カテゴリ:動物|りとあにあこ]] e7mllpmxg4fmc87dnk45f6v10045eta diluir 0 175848 2281277 1526858 2026-06-09T11:20:13Z Kuroco2k 84207 2281277 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[diluere]]'' ==={{verb}}=== {{es-verb|dilu|ir|pres=diluyo}} [[Category:{{es}}_化学]] #{{おくりがな2|薄|うす|める|うすめる}}。[[希釈]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * [[desleír]], [[disolver]] ---- =={{pt}}== ==={{verb}}=== {{pt-verb|dil|uir}} [[Category:{{pt}}_化学]] #{{おくりがな2|薄|うす|める|うすめる}}。[[希釈]]する。 {{pt-conj|dil|uir}} e7r6roycugwckfw2g5a2h4geltlt5pg solver 0 176058 2281345 1526872 2026-06-09T11:43:24Z Kuroco2k 84207 2281345 wikitext text/x-wiki =={{en}}== ==={{etym}}=== {{-er|solve}} ==={{noun}}=== {{en-noun}} #{{おくりがな2|解|と|く|とく}}人・物。[[解決]]する人・物。 ===アナグラム=== * [[lovers]] ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[solvere]]'' ==={{verb}}=== {{es-verb|solv|er|pres=suelvo|part=suelto}} #{{context|obsolete|lang=es}}{{おくりがな2|解|と|く|とく}}。[[解決]]する。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{syn}}==== * [[resolver]] ===={{rel}}==== * {{l|es|suelto}} * {{l|es|soltar}} ==={{seealso}}=== * [[resolver]] * [[solucionar]] mzurxhbfuphuxgn9ednd2jroabr9x6y creer 0 176508 2281256 1657247 2026-06-09T11:12:41Z Kuroco2k 84207 2281256 wikitext text/x-wiki {{also|créer}} =={{L|ast}}== ==={{verb}}=== {{ast-verb}} #[[creyer]]の異綴。 ---- =={{L|roa-opt}}== ==={{etym}}=== {{etyl|la|roa-opt}} {{m|la|crēdere}} < {{etyl|ine-pro|roa-opt}} {{m|ine-pro|*ḱred dʰeh₁-}} ==={{pron}}=== * {{IPA|lang=roa-opt|kɾeˈeɾ}} ==={{verb}}=== {{head|roa-opt|verb}} #[[信じる]]。 ===={{desc}}==== *{{gl}}: {{l|gl|crer}} *{{pt}}: {{l|pt|crer}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|crēdere}} ==={{pron}}=== * {{IPA|lang=es|kɾeˈeɾ}} ==={{verb}}=== {{es-verb|cre|er|part=creído}} #{{context|transitive|lang=es}}[[信じる]]。 #{{context|transitive|lang=es}}{{おくりがな2|思|おも|う|おもう}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[credibilidad]] * [[crédito]] * [[creencia]] * [[creíble]] * [[creído]] * [[creyente]] ==={{seealso}}=== * [[pensar]] * [[opinar]] ---- =={{L|la}}== ==={{verb}}=== {{la-verb-form|creer}} #[[creare|creāre]]の接続法所相現在第一人称単数形。 kuzmt8t8mr1k0w3zj8aws8bjk0m8jb3 incluir 0 177174 2281333 2224939 2026-06-09T11:39:11Z Kuroco2k 84207 2281333 wikitext text/x-wiki {{also|incluír}} =={{ast}}== ==={{alter}}=== * {{l|ast|incluyir}} ==={{etym}}=== {{etyl|lat|ast}} ''[[includere|inclūdere]]'' ==={{verb}}=== {{ast-verb}} #{{おくりがな2|含|ふく|める|ふくめる}}。 ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[includere|inclūdere]]'' ==={{verb}}=== {{es-verb|inclu|ir|pres=incluyo}} #{{おくりがな2|含|ふく|める|ふくめる}}。 ===={{conjug}}==== {{es-conj}} ---- =={{pt}}== ==={{etym}}=== {{etyl|lat|por}} ''[[includere|inclūdere]]'' ==={{verb}}=== {{pt-verb||incluir}} #{{おくりがな2|含|ふく|める|ふくめる}}。 {{pt-conj||incluir}} quwaslb2udg9me4y3u93q1wehftbfb6 diferir 0 182453 2281279 1527397 2026-06-09T11:20:13Z Kuroco2k 84207 2281279 wikitext text/x-wiki =={{es}}== ==={{verb}}=== {{es-verb|difer|ir|pres=difiero}} #{{context|transitive|lang=es}}[[延期]]する。 #{{context|intransitive|lang=es}}{{おくりがな2|異|こと|なる|ことなる}}。{{おくりがな2|違|ちが|う|ちがう}}。 ===={{conjug}}==== {{es-conj|<ie-i>}} ---- =={{pt}}== ==={{alter}}=== * {{l|pt|differir}} (廃用) ==={{etym}}=== {{etyl|lat|por}} ''[[differre]]'' ==={{pron|por}}=== * {{a|PT}} {{IPA|difɨˈɾiɾ}} ==={{verb}}=== {{pt-verb|dif|erir}} #{{context|transitive|lang=pt}}[[延期]]する。 #{{context|intransitive|lang=pt}}{{おくりがな2|異|こと|なる|ことなる}}。{{おくりがな2|違|ちが|う|ちがう}}。 {{pt-conj|dif|erir}} rbeiunnhc3ld6yvyae83fwjokr39dyk fabricar 0 184550 2281309 1863017 2026-06-09T11:30:31Z Kuroco2k 84207 2281309 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|fabricāre}} ==={{verb}}=== {{ca-verb|ar|fabric}} #{{おくりがな2|作|つく|る|つくる}}、[[製作]]する、[[製造]]する。 {{ca-conj-ar|fabric}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|fabricāre}} ==={{verb}}=== {{es-verb|fabric|ar|pret=fabriqué}} #{{おくりがな2|作|つく|る|つくる}}、[[製作]]する、[[製造]]する。 #{{おくりがな2|建|た|てる|たてる}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * [[fábrica]] * [[fabricación]] * [[fabricado]] * [[fabricante]] ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|fabricāre}} ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|fɐ.βɾi.ˈkaɾ}} * {{hyphenation|fa|bri|car}} ==={{verb}}=== {{pt-verb|fabri|car}} #{{おくりがな2|作|つく|る|つくる}}、[[製作]]する、[[製造]]する。 {{pt-conj|fabri|car}} fpjlkebqbk8sx3y4b0dzzktfi28xwrd tranquilizar 0 186399 2281298 1155848 2026-06-09T11:25:32Z Kuroco2k 84207 2281298 wikitext text/x-wiki =={{es}}== ==={{verb}}=== {{es-verb|tranquiliz|ar|pret=tranquilicé}} #[[おちつく|落ち着か]]せる。 #[[沈静]]化する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * [[calmar]] ===={{rel}}==== * [[tranquilizante]] * [[tranqui]] ---- =={{pt}}== ==={{verb}}=== {{pt-verb|tranquiliz|ar}} #[[おちつく|落ち着か]]せる。 #[[沈静]]化する。 ===={{conjug}}==== {{pt-conj|tranquiliz|ar}} ===={{syn}}==== * {{l|pt|acalmar}} rmi235tip9h9ejmckf7edxpg8g5k2ql descender 0 187481 2281283 1701246 2026-06-09T11:20:14Z Kuroco2k 84207 2281283 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{-er|descend}} ==={{pron}}=== * {{a|UK}} {{IPA|lang=en|dɪˈsɛndə(ɹ)}} * {{rhymes|ɛndə(ɹ)}} ==={{noun}}=== {{en-noun}} #{{おくりがな2|降|お|りる|おりる}}人。降りる物。 #{{context|typography|lang=en}}[[デセンダー]]。 ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|dēscendere}} ==={{verb}}=== {{es-verb|descend|er|pres=desciendo}} #{{おくりがな2|降|お|りる|おりる}}、{{おくりがな2|下|くだ|る|くだる}}。 ===={{conjug}}==== {{es-conj|<ie>}} ===={{rel}}==== * [[descendiente]] * [[descendente]] * [[descendencia]] * [[descenso]] ---- =={{L|pt}}== ==={{alter}}=== * {{l|pt|decender}} (廃用) ==={{etym}}=== {{etyl|la|pt}} {{m|la|dēscendere}} ==={{verb}}=== {{pt-verb|descend|er}} #{{context|intransitive+|lang=pt}}{{おくりがな2|降|お|りる|おりる}}、{{おくりがな2|下|くだ|る|くだる}}。 #('''[[de]]'''を伴って)[[遺伝]]する。 #('''de'''を伴って){{おくりがな3|受|う|け|継|つ|が|うけつぐ}}れる。 {{pt-conj|descend|er}} ===={{syn}}==== * {{l|pt|descer}}, {{l|pt|baixar}} 9x9rke565h1oqeb668b2esrha7b5ofi penalizar 0 189953 2281374 1551703 2026-06-09T11:51:12Z Kuroco2k 84207 2281374 wikitext text/x-wiki =={{es}}== ==={{verb}}=== {{es-verb|penaliz|ar|pret=penalicé}} #{{context|transitive+|lang=es}}[[罰]]する。[[処罰]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== {{top}} * {{l|es|penable}} * {{l|es|penal}} * {{l|es|penalidad}} * {{l|es|penalista}} * {{l|es|penalización}} * {{l|es|penalmente}} * {{l|es|penalti}} * {{l|es|penar}} {{bottom}} ---- =={{pt}}== ==={{verb}}=== {{pt-verb|penaliz|ar}} #{{context|transitive+|lang=pt}}[[罰]]する。[[処罰]]する。 {{pt-conj|penaliz|ar}} auwqj0433cd7n6n7wplv1is6hbmd7ec seducir 0 192393 2281348 1853652 2026-06-09T11:43:25Z Kuroco2k 84207 2281348 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|sēdūcere}} ==={{pron}}=== * {{a|Latin America}} {{IPA|lang=es|[seðuˈsiɾ]}} * {{a|Castilian}} {{IPA|[seðuˈθiɾ]}} ==={{verb}}=== {{es-verb|seduc|ir|pres=seduzco|pret=seduje}} #[[誘惑]]する、[[魅惑]]する、{{おくりがな2|唆|そそのか|す|そそのかす}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|seducción}} * {{l|es|seductor}} jsuuzmekjg4np6ekc8nq7dddwl251xy implicar 0 193933 2281334 1433448 2026-06-09T11:39:11Z Kuroco2k 84207 2281334 wikitext text/x-wiki =={{gl}}== ==={{etym}}=== {{etyl|lat|glg}} ''[[implicare|implicāre]]'' ==={{verb}}=== {{gl-verb|implic|ar|pret=impliquei}} #{{おくりがな3|巻|ま|き|添|ぞ|え|まきぞえ}}にする。 #[[含蓄]]する。[[暗示]]する。 {{gl-conj-car|implic|impliqu}} ---- =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[implicare|implicāre]]'' ==={{verb}}=== {{es-verb|implic|ar|pret=impliqué}} #{{おくりがな3|巻|ま|き|添|ぞ|え|まきぞえ}}にする。 #[[含蓄]]する。[[暗示]]する。 ===={{conjug}}==== {{es-conj}} ---- =={{pt}}== ==={{verb}}=== {{pt-verb|impli|car}} #{{おくりがな3|巻|ま|き|添|ぞ|え|まきぞえ}}にする。 #[[含蓄]]する。[[暗示]]する。 {{pt-conj|impli|car}} tb81caq3smemiqkroq653v4ns08eu2u 職分 0 195745 2280933 2278032 2026-06-08T13:53:07Z M-30722 1202 2280933 wikitext text/x-wiki {{kana-DEFAULTSORT|しょくぶん}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|しょく|ぶん|yomi=o}} ==={{pron}}=== {{ja-pron|しょくぶん|acc=2}} ==={{noun}}=== {{ja-noun|[[しょくぶん]]}} #その[[職務]]に[[つく|就い]]ている者が[[当然]]しなければならない事。 #{{タグ|ja|職業}}[[能楽師]]。 =={{L|zh}}== {{zh-cat|zhi2fen4|名詞}} {{yue-cat|jik1fan6|名詞}} {{nan-cat|chit4hun7|名詞}} ==={{pron}}=== {{cmn-pron|zhífèn}} {{yue-pron|zik1 fan6}} {{nan-pron|ml,tw:chit-hūn}} ==={{noun}}=== {{zhchars|s=职分}} #職分、[[職責]]。 #[[官職]]。 =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|직분}} #職分、[[役目]]。 =={{L|vi}}== ==={{noun}}=== {{vi-head|noun|chức|phận}} #職分、[[本分]]。 ianxb3kvx6xkjmt8hsop3i339279utz 食分 0 195752 2280934 2225347 2026-06-08T13:54:14Z M-30722 1202 2280934 wikitext text/x-wiki {{kana-DEFAULTSORT|しょくぶん}} {{also|蝕分}} =={{L|ja}}== {{ja-kanjitab|しょく|ぶん|yomi=o}} ==={{pron}}=== {{ja-pron|しょくぶん|acc=0}} ==={{noun}}=== {{ja-noun|[[しょくぶん]]}} #{{タグ|ja|天文学}}[[日食]]・[[月食]]で、[[太陽]]・[[つき|月]]の[[かける|欠け]]た[[部分]]の[[わりあい|割合]]。 4lo42iydfgztsthnh4qgqld08bt87ht しょくぶん 0 195753 2280935 1489616 2026-06-08T13:54:42Z M-30722 1202 2280935 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[職分]]】①その[[職務]]に[[つく|就い]]ている者が[[当然]]しなければならない事。②[[能楽師]]。 *【[[食分]]】[[日食]]・[[月食]]で、[[太陽]]・[[つき|月]]の[[かける|欠け]]た[[部分]]の[[わりあい|割合]]。 27gvohj5h8nakfib3eg5ooe5egr74j9 職掌 0 195761 2280916 2278019 2026-06-08T13:38:24Z M-30722 1202 2280916 wikitext text/x-wiki {{kana-DEFAULTSORT|しょくしょう}} =={{L|ja}}== {{ja-kanjitab|しょく|しょう|yomi=o}} ==={{pron}}=== {{ja-pron|しょくしょう|acc=0}} {{ja-accent-common|region=京阪|h||しょくしょー}} ==={{noun}}=== {{ja-noun-suru|[[しょくしょう]]}} #[[担当]]する[[しごと|仕事]]。 =={{L|zh}}== {{zh-cat|zhi2zhang3|名詞|動詞}} ==={{pron}}=== {{cmn-pron|zhízhǎng|h=y}} ==={{noun}}=== {{zhchars|s=职掌}} #職掌。[[職務]]。[[職分]]。 ==={{verb}}=== {{zhchars|s=职掌}} #職務として[[担当]]する。 gmm3y4szungg6rzvhyupm7amgidj8st 微風 0 199527 2281157 1490012 2026-06-09T06:35:53Z Jiba1219 100610 2281157 wikitext text/x-wiki {{kana-DEFAULTSORT|びふう}} =={{L|ja}}== {{ja-kanjitab|び|ふう|yomi=kanon,goon}} ==={{pron}}=== {{ja-pron|びふう|acc=0|acc_ref=DJR,NHK,SMK5}} ==={{noun}}=== {{ja-noun|[[びふう]]|[[そよかぜ]]}} #[[かすか]]に[[ふく|吹く]][[かぜ|風]]。 ===脚注=== {{Reflist}} =={{L|zh}}== [[Category:{{zh}}|wei1feng1]] ==={{pron}}=== {{cmn-pron|wēifēng|wéifēng}} {{yue-pron|mei4 fung1}} {{nan-pron|xm,tw:bî-hong}} ==={{noun}}=== [[Category:{{zh}}_{{noun}}|wei1feng1]] [[Category:{{zh}}_風|wei1feng1]] {{zhchars|s=微风}} #(日本語に同じ)微風。[[そよかぜ|そよ風]]。 [[Category:{{yue}}|mei4fung1]] [[Category:{{yue}}_{{noun}}|mei4fung1]] [[Category:{{yue}}_風|mei4fung1]] [[Category:{{nan}}|bi5hong1]] [[Category:{{nan}}_{{noun}}|bi5hong1]] [[Category:{{nan}}_風|bi5hong1]] =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|미풍|cat2=風}} #(日本語に同じ)微風。[[そよかぜ|そよ風]]。 81hv7s9c0zopq6mvh26blev2qu671p1 たいしゃ 0 203259 2281195 1711777 2026-06-09T09:47:56Z うーむ 129171 /* */ 2281195 wikitext text/x-wiki {{DEFAULTSORT:たいしや}} {{also|だいしゃ|だいじゃ}} =={{ja}}== [[Category:{{ja}}]] ==={{homonym}}=== [[Category:{{ja}}_同音異義]] '''{{PAGENAME}}''' *【[[大社]]】名高い神社。 *【[[代謝]]】[[新陳代謝]]の略称。 *【[[退社]]】[[会社]]を辞めること。 *【[[代赭]]】[[代赭色]]の略称。 *【[[大赦]]】[[恩赦]]の一種。 *【[[大射]]】[[射礼]]。 *【[[対者]]】[[あいて|相手]]。 cpw3y3n28ls6y7scrkhof01iebkslfw invenir 0 215392 2281322 1530638 2026-06-09T11:39:08Z Kuroco2k 84207 2281322 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[invenire|invenīre]]'' ==={{verb}}=== {{es-verb|inven|ir|pres=invengo|pret=invine}} #{{おくりがな3|見|み||付|つ|ける|みつける}}。[[発見]]する。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{rel}}==== * {{l|es|invención}} olw336egq5ni4d4hlsmsxhuk3s53u1b 風紀 0 216579 2281163 1493251 2026-06-09T06:52:24Z Jiba1219 100610 2281163 wikitext text/x-wiki {{kana-DEFAULTSORT|ふうき}} =={{L|ja}}== ==={{pron}}=== {{ja-pron|ふうき|acc=1|acc_ref=DJR}} ==={{noun}}=== {{ja-noun|[[ふうき]]}} #[[社会秩序]]を[[たもつ|保つ]]ために[[必要]]な[[規律]]。 ===脚注=== {{Reflist}} =={{L|zh}}== [[Category:{{zh}}|feng1ji4]] ==={{pron}}=== {{cmn-pron|fēngjì}} {{yue-pron|fung1 gei2}} {{nan-pron|hong-kí}} ==={{noun}}=== [[Category:{{zh}}_{{noun}}|feng1ji4]] {{zhchars|s=风纪}} #(日本語に同じ)風紀。 [[Category:{{yue}}|fung1gei2]] [[Category:{{yue}}_{{noun}}|fung1gei2]] [[Category:{{nan}}|hong1ki2]] [[Category:{{nan}}_{{noun}}|hong1ki2]] =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|풍기}} #(日本語に同じ)風紀。 ngz300cb76nh0yez8taz38st6k2bhiq avanzar 0 221206 2281238 1676141 2026-06-09T11:03:36Z Kuroco2k 84207 2281238 wikitext text/x-wiki =={{es}}== ==={{verb}}=== {{es-verb|avanz|ar|pret=avancé}} #{{おくりがな2|進|すす|む|すすむ}}。[[前進]]する。前進させる。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|avance|g=m}} * {{l|es|avanzadilla|g=f}} 1bvnrv0jnrpq5a9zu14fjsgptxrs3n9 pungir 0 225677 2281365 1531869 2026-06-09T11:51:10Z Kuroco2k 84207 2281365 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|lat|spa}} ''[[pungere]]'' ==={{verb}}=== {{es-verb|pung|ir|pres=punjo}} #{{おくりがな2|刺|さ|す|さす}}。{{おくりがな2|突|つ|く|つく}}。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{rel}}==== * {{l|es|pungente}} * {{l|es|punto}} * {{l|es|punzar}} 9hiy52i9xsbzl9pykoctqik3jmtxn4m 𮍉 0 228446 2280927 1848172 2026-06-08T13:47:18Z KashiDisco 119947 /* 字源 */ 2280927 wikitext text/x-wiki {{デフォルトソート:U+2E349}} ==漢字== [[file:U2e349.svg|100px|right]] <span lang="ja" xml:lang="ja" style="font-size:350%">&#x2E349;</span> *{{部首|肉|15}} *{{総画|21}} ===字源=== * 「[[膷]]」の字音が失われ、字体の訛変を経た日本製の[[異体字]]。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一三~二〇頁。</ref> ====参考文献==== <references group="字源" /> ===意義=== #「[[うし|牛]]の[[あつもの|羹]]」の[[意]]。牛を[[にこむ|煮込ん]]だ[[あつい|熱い]][[しるもの|汁物]]。 =={{L|ja}}== [[カテゴリ:{{ja}}|うしのあつもの]] ==={{pron}}=== * 音読み *:無し * 訓読み *: うしのあつもの ==文字情報== ===文字コード=== {{codepoint}} [[カテゴリ:漢字]] [[カテゴリ:日本の国字]] [[カテゴリ:Unicode CJK Unified Ideographs Extension F]] gj1c6qs2pxfw3nzbhi1jk1kj6ozuide 2280936 2280927 2026-06-08T13:55:56Z M-30722 1202 2280936 wikitext text/x-wiki ==漢字== {{kanji|肉|15}} ===字源=== * 「[[膷]]」の字音が失われ、字体の訛変を経た日本製の[[異体字]]。<ref group="字源">笹原宏之「国字(日本製漢字)と誤認されてきた唐代の漢字──佚存文字に関する考察──」沈国威、内田慶市編著『東アジア言語接触の研究』関西大学出版部、2016年、一三~二〇頁。</ref> ====参考文献==== <references group="字源" /> ===意義=== #「[[うし|牛]]の[[あつもの|羹]]」の[[意]]。牛を[[にこむ|煮込ん]]だ[[あつい|熱い]][[しるもの|汁物]]。 =={{L|ja}}== {{ja-kanji|訓=うしのあつもの|国=1}} =={{コード}}== {{文字コード}} 6v2c16005zztxrfhx710mqyf8esq980 カテゴリ:ウイルス 14 235043 2280931 1318444 2026-06-08T13:48:30Z 鍼灸 112313 2280931 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|微生物学|ウイルス学}} *{{Pathnav|カテゴリ|分野|自然|生物}} </div> {{DEFAULTSORT:ういるす}} [[カテゴリ:ウイルス学|*ういるす]] [[カテゴリ:生物|*ういるす]] [[カテゴリ:分野の一覧]] 32hhxlrsbczyv05w3im5x9ud277tzvn 等分 0 245811 2281139 1497298 2026-06-09T06:11:04Z Jiba1219 100610 2281139 wikitext text/x-wiki =={{L|ja}}== ==={{pron}}=== {{ja-pron|とうぶん|acc=0|acc_ref=NHK}} ==={{noun}}=== {{ja-noun-suru|[[とうぶん]]}} #[[ひとしい|等しい]][[分量]]に[[わける|分ける]]こと。また、その分量。 ==={{verb}}=== {{日本語サ変活用}} ===脚注=== {{Reflist}} =={{L|zh}}== [[Category:{{zh}}|deng3fen1]] ==={{pron}}=== {{cmn-pron|děngfēn}} {{yue-pron|dang2 fan1}} {{nan-pron|téng-hun}} ==={{verb}}=== [[Category:{{zh}}_{{verb}}|deng3fen1]] {{zhchars}} #等分する。 [[Category:{{yue}}|dang2fan1]] [[Category:{{yue}}_{{verb}}|dang2fan1]] [[Category:{{nan}}|teng2hun1]] [[Category:{{nan}}_{{verb}}|teng2hun1]] =={{L|ko}}== ==={{noun}}=== {{ko-head|noun|등분}} #等分。 #[[等級]]の[[区分]]。 70d30dem5zqshc7o3aepo1p9wx6whuk molestation 0 265034 2281019 1776255 2026-06-08T16:33:05Z M-30722 1202 2281019 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{etyl|fro}} ''[[molestacion]]'' < {{etyl|la}} ''[[molestatio]]'' ==={{pron}}=== * {{a|UK}} {{IPA|lang=en|mɒlɪˈsteɪʃən|ˌməʊlɪˈsteɪʃən}} * {{a|US}} {{enPR|mō'lĕstāʹshən}}, {{IPA|lang=en|ˌmoʊlɪˈsteɪʃən}} * {{音声|en|LL-Q1860 (eng)-VCcortex-molestation.wav|a=米}} ==={{noun}}=== {{en-noun|s|-}} #{{タグ|en|犯罪|性}}[[性的]][[いたずら]]。[[痴漢]][[行為]]。 tof0xgm0nml9wetov9dpmxmr2o8f0v9 surtaxer 0 269219 2281165 1428613 2026-06-09T06:55:19Z Jiba1219 100610 2281165 wikitext text/x-wiki =={{L|fr}}== ==={{etym}}=== {{prefix|sur|taxer|lang=fr}} ==={{pron}}=== * {{IPA|syʁ.tak.se|lang=fr}} ==={{verb}}=== {{fr-verb}} #{{context|legal|lang=fr}}[[付加税]]を[[課]]する。 {{fr-conj-auto}} emllbkhbfgzae4v0jje3qfphjfo0qam modelar 0 278840 2281201 1397467 2026-06-09T10:42:16Z Kuroco2k 84207 2281201 wikitext text/x-wiki =={{ca}}== ==={{verb}}=== {{ca-verb|ar|model}} #[[模型]]を{{おくりがな2|作|つく|る|つくる}}。 {{ca-conj-ar|model}} ===={{rel}}==== * {{l|ca|model}} * {{l|ca|modelatge}} ---- =={{gl}}== ==={{verb}}=== {{gl-verb|model|ar}} #[[模型]]を{{おくりがな2|作|つく|る|つくる}}。 {{gl-conj-ar|model}} ---- =={{es}}== ==={{etym}}=== {{suffix+|modelo|ar|lang=spa}} ==={{verb}}=== {{es-verb|model|ar}} #[[模型]]を{{おくりがな2|作|つく|る|つくる}}。 ===={{conjug}}==== {{es-conj}} ---- =={{pt}}== ==={{etym}}=== {{suffix+|modelo|ar|lang=por}} ==={{verb}}=== {{pt-verb|model|ar}} #[[模型]]を{{おくりがな2|作|つく|る|つくる}}。 {{pt-conj|model|ar}} fycarqvy9iczystpm8u0g6ttw0z00p8 𡱖 0 281071 2280913 2280137 2026-06-08T13:33:52Z KashiDisco 119947 /* 字源 */ 2280913 wikitext text/x-wiki {{wikipedia|つび}} {{kana-DEFAULTSORT|くぼ}} ==漢字== {{kanji|尸|6}} ===字源=== *[[形声文字|形声]]。「[[尸]]」 + [[音符]]「[[朱]]」。<ref>『{{w|新撰字鏡}}』に「[[朱]]音」とある。</ref> **日本の[[国字]]とされてきたが、敦煌で発見された『天地陰陽交歓大楽賦』に同義で使われていることが発見された<ref>笹原宏之 著「国字(日本製漢字)と誤認されてきた唐代の漢字—供存文字に関する考察—」、沈国威、内田慶市 編『東アジア言語接触の研究』関西大学出版部〈関西大学東西学術研究所研究叢刊51〉、2016年2月</ref>。 ===意義=== #[[女性器]]。 =={{L|ja}}== {{ja-kanji|訓=くぼ,つび}} =={{コード}}== {{文字コード|jis=2-08-16|mj={{mjmoji|034343}}|gb=9537E230|cns=10-3B67|全={{全字庫|670567}}}} {{字典|新潮漢字=2705|新字源=2425}} ==脚注== <references/> f6rpjj75utfgb1ctahieno7e2qrowtd Wiktionary:おしらせ 4 288488 2281041 2279651 2026-06-08T21:30:08Z MediaWiki message delivery 27247 /* Tech News: 2026-24 */ 新しい節 2281041 wikitext text/x-wiki このページは、ウィクショナリー日本語版の利用者に告知や意見募集を行うページです。ウィキメディア全体およびウィクショナリー日本語版全体に関わるようなものから、各トークページにおける議論へのコメント募集まで、様々なお知らせに使われます。Tech Newsのようなニュースレターもここに配布されています。 {{利用者:ArchiverBot/config |archive = Wiktionary:おしらせ/%(year)d |algo = old(90d) |counter = 1 |minthreadsleft = 2 |minthreadstoarchive = 2 |archiveheader = {{Archives|Wiktionary:おしらせ}} }}{{過去ログbox |search=yes |content=<div class="hlist"> [[/2020|2020]] / [[/2021|2021]] / [[/2022|2022]] / [[/2023|2023]] / [[/2024|2024]] / [[/2025|2025]] / [[/2026|2026]] </div>}} 注意事項:掲載にあたって特別な許可や申請は要りません。新たなお知らせをするときは、新たな節 <code><nowiki>==○○==</nowiki></code> を作って投稿してください。お知らせ文の最後には署名 <code><nowiki>--~~~~</nowiki></code> をお願いします。掲載は投稿から90日を過ぎると過去ログ化され、このページから除去されます。議論や話し合い自体を立ち上げたいときは[[Wiktionary:編集室]]も利用できます。 {{lang|en|This page provides various announcements for Japanese Wiktionary. For example, calling for the participation in discussion on Meta-Wiki and delivery of Newsletters such as Tech News and Editting News are done here. Anyone can post such an announcement. If you want to discuss something with Japanese Wiktionary users rather than just informing, you can use [[Wiktionary:編集室]].}} <p style="text-align:center;font-weight:bold;font-size:larger" class="plainlinks">[{{fullurl:Wiktionary:おしらせ|action=edit&section=new}} 新しいお知らせを投稿する/{{lang|en|Post a new announcement}}]</p> __TOC__ == <span lang="en" dir="ltr">Tech News: 2026-11</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W11"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/11|Translations]] are available. '''Weekly highlight''' * [[m:Special:MyLanguage/Tech/Server switch|All wikis will be read-only]] for a few minutes on Wednesday, 25 March 2026 at [https://zonestamp.toolforge.org/1774450800 15:00 UTC]. This is for the datacenter server switchover backup tests, [[wikitech:Deployments/Yearly calendar|which happen twice a year]]. During the switchover, all Wikimedia website traffic is shifted from one primary data center to the backup data center to test availability and prevent service disruption even in emergencies. * Last week, all wikis had 2 hours of read-only time, and extended unavailability for user-scripts and gadgets. This was due to a security incident which has since been resolved. Work is ongoing to prevent re-occurrences. For current information please see the [[m:Steward's noticeboard#Statement on Meta about today's user script security incident|post on the Stewards' noticeboard]] ([[m:Special:MyLanguage/Wikimedia Foundation/Product and Technology/Product Safety and Integrity/March 2026 User Script Incident|translations]]). '''Updates for editors''' * Users facing multiple blocks on mobile will now see the reasons for each block separately, instead of a generic message. This helps them understand why they are blocked and what steps they can take to resolve the issue. For example, users affected for using common VPNs (such as [[Special:MyLanguage/Apple iCloud Private Relay|iCloud Private Relay]]) will receive clearer guidance on what they need to do to start editing again. [https://phabricator.wikimedia.org/T357118] * Later this week, [[mw:Special:MyLanguage/VisualEditor/Suggestion Mode|Suggestion Mode]] will become available as a beta feature within the visual editor at all Wikipedias. This feature proactively suggests various types of actions that people can consider taking to improve Wikipedia articles, and learn about related guidelines. The feature is locally configurable, and can also be locally expanded with custom Suggestions. Current settings can be seen at [[Special:EditChecks]] and there are [[mw:Special:MyLanguage/Help:Suggestion mode#For administrators %E2%80%93 local customization|instructions for how administrators can customize]] the links to point to local guidelines. The feature is connected to [[mw:Special:MyLanguage/Help:Edit check|Edit check]] which suggests improvements while someone is writing new content. In the future, the Editing team plans to evaluate the feature's impact with newcomers through a controlled experiment. [https://phabricator.wikimedia.org/T404600] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:23}} community-submitted {{PLURAL:23|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the issue where the cursor became misaligned during the use of CodeMirror’s syntax highlighting, which makes wikitext and code easier to read, has now been fixed. This problem specifically affected users who defined a font rule in a custom stylesheet while creating a new topic with DiscussionTools. [https://phabricator.wikimedia.org/T418793] '''Updates for technical contributors''' * API rate limiting update: To help ensure [[mw:Special:MyLanguage/MediaWiki Product Insights/Responsible Reuse|fair use of infrastructure]], global API rate limits will be applied this week to requests without a compliant User-Agent that originate from outside Toolforge/WMCS and to unauthenticated requests made from web browsers. Higher limits will be applied to identified traffic in April. Bots running in Toolforge/WMCS or with the bot user right on any wiki should not be affected for now. However, all developers are advised to follow updated best practices. For more information, see [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits|Wikimedia APIs/Rate limits]]. * The new GraphQL API has been released. The API was developed as a flexible alternative to select features of the Wikidata Query Service (WDQS), to improve developer experience and foster adaptability, and efficient data access. Try it out and [[d:Wikidata:Wikibase GraphQL#Feedback and development|give feedback]]. You can also [https://greatquestion.co/wikimediadeutschland/GraphQLAPI/apply sign up for usability tests]. * The [[m:Special:MyLanguage/Product and Technology Advisory Council/Unsupported Tools Working Group|PTAC Unsupported Tools Working Group]] continued improvements to [[commons:Special:MyLanguage/Commons:Video2commons#|Video2Commons]] in February, with fixes addressing authentication errors, large-file handling, task queue visibility, and clearer upload behavior. Work is still ongoing in some areas, including changes related to deprecated server-side uploads. Read [[m:Special:MyLanguage/Product and Technology Advisory Council/Unsupported Tools Working Group#February 2026|this update]] to learn more. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.19|MediaWiki]] '''In depth''' * The Article Guidance team invites experienced Wikipedia editors from selected [[mw:Special:MyLanguage/Article guidance/Pilot wikis and collaborators#Collaborators|pilot wikis]] and interested contributors from other Wikipedias to fill out this questionnaire which is available in [https://docs.google.com/forms/d/e/1FAIpQLSfmLeVWnxmsCbPoI_UF2jyRcn73WRGWCVPHzerXb4Cz97X_Ag/viewform English], [https://docs.google.com/forms/d/e/1FAIpQLSd6rzr4XXQw8r4024fE3geTPFe13M_6w7Mitj-YJi0sOlWTAw/viewform?usp=header Arabic], [https://docs.google.com/forms/d/e/1FAIpQLSdok3-RfB18lcugYTUMGkpwmqG_8p760Wv4dCXitOXOszjUDw/viewform?usp=header Bengali], [https://docs.google.com/forms/d/e/1FAIpQLSfjTfYp4jEo0akA4B1e-Nfg3QZPCudUjhJzHzzDi6AHyAaMGA/viewform?usp=header Japanese], [https://docs.google.com/forms/d/e/1FAIpQLScteVoI29Aue4xc72dekk-6RYtvmMgQxzMI900UOawrFrSTWg/viewform?usp=header Portuguese], [https://docs.google.com/forms/d/e/1FAIpQLSetdxnYwL3ub2vqA7awCg5hJZPMIYcDPaiTe12rY9h0GYnVlw/viewform?usp=header Persian], and [https://docs.google.com/forms/d/e/1FAIpQLScNvfJF-Ot-4pzA4qAN771_0QDJ4Li19YcUsaTgSKW8Nc7U_Q/viewform?usp=header Turkish]. Your answers will help the team customize guidance for less experienced editors and help them learn community policies and practices while creating an article. Learn more [[mw:Special:MyLanguage/Article guidance|on the project page]]. '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/11|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W11"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年3月9日 (月) 18:53 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30213008 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-12</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W12"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/12|Translations]] are available. '''Updates for editors''' * The [[mw:Special:MyLanguage/Help:Extension:CodeMirror|{{int:codemirror-beta-feature-title}}]] beta feature, also known as [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror 6]], has been used for wikitext syntax highlighting since November 2024. It will be promoted out of beta by May 2026 in order to bring improvements and new [[mw:Special:MyLanguage/Help:Extension:CodeMirror#Features|features]] to all editors who use the standard syntax highlighter. If you have any questions or concerns about promoting the feature out of beta, [[mw:Special:MyLanguage/Help talk:Extension:CodeMirror|please share]]. [https://phabricator.wikimedia.org/T259059] * Some changes to local user groups are performed by stewards on Meta-Wiki and logged there only. Now, interwiki rights changes will be logged both on Meta-Wiki and the wiki of the target user to make it easier to access a full record of user's rights changes on a local wiki. Past log entries for such changes will be backfilled in the coming weeks. [https://phabricator.wikimedia.org/T6055] * On wikis using [[m:Special:MyLanguage/Flagged Revisions|Flagged Revisions]], the number of pending changes shown on [[{{#Special:PendingChanges}}]] previously counted pages which were no longer pending review, because they have been removed from the system without being reviewed, e.g. due to being deleted, moved to a different namespace, or due to wiki configuration changes. The count will be correct now. On some wikis the number shown will be much smaller than before. There should be no change to the list of pages itself. [https://phabricator.wikimedia.org/T413016] * Wikifunctions composition language has been rewritten, resulting in a new version of the language. This change aims to increase service stability by reducing the orchestrator's memory consumption. This rewrite also enables substantial latency reduction, code simplification, and better abstractions, which will open the door to later feature additions. Read more about [[f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|the changes]]. * Users can now sort search results alphabetically by page title. The update gives an additional option to finding pages more easily and quickly. Previously, results could be sorted by Edit date, Creation date, or Relevance. To use the new option, open 'Advanced Search' on the search results page and select 'Alphabetically' under 'Sorting Order'. [https://phabricator.wikimedia.org/T403775] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:28}} community-submitted {{PLURAL:28|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the bug that prevented UploadWizard on Wikimedia Commons from importing files from Flickr has now been fixed. [https://phabricator.wikimedia.org/T419263] '''Updates for technical contributors''' * A new special page, [[{{#special:LintTemplateErrors}}]], has been created to list transcluded pages that are flagged as containing lint errors to help users discover them easily. The list is sorted by the number of transclusions with errors. For example: [[{{#special:LintTemplateErrors}}/night-mode-unaware-background-color]]. [https://phabricator.wikimedia.org/T170874] * Users of the [[mw:Special:MyLanguage/Help:Extension:CodeMirror|{{int:codemirror-beta-feature-title}}]] beta feature have been using [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] instead of [[mw:Special:MyLanguage/Extension:CodeEditor|CodeEditor]] for syntax highlighting when editing JavaScript, CSS, JSON, Vue and Lua content pages, for some time now. Along with promoting CodeMirror 6 out of beta, the plan is to replace CodeEditor as the standard editor for these content models by May 2026. [[mw:Special:MyLanguage/Help talk:Extension:CodeMirror|Feedback or concerns are welcome]]. [https://phabricator.wikimedia.org/T419332] * The [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] JavaScript modules will soon be upgraded to CodeMirror 6. Leading up to the upgrade, loading the <code dir=ltr>ext.CodeMirror</code> or <code dir=ltr>ext.CodeMirror.lib</code> modules from gadgets and user scripts was deprecated in July 2025. The use of the <code dir=ltr>ext.CodeMirror.switch</code> hook was also deprecated in March 2025. Contributors can now make their scripts or gadgets compatible with CodeMirror 6. See the [[mw:Special:MyLanguage/Extension:CodeMirror#Gadgets and user scripts|migration guide]] for more information. [https://phabricator.wikimedia.org/T373720] * The MediaWiki Interfaces team is expanding coverage of REST API module definitions to include [[mw:Special:MyLanguage/API:REST API/Extensions|extension APIs]]. REST API modules are groups of related endpoints that can be independently managed and versioned. Modules now exist for [https://phabricator.wikimedia.org/T414470 GrowthExperiments] and [https://phabricator.wikimedia.org/T419053 Wikifunctions] APIs. As we migrate extension APIs to this structure, documentation will move out of the main MediaWiki OpenAPI spec and REST Sandbox view, and will instead be accessible via module-specific options in the dropdown on the [https://test.wikipedia.org/wiki/Special:RestSandbox REST Sandbox] (i.e., [[{{#Special:RestSandbox}}]], available on all wiki projects). * The [[mw:Special:MyLanguage/Extension:Scribunto|Scribunto]] extension provides different pieces of information about the wiki where the module is being used via the [[mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual|mw.site]] library. Starting last week, the library also provides a [[mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual#mw.site.wikiId|way]] of accessing the [[mw:Special:MyLanguage/Manual:Wiki ID|wiki ID]] that can be used to facilitate cross-wiki module maintenance. [https://phabricator.wikimedia.org/T146616] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.20|MediaWiki]] '''In depth''' * The [[m:Special:MyLanguage/Coolest Tool Award|2026 Coolest Tool Award]] celebrating outstanding community tools, is now open for nominations! Nominate your favorite tool using the [https://wikimediafoundation.limesurvey.net/435684?lang=en nomination survey] form by 23 March 2026. For more information on privacy and data handling, please see the [[foundation:Special:MyLanguage/Legal:Coolest_Tool_Award_2026_Survey_Privacy_Statement|survey privacy statement]]. '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/12|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W12"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年3月16日 (月) 19:35 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30260505 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-13</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W13"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/13|Translations]] are available. '''Weekly highlight''' * Wikimedia site users can now log in without a password using passkeys. This is a secure method supported by fingerprint, facial recognition, or PIN. With this change, all users who opt for passwordless login will find it easier, faster, and more secure to log in to their accounts using any device. The new passkey login option currently appears as an autofill suggestion in the username field. An additional [[phab:T417120|"Log in with passkey" button]] will soon be available for users who have already registered a passkey. This update will improve security and user experience. The [[c:File:Passwordless_login_screencast.webm|screen recording]] demonstrates the passwordless login process step by step. * [[m:Special:MyLanguage/Tech/Server switch|All wikis will be read-only]] for a few minutes on Wednesday, 25 March 2026 at [https://zonestamp.toolforge.org/1774450800 15:00 UTC]. This is for the datacenter server switchover backup tests, [[wikitech:Deployments/Yearly calendar|which happen twice a year]]. During the switchover, all Wikimedia website traffic is shifted from one primary data center to the backup data center to test availability and prevent service disruption even in emergencies. '''Updates for editors''' * Wikimedia site users can now export their notifications older than 5 years using a [[toolforge:echo-chamber|new Toolforge tool]]. This will ensure that users retain their important notifications and avoid them being lost based on the planned change to delete notifications older than 5 years, as previously announced. [https://phabricator.wikimedia.org/T383948] * Wikipedia editors in Indonesian, Thai, Turkish, and Simple English now have access to Special:PersonalDashboard. This is an [[mw:Special:MyLanguage/Moderator Tools/Dashboard|early version of an experience]] that introduces newer editors to patrolling workflows, making it easier for them to move from making edits to participating in more advanced moderation work on their project. [https://phabricator.wikimedia.org/T402647] * The [[Special:Block]] now has two minor interface changes. Administrators can now easily perform indefinite blocks through a dedicated radio button in the expiry section. Also, choosing an indefinite expiry provides a different set of common reasons to select from, which can be changed at: [[MediaWiki:Ipbreason-indef-dropdown]]. [https://phabricator.wikimedia.org/T401823] * Mobile editors [[mw:Special:MyLanguage/Contributors/Account Creation Experiments#Logged-out|at several wikis]] can now see an improved logged-out edit warning, thanks to the recent updates from the Growth team. These changes released last week are part of ongoing efforts and tests to enhance [[mw:Special:MyLanguage/Contributors/Account Creation Experiments|account creation experience on mobile]] and then increase participation. [https://phabricator.wikimedia.org/T408484] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:36}} community-submitted {{PLURAL:36|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the bug that prevented mobile web users from seeing the block information when affected by multiple blocks has been fixed. They can now see messages of all the blocks currently affecting them when they access Wikipedia. '''Updates for technical contributors''' * Images built using Toolforge will soon get the upgraded buildpacks version, bringing support for newer language versions and other upstream improvements and fixes. If you use Toolforge Build Service, review the recent [https://lists.wikimedia.org/hyperkitty/list/cloud-announce@lists.wikimedia.org/thread/EMYTA32EV2V5SQ2JIEOD2CL66YFIZEKV/ cloud-announce email] and update your build configuration as necessary to ensure your tools are compatible. [https://wikitech.wikimedia.org/w/index.php?title=Help:Toolforge/Building_container_images&oldid=2392097#Buildpack_environment_upgrade_process][https://phabricator.wikimedia.org/T380127] * The [https://api.wikimedia.org/wiki/Main_Page API Portal] documentation wiki will shut down in June 2026. API keys created on the API Portal will continue to work normally. api.wikimedia.org endpoints will be deprecated gradually starting in July 2026. Documentation on the API Portal is moving to [[mw:Wikimedia APIs|mediawiki.org]]. Learn more on the [[wikitech:API Portal/Deprecation|project page]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.21|MediaWiki]] '''In depth''' * [[m:Special:MyLanguage/WMDE Technical Wishes|WMDE Technical Wishes]] is considering improvements to [[m:WMDE Technical Wishes/References/VisualEditor automatic reference names|automatically generated reference names in VisualEditor]]. Please check out the [[m:WMDE Technical Wishes/References/VisualEditor automatic reference names#Proposed solutions|proposed solutions]] and participate in the [[m:Talk:WMDE Technical Wishes/References/VisualEditor automatic reference names#Request for comment|request for comment]]. '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/13|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W13"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年3月23日 (月) 16:51 (UTC) <!-- User:UOzurumba (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30268305 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-14</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W14"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/14|Translations]] are available. '''Weekly highlight''' * The Beta version of [[abstract:|Abstract Wikipedia]] a new Wikimedia project which is language-independent, was launched last week. The project allows communities to build Wikipedia articles in their native language, which can be readily accessed by other users in their own languages. The wiki is powered by instructions from Wikifunctions and also based on structured content from Wikidata. [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-26|Read more]]. '''Updates for editors''' * The Growth team is running an A/B test to evaluate a clearer, more user-friendly message that promotes account creation on wikis. Currently when logged-out mobile users begin editing, they see a jarring warning message that can feel abrupt and discouraging. This also presents temporary account editing as the default rather than encouraging account creation. The test is running on ten Wikipedias, including Arabic, French, Spanish and German. [[mw:Special:MyLanguage/Contributors/Account Creation Experiments#2. Improve logged-out warning message (T415160)|Read more]]. * The Wikimedia Apps team is inviting feedback on [[mw:Special:MyLanguage/Wikimedia Apps/Team/Future of Editing on the Mobile Apps|how editing should work on the Wikipedia mobile apps]]. The discussion focuses on improving how users access editing tools when they tap "Edit". This is part of a broader effort to convert readers who develop an interest in editing, to access a more user-friendly pathway to start contributing. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:45}} community-submitted {{PLURAL:45|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where citation fetching from the large newspaper archive [https://www.newspapers.com Newspapers.com] was no longer working, due to a block in [[mw:Special:MyLanguage/Citoid|Citoid]] requests, has now been fixed. [https://phabricator.wikimedia.org/T419903] '''Updates for technical contributors''' * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.22|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/14|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W14"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年3月30日 (月) 19:25 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30329462 のリストを使用して送信したメッセージ --> == Action Required: Update templates/modules for electoral maps (Migrating from P1846 to P14226) == Hello everyone, This is a notice regarding an ongoing data migration on Wikidata that may affect your election-related templates and Lua modules (such as <code>Module:Itemgroup/list</code>). '''The Change:'''<br /> Currently, many templates pull electoral maps from Wikidata using the property [[:d:Property:P1846|P1846]], combined with the qualifier [[:d:Property:P180|P180]]: [[:d:Q19571328|Q19571328]]. We are migrating this data (across roughly 4,000 items) to a newly created, dedicated property: '''[[:d:Property:P14226|P14226]]'''. '''What You Need To Do:'''<br /> To ensure your templates and infoboxes do not break or lose their maps, please update your local code to fetch data from [[:d:Property:P14226|P14226]] instead of the old [[:d:Property:P1846|P1846]] + [[:d:Property:P180|P180]] structure. A [[m:Wikidata/Property Migration: P1846 to P14226/List|list of pages]] was generated using Wikimedia Global Search. '''Deadline:'''<br /> We are temporarily retaining the old data on [[:d:Property:P1846|P1846]] to allow for a smooth transition. However, to complete the data cleanup on Wikidata, the old [[:d:Property:P1846|P1846]] statements will be removed after '''May 1, 2026'''. Please update your modules and templates before this date to prevent any disruption to your wiki's election articles. Let us know if you have any questions or need assistance with the query logic. Thank you for your help! [[User:ZI Jony|ZI Jony]] using [[利用者:MediaWiki message delivery|MediaWiki message delivery]] ([[利用者・トーク:MediaWiki message delivery|トーク]]) 2026年4月3日 (金) 17:11 (UTC) <!-- User:ZI Jony@metawiki が https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29941252 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-15</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W15"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/15|Translations]] are available. '''Updates for editors''' * The [[mw:Special:MyLanguage/Help:Extension:CampaignEvents|CampaignEvents extension]] now includes a new group goal-setting feature, enabling organizers to set and track event goals such as the number of articles created and participating contributors in real time. Similarly, participants can work toward shared targets and see their collective impact as the event unfolds. The feature is now available on all Wikimedia wikis. Learn more in [[mw:Special:MyLanguage/Help:Extension:CampaignEvents/Registration/Collaborative contributions#Goal setting|the documentation]]. * [[File:Maki-gift-15.svg|12px|link=|class=skin-invert|Wishlist item]] The new [[mw:Special:MyLanguage/Help:Watchlist labels|watchlist labels]] feature (announced in [[m:Special:MyLanguage/Tech/News/2026/07|Tech News 2026-07]]) is now available via VisualEditor, the source editor, and the 'watchstar' (or watch link, for skins that don't have a star icon). Previously it was only possible to assign labels via [[Special:EditWatchlist|EditWatchlist]]. In all three places it is a new field following the expiry field. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:23}} community-submitted {{PLURAL:23|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the issue where talk pages on mobile with Parsoid are unusable after empty section headers, has now been fixed. [https://phabricator.wikimedia.org/T419171] '''Updates for technical contributors''' * The [[m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|sub-referencing feature]], which lets editors add details to an existing reference without duplicating it, will be gradually rolled out to [[phab:T414094|more wikis]] later this year. Wikis using the [[mw:Special:MyLanguage/Reference Tooltips|Reference Tooltips]] gadget are encouraged to update their version (typically at [[m:MediaWiki:Gadget-ReferenceTooltips.js|MediaWiki:Gadget-ReferenceTooltips.js]] as shown [https://en.wikipedia.org/w/index.php?diff=1344408362 here]) to ensure compatibility. Other reference-related gadgets may also be affected. [https://phabricator.wikimedia.org/T416304] * All Wikinews editions will be closed and switched to read-only mode on 4 May 2026. Content will remain accessible, but no new edits or articles can be added. This closure was approved by the Board of Trustees of the Wikimedia Foundation following extended discussions. [[m:Wikimedia Foundation Board noticeboard#Board of Trustees Approves Closure of Wikinews|Read more]]. * The [[:mw:Special:MyLanguage/API:Action API|Action API]] has had several formats for requested output. One of them, <bdi lang="zxx" dir="ltr"><code><nowiki>format=php</nowiki></code></bdi>, is being removed soon. Please ensure your scripts or bots use the [[mw:Special:MyLanguage/API:Data formats#Output|JSON format]]. This removal should affect very few scripts and bots. [https://phabricator.wikimedia.org/T118538] * The [[Special:NamespaceInfo|Special:NamespaceInfo]] page now includes namespace aliases. For example "WP" for the "Project" ("Wikipedia") namespace on the German Wikipedia. [https://phabricator.wikimedia.org/T381455] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.23|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/15|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W15"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年4月6日 (月) 16:19 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30362761 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-16</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W16"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/16|Translations]] are available. '''Weekly highlight''' * Experienced editors are invited to [https://b24e11a4f1.catalyst.wmcloud.org/wiki/Main_Page test] the [[mw:Special:MyLanguage/Article guidance|Article guidance]] feature, designed to help less-experienced editors create well-structured, policy-compliant Wikipedia articles. Testing instructions are [[mw:Special:MyLanguage/Article guidance/Test feature guide|available]]. Also, after reviewing [https://b24e11a4f1.catalyst.wmcloud.org/wiki/Category:Pages_using_article_guidance the outlines], please provide feedback on the [[mw:Talk:Article guidance|project talk page]]. Based on your input, the feature will be refined and transferred to the pilot Wikipedias to translate and adapt. Check out [[c:File:Article Guidance workflow demo - April 2026.webm|the video]] explaining the feature. '''Updates for editors''' * On most wikis, all autoconfirmed users can now use [[Special:ChangeContentModel|Special:ChangeContentModel]] page to [[mw:Special:MyLanguage/Help:ChangeContentModel|create new pages with custom content models]], such as mass message lists, making custom page formats more accessible. Check [[Special:ListGroupRights|Special:ListGroupRights]] for the status of your wiki. [https://phabricator.wikimedia.org/T248294] * The Growth team has launched an [[mw:Special:MyLanguage/Contributors/Account_Creation_Experiments|account creation experiment]] to evaluate whether adding an account creation button to the mobile web header increases new account registrations and encourages more mobile users to contribute to the wikis. The experiment is currently live on Hindi, Indonesian, Bengali, Thai, and Hebrew Wikipedia, and targets 10% of logged-out mobile web users. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:30}} community-submitted {{PLURAL:30|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where VisualEditor could get stuck loading on Windows devices with animations turned off, has now been fixed. [https://phabricator.wikimedia.org/T382856] '''Updates for technical contributors''' * Starting later this week, {{int:group-abusefilter}} who have the [[mw:Special:MyLanguage/Help:Extension:CodeMirror|{{int:codemirror-beta-feature-title}}]] beta feature enabled will have [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] instead of [[mw:Special:MyLanguage/Extension:CodeEditor|CodeEditor]] as the editor at [[Special:AbuseFilter|Special:AbuseFilter]]. This is part of the broader effort to make the user experience more consistent across all editors. [https://phabricator.wikimedia.org/T399673][https://phabricator.wikimedia.org/T419332] * Tools and bots that access the [[mw:Special:MyLanguage/Notifications/API|Notifications API]] (<bdi lang="zxx" dir="ltr"><code><nowiki>action=query&meta=notifications</nowiki></code></bdi>) will need to update their OAuth or BotPassword grants to also include access to private notifications. [https://phabricator.wikimedia.org/T421991] * Due to a library upgrade, listings on category pages may be displayed out of order starting on Monday, 20th April. A migration script will be run to correct this, and will take hours to days depending on the size of the wiki (up to a week for English Wikipedia). [https://phabricator.wikimedia.org/T422544] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.24|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/16|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W16"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年4月13日 (月) 15:19 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30380527 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-17</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W17"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/17|Translations]] are available. '''Weekly highlight''' * After two years of development, [[mw:Special:MyLanguage/Help:Extension:CodeMirror|{{int:codemirror-beta-feature-title}}]], also known as [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror 6]], is to be promoted out of beta on Tuesday, April 21. It brings better code and wikitext readability, reduction in typing errors, and other [[mw:Special:MyLanguage/Help:Extension:CodeMirror|benefits]] to all users of the standard syntax highlighter. A huge thank you to volunteer [https://phabricator.wikimedia.org/p/Bhsd/ Bhsd] who developed many of the new features, including [[mw:Special:MyLanguage/Help:Extension:CodeMirror#Code folding|code folding]], [[mw:Special:MyLanguage/Help:Extension:CodeMirror#Autocompletion|autocompletion]], and [[mw:Special:MyLanguage/Help:Extension:CodeMirror#Linting|linting]]. [https://phabricator.wikimedia.org/T259059] * A major update to the Wikipedia app for iOS is now rolling out, redesigning the interface to align with Apple's latest "Liquid Glass" visual design. [https://apps.apple.com/us/app/wikipedia/id324715238 Download the latest version] and explore the update. '''Updates for editors''' * [[mw:Special:MyLanguage/Readers/Reader Experience/WE3.3.4 Reading lists|Reading lists]] is a feature which allows readers to save articles to a list for reading later. This feature is now in beta on Arabic, French, Indonesian, Vietnamese, and Chinese Wikipedias and by default for all new accounts on all Wikipedias. * An experiment which explores extending [[mw:Special:MyLanguage/Readers/Reader Growth/Mobile page previews|Page Previews to mobile web]] will be launched in the week of April 20 on Arabic, English, French, Italian, Polish, and Vietnamese Wikipedias. Page Previews are pop-ups that display a thumbnail, lead paragraph, and a link to open the full article of a blue link, thereby improving content discovery. The feature is already available on desktop and in the apps. [[m:Special:MyLanguage/List of experiments in Product and Technology#Template|Read more about this experiment and others]]. * On several wikis, logged-in editors who haven't [[mw:Special:MyLanguage/Help:Email confirmation|confirmed their email addresses]] can now see a banner encouraging them to do so. Having the email address confirmed allows a user to restore access to the account if they lose it. [[mw:Special:MyLanguage/Product Safety and Integrity/Account Security#Encouraging users to confirm their email addresses|Learn more]]. [https://phabricator.wikimedia.org/T421366] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:15}} community-submitted {{PLURAL:15|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where editing very large wiki pages in the 2017 wikitext editor caused slow loading, preview and scrolling lag, and performance issues when selecting, cutting, or pasting content, has now been fixed. [https://phabricator.wikimedia.org/T184857] '''Updates for technical contributors''' * As part of the promotion of [[mw:Special:MyLanguage/Help:Extension:CodeMirror|CodeMirror]] from a beta feature, all users will use [[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] instead of [[mw:Special:MyLanguage/Extension:CodeEditor|CodeEditor]] for syntax highlighting when editing JavaScript, CSS, JSON, Vue and Lua content pages. [https://phabricator.wikimedia.org/T419332] * The <code>mirrors.wikimedia.org</code> service for Debian and Ubuntu users will sunset and stop working on May 15. The resources for the service will be replaced with new and better options. Some users may need to switch to a different server which should take about a minute. [https://lists.wikimedia.org/hyperkitty/list/wikitech-l@lists.wikimedia.org/thread/LJYRIS4WB66HIRCAO4GIDTXCMDVZRBMA/ You can read more]. [https://phabricator.wikimedia.org/T416707] * The <bdi lang="zxx" dir="ltr"><code><nowiki>image</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>oldimage</nowiki></code></bdi> table will be removed from [[wikitech:Help:Wiki Replicas|wikireplicas]]. If your tools or queries access <bdi lang="zxx" dir="ltr"><code><nowiki>image</nowiki></code></bdi> or <bdi lang="zxx" dir="ltr"><code><nowiki>oldimage</nowiki></code></bdi> directly, please update them to use the <bdi lang="zxx" dir="ltr"><code><nowiki>file</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>filerevision</nowiki></code></bdi> table before 28 May. [https://phabricator.wikimedia.org/T28741] * Following the recent implementation of global API rate limits on unidentified traffic, the Wikimedia Foundation will continue efforts to ensure [[mw:Special:MyLanguage/MediaWiki Product Insights/Responsible Reuse|fair use of infrastructure]] by applying global limits to identified API traffic beginning the last week of April. These limits are intentionally set as high as possible to minimise impact on the community. Bots running in Toolforge/WMCS or with the bot user right on any wiki should not be affected for now. However, all developers are advised to follow updated best practices. For more information, see [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits|Wikimedia APIs/Rate limits]] and [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits/FAQ|Frequently Asked Questions]]. * The [[mw:Special:MyLanguage/Attribution API|Attribution API]] is now available as a [[mw:Special:MyLanguage/Wikimedia APIs/Stability policy|beta]]. The API fetches information for crediting Wikimedia articles and media files wherever they are used. Reference documentation is available through the REST Sandbox special page available on all Wikimedia wikis (such as the [https://en.wikipedia.org/w/index.php?api=attribution.v0-beta&title=Special%3ARestSandbox REST sandbox on English Wikipedia]). Share your feedback on the [[mw:Talk:Attribution API|project talk page]]. * There is no new MediaWiki version this week. '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/17|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W17"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年4月20日 (月) 15:00 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30432763 のリストを使用して送信したメッセージ --> == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> Apologies for writing in English. {{int:Please-translate}} A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[利用者:MediaWiki message delivery|MediaWiki message delivery]] ([[利用者・トーク:MediaWiki message delivery|トーク]]) 2026年4月26日 (日) 00:58 (UTC) </bdi> <!-- User:Codename Noreste@metawiki が https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-18</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W18"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/18|Translations]] are available. '''Updates for editors''' * There is a change in how new users are autoconfirmed that will improve anti-vandalism protection. Currently, users who have had an account for a few days and made a few edits are automatically added to the [[{{int:grouppage-autoconfirmed/{{CONTENTLANGUAGE}}}}|{{int:group-autoconfirmed}}]] group. This configuration tends to be exploited by some vandals, who create accounts and start to use them only after some time. To mitigate this, the configuration will be updated next week so that – for the purpose of becoming autoconfirmed – the account age will be counted from their first edit, instead of registration date. The numeric value of the age threshold will remain the same. This change will be deployed only to wikis which require at least one edit as part of the autoconfirmation conditions. [https://phabricator.wikimedia.org/T418484] * All Wikipedia users with new accounts and those who activated the "automatically enable most beta features" option in their preference can now use the [[mw:Special:MyLanguage/Readers/Reader Experience/WE3.3.4 Reading lists|reading lists]] beta feature to save articles for later reading. This helps organize reading interests in one place for convenient access. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:30}} community-submitted {{PLURAL:30|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the issue where infobox images have huge padding in Firefox, has been fixed. [https://phabricator.wikimedia.org/T423676] '''Updates for technical contributors''' * As a reminder, the global API rate limits will be applied this week to identified API traffic. This is to help ensure [[mw:MediaWiki Product Insights/Responsible Reuse|fair use of infrastructure]]. Bots running in Toolforge/WMCS or with the bot user right on any wiki should not be affected for now. However, all developers are advised to follow updated best practices. For more information, including the actual rate limits, see [[mw:Wikimedia APIs/Rate limits|Wikimedia APIs/Rate limits]] and [[mw:Wikimedia APIs/Rate limits/FAQ|Frequently Asked Questions]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.26|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/18|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W18"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年4月27日 (月) 18:06 (UTC) <!-- User:UOzurumba (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30458046 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-19</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W19"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/19|Translations]] are available. '''Weekly highlight''' * The [[mw:Special:MyLanguage/Article guidance|Article guidance]] team invites experienced editors of [[mw:Special:MyLanguage/Article guidance/Pilot wikis and collaborators|pilot Wikipedias]]—Arabic, Bangla, Japanese, Portuguese, Persian, Turkish, Simple English, Spanish, and French—to help translate and adapt [https://b24e11a4f1.catalyst.wmcloud.org/wiki/Category:Pages_using_article_guidance sample outlines]. These outlines will guide editors in creating clear, well-structured, and policy-compliant articles when using [https://b24e11a4f1.catalyst.wmcloud.org/wiki/Special:NewArticle the feature] once it is launched in May 2026. [[mw:Special:MyLanguage/Article guidance#Adapting a sample outline in a Wikipedia|Simple instructions]] on how to translate and adapt the outlines are available. '''Updates for editors''' * The [[:m:Special:MyLanguage/Product and Technology Advisory Council|Product and Technology Advisory Council]] has published [[:m:Special:MyLanguage/Product and Technology Advisory Council/May 2026 draft PTAC recommendation for feedback|draft recommendations]] on a model that affiliates can follow when contributing to the technical space. Community members are invited to provide feedback on the recommendation until May 8th [[:m:Talk:Product and Technology Advisory Council/May 2026 draft PTAC recommendation for feedback|on the talk page]]. * The number of available thumbnail size preferences in MediaWiki is being reduced to three standardized options—Small (180px), Regular (250px), and Large (400px), as part of ongoing efforts to improve performance and reduce strain on thumbnail services. As a result, existing preferences will be mapped to the nearest new size (for example, smaller selections like 120px or 150px will render at 180px, while larger ones like 300px or 360px will render at 400px). The preferences interface will soon be updated to reflect these changes, and users who wish to opt out or provide feedback can do so. [https://phabricator.wikimedia.org/T424909] * From now on, even when a permission expires automatically, users will receive an Echo notification similar to the standard notification for permission changes. There is a difference between this and [[m:Special:MyLanguage/Global reminder bot|Global reminder bot]] in that the latter reminds users a week ''before'' the rights are due to expire, so that they can renew the rights. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:32}} community-submitted {{PLURAL:32|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the problem where the ULS language selector in [[m:Special:Translate|Special:Translate]] would scroll vertically when it shouldn't, has been resolved. Previously, when users opened the "Translate to English" dropdown and typed certain inputs, the dialog would scroll vertically by a few pixels even when there was enough space to display all results. The dropdown no longer shifts unnecessarily when filtering languages. [https://phabricator.wikimedia.org/T358864] * The [[m:Special:GlobalWatchlist|Global Watchlist]], which lets you view your watchlists from multiple wikis on a single page, continues to improve. For example, watchlists for Wikibase sites such as [[:d:|Wikidata]] now support [[mw:Special:MyLanguage/Extension:EntitySchema|EntitySchema]] elements for better tracking. The Live Updates mode now refreshes the special page every 60 seconds to comply with the updated [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits|global API rate limits]] for improved real-time responsiveness. Additionally, a directionality bug that displayed links as "changes 3" instead of "3 changes" in mixed-direction lists has been fixed. [https://phabricator.wikimedia.org/T415450][https://phabricator.wikimedia.org/T424422][https://phabricator.wikimedia.org/T418091] '''Updates for technical contributors''' * The second phase of [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits|global API rate limits]] has been rolled out to reduce the [[diffblog:2026/03/26/quo-vadis-crawlers-progress-and-whats-next-on-safeguarding-our-infrastructure/|impact of AI crawlers]] and ensure fair, sustainable access to Wikimedia resources, prioritising human and mission-aligned traffic. [[mw:Special:MyLanguage/Wikimedia APIs/Rate limits#Limits|Limits]] have been shifted from per-hour to per-minute, producing smoother traffic patterns and more predictable API load. Community users are not expected to be affected, and no action is required. Early indications show some User-Agent-based requestors are adjusting behaviour, and around 64% of automated API traffic has been identified. Monitoring continues, and Wikimedia Enterprise remains available for commercial support. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.46/wmf.27|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/19|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W19"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年5月4日 (月) 20:43 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30498077 のリストを使用して送信したメッセージ --> == 移動後に残るリダイレクトページの即時削除の方針明確化 == 標記の件について、[[Wiktionary・トーク:即時削除の方針#移動後に残るリダイレクトページの即時削除の方針明確化]]にて提案しています。--[[利用者:Yapparina|Yapparina]] ([[利用者・トーク:Yapparina|トーク]]) 2026年5月6日 (水) 06:00 (UTC) :方針が改訂されました。--[[利用者:Yapparina|Yapparina]] ([[利用者・トーク:Yapparina|トーク]]) 2026年6月5日 (金) 20:58 (UTC) == <span lang="en" dir="ltr">Tech News: 2026-20</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W20"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/20|Translations]] are available. '''Weekly highlight''' * Community Tech has published [[m:Special:MyLanguage/Community Wishlist/How to write a good wish|new guidance]] explaining how wishes on Community Wishlist are triaged and prioritized. The documentation is intended to help contributors write stronger proposals by clarifying the factors that influence prioritization decisions. Beyond vote counts, the guidance highlights considerations such as potential impact on the community when determining which wishes move forward. '''Updates for editors''' * The Reader Growth team is launching an experiment to test a new [[mw:Special:MyLanguage/Readers/Reader_Growth/Share_Card|Share Card feature]] that allows readers to create visually engaging cards from Wikipedia articles or selected article sections and share them online, with each card linking back to the original article to help expand readership and article discovery. The mobile-only A/B test will be available to a portion of readers on Arabic, Chinese, French, Vietnamese, and English Wikipedia to better understand reading and sharing habits, and is scheduled to begin the week of May 18 and run for four weeks. * The Android and iOS Wikipedia apps recently released the [[mw:Special:MyLanguage/Wikimedia_Apps/Team/25th_Birthday_Reading_Challenge|25-day reading challenge]] into Beta, as part of efforts to drive reader engagement by encouraging users to complete reading milestones. To track their reading streak during the challenge, App users can add a widget featuring Baby Globe to their home screen. The challenge officially begins May 11. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:17}} community-submitted {{PLURAL:17|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where the global preference for enabling syntax highlighting in wikitext could unexpectedly disable itself after being turned on, has now been fixed. [https://phabricator.wikimedia.org/T425286] '''Updates for technical contributors''' * [[File:Octicons-tools.svg|12px|link=|alt=|Advanced item]] The ResourceLoader module <bdi lang="zxx" dir="ltr"><code><nowiki>mediawiki.ui.input</nowiki></code></bdi>, deprecated since [[m:Special:MyLanguage/Tech/News/2023/39|September 2023]], will be removed this week. There is a [[mw:Special:MyLanguage/Codex/Migrating_from_MediaWiki_UI|guide for migrating from MediaWiki UI to Codex]] for any tools that use it. [https://phabricator.wikimedia.org/T420125] * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.2|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/20|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W20"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年5月11日 (月) 19:20 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30524429 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-21</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W21"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/21|Translations]] are available. '''Weekly highlight''' * The Abstract Wikipedia team has identified five potential pilot wikis to assess their interest in adopting abstract articles on their wikis. The pilots are Malayalam, Bengali, Dagbani, Arabic, and Indonesian Wikipedia. The feedback period will be open until May 22. If your community is interested in becoming a pilot, [[m:Talk:Abstract Wikipedia|let us know on Meta]]. '''Updates for editors''' * An experiment to show [[mw:Special:MyLanguage/Readers/Reader Experience/Reading lists|Reading Lists]] to logged-out readers on mobile web will launch on May 18 across German, Spanish, Italian, Portuguese, Polish, Dutch, Turkish, and Urdu Wikipedias, and will run for one month. The effort supports broader goals of helping readers save and organize articles for later reading, while encouraging habits that could lead to future Wikipedia contributions. * To support a bookmark button in the Reading List beta feature, the "Tools > Action" menu has been updated to display icons, including the watch star indicator that helps editors identify temporarily watched articles. The icons now also match those used on mobile, improving consistency across platforms. The change is currently limited to the actions menu and mainly affects editors with privileged user rights. [https://phabricator.wikimedia.org/T426008] * [[mw:Special:MyLanguage/VisualEditor/Suggestion Mode|Suggestion Mode]] was released as an [[w:en:A/B test|A/B test]] for newcomer editors on the mobile website at [[phab:T421189|~15 Wikipedias]]. The experiment will measure the impact that Suggestion Mode has on the proportion of newcomer mobile web edit sessions that result in constructive (un-reverted) article edits. The experiment will also evaluate the feature's impact on editor retention, and monitor changes in revert and block rates. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:27}} community-submitted {{PLURAL:27|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue in the Wikipedia Android app where images could sometimes fail to load after opening a recommended reading list notification, has now been fixed. [https://phabricator.wikimedia.org/T418231] '''Updates for technical contributors''' * The [[mw:Special:MyLanguage/Wikidata Platform|Wikidata Platform team]] has published its [[d:Special:MyLanguage/Wikidata:SPARQL query service/WDQS backend update/Backend Replacement|backend replacement recommendation]] and accompanying [[wikitech:Wikidata Query Service/WDQS Architecture re-design|technical architecture]] for the migration of the Wikidata Query Service (WDQS) away from Blazegraph. Feedback is invited until May 25th 2026, especially on potential gaps and impacts on advanced use cases. Wikidata community members and WDQS users are also encouraged to help identify high-impact tools and workflows that may need attention on [[d:Wikidata:SPARQL query service/WDQS backend update/High-Impact Use Cases|this page]]. Feedback can be shared on the [[d:Wikidata talk:SPARQL query service/WDQS backend update|Migration talk page]] or during the [[d:Special:MyLanguage/Wikidata:Blazegraph Migration Office Hours|next office hour]]. See the [[d:Special:MyLanguage/Wikidata:Wikidata Platform team/Newsletter|WDP team newsletter]] for more details. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.3|MediaWiki]] '''In depth''' * On English, French, Japanese, and a few other Wikipedias, there was a [[diffblog:2025/09/02/better-detecting-bots-and-replacing-our-captcha/|trial of hCaptcha]], a third-party bot detection service. The trial showed that hCaptcha effectively detects and deters some bad-faith automated activity, on its own and by giving [[w:en:Wikipedia:Village pump (technical)/Archive 225#Introducing SuggestedInvestigations|checkusers and stewards]] signals to look into. Because the results were positive, hCaptcha will be rolled out across all wikis over the next few weeks. [[mw:Special:MyLanguage/Product Safety and Integrity/Anti-abuse signals/hCaptcha|See the hCaptcha project page]] for technical information about the implementation and privacy protections. [[diffblog:2026/05/04/better-detecting-bots-and-replacing-our-captcha-part-2/|Learn more]]. * The latest Community Tech update is now available, with progress across several Community Wishlist initiatives, including Reading Lists expansion from the mobile app to the website, new language support for "Who Wrote That" and the Personal Dashboard, improvements to 3D rendering and Charts, and upcoming work on talk page sorting, audio playback, and editing workflows. The update also shares current priorities, wishlist status trends, and opportunities for community feedback on future focus areas and the Wikimedia Foundation’s 2026–2027 Annual Plan. [[m:Special:MyLanguage/Community Wishlist/Updates#May 13, 2026: Latest updates from the Community Tech team|Read the full newsletter for details]]. '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/21|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W21"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年5月18日 (月) 20:21 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30539262 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-22</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W22"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/22|Translations]] are available. '''Weekly highlight''' * Following a [[mw:Special:MyLanguage/Contributors/Account Creation Experiments#LOWM|successful account creation experiment]], an improved logged-out edit warning message will be deployed to all Wikimedia wikis in the first week of June. The change will only affect logged-out users on mobile web who open an editing session. The updated experience is designed to encourage account creation more clearly, while still allowing users to edit with temporary accounts. Results from the experiment showed a significant increase in account creation, with a 27% relative lift among users shown the updated message. As expected, as more people funnel into account creation, temporary accounts decreased by a relative 16%. The experiment did not show any significant changes in constructive edit rates or other monitored contributor metrics. [https://phabricator.wikimedia.org/T424595] '''Updates for editors''' * For security reasons, members of certain user groups are [[m:Special:MyLanguage/Mandatory two-factor authentication for users with some extended rights|required to have two-factor authentication]] (2FA) enabled. Members of these groups will be unable to disable the last 2FA method on their account, and it will be impossible to add users without 2FA to these groups. Users will still be able to add new authentication methods or remove them, as long as at least one method is continuously enabled. In the next few weeks, users without 2FA will be removed from these groups. Notably, this applies to bureaucrats. See the linked tasks for deployment schedules. [https://phabricator.wikimedia.org/T423119][https://phabricator.wikimedia.org/T423120] * [[m:Special:MyLanguage/WMDE Technical Wishes|WMDE Technical Wishes]] will run an [[w:en:A/B testing|A/B test]] on [[:phab:T415904|10 wikis]], testing [[m:WMDE Technical Wishes/References/Reference Previews|potential improvements for Reference Previews]]. The experiment will run for ~2 weeks at the end of May / beginning of June and will affect 10% of desktop readers on the participating wikis. * After two successful experiments, the Reader Growth team is rolling out an [[mw:Special:MyLanguage/Readers/Reader Growth/Image Browsing|Image Browsing]] beta feature for all Wikipedias on mobile on May 25. This means that anyone who has all beta features on by default will start to see this feature, and others can check the box to turn it on in their preferences. The beta feature will include a carousel of all an article's images at the top of the article, with controls for editors to [[mw:Readers/Reader_Growth/Image_Browsing#Phase_2.1_beta_feature|exclude images from the article's carousel or to exclude an article from the feature entirely]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:30}} community-submitted {{PLURAL:30|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, three dimensional STL files were being rendered incorrectly by the media viewer 3D extension which is now fixed. [https://phabricator.wikimedia.org/T416723] '''Updates for technical contributors''' * The legacy CSS classes <bdi lang="zxx" dir="ltr"><code><nowiki>tleft</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>tright</nowiki></code></bdi> have been replaced with <bdi lang="zxx" dir="ltr"><code><nowiki>floatleft</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>floatright</nowiki></code></bdi> as the former do not work consistently across all MediaWiki platforms, notably mobile web and mobile apps. Projects relying on these classes are encouraged to review related usage and plan for migration. Please note that <bdi lang="zxx" dir="ltr"><code><nowiki>floatleft</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>floatright</nowiki></code></bdi> may also be deprecated in future, although there are currently no plans to do so. [[phab:T426452|Read more]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.4|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/22|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W22"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年5月25日 (月) 21:52 (UTC) <!-- User:Quiddity (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30584502 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Vote now in the 2026 U4C election</span> == <div lang="en" dir="ltr"> <section begin="announcement-content" /> Eligible voters are asked to participate in the 2026 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2026|2026 Election information page]]. The vote closes on 2 June 2026 at [https://zonestamp.toolforge.org/1780358400 00:00 UTC]. Please vote if your account is eligible. Results will be available by 14 June 2026. -- In cooperation with the U4C,<section end="announcement-content" /> </div> [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 2026年5月27日 (水) 17:15 (UTC) <!-- User:Keegan (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30513860 のリストを使用して送信したメッセージ --> == ESEAP Strategy Summit 2027開催決定のお知らせ == 先日開催された、[[meta:ESEAP Conference 2026|ESEAP Conference 2026]]にて、来年2027年5月にESEAP Strategy Summit 2027を大阪で開催することが発表されました。詳細はこれからの検討事項となりますが、決定次第[[meta:ESEAP Strategy Summit 2027|ESEAP Strategy Summit 2027]]のページにて公開されるほか、適宜こちらのお知らせにて随時投稿させていただきますので、興味のある方、当日お手伝いなどいただける方はMeta-WikiのESEAP Strategy Summit 2027のページをご確認いただくか、[[meta:Wikimedians of Japan User Group|Wikimedians of Japan User Group]]にメンバーとして参加いただくことをご検討ください。--[[利用者:VZP10224(WjpUG)|VZP10224(WjpUG)]] ([[利用者・トーク:VZP10224(WjpUG)|トーク]]) 2026年5月28日 (木) 11:26 (UTC) == <span lang="en" dir="ltr">Tech News: 2026-23</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W23"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/23|Translations]] are available. '''Updates for editors''' * The [[mw:Special:MyLanguage/Readers/Reader Experience|Reader Experience team]] is conducting an experiment to show the [[mw:Special:MyLanguage/Readers/Reader Experience/Reading lists|reading lists]] feature, which is still in development, to logged-out mobile readers to test whether it encourages account creation at a higher rate compared to the watchstar button. The [[mw:Special:MyLanguage/Readers/Reader Experience/Reading lists#Experiment timeline|experiment]] was launched on May 18th on German, Spanish, Italian, Portuguese, Polish, Dutch, Turkish, and Urdu wikis, and it will run for a month. * The Wikimedia Apps team released [[mw:Special:MyLanguage/Wikimedia Apps/Team/Explore Feed Refresh/Phase 1|Phase 1]] of the redesigned Home Feed to the Android Beta app. The new Home Feed includes a refreshed "Community" tab and a personalized "For You" tab featuring daily updated reading recommendations. The redesign is part of a broader effort to improve content discovery and create more engaging learning experiences in the Wikipedia apps. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:18}} community-submitted {{PLURAL:18|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where images could fail to load for some suggested edits on [[w:Special:Homepage|Special:Homepage]], leaving the thumbnail stuck in a loading state, has now been fixed. [https://phabricator.wikimedia.org/T424048] '''Updates for technical contributors''' * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.5|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/23|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W23"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年6月1日 (月) 21:08 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30613639 のリストを使用して送信したメッセージ --> == <span lang="en" dir="ltr">Tech News: 2026-24</span> == <div lang="en" dir="ltr"> <section begin="technews-2026-W24"/><div class="plainlinks"> Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/24|Translations]] are available. '''Weekly highlight''' * Wikimedia Enterprise has increased the free usage limits for its API offerings. The monthly request limit for the On-demand API has increased from 5,000 to 50,000 requests, while the Snapshot API limit has increased from 15 to 30 requests per month. In addition, Structured Contents snapshots are now available for free accounts. These changes expand access to Wikimedia Enterprise data for developers, researchers, and organizations using Wikimedia content. [https://enterprise.wikimedia.com/blog/enhanced-free-api] '''Updates for editors''' * The [[mw:Special:MyLanguage/Wikimedia_Apps/Team/Explore Feed Refresh/Phase 1|refreshed Explore Feed]], now called the Home Feed, is rolling out to 50% of users of the Wikipedia Android app. The Home Feed helps readers discover relevant content through two new tabs: ''Community'' and ''For You''. The Community tab provides a scrollable feed of curated content and updates from the broader Wikimedia community and movement, while the ''For You'' tab offers a full-screen, swipeable experience that shows content tailored to a user's interests. The redesign is part of a broader effort to improve discovery and enhance the learning experience in the Wikipedia app. * The [[mw:Special:MyLanguage/Wikimedia Apps/Team/iOS/"Which came first?" Game|Which came first?]] daily trivia game is now available in the beta version of the Wikipedia iOS app in English, German, French, Portuguese, Russian, Spanish, Arabic, Chinese, and Turkish. The game uses historical events from Wikipedia's "On This Day" content and challenges readers to guess which of two events happened first. The game was previously released on Android. Communities interested in making the game available in their languages can [[mw:Special:MyLanguage/Wikimedia_Apps/Team/Games#Game availability by language|read the instructions and requirements]]. * [[m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|Sub-referencing]], a new MediaWiki feature that allows editors to reuse references with different details, will begin rolling out to Wikimedia wikis following a successful pilot phase. Deployment will start on 8 June for most [[wikitech:Deployments/Train#Wednesday|Group 1 wikis]] and French Wikipedia, with additional Wikipedia language editions receiving the feature over the coming months. Communities are encouraged to prepare by checking for [https://translatewiki.net/w/i.php?title=Special%3ATranslate&group=ext-cite&language=en&action_source=search&filter=%21translated&optional=1&action=translate untranslated Cite extension messages] in their language and reviewing any use of [[mw:Special:MyLanguage/Reference Tooltips|Reference Tooltips]], which may require [[:phab:T416304#11668731|updates]] to support the new functionality. Wikis using [[mw:Special:MyLanguage/Help:Reference Previews|Reference Previews]] do not need to take any action. Communities may also wish to create the ''cite-tracking-category-ref-details'' [[Special:TrackingCategories|tracking category]] as a hidden category using <code><nowiki>__HIDDENCAT__</nowiki></code> (or a dedicated template), and connect it to the corresponding Wikidata item [[d:Q129764848]]. [https://phabricator.wikimedia.org/T425662] * The [[mw:Special:MyLanguage/Readers/Reader Growth/Mobile page previews#Experimentation|Page Previews experiment]] on mobile web has concluded. The team decided not to roll out the feature after the results showed no statistically significant impact on reader retention, as the primary success metric was retention improvement. Page Previews, which are already available on desktop and in the apps, display a thumbnail, lead paragraph, and link to the full article when readers tap a blue link. The experiment tested this experience on mobile web across six Wikipedias. * The [[mw:Special:MyLanguage/Codex/Design/Icons|user interface icon library]] will be [[phab:T399175|updated later this week or next week]]. Most of the ~300 icons have been slightly refined and ~30 new icons have been added. These changes improve the icons to make them more consistent and comprehensible, and provide more visual balance when they are used in groups. * The [[mw:Special:MyLanguage/Universal Language Selector|Universal Language Selector]] (ULS) interface in MediaWiki, which helps users select content in other languages, has been updated. The new version improves speed and accessibility, and users of Wikimedia projects can now pin languages for quicker language switching. The deployment to Wikimedia sites will happen gradually in the coming weeks. You can test it now as a beta feature by selecting [[Special:Preferences#mw-prefsection-betafeatures|beta features]] in your profile preferences and share your feedback on [[mw:Special:MyLanguage/Universal Language Selector/New ULS|the project page]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:21}} community-submitted {{PLURAL:21|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where the Pageviews Analysis dashboard on pageviews.wmcloud.org stopped updating graph data in May 2026, affecting all users, has been fixed. [https://phabricator.wikimedia.org/T427171] '''Updates for technical contributors''' * The function signature for <bdi lang="zxx" dir="ltr"><code><nowiki>mw.util.addPortletLink()</nowiki></code></bdi> has been simplified. Developers can now pass a configuration object instead of a list of positional parameters when creating portlet links. The previous function signature remains supported for backwards compatibility. For example, instead of: <bdi lang="zxx" dir="ltr"><code><nowiki>mw.util.addPortletLink('p-cactions', '#', 'Stub', 'ca-stubtag', 'Add a stub tag to this page');</nowiki></code></bdi> use <bdi lang="zxx" dir="ltr"><code><nowiki>mw.util.addPortletLink('p-cactions', { href: '#', text: 'Stub', id: 'ca-stubtag', tooltip: 'Add a stub tag to this page' });</nowiki></code></bdi>. Script maintainers are encouraged to review existing uses of <bdi lang="zxx" dir="ltr"><code><nowiki>addPortletLink()</nowiki></code></bdi> and update them where appropriate. This change will be available on all wikis from 11 June. Thanks to community volunteer Gerges for contributing this improvement. [https://phabricator.wikimedia.org/T427945] * '''Community Wishlist discussion''': Product & Technology [[m:Special:MyLanguage/Community Wishlist/Updates#May 20, 2026: Community Tech becomes a program|introduced changes]] meant to increase the number and complexity of wishes fulfilled, including the disbanding of the Community Tech team. They are [[m:Special:MyLanguage/Community Wishlist/Updates|engaging in discussions]] about a [[m:Talk:Community Wishlist#Proposed direction for Wishlist|proposed direction for the wishlist]] from community members. Includes ways to structure annual voting, better tracking of wishes, removing focus areas, and [[m:Special:MyLanguage/Community Wishlist/Updates|staffing updates]]. * [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.6|MediaWiki]] '''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]]&nbsp;• [[m:Special:MyLanguage/Tech/News#contribute|Contribute]]&nbsp;• [[m:Special:MyLanguage/Tech/News/2026/24|Translate]]&nbsp;• [[m:Tech|Get help]]&nbsp;• [[m:Talk:Tech/News|Give feedback]]&nbsp;• [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].'' </div><section end="technews-2026-W24"/> </div> <bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 2026年6月8日 (月) 21:30 (UTC) <!-- User:STei (WMF)@metawiki が https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=30650573 のリストを使用して送信したメッセージ --> 9bvxarca4dvkimdd6qrkm3g7w86wb2o infringir 0 288782 2281164 1397668 2026-06-09T06:54:29Z Jiba1219 100610 2281164 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} ''[[infringere|īnfringō, īnfringere]]'' ==={{pron}}=== * {{ca-IPA}} * {{homophones|infringí|lang=ca}} ==={{verb}}=== {{ca-verb|ir|infring}} #(法律・権利などを){{おくりがな2|侵|おか|す|おかす}}。{{おくりがな2|破|やぶ|る|やぶる}}。[[侵害]]する。 {{ca-conj-ir|infring}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} ''[[infringere|īnfringō, īnfringere]]'' ==={{pron}}=== * {{es-IPA}} ==={{verb}}=== {{es-verb|infring|ir|pres=infrinjo}} #(法律・権利などを){{おくりがな2|侵|おか|す|おかす}}。{{おくりがな2|破|やぶ|る|やぶる}}。[[侵害]]する。 {{es-conj-ir|infrin|p=-gir|combined=1}} ===={{rel}}==== * {{l|es|frangir}} =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[infringere|īnfringō, īnfringere]]'' ==={{verb}}=== {{pt-verb|infrin|gir}} #{{context|transitive+|lang=pt}}(法律・権利などを){{おくりがな2|侵|おか|す|おかす}}。{{おくりがな2|破|やぶ|る|やぶる}}。[[侵害]]する。 {{pt-conj|infrin|gir}} ===={{rel}}==== * {{l|pt|infrator}} oo8msfu0g6f36czjee456al236rqza8 предел 0 290825 2281005 1540735 2026-06-08T15:48:00Z M-30722 1202 2281005 wikitext text/x-wiki =={{L|mk}}== ==={{noun}}=== {{head|mk|noun|g=m}} #[[地域]]。 #[[区画]]。 {{mk-decl-noun-m||предел|}} =={{L|ru}}== {{wikipedia|lang=ru}} ==={{pron}}=== *{{IPA|lang=ru|prʲɪˈdʲel}} *{{homophones|lang=ru|приде́л}} ==={{noun}}=== {{head|ru|noun|head=преде́л|g=m-in}} #[[境界]]。 #[[国境]]。 #(複数形で) [[管区]]。 #{{タグ|ru|数学}} [[極限]]。 {{ru-noun-table|преде́л}} ===={{syn}}==== *{{l|ru|грани́ца}}, {{l|ru|рубе́ж}}, {{l|ru|край}} *{{l|ru|лими́т}} *{{l|ru|страна́}}, {{l|ru|край}} ===={{rel}}==== *{{l|ru|преде́льный}} *{{l|ru|определи́ть}}, {{l|ru|определя́ть}}, {{l|ru|определя́ться}} *{{l|ru|преде́льно}} 339wwfq34n140pr0sjgnhbve15u09sf しんぞう 0 321040 2281001 2279086 2026-06-08T15:39:26Z M-30722 1202 2281001 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しんそう|じんそう|じんぞう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[心像]]】[[イメージ]]。 *【[[心臓]]】[[自律的]]に[[拍動]]し、[[血液]]を全身に[[循環]]させる機能を有する[[循環器]]。 *【[[神像]]】[[かみ|神]]の[[すがた|姿]]を[[彫刻]]や[[絵画]]に[[表現]]した[[偶像]]。 *【[[新造]]】新しくつくること。 9jh350huyvxnnw0gtuxno0ouz3vrxb5 腫瘍学 0 321366 2280974 2208717 2026-06-08T15:02:49Z M-30722 1202 [[en:oncology]]より訳語追加 2280974 wikitext text/x-wiki {{kana-DEFAULTSORT|しゅようがく}} =={{L|ja}}== {{wikipedia}} ==={{noun}}=== {{ja-noun|しゅようがく|head=[[腫瘍]][[学]]}} #{{topcat|ja|腫瘍学}}[[癌]]や[[肉腫]]等の腫瘍に[[関連]]する[[医学]]の[[分野]]。 ===={{trans}}==== {{trans-top}} *{{T|is}}: {{t|is|æxlafræði|f}} *{{T|ga}}: {{t|ga|oinceolaíocht|f}} *{{T|ast}}: {{t|ast|oncoloxía|f}} *{{T|az}}: {{t|az|onkologiya}} *{{T|af}}: {{t|af|onkologie}} *{{T|ar}}: {{t|ar|عِلْم اَلْأَوْرَام|m}} *{{T|sq}}: {{t|sq|onkologjia|f}} *{{T|hy}}: {{t|hy|ուռուցքաբանություն}} *{{T|it}}: {{t|it|oncologia|f}} *{{T|yi}}: {{t|yi|אָנקאָלאָגיע}} *{{T|io}}: {{t|io|onkologio}} *{{T|id}}: {{t|id|onkologi}} *{{T|ia}}: {{t|ia|oncologia}} *{{T|cy}}: {{t|cy|oncoleg|f}} *{{T|uk}}: {{t|uk|онколо́гія|f}} *{{T|uz}}: *:キリル文字: {{t|uz|онкология}} *:ラテン文字: {{t|uz|onkologiya}} *{{T|en}}: {{t|en|oncology}} *{{T|et}}: {{t|et|onkoloogia}} *{{T|eo}}: {{t|eo|onkologio}} *{{T|oc}}: {{t|oc|oncologia|f}} *{{T|nl}}: {{t|nl|oncologie|f}} *{{T|kk}}: {{t|kk|онкология}} *{{T|ca}}: {{t|ca|oncologia|f}} *{{T|gl}}: {{t|gl|oncoloxía|f}} *{{T|kn}}: {{t|kn|ಗಂಟುರೋಗದ ಅರಿಮೆ}} *{{T|el}}: {{t|el|ογκολογία|f}} *{{T|ky}}: {{t|ky|онкология}} *{{T|ka}}: {{t|ka|ონკოლოგია}} *{{T|ku}}: *:{{T|kmr}}: {{t|kmr|onkolojî}} *{{T|sa}}: {{t|sa|ओन्कोलोजी}} *{{T|jv}}: {{t|jv|onkologi}} *{{T|sv}}: {{t|sv|onkologi|c}} *{{T|es}}: {{t|es|oncología|f}} *{{T|sk}}: {{t|sk|onkológia|f}} *{{T|sl}}: {{t|sl|onkologija|f}} *{{T|sh}}: *:キリル文字: {{t|sh|онколо̀гија|f}} *:ラテン文字: {{t|sh|onkològija|f}} *{{T|th}}: {{t|th|วิทยามะเร็ง|tr=wít-tá-yaa má-reng}}, {{t|th|วิทยาเนื้องอก|tr=wít-tá-yaa néua ngôk}} *{{T|tt}}: {{t|tt|онкология}} *{{T|ta}}: {{t|ta|புற்றுநோயியல்}} *{{T|cs}}: {{t|cs|onkologie|f}} *{{T|zh}}: {{t|cmn|腫瘤學|tr=zhǒngliúxué}} *{{T|ko}}: {{t|ko|종양학(腫瘍學)}} *{{T|da}}: {{t|da|onkologi|c}} *{{T|de}}: {{t|de|Onkologie|f}} *{{T|tr}}: {{t|tr|onkoloji}} *{{T|fy}}: {{t|fy|onkology}} *{{T|ne}}: {{t|ne|ओन्कोलोजी}} *{{T|new}}: {{t|new|अङ्कोलोजी}} *{{T|no}}: *:{{T|nn}}: {{t|nn|onkologi|m}} *:{{T|nb}}: {{t|nb|onkologi|m}} *{{T|pi}}: {{t|pi|ओन्कोलोजी}} *{{T|eu}}: {{t|eu|onkologia}} *{{T|hu}}: {{t|hu|onkológia}} *{{T|hi}}: {{t|hi|अर्बुदविज्ञान}} *{{T|fi}}: {{t|fi|onkologia}} *{{T|fr}}: {{t|fr|oncologie|f}} *{{T|bg}}: {{t|bg|онкология|f}} *{{T|vi}}: {{t|vi|ung thư học}} *{{T|he}}: {{t|he|אוֹנְקוֹלוֹגְיָה|f|tr=onkologya}} *{{T|be}}: {{t|be|анкалогія|f}} *{{T|pl}}: {{t|pl|onkologia|f}} *{{T|pt}}: {{t|pt|oncologia|f}} *{{T|mi}}: {{t|mi|mātai mate pukupuku}} *{{T|mk}}: {{t|mk|онкологија|f}} *{{T|ms}}: {{t|ms|kaji ketumbuhan}}, {{t|ms|kaji tumor}}, {{t+|ms|onkologi}} *{{T|xmf}}: {{t|xmf|ონკოლოგია}} *{{T|la}}: {{t|la|oncologia|f}} *{{T|lv}}: {{t|lv|onkoloģija|f}} *{{T|lt}}: {{t|lt|onkologija|f}} *{{T|ro}}: {{t|ro|oncologie|f}} *{{T|rw}}: {{t|rw|kanseri}} *{{T|ru}}: {{t|ru|онколо́гия|f}} *{{T|war}}: {{t|war|oncolohiya}} {{trans-bottom}} b4ifrpd5jhtlj2i6du9y8ie877ji9fr せいちょう 0 323104 2280958 2164295 2026-06-08T14:28:53Z M-30722 1202 2280958 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[正庁]]】[[正殿]]。 *【[[成長]]】物事が[[発達]]して、勢いが強まること。 *【[[成鳥]]】[[成長]]した鳥類。 *【[[生長]]】[[植物]]が育つこと。 生まれ育つこと。 *【[[声調]]】[[言語]]において、[[意味]]の[[区別]]に用いる、音の[[高低]]による[[パターン]]。 *【[[清聴]]】[[自分]]の話を聞いてくれることの敬語。 *【[[静聴]]】静かに聞くこと。 *【[[整腸]]】[[腸]]を整えること。 *【[[清澄]]】清らかで、澄んでいること。 *【[[性徴]]】[[性別]]を[[判別]]するための[[特徴]]。 *【[[政庁]]】[[政府]]がその[[業務]]を扱う役所。 *【[[青塚]]】[[こけ|苔]]や[[くさき|草木]]が繁茂した[[つか|塚]]。 p38t8b18l023to23no4dn4w1k5hol8p じゅよう 0 323117 2280951 2121891 2026-06-08T14:17:12Z M-30722 1202 2280951 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しゅよう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[受容]]】[[うけいれる|受け容れる]]こと。 *【[[需要]]】[[商品]]などを[[購入]]しようとする[[欲望]]。 41etjb0g17b6ifznk3uk7xv09cjjo9u かもん 0 323186 2280872 1932360 2026-06-08T12:52:53Z うーむ 129171 /* */ 2280872 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|がもん|カモン}} =={{ja}}== ==={{homonym}}=== {{head|jpn|同音異義}} *【[[火門]]】:南門。 *【[[下問]]】:[[目下]]のものに問うこと。 *【[[花紋]]】:[[花]]を図案化した[[模様]]。 *【[[家門]]】:[[一家]]。[[一門]]。 *【[[家紋]]】:[[家系]]の[[紋章]]。 *【[[渦紋]]】:[[うずまき]][[模様]]。 *【[[窠紋]]】:[[染物]]の模様の一つ。 37zylovim0gcbiaixrs08gx3fspynrm 2280880 2280872 2026-06-08T13:01:31Z M-30722 1202 2280880 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|がもん|カモン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[火門]]】南門。 *【[[下問]]】[[めした|目下]]のものに問うこと。 *【[[花紋]]】[[はな|花]]を図案化した[[模様]]。 *【[[家門]]】[[一家]]。[[一門]]。 *【[[家紋]]】[[家系]]の[[紋章]]。 *【[[渦紋]]】[[うずまき]][[模様]]。 *【[[窠紋]]】[[染物]]の模様の一つ。 3qe2rfeby3u2f8hnxltyxrouw45i9ea こんせい 0 323416 2281102 2134981 2026-06-09T02:20:30Z うーむ 129171 /* 日本語 */ 2281102 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{ja}}== ==={{homonym}}=== {{head|jpn|同音異義}} *【[[混声]]】:[[男声]]と[[女声]]との組み合わせ。 *【[[混成]]】:異なる[[種類]]の[[事物]]を[[複数]]混ぜ合わせて一つのものにすること。 *【[[混生]]】:いろいろな種類の植物が入り混じって生えること。 *【[[懇請]]】:心を込めて頼み込むこと。 9dai753z4oelquuqmq8f3q8rgmiyigs かしょう 0 323564 2280904 2152423 2026-06-08T13:21:49Z M-30722 1202 2280904 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|がしょう|かじょう|がじょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[仮晶]]】[[鉱物]]が[[本来]]の[[結晶]]形を保ったまま[[なかみ|中身]]が別の鉱物によって置き換えられることで、[[異常]]な結晶形となる[[現象]]。 *【[[仮称]]】[[かり|仮]]の[[名称]]。 *【[[嘉承]]】日本の元号の一つ。[[長治]]の後、[[天仁]]の前。 *【[[嘉祥]]】[[日本]]の[[元号]]の一つ。[[承和]]の次で、[[仁寿]]の前。 *【[[嘉賞]]・[[佳賞]]・[[嘉尚]]】良いこととして[[ほめる|褒める]]こと。 *【[[寡少]]】極めて少ないさま。 *【[[歌唱]]】[[うた|歌]]を歌うこと。 *【[[火傷]]】[[やけど]]。 *【[[過小]]】小さすぎるさま。 *【[[過少]]】少なすぎるさま。 *【[[過賞]]・[[過称]]・[[過奨]]】[[過剰]]に褒めること。 *【[[花床]]】[[花托]]。 *【[[河床]]】[[河川]]の底の[[地盤]]。 nnois6upx7s148vsrvv1cck5x2xfk1l かじょう 0 323567 2280903 2184834 2026-06-08T13:21:34Z M-30722 1202 2280903 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かしょう|がしょう|がじょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[過剰]]】[[程度]]や[[量]]が[[適切]]な[[範囲]]を[[超越]]していること。 *【[[家常]]】[[日常]]のこと。 *【[[箇条]]】それぞれの[[内容]]ごとに分けられ、並べて表わされたものの内の一つ。 *【[[科場]]】[[試験場]]。 *【[[下乗]]】[[愚者]]。 0u6vz22b2nt8kh11feq9jtgmjdtk2ko derogar 0 323713 2281286 1676139 2026-06-09T11:20:16Z Kuroco2k 84207 2281286 wikitext text/x-wiki =={{es}}== ==={{etym}}=== {{etyl|la|es}} ''[[derogare]]'' ==={{verb}}=== {{es-verb}} #{{context|legal|lang=es}}[[無効]]にする。[[廃止]]する。[[撤廃]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|derogación}} * {{l|es|rogar}} 1uvbw7h7nzev75i9lytm3n7w57e6ab8 advertir 0 325889 2281244 1370842 2026-06-09T11:03:38Z Kuroco2k 84207 2281244 wikitext text/x-wiki =={{ca}}== ==={{etym}}=== 15世紀初出。{{etyl|la|ca}} ''[[advertere]]'' ==={{pron}}=== * {{ca-IPA}} * {{rhymes|i(ɾ)}} * {{homophones|advertí|lang=ca}} ==={{verb}}=== {{ca-verb|ir|advert}} #[[注意]]を{{おくりがな2|引|ひ|く|ひく}}。[[警告]]する。 #{{おくりがな3|気|き||付|づ|く|きづく}}。 {{ca-conj-ir|advert}} ===={{drv}}==== * {{l|ca|advertència}} * {{l|ca|advertiment}} ---- =={{es}}== ==={{etym}}=== {{etyl|la|es}} ''[[advertere]]'' ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[注意]]を{{おくりがな2|引|ひ|く|ひく}}。[[警告]]する。 #{{おくりがな3|気|き||付|づ|く|きづく}}。 ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{syn}}==== * (語義1) {{l|es|avisar}} * (語義2) {{l|es|notar}} ===={{drv}}==== * {{l|es|advertible}} * {{l|es|advertimiento}} ===={{rel}}==== * {{l|es|advertencia}} * {{l|es|inadvertido}} * {{l|es|verter}} ---- =={{frm}}== ==={{verb}}=== {{head|frm|verb}} #[[警告]]する。 ===={{drv}}==== * {{l|frm|advertissement}} ---- =={{fr}}== ==={{verb}}=== {{fr-verb}} #[[avertir]]の廃用。 ===={{conjugation}}==== {{fr-conj-auto}} ===={{rel}}==== * {{l|fr|advertissement}} ---- =={{pt}}== ==={{etym}}=== {{etyl|la|pt}} ''[[advertere]]'' ==={{verb}}=== {{head|pt|verb|直説法現在第一人称単数|[[advirto]]|過去分詞|[[advertido]]}} #[[警告]]する。 ===={{syn}}==== * {{l|pt|prevenir}} 8yznfjk5svbrs4x53y4viw0bz6v183k モジュール:inflection utilities 828 326316 2281185 1371366 2026-06-09T09:24:39Z Kuroco2k 84207 2281185 Scribunto text/plain local export = {} local m_links = require("モジュール:links") local m_string_utilities = require("モジュール:string utilities") local m_table = require("モジュール:table") local rsplit = mw.text.split local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsubn = mw.ustring.gsub -- version of rsubn() that discards all but the first return value local function rsub(term, foo, bar) local retval = rsubn(term, foo, bar) return retval end local footnote_abbrevs = { ["a"] = "archaic", ["c"] = "colloquial", ["d"] = "dialectal", ["fp"] = "folk-poetic", ["l"] = "literary", ["lc"] = "low colloquial", ["p"] = "poetic", ["pej"] = "pejorative", ["r"] = "rare", } function export.remove_redundant_links(text) -- remove redundant link surrounding entire form return rsub(text, "^%[%[([^%[%]|]*)%]%]$", "%1") end --[=[ In order to understand the following parsing code, you need to understand how inflected text specs work. They are intended to work with inflected text where individual words to be inflected may be followed by inflection specs in angle brackets. The format of the text inside of the angle brackets is up to the individual language and part-of-speech specific implementation. A real-world example is as follows: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>". This is the inflection of a multiword expression "меди́чна сестра́", which means "nurse" (literally "medical sister"), consisting of two words: the adjective меди́чна ("medical" in the feminine singular) and the noun сестра́ ("sister"). The specs in angle brackets follow each word to be inflected; for example, <+> means that the preceding word should be declined as an adjective. The code below works in terms of balanced expressions, which are bounded by delimiters such as < > or [ ]. The intention is to allow separators such as spaces to be embedded inside of delimiters; such embedded separators will not be parsed as separators. For example, Ukrainian noun specs allow footnotes in brackets to be inserted inside of angle brackets; something like "меди́чна<+> сестра́<pr.[this is a footnote]>" is legal, as is "[[медичний|меди́чна]]<+> [[сестра́]]<pr.[this is an <i>italicized footnote</i>]>", and the parsing code should not be confused by the embedded brackets, spaces or angle brackets. The parsing is done by two functions, which work in close concert: parse_balanced_segment_run() and split_alternating_runs(). To illustrate, consider the following: parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Here, we start out with a typical inflected text spec "foo<M.proper noun> bar<F>", call parse_balanced_segment_run() on it, and call split_alternating_runs() on the result. The output of parse_balanced_segment_run() is a list where even-numbered segments are bounded by the bracket-like characters passed into the function, and odd-numbered segments consist of the surrounding text. split_alternating_runs() is called on this, and splits *only* the odd-numbered segments, grouping all segments between the specified character. Note that the inner lists output by split_alternating_runs() are themselves in the same format as the output of parse_balanced_segment_run(), with bracket-bounded text in the even-numbered segments. Hence, such lists can be passed again to split_alternating_runs(). ]=] -- Parse a string containing matched instances of parens, brackets or the like. -- Return a list of strings, alternating between textual runs not containing the -- open/close characters and runs beginning and ending with the open/close -- characters. For example, -- -- parse_balanced_segment_run("foo(x(1)), bar(2)", "(", ")") = {"foo", "(x(1))", ", bar", "(2)", ""}. function export.parse_balanced_segment_run(segment_run, open, close) local break_on_open_close = m_string_utilities.capturing_split(segment_run, "([%" .. open .. "%" .. close .. "])") local text_and_specs = {} local level = 0 local seg_group = {} for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then if seg == open then table.insert(seg_group, seg) level = level + 1 else assert(seg == close) table.insert(seg_group, seg) level = level - 1 if level < 0 then error("Unmatched " .. close .. " sign: '" .. segment_run .. "'") elseif level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open .. " sign: '" .. segment_run .. "'") end return text_and_specs end -- Like parse_balanced_segment_run() but accepts multiple sets of delimiters. For example, -- -- parse_multi_delimiter_balanced_segment_run("foo[bar(baz[bat])], quux<glorp>", {{"[", "]"}, {"(", ")"}, {"<", ">"}}) = -- {"foo", "[bar(baz[bat])]", ", quux", "<glorp>", ""}. function export.parse_multi_delimiter_balanced_segment_run(segment_run, delimiter_pairs) local open_to_close_map = {} local open_close_items = {} for _, open_close in ipairs(delimiter_pairs) do local open, close = unpack(open_close) open_to_close_map[open] = close table.insert(open_close_items, "%" .. open) table.insert(open_close_items, "%" .. close) end local open_close_pattern = "([" .. table.concat(open_close_items) .. "])" local break_on_open_close = m_string_utilities.capturing_split(segment_run, open_close_pattern) local text_and_specs = {} local level = 0 local seg_group = {} local open_at_level_zero for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then table.insert(seg_group, seg) if level == 0 then if not open_to_close_map[seg] then error("Unmatched " .. seg .. " sign: '" .. segment_run .. "'") end assert(open_at_level_zero == nil) open_at_level_zero = seg level = level + 1 elseif seg == open_at_level_zero then level = level + 1 elseif seg == open_to_close_map[open_at_level_zero] then level = level - 1 assert(level >= 0) if level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} open_at_level_zero = nil end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open_at_level_zero .. " sign: '" .. segment_run .. "'") end return text_and_specs end --[=[ Split a list of alternating textual runs of the format returned by `parse_balanced_segment_run` on `splitchar`. This only splits the odd-numbered textual runs (the portions between the balanced open/close characters). The return value is a list of lists, where each list contains an odd number of elements, where the even-numbered elements of the sublists are the original balanced textual run portions. For example, if we do parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Note that we did not touch the text "<M.proper noun>" even though it contains a space in it, because it is an even-numbered element of the input list. This is intentional and allows for embedded separators inside of brackets/parens/etc. Note also that the inner lists in the return value are of the same form as the input list (i.e. they consist of alternating textual runs where the even-numbered segments are balanced runs), and can in turn be passed to split_alternating_runs(). If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ", true) = {{"foo", "<M.proper noun>", ""}, {" "}, {"bar", "<F>", ""}} Consider what happens if the original string has multiple spaces between brackets, and multiple sets of brackets without spaces between them. parse_balanced_segment_run("foo[dated][low colloquial] baz-bat quux xyzzy[archaic]", "[", "]") = {"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""} then split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""}, "[ %-]") = {{"foo", "[dated]", "", "[low colloquial]", ""}, {"baz"}, {"bat"}, {"quux"}, {"xyzzy", "[archaic]", ""}} If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz bat quux xyzzy", "[archaic]", ""}, "[ %-]", true) = {{"foo", "[dated]", "", "[low colloquial]", ""}, {" "}, {"baz"}, {"-"}, {"bat"}, {" "}, {"quux"}, {" "}, {"xyzzy", "[archaic]", ""}} As can be seen, the even-numbered elements in the outer list are one-element lists consisting of the separator text. ]=] function export.split_alternating_runs(segment_runs, splitchar, preserve_splitchar) local grouped_runs = {} local run = {} for i, seg in ipairs(segment_runs) do if i % 2 == 0 then table.insert(run, seg) else local parts = preserve_splitchar and m_string_utilities.capturing_split(seg, "(" .. splitchar .. ")") or rsplit(seg, splitchar) table.insert(run, parts[1]) for j=2,#parts do table.insert(grouped_runs, run) run = {parts[j]} end end end if #run > 0 then table.insert(grouped_runs, run) end return grouped_runs end -- Given a list of forms (each of which is a table of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}), concatenate into a -- SLOT=FORM//TRANSLIT,FORM//TRANSLIT,... string (or SLOT=FORM,FORM,... if no translit), -- replacing embedded | signs with <!>. function export.concat_forms_in_slot(forms) if forms then local new_vals = {} for _, v in ipairs(forms) do local form = v.form if v.translit then form = form .. "//" .. v.translit end table.insert(new_vals, rsub(form, "|", "<!>")) end return table.concat(new_vals, ",") else return nil end end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into a list of such forms. If the form is already present, the footnotes of the existing and -- new form might be combined (specifically, footnotes in the new form beginning with ! will be -- combined). function export.insert_form_into_list(list, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end for _, listform in ipairs(list) do if listform.form == form.form and listform.translit == form.translit then -- Form already present; maybe combine footnotes. if form.footnotes then -- The behavior here has changed; track cases where the old behavior might -- be needed by adding ! to the footnote. require("モジュール:debug").track("inflection-utilities/combining-footnotes") local any_footnotes_with_bang = false for _, footnote in ipairs(form.footnotes) do if rfind(footnote, "^%[!") then any_footnotes_with_bang = true break end end if any_footnotes_with_bang then if not listform.footnotes then listform.footnotes = {} else listform.footnotes = m_table.shallowcopy(listform.footnotes) end for _, footnote in ipairs(form.footnotes) do local already_seen = false if rfind(footnote, "^%[!") then for _, existing_footnote in ipairs(listform.footnotes) do if rsub(existing_footnote, "^%[!", "") == rsub(footnote, "^%[!", "") then already_seen = true break end end if not already_seen then table.insert(listform.footnotes, footnote) end end end end end return end end -- Form not found. table.insert(list, form) end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into the given slot in the given form table. function export.insert_form(formtable, slot, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end if not formtable[slot] then formtable[slot] = {} end export.insert_form_into_list(formtable[slot], form) end -- Insert a list of forms (each of which is an object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) into the given slot in the given -- form table. FORMS can be nil. function export.insert_forms(formtable, slot, forms) if not forms then return end for _, form in ipairs(forms) do export.insert_form(formtable, slot, form) end end -- Map a function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called with -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.map_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local newform, newtranslit = fun(form.form, form.translit) newform = {form=newform, translit=newtranslit, footnotes=form.footnotes} export.insert_form_into_list(retval, newform) end return retval end -- Map a list-returning function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called witih -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- list of forms or a list of objects of the form {form=FORM, translit=MANUAL_TRANSLIT}. -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.flatmap_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local funret = fun(form.form, form.translit) for _, fr in ipairs(funret) do local newform if type(fr) == "table" then newform = {form=fr.form, translit=fr.translit, footnotes=form.footnotes} else newform = {form=fr, footnotes=form.footnotes} end export.insert_form_into_list(retval, newform) end end return retval end -- Map a function over the form values in FORMS (a single string, a single object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}, or a list of either of the -- previous two types). If FIRST_ONLY is given and FORMS is a list, only map over the first -- element. Return value is of the same form as FORMS. The function is called with two -- arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). function export.map_form_or_forms(forms, fn, first_only) if forms == nil then return nil elseif type(forms) == "string" then return forms == "?" and "?" or fn(forms) elseif forms.form then if forms.form == "?" then return {form = "?", footnotes = forms.footnotes} end local newform, newtranslit = fn(forms.form, forms.translit) return {form=newform, translit=newtranslit, footnotes=forms.footnotes} else local retval = {} for i, form in ipairs(forms) do if first_only then return export.map_form_or_forms(form, fn) end table.insert(retval, export.map_form_or_forms(form, fn)) end return retval end end -- Combine two sets of footnotes. If either is nil, just return the other, and if both are nil, -- return nil. function export.combine_footnotes(notes1, notes2) if not notes1 and not notes2 then return nil end if not notes1 then return notes2 end if not notes2 then return notes1 end local combined = m_table.shallowcopy(notes1) for _, note in ipairs(notes2) do m_table.insertIfNot(combined, note) end return combined end -- Expand a given footnote (as specified by the user, including the surrounding brackets) -- into the form to be inserted into the final generated table. function export.expand_footnote(note) local notetext = rmatch(note, "^%[!?(.*)%]$") if not notetext then error("Internal error: Footnote should be surrounded by brackets: " .. note) end if footnote_abbrevs[notetext] then notetext = footnote_abbrevs[notetext] else local split_notes = m_string_utilities.capturing_split(notetext, "<(.-)>") for i, split_note in ipairs(split_notes) do if i % 2 == 0 then split_notes[i] = footnote_abbrevs[split_note] if not split_notes[i] then -- Don't error for now, because HTML might be in the footnote. -- Instead we should switch the syntax here to e.g. <<a>> to avoid -- conflicting with HTML. split_notes[i] = "<" .. split_note .. ">" --error("Unrecognized footnote abbrev: <" .. split_note .. ">") end end end notetext = table.concat(split_notes) end return m_string_utilities.ucfirst(notetext) .. "." end -- Combine a form (either a string or a table {form = FORM, footnotes = FOOTNOTES, ...}) with footnotes. -- Do the minimal amount of work; e.g. if FOOTNOTES is nil, just return FORM. function export.combine_form_and_footnotes(form, footnotes) if type(footnotes) == "string" then footnotes = {footnotes} end if footnotes then if type(form) == "table" then form = m_table.shallowcopy(form) form.footnotes = export.combine_footnotes(form.footnotes, footnotes) return form else return {form = form, footnotes = footnotes} end else return form end end -- Older entry point. FIXME: Obsolete me. function export.generate_form(form, footnotes) return export.combine_form_and_footnotes(form, footnotes) end -- Combine a single form (either a string or object {form = FORM, footnotes = FOOTNOTES, ...}) or a list of same -- along with footnotes and return a list of forms where each returned form is an object -- {form = FORM, footnotes = FOOTNOTES, ...}. function export.convert_to_general_list_form(word_or_words, footnotes) if type(word_or_words) == "string" then return {{form = word_or_words, footnotes = footnotes}} elseif word_or_words.form then return {export.combine_form_and_footnotes(word_or_words, footnotes)} else local retval = {} for _, form in ipairs(word_or_words) do if type(form) == "string" then table.insert(retval, {form = form, footnotes = footnotes}) else table.insert(retval, export.combine_form_and_footnotes(form, footnotes)) end end return retval end end local function is_table_of_strings(forms) for k, v in pairs(forms) do if type(k) ~= "number" or type(v) ~= "string" then return false end end return true end function export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if stems == nil or endings == nil then return end if type(stems) == "string" and type(endings) == "string" then export.insert_form(forms, slot, {form = combine_stem_ending(stems, endings), footnotes = footnotes}) elseif type(stems) == "string" and is_table_of_strings(endings) then for _, ending in ipairs(endings) do export.insert_form(forms, slot, {form = combine_stem_ending(stems, ending), footnotes = footnotes}) end else stems = export.convert_to_general_list_form(stems) endings = export.convert_to_general_list_form(endings, footnotes) for _, stem in ipairs(stems) do for _, ending in ipairs(endings) do local footnotes = nil if stem.footnotes and ending.footnotes then footnotes = m_table.shallowcopy(stem.footnotes) for _, footnote in ipairs(ending.footnotes) do m_table.insertIfNot(footnotes, footnote) end elseif stem.footnotes then footnotes = stem.footnotes elseif ending.footnotes then footnotes = ending.footnotes end local new_form = combine_stem_ending(stem.form, ending.form) local new_translit if stem.translit or ending.translit then if not lang or not combine_stem_ending_tr then error("Internal error: With manual translit, 'lang' and 'combine_stem_ending_tr' must be passed to 'add_forms'") end local stem_tr = stem.translit or lang:transliterate(m_links.remove_links(stem.form)) local ending_tr = ending.translit or lang:transliterate(m_links.remove_links(ending.form)) new_translit = combine_stem_ending_tr(stem_tr, ending_tr) end export.insert_form(forms, slot, {form = new_form, translit = new_translit, footnotes = footnotes}) end end end end function export.add_multiple_forms(forms, slot, sets_of_forms, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if #sets_of_forms == 0 then return elseif #sets_of_forms == 1 then local formset = iut.convert_to_general_list_form(sets_of_forms[1], footnotes) export.insert_forms(forms, slot, formset) elseif #sets_of_forms == 2 then local stems = sets_of_forms[1] local endings = sets_of_forms[2] export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) else local prev = sets_of_forms[1] for i=2,#sets_of_forms do local tempdest = {} export.add_forms(tempdest, slot, prev, sets_of_forms[i], combine_stem_ending, lang, combine_stem_ending_tr, i == #sets_of_forms and footnotes or nil) prev = tempdest[slot] end export.insert_forms(forms, slot, prev) end end local function iterate_slot_list_or_table(props, do_slot) if props.slot_list then for _, slot_and_accel_form in ipairs(props.slot_list) do local slot, accel_form = unpack(slot_and_accel_form) do_slot(slot, accel_form) end else for slot, accel_form in pairs(props.slot_table) do do_slot(slot, accel_form) end end end local function parse_before_or_post_text(props, text, segments, lemma_is_last) -- If the text begins with a hyphen, include the hyphen in the set of allowed characters -- for an inflected segment. This way, e.g. conjugating "-ir" is treated as a regular -- -ir verb rather than a hyphen + irregular [[ir]]. local is_suffix = rfind(text, "^%-") -- Call parse_balanced_segment_run() to keep multiword links together. local bracketed_runs = export.parse_balanced_segment_run(text, "[", "]") -- Split on space or hyphen. Use preserve_splitchar so we know whether the separator was -- a space or hyphen. local space_separated_groups = export.split_alternating_runs(bracketed_runs, is_suffix and " " or "[ %-]", "preserve splitchar") local parsed_components = {} local parsed_components_translit = {} local saw_manual_translit = false local lemma for j, space_separated_group in ipairs(space_separated_groups) do local component = table.concat(space_separated_group) if lemma_is_last and j == #space_separated_groups then lemma = component if lemma == "" and not props.allow_blank_lemma then error("Word is blank: '" .. table.concat(segments) .. "'") end elseif rfind(component, "//") then -- Manual translit or respelling specified. if not props.lang then error("Manual translit not allowed for this language; if this is incorrect, 'props.lang' must be set internally") end saw_manual_translit = true local split = rsplit(component, "//") if #split ~= 2 then error("Term with translit or respelling should have only one // in it: " .. component) end local translit component, translit = unpack(split) if props.transliterate_respelling then translit = props.transliterate_respelling(translit) end table.insert(parsed_components, component) table.insert(parsed_components_translit, translit) else table.insert(parsed_components, component) table.insert(parsed_components_translit, false) -- signal that it may need later transliteration end end if saw_manual_translit then for j, parsed_component in ipairs(parsed_components) do if not parsed_components_translit[j] then parsed_components_translit[j] = props.lang:transliterate(m_links.remove_links(parsed_component)) end end end text = table.concat(parsed_components) local translit if saw_manual_translit then translit = table.concat(parsed_components_translit) end return text, translit, lemma end --[=[ Parse a segmented multiword spec such as "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (in Ukrainian). "Segmented" here means it is broken up on <...> segments using parse_balanced_segment_run(text, "<", ">"), e.g. the above text would be passed in as {"[[медичний|меди́чна]]", "<+>", " [[сестра́]]", "<*,*#.pr>", ""}. The return value is a table of the form { word_specs = {WORD_SPEC, WORD_SPEC, ...}, post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "MANUAL-TRANSLIT-OF-TEXT-AT-END" or nil (if no manual translit or respelling was specified in the post-text) } where WORD_SPEC describes an individual inflected word and "TEXT-AT-END" is any raw text that may occur after all inflected words. Individual words or linked text (including multiword text) may be given manual transliteration or respelling in languages that support this using TEXT//TRANSLIT or TEXT//RESPELLING. Each WORD_SPEC is of the form returned by parse_indicator_spec(): { lemma = "LEMMA", before_text = "TEXT-BEFORE-WORD", before_text_no_links = "TEXT-BEFORE-WORD-NO-LINKS", before_text_translit = "MANUAL-TRANSLIT-OF-TEXT-BEFORE-WORD" or nil (if no manual translit or respelling was specified in the before-text) -- Fields as described in parse_indicator_spec() ... } For example, the return value for "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" is { word_specs = { { lemma = "[[медичний|меди́чна]]", overrides = {}, adj = true, before_text = "", before_text_no_links = "", forms = {}, }, { lemma = "[[сестра́]]", overrides = {}, stresses = { { reducible = true, genpl_reversed = false, }, { reducible = true, genpl_reversed = true, }, }, animacy = "pr", before_text = " ", before_text_no_links = " ", forms = {}, }, }, post_text = "", post_text_no_links = "", } ]=] local function parse_multiword_spec(segments, props, disable_allow_default_indicator) local multiword_spec = { word_specs = {} } if not disable_allow_default_indicator and props.allow_default_indicator and #segments == 1 then table.insert(segments, "<>") table.insert(segments, "") end -- Loop over every other segment. The even-numbered segments are angle-bracket specs while -- the odd-numbered segments are the text between them. for i = 2, #segments - 1, 2 do local before_text, before_text_translit, lemma = parse_before_or_post_text(props, segments[i - 1], segments, "lemma is last") local base = props.parse_indicator_spec(segments[i]) base.before_text = before_text base.before_text_no_links = m_links.remove_links(base.before_text) base.before_text_translit = before_text_translit base.lemma = lemma table.insert(multiword_spec.word_specs, base) end multiword_spec.post_text, multiword_spec.post_text_translit = parse_before_or_post_text(props, segments[#segments], segments) multiword_spec.post_text_no_links = m_links.remove_links(multiword_spec.post_text) return multiword_spec end --[=[ Parse an alternant, e.g. "((родо́вий,родови́й))" or "((ру́син<pr>,руси́н<b.pr>))" (both in Ukrainian). The return value is a table of the form { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...} } where MULTIWORD_SPEC describes a given alternant and is as returned by parse_multiword_spec(). ]=] local function parse_alternant(alternant, props) local parsed_alternants = {} local alternant_text = rmatch(alternant, "^%(%((.*)%)%)$") local segments = export.parse_balanced_segment_run(alternant_text, "<", ">") local comma_separated_groups = export.split_alternating_runs(segments, "%s*,%s*") local alternant_spec = {alternants = {}} for _, comma_separated_group in ipairs(comma_separated_groups) do table.insert(alternant_spec.alternants, parse_multiword_spec(comma_separated_group, props)) end return alternant_spec end --[=[ Top-level parsing function. Parse text describing one or more inflected words. `text` is the inflected text to parse, which generally has <...> specs following words to be inflected, and may have alternants indicated using double parens. Examples: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (Ukrainian, for [[медична сестра]] "nurse (lit. medical sister)") "((ру́син<pr>,руси́н<b.pr>))" (Ukrainian, for [[русин]] "Rusyn") "पंचायती//पंचाय*ती राज<M>" (Hindi, for [[पंचायती राज]] "village council", with phonetic respelling in the before-text component) "((<M>,<M.plstem:फ़तूह.dirpl:फ़तूह>))" (Hindi, for [[फ़तह]] "win, victory", on that page, where the lemma is omitted and taken from the pagename) "" (for any number of Hindi adjectives, where the lemma is omitted and taken from the pagename, and the angle bracket spec <> is assumed) "काला<+>धन<M>" (Hindi, for [[कालाधन]] "black money") `props` is an object specifying properties used during parsing, as follows: { parse_indicator_spec = FUNCTION_TO_PARSE_AN_INDICATOR_SPEC (required; takes one argument, a string surrounded by angle brackets, and should return a word_spec object containing properties describing the indicators inside of the angle brackets), lang = LANG_OBJECT (only needed if manual translit or respelling may be present using //), transliterate_respelling = FUNCTION_TO_TRANSLITERATE_RESPELLING (only needed of respelling is allowed in place of manual translit after //; takes one argument, the respelling or translit, and should return the transliteration of any resplling but return any translit unchanged), allow_default_indicator = BOOLEAN_OR_NIL (true if the indicator in angle brackets can be omitted and will be automatically added at the end of the multiword text (if no alternants) or at the end of each alternant (if alternants present), allow_blank_lemma = BOOLEAN_OR_NIL (true if a blank lemma is allowed; in such a case, the calling function should substitute a default lemma, typically taken from the pagename) } The return value is a table of the form { alternant_or_word_specs = {ALTERNANT_OR_WORD_SPEC, ALTERNANT_OR_WORD_SPEC, ...} post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "TRANSLIT-OF-TEXT-AT-END" (or nil), } where ALTERNANT_OR_WORD_SPEC is either an alternant spec as returned by parse_alternant() or a multiword spec as described in the comment above parse_multiword_spec(). An alternant spec looks as follows: { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...}, before_text = "TEXT-BEFORE-ALTERNANT", before_text_no_links = "TEXT-BEFORE-ALTERNANT", before_text_translit = "TRANSLIT-OF-TEXT-BEFORE-ALTERNANT" (or nil), } i.e. it is like what is returned by parse_alternant() but has extra `before_text` and `before_text_no_links` fields. ]=] function export.parse_inflected_text(text, props) local alternant_multiword_spec = {alternant_or_word_specs = {}} local alternant_segments = m_string_utilities.capturing_split(text, "(%(%(.-%)%))") local last_post_text, last_post_text_no_links, last_post_text_translit for i = 1, #alternant_segments do if i % 2 == 1 then local segments = export.parse_balanced_segment_run(alternant_segments[i], "<", ">") -- Disable allow_default_indicator if alternants are present and we're processing -- the non-alternant text. Otherwise we will try to treat the non-alternant text -- surrounding the alternants as an inflected word rather than as raw text. local multiword_spec = parse_multiword_spec(segments, props, #alternant_segments ~= 1) for _, word_spec in ipairs(multiword_spec.word_specs) do table.insert(alternant_multiword_spec.alternant_or_word_specs, word_spec) end last_post_text = multiword_spec.post_text last_post_text_no_links = multiword_spec.post_text_no_links last_post_text_translit = multiword_spec.post_text_translit else local alternant_spec = parse_alternant(alternant_segments[i], props) alternant_spec.before_text = last_post_text alternant_spec.before_text_no_links = last_post_text_no_links alternant_spec.before_text_translit = last_post_text_translit table.insert(alternant_multiword_spec.alternant_or_word_specs, alternant_spec) end end alternant_multiword_spec.post_text = last_post_text alternant_multiword_spec.post_text_no_links = last_post_text_no_links alternant_multiword_spec.post_text_translit = last_post_text_translit return alternant_multiword_spec end -- Older entry point. FIXME: Convert all uses of this to use export.parse_inflected_text instead. function export.parse_alternant_multiword_spec(text, parse_indicator_spec, allow_default_indicator, allow_blank_lemma) local props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = allow_default_indicator, allow_blank_lemma = allow_blank_lemma, } return export.parse_inflected_text(text, props) end -- Inflect alternants in ALTERNANT_SPEC (an object as returned by parse_alternant()). -- This sets the form values in `ALTERNANT_SPEC.forms` for all slots. -- (If a given slot has no values, it will not be present in `ALTERNANT_SPEC.forms`). local function inflect_alternants(alternant_spec, props) alternant_spec.forms = {} for _, multiword_spec in ipairs(alternant_spec.alternants) do export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then export.insert_forms(alternant_spec.forms, slot, multiword_spec.forms[slot]) end end) end end local function append_forms(props, formtable, slot, forms, before_text, before_text_no_links, before_text_translit) if not forms then return end local old_forms = formtable[slot] or {{form = ""}} local ret_forms = {} for _, old_form in ipairs(old_forms) do for _, form in ipairs(forms) do local old_form_vars = props.get_variants and props.get_variants(old_form.form) or "" local form_vars = props.get_variants and props.get_variants(form.form) or "" if old_form_vars ~= "" and form_vars ~= "" and old_form_vars ~= form_vars then -- Reject combination due to non-matching variant codes. else local new_form = old_form.form .. before_text .. form.form local new_translit if old_form.translit or before_text_translit or form.translit then if not props.lang then error("Internal error: If manual translit is given, 'props.lang' must be set") end if not before_text_translit then before_text_translit = props.lang:transliterate(before_text_no_links) or "" end local old_translit = old_form.translit or props.lang:transliterate(m_links.remove_links(old_form.form)) or "" local translit = form.translit or props.lang:transliterate(m_links.remove_links(form.form)) or "" new_translit = old_translit .. before_text_translit .. translit end local new_footnotes = export.combine_footnotes(old_form.footnotes, form.footnotes) table.insert(ret_forms, {form=new_form, translit=new_translit, footnotes=new_footnotes}) end end end formtable[slot] = ret_forms end function export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) multiword_spec.forms = {} local is_alternant_multiword = not not multiword_spec.alternant_or_word_specs for _, word_spec in ipairs(is_alternant_multiword and multiword_spec.alternant_or_word_specs or multiword_spec.word_specs) do if word_spec.alternants then inflect_alternants(word_spec, props) elseif props.decline_word_spec then props.decline_word_spec(word_spec) else props.inflect_word_spec(word_spec) end iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then append_forms(props, multiword_spec.forms, slot, word_spec.forms[slot], (rfind(slot, "linked") or props.include_user_specified_links) and word_spec.before_text or word_spec.before_text_no_links, word_spec.before_text_no_links, word_spec.before_text_translit ) end end) end if multiword_spec.post_text ~= "" then local pseudoform = {{form=""}} iterate_slot_list_or_table(props, function(slot) -- If slot is empty or should be skipped, don't try to append post-text. if (not props.skip_slot or not props.skip_slot(slot)) and multiword_spec.forms[slot] then append_forms(props, multiword_spec.forms, slot, pseudoform, (rfind(slot, "linked") or props.include_user_specified_links) and multiword_spec.post_text or multiword_spec.post_text_no_links, multiword_spec.post_text_no_links, multiword_spec.post_text_translit ) end end) end end function export.decline_multiword_or_alternant_multiword_spec(multiword_spec, props) return export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) end function export.map_word_specs(alternant_multiword_spec, fun) for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do fun(word_spec) end end else fun(alternant_or_word_spec) end end end function export.create_footnote_obj() return { notes = {}, seen_notes = {}, noteindex = 1, } end function export.get_footnote_text(form, footnote_obj) if not form.footnotes then return "" end local link_indices = {} for _, footnote in ipairs(form.footnotes) do footnote = export.expand_footnote(footnote) local this_noteindex = footnote_obj.seen_notes[footnote] if not this_noteindex then -- Generate a footnote index. this_noteindex = footnote_obj.noteindex footnote_obj.noteindex = footnote_obj.noteindex + 1 table.insert(footnote_obj.notes, '<sup style="color: red">' .. this_noteindex .. '</sup>' .. footnote) footnote_obj.seen_notes[footnote] = this_noteindex end m_table.insertIfNot(link_indices, this_noteindex) end table.sort(link_indices) return '<sup style="color: red">' .. table.concat(link_indices, ",") .. '</sup>' end function export.add_links_to_before_and_after_text(alternant_multiword_spec, remember_original, add_links) add_links = add_links or export.add_links local function add_links_remember_original(object, field) if remember_original then object["user_specified_" .. field] = object[field] end object[field] = add_links(object[field]) end for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do add_links_remember_original(alternant_or_word_spec, "before_text") if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do add_links_remember_original(word_spec, "before_text") end add_links_remember_original(multiword_spec, "post_text") end end end add_links_remember_original(alternant_multiword_spec, "post_text") end --[=[ Convert the forms in `forms` (a list of form objects, each of which is a table of the form { form = FORM, translit = MANUAL_TRANSLIT_OR_NIL, footnotes = FOOTNOTE_LIST_OR_NIL, no_accel = TRUE_TO_SUPPRESS_ACCELERATORS }) into strings. Each form list turns into a string consisting of a comma-separated list of linked forms, with accelerators (unless `no_accel` is set in a given form). `props` is a table used in generating the strings, as follows: { lang = LANG_OBJECT, lemmas = LEMMAS, slot_table = SLOT_TABLE, slot_list = SLOT_LIST, include_translit = BOOLEAN, create_footnote_obj = FUNCTION_TO_CREATE_FOOTNOTE_OBJ, canonicalize = FUNCTION_TO_CANONICALIZE_EACH_FORM, transform_link = FUNCTION_TO_TRANSFORM_EACH_LINK, join_spans = FUNCTION_TO_JOIN_SPANS, allow_footnote_symbols = BOOLEAN, footnotes = EXTRA_FOOTNOTES, } `lemmas` is the list of lemmas, used in the accelerators. `slot_list` is a list of two-element lists of slots and associated accelerator inflections. `slot_table` is a table mapping slots to associated accelerator inflections. (One of `slot_list` or `slot_table` must be given.) If `include_translit` is given, transliteration is included in the generated strings. `create_footnote_obj` is an optional function of no arguments to create the footnote object used to track footnotes; see export.create_footnote_obj(). Customizing it is useful to prepopulate the footnote table using export.get_footnote_text(). `canonicalize` is an optional function of one argument (a form) to canonicalize each form before processing; it can return nil for no change. `transform_link` is an optional function to transform a linked form prior to further processing; it is passed three arguments (slot, link, link_tr) and should return the transformed link (or if translit is active, it should return the transformed link and corresponding translit). It can return nil for no change. `join_spans` is an optional function of three arguments (slot, orig_spans, tr_spans) where the spans in question are after linking and footnote processing. It should return a string (the joined spans) or nil for the default algorithm, which separately joins the orig_spans and tr_spans with commas and puts a newline between them. If `allow_footnote_symbols` is given, footnote symbols attached to forms (e.g. numbers, asterisk) are separated off, placed outside the links, and superscripted. In this case, `footnotes` should be a list of footnotes (preceded by footnote symbols, which are superscripted). These footnotes are combined with any footnotes found in the forms and placed into `forms.footnotes`. ]=] function export.show_forms(forms, props) local footnote_obj = props.create_footnote_obj and props.create_footnote_obj() or export.create_footnote_obj() local accel_lemma = props.lemmas[1] local accel_lemma_translit if type(accel_lemma) == "table" then accel_lemma_translit = accel_lemma.translit accel_lemma = accel_lemma.form end accel_lemma = accel_lemma and m_links.remove_links(accel_lemma) or nil local lemma_forms = {} for _, lemma in ipairs(props.lemmas) do if type(lemma) == "table" then m_table.insertIfNot(lemma_forms, lemma.form) else m_table.insertIfNot(lemma_forms, lemma) end end forms.lemma = #lemma_forms > 0 and table.concat(lemma_forms, ", ") or mw.title.getCurrentTitle().text local m_table_tools = require("モジュール:table tools") local m_script_utilities = require("モジュール:script utilities") local function do_slot(slot, accel_form) local formvals = forms[slot] if formvals then local orig_spans = {} local tr_spans = {} local orignotes, trnotes = "", "" for i, form in ipairs(formvals) do local orig_text = props.canonicalize and props.canonicalize(form.form) or form.form local link if form.form == "—" or form.form == "?" then link = orig_text else local origentry if props.allow_footnote_symbols then origentry, orignotes = m_table_tools.get_notes(orig_text) else origentry = orig_text end -- remove redundant link surrounding entire form origentry = export.remove_redundant_links(origentry) local accel_obj -- check if form still has links; if so, don't add accelerators -- because the resulting entries will be wrong if accel_lemma and not form.no_accel and accel_form ~= "-" and not rfind(origentry, "%[%[") then accel_obj = { form = accel_form, translit = props.include_translit and form.translit or nil, lemma = accel_lemma, lemma_translit = props.include_translit and accel_lemma_translit or nil, } end link = m_links.full_link{lang = props.lang, term = origentry, tr = "-", accel = accel_obj} end local tr = props.include_translit and (form.translit or props.lang:transliterate(m_links.remove_links(orig_text))) or nil local trentry if props.allow_footnote_symbols and tr then trentry, trnotes = m_table_tools.get_notes(tr) else trentry = tr end if props.transform_link then local newlink, newtr = props.transform_link(slot, link, tr) if newlink then link, tr = newlink, newtr end end link = link .. orignotes tr = tr and m_script_utilities.tag_translit(trentry, props.lang, "default", " style=\"color: #888;\"") .. trnotes or nil if form.footnotes then local footnote_text = export.get_footnote_text(form, footnote_obj) link = link .. footnote_text tr = tr and tr .. footnote_text or nil end table.insert(orig_spans, link) if tr then table.insert(tr_spans, tr) end end local joined_spans if props.join_spans then joined_spans = props.join_spans(slot, orig_spans, tr_spans) end if not joined_spans then local orig_span = table.concat(orig_spans, ", ") local tr_span if #tr_spans > 0 then tr_span = table.concat(tr_spans, ", ") end if tr_span then joined_spans = orig_span .. "<br />" .. tr_span else joined_spans = orig_span end end forms[slot] = joined_spans else forms[slot] = "—" end end iterate_slot_list_or_table(props, do_slot) local all_notes = footnote_obj.notes if props.footnotes then for _, note in ipairs(props.footnotes) do local symbol, entry = m_table_tools.get_initial_notes(note) table.insert(all_notes, symbol .. entry) end end forms.footnote = table.concat(all_notes, "<br />") end --[=[ Older entry point. Same as `show_forms` but automatically sets include_translit = true in props. ]=] function export.show_forms_with_translit(forms, lemmas, slot_table, props, footnotes, allow_footnote_symbols) props.lemmas = lemmas props.slot_table = slot_table props.footnotes = footnotes props.allow_footnote_symbols = allow_footnote_symbols props.include_translit = true return export.show_forms(forms, props) end return export erbhmvi7dpjgn858mmtss3qqldv9i9y 2281186 2281185 2026-06-09T09:25:52Z Kuroco2k 84207 2281186 Scribunto text/plain local export = {} local m_links = require("モジュール:links") local m_string_utilities = require("モジュール:string utilities") local m_table = require("モジュール:table") local rsplit = mw.text.split local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsubn = mw.ustring.gsub -- version of rsubn() that discards all but the first return value local function rsub(term, foo, bar) local retval = rsubn(term, foo, bar) return retval end local footnote_abbrevs = { ["a"] = "archaic", ["c"] = "colloquial", ["d"] = "dialectal", ["fp"] = "folk-poetic", ["l"] = "literary", ["lc"] = "low colloquial", ["p"] = "poetic", ["pej"] = "pejorative", ["r"] = "rare", } function export.remove_redundant_links(text) -- remove redundant link surrounding entire form return rsub(text, "^%[%[([^%[%]|]*)%]%]$", "%1") end --[=[ In order to understand the following parsing code, you need to understand how inflected text specs work. They are intended to work with inflected text where individual words to be inflected may be followed by inflection specs in angle brackets. The format of the text inside of the angle brackets is up to the individual language and part-of-speech specific implementation. A real-world example is as follows: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>". This is the inflection of a multiword expression "меди́чна сестра́", which means "nurse" (literally "medical sister"), consisting of two words: the adjective меди́чна ("medical" in the feminine singular) and the noun сестра́ ("sister"). The specs in angle brackets follow each word to be inflected; for example, <+> means that the preceding word should be declined as an adjective. The code below works in terms of balanced expressions, which are bounded by delimiters such as < > or [ ]. The intention is to allow separators such as spaces to be embedded inside of delimiters; such embedded separators will not be parsed as separators. For example, Ukrainian noun specs allow footnotes in brackets to be inserted inside of angle brackets; something like "меди́чна<+> сестра́<pr.[this is a footnote]>" is legal, as is "[[медичний|меди́чна]]<+> [[сестра́]]<pr.[this is an <i>italicized footnote</i>]>", and the parsing code should not be confused by the embedded brackets, spaces or angle brackets. The parsing is done by two functions, which work in close concert: parse_balanced_segment_run() and split_alternating_runs(). To illustrate, consider the following: parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Here, we start out with a typical inflected text spec "foo<M.proper noun> bar<F>", call parse_balanced_segment_run() on it, and call split_alternating_runs() on the result. The output of parse_balanced_segment_run() is a list where even-numbered segments are bounded by the bracket-like characters passed into the function, and odd-numbered segments consist of the surrounding text. split_alternating_runs() is called on this, and splits *only* the odd-numbered segments, grouping all segments between the specified character. Note that the inner lists output by split_alternating_runs() are themselves in the same format as the output of parse_balanced_segment_run(), with bracket-bounded text in the even-numbered segments. Hence, such lists can be passed again to split_alternating_runs(). ]=] -- Parse a string containing matched instances of parens, brackets or the like. -- Return a list of strings, alternating between textual runs not containing the -- open/close characters and runs beginning and ending with the open/close -- characters. For example, -- -- parse_balanced_segment_run("foo(x(1)), bar(2)", "(", ")") = {"foo", "(x(1))", ", bar", "(2)", ""}. function export.parse_balanced_segment_run(segment_run, open, close) local break_on_open_close = m_string_utilities.capturing_split(segment_run, "([%" .. open .. "%" .. close .. "])") local text_and_specs = {} local level = 0 local seg_group = {} for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then if seg == open then table.insert(seg_group, seg) level = level + 1 else assert(seg == close) table.insert(seg_group, seg) level = level - 1 if level < 0 then error("Unmatched " .. close .. " sign: '" .. segment_run .. "'") elseif level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open .. " sign: '" .. segment_run .. "'") end return text_and_specs end -- Like parse_balanced_segment_run() but accepts multiple sets of delimiters. For example, -- -- parse_multi_delimiter_balanced_segment_run("foo[bar(baz[bat])], quux<glorp>", {{"[", "]"}, {"(", ")"}, {"<", ">"}}) = -- {"foo", "[bar(baz[bat])]", ", quux", "<glorp>", ""}. function export.parse_multi_delimiter_balanced_segment_run(segment_run, delimiter_pairs) local open_to_close_map = {} local open_close_items = {} for _, open_close in ipairs(delimiter_pairs) do local open, close = unpack(open_close) open_to_close_map[open] = close table.insert(open_close_items, "%" .. open) table.insert(open_close_items, "%" .. close) end local open_close_pattern = "([" .. table.concat(open_close_items) .. "])" local break_on_open_close = m_string_utilities.capturing_split(segment_run, open_close_pattern) local text_and_specs = {} local level = 0 local seg_group = {} local open_at_level_zero for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then table.insert(seg_group, seg) if level == 0 then if not open_to_close_map[seg] then error("Unmatched " .. seg .. " sign: '" .. segment_run .. "'") end assert(open_at_level_zero == nil) open_at_level_zero = seg level = level + 1 elseif seg == open_at_level_zero then level = level + 1 elseif seg == open_to_close_map[open_at_level_zero] then level = level - 1 assert(level >= 0) if level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} open_at_level_zero = nil end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open_at_level_zero .. " sign: '" .. segment_run .. "'") end return text_and_specs end --[=[ Split a list of alternating textual runs of the format returned by `parse_balanced_segment_run` on `splitchar`. This only splits the odd-numbered textual runs (the portions between the balanced open/close characters). The return value is a list of lists, where each list contains an odd number of elements, where the even-numbered elements of the sublists are the original balanced textual run portions. For example, if we do parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Note that we did not touch the text "<M.proper noun>" even though it contains a space in it, because it is an even-numbered element of the input list. This is intentional and allows for embedded separators inside of brackets/parens/etc. Note also that the inner lists in the return value are of the same form as the input list (i.e. they consist of alternating textual runs where the even-numbered segments are balanced runs), and can in turn be passed to split_alternating_runs(). If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ", true) = {{"foo", "<M.proper noun>", ""}, {" "}, {"bar", "<F>", ""}} Consider what happens if the original string has multiple spaces between brackets, and multiple sets of brackets without spaces between them. parse_balanced_segment_run("foo[dated][low colloquial] baz-bat quux xyzzy[archaic]", "[", "]") = {"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""} then split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""}, "[ %-]") = {{"foo", "[dated]", "", "[low colloquial]", ""}, {"baz"}, {"bat"}, {"quux"}, {"xyzzy", "[archaic]", ""}} If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz bat quux xyzzy", "[archaic]", ""}, "[ %-]", true) = {{"foo", "[dated]", "", "[low colloquial]", ""}, {" "}, {"baz"}, {"-"}, {"bat"}, {" "}, {"quux"}, {" "}, {"xyzzy", "[archaic]", ""}} As can be seen, the even-numbered elements in the outer list are one-element lists consisting of the separator text. ]=] function export.split_alternating_runs(segment_runs, splitchar, preserve_splitchar) local grouped_runs = {} local run = {} for i, seg in ipairs(segment_runs) do if i % 2 == 0 then table.insert(run, seg) else local parts = preserve_splitchar and m_string_utilities.capturing_split(seg, "(" .. splitchar .. ")") or rsplit(seg, splitchar) table.insert(run, parts[1]) for j=2,#parts do table.insert(grouped_runs, run) run = {parts[j]} end end end if #run > 0 then table.insert(grouped_runs, run) end return grouped_runs end -- Given a list of forms (each of which is a table of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}), concatenate into a -- SLOT=FORM//TRANSLIT,FORM//TRANSLIT,... string (or SLOT=FORM,FORM,... if no translit), -- replacing embedded | signs with <!>. function export.concat_forms_in_slot(forms) if forms then local new_vals = {} for _, v in ipairs(forms) do local form = v.form if v.translit then form = form .. "//" .. v.translit end table.insert(new_vals, rsub(form, "|", "<!>")) end return table.concat(new_vals, ",") else return nil end end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into a list of such forms. If the form is already present, the footnotes of the existing and -- new form might be combined (specifically, footnotes in the new form beginning with ! will be -- combined). function export.insert_form_into_list(list, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end for _, listform in ipairs(list) do if listform.form == form.form and listform.translit == form.translit then -- Form already present; maybe combine footnotes. if form.footnotes then -- The behavior here has changed; track cases where the old behavior might -- be needed by adding ! to the footnote. require("モジュール:debug").track("inflection-utilities/combining-footnotes") local any_footnotes_with_bang = false for _, footnote in ipairs(form.footnotes) do if rfind(footnote, "^%[!") then any_footnotes_with_bang = true break end end if any_footnotes_with_bang then if not listform.footnotes then listform.footnotes = {} else listform.footnotes = m_table.shallowcopy(listform.footnotes) end for _, footnote in ipairs(form.footnotes) do local already_seen = false if rfind(footnote, "^%[!") then for _, existing_footnote in ipairs(listform.footnotes) do if rsub(existing_footnote, "^%[!", "") == rsub(footnote, "^%[!", "") then already_seen = true break end end if not already_seen then table.insert(listform.footnotes, footnote) end end end end end return end end -- Form not found. table.insert(list, form) end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into the given slot in the given form table. function export.insert_form(formtable, slot, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end if not formtable[slot] then formtable[slot] = {} end export.insert_form_into_list(formtable[slot], form) end -- Insert a list of forms (each of which is an object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) into the given slot in the given -- form table. FORMS can be nil. function export.insert_forms(formtable, slot, forms) if not forms then return end for _, form in ipairs(forms) do export.insert_form(formtable, slot, form) end end -- Map a function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called with -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.map_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local newform, newtranslit = fun(form.form, form.translit) newform = {form=newform, translit=newtranslit, footnotes=form.footnotes} export.insert_form_into_list(retval, newform) end return retval end -- Map a list-returning function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called witih -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- list of forms or a list of objects of the form {form=FORM, translit=MANUAL_TRANSLIT}. -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.flatmap_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local funret = fun(form.form, form.translit) for _, fr in ipairs(funret) do local newform if type(fr) == "table" then newform = {form=fr.form, translit=fr.translit, footnotes=form.footnotes} else newform = {form=fr, footnotes=form.footnotes} end export.insert_form_into_list(retval, newform) end end return retval end -- Map a function over the form values in FORMS (a single string, a single object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}, or a list of either of the -- previous two types). If FIRST_ONLY is given and FORMS is a list, only map over the first -- element. Return value is of the same form as FORMS. The function is called with two -- arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). function export.map_form_or_forms(forms, fn, first_only) if forms == nil then return nil elseif type(forms) == "string" then return forms == "?" and "?" or fn(forms) elseif forms.form then if forms.form == "?" then return {form = "?", footnotes = forms.footnotes} end local newform, newtranslit = fn(forms.form, forms.translit) return {form=newform, translit=newtranslit, footnotes=forms.footnotes} else local retval = {} for i, form in ipairs(forms) do if first_only then return export.map_form_or_forms(form, fn) end table.insert(retval, export.map_form_or_forms(form, fn)) end return retval end end -- Combine two sets of footnotes. If either is nil, just return the other, and if both are nil, -- return nil. function export.combine_footnotes(notes1, notes2) if not notes1 and not notes2 then return nil end if not notes1 then return notes2 end if not notes2 then return notes1 end local combined = m_table.shallowcopy(notes1) for _, note in ipairs(notes2) do m_table.insertIfNot(combined, note) end return combined end -- Expand a given footnote (as specified by the user, including the surrounding brackets) -- into the form to be inserted into the final generated table. function export.expand_footnote(note) local notetext = rmatch(note, "^%[!?(.*)%]$") if not notetext then error("Internal error: Footnote should be surrounded by brackets: " .. note) end if footnote_abbrevs[notetext] then notetext = footnote_abbrevs[notetext] else local split_notes = m_string_utilities.capturing_split(notetext, "<(.-)>") for i, split_note in ipairs(split_notes) do if i % 2 == 0 then split_notes[i] = footnote_abbrevs[split_note] if not split_notes[i] then -- Don't error for now, because HTML might be in the footnote. -- Instead we should switch the syntax here to e.g. <<a>> to avoid -- conflicting with HTML. split_notes[i] = "<" .. split_note .. ">" --error("Unrecognized footnote abbrev: <" .. split_note .. ">") end end end notetext = table.concat(split_notes) end return m_string_utilities.ucfirst(notetext) .. "." end -- Combine a form (either a string or a table {form = FORM, footnotes = FOOTNOTES, ...}) with footnotes. -- Do the minimal amount of work; e.g. if FOOTNOTES is nil, just return FORM. function export.combine_form_and_footnotes(form, footnotes) if type(footnotes) == "string" then footnotes = {footnotes} end if footnotes then if type(form) == "table" then form = m_table.shallowcopy(form) form.footnotes = export.combine_footnotes(form.footnotes, footnotes) return form else return {form = form, footnotes = footnotes} end else return form end end -- Older entry point. FIXME: Obsolete me. function export.generate_form(form, footnotes) return export.combine_form_and_footnotes(form, footnotes) end -- Combine a single form (either a string or object {form = FORM, footnotes = FOOTNOTES, ...}) or a list of same -- along with footnotes and return a list of forms where each returned form is an object -- {form = FORM, footnotes = FOOTNOTES, ...}. function export.convert_to_general_list_form(word_or_words, footnotes) if type(word_or_words) == "string" then return {{form = word_or_words, footnotes = footnotes}} elseif word_or_words.form then return {export.combine_form_and_footnotes(word_or_words, footnotes)} else local retval = {} for _, form in ipairs(word_or_words) do if type(form) == "string" then table.insert(retval, {form = form, footnotes = footnotes}) else table.insert(retval, export.combine_form_and_footnotes(form, footnotes)) end end return retval end end local function is_table_of_strings(forms) for k, v in pairs(forms) do if type(k) ~= "number" or type(v) ~= "string" then return false end end return true end function export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if stems == nil or endings == nil then return end if type(stems) == "string" and type(endings) == "string" then export.insert_form(forms, slot, {form = combine_stem_ending(stems, endings), footnotes = footnotes}) elseif type(stems) == "string" and is_table_of_strings(endings) then for _, ending in ipairs(endings) do export.insert_form(forms, slot, {form = combine_stem_ending(stems, ending), footnotes = footnotes}) end else stems = export.convert_to_general_list_form(stems) endings = export.convert_to_general_list_form(endings, footnotes) for _, stem in ipairs(stems) do for _, ending in ipairs(endings) do local footnotes = nil if stem.footnotes and ending.footnotes then footnotes = m_table.shallowcopy(stem.footnotes) for _, footnote in ipairs(ending.footnotes) do m_table.insertIfNot(footnotes, footnote) end elseif stem.footnotes then footnotes = stem.footnotes elseif ending.footnotes then footnotes = ending.footnotes end local new_form = combine_stem_ending(stem.form, ending.form) local new_translit if stem.translit or ending.translit then if not lang or not combine_stem_ending_tr then error("Internal error: With manual translit, 'lang' and 'combine_stem_ending_tr' must be passed to 'add_forms'") end local stem_tr = stem.translit or lang:transliterate(m_links.remove_links(stem.form)) local ending_tr = ending.translit or lang:transliterate(m_links.remove_links(ending.form)) new_translit = combine_stem_ending_tr(stem_tr, ending_tr) end export.insert_form(forms, slot, {form = new_form, translit = new_translit, footnotes = footnotes}) end end end end function export.add_multiple_forms(forms, slot, sets_of_forms, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if #sets_of_forms == 0 then return elseif #sets_of_forms == 1 then local formset = iut.convert_to_general_list_form(sets_of_forms[1], footnotes) export.insert_forms(forms, slot, formset) elseif #sets_of_forms == 2 then local stems = sets_of_forms[1] local endings = sets_of_forms[2] export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) else local prev = sets_of_forms[1] for i=2,#sets_of_forms do local tempdest = {} export.add_forms(tempdest, slot, prev, sets_of_forms[i], combine_stem_ending, lang, combine_stem_ending_tr, i == #sets_of_forms and footnotes or nil) prev = tempdest[slot] end export.insert_forms(forms, slot, prev) end end local function iterate_slot_list_or_table(props, do_slot) if props.slot_list then for _, slot_and_accel_form in ipairs(props.slot_list) do local slot, accel_form = unpack(slot_and_accel_form) do_slot(slot, accel_form) end else for slot, accel_form in pairs(props.slot_table) do do_slot(slot, accel_form) end end end local function parse_before_or_post_text(props, text, segments, lemma_is_last) -- If the text begins with a hyphen, include the hyphen in the set of allowed characters -- for an inflected segment. This way, e.g. conjugating "-ir" is treated as a regular -- -ir verb rather than a hyphen + irregular [[ir]]. local is_suffix = rfind(text, "^%-") -- Call parse_balanced_segment_run() to keep multiword links together. local bracketed_runs = export.parse_balanced_segment_run(text, "[", "]") -- Split on space or hyphen. Use preserve_splitchar so we know whether the separator was -- a space or hyphen. local space_separated_groups = export.split_alternating_runs(bracketed_runs, is_suffix and " " or "[ %-]", "preserve splitchar") local parsed_components = {} local parsed_components_translit = {} local saw_manual_translit = false local lemma for j, space_separated_group in ipairs(space_separated_groups) do local component = table.concat(space_separated_group) if lemma_is_last and j == #space_separated_groups then lemma = component if lemma == "" and not props.allow_blank_lemma then error("Word is blank: '" .. table.concat(segments) .. "'") end elseif rfind(component, "//") then -- Manual translit or respelling specified. if not props.lang then error("Manual translit not allowed for this language; if this is incorrect, 'props.lang' must be set internally") end saw_manual_translit = true local split = rsplit(component, "//") if #split ~= 2 then error("Term with translit or respelling should have only one // in it: " .. component) end local translit component, translit = unpack(split) if props.transliterate_respelling then translit = props.transliterate_respelling(translit) end table.insert(parsed_components, component) table.insert(parsed_components_translit, translit) else table.insert(parsed_components, component) table.insert(parsed_components_translit, false) -- signal that it may need later transliteration end end if saw_manual_translit then for j, parsed_component in ipairs(parsed_components) do if not parsed_components_translit[j] then parsed_components_translit[j] = props.lang:transliterate(m_links.remove_links(parsed_component)) end end end text = table.concat(parsed_components) local translit if saw_manual_translit then translit = table.concat(parsed_components_translit) end return text, translit, lemma end --[=[ Parse a segmented multiword spec such as "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (in Ukrainian). "Segmented" here means it is broken up on <...> segments using parse_balanced_segment_run(text, "<", ">"), e.g. the above text would be passed in as {"[[медичний|меди́чна]]", "<+>", " [[сестра́]]", "<*,*#.pr>", ""}. The return value is a table of the form { word_specs = {WORD_SPEC, WORD_SPEC, ...}, post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "MANUAL-TRANSLIT-OF-TEXT-AT-END" or nil (if no manual translit or respelling was specified in the post-text) } where WORD_SPEC describes an individual inflected word and "TEXT-AT-END" is any raw text that may occur after all inflected words. Individual words or linked text (including multiword text) may be given manual transliteration or respelling in languages that support this using TEXT//TRANSLIT or TEXT//RESPELLING. Each WORD_SPEC is of the form returned by parse_indicator_spec(): { lemma = "LEMMA", before_text = "TEXT-BEFORE-WORD", before_text_no_links = "TEXT-BEFORE-WORD-NO-LINKS", before_text_translit = "MANUAL-TRANSLIT-OF-TEXT-BEFORE-WORD" or nil (if no manual translit or respelling was specified in the before-text) -- Fields as described in parse_indicator_spec() ... } For example, the return value for "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" is { word_specs = { { lemma = "[[медичний|меди́чна]]", overrides = {}, adj = true, before_text = "", before_text_no_links = "", forms = {}, }, { lemma = "[[сестра́]]", overrides = {}, stresses = { { reducible = true, genpl_reversed = false, }, { reducible = true, genpl_reversed = true, }, }, animacy = "pr", before_text = " ", before_text_no_links = " ", forms = {}, }, }, post_text = "", post_text_no_links = "", } ]=] local function parse_multiword_spec(segments, props, disable_allow_default_indicator) local multiword_spec = { word_specs = {} } if not disable_allow_default_indicator and props.allow_default_indicator and #segments == 1 then table.insert(segments, "<>") table.insert(segments, "") end -- Loop over every other segment. The even-numbered segments are angle-bracket specs while -- the odd-numbered segments are the text between them. for i = 2, #segments - 1, 2 do local before_text, before_text_translit, lemma = parse_before_or_post_text(props, segments[i - 1], segments, "lemma is last") local base = props.parse_indicator_spec(segments[i]) base.before_text = before_text base.before_text_no_links = m_links.remove_links(base.before_text) base.before_text_translit = before_text_translit base.lemma = lemma table.insert(multiword_spec.word_specs, base) end multiword_spec.post_text, multiword_spec.post_text_translit = parse_before_or_post_text(props, segments[#segments], segments) multiword_spec.post_text_no_links = m_links.remove_links(multiword_spec.post_text) return multiword_spec end --[=[ Parse an alternant, e.g. "((родо́вий,родови́й))" or "((ру́син<pr>,руси́н<b.pr>))" (both in Ukrainian). The return value is a table of the form { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...} } where MULTIWORD_SPEC describes a given alternant and is as returned by parse_multiword_spec(). ]=] local function parse_alternant(alternant, props) local parsed_alternants = {} local alternant_text = rmatch(alternant, "^%(%((.*)%)%)$") local segments = export.parse_balanced_segment_run(alternant_text, "<", ">") local comma_separated_groups = export.split_alternating_runs(segments, "%s*,%s*") local alternant_spec = {alternants = {}} for _, comma_separated_group in ipairs(comma_separated_groups) do table.insert(alternant_spec.alternants, parse_multiword_spec(comma_separated_group, props)) end return alternant_spec end --[=[ Top-level parsing function. Parse text describing one or more inflected words. `text` is the inflected text to parse, which generally has <...> specs following words to be inflected, and may have alternants indicated using double parens. Examples: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (Ukrainian, for [[медична сестра]] "nurse (lit. medical sister)") "((ру́син<pr>,руси́н<b.pr>))" (Ukrainian, for [[русин]] "Rusyn") "पंचायती//पंचाय*ती राज<M>" (Hindi, for [[पंचायती राज]] "village council", with phonetic respelling in the before-text component) "((<M>,<M.plstem:फ़तूह.dirpl:फ़तूह>))" (Hindi, for [[फ़तह]] "win, victory", on that page, where the lemma is omitted and taken from the pagename) "" (for any number of Hindi adjectives, where the lemma is omitted and taken from the pagename, and the angle bracket spec <> is assumed) "काला<+>धन<M>" (Hindi, for [[कालाधन]] "black money") `props` is an object specifying properties used during parsing, as follows: { parse_indicator_spec = FUNCTION_TO_PARSE_AN_INDICATOR_SPEC (required; takes one argument, a string surrounded by angle brackets, and should return a word_spec object containing properties describing the indicators inside of the angle brackets), lang = LANG_OBJECT (only needed if manual translit or respelling may be present using //), transliterate_respelling = FUNCTION_TO_TRANSLITERATE_RESPELLING (only needed of respelling is allowed in place of manual translit after //; takes one argument, the respelling or translit, and should return the transliteration of any resplling but return any translit unchanged), allow_default_indicator = BOOLEAN_OR_NIL (true if the indicator in angle brackets can be omitted and will be automatically added at the end of the multiword text (if no alternants) or at the end of each alternant (if alternants present), allow_blank_lemma = BOOLEAN_OR_NIL (true if a blank lemma is allowed; in such a case, the calling function should substitute a default lemma, typically taken from the pagename) } The return value is a table of the form { alternant_or_word_specs = {ALTERNANT_OR_WORD_SPEC, ALTERNANT_OR_WORD_SPEC, ...} post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "TRANSLIT-OF-TEXT-AT-END" (or nil), } where ALTERNANT_OR_WORD_SPEC is either an alternant spec as returned by parse_alternant() or a multiword spec as described in the comment above parse_multiword_spec(). An alternant spec looks as follows: { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...}, before_text = "TEXT-BEFORE-ALTERNANT", before_text_no_links = "TEXT-BEFORE-ALTERNANT", before_text_translit = "TRANSLIT-OF-TEXT-BEFORE-ALTERNANT" (or nil), } i.e. it is like what is returned by parse_alternant() but has extra `before_text` and `before_text_no_links` fields. ]=] function export.parse_inflected_text(text, props) local alternant_multiword_spec = {alternant_or_word_specs = {}} local alternant_segments = m_string_utilities.capturing_split(text, "(%(%(.-%)%))") local last_post_text, last_post_text_no_links, last_post_text_translit for i = 1, #alternant_segments do if i % 2 == 1 then local segments = export.parse_balanced_segment_run(alternant_segments[i], "<", ">") -- Disable allow_default_indicator if alternants are present and we're processing -- the non-alternant text. Otherwise we will try to treat the non-alternant text -- surrounding the alternants as an inflected word rather than as raw text. local multiword_spec = parse_multiword_spec(segments, props, #alternant_segments ~= 1) for _, word_spec in ipairs(multiword_spec.word_specs) do table.insert(alternant_multiword_spec.alternant_or_word_specs, word_spec) end last_post_text = multiword_spec.post_text last_post_text_no_links = multiword_spec.post_text_no_links last_post_text_translit = multiword_spec.post_text_translit else local alternant_spec = parse_alternant(alternant_segments[i], props) alternant_spec.before_text = last_post_text alternant_spec.before_text_no_links = last_post_text_no_links alternant_spec.before_text_translit = last_post_text_translit table.insert(alternant_multiword_spec.alternant_or_word_specs, alternant_spec) end end alternant_multiword_spec.post_text = last_post_text alternant_multiword_spec.post_text_no_links = last_post_text_no_links alternant_multiword_spec.post_text_translit = last_post_text_translit return alternant_multiword_spec end -- Older entry point. FIXME: Convert all uses of this to use export.parse_inflected_text instead. function export.parse_alternant_multiword_spec(text, parse_indicator_spec, allow_default_indicator, allow_blank_lemma) local props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = allow_default_indicator, allow_blank_lemma = allow_blank_lemma, } return export.parse_inflected_text(text, props) end -- Inflect alternants in ALTERNANT_SPEC (an object as returned by parse_alternant()). -- This sets the form values in `ALTERNANT_SPEC.forms` for all slots. -- (If a given slot has no values, it will not be present in `ALTERNANT_SPEC.forms`). local function inflect_alternants(alternant_spec, props) alternant_spec.forms = {} for _, multiword_spec in ipairs(alternant_spec.alternants) do export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then export.insert_forms(alternant_spec.forms, slot, multiword_spec.forms[slot]) end end) end end local function append_forms(props, formtable, slot, forms, before_text, before_text_no_links, before_text_translit) if not forms then return end local old_forms = formtable[slot] or {{form = ""}} local ret_forms = {} for _, old_form in ipairs(old_forms) do for _, form in ipairs(forms) do local old_form_vars = props.get_variants and props.get_variants(old_form.form) or "" local form_vars = props.get_variants and props.get_variants(form.form) or "" if old_form_vars ~= "" and form_vars ~= "" and old_form_vars ~= form_vars then -- Reject combination due to non-matching variant codes. else local new_form = old_form.form .. before_text .. form.form local new_translit if old_form.translit or before_text_translit or form.translit then if not props.lang then error("Internal error: If manual translit is given, 'props.lang' must be set") end if not before_text_translit then before_text_translit = props.lang:transliterate(before_text_no_links) or "" end local old_translit = old_form.translit or props.lang:transliterate(m_links.remove_links(old_form.form)) or "" local translit = form.translit or props.lang:transliterate(m_links.remove_links(form.form)) or "" new_translit = old_translit .. before_text_translit .. translit end local new_footnotes = export.combine_footnotes(old_form.footnotes, form.footnotes) table.insert(ret_forms, {form=new_form, translit=new_translit, footnotes=new_footnotes}) end end end formtable[slot] = ret_forms end function export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) multiword_spec.forms = {} local is_alternant_multiword = not not multiword_spec.alternant_or_word_specs for _, word_spec in ipairs(is_alternant_multiword and multiword_spec.alternant_or_word_specs or multiword_spec.word_specs) do if word_spec.alternants then inflect_alternants(word_spec, props) elseif props.decline_word_spec then props.decline_word_spec(word_spec) else props.inflect_word_spec(word_spec) end iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then append_forms(props, multiword_spec.forms, slot, word_spec.forms[slot], (rfind(slot, "linked") or props.include_user_specified_links) and word_spec.before_text or word_spec.before_text_no_links, word_spec.before_text_no_links, word_spec.before_text_translit ) end end) end if multiword_spec.post_text ~= "" then local pseudoform = {{form=""}} iterate_slot_list_or_table(props, function(slot) -- If slot is empty or should be skipped, don't try to append post-text. if (not props.skip_slot or not props.skip_slot(slot)) and multiword_spec.forms[slot] then append_forms(props, multiword_spec.forms, slot, pseudoform, (rfind(slot, "linked") or props.include_user_specified_links) and multiword_spec.post_text or multiword_spec.post_text_no_links, multiword_spec.post_text_no_links, multiword_spec.post_text_translit ) end end) end end function export.decline_multiword_or_alternant_multiword_spec(multiword_spec, props) return export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) end function export.map_word_specs(alternant_multiword_spec, fun) for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do fun(word_spec) end end else fun(alternant_or_word_spec) end end end function export.create_footnote_obj() return { notes = {}, seen_notes = {}, noteindex = 1, } end function export.get_footnote_text(form, footnote_obj) if not form.footnotes then return "" end local link_indices = {} for _, footnote in ipairs(form.footnotes) do footnote = export.expand_footnote(footnote) local this_noteindex = footnote_obj.seen_notes[footnote] if not this_noteindex then -- Generate a footnote index. this_noteindex = footnote_obj.noteindex footnote_obj.noteindex = footnote_obj.noteindex + 1 table.insert(footnote_obj.notes, '<sup style="color: red">' .. this_noteindex .. '</sup>' .. footnote) footnote_obj.seen_notes[footnote] = this_noteindex end m_table.insertIfNot(link_indices, this_noteindex) end table.sort(link_indices) return '<sup style="color: red">' .. table.concat(link_indices, ",") .. '</sup>' end function export.add_links(form, multiword_only) if form == "" or form == " " then return form end if not form:find("%[%[") then if rfind(form, "[%s%p]") then --optimization to avoid loading [[Module:headword]] on single-word forms local m_headword = require("Module:headword") if m_headword.head_is_multiword(form) then form = m_headword.add_multiword_links(form) end end if not multiword_only and not form:find("%[%[") then form = "[[" .. form .. "]]" end end return form end function export.add_links_to_before_and_after_text(alternant_multiword_spec, remember_original, add_links) add_links = add_links or export.add_links local function add_links_remember_original(object, field) if remember_original then object["user_specified_" .. field] = object[field] end object[field] = add_links(object[field]) end for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do add_links_remember_original(alternant_or_word_spec, "before_text") if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do add_links_remember_original(word_spec, "before_text") end add_links_remember_original(multiword_spec, "post_text") end end end add_links_remember_original(alternant_multiword_spec, "post_text") end --[=[ Convert the forms in `forms` (a list of form objects, each of which is a table of the form { form = FORM, translit = MANUAL_TRANSLIT_OR_NIL, footnotes = FOOTNOTE_LIST_OR_NIL, no_accel = TRUE_TO_SUPPRESS_ACCELERATORS }) into strings. Each form list turns into a string consisting of a comma-separated list of linked forms, with accelerators (unless `no_accel` is set in a given form). `props` is a table used in generating the strings, as follows: { lang = LANG_OBJECT, lemmas = LEMMAS, slot_table = SLOT_TABLE, slot_list = SLOT_LIST, include_translit = BOOLEAN, create_footnote_obj = FUNCTION_TO_CREATE_FOOTNOTE_OBJ, canonicalize = FUNCTION_TO_CANONICALIZE_EACH_FORM, transform_link = FUNCTION_TO_TRANSFORM_EACH_LINK, join_spans = FUNCTION_TO_JOIN_SPANS, allow_footnote_symbols = BOOLEAN, footnotes = EXTRA_FOOTNOTES, } `lemmas` is the list of lemmas, used in the accelerators. `slot_list` is a list of two-element lists of slots and associated accelerator inflections. `slot_table` is a table mapping slots to associated accelerator inflections. (One of `slot_list` or `slot_table` must be given.) If `include_translit` is given, transliteration is included in the generated strings. `create_footnote_obj` is an optional function of no arguments to create the footnote object used to track footnotes; see export.create_footnote_obj(). Customizing it is useful to prepopulate the footnote table using export.get_footnote_text(). `canonicalize` is an optional function of one argument (a form) to canonicalize each form before processing; it can return nil for no change. `transform_link` is an optional function to transform a linked form prior to further processing; it is passed three arguments (slot, link, link_tr) and should return the transformed link (or if translit is active, it should return the transformed link and corresponding translit). It can return nil for no change. `join_spans` is an optional function of three arguments (slot, orig_spans, tr_spans) where the spans in question are after linking and footnote processing. It should return a string (the joined spans) or nil for the default algorithm, which separately joins the orig_spans and tr_spans with commas and puts a newline between them. If `allow_footnote_symbols` is given, footnote symbols attached to forms (e.g. numbers, asterisk) are separated off, placed outside the links, and superscripted. In this case, `footnotes` should be a list of footnotes (preceded by footnote symbols, which are superscripted). These footnotes are combined with any footnotes found in the forms and placed into `forms.footnotes`. ]=] function export.show_forms(forms, props) local footnote_obj = props.create_footnote_obj and props.create_footnote_obj() or export.create_footnote_obj() local accel_lemma = props.lemmas[1] local accel_lemma_translit if type(accel_lemma) == "table" then accel_lemma_translit = accel_lemma.translit accel_lemma = accel_lemma.form end accel_lemma = accel_lemma and m_links.remove_links(accel_lemma) or nil local lemma_forms = {} for _, lemma in ipairs(props.lemmas) do if type(lemma) == "table" then m_table.insertIfNot(lemma_forms, lemma.form) else m_table.insertIfNot(lemma_forms, lemma) end end forms.lemma = #lemma_forms > 0 and table.concat(lemma_forms, ", ") or mw.title.getCurrentTitle().text local m_table_tools = require("モジュール:table tools") local m_script_utilities = require("モジュール:script utilities") local function do_slot(slot, accel_form) local formvals = forms[slot] if formvals then local orig_spans = {} local tr_spans = {} local orignotes, trnotes = "", "" for i, form in ipairs(formvals) do local orig_text = props.canonicalize and props.canonicalize(form.form) or form.form local link if form.form == "—" or form.form == "?" then link = orig_text else local origentry if props.allow_footnote_symbols then origentry, orignotes = m_table_tools.get_notes(orig_text) else origentry = orig_text end -- remove redundant link surrounding entire form origentry = export.remove_redundant_links(origentry) local accel_obj -- check if form still has links; if so, don't add accelerators -- because the resulting entries will be wrong if accel_lemma and not form.no_accel and accel_form ~= "-" and not rfind(origentry, "%[%[") then accel_obj = { form = accel_form, translit = props.include_translit and form.translit or nil, lemma = accel_lemma, lemma_translit = props.include_translit and accel_lemma_translit or nil, } end link = m_links.full_link{lang = props.lang, term = origentry, tr = "-", accel = accel_obj} end local tr = props.include_translit and (form.translit or props.lang:transliterate(m_links.remove_links(orig_text))) or nil local trentry if props.allow_footnote_symbols and tr then trentry, trnotes = m_table_tools.get_notes(tr) else trentry = tr end if props.transform_link then local newlink, newtr = props.transform_link(slot, link, tr) if newlink then link, tr = newlink, newtr end end link = link .. orignotes tr = tr and m_script_utilities.tag_translit(trentry, props.lang, "default", " style=\"color: #888;\"") .. trnotes or nil if form.footnotes then local footnote_text = export.get_footnote_text(form, footnote_obj) link = link .. footnote_text tr = tr and tr .. footnote_text or nil end table.insert(orig_spans, link) if tr then table.insert(tr_spans, tr) end end local joined_spans if props.join_spans then joined_spans = props.join_spans(slot, orig_spans, tr_spans) end if not joined_spans then local orig_span = table.concat(orig_spans, ", ") local tr_span if #tr_spans > 0 then tr_span = table.concat(tr_spans, ", ") end if tr_span then joined_spans = orig_span .. "<br />" .. tr_span else joined_spans = orig_span end end forms[slot] = joined_spans else forms[slot] = "—" end end iterate_slot_list_or_table(props, do_slot) local all_notes = footnote_obj.notes if props.footnotes then for _, note in ipairs(props.footnotes) do local symbol, entry = m_table_tools.get_initial_notes(note) table.insert(all_notes, symbol .. entry) end end forms.footnote = table.concat(all_notes, "<br />") end --[=[ Older entry point. Same as `show_forms` but automatically sets include_translit = true in props. ]=] function export.show_forms_with_translit(forms, lemmas, slot_table, props, footnotes, allow_footnote_symbols) props.lemmas = lemmas props.slot_table = slot_table props.footnotes = footnotes props.allow_footnote_symbols = allow_footnote_symbols props.include_translit = true return export.show_forms(forms, props) end return export 7jc48hncheiuv1ciwc6bmnewwggfa2p 2281189 2281186 2026-06-09T09:29:58Z Kuroco2k 84207 2281189 Scribunto text/plain local export = {} local m_links = require("モジュール:links") local m_string_utilities = require("モジュール:string utilities") local m_table = require("モジュール:table") local rsplit = mw.text.split local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsubn = mw.ustring.gsub -- version of rsubn() that discards all but the first return value local function rsub(term, foo, bar) local retval = rsubn(term, foo, bar) return retval end local footnote_abbrevs = { ["a"] = "archaic", ["c"] = "colloquial", ["d"] = "dialectal", ["fp"] = "folk-poetic", ["l"] = "literary", ["lc"] = "low colloquial", ["p"] = "poetic", ["pej"] = "pejorative", ["r"] = "rare", } function export.remove_redundant_links(text) -- remove redundant link surrounding entire form return rsub(text, "^%[%[([^%[%]|]*)%]%]$", "%1") end --[=[ In order to understand the following parsing code, you need to understand how inflected text specs work. They are intended to work with inflected text where individual words to be inflected may be followed by inflection specs in angle brackets. The format of the text inside of the angle brackets is up to the individual language and part-of-speech specific implementation. A real-world example is as follows: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>". This is the inflection of a multiword expression "меди́чна сестра́", which means "nurse" (literally "medical sister"), consisting of two words: the adjective меди́чна ("medical" in the feminine singular) and the noun сестра́ ("sister"). The specs in angle brackets follow each word to be inflected; for example, <+> means that the preceding word should be declined as an adjective. The code below works in terms of balanced expressions, which are bounded by delimiters such as < > or [ ]. The intention is to allow separators such as spaces to be embedded inside of delimiters; such embedded separators will not be parsed as separators. For example, Ukrainian noun specs allow footnotes in brackets to be inserted inside of angle brackets; something like "меди́чна<+> сестра́<pr.[this is a footnote]>" is legal, as is "[[медичний|меди́чна]]<+> [[сестра́]]<pr.[this is an <i>italicized footnote</i>]>", and the parsing code should not be confused by the embedded brackets, spaces or angle brackets. The parsing is done by two functions, which work in close concert: parse_balanced_segment_run() and split_alternating_runs(). To illustrate, consider the following: parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Here, we start out with a typical inflected text spec "foo<M.proper noun> bar<F>", call parse_balanced_segment_run() on it, and call split_alternating_runs() on the result. The output of parse_balanced_segment_run() is a list where even-numbered segments are bounded by the bracket-like characters passed into the function, and odd-numbered segments consist of the surrounding text. split_alternating_runs() is called on this, and splits *only* the odd-numbered segments, grouping all segments between the specified character. Note that the inner lists output by split_alternating_runs() are themselves in the same format as the output of parse_balanced_segment_run(), with bracket-bounded text in the even-numbered segments. Hence, such lists can be passed again to split_alternating_runs(). ]=] -- Parse a string containing matched instances of parens, brackets or the like. -- Return a list of strings, alternating between textual runs not containing the -- open/close characters and runs beginning and ending with the open/close -- characters. For example, -- -- parse_balanced_segment_run("foo(x(1)), bar(2)", "(", ")") = {"foo", "(x(1))", ", bar", "(2)", ""}. function export.parse_balanced_segment_run(segment_run, open, close) local break_on_open_close = m_string_utilities.capturing_split(segment_run, "([%" .. open .. "%" .. close .. "])") local text_and_specs = {} local level = 0 local seg_group = {} for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then if seg == open then table.insert(seg_group, seg) level = level + 1 else assert(seg == close) table.insert(seg_group, seg) level = level - 1 if level < 0 then error("Unmatched " .. close .. " sign: '" .. segment_run .. "'") elseif level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open .. " sign: '" .. segment_run .. "'") end return text_and_specs end -- Like parse_balanced_segment_run() but accepts multiple sets of delimiters. For example, -- -- parse_multi_delimiter_balanced_segment_run("foo[bar(baz[bat])], quux<glorp>", {{"[", "]"}, {"(", ")"}, {"<", ">"}}) = -- {"foo", "[bar(baz[bat])]", ", quux", "<glorp>", ""}. function export.parse_multi_delimiter_balanced_segment_run(segment_run, delimiter_pairs) local open_to_close_map = {} local open_close_items = {} for _, open_close in ipairs(delimiter_pairs) do local open, close = unpack(open_close) open_to_close_map[open] = close table.insert(open_close_items, "%" .. open) table.insert(open_close_items, "%" .. close) end local open_close_pattern = "([" .. table.concat(open_close_items) .. "])" local break_on_open_close = m_string_utilities.capturing_split(segment_run, open_close_pattern) local text_and_specs = {} local level = 0 local seg_group = {} local open_at_level_zero for i, seg in ipairs(break_on_open_close) do if i % 2 == 0 then table.insert(seg_group, seg) if level == 0 then if not open_to_close_map[seg] then error("Unmatched " .. seg .. " sign: '" .. segment_run .. "'") end assert(open_at_level_zero == nil) open_at_level_zero = seg level = level + 1 elseif seg == open_at_level_zero then level = level + 1 elseif seg == open_to_close_map[open_at_level_zero] then level = level - 1 assert(level >= 0) if level == 0 then table.insert(text_and_specs, table.concat(seg_group)) seg_group = {} open_at_level_zero = nil end end elseif level > 0 then table.insert(seg_group, seg) else table.insert(text_and_specs, seg) end end if level > 0 then error("Unmatched " .. open_at_level_zero .. " sign: '" .. segment_run .. "'") end return text_and_specs end --[=[ Split a list of alternating textual runs of the format returned by `parse_balanced_segment_run` on `splitchar`. This only splits the odd-numbered textual runs (the portions between the balanced open/close characters). The return value is a list of lists, where each list contains an odd number of elements, where the even-numbered elements of the sublists are the original balanced textual run portions. For example, if we do parse_balanced_segment_run("foo<M.proper noun> bar<F>", "<", ">") = {"foo", "<M.proper noun>", " bar", "<F>", ""} then split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ") = {{"foo", "<M.proper noun>", ""}, {"bar", "<F>", ""}} Note that we did not touch the text "<M.proper noun>" even though it contains a space in it, because it is an even-numbered element of the input list. This is intentional and allows for embedded separators inside of brackets/parens/etc. Note also that the inner lists in the return value are of the same form as the input list (i.e. they consist of alternating textual runs where the even-numbered segments are balanced runs), and can in turn be passed to split_alternating_runs(). If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "<M.proper noun>", " bar", "<F>", ""}, " ", true) = {{"foo", "<M.proper noun>", ""}, {" "}, {"bar", "<F>", ""}} Consider what happens if the original string has multiple spaces between brackets, and multiple sets of brackets without spaces between them. parse_balanced_segment_run("foo[dated][low colloquial] baz-bat quux xyzzy[archaic]", "[", "]") = {"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""} then split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz-bat quux xyzzy", "[archaic]", ""}, "[ %-]") = {{"foo", "[dated]", "", "[low colloquial]", ""}, {"baz"}, {"bat"}, {"quux"}, {"xyzzy", "[archaic]", ""}} If `preserve_splitchar` is passed in, the split character is included in the output, as follows: split_alternating_runs({"foo", "[dated]", "", "[low colloquial]", " baz bat quux xyzzy", "[archaic]", ""}, "[ %-]", true) = {{"foo", "[dated]", "", "[low colloquial]", ""}, {" "}, {"baz"}, {"-"}, {"bat"}, {" "}, {"quux"}, {" "}, {"xyzzy", "[archaic]", ""}} As can be seen, the even-numbered elements in the outer list are one-element lists consisting of the separator text. ]=] function export.split_alternating_runs(segment_runs, splitchar, preserve_splitchar) local grouped_runs = {} local run = {} for i, seg in ipairs(segment_runs) do if i % 2 == 0 then table.insert(run, seg) else local parts = preserve_splitchar and m_string_utilities.capturing_split(seg, "(" .. splitchar .. ")") or rsplit(seg, splitchar) table.insert(run, parts[1]) for j=2,#parts do table.insert(grouped_runs, run) run = {parts[j]} end end end if #run > 0 then table.insert(grouped_runs, run) end return grouped_runs end -- Given a list of forms (each of which is a table of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}), concatenate into a -- SLOT=FORM//TRANSLIT,FORM//TRANSLIT,... string (or SLOT=FORM,FORM,... if no translit), -- replacing embedded | signs with <!>. function export.concat_forms_in_slot(forms) if forms then local new_vals = {} for _, v in ipairs(forms) do local form = v.form if v.translit then form = form .. "//" .. v.translit end table.insert(new_vals, rsub(form, "|", "<!>")) end return table.concat(new_vals, ",") else return nil end end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into a list of such forms. If the form is already present, the footnotes of the existing and -- new form might be combined (specifically, footnotes in the new form beginning with ! will be -- combined). function export.insert_form_into_list(list, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end for _, listform in ipairs(list) do if listform.form == form.form and listform.translit == form.translit then -- Form already present; maybe combine footnotes. if form.footnotes then -- The behavior here has changed; track cases where the old behavior might -- be needed by adding ! to the footnote. require("モジュール:debug").track("inflection-utilities/combining-footnotes") local any_footnotes_with_bang = false for _, footnote in ipairs(form.footnotes) do if rfind(footnote, "^%[!") then any_footnotes_with_bang = true break end end if any_footnotes_with_bang then if not listform.footnotes then listform.footnotes = {} else listform.footnotes = m_table.shallowcopy(listform.footnotes) end for _, footnote in ipairs(form.footnotes) do local already_seen = false if rfind(footnote, "^%[!") then for _, existing_footnote in ipairs(listform.footnotes) do if rsub(existing_footnote, "^%[!", "") == rsub(footnote, "^%[!", "") then already_seen = true break end end if not already_seen then table.insert(listform.footnotes, footnote) end end end end end return end end -- Form not found. table.insert(list, form) end -- Insert a form (an object of the form {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) -- into the given slot in the given form table. function export.insert_form(formtable, slot, form) -- Don't do anything if the form object or the form inside it is nil. This simplifies -- form insertion in the presence of inflection generating functions that may return nil, -- such as generate_noun_vocative() and generate_noun_count_form(). if not form or not form.form then return end if not formtable[slot] then formtable[slot] = {} end export.insert_form_into_list(formtable[slot], form) end -- Insert a list of forms (each of which is an object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}) into the given slot in the given -- form table. FORMS can be nil. function export.insert_forms(formtable, slot, forms) if not forms then return end for _, form in ipairs(forms) do export.insert_form(formtable, slot, form) end end -- Map a function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called with -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.map_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local newform, newtranslit = fun(form.form, form.translit) newform = {form=newform, translit=newtranslit, footnotes=form.footnotes} export.insert_form_into_list(retval, newform) end return retval end -- Map a list-returning function over the form values in FORMS (a list of objects of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}). The function is called witih -- two arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- list of forms or a list of objects of the form {form=FORM, translit=MANUAL_TRANSLIT}. -- Use insert_form_into_list() to insert them into the returned list in case two different -- forms map to the same thing. function export.flatmap_forms(forms, fun) if not forms then return nil end local retval = {} for _, form in ipairs(forms) do local funret = fun(form.form, form.translit) for _, fr in ipairs(funret) do local newform if type(fr) == "table" then newform = {form=fr.form, translit=fr.translit, footnotes=form.footnotes} else newform = {form=fr, footnotes=form.footnotes} end export.insert_form_into_list(retval, newform) end end return retval end -- Map a function over the form values in FORMS (a single string, a single object of the form -- {form=FORM, translit=MANUAL_TRANSLIT, footnotes=FOOTNOTES}, or a list of either of the -- previous two types). If FIRST_ONLY is given and FORMS is a list, only map over the first -- element. Return value is of the same form as FORMS. The function is called with two -- arguments, the original form and manual translit; if manual translit isn't relevant, -- it's fine to declare the function with only one argument. The return value is either a -- single value (the new form) or two values (the new form and new manual translit). function export.map_form_or_forms(forms, fn, first_only) if forms == nil then return nil elseif type(forms) == "string" then return forms == "?" and "?" or fn(forms) elseif forms.form then if forms.form == "?" then return {form = "?", footnotes = forms.footnotes} end local newform, newtranslit = fn(forms.form, forms.translit) return {form=newform, translit=newtranslit, footnotes=forms.footnotes} else local retval = {} for i, form in ipairs(forms) do if first_only then return export.map_form_or_forms(form, fn) end table.insert(retval, export.map_form_or_forms(form, fn)) end return retval end end -- Combine two sets of footnotes. If either is nil, just return the other, and if both are nil, -- return nil. function export.combine_footnotes(notes1, notes2) if not notes1 and not notes2 then return nil end if not notes1 then return notes2 end if not notes2 then return notes1 end local combined = m_table.shallowcopy(notes1) for _, note in ipairs(notes2) do m_table.insertIfNot(combined, note) end return combined end -- Expand a given footnote (as specified by the user, including the surrounding brackets) -- into the form to be inserted into the final generated table. function export.expand_footnote(note) local notetext = rmatch(note, "^%[!?(.*)%]$") if not notetext then error("Internal error: Footnote should be surrounded by brackets: " .. note) end if footnote_abbrevs[notetext] then notetext = footnote_abbrevs[notetext] else local split_notes = m_string_utilities.capturing_split(notetext, "<(.-)>") for i, split_note in ipairs(split_notes) do if i % 2 == 0 then split_notes[i] = footnote_abbrevs[split_note] if not split_notes[i] then -- Don't error for now, because HTML might be in the footnote. -- Instead we should switch the syntax here to e.g. <<a>> to avoid -- conflicting with HTML. split_notes[i] = "<" .. split_note .. ">" --error("Unrecognized footnote abbrev: <" .. split_note .. ">") end end end notetext = table.concat(split_notes) end return m_string_utilities.ucfirst(notetext) .. "." end -- Combine a form (either a string or a table {form = FORM, footnotes = FOOTNOTES, ...}) with footnotes. -- Do the minimal amount of work; e.g. if FOOTNOTES is nil, just return FORM. function export.combine_form_and_footnotes(form, footnotes) if type(footnotes) == "string" then footnotes = {footnotes} end if footnotes then if type(form) == "table" then form = m_table.shallowcopy(form) form.footnotes = export.combine_footnotes(form.footnotes, footnotes) return form else return {form = form, footnotes = footnotes} end else return form end end -- Older entry point. FIXME: Obsolete me. function export.generate_form(form, footnotes) return export.combine_form_and_footnotes(form, footnotes) end -- Combine a single form (either a string or object {form = FORM, footnotes = FOOTNOTES, ...}) or a list of same -- along with footnotes and return a list of forms where each returned form is an object -- {form = FORM, footnotes = FOOTNOTES, ...}. function export.convert_to_general_list_form(word_or_words, footnotes) if type(word_or_words) == "string" then return {{form = word_or_words, footnotes = footnotes}} elseif word_or_words.form then return {export.combine_form_and_footnotes(word_or_words, footnotes)} else local retval = {} for _, form in ipairs(word_or_words) do if type(form) == "string" then table.insert(retval, {form = form, footnotes = footnotes}) else table.insert(retval, export.combine_form_and_footnotes(form, footnotes)) end end return retval end end local function is_table_of_strings(forms) for k, v in pairs(forms) do if type(k) ~= "number" or type(v) ~= "string" then return false end end return true end function export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if stems == nil or endings == nil then return end if type(stems) == "string" and type(endings) == "string" then export.insert_form(forms, slot, {form = combine_stem_ending(stems, endings), footnotes = footnotes}) elseif type(stems) == "string" and is_table_of_strings(endings) then for _, ending in ipairs(endings) do export.insert_form(forms, slot, {form = combine_stem_ending(stems, ending), footnotes = footnotes}) end else stems = export.convert_to_general_list_form(stems) endings = export.convert_to_general_list_form(endings, footnotes) for _, stem in ipairs(stems) do for _, ending in ipairs(endings) do local footnotes = nil if stem.footnotes and ending.footnotes then footnotes = m_table.shallowcopy(stem.footnotes) for _, footnote in ipairs(ending.footnotes) do m_table.insertIfNot(footnotes, footnote) end elseif stem.footnotes then footnotes = stem.footnotes elseif ending.footnotes then footnotes = ending.footnotes end local new_form = combine_stem_ending(stem.form, ending.form) local new_translit if stem.translit or ending.translit then if not lang or not combine_stem_ending_tr then error("Internal error: With manual translit, 'lang' and 'combine_stem_ending_tr' must be passed to 'add_forms'") end local stem_tr = stem.translit or lang:transliterate(m_links.remove_links(stem.form)) local ending_tr = ending.translit or lang:transliterate(m_links.remove_links(ending.form)) new_translit = combine_stem_ending_tr(stem_tr, ending_tr) end export.insert_form(forms, slot, {form = new_form, translit = new_translit, footnotes = footnotes}) end end end end function export.add_multiple_forms(forms, slot, sets_of_forms, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) if #sets_of_forms == 0 then return elseif #sets_of_forms == 1 then local formset = iut.convert_to_general_list_form(sets_of_forms[1], footnotes) export.insert_forms(forms, slot, formset) elseif #sets_of_forms == 2 then local stems = sets_of_forms[1] local endings = sets_of_forms[2] export.add_forms(forms, slot, stems, endings, combine_stem_ending, lang, combine_stem_ending_tr, footnotes) else local prev = sets_of_forms[1] for i=2,#sets_of_forms do local tempdest = {} export.add_forms(tempdest, slot, prev, sets_of_forms[i], combine_stem_ending, lang, combine_stem_ending_tr, i == #sets_of_forms and footnotes or nil) prev = tempdest[slot] end export.insert_forms(forms, slot, prev) end end local function iterate_slot_list_or_table(props, do_slot) if props.slot_list then for _, slot_and_accel_form in ipairs(props.slot_list) do local slot, accel_form = unpack(slot_and_accel_form) do_slot(slot, accel_form) end else for slot, accel_form in pairs(props.slot_table) do do_slot(slot, accel_form) end end end local function parse_before_or_post_text(props, text, segments, lemma_is_last) -- If the text begins with a hyphen, include the hyphen in the set of allowed characters -- for an inflected segment. This way, e.g. conjugating "-ir" is treated as a regular -- -ir verb rather than a hyphen + irregular [[ir]]. local is_suffix = rfind(text, "^%-") -- Call parse_balanced_segment_run() to keep multiword links together. local bracketed_runs = export.parse_balanced_segment_run(text, "[", "]") -- Split on space or hyphen. Use preserve_splitchar so we know whether the separator was -- a space or hyphen. local space_separated_groups = export.split_alternating_runs(bracketed_runs, is_suffix and " " or "[ %-]", "preserve splitchar") local parsed_components = {} local parsed_components_translit = {} local saw_manual_translit = false local lemma for j, space_separated_group in ipairs(space_separated_groups) do local component = table.concat(space_separated_group) if lemma_is_last and j == #space_separated_groups then lemma = component if lemma == "" and not props.allow_blank_lemma then error("Word is blank: '" .. table.concat(segments) .. "'") end elseif rfind(component, "//") then -- Manual translit or respelling specified. if not props.lang then error("Manual translit not allowed for this language; if this is incorrect, 'props.lang' must be set internally") end saw_manual_translit = true local split = rsplit(component, "//") if #split ~= 2 then error("Term with translit or respelling should have only one // in it: " .. component) end local translit component, translit = unpack(split) if props.transliterate_respelling then translit = props.transliterate_respelling(translit) end table.insert(parsed_components, component) table.insert(parsed_components_translit, translit) else table.insert(parsed_components, component) table.insert(parsed_components_translit, false) -- signal that it may need later transliteration end end if saw_manual_translit then for j, parsed_component in ipairs(parsed_components) do if not parsed_components_translit[j] then parsed_components_translit[j] = props.lang:transliterate(m_links.remove_links(parsed_component)) end end end text = table.concat(parsed_components) local translit if saw_manual_translit then translit = table.concat(parsed_components_translit) end return text, translit, lemma end --[=[ Parse a segmented multiword spec such as "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (in Ukrainian). "Segmented" here means it is broken up on <...> segments using parse_balanced_segment_run(text, "<", ">"), e.g. the above text would be passed in as {"[[медичний|меди́чна]]", "<+>", " [[сестра́]]", "<*,*#.pr>", ""}. The return value is a table of the form { word_specs = {WORD_SPEC, WORD_SPEC, ...}, post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "MANUAL-TRANSLIT-OF-TEXT-AT-END" or nil (if no manual translit or respelling was specified in the post-text) } where WORD_SPEC describes an individual inflected word and "TEXT-AT-END" is any raw text that may occur after all inflected words. Individual words or linked text (including multiword text) may be given manual transliteration or respelling in languages that support this using TEXT//TRANSLIT or TEXT//RESPELLING. Each WORD_SPEC is of the form returned by parse_indicator_spec(): { lemma = "LEMMA", before_text = "TEXT-BEFORE-WORD", before_text_no_links = "TEXT-BEFORE-WORD-NO-LINKS", before_text_translit = "MANUAL-TRANSLIT-OF-TEXT-BEFORE-WORD" or nil (if no manual translit or respelling was specified in the before-text) -- Fields as described in parse_indicator_spec() ... } For example, the return value for "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" is { word_specs = { { lemma = "[[медичний|меди́чна]]", overrides = {}, adj = true, before_text = "", before_text_no_links = "", forms = {}, }, { lemma = "[[сестра́]]", overrides = {}, stresses = { { reducible = true, genpl_reversed = false, }, { reducible = true, genpl_reversed = true, }, }, animacy = "pr", before_text = " ", before_text_no_links = " ", forms = {}, }, }, post_text = "", post_text_no_links = "", } ]=] local function parse_multiword_spec(segments, props, disable_allow_default_indicator) local multiword_spec = { word_specs = {} } if not disable_allow_default_indicator and props.allow_default_indicator and #segments == 1 then table.insert(segments, "<>") table.insert(segments, "") end -- Loop over every other segment. The even-numbered segments are angle-bracket specs while -- the odd-numbered segments are the text between them. for i = 2, #segments - 1, 2 do local before_text, before_text_translit, lemma = parse_before_or_post_text(props, segments[i - 1], segments, "lemma is last") local base = props.parse_indicator_spec(segments[i]) base.before_text = before_text base.before_text_no_links = m_links.remove_links(base.before_text) base.before_text_translit = before_text_translit base.lemma = lemma table.insert(multiword_spec.word_specs, base) end multiword_spec.post_text, multiword_spec.post_text_translit = parse_before_or_post_text(props, segments[#segments], segments) multiword_spec.post_text_no_links = m_links.remove_links(multiword_spec.post_text) return multiword_spec end --[=[ Parse an alternant, e.g. "((родо́вий,родови́й))" or "((ру́син<pr>,руси́н<b.pr>))" (both in Ukrainian). The return value is a table of the form { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...} } where MULTIWORD_SPEC describes a given alternant and is as returned by parse_multiword_spec(). ]=] local function parse_alternant(alternant, props) local parsed_alternants = {} local alternant_text = rmatch(alternant, "^%(%((.*)%)%)$") local segments = export.parse_balanced_segment_run(alternant_text, "<", ">") local comma_separated_groups = export.split_alternating_runs(segments, "%s*,%s*") local alternant_spec = {alternants = {}} for _, comma_separated_group in ipairs(comma_separated_groups) do table.insert(alternant_spec.alternants, parse_multiword_spec(comma_separated_group, props)) end return alternant_spec end --[=[ Top-level parsing function. Parse text describing one or more inflected words. `text` is the inflected text to parse, which generally has <...> specs following words to be inflected, and may have alternants indicated using double parens. Examples: "[[медичний|меди́чна]]<+> [[сестра́]]<*,*#.pr>" (Ukrainian, for [[медична сестра]] "nurse (lit. medical sister)") "((ру́син<pr>,руси́н<b.pr>))" (Ukrainian, for [[русин]] "Rusyn") "पंचायती//पंचाय*ती राज<M>" (Hindi, for [[पंचायती राज]] "village council", with phonetic respelling in the before-text component) "((<M>,<M.plstem:फ़तूह.dirpl:फ़तूह>))" (Hindi, for [[फ़तह]] "win, victory", on that page, where the lemma is omitted and taken from the pagename) "" (for any number of Hindi adjectives, where the lemma is omitted and taken from the pagename, and the angle bracket spec <> is assumed) "काला<+>धन<M>" (Hindi, for [[कालाधन]] "black money") `props` is an object specifying properties used during parsing, as follows: { parse_indicator_spec = FUNCTION_TO_PARSE_AN_INDICATOR_SPEC (required; takes one argument, a string surrounded by angle brackets, and should return a word_spec object containing properties describing the indicators inside of the angle brackets), lang = LANG_OBJECT (only needed if manual translit or respelling may be present using //), transliterate_respelling = FUNCTION_TO_TRANSLITERATE_RESPELLING (only needed of respelling is allowed in place of manual translit after //; takes one argument, the respelling or translit, and should return the transliteration of any resplling but return any translit unchanged), allow_default_indicator = BOOLEAN_OR_NIL (true if the indicator in angle brackets can be omitted and will be automatically added at the end of the multiword text (if no alternants) or at the end of each alternant (if alternants present), allow_blank_lemma = BOOLEAN_OR_NIL (true if a blank lemma is allowed; in such a case, the calling function should substitute a default lemma, typically taken from the pagename) } The return value is a table of the form { alternant_or_word_specs = {ALTERNANT_OR_WORD_SPEC, ALTERNANT_OR_WORD_SPEC, ...} post_text = "TEXT-AT-END", post_text_no_links = "TEXT-AT-END-NO-LINKS", post_text_translit = "TRANSLIT-OF-TEXT-AT-END" (or nil), } where ALTERNANT_OR_WORD_SPEC is either an alternant spec as returned by parse_alternant() or a multiword spec as described in the comment above parse_multiword_spec(). An alternant spec looks as follows: { alternants = {MULTIWORD_SPEC, MULTIWORD_SPEC, ...}, before_text = "TEXT-BEFORE-ALTERNANT", before_text_no_links = "TEXT-BEFORE-ALTERNANT", before_text_translit = "TRANSLIT-OF-TEXT-BEFORE-ALTERNANT" (or nil), } i.e. it is like what is returned by parse_alternant() but has extra `before_text` and `before_text_no_links` fields. ]=] function export.parse_inflected_text(text, props) local alternant_multiword_spec = {alternant_or_word_specs = {}} local alternant_segments = m_string_utilities.capturing_split(text, "(%(%(.-%)%))") local last_post_text, last_post_text_no_links, last_post_text_translit for i = 1, #alternant_segments do if i % 2 == 1 then local segments = export.parse_balanced_segment_run(alternant_segments[i], "<", ">") -- Disable allow_default_indicator if alternants are present and we're processing -- the non-alternant text. Otherwise we will try to treat the non-alternant text -- surrounding the alternants as an inflected word rather than as raw text. local multiword_spec = parse_multiword_spec(segments, props, #alternant_segments ~= 1) for _, word_spec in ipairs(multiword_spec.word_specs) do table.insert(alternant_multiword_spec.alternant_or_word_specs, word_spec) end last_post_text = multiword_spec.post_text last_post_text_no_links = multiword_spec.post_text_no_links last_post_text_translit = multiword_spec.post_text_translit else local alternant_spec = parse_alternant(alternant_segments[i], props) alternant_spec.before_text = last_post_text alternant_spec.before_text_no_links = last_post_text_no_links alternant_spec.before_text_translit = last_post_text_translit table.insert(alternant_multiword_spec.alternant_or_word_specs, alternant_spec) end end alternant_multiword_spec.post_text = last_post_text alternant_multiword_spec.post_text_no_links = last_post_text_no_links alternant_multiword_spec.post_text_translit = last_post_text_translit return alternant_multiword_spec end -- Older entry point. FIXME: Convert all uses of this to use export.parse_inflected_text instead. function export.parse_alternant_multiword_spec(text, parse_indicator_spec, allow_default_indicator, allow_blank_lemma) local props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = allow_default_indicator, allow_blank_lemma = allow_blank_lemma, } return export.parse_inflected_text(text, props) end -- Inflect alternants in ALTERNANT_SPEC (an object as returned by parse_alternant()). -- This sets the form values in `ALTERNANT_SPEC.forms` for all slots. -- (If a given slot has no values, it will not be present in `ALTERNANT_SPEC.forms`). local function inflect_alternants(alternant_spec, props) alternant_spec.forms = {} for _, multiword_spec in ipairs(alternant_spec.alternants) do export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then export.insert_forms(alternant_spec.forms, slot, multiword_spec.forms[slot]) end end) end end local function append_forms(props, formtable, slot, forms, before_text, before_text_no_links, before_text_translit) if not forms then return end local old_forms = formtable[slot] or {{form = ""}} local ret_forms = {} for _, old_form in ipairs(old_forms) do for _, form in ipairs(forms) do local old_form_vars = props.get_variants and props.get_variants(old_form.form) or "" local form_vars = props.get_variants and props.get_variants(form.form) or "" if old_form_vars ~= "" and form_vars ~= "" and old_form_vars ~= form_vars then -- Reject combination due to non-matching variant codes. else local new_form = old_form.form .. before_text .. form.form local new_translit if old_form.translit or before_text_translit or form.translit then if not props.lang then error("Internal error: If manual translit is given, 'props.lang' must be set") end if not before_text_translit then before_text_translit = props.lang:transliterate(before_text_no_links) or "" end local old_translit = old_form.translit or props.lang:transliterate(m_links.remove_links(old_form.form)) or "" local translit = form.translit or props.lang:transliterate(m_links.remove_links(form.form)) or "" new_translit = old_translit .. before_text_translit .. translit end local new_footnotes = export.combine_footnotes(old_form.footnotes, form.footnotes) table.insert(ret_forms, {form=new_form, translit=new_translit, footnotes=new_footnotes}) end end end formtable[slot] = ret_forms end function export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) multiword_spec.forms = {} local is_alternant_multiword = not not multiword_spec.alternant_or_word_specs for _, word_spec in ipairs(is_alternant_multiword and multiword_spec.alternant_or_word_specs or multiword_spec.word_specs) do if word_spec.alternants then inflect_alternants(word_spec, props) elseif props.decline_word_spec then props.decline_word_spec(word_spec) else props.inflect_word_spec(word_spec) end iterate_slot_list_or_table(props, function(slot) if not props.skip_slot or not props.skip_slot(slot) then append_forms(props, multiword_spec.forms, slot, word_spec.forms[slot], (rfind(slot, "linked") or props.include_user_specified_links) and word_spec.before_text or word_spec.before_text_no_links, word_spec.before_text_no_links, word_spec.before_text_translit ) end end) end if multiword_spec.post_text ~= "" then local pseudoform = {{form=""}} iterate_slot_list_or_table(props, function(slot) -- If slot is empty or should be skipped, don't try to append post-text. if (not props.skip_slot or not props.skip_slot(slot)) and multiword_spec.forms[slot] then append_forms(props, multiword_spec.forms, slot, pseudoform, (rfind(slot, "linked") or props.include_user_specified_links) and multiword_spec.post_text or multiword_spec.post_text_no_links, multiword_spec.post_text_no_links, multiword_spec.post_text_translit ) end end) end end function export.decline_multiword_or_alternant_multiword_spec(multiword_spec, props) return export.inflect_multiword_or_alternant_multiword_spec(multiword_spec, props) end function export.map_word_specs(alternant_multiword_spec, fun) for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do fun(word_spec) end end else fun(alternant_or_word_spec) end end end function export.create_footnote_obj() return { notes = {}, seen_notes = {}, noteindex = 1, } end function export.get_footnote_text(form, footnote_obj) if not form.footnotes then return "" end local link_indices = {} for _, footnote in ipairs(form.footnotes) do footnote = export.expand_footnote(footnote) local this_noteindex = footnote_obj.seen_notes[footnote] if not this_noteindex then -- Generate a footnote index. this_noteindex = footnote_obj.noteindex footnote_obj.noteindex = footnote_obj.noteindex + 1 table.insert(footnote_obj.notes, '<sup style="color: red">' .. this_noteindex .. '</sup>' .. footnote) footnote_obj.seen_notes[footnote] = this_noteindex end m_table.insertIfNot(link_indices, this_noteindex) end table.sort(link_indices) return '<sup style="color: red">' .. table.concat(link_indices, ",") .. '</sup>' end function export.add_links(form, multiword_only) if form == "" or form == " " then return form end if not form:find("%[%[") then if rfind(form, "[%s%p]") then --optimization to avoid loading [[Module:headword]] on single-word forms local m_headword = require("Module:headword") if m_headword.head_is_multiword(form) then form = m_headword.add_multiword_links(form) end end if not multiword_only and not form:find("%[%[") then form = "[[" .. form .. "]]" end end return form end function export.add_links_to_before_and_after_text(alternant_multiword_spec, remember_original, add_links) add_links = add_links or export.add_links local function add_links_remember_original(object, field) if remember_original then object["user_specified_" .. field] = object[field] end object[field] = add_links(object[field]) end for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do add_links_remember_original(alternant_or_word_spec, "before_text") if alternant_or_word_spec.alternants then for _, multiword_spec in ipairs(alternant_or_word_spec.alternants) do for _, word_spec in ipairs(multiword_spec.word_specs) do add_links_remember_original(word_spec, "before_text") end add_links_remember_original(multiword_spec, "post_text") end end end add_links_remember_original(alternant_multiword_spec, "post_text") end function export.reconstruct_original_spec(alternant_multiword_spec, props) local parts = {} props = props or {} local function ins(txt) table.insert(parts, txt) end local function insert_angle_bracket_spec(spec) if props.preprocess_angle_bracket_spec then spec = props.preprocess_angle_bracket_spec(spec) end ins(spec) end for _, alternant_or_word_spec in ipairs(alternant_multiword_spec.alternant_or_word_specs) do ins(alternant_or_word_spec.user_specified_before_text) if alternant_or_word_spec.alternants then ins("((") for i, multiword_spec in ipairs(alternant_or_word_spec.alternants) do if i > 1 then ins(",") end for _, word_spec in ipairs(multiword_spec.word_specs) do ins(word_spec.user_specified_before_text) ins(word_spec.user_specified_lemma) insert_angle_bracket_spec(word_spec.angle_bracket_spec) end ins(multiword_spec.user_specified_post_text) end ins("))") else ins(alternant_or_word_spec.user_specified_lemma) insert_angle_bracket_spec(alternant_or_word_spec.angle_bracket_spec) end end ins(alternant_multiword_spec.user_specified_post_text) local retval = table.concat(parts) if alternant_multiword_spec.allow_default_indicator then -- As a special case, if we see e.g. "amar<>", remove the <>. Don't do this if there are spaces or alternants. if not retval:find(" ") and not retval:find("%(%(") then local retval_no_angle_brackets = retval:match("^(.*)<>$") if retval_no_angle_brackets then return retval_no_angle_brackets end end end return retval end --[=[ Convert the forms in `forms` (a list of form objects, each of which is a table of the form { form = FORM, translit = MANUAL_TRANSLIT_OR_NIL, footnotes = FOOTNOTE_LIST_OR_NIL, no_accel = TRUE_TO_SUPPRESS_ACCELERATORS }) into strings. Each form list turns into a string consisting of a comma-separated list of linked forms, with accelerators (unless `no_accel` is set in a given form). `props` is a table used in generating the strings, as follows: { lang = LANG_OBJECT, lemmas = LEMMAS, slot_table = SLOT_TABLE, slot_list = SLOT_LIST, include_translit = BOOLEAN, create_footnote_obj = FUNCTION_TO_CREATE_FOOTNOTE_OBJ, canonicalize = FUNCTION_TO_CANONICALIZE_EACH_FORM, transform_link = FUNCTION_TO_TRANSFORM_EACH_LINK, join_spans = FUNCTION_TO_JOIN_SPANS, allow_footnote_symbols = BOOLEAN, footnotes = EXTRA_FOOTNOTES, } `lemmas` is the list of lemmas, used in the accelerators. `slot_list` is a list of two-element lists of slots and associated accelerator inflections. `slot_table` is a table mapping slots to associated accelerator inflections. (One of `slot_list` or `slot_table` must be given.) If `include_translit` is given, transliteration is included in the generated strings. `create_footnote_obj` is an optional function of no arguments to create the footnote object used to track footnotes; see export.create_footnote_obj(). Customizing it is useful to prepopulate the footnote table using export.get_footnote_text(). `canonicalize` is an optional function of one argument (a form) to canonicalize each form before processing; it can return nil for no change. `transform_link` is an optional function to transform a linked form prior to further processing; it is passed three arguments (slot, link, link_tr) and should return the transformed link (or if translit is active, it should return the transformed link and corresponding translit). It can return nil for no change. `join_spans` is an optional function of three arguments (slot, orig_spans, tr_spans) where the spans in question are after linking and footnote processing. It should return a string (the joined spans) or nil for the default algorithm, which separately joins the orig_spans and tr_spans with commas and puts a newline between them. If `allow_footnote_symbols` is given, footnote symbols attached to forms (e.g. numbers, asterisk) are separated off, placed outside the links, and superscripted. In this case, `footnotes` should be a list of footnotes (preceded by footnote symbols, which are superscripted). These footnotes are combined with any footnotes found in the forms and placed into `forms.footnotes`. ]=] function export.show_forms(forms, props) local footnote_obj = props.create_footnote_obj and props.create_footnote_obj() or export.create_footnote_obj() local accel_lemma = props.lemmas[1] local accel_lemma_translit if type(accel_lemma) == "table" then accel_lemma_translit = accel_lemma.translit accel_lemma = accel_lemma.form end accel_lemma = accel_lemma and m_links.remove_links(accel_lemma) or nil local lemma_forms = {} for _, lemma in ipairs(props.lemmas) do if type(lemma) == "table" then m_table.insertIfNot(lemma_forms, lemma.form) else m_table.insertIfNot(lemma_forms, lemma) end end forms.lemma = #lemma_forms > 0 and table.concat(lemma_forms, ", ") or mw.title.getCurrentTitle().text local m_table_tools = require("モジュール:table tools") local m_script_utilities = require("モジュール:script utilities") local function do_slot(slot, accel_form) local formvals = forms[slot] if formvals then local orig_spans = {} local tr_spans = {} local orignotes, trnotes = "", "" for i, form in ipairs(formvals) do local orig_text = props.canonicalize and props.canonicalize(form.form) or form.form local link if form.form == "—" or form.form == "?" then link = orig_text else local origentry if props.allow_footnote_symbols then origentry, orignotes = m_table_tools.get_notes(orig_text) else origentry = orig_text end -- remove redundant link surrounding entire form origentry = export.remove_redundant_links(origentry) local accel_obj -- check if form still has links; if so, don't add accelerators -- because the resulting entries will be wrong if accel_lemma and not form.no_accel and accel_form ~= "-" and not rfind(origentry, "%[%[") then accel_obj = { form = accel_form, translit = props.include_translit and form.translit or nil, lemma = accel_lemma, lemma_translit = props.include_translit and accel_lemma_translit or nil, } end link = m_links.full_link{lang = props.lang, term = origentry, tr = "-", accel = accel_obj} end local tr = props.include_translit and (form.translit or props.lang:transliterate(m_links.remove_links(orig_text))) or nil local trentry if props.allow_footnote_symbols and tr then trentry, trnotes = m_table_tools.get_notes(tr) else trentry = tr end if props.transform_link then local newlink, newtr = props.transform_link(slot, link, tr) if newlink then link, tr = newlink, newtr end end link = link .. orignotes tr = tr and m_script_utilities.tag_translit(trentry, props.lang, "default", " style=\"color: #888;\"") .. trnotes or nil if form.footnotes then local footnote_text = export.get_footnote_text(form, footnote_obj) link = link .. footnote_text tr = tr and tr .. footnote_text or nil end table.insert(orig_spans, link) if tr then table.insert(tr_spans, tr) end end local joined_spans if props.join_spans then joined_spans = props.join_spans(slot, orig_spans, tr_spans) end if not joined_spans then local orig_span = table.concat(orig_spans, ", ") local tr_span if #tr_spans > 0 then tr_span = table.concat(tr_spans, ", ") end if tr_span then joined_spans = orig_span .. "<br />" .. tr_span else joined_spans = orig_span end end forms[slot] = joined_spans else forms[slot] = "—" end end iterate_slot_list_or_table(props, do_slot) local all_notes = footnote_obj.notes if props.footnotes then for _, note in ipairs(props.footnotes) do local symbol, entry = m_table_tools.get_initial_notes(note) table.insert(all_notes, symbol .. entry) end end forms.footnote = table.concat(all_notes, "<br />") end --[=[ Older entry point. Same as `show_forms` but automatically sets include_translit = true in props. ]=] function export.show_forms_with_translit(forms, lemmas, slot_table, props, footnotes, allow_footnote_symbols) props.lemmas = lemmas props.slot_table = slot_table props.footnotes = footnotes props.allow_footnote_symbols = allow_footnote_symbols props.include_translit = true return export.show_forms(forms, props) end return export griku47ag5sa9be6w7za6qcbsd8ww8p しょうとう 0 327049 2280859 2280670 2026-06-08T12:43:44Z M-30722 1202 2280859 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しょうどう|じょうとう|じょうどう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[上童]]】公卿の子弟で元服のまえに宮中の作法を学ぶため、昇殿が許され出仕した子供。 *【[[小党]]】党員が少ない政党。 *【[[小刀]]】小さい刀。 *【[[小島]]】小さい島。 *【[[小盗]]】こそどろ。 *【[[昇等]]・[[陞等]]】等級があがること。 *【[[昇騰]]・[[升騰]]】高くあがること。 *【[[松濤]]】波の音がするように吹く松(松林)に吹く風。 *【[[梢頭]]】[[梢]]の[[先端]]。 *【[[檣灯]]】船舶が夜間に航行する際、前方のマストに掲げ、船舶の前面を示す白い灯火。 *【[[檣頭]]】帆柱の先。 *【[[正当]]】正しくて、道理にかなっていること。 *【[[正統]]】正しい[[系統]]や[[血統]]。 *【[[消灯]]】灯りを消すこと。 7dpfyzcnmg1fxdzfzmlb92gdw77021r 腫瘍 0 327170 2280949 2208785 2026-06-08T14:16:14Z M-30722 1202 [[en:tumor]]より訳語追加 2280949 wikitext text/x-wiki {{kana-DEFAULTSORT|しゅよう}} {{wikipedia}} =={{L|ja}}== {{ja-kanjitab|しゅ|よう|yomi=o}} ==={{pron}}=== {{ja-pron|しゅよう|acc=0}} {{ja-accent-common|region=京阪|h|しゅよ|ー}} ==={{noun}}=== {{ja-noun|[[しゅよう]]}} #{{context|腫瘍学|lang=ja}}[[細胞]]が生体内の[[制御]]に反して[[過剰]]に増殖することによってできる組織塊のこと。 ===={{seealso}}==== *[[腫瘍学]] *[[癌]] ===={{trans}}==== {{trans-top}} *{{T|is}}: {{t|is|æxli|n}}, {{t|is|hnútur|m}} *{{T|ga}}: {{t|ga|siad|m}} *{{T|az}}: {{t|az|şiş}} *{{T|af}}: {{t|af|gewas}} *{{T|ar}}: {{t|ar|وَرَم|m}} *{{T|hy}}: {{t|hy|ուռուցք}} *{{T|it}}: {{t|it|tumore|m}} *{{T|cy}}: {{t|cy|tiwmor|m}} *{{T|uk}}: {{t|uk|пухли́на|f}}, {{t|uk|о́пух|m}} *{{T|uz}}: {{t|uz|shish}} *{{T|en}}: {{t|en|tumor}}, {{t|en|tumour}} *{{T|et}}: {{t|et|kasvaja}} *{{T|eo}}: {{t|eo|tumoro}} *{{T|nl}}: {{t|nl|tumor|m}}, {{t|nl|gezwel|n}} *{{T|kk}}: {{t|kk|ісік}} *{{T|ca}}: {{t|ca|tumor|m}} *{{T|gl}}: {{t|gl|tumor|m}} *{{T|kn}}: {{t|kn|ಗಂತಿ}}, {{t|kn|ಗಡ್ಡೆ}} *{{T|el}}: {{t|el|όγκος|m}} *:{{T|grc}}: {{t|grc|ἀθήρωμα|n}}, {{t|grc|κανθύλη|f}} *{{T|km}}: {{t|km|ដុំសាច់}} *{{T|crh}}: {{t|crh|şişik}} *{{T|ka}}: {{t|ka|სიმსივნე}} *{{T|nmn}}: {{t|nmn|gǁkxʻáã}} *{{T|sah}}: {{t|sah|искэн}} *{{T|sv}}: {{t|sv|tumör}} *{{T|sco}}: {{t|sco|clyre}} *{{T|gd}}: {{t|gd|pluc|m}}, {{t|gd|at|m}} *{{T|es}}: {{t|es|tumor|m}} *{{T|sk}}: {{t|sk|nádor|m}} *{{T|sh}}: *:キリル文字: {{t|sh|ту̑мор|m}} *:ラテン文字: {{t|sh|tȗmor|m}} *{{T|th}}: {{t|th|เนื้องอก}} *{{T|tt}}: {{t|tt|шеш}} *{{T|ta}}: {{t|ta|கட்டி}} *{{T|cs}}: {{t|cs|nádor|m}} *{{T|bo}}: {{t|bo|སྐྲན}} *{{T|zh}}: {{t|cmn|腫瘤|tr=zhǒngliú}}, {{t|cmn|瘤子|tr=liúzi}} *{{T|ko}}: {{t|ko|종양(腫瘍)}} *{{T|da}}: {{t|da|svulst|c}}, {{t|da|tumor|c}} *{{T|de}}: {{t|de|Tumor|m}}, {{t|de|Geschwulst|f|n}} *{{T|tr}}: {{t|tr|tümör}}, {{t|tr|ur}}, {{t|tr|verem}} *:{{T|ota}}: {{t|ota|شیش|tr=şiş}}, {{t|ota|ورم|tr=verem}}, {{t|ota|یومرو|tr=yumru}} *{{T|nrf}}: {{t|nrf|chancre|m}} *{{T|ba}}: {{t|ba|шеш}}, {{t|ba|яман шеш}} *{{T|hu}}: {{t|hu|daganat}} *{{T|my}}: {{t|my|အကျိတ်}} *{{T|hi}}: {{t|hi|फुलाव|m}}, {{t|hi|नववर्धन|m}}, {{t|hi|ट्यूमर|m}} *{{T|fi}}: {{t|fi|kasvain}} *{{T|fr}}: {{t|fr|tumeur|f}} *{{T|bg}}: {{t|bg|тумор|m}} *{{T|vi}}: {{t|vi|u}} *{{T|be}}: {{t|be|пухлі́на|f}}, {{t|be|во́пух|m}} *{{T|fa}}: {{t|fa|تومور|tr=tumor}} *{{T|pl}}: {{t|pl|guz|m}}, {{t|pl|nowotwór|m}}, {{t|pl|opuchlizna|f}} *{{T|pt}}: {{t|pt|tumor|m}} *{{T|mi}}: {{t|mi|tuma}}, {{t|mi|koropuku}} *{{T|mk}}: {{t|mk|тумор|m}} *{{T|mg}}: {{t|mg|fivontosana}}, {{t|mg|zihitra}} *{{T|ms}}: {{t|ms|ketumbuhan}}, {{t|ms|tumor}} *{{T|lo}}: {{t|lo|ນໍ}} *{{T|la}}: {{t|la|tumor|m}} *{{T|lv}}: {{t|lv|audzējs|m}} *{{T|ro}}: {{t|ro|tumoare|f}} *{{T|ru}}: {{t|ru|о́пухоль|f}} {{trans-bottom}} h106d9psm0ky6qa9j85cc3q9blrxmio しゅよう 0 327173 2280950 2121892 2026-06-08T14:17:01Z M-30722 1202 2280950 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|じゅよう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[主要]]】物事の[[中心]]となっていて大切なこと。 *【[[腫瘍]]】[[細胞]]が生体内の[[制御]]に反して[[過剰]]に増殖することによってできる組織塊のこと。 s90oeoz8z6et5wynlvybf0rdcqezxqx しゅりゅう 0 327373 2280945 1932763 2026-06-08T14:06:09Z M-30722 1202 2280945 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[主流]]】[[かわ|川]]などの主な流れ。 *【[[腫瘤]]】[[動物]]の[[体内]]や[[表面]]にできる(病変性を持つ)[[組織]]の盛り上がり。 89dts5u6dshdbnfydg05dplm5qmf2vu しょうどう 0 327559 2280861 2202259 2026-06-08T12:44:05Z M-30722 1202 2280861 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しょうとう|じょうとう|じょうどう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[正道]]】正しい[[道理]]。 *【[[衝動]]】よく考えず、発作的・本能的に動こうとする[[こころ|心]]の動き。 *【[[唱道]]】[[率先]]して唱えること。 *【[[唱導]]】経文を唱え、衆生を信仰に導くこと。 *【[[聳動]]】驚かし動くこと。 *【[[省道]]】中国の省が管理する道。 a4elu7tdq8licnxzhd5naq50ew2c989 secar 0 329354 2281352 1377237 2026-06-09T11:43:25Z Kuroco2k 84207 2281352 wikitext text/x-wiki =={{ast}}== ==={{etym}}=== {{etyl|la|ast}} ''[[siccare|siccāre]]'' ==={{verb}}=== {{ast-verb-ar|sec}} #{{おくりがな2|乾|かわ|かす|かわかす}}。[[乾燥]]させる。 {{ast-conj-car|se|se}} ===={{rel}}==== * {{l|ast|secu}} ---- =={{oc}}== ==={{etym}}=== {{etyl|pro|oc}} < {{etyl|la|oc}} ''[[siccare|siccāre]]'' ==={{verb}}=== {{oc-verb|sec|ar}} #{{おくりがな2|乾|かわ|かす|かわかす}}。[[乾燥]]させる。 {{oc-conj-ar|sec|sequ}} ===={{rel}}==== * {{l|oc|assecar}} * {{l|oc|dessecar}} * {{l|oc|sec}} ---- =={{ca}}== ==={{etym}}=== {{etyl|pro|ca}} < {{etyl|la|ca}} ''[[siccare|siccāre]]'' ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|sec}} #[[assecar]]の異綴。 {{ca-conj-ar|sec}} ---- =={{gl}}== ==={{etym}}=== 古ガリシア語及び{{etyl|roa-opt|gl}} ''secar'' < {{etyl|la|gl}} ''[[siccare|siccāre]]'' ==={{pron}}=== * {{IPA|lang=gl|seˈkar}} ==={{verb}}=== {{gl-verb|sec|ar|pret=sequei}} #{{おくりがな2|乾|かわ|かす|かわかす}}。[[乾燥]]させる。 #{{おくりがな2|拭|ふ|く|ふく}}。{{おくりがな2|拭|ぬぐ|う|ぬぐう}}。 #{{おくりがな2|乾|かわ|く|かわく}}。乾燥する。 #{{おくりがな2|枯|か|れる|かれる}}。{{おくりがな2|萎|しお|れる|しおれる}}。 #(哺乳類の){{ふりがな|乳|ちち}}が出なくなる。 {{gl-conj-car|sec|sequ}} ===={{syn}}==== * (語義1) {{l|gl|desecar}} * (語義2) {{l|gl|enxugar}} * (語義3) {{l|gl|agostar}}, {{l|gl|estiñar}} * (語義4) {{l|gl|agostar}} * (語義5) {{l|gl|estiñar}} ===={{drv}}==== * {{l|gl|desecar}} * {{l|gl|seca}} * {{l|gl|secador}} * {{l|gl|seco}} * {{l|gl|sequeiro}} ---- =={{es}}== ==={{etym}}=== {{etyl|la|es}} ''[[siccare|siccāre]]'' ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|乾|かわ|かす|かわかす}}。[[乾燥]]させる。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== {{top3}} * {{l|es|secadero}} * {{l|es|secado}} * {{l|es|secadora}} * {{l|es|secador}} * {{l|es|secamanos}} * {{l|es|secamente}} * {{l|es|secamiento}} * {{l|es|secaplatos}} * {{l|es|secano}} * {{l|es|secante}} * {{l|es|secarropas}} * {{l|es|sequía}} * {{l|es|resecar}} {{bottom}} ===={{rel}}==== * {{l|es|desecar}} * {{l|es|ensecar}} * {{l|es|seco}} ===={{seealso}}==== * {{l|es|enjugar}} ---- =={{pt}}== ==={{alter}}=== * {{l|pt|seccar}} (廃用) ==={{etym}}=== {{etyl|roa-opt|pt}} < {{etyl|la|pt}} ''[[siccare|siccāre]]'' < ''[[siccus]]'' < {{etyl|ine|pt}} {{recons|seyk-|lang=ine}} ==={{pron}}=== * {{a|Paulista}} {{IPA|lang=pt|se.ˈka(ɹ)}} * {{a|South Brazil}} {{IPA|se.ˈka(ɻ)}} * {{a|PT}} {{IPA|sɨˈkaɾ}} * {{hyphenation|se|car}} ==={{verb}}=== {{pt-verb|se|car}} #{{context|intransitive|lang=pt}}{{おくりがな2|乾|かわ|く|かわく}}。[[乾燥]]する。 #{{context|transitive|lang=pt}}{{おくりがな2|乾|かわ|かす|かわかす}}。乾燥させる。 #{{context|intransitive|lang=pt}}{{おくりがな2|枯|か|れる|かれる}}。{{おくりがな2|萎|しお|れる|しおれる}}。 {{pt-conj|se|car}} ===={{syn}}==== * (語義1) {{l|pt|evaporar}} * (語義3) {{l|pt|esgotar}}, {{l|pt|mirrar}}, {{l|pt|murchar}} ===={{ant}}==== * (語義2) {{l|pt|aguar}}, {{l|pt|molhar}}, {{l|pt|humedecer}}, {{l|pt|humidificar}}, {{l|pt|humectar}}. ===={{rel}}==== * {{l|pt|desecar}} * {{l|pt|seca}} * {{l|pt|secador}} * {{l|pt|seco}} ===={{seealso}}==== * {{l|pt|enxugar}} brs3nl69p1jr2s1sbg4orqhcqdftkfw fenecer 0 333482 2281310 1444504 2026-06-09T11:30:31Z Kuroco2k 84207 2281310 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|fenir}} < {{etyl|la|es}} {{m|la|fīnīre}} < {{m|la|fīnis}} 又は{{etyl|VL.|es}} {{m|la|*fīniscere}}, {{m|la|*fīnescēre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|rare|lang=es}}{{おくりがな2|終|お|える|おえる}}。[[終了]]する。 #{{context|intransitive|archaic|lang=es}}{{おくりがな2|終|お|わる|おわる}}。 #{{context|intransitive|archaic|lang=es}}{{おくりがな2|死|し|ぬ|しぬ}}。{{おくりがな2|亡|な|くなる|なくなる}}。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|fenecimiento|g=m}} ===={{rel}}==== * {{l|es|fin}} * {{l|es|finir}} * {{l|es|finito}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|fīnīre}} < {{m|la|fīnis}} 又は{{etyl|VL.|pt}} {{m|la|*fīniscere}}, {{m|la|*fīnescēre}} ==={{verb}}=== {{pt-verb|fene|cer}} #{{おくりがな2|終|お|える|おえる}}。[[終了]]する。 {{pt-conj|fene|cer}} ===={{drv}}==== * {{l|pt|fenecimento}} c3i1p39l3p6gjv6tpbsis7gvvirfwd8 altercar 0 334321 2281246 1490445 2026-06-09T11:03:38Z Kuroco2k 84207 2281246 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|altercārī}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|激|はげ|しく|はげしい}}[[口論]]する。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{syn}}==== * {{l|es|batallar}}, {{l|es|discutir}}, {{l|es|disputar}}, {{l|es|porfiar}} ===={{drv}}==== * {{l|es|altercado}} ===={{rel}}==== * {{l|es|altercación}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|altercārī}} ==={{verb}}=== {{pt-verb|alter|car}} #{{おくりがな2|激|はげ|しく|はげしい}}[[口論]]する。 {{pt-conj|alter|car}} 4m1igatqk2i2o178vsggjnomo0znyyb obligar 0 334588 2281314 1492088 2026-06-09T11:33:24Z Kuroco2k 84207 2281314 wikitext text/x-wiki =={{L|vec}}== ==={{etym}}=== {{etyl|la|vec}} {{m|la|obligāre}} ==={{verb}}=== {{head|vec|verb}} #{{context|transitive|lang=vec}}[[義務]]を{{おくりがな2|負|お|わ|おう}}せる。{{おくりがな2|強|し|いる|しいる}}。[[強制]]する。 {{vec-conj-auto}} ===={{rel}}==== * {{l|vec|obligà}} * {{l|vec|łigar}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|obligāre}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|a(ɾ)}} ==={{verb}}=== {{ca-verb|ar|oblig}} #[[義務]]を{{おくりがな2|負|お|わ|おう}}せる。{{おくりがな2|強|し|いる|しいる}}。[[強制]]する。 {{ca-conj-ar|oblig}} ===={{rel}}==== * {{l|ca|obligació}} * {{l|ca|lligar}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|obligāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[義務]]を{{おくりがな2|負|お|わ|おう}}せる。{{おくりがな2|強|し|いる|しいる}}。[[強制]]する。 #{{context|reflexive|legal|lang=es}}義務を負う。 #{{context|reflexive|lang=es}}[[無理]]をする。 #{{context|reflexive|lang=es}}[[確約]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|obligación}} * {{l|es|ligar}} papwkzyrbetho8rwkleiifuuqb577ys discordar 0 334761 2281278 1493885 2026-06-09T11:20:12Z Kuroco2k 84207 2281278 wikitext text/x-wiki =={{L|es}}== ==={{verb}}=== {{es-verb}} #[[同意]]しない。[[反対]]する。 #[[調和]]しない。 ===={{conjug}}==== {{es-conj|<ue>|nocomb=1}} ---- =={{L|pt}}== ==={{verb}}=== {{pt-verb|discord|ar}} #{{context|transitive|deを伴って|lang=pt}}[[同意]]しない。[[反対]]する。 {{pt-conj|discord|ar}} ===={{ant}}==== * {{l|pt|concordar}} ===={{rel}}==== * {{l|pt|discórdia}} qkh6lmt9j481wcwidq1ue94dbkctu8r emerger 0 335809 2281293 1527943 2026-06-09T11:23:39Z Kuroco2k 84207 2281293 wikitext text/x-wiki {{also|émerger}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|emergere}} ==={{verb}}=== {{es-verb}} #[[水面]]に{{おくりがな2|現|あらわ|れる|あらわれる}}。[[浮上]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|surgir}} ===={{rel}}==== * {{l|es|emergencia}} ---- =={{L|frm}}== ==={{etym}}=== 1476年初出。{{etyl|la|frm}} {{m|la|emergere}} ==={{verb}}=== {{head|frm|verb}} #[[水面]]に{{おくりがな2|現|あらわ|れる|あらわれる}}。[[浮上]]する。 ===={{conjugation}}==== {{frm-conj-ger|emer}} ===={{desc}}==== * {{desc|fr|émerger}} brvs55ih82bqnd8u4eja5ja0laf9lme しょくしょう 0 336774 2280929 2016415 2026-06-08T13:47:40Z M-30722 1202 2280929 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[職掌]]】[[担当]]する[[しごと|仕事]]。 *【[[食傷]]】食中り。食中毒。 *【[[織匠]]】[[織物師]]。 nsajauz1kqsmqe2l7m2mdcdyhjh3puu versificar 0 336984 2281383 1557994 2026-06-09T11:55:51Z Kuroco2k 84207 2281383 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|versificāre}} ==={{pron}}=== * {{ca-IPA}} * {{homophones|lang=ca|versificà}} * {{rhymes|a(ɾ)}} ==={{verb}}=== {{ca-verb|ar|versific}} #{{context|literature|lang=ca}}[[作詩]]する。 #{{context|literature|lang=ca}}[[韻文]]にする。 {{ca-conj-ar|versific}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|versificāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|literature|lang=es}}[[作詩]]する。 #{{context|literature|lang=es}}[[韻文]]にする。 ===={{conjug}}==== {{es-conj|nocomb=1}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|versificāre}} ==={{verb}}=== {{pt-verb|versifi|car}} #{{context|literature|lang=pt}}[[作詩]]する。 #{{context|literature|lang=pt}}[[韻文]]にする。 {{pt-conj|versifi|car}} ===={{syn}}==== * {{l|pt|versar}}, {{l|pt|versejar}} 7sk10qgljx92l0uv2o1ek4gcv5pgexn tentar 0 337757 2281299 2219569 2026-06-09T11:25:33Z Kuroco2k 84207 2281299 wikitext text/x-wiki =={{L|io}}== ==={{etym}}=== {{io-bor|tempt|tenter||tentare||tentar}} ==={{pron}}=== {{io-IPA}} ==={{verb}}=== {{io-verb|tent}} #{{context|transitive|lang=io}}[[誘惑]]する。 =={{L|ia}}== ==={{verb}}=== {{ia-verb|ar}} #{{おくりがな2|試|ため|す|ためす}}。{{おくりがな2|試|こころ|みる|こころみる}}。 #[[誘惑]]する。 =={{L|es}}== ==={{alter}}=== * {{l|es|atentar}} ==={{etym}}=== {{etyl|la|es}} {{m|la|temptāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[誘惑]]する。 #{{おくりがな2|触|ふ|れる|ふれる}}。 ===={{conjug}}==== {{es-conj|<ie>}} ===={{drv}}==== * {{l|es|tentadero}} * {{l|es|tentar a la suerte}} * {{l|es|tentar al diablo}} ===={{rel}}==== * {{l|es|tentador}} * {{l|es|tentación}} * {{l|es|tienta}} =={{L|sv}}== ==={{verb}}=== {{head|sv|verb form}} #[[tenta]]の現在形。 ==={{anag}}=== * {{anagrams|sv|a=aenrtt|ratten|tanter}} =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|tentar}} < {{etyl|la|pt}} {{m|la|temptāre}} ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|tẽ.ˈtaɾ}} * {{a|Brazil}} {{IPA|/tẽ.ˈta(ʁ)/|[t̪ẽ̞ɪ̯̃ⁿ.ˈt̪ä(χ)]}} ==={{verb}}=== {{pt-verb|tent|ar}} #{{おくりがな2|試|ため|す|ためす}}。{{おくりがな2|試|こころ|みる|こころみる}}。 #[[誘惑]]する。 #{{おくりがな3|思|おも|い|切|き|っ|おもいきる}}て~する。 {{pt-conj|tent|ar}} be07w15weqrgbl8dq0v3us0vot1ooto escoger 0 338109 2281269 1589914 2026-06-09T11:13:54Z Kuroco2k 84207 2281269 wikitext text/x-wiki =={{L|es}}== ==={{alter}}=== * {{l|es|descoger}} (まれ) ==={{etym}}=== *{{etyl|osp|es}} {{m|osp|escoger}} *{{prefix|es|coger|lang=es}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}{{おくりがな2|選|えら|ぶ|えらぶ}}。{{おくりがな3|選|えら|び|出|だ|す|えらびだす}}。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|elegir}} * {{l|es|seleccionar}} ===={{drv}}==== * {{l|es|escogimiento}} * {{l|es|escogida}} * {{l|es|escogido}} ===={{rel}}==== * {{l|es|coger}} * {{l|es|recoger}} * {{l|es|encoger}} * {{l|es|acoger}} ==={{anag}}=== * {{l|es|cogerse}} hn1yg70etwq0gvt7sgye4v4nxif2d1z explicar 0 338111 2281270 1589982 2026-06-09T11:13:55Z Kuroco2k 84207 2281270 wikitext text/x-wiki =={{L|ia}}== ==={{etym}}=== {{etyl|la|ia}} {{m|la|explicāre}} ==={{verb}}=== {{ia-verb|ar}} #[[説明]]する。 {{ia-conj|explic|ar}} ---- =={{L|oc}}== ==={{etym}}=== {{etyl|la|oc}} {{m|la|explicāre}} ==={{pron}}=== *音声(ベアルン): [[ファイル:LL-Q14185 (oci)-Davidgrosclaude-explicar.wav]] ==={{verb}}=== {{oc-verb|explic|ar}} #[[説明]]する。 {{oc-conj-ar|explic|expliqu}} ===={{rel}}==== * {{l|oc|explicacion}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|explicāre}} ==={{pron}}=== * {{ca-IPA}} *音声: [[ファイル:LL-Q7026 (cat)-Unjoanqualsevol-explicar.wav]] * {{rhymes|a(ɾ)}} ==={{verb}}=== {{ca-verb|ar|explic}} #[[説明]]する。 {{ca-conj-ar|explic}} ===={{rel}}==== * {{l|ca|explic}} * {{l|ca|explicable}} * {{l|ca|explicació}} * {{l|ca|explicador}} * {{l|ca|explicatiu}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|la|gl}} {{m|la|explicāre}} ==={{verb}}=== {{gl-verb|explic|ar|pret=expliquei}} #[[説明]]する。 {{gl-conj-car|explic|expliqu}} ===={{rel}}==== * {{l|gl|explicable}} * {{l|gl|explicación}} ---- =={{L|es}}== ==={{alter}}=== * {{l|es|esplicar}} ==={{etym}}=== {{etyl|la|es}} {{m|la|explicāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[説明]]する。 ===={{conjug}}==== {{es-conj}} {{es-conj|explicarse}} ===={{rel}}==== * {{l|es|explicable}} * {{l|es|explicación}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|explicāre}} ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|iʃ.pli.ˈkaɾ|ɐjʃ.pli.ˈkaɾ}} * {{a|Brazil}} {{IPA|/is.pli.ˈka(ʁ)/|[ɪs̻.pl̪ɪ.ˈkä(χ)]}} * {{hyphenation|ex|pli|car}} *音声: [[ファイル:Pt explicar.ogg]] ==={{verb}}=== {{pt-verb|expli|car}} #{{context|transitive|lang=pt}}[[説明]]する。 {{pt-conj|expli|car}} ===={{rel}}==== * {{l|pt|explicação}} * {{l|pt|explicável}} azzd4ezpqo39w3h7kawn7wiy0imol1f edificar 0 338923 2281297 1598915 2026-06-09T11:23:40Z Kuroco2k 84207 2281297 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|aedificāre}} ==={{pron}}=== {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|edific}} #{{おくりがな2|建|た|てる|たてる}}。[[建設]]する。 {{ca-conj-ar|edific}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|la|gl}} {{m|la|aedificāre}} ==={{pron}}=== * {{IPA|lang=gl|eðifiˈkaɾ}} ==={{verb}}=== {{gl-verb|edific|ar|pret=edifiquei}} #{{おくりがな2|建|た|てる|たてる}}。[[建設]]する。 {{gl-conj-car|edific|edifiqu}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|aedificāre}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|建|た|てる|たてる}}。[[建設]]する。 #[[教化]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|edificante}} ===={{rel}}==== * {{l|es|edificación}} * {{l|es|edificio}} ===={{seealso}}==== * {{l|es|buen humor}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|aedificāre}} ==={{pron}}=== * {{a|PT}} {{IPA|lang=pt|i.ði.fi.ˈkaɾ}} * {{a|Brazil}} {{IPA|e.d͡ʒi.fi.ˈka(ʁ)}} ==={{verb}}=== {{pt-verb|edifi|car}} #{{おくりがな2|建|た|てる|たてる}}。[[建設]]する。 {{pt-conj|edifi|car}} ===={{rel}}==== * {{l|pt|edificação}} 7m37fu729empyl8lvdcnif0c3nhjrgn deificar 0 338945 2281289 1598949 2026-06-09T11:20:17Z Kuroco2k 84207 2281289 wikitext text/x-wiki {{also|deïficar}} =={{L|gl}}== ==={{etym}}=== {{etyl|LL.|gl}} {{m|la|deificāre}} < {{etyl|la|gl}} {{m|la|deus}} ==={{verb}}=== {{gl-verb|deific|ar|pret=deifiquei}} #[[神格]]化する。[[神聖]]視する。 {{gl-conj-car|deific|deifiqu}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|LL.|es}} {{m|la|deificāre}} < {{etyl|la|es}} {{m|la|deus}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[神格]]化する。[[神聖]]視する。 ===={{conjug}}==== {{es-conj}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|LL.|pt}} {{m|la|deificāre}} < {{etyl|la|pt}} {{m|la|deus}} ==={{verb}}=== {{pt-verb|deifi|car}} #[[神格]]化する。[[神聖]]視する。 {{pt-conj|deifi|car}} 4qvdl3gvicuydyvx1v4ywpexw1qusp6 abdicar 0 343035 2281248 1627219 2026-06-09T11:03:39Z Kuroco2k 84207 2281248 wikitext text/x-wiki =={{L|oc}}== ==={{etym}}=== {{etyl|la|oc}} {{m|la|abdicāre}} ==={{pron}}=== * {{hyphenation|ab|di|car}} *音声: [[ファイル:LL-Q14185 (oci)-Davidgrosclaude-abdicar.wav]] ==={{verb}}=== {{oc-verb|abdic|ar}} #[[退位]]する。[[辞任]]する。[[放棄]]する。 {{oc-conj-ar|abdic|abdiqu}} ===={{rel}}==== * {{l|oc|abdicacion}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|abdicāre}} ==={{pron}}=== * {{ca-IPA}} * {{hyphenation|ab|di|car}} ==={{verb}}=== {{ca-verb|ar|abdic}} #{{context|ambitransitive|lang=ca}}[[退位]]する。[[辞任]]する。[[放棄]]する。 {{ca-conj-ar|abdic}} ===={{rel}}==== * {{l|ca|abdicació}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|la|gl}} {{m|la|abdicāre}} ==={{pron}}=== * {{hyphenation|ab|di|car}} ==={{verb}}=== {{gl-verb|abdic|ar|pret=abdiquei}} #[[退位]]する。[[辞任]]する。[[放棄]]する。 {{gl-conj-car|abdic|abdiqu}} ===={{rel}}==== * {{l|gl|abdicación}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|abdicāre}} ==={{pron}}=== {{es-IPA}} *音声(コロンビア): [[ファイル:LL-Q1321 (spa)-AdrianAbdulBaha-abdicar.wav]] ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}[[退位]]する。[[辞任]]する。[[放棄]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|abdicación}} * {{l|es|abdicativo}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|abdicāre}} ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|ˌɐβ.ði.ˈkaɾ|ˌɐb.di.ˈkaɾ}} * {{hyphenation|ab|di|car}} ==={{verb}}=== {{pt-verb|abdi|car}} # {{context|ambitransitive|deを伴って|lang=pt}}[[退位]]する。[[辞任]]する。 #{{context|transitive|em favor deを伴って|lang=pt}}[[放棄]]する。 ===={{syn}}==== * (語義1) {{l|pt|renunciar}} * (語義2) {{l|pt|ceder}}, {{l|pt|renunciar}}, {{l|pt|desistir}} {{pt-conj|abdi|car}} ---- =={{L|la}}== ==={{pron}}=== * {{la-IPA|abdīcar}} ==={{verb}}=== {{la-verb-form|abdīcar}} #[[abdicare|abdicāre]]の直説法所相未来第一人称単数形。 h17tt1wlhbddlg4wd77jcii310w19we そうほう 0 344281 2281232 1934525 2026-06-09T10:59:13Z 鍼灸 112313 2281232 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|そうぼう|ぞうほう|ぞうぼう}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[双方]]】:両方。 *【[[宗法]]】:中国周時代の家族制度。 *【[[走法]]】:走り方。 *【[[奏法]]】:演奏する方法。 *【[[操法]]】:操作などの方法。 *【[[葬法]]】:遺骸の葬り方。 *【[[槍法]]】:槍術。 *【[[遭逢]]】:遭遇。 lv40un8lqup3o6nmdn2jd2jnl8l6j2p じょうとう 0 347202 2280864 2129767 2026-06-08T12:45:09Z M-30722 1202 2280864 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しょうとう|しょうどう|じょうどう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[上棟]]】[[むねあげ|棟上げ]]。 *【[[上等]]】[[等級]]が[[うえ|上]]であるさま。 *【[[上騰]]】高く上がること。 *【[[城東]]】城の東側の地域。 *【[[常套]]】いつも決まったやりかた。 *【[[蒸騰]]】蒸気が立ち上ること。 7ehbq823q8j7srh0qqi452i8djr0ob0 しんそう 0 348901 2281002 2279087 2026-06-08T15:40:14Z M-30722 1202 2281002 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しんぞう|じんそう|じんぞう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[真相]]】[[事件]]などの[[本当]]の[[事情]]。 *【[[新装]]】装いを新たにすること。 *【[[深層]]】深い層。 *【[[神葬]]】神道の儀式による葬儀。 *【[[深窓]]】家の奥のほうにある居間。 *【[[新粧]]】[[あたらしい|新しい]][[よそおい|装い]]。 l012slem3oxqfl14hri54771csps0r1 ぼうしゅ 0 355357 2281081 1937996 2026-06-09T01:22:44Z ふゆくれ 95641 2281081 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ほうじゅ|ぼうじゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|芒種|t=二十四節気の九番目。|hom=y}} {{ja-k|防守|t=防ぎ守ること。}} {{ja-k|房主|t=家主。}} {{ja-k|貌取|t=描きとること。}} {{ja-k|牟取|t=奪い取ること。}} {{ja-k|貿首|t=首を取り合うこと。}} {{ja-k|謀首|謀主|t=首謀者。}} {{ja-k|亡酒|t=酒席を外すこと。}} {{ja-k|冒娶|t=強引に娶ること。}} dgtpj0razkno5tjxupo60nf8bd4kyn7 dirigir 0 358430 2281282 1663865 2026-06-09T11:20:13Z Kuroco2k 84207 2281282 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|dīrigere}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|ca|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|ir|dirig}} #{{おくりがな2|導|みちび|く|みちびく}}。 #[[指導]]する、[[指揮]]する、[[運営]]する。 {{ca-conj-ir|dirig}} ===={{rel}}==== * {{l|ca|direcció}} * {{l|ca|director}} * {{l|ca|dret}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|dīrigere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[指導]]する、[[指揮]]する、[[運営]]する。 #{{おくりがな2|向|む|ける|むける}}。 #{{おくりがな2|導|みちび|く|みちびく}}。 #[[操縦]]する。 #{{context|pronominal|+ '''''a'''''|lang=es}}{{おくりがな2|宛|あ|てる|あてる}}。 #{{context|pronominal|+ '''''a'''''|lang=es}}{{おくりがな2|向|む|かう|むかう}}。 ===={{conjug}}==== {{es-conj}} {{es-conj|dirigirse}} ===={{rel}}==== * {{l|es|dirigente}} * {{l|es|dirección}} * {{l|es|director}} * {{l|es|derecho}} ===={{drv}}==== * {{l|es|redirigir}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|dīrigere}} ==={{pron}}=== * {{a|Portugal}} {{IPA|lang=pt|di.ɾi.ˈʒiɾ}} * {{a|Brazil}} {{IPA|/d͡ʒi.ɾi.ˈʒi(ʁ)/|[d͡ʒɪ.ɾɪ.ˈʒi(χ)]}} ** {{a|Paulista}} {{IPA|d͡ʒi.ɾi.ˈʒi(ɹ)}} ** {{a|South Brazil}} {{IPA|d͡ʒi.ɾi.ˈʒi(ɻ)}} ** {{a|Carioca}} {{IPA|d͡ʒi.ɾi.ˈʒi(χ)}} ** {{a|Nordestino}} {{IPA|di.ɾi.ˈʒih}} ==={{verb}}=== {{pt-verb|diri|gir}} #{{context|transitive|intransitive|lang=pt}}[[運転]]する。 #{{context|transitive|lang=pt}}[[指揮]]する、[[統治]]する、[[運営]]する。 #{{おくりがな2|向|む|ける|むける}}。 {{pt-conj|diri|gir}} ===={{syn}}==== * (語義2) {{l|pt|administrar}}, {{l|pt|gerir}}, {{l|pt|guiar}}, {{l|pt|presidir}}, {{l|pt|controlar}}, {{l|pt|comandar}}, {{l|pt|governar}} ===={{rel}}==== {{top}} * {{l|pt|dirigir-se}} * {{l|pt|direção}} * {{l|pt|dirigente}} * {{l|pt|direto}} * {{l|pt|direito}} * {{l|pt|diretiva}} * {{l|pt|diretivo}} * {{l|pt|diretor}} * {{l|pt|diretoria}} * {{l|pt|diretorial}} * {{l|pt|diretório}} * {{l|pt|diretriz}} * {{l|pt|dirigível}} * {{l|pt|dirigido}} {{bottom}} 9nubagch328tmz7ajybwvn9h31ycv26 disecar 0 358447 2281276 2081756 2026-06-09T11:20:12Z Kuroco2k 84207 2281276 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{bor|es|la|dissecāre}} ==={{verb}}=== {{es-verb}} #[[解剖]]する。 #[[剝製]]にする。 #(植物を)[[乾燥]][[保存]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|disección}} * {{l|es|segar}} hmd8quhm0lpyzhh2dd02dwwfm2xihna ほりゅう 0 363734 2281317 1940501 2026-06-09T11:35:11Z M-30722 1202 2281317 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[保留]]】そのままの[[状態]]で留めておくこと。 *【[[蒲柳]]】かわやなぎ(川柳)の異称。 1v7y7if1mbdoe73tu9gwvt0w3jfvc59 embozar 0 363935 2281292 1676321 2026-06-09T11:23:40Z Kuroco2k 84207 2281292 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{prefix|en|alt1=em-|bozo}}{{suffix+||ar|lang=es}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #(マントなどで){{おくりがな2|覆|おお|う|おおう}}。 #(管などを){{おくりがな2|詰|つ|まら|つまる}}せる。 #{{おくりがな2|隠|かく|す|かくす}}。 #{{ふりがな|端綱|はづな}}を付ける。 ===={{conjug}}==== {{es-conj}} 0ynjtk6dgdy08kqcu40fbyru65jsb4f embriagar 0 363940 2281296 1676326 2026-06-09T11:23:39Z Kuroco2k 84207 2281296 wikitext text/x-wiki =={{L|oc}}== ==={{etym}}=== {{m|oc|embriac}} < {{etyl|LL.|oc}} {{m|la|ēbriācus}} < {{etyl|la|oc}} {{m|la|ēbrius}} ==={{pron}}=== *音声: [[ファイル:LL-Q14185 (oci)-Davidgrosclaude-embriagar.wav]] ==={{verb}}=== {{oc-verb|embriag|ar}} #{{context|reflexive|s'embriagar|lang=oc}}{{おくりがな2|酔|よ|う|よう}}。 {{oc-conj-ar|embriag|embriagu}} ---- =={{L|ca}}== ==={{etym}}=== {{m|ca|embriac}} < {{etyl|LL.|ca}} {{m|la|ēbriācus}} < {{etyl|la|ca}} {{m|la|ēbrius}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|a(ɾ)|s=4}} ==={{verb}}=== {{ca-verb|ar|embriag}} #{{context|transitive|lang=ca}}{{おくりがな2|酔|よ|わ|よう}}せる。 {{ca-conj-ar|embriag}} ===={{drv}}==== * {{l|ca|embriagar-se}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|LL.|gl}} {{m|la|ēbriācus}} < {{etyl|la|pt}} {{m|la|ēbrius}} ==={{verb}}=== {{gl-verb|embriag|ar|pret=embriaguei}} #{{context|reflexive|lang=gl}}{{おくりがな2|酔|よ|う|よう}}。 {{gl-conj-car|embriag|embriagu}} ---- =={{L|es}}== ==={{etym}}=== {{m|es|embriago}} < {{etyl|LL.|es}} {{m|la|ēbriācus}} < {{etyl|la|es}} {{m|la|ēbrius}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}{{おくりがな2|酔|よ|わ|よう}}せる。 ===={{conjug}}==== {{es-conj}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|LL.|pt}} {{m|la|ēbriācus}} < {{etyl|la|pt}} {{m|la|ēbrius}} ==={{verb}}=== {{pt-verb|embria|gar}} #{{context|reflexive|lang=pt}}{{おくりがな2|酔|よ|う|よう}}。 {{pt-conj|embria|gar}} 762vsug7dhqwes4zyrcylj7b65lalj8 sementar 0 365029 2281350 1678771 2026-06-09T11:43:25Z Kuroco2k 84207 2281350 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{ast-verb-ar|sement}} #[[semar]]の異形。 {{ast-conj-ar|sement}} ---- =={{L|gl}}== ==={{etym}}=== {{m|gl|semente}} ==={{pron}}=== * {{IPA|lang=gl|semenˈtaɾ}} ==={{verb}}=== {{gl-verb|sement|ar}} #{{ふりがな|種|たね}}を{{おくりがな2|蒔|ま|く|まく}}。 {{gl-conj-ar|sement}} ===={{rel}}==== * {{l|gl|semente}} * {{l|gl|sementeira}} * {{l|gl|sementeiro}} ---- =={{L|es}}== ==={{verb}}=== {{es-verb}} #{{ふりがな|種|たね}}を{{おくりがな2|蒔|ま|く|まく}}。 ===={{conjug}}==== {{es-conj|<ie>}} p27y3139m0ltgve3cf744tfq029k68n そうぼう 0 365738 2281233 2143642 2026-06-09T10:59:45Z 鍼灸 112313 2281233 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|そうほう|ぞうほう|ぞうぼう}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[相貌]]】:顔つき。 *【[[蒼氓]]】:[[人民]]。 *【[[想望]]】:思慕。期待。 *【[[怱忙]]】:慌ただしく忙しいこと。 *【[[双眸]]】:左右の瞳。 *【[[僧坊]],[[僧房]]】:僧侶が起居する家屋。 saq81xaajgy6qq7w1ztk4lqg2eiwl01 じょうどう 0 367465 2280865 1941986 2026-06-08T12:45:32Z M-30722 1202 2280865 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しょうとう|しょうどう|じょうとう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[常道]]】[[つねに|常に]]従うべき[[道徳]]。 *【[[杖道]]】[[武道]]の一つ。 ilmutl5pe5f4ssf0lp4361y80enn7j8 obedecer 0 370931 2281316 1691211 2026-06-09T11:33:24Z Kuroco2k 84207 2281316 wikitext text/x-wiki =={{L|gl}}== ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|obedecer}} < {{etyl|VL.|gl}} {{m|la||*oboedescere}} < {{etyl|la|gl}} {{m|la|oboedīre}} ==={{verb}}=== {{gl-verb|obedec|er|pres=obedezo}} #{{おくりがな2|従|したが|う|したがう}}、[[服従]]する、(規則を){{おくりがな2|守|まも|る|まもる}}、[[順守]]する。 {{gl-conj-cer|obede}} ===={{ant}}==== * {{l|gl|desobedecer}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|oboedire}} ==={{pron}}=== {{es-IPA}} * {{音声|es|LL-Q1321 (spa)-AdrianAbdulBaha-obedecer.wav|音声(コロンビア)}} ==={{verb}}=== {{es-verb}} #{{context| transitive|lang=es}}{{おくりがな2|従|したが|う|したがう}}、[[服従]]する、(規則を){{おくりがな2|守|まも|る|まもる}}、[[順守]]する。 #{{context|intransitive|[[a]]を伴って|lang=es}}〜に[[起因]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|desobedecer}} ===={{rel}}==== * {{l|es|obediencia}} * {{l|es|obediente}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|obedecer}} < {{etyl|VL.|pt}} {{m|la||*oboedescere}} < {{etyl|la|pt}} {{m|la|oboedīre}} ==={{pron}}=== {{pt-IPA|obedecêr}} * {{hyphenation|o|be|de|cer}} ==={{verb}}=== {{pt-verb|obede|cer}} #{{おくりがな2|従|したが|う|したがう}}、[[服従]]する、(規則を){{おくりがな2|守|まも|る|まもる}}、[[順守]]する。 {{pt-conj|obede|cer}} ===={{rel}}==== * {{l|pt|obediente}} * {{l|pt|obediência}} 9jly8rhuubohvn84bjq8bqs94o9urq5 devenir 0 371054 2281280 2169505 2026-06-09T11:20:13Z Kuroco2k 84207 2281280 wikitext text/x-wiki =={{L|ia}}== ==={{etym}}=== {{etyl|fr|ia}} ==={{pron}}=== * {{IPA|lang=ia|de.veˈnir}} ==={{verb}}=== {{ia-verb|ir}} #〜に[[なる]]。 {{ia-conj|deven|ir}} =={{L|fro}}== ==={{etym}}=== {{m|fro|devenguz}} < {{etyl|la|fro}} {{m|la|devenīre}} ==={{verb}}=== {{head|fro|verb}} #〜に[[なる]]。 ===={{conjugation}}==== {{fro-conj-venir|de}} ===={{desc}}==== * {{desc|fr|devenir}} =={{L|es}}== ==={{etym}}=== {{bor|es|fr|devenir}} ==={{noun}}=== {{es-noun|m|devenires}} #{{context|time|lang=es}}[[将来]]、[[未来]]。 ==={{verb}}=== {{es-verb}} #〜に[[なる]]。 #{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{syn}}==== * (語義2) {{l|es|pasar}}, {{l|es|suceder}}, {{l|es|ocurrir}} =={{L|fr}}== ==={{alter}}=== * {{l|fr|dev'nir}} ==={{etym}}=== {{etyl|fro|fr}} {{m|fro|devenir}} < {{etyl|la|fr}} {{m|la|dēvenīre}} < {{m|la|dē}} + {{m|la|venīre}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-devenir.ogg}} ==={{noun}}=== {{fr-noun|m}} #{{context|time|lang=fr}}[[将来]]、[[未来]]。 ===={{syn}}==== * {{l|fr|futur}}, {{l|fr|destin}}, {{l|fr|avenir}} ===={{drv}}==== * {{l|fr|en devenir}} ==={{verb}}=== {{fr-verb}} #〜に[[なる]]。 #{{context|Louisiana|'''de'''を伴って|lang=fr}}〜から{{おくりがな2|来|く|る|くる}}、〜に[[由来]]する。 ===={{conjugation}}==== {{fr-conj-venir|de|être}} ===={{drv}}==== * {{l|fr|c'est en forgeant qu'on devient forgeron}} * {{l|fr|devenir chèvre}} * {{l|fr|petit poisson deviendra grand}} ===={{rel}}==== * {{l|fr|venir}} ==={{anag}}=== * {{l|fr|deviner}} * {{l|fr|venir de}} 48zt9bm2zbpok61w45qfx4m22jkm2rr 0 371153 2280907 1975190 2026-06-08T13:27:22Z M-30722 1202 2280907 wikitext text/x-wiki ==漢字== {{kanji|心3|8}} {{kanji variants|慣=[[繁体字]]}} *筆順 :[[image:{{PAGENAME}}-bw.png|350px]] ===意義=== #[[なれる]]、[[ならす]]。 =={{L|zh}}== {{zh-cat|guan4|hsk=丙|常=1|簡=1}} ==={{pron}}=== {{zh-han|m=guàn|ma=Zh-guàn.ogg|c=gwaan3}} =={{コード}}== {{文字コード}} *[[倉頡入力法]] : 心田十人 (PWJO), maksv06724fwcp30znsgxaw2nt1k713 convenir 0 371282 2281262 2169504 2026-06-09T11:12:42Z Kuroco2k 84207 2281262 wikitext text/x-wiki =={{L|ca}}== ==={{alter}}=== * {{l|ca|convindre}} ==={{etym}}=== {{etyl|la|ca}} {{m|la|convenīre}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|pres_1_sg=convinc|past_part=convingut}} #{{context|intransitive|lang=ca}}[[適する|適して]]いる、[[都合]]がよい。 #{{context|intransitive|lang=ca}}{{おくりがな2|認|みと|める|みとめる}}、[[合意]]する、[[一致]]する。 {{ca-conj-ir-tenir|conven|convin|conve|<!-- -->|pres_ind_3_sg=convé<!-- -->|impr_2_sg=convén<!-- -->}} ===={{syn}}==== * (語義2) [[estar]] d'[[acord]] ===={{drv}}==== * {{l|ca|desconvenir}} ===={{rel}}==== * {{l|ca|convenció}} * {{l|ca|conveni}} * {{l|ca|conveniència}} * {{l|ca|convenient}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|convenīre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}{{おくりがな2|認|みと|める|みとめる}}、[[合意]]する、[[一致]]する。 #{{context|transitive|intransitive|lang=es}}[[適する|適して]]いる、[[都合]]がよい。 #{{context|transitive|lang=es}}{{おくりがな2|集|あつ|める|あつめる}}、[[召集]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|acordar}}, {{l|es|concordar}}, {{l|es|admitir}} ===={{rel}}==== * {{l|es|conveniencia}} * {{l|es|conveniente}} * {{l|es|convenio}} * {{l|es|convención}} =={{L|fr}}== ==={{etym}}=== {{etyl|la|fr}} {{m|la|convenire}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-convenir.ogg}} ==={{verb}}=== {{fr-verb}} #{{おくりがな2|認|みと|める|みとめる}}、[[合意]]する、[[一致]]する。 #[[適する|適して]]いる、[[都合]]がよい。 ===={{conjugation}}==== {{fr-conj-venir|con|avoir}} ===={{rel}}==== * {{l|fr|convenance}} * {{l|fr|convention}} 7xt15ipl73y1k53ocn587bdf41kceem sonreír 0 372677 2281344 1694971 2026-06-09T11:43:23Z Kuroco2k 84207 2281344 wikitext text/x-wiki {{DEFAULTSORT:sonreir}} =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|sonreír}} < {{etyl|la|es}} {{m|la|subrīdēre}} ==={{pron}}=== {{es-IPA}} * {{音声|es|LL-Q1321 (spa)-AdrianAbdulBaha-sonreír.wav|音声(コロンビア)}} ==={{verb}}=== {{es-verb}} #{{context|intransitive|lang=es}}{{おくりがな3|微|ほほ||笑|え|む|ほほえむ}}。 ===={{conjug}}==== {{es-conj|<í>}} ===={{rel}}==== * {{l|es|reír}} * {{l|es|sonrisa}} kg9so1r7bor6ukoodmv1s6xdnb2xw4w ascender 0 375246 2281241 1701245 2026-06-09T11:03:37Z Kuroco2k 84207 2281241 wikitext text/x-wiki =={{L|ia}}== ==={{verb}}=== {{ia-verb|er}} #{{おくりがな2|登|のぼ|る|のぼる}}、{{おくりがな2|上|あ|がる|あがる}}、[[上昇]]する。 {{ia-conj|ascend|er}} ---- =={{L|en}}== ==={{etym}}=== {{-er|ascend}} ==={{pron}}=== * {{rhymes|ɛndə(ɹ)|s=3}} ==={{noun}}=== {{en-noun}} #{{おくりがな2|登|のぼ|る|のぼる}}人、[[上昇]]させる物。 ===={{coor}}==== * {{l|en|descender}} ===={{rel}}==== * {{l|en|ascend}} * {{l|en|ascent}} * {{l|en|ascendant}} * {{l|en|ascendance}} * {{l|en|ascendancy}} / {{l|en|ascendency}} * {{l|en|ascending}} ==={{anag}}=== * {{anagrams|en|a=acdeenrs|reascend}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|ascendere}} ==={{pron}}=== * {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|登|のぼ|る|のぼる}}、{{おくりがな2|上|あ|がる|あがる}}、[[上昇]]する。 #(階級が)上がる、[[昇進]]する。 ===={{conjug}}==== {{es-conj|<ie>}} ===={{ant}}==== * {{l|es|descender}} ===={{rel}}==== * {{l|es|ascendente}} * {{l|es|ascendiente}} * {{l|es|ascensión}} * {{l|es|ascenso}} * {{l|es|ascensor}} * {{l|es|descender}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|ascendere}} ==={{pron}}=== {{pt-IPA|br=ascendêr|pt=ascendêr,achendêr}} * {{homophones|lang=pt|acender|q1=Brazil}} ==={{verb}}=== {{pt-verb|ascend|er}} #{{context|intransitive|lang=pt}}{{おくりがな2|登|のぼ|る|のぼる}}、{{おくりがな2|上|あ|がる|あがる}}、[[上昇]]する。 {{pt-conj|ascend|er}} ===={{syn}}==== * {{l|pt|subir}}, {{l|pt|alçar}} ===={{rel}}==== * {{l|pt|ascensão}} * {{l|pt|descender}} jkauxtz7sdc7gowpvggj6zm9hl4fm72 oscurecer 0 378233 2281313 1708169 2026-06-09T11:33:24Z Kuroco2k 84207 2281313 wikitext text/x-wiki =={{L|es}}== ==={{alter}}=== * {{l|es|obscurecer}} ==={{etym}}=== {{suffix+|oscuro|ecer|lang=es}} ==={{pron}}=== {{es-IPA}} * {{音声|es|LL-Q1321 (spa)-AdrianAbdulBaha-oscurecer.wav|音声(コロンビア)}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|暗|くら|く|くらい}}する、{{おくりがな2|曇|くも|ら|くもる}}せる。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|oscurecimiento}} 5j4q7s0dy9gqz4fcaewgwto00xn5qb2 levigar 0 378614 2281394 1708995 2026-06-09T11:57:13Z Kuroco2k 84207 2281394 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|lēvigāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}{{おくりがな2|滑|なめ|らか|なめらか}}にする。 ===={{conjug}}==== {{es-conj|nocomb=1}} ep4zli16z1phi09jgddc7c1vh7izier だいしゃ 0 379858 2281196 1945765 2026-06-09T09:48:18Z うーむ 129171 /* */ 2281196 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たいしゃ|だいじゃ}} =={{ja}}== ==={{homonym}}=== {{head|ja|同音異義}} *【[[台車]]】:物を載せて移動させる手押し車。 *【[[代車]]】:自分の車が使用できない時に代わりに使用する車。 *【[[第舎]]】:邸宅。 *【[[題者]]】:出題者。 69s2hwhpwmj222vs0z0fau2neunen6f ぞうほう 0 379897 2281234 1945789 2026-06-09T11:00:17Z 鍼灸 112313 2281234 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|そうほう|そうぼう|ぞうぼう}} =={{ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[像法]]】:仏教の区分の一つ。 *【[[増俸]]】:俸給、給料を増やすこと。 3b9lgmuvo620xl6ue5rg46cv2lx3r8h 0 380432 2280909 1834333 2026-06-08T13:30:30Z M-30722 1202 2280909 wikitext text/x-wiki ==漢字== {{kanji|贝|4}} {{kanji variants|貫=[[繁体字]]}} ===意義=== #[[つらぬく]]、[[とおす]]、[[とおる]]。 #(歴史)財貨を連ねたもの、財貨を連ねる紐、[[ぜにさし]]。 #貨幣の単位。最小単位を1000程度にまとめたもの。 #つらぬきとおったもの、[[すじみち]]。 #[[出身地]]、[[本籍]]。 =={{L|zh}}== {{zh-cat|guan4|固有名詞|姓|常=1|簡=1}} {{trans_link|zh|{{PAGENAME}}}} * '''ローマ字表記''' ** '''[[普通話]]''' *** '''[[ピンイン]]''':guàn(guan4) *** '''[[ウェード式]]''':kuan<sup>4</sup> ** '''[[広東語]]''' *** '''[[イェール式]]''':gun3 ** '''[[閩南語]]''' *** '''[[POJ]]''': kǹg, kùiⁿ, koàn ** '''[[呉語]]''' *** '''[[ピンイン]]''': kuoe3 ==={{pron}}=== *[[file:Zh-guàn.ogg]] ==={{name}}=== #中国人の[[姓]]の一つ。 =={{コード}}== {{文字コード}} *[[倉頡入力法]] : 田十月人 (WJBO) luss2sajbypy9n5vl2h5m7wwnewsv0n がじょう 0 381069 2280900 1946293 2026-06-08T13:20:18Z M-30722 1202 2280900 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かしょう|かじょう|がしょう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[賀状]]】祝賀を表す手紙。 *【[[画帖]]】絵をまとめた冊子。 *【[[牙城]]】本拠。 6yws7pwck9z4mkkho5apeig0wdfasfu maligning 0 381133 2280977 1714630 2026-06-08T15:07:24Z M-30722 1202 2280977 wikitext text/x-wiki =={{L|en}}== ==={{verb}}=== {{head|en|verb form}} #[[malign]]の動名詞又は現在分詞。 baeumo5u7dfhm3jtg92ytv0y3v25ln6 surgir 0 382049 2281342 1716377 2026-06-09T11:43:23Z Kuroco2k 84207 2281342 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|surgere}} ==={{pron}}=== {{es-IPA}} * {{音声|es|LL-Q1321 (spa)-AdrianAbdulBaha-surgir.wav|音声(コロンビア)}} ==={{verb}}=== {{es-verb}} #{{context|intransitive|lang=es}}{{おくりがな2|現|あらわ|れる|あらわれる}}、[[出現]]する。 #{{context|intransitive|lang=es}}{{おくりがな3|噴|ふ|き|出|だ|す|ふきだす}}。 #{{context|intransitive|lang=es}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|aparecer}} ===={{drv}}==== * {{l|es|surgidero}} * {{l|es|surgidor}} * {{l|es|surgimiento}} ===={{rel}}==== * {{l|es|resurgir}} * {{l|es|surgencia}} * {{l|es|surto}} ---- =={{L|fr}}== ==={{etym}}=== {{bor|fr|la|surgere}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-surgir.ogg|音声}} ==={{verb}}=== {{fr-verb}} #{{context|intransitive|lang=fr}}{{おくりがな2|現|あらわ|れる|あらわれる}}、[[出現]]する。 #{{context|intransitive|lang=fr}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjugation}}==== {{fr-conj-auto}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|surgere}} ==={{pron}}=== {{pt-IPA}} ==={{verb}}=== {{pt-verb|sur|gir}} #{{おくりがな2|現|あらわ|れる|あらわれる}}、[[出現]]する。 #{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 {{pt-conj|sur|gir}} ===={{syn}}==== * {{l|pt|aparecer}}, {{l|pt|exsurgir}} h6u8jq7dcaqczilsuqjv60tfj395o59 indizar 0 382387 2281331 1717178 2026-06-09T11:39:11Z Kuroco2k 84207 2281331 wikitext text/x-wiki =={{L|es}}== ==={{alter}}=== * {{l|es|indexar}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}[[目次]]を付ける。 ===={{conjug}}==== {{es-conj|nocomb=1}} ak1ieh0xxi30ax9t890ivq8a7ar2kwm がんせい 0 389740 2281087 1949694 2026-06-09T01:25:31Z うーむ 129171 /* */ 2281087 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かんせい|かんぜい}} =={{ja}}== ==={{homonym}}=== {{head|ja|同音異義}} *【[[眼精]]・[[眼勢]]・[[眼睛]]】:目付き。眼力。 *【[[巌棲]]・[[巌栖]]】:巌窟の中に棲むこと。 2fd4dsj8o0u8mwj3ntyk82v1ajj2z6l 2281319 2281087 2026-06-09T11:37:17Z M-30722 1202 2281319 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かんせい|かんぜい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[眼精]]・[[眼勢]]・[[眼睛]]】目付き。眼力。 *【[[巌棲]]・[[巌栖]]】巌窟の中に棲むこと。 48zdfvf67lftgdgl4uho717ocpg718a れいく 0 397938 2280943 1952561 2026-06-08T14:01:53Z M-30722 1202 2280943 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[例句]]】[[歳時記]]などで[[季語]]の[[使用]]例として示される[[俳句]]。 *【[[霊区]]】霊域。霊場。 *【[[麗句]]】飾られた言葉。 *【[[儷句]]】対句。 pp7i99vs36s5roy1bfnv797jkfqtc4r desafiar 0 397972 2281285 1755593 2026-06-09T11:20:15Z Kuroco2k 84207 2281285 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{ast-verb-ar|desafi}} #{{おくりがな2|挑|いど|む|いどむ}}、[[挑戦]]する。 {{ast-conj-ar|desafi}} ===={{syn}}==== * {{l|ast|retar}} ===={{rel}}==== * {{l|ast|desafíu}} ---- =={{L|ca}}== ==={{etym}}=== {{prefix|des|afiar|lang=ca}}, {{m|ca|afidar}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|desafi}} #{{おくりがな2|挑|いど|む|いどむ}}、[[挑戦]]する。 {{ca-conj-ar|desafi}} ===={{drv}}==== * {{l|ca|desafiador}} * {{l|ca|desafiament}} * {{l|ca|desafiu}} ---- =={{L|es}}== ==={{etym}}=== {{prefix|des|afiar|lang=es}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}{{おくりがな2|挑|いど|む|いどむ}}、[[挑戦]]する。 #{{context|transitive|lang=es}}[[挑発]]する。 #{{context|transitive|lang=es}}{{おくりがな3|立|た|ち|向|む|かう|たちむかう}}。 ===={{conjug}}==== {{es-conj|<í>}} ===={{syn}}==== * {{l|es|retar}} ===={{drv}}==== * {{l|es|desafiador}} * {{l|es|desafiamiento}} * {{l|es|desafiante}} * {{l|es|desafío}} ---- =={{L|pt}}== ==={{etym}}=== {{m|pt|des-}} + {{m|pt|a-}} + {{m|pt|fiar}} ==={{verb}}=== {{pt-verb}} #{{おくりがな2|挑|いど|む|いどむ}}、[[挑戦]]する。 {{pt-conj|desafi|ar}} ===={{rel}}==== * {{l|pt|desafio}} 0kjuhsn6c241wixdhmsib3qdy2vyu7z Gewächs 0 406248 2280961 1775100 2026-06-08T14:33:15Z M-30722 1202 2280961 wikitext text/x-wiki {{DEFAULTSORT:gewachs}} =={{L|de}}== ==={{etym}}=== {{etyl|gmh|de}} {{m|gmh|gewehse}} ==={{pron}}=== * {{IPA|lang=de|ɡəˈvɛks}} * {{音声|de|De-Gewächs.ogg|音声}} ==={{noun}}=== {{de-noun|g=n|Gewächses|Gewächse}} #{{topcat|de|植物}}[[植物]]。 #:{{syn|de|Pflanze}} #{{タグ|de|腫瘍学|古用法}}[[腫瘍]]。 #:{{syn|de|Geschwür|Geschwulst|Wucherung|Tumor}} {{de-decl-noun-n|es|e}} ===={{drv}}==== {{top}} * {{l|de|Gewächsart}} * {{l|de|gewächsartig}} * {{l|de|Gewächshaus}} * {{l|de|Asterngewächs}} * {{l|de|Eigengewächs}} * {{l|de|Farngewächs}} * {{l|de|Gartengewächs}} * {{l|de|Geißblattgewächs}} * {{l|de|Großes Gewächs}} * {{l|de|Hahnenfußgewächs}} * {{l|de|Heilgewächs}} * {{l|de|Johannisbrotgewächs}} * {{l|de|Korbblütengewächs}} * {{l|de|Kulturgewächs}} * {{l|de|Lippenblütengewächs}} * {{l|de|Mimosengewächs}} * {{l|de|Pilzgewächs}} * {{l|de|Rautengewächs}} * {{l|de|Rosengewächs}} * {{l|de|Schmetterlingsblütengewächs}} * {{l|de|Schwertliliengewächs}} * {{l|de|Wiesengewächs}} * {{l|de|Wildgewächs}} * {{l|de|Ziergewächs}} {{bottom}} cnap0febd8n96njy6nnzuzmf0us3iwg カテゴリ:外来語 14 417697 2281362 1800409 2026-06-09T11:50:51Z M-30722 1202 sakujo 2281362 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:朝鮮語 外来語 14 417704 2281395 1800491 2026-06-09T11:57:29Z M-30722 1202 sakujo 2281395 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:英語 外来語 14 417714 2281396 1800524 2026-06-09T11:57:49Z M-30722 1202 sakujo 2281396 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:客家語 外来語 14 417806 2281389 1800822 2026-06-09T11:56:03Z M-30722 1202 sakujo 2281389 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:閩南語 外来語 14 417823 2281392 1800884 2026-06-09T11:56:52Z M-30722 1202 sakujo 2281392 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ 4 417830 2281375 2212200 2026-06-09T11:51:38Z M-30722 1202 /* 外来語関連のカテゴリ */ 2281375 wikitext text/x-wiki ===外来語関連のカテゴリ=== 他言語から入ってきた語には現在では「〇〇語由来」や「借用語」などのカテゴリが使われており、現在では新たに付けられることがなくなったカテゴリ。[[カテゴリ・トーク:他言語由来|カテゴリの議論]]により、処理が完了したものから順次「他言語由来」に改められ、また、借用語などとの混同のためか時々誤って当カテゴリが付けられるケースが見られ混乱を生じていることから処理が終わったものから順次削除をお願いします。現在以下のカテゴリの処理が完了しております。 *[[:カテゴリ:英語 外来語]] *[[:カテゴリ:スロヴァキア語 外来語]] *[[:カテゴリ:朝鮮語 外来語]] *[[:カテゴリ:客家語 外来語]] *[[:カテゴリ:フランス語 外来語]] *[[:カテゴリ:閩南語 外来語]] *[[:カテゴリ:ヤミ語 外来語]] --[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2023年8月8日 (火) 16:16 (UTC) :<del><nowiki>{{削除}}</nowiki></del> カテゴリページのリダイレクトは相当な理由がない限り全削除が妥当。 --[[利用者:Naggy Nagumo|Naggy Nagumo]] ([[利用者・トーク:Naggy Nagumo|トーク]]) 2023年8月10日 (木) 10:24 (UTC) ::(追加)以下のカテゴリも処理完了しましたので合わせて削除を依頼します。 ::*[[:カテゴリ:スペイン語 外来語]] ::*[[:カテゴリ:ロシア語 外来語]] ::*[[:カテゴリ:閩東語 外来語]] ::*[[:カテゴリ:広東語 外来語]] ::*[[:カテゴリ:呉語 外来語]] ::*[[:カテゴリ:中国語 外来語]] --[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2023年8月15日 (火) 12:33 (UTC) :('''即時削除''') ページの移動後に残るリダイレクトで、他ページからの被リンクが無いもの--[[利用者:Naggy Nagumo|Naggy Nagumo]] ([[利用者・トーク:Naggy Nagumo|トーク]]) 2026年4月4日 (土) 03:17 (UTC) ::(追加)以下のカテゴリも処理完了しました。 ::*[[:カテゴリ:パラオ語 外来語]] ::*[[:カテゴリ:タイ語 外来語]] ::*[[:カテゴリ:ラーオ語 外来語]] ::*[[:カテゴリ:日本語 外来語]] ::おそらくこれで全ての外来語カテゴリの処理が完了したと思いますのでこれらの上位カテゴリである[[:カテゴリ:外来語]]の削除もお願いできればと思います。 --[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2026年6月9日 (火) 11:51 (UTC) e1oi4rqb4h1v88wquvuft2jr41q3npu danzar 0 417963 2281288 1801187 2026-06-09T11:20:17Z Kuroco2k 84207 2281288 wikitext text/x-wiki =={{L|gl}}== ==={{verb}}=== {{gl-verb|danz|ar|pret=dancei}} #{{context|dance|lang=gl}}{{おくりがな2|踊|おど|る|おどる}}。 {{gl-conj-car|danz|danc}} ===={{rel}}==== * {{l|gl|danzo}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|dançar}} < {{etyl|fro|es}} {{m|fro|dancier}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|intransitive|transitive|dance|lang=es}}{{おくりがな2|踊|おど|る|おどる}}。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|bailar}} ===={{drv}}==== * {{l|es|danza}} * {{l|es|danzador}} kkl3sf9cw5mxiv0qn1qpi5h0wn24glz カテゴリ:スペイン語 外来語 14 418023 2281398 1801277 2026-06-09T11:58:27Z M-30722 1202 sakujo 2281398 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:ロシア語 外来語 14 418037 2281397 1801340 2026-06-09T11:58:07Z M-30722 1202 sakujo 2281397 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:閩東語 外来語 14 419495 2281391 1804867 2026-06-09T11:56:29Z M-30722 1202 sakujo 2281391 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:呉語 外来語 14 419501 2281379 1804925 2026-06-09T11:55:40Z M-30722 1202 sakujo 2281379 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:中国語 外来語 14 419537 2281378 1805064 2026-06-09T11:54:57Z M-30722 1202 sakujo 2281378 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:イタリア語 外来語 14 419815 2281399 1805841 2026-06-09T11:58:58Z M-30722 1202 sakujo 2281399 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:日本語 外来語 14 420218 2281358 1806941 2026-06-09T11:46:52Z M-30722 1202 sakujo 2281358 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:タイ語 外来語 14 420830 2281357 1808426 2026-06-09T11:46:30Z M-30722 1202 sakujo 2281357 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s カテゴリ:パラオ語 外来語 14 420832 2281356 1808636 2026-06-09T11:46:05Z M-30722 1202 sakujo 2281356 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s wrath 0 428577 2281038 1823821 2026-06-08T16:57:06Z M-30722 1202 2281038 wikitext text/x-wiki {{also|wraþ|wrað}} =={{L|en}}== ==={{etym}}=== *{{etyl|enm}} {{m|enm|wraththe}}, {{m|enm|wreththe}} < {{etyl|ang}} {{m|ang|wrǣþþu}} < {{etyl|gmw-pro}} {{m|gmw-pro|*wraiþiþu}} *{{affix|en|wroth|-th}} ==={{pron}}=== * {{a|RP}} {{IPA|lang=en|ɹɒθ|ɹɔːθ}} ** {{rhymes|lang=en|ɒθ|ɔːθ|s1=1}} ** {{homophones|lang=en|wroth}} * {{a|GA}} {{IPA|ɹæθ}} ** {{音声|en|en-us-wrath.ogg|a=米}} ** {{rhymes|lang=en|æθ|s=1}} * {{a|NZ}} {{IPA|lang=en|ɹæθ|ɹɔθ}} ==={{noun}}=== {{en-noun|-|s}} #{{context|formal|old-fashioned|lang=en}}[[激怒]]、[[憤怒]]。 #{{context|rare|lang=en}}[[懲罰]]。 ===={{syn}}==== * {{l|en|fury}}, {{l|en|ire}} ===={{drv}}==== * {{l|en|grapes of wrath}} * {{l|en|wrathful}} ===={{rel}}==== * {{l|en|wroth}} ==={{adjective}}=== {{en-adj}} #激怒した。 ==={{verb}}=== {{en-verb}} #{{context|obsolete|EME|lang=en}}激怒する。 ==={{anag}}=== * {{anagrams|en|a=ahrtw|Warth|warth}} 1dp6wa97f83wxkp2emuyv65fo2irjz9 sugerir 0 429483 2281343 1825293 2026-06-09T11:43:24Z Kuroco2k 84207 2281343 wikitext text/x-wiki =={{L|vec}}== ==={{alter}}=== * [[sujerir]] ==={{etym}}=== {{etyl|la|vec}} {{m|la|suggerere}} ==={{verb}}=== {{head|vec|verb}} #{{context|transitive|lang=vec}}[[提案]]する。 #{{context|transitive|lang=vec}}[[示唆]]する、[[暗示]]する。 {{vec-conj-auto}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|suggerere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[提案]]する。 #[[示唆]]する、[[暗示]]する。 ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{rel}}==== * {{l|es|sugerencia}} ===={{rel}}==== * {{l|es|sugestión}} * {{l|es|sugestivo}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|suggerere}} ==={{pron}}=== {{pt-IPA}} * {{homophones|lang=pt|sugeri}} * {{hyph|pt|su|ge|rir}} ==={{verb}}=== {{pt-verb}} #[[提案]]する。 #[[示唆]]する、[[暗示]]する。 {{pt-conj|sug|erir}} glz2krwdes8lz3pj3f10z9z4e90rk1w converger 0 429958 2281261 1826311 2026-06-09T11:12:42Z Kuroco2k 84207 2281261 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{-er|converge}} ==={{noun}}=== {{en-noun}} #[[集中的]][[思考]]ができる人。 ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|convergere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #(一箇所に){{おくりがな2|集|あつ|まる|あつまる}}、[[集中]]する。 #(意見などが)[[一致]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|convergencia}} * {{l|es|convergente}} ---- =={{L|fr}}== ==={{etym}}=== {{etyl|la|fr}} {{m|la|convergere}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|LL-Q150 (fra)-DSwissK-converger.wav|音声}} ==={{verb}}=== {{fr-verb}} #{{context|intransitive|一箇所に|lang=fr}}{{おくりがな2|集|あつ|まる|あつまる}}、[[集中]]する。 #{{context|intransitive|意見などが|lang=fr}}[[一致]]する。 ===={{conjugation}}==== {{fr-conj-auto}} ===={{ant}}==== * {{l|fr|diverger}} ===={{rel}}==== * {{l|fr|convergence}} * {{l|fr|convergent}} s0bnkne622e9i3jicjjdcos24pwuxdn convergir 0 429961 2281260 1826314 2026-06-09T11:12:42Z Kuroco2k 84207 2281260 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|convergere}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ir|converg}} #(一箇所に){{おくりがな2|集|あつ|まる|あつまる}}、[[集中]]する。 #(意見などが)[[一致]]する。 {{ca-conj-ir|converg}} ===={{rel}}==== * {{l|ca|convergència}} * {{l|ca|convergent}} ---- =={{L|es}}== ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[converger]]の異形。 ===={{conjug}}==== {{es-conj|nocomb=1}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|convergere}} ==={{verb}}=== {{pt-verb}} #(一箇所に){{おくりがな2|集|あつ|まる|あつまる}}、[[集中]]する。 #(意見などが)[[一致]]する。 ===={{rel}}==== * {{l|pt|convergência}} * {{l|pt|convergente}} n0x2as4x0l0ecgmzdj0wziamkrfe06n purgar 0 431372 2281367 1828854 2026-06-09T11:51:10Z Kuroco2k 84207 2281367 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|purgāre}} < {{m|la|pūrus}} + {{m|la|agere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|medicine|lang=es}}[[下剤]]をかける。 #{{context|religion|transitive|lang=es}}{{おくりがな2|清|きよ|める|きよめる}}、[[浄化]]する。 #{{context|transitive|lang=es}}[[除去]]する、[[排出]]する、[[放出]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|purgable}} * {{l|es|purgación}} * {{l|es|purgador}} * {{l|es|purgamiento}} * {{l|es|purgativo}} ---- =={{L|sh}}== ==={{alter}}=== * {{l|sh|purger}} ==={{etym}}=== {{bor|sh|de|Bürger}} ==={{noun}}=== {{sh-noun+|g=m|head=pȕrgar}} #[[中産階級]]。 #[[ザグレブ]][[市民]]。 ===={{rel}}==== * {{l|sh|građanin}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|purgāre}} < {{m|la|pūrus}} + {{m|la|agere}} ==={{pron}}=== {{pt-IPA}} * {{hyphenation|pt|pur|gar}} ==={{verb}}=== {{pt-verb}} #[[きれい]]にする、[[清浄]]にする、[[除去]]する。 #{{context|religion|lang=pt}}{{おくりがな2|清|きよ|める|きよめる}}、[[浄化]]する。 #{{context|medicine|lang=pt}}[[下剤]]をかける。 {{pt-conj|pur|gar}} ===={{syn}}==== * (語義1) {{l|pt|absolver}}, {{l|pt|redimir}}, {{l|pt|remir}} ===={{rel}}==== {{top}} * {{l|pt|purga}} * {{l|pt|purgação}} * {{l|pt|purgado}} * {{l|pt|purgador}} * {{l|pt|purgante}} * {{l|pt|purgatina}} * {{l|pt|purgativa}} * {{l|pt|purgativo}} * {{l|pt|purgatorial}} * {{l|pt|purgatório}} {{bottom}} nunaux7q63pfdi9f6wg065xfbzwhysn さいしき 0 433689 2280942 2213702 2026-06-08T14:01:26Z M-30722 1202 2280942 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|さいじき}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[才識]]】才知と識見。 *【[[彩色]]】いろどり。 *【[[祭式]]】祭事の儀式。 jx14uxlpar1r6s472zfk4zus1o6l51u ほうしゅ 0 435678 2281079 1962841 2026-06-09T01:22:40Z ふゆくれ 95641 2281079 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうじゅ|ぼうしゅ|ぼうじゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|法主|t=仏の尊称。|hom=y}} {{ja-k|砲手|炮手|t=砲を撃つ役の兵士。}} {{ja-k|法酒|t=正宴。}} {{ja-k|捧手|t=拱手。}} {{ja-k|朋酒|t=両樽の酒。}} {{ja-k|蓬首|t=髪の乱れた頭。}} {{ja-k|蔀首|t=蔀法の起点。}} {{ja-k|幫手|t=助手。}} 6478dzv4v2yi4771frdrewf3yd72etj exhibir 0 436828 2281205 1840268 2026-06-09T10:42:17Z Kuroco2k 84207 2281205 wikitext text/x-wiki =={{L|ia}}== ==={{verb}}=== {{ia-verb|ir}} #[[展示]]する、{{おくりがな2|見|み|せる|みせる}}。 {{ia-conj|exhib|ir}} ---- =={{L|ca}}== ==={{pron}}=== * {{ca-IPA}} * {{rhymes|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|ir|exhib}} #[[展示]]する、{{おくりがな2|見|み|せる|みせる}}。 {{ca-conj-ir|exhib}} ===={{rel}}==== * {{l|ca|exhibició}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|la|gl}} {{m|la|exhibēre}} ==={{verb}}=== {{gl-verb|exhib}} #[[展示]]する、{{おくりがな2|見|み|せる|みせる}}。 #{{context|reflexive|lang=gl}}{{おくりがな2|見|み|せつける|みせつける}}。 #{{context|reflexive|裸を人前で|lang=gl}}[[露出]]する。 {{gl-conj-ir|exhib}} ===={{rel}}==== * {{l|gl|exhibición}} ==={{seealso}}=== * {{l|gl|mostrar}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|exhibēre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[展示]]する、{{おくりがな2|見|み|せる|みせる}}。 #{{context|reflexive|lang=es}}{{おくりがな2|見|み|せつける|みせつける}}。 #{{context|reflexive|裸を人前で|lang=es}}[[露出]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|exhibición}} ==={{seealso}}=== * {{l|es|mostrar}} 7o4s6cweq8cz2zt8xfdnd4ipl4j8if4 atestar 0 439105 2281239 1844702 2026-06-09T11:03:36Z Kuroco2k 84207 2281239 wikitext text/x-wiki =={{L|es}}== ==={{pron}}=== {{es-IPA}} ==={{etym}}1=== {{affix|es|a-|tiesto|-ar}} ===={{verb}}==== {{es-verb}} #{{おくりがな3|詰|つ|め|込|こ|む|つめこむ}}、{{おくりがな3|埋|う|め|尽|つ|くす|うめつくす}}。 ====={{conjug}}===== {{es-conj|<ie,+>}} ==={{etym}}2=== {{bor|es|la|attestārī}} ===={{verb}}==== {{es-verb}} #{{context|legal|lang=es}}[[証明]]する、[[証言]]する。 ====={{conjug}}===== {{es-conj|nocomb=1}} ===={{syn}}==== * {{l|es|testificar}} ====={{drv}}===== * {{l|es|atestado}} ====={{rel}}===== * {{l|es|atestación}} * {{l|es|testar}} ---- =={{L|pt}}== ==={{pron}}=== {{pt-IPA}} ==={{etym}}1=== {{bor|pt|la|attestārī}} ===={{verb}}==== {{pt-verb}} #[[証明]]する、[[証言]]する、[[証拠]]となる。 {{pt-conj|atest|ar}} ====={{rel}}===== * {{l|pt|atestação}} * {{l|pt|testar}} * {{l|pt|contestar}} * {{l|pt|detestar}} * {{l|pt|protestar}} ==={{etym}}2=== {{m|pt|testo}} ===={{verb}}==== {{pt-verb}} #{{おくりがな2|満|み|たす|みたす}}。 {{pt-conj|atest|ar}} ====={{rel}}===== * {{l|pt|testar}} s88gg5av0dz93cobvny1xggcmjq2x9o どかん 0 439624 2281061 1963907 2026-06-09T00:39:02Z うーむ 129171 /* 漢字表記語の仮名表記 */ 2281061 wikitext text/x-wiki =={{L|ja}}== {{kana-DEFAULTSORT}} ==={{adverb}}=== {{ja-adv}} {{context|onomatopoeia|lang=ja}} :(ときに「と」を後置する) #大きな物が[[衝突]]したり[[落下]]したりした際の[[おと|音]]を表す語。 #[[破裂]]や[[爆発]]などで出る大きな音を表す語。 #{{context|baseball|lang=ja}}[[ホームラン]]など[[長打]]を放つさま。 #物事が大きく[[変化]]するさま。大きな[[行動]]を起こすさま。 ==={{kangokana}}=== {{ja-kangokana}} *【[[土管]]】:陶磁器製の管。 euuef7pm5mek0uqs2aylrplbybcqmpz 2281071 2281061 2026-06-09T00:47:26Z うーむ 129171 /* */ 2281071 wikitext text/x-wiki {{also|とがん}} =={{L|ja}}== {{kana-DEFAULTSORT}} ==={{adverb}}=== {{ja-adv}} {{context|onomatopoeia|lang=ja}} :(ときに「と」を後置する) #大きな物が[[衝突]]したり[[落下]]したりした際の[[おと|音]]を表す語。 #[[破裂]]や[[爆発]]などで出る大きな音を表す語。 #{{context|baseball|lang=ja}}[[ホームラン]]など[[長打]]を放つさま。 #物事が大きく[[変化]]するさま。大きな[[行動]]を起こすさま。 ==={{kangokana}}=== {{ja-kangokana}} *【[[土管]]】:陶磁器製の管。 i8pr475ykuwvaf8j2xqrslgm98sdkfz prologar 0 440226 2281366 1847346 2026-06-09T11:51:10Z Kuroco2k 84207 2281366 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{affix|es|prólogo|-ar}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}[[序文]]を{{おくりがな2|付|つ|ける|つける}}。 ===={{conjug}}==== {{es-conj}} b1d88n23q1cbl8o2u4xpi1fg2plazc0 enviar 0 441928 2281291 1850841 2026-06-09T11:23:39Z Kuroco2k 84207 2281291 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{etyl|LL.|ca}} {{m|la|inviāre}} < {{etyl|la|ca}} {{m|la|via}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|envi}} #{{context|transitive|lang=ca}}{{おくりがな2|送|おく|る|おくる}}。 #{{context|transitive|pronominal|lang=ca}}{{おくりがな3|飲|の|み|込|こ|む|のみこむ}}。 {{ca-conj-ar|envi}} ===={{syn}}==== * (語義1) {{l|ca|trametre}} * (語義2) {{l|ca|empassar-se}} ===={{drv}}==== * {{l|ca|enviament}} * {{l|ca|enviat}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|enviar}} < {{etyl|LL.|gl}} {{m|la|inviāre}} < {{etyl|la|gl}} {{m|la|via}} ==={{pron}}=== * {{IPA|lang=gl|[em.ˈbjaɾ]|[em.ˈbi.aɾ]}} ==={{verb}}=== {{head|gl|verb}} #{{おくりがな2|送|おく|る|おくる}}。 #{{おくりがな3|飲|の|み|込|こ|む|のみこむ}}。 {{gl-conj-ar|envi}} ===={{syn}}==== * (語義1) {{l|gl|mandar}} * (語義2) {{l|gl|tragar|trocir}} ===={{rel}}==== * {{l|gl|envío}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|LL.|es}} {{m|la|inviāre}} < {{etyl|la|es}} {{m|la|via}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|送|おく|る|おくる}}。 ===={{conjug}}==== {{es-conj|<í>}} ===={{syn}}==== * {{l|es|mandar}} ===={{alter}}==== * {{l|es|enbiar}} (廃用) ===={{rel}}==== * {{l|es|envío}} * {{l|es|enviado}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|enviar}} < {{etyl|LL.|pt}} {{m|la|inviāre}} < {{etyl|la|pt}} {{m|la|via}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|en|vi|ar}} ==={{verb}}=== {{pt-verb}} #{{おくりがな2|送|おく|る|おくる}}。 {{pt-conj|envi|ar}} ===={{rel}}==== * {{l|pt|enviado}} * {{l|pt|envio}} p638trquos6y9dqme9mebscuk0gzmum desteñir 0 442874 2281281 1852527 2026-06-09T11:20:14Z Kuroco2k 84207 2281281 wikitext text/x-wiki {{DEFAULTSORT:destenir}} =={{L|es}}== ==={{etym}}=== {{affix|es|des-|teñir}} ==={{verb}}=== {{es-verb}} #{{おくりがな3|色|いろ||褪|あ|せる|いろあせる}}、[[変色]]させる。 ===={{conjug}}==== {{es-conj|<i>|nocomb=1}} pnwznwvb92on347cwdg7vds0ymqrs67 inducir 0 443395 2281332 1853653 2026-06-09T11:39:11Z Kuroco2k 84207 2281332 wikitext text/x-wiki =={{L|ast}}== ==={{etym}}=== {{bor|ast|la|indūcere}} ==={{pron}}=== {{ast-IPA}} ==={{verb}}=== {{ast-verb}} #{{おくりがな3|引|ひ|き|起|お|こす|ひきおこす}}、[[誘引]]する、[[誘導]]する。 ---- =={{L|gl}}== ==={{verb}}=== {{head|gl|verb}} #{{おくりがな3|引|ひ|き|起|お|こす|ひきおこす}}、[[誘引]]する、[[誘導]]する。 ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|indūcere}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #{{おくりがな3|引|ひ|き|起|お|こす|ひきおこす}}、[[誘引]]する、[[誘導]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|aborto inducido}} ===={{rel}}==== * {{l|es|inducido}} * {{l|es|inducción}} * {{l|es|inductor}} 51y0hj78b6g6ek3rymhp64pdxmghkot がもん 0 443769 2280873 1965014 2026-06-08T12:53:09Z うーむ 129171 /* */ 2280873 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かもん|カモン}} =={{ja}}== ==={{homonym}}=== {{head|ja|同音異義}} *【[[牙門]]】:本陣。 *【[[衙門]]】:役所。官衙。 gqaw7e8vwd0rgubtkk8q92gh7rh6563 2280881 2280873 2026-06-08T13:01:49Z M-30722 1202 2280881 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かもん|カモン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[牙門]]】本陣。 *【[[衙門]]】役所。官衙。 psb1923oskjuikncrkqc3zvyiikbe03 vindicar 0 445938 2281381 1857927 2026-06-09T11:55:50Z Kuroco2k 84207 2281381 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{bor|es|la|vindicāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} {{context|transitive|lang=es}} #[[復讐]]する。 #[[汚名]]を{{おくりがな2|晴|は|らす|はらす}}。 #(権利などを)[[主張]]する。 ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{rel}}==== * {{l|es|reivindicar}} 8cqid3hhf6zqzhygzf75i0on3yv42ow vengar 0 445995 2281384 1858052 2026-06-09T11:55:52Z Kuroco2k 84207 2281384 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} < {{etyl|la|es}} {{m|la|vindicāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[復讐]]する、{{おくりがな3|仕|し||返|かえ|し|しかえし}}する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|vengador}} * {{l|es|venganza}} * {{l|es|vengativo}} ---- =={{L|nn}}== ==={{alter}}=== * {{l|nn|venger}} ==={{noun}}=== {{head|nn|noun form|g=m}} #[[veng]]の非限定複数形。 6xtrp77vte43mvx2l8g98wgc76oibvn castigar 0 446265 2281266 1858638 2026-06-09T11:12:44Z Kuroco2k 84207 2281266 wikitext text/x-wiki =={{L|ast}}== ==={{etym}}=== {{bor|ast|la|castīgāre}} ==={{verb}}=== {{ast-verb-ar|castig}} #[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 {{ast-conj-ar|castig|castig|castigu}} ===={{rel}}==== * {{l|ast|castigu}} * {{l|ast|castu}} ---- =={{L|oc}}== ==={{etym}}=== {{etyl|pro|oc}} < {{etyl|la|oc}} {{m|la|castīgāre}} ==={{pron}}=== * {{音声|oc|LL-Q14185 (oci)-Davidgrosclaude-castigar.wav|音声(ベアルン)}} ==={{verb}}=== {{oc-verb|castig|ar}} #[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 {{oc-conj-ar|castig|castigu}} ===={{syn}}==== * {{l|oc|chastiar}}, {{l|oc|punir}} ===={{rel}}==== * {{l|oc|cast}} * {{l|oc|castic}} * {{l|oc|castigador}} ---- =={{L|ca}}== ==={{etym}}=== {{etyl|la|ca}} {{m|la|castīgāre}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|castig}} #[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 #[[校正]]する、[[訂正]]する。 {{ca-conj-ar|castig}} ===={{syn}}==== * {{l|ca|punir}} ===={{drv}}==== * {{l|ca|càstig}} ===={{rel}}==== * {{l|ca|cast}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|castigar}} < {{etyl|la|gl}} {{m|la|castīgāre}} ==={{pron}}=== * {{IPA|lang=gl|[kastiˈɣaɾ]}} ==={{verb}}=== {{gl-verb|castig|ar}} #{{context|transitive|lang=gl}}[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 {{gl-conj-ar|castig}} ===={{ant}}==== * {{l|gl|premiar}} ===={{drv}}==== * {{l|gl|castigo}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|osp|es}} {{m|osp|castigar}} < {{etyl|la|es}} {{m|la|castīgāre}} ==={{pron}}=== {{es-IPA}} ==={{verb}}=== {{es-verb}} #[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 #: {{syn|es|punir}} #(子供に外出禁止などの)[[罰]]を{{おくりがな2|与|あた|える|あたえる}}。 #: {{ant|es|descastigar}} ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|castigo}} * {{l|es|casto}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|castigar}} < {{etyl|la|pt}} {{m|la|castīgāre}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|cas|ti|gar}} ==={{verb}}=== {{pt-verb}} #[[罰する]]、{{おくりがな2|懲|こ|らしめる|こらしめる}}。 {{pt-conj|casti|gar}} ===={{syn}}==== * {{l|pt|punir}} ===={{drv}}==== * {{l|pt|castigo}} ===={{rel}}==== * {{l|pt|casto}} pt2rsgcyuz12rapjhg1gr6am6t2wjjr ぼろぼろ 0 455907 2281126 2048648 2026-06-09T05:09:14Z Nekowokezuru 125841 古い布について 2281126 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほろほろ|ぽろぽろ|ぼろ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|梵論梵論}} #{{context|仏教|lang=ja}}[[普化宗]]の[[僧侶]]。[[虚無僧]]。 ==={{adverb}}=== {{ja-adv}} #[[粒]]の細かい物が[[崩れる]]様。 #* [[クッキー]]がボロボロ落ちる #涙の[[雫]]が[[零れる]]様。 #* 私は泣いた。ボロボロ泣いた。 ==={{adjectivenoun}}=== #古い布がひどく[[破れる|破れ]]ている様。 #(副詞1.から)粒の細かい物が[[離れ]]やすい様。<br /> {{日本語ダ活用}} syxb4s40qhg2adk4sfdseuytkppl6bu 2281128 2281126 2026-06-09T05:17:32Z Kuroco2k 84207 [[Special:Contributions/Nekowokezuru|Nekowokezuru]] ([[User talk:Nekowokezuru|トーク]]) による版 [[Special:Diff/2281126|2281126]] を取り消し 2281128 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほろほろ|ぽろぽろ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|梵論梵論}} #{{context|仏教|lang=ja}}[[普化宗]]の[[僧侶]]。[[虚無僧]]。 ==={{adverb}}=== {{ja-adv}} #{{context|オノマトペ|lang=ja}}物がかなり[[使用]]して[[やぶれる|破れ]]たりして[[いたむ|傷ん]]でいるさま。 #{{context|オノマトペ|lang=ja}}[[粒状]]のものが[[こぼれおちる|こぼれ落ちる]]さま。 ==={{adjectivenoun}}=== {{日本語ダ活用}} ry141thyrmp55c3oagi5fk8edz0aidd excluir 0 458675 2281268 1880587 2026-06-09T11:13:54Z Kuroco2k 84207 2281268 wikitext text/x-wiki {{also|excluír}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|exclūdere}} ==={{pron}}=== {{es-IPA|e(c)scluhir}} ==={{verb}}=== {{es-verb}} #[[除外]]する、[[排除]]する。 ===={{conjug}}==== {{es-conj}} ===={{ant}}==== * {{l|es|incluir}} ===={{drv}}==== * {{l|es|autoexcluirse}} ===={{rel}}==== * {{l|es|exclusión}} * {{l|es|exclusivo}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|la|pt}} {{m|la|exclūdere}} ==={{pron}}=== * {{hyph|pt|ex|clu|ir}} ==={{verb}}=== {{pt-verb}} #[[除外]]する、[[排除]]する。 #: {{ant|pt|incluir}} #[[削除]]する。 #: {{syn|pt|eliminar}} {{pt-conj|excl|uir}} ===={{drv}}==== * {{l|pt|exclusão}} 6tgl87ayx03tmps6k0o56mqq93nq43h 省道 0 459034 2280863 1969670 2026-06-08T12:44:45Z M-30722 1202 2280863 wikitext text/x-wiki {{kana-DEFAULTSORT|しょうどう}} =={{L|ja}}== {{ja-kanjitab|しょう|どう|yomi=o}} ==={{noun}}=== {{ja-noun|[[しょうどう]]}} #{{タグ|ja|道路|中国}}[[中国]]の[[省]]が[[管理]]する[[道路]]。 =={{L|zh}}== ==={{pron}}=== {{cmn-pron|shěngdào}} ==={{noun}}=== {{zhchars}} {{zh-cat|sheng3dao4|名詞|道路|中国}} #(日本語に同じ){{l|zh|省道}}。 bd1ffzd179vlxkq9vtlcwai7rfr539e lamer 0 461513 2281202 1885846 2026-06-09T10:42:16Z Kuroco2k 84207 2281202 wikitext text/x-wiki =={{L|es}}== ==={{alter}}=== * {{l|es|lamber}} ==={{etym}}=== {{inh|es|la|lambō|lambere}} ==={{pron}}=== *{{es-IPA}} *{{rhymes|eɾ}} *{{hyph|es|la|mer}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}} [[なめる|舐める]]。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|granuloma por lamido}} * {{l|es|lameculos}} * {{l|es|lamedura}} * {{l|es|lamer el culo}} * {{l|es|lamero}} * {{l|es|lamerón}} * {{l|es|lametón}} ===={{rel}}==== * {{l|es|chupar}} =={{L|fr}}== ==={{etym}}=== {{suffix+|lame|er|lang=fr}} ==={{pron}}=== * {{fr-IPA|pos=v}} * {{audio|fr|LL-Q150 (fra)-Lyokoï-lamer.wav|音声}} * {{homophones|lamai|lamé|lamée|lamées|lamés|lamez}} ==={{verb}}=== {{fr-verb}} #{{context|transitive|lang=fr}} [[たいら|平ら]]にする。 ===={{conjugation}}==== {{fr-conj-auto}} ===={{anag}}==== * {{l|fr|Armel}} * {{l|fr|larme}} =={{L|inc-kho}}== ==={{noun}}=== {{head|inc-kho|noun|g=?}} # {{ふりがな|砂|すな}}。 =={{L|mfe}}== ==={{etym}}=== {{der|mfe|fr|mer}} ==={{noun}}=== {{head|mfe|noun}} # {{ふりがな|海|うみ}}。 3a1gw9rg5clmfo0wqhda6a4tr6smrmu 例句 0 462891 2280940 1971437 2026-06-08T14:00:44Z M-30722 1202 2280940 wikitext text/x-wiki {{kana-DEFAULTSORT|れいく}} =={{L|ja}}== {{ja-kanjitab|れい|く|yomi=o}} ==={{noun}}=== {{ja-noun|[[れいく]]}} #{{タグ|ja|詩}}[[歳時記]]などで[[季語]]の[[使用]]例として示される[[俳句]]。 0v34roe0ikbdjd2gi1jjd7ayueb4sp8 llegar 0 466436 2281229 1894315 2026-06-09T10:53:15Z Kuroco2k 84207 2281229 wikitext text/x-wiki ==スペイン語== [[Category:スペイン語]] ===発音=== {{IPA|ʎe'ɣaɾ}} ===語源=== {{etyl|la|es}} ''[[plicare]]'' ===動詞=== [[Category:スペイン語 動詞]] # [[着く]]。 #* ''[[yo|Yo]] '''llego'''.'' -私は着く ===={{conjug}}==== {{es-conj}} ====類義語==== *[[venir]] (類義語: 来る) *[[alcanzar]] (類義語: 届く) *[[arribar]] (南米) ====関連語==== {{top4}} *[[llegada]] {{bottom}} ---- scym9slzkjrzhjwlhg57tvskjvu2t2n ingerir 0 468684 2281230 1901855 2026-06-09T10:53:14Z Kuroco2k 84207 2281230 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|ingerere}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|ir|ingest}} #[[摂取]]する、[[摂食]]する。 {{ca-conj-ir|ingest}} ===={{rel}}==== * {{l|ca|ingestió}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|ingerere}} ==={{verb}}=== {{es-verb}} #{{context|transitive|lang=es}}[[摂取]]する、[[摂食]]する。 ===={{conjug}}==== {{es-conj|<ie-i>}} ===={{rel}}==== * {{l|es|ingesta}} * {{l|es|ingestión}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|ingerere}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|in|ge|rir}} ==={{verb}}=== {{pt-verb}} #[[摂取]]する、[[摂食]]する。 #{{context|reflexive|lang=pt}}[[干渉]]する、[[介入]]する。 {{pt-conj|ing|erir}} ===={{rel}}==== * {{l|pt|ingestão}} * {{l|pt|ingerência}} g19s8ag7gfoytj97k7q4nzvi12zd8tg 𰓙 0 471159 2280855 1908781 2026-06-08T12:42:12Z M-30722 1202 2280855 wikitext text/x-wiki ==漢字== {{kanji|手|6}} {{kanji variants|擪}} ===意義=== #「[[擪]]」の[[類推簡化字]](『{{w|漢語大字典}}』掲載)。 [[カテゴリ:類推簡化字|ye4]] =={{コード}}== {{文字コード}} cvdtozca46x64fv6khagn7a825qgxx0 毀る 0 476082 2281095 1939492 2026-06-09T02:03:38Z Nekowokezuru 125841 /* 和語の漢字表記 */ 2281095 wikitext text/x-wiki {{kana-DEFAULTSORT|そしる}} =={{L|ja}}== ==={{wago}}=== {{ja-wagokanji|そしる|やぶる}} #{{wagokanji of|そしる}} #{{wagokanji of|やぶる}} #[[こぼる]]の漢字表記。 j6zr5rdct8vjbs69ds025y47hey62vi 2281130 2281095 2026-06-09T05:24:14Z Kuroco2k 84207 2281130 wikitext text/x-wiki {{kana-DEFAULTSORT|そしる}} =={{L|ja}}== ==={{wago}}=== {{ja-wagokanji|そしる|やぶる|こぼる}} #{{wagokanji of|そしる}} #{{wagokanji of|やぶる}} #{{wagokanji of|こぼる}} g1x40ysno8qh42rudwruxtd4dzqwsv5 スケッチブック 0 476721 2280897 1976903 2026-06-08T13:12:06Z M-30722 1202 2280897 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{wikipedia}} =={{L|ja}}== ==={{etym}}=== {{bor|ja|en|sketchbook}} ==={{noun}}=== {{ja-noun}} #{{タグ|ja|美術}}[[スケッチ]]をする[[あつがみ|厚紙]]を[[複数]]枚綴じた[[帳面]]。 ===={{trans}}==== {{trans-see|画帳}} iyqgzo7408ovdw1e5jtajb123lm7n6n カテゴリ:ラーオ語 外来語 14 484852 2281359 1994345 2026-06-09T11:47:30Z M-30722 1202 sakujo 2281359 wikitext text/x-wiki {| class="sakujo" style="border:solid gray 1px; padding:0 0.5em; margin:1ex auto; font-size: small; width:80%" |- | [[ファイル:Icono aviso borrar.svg|50px|削除依頼に提出されています]] | このページは'''[[Wiktionary:削除の方針|削除の方針]]'''に従い'''[[Wiktionary:削除依頼|削除依頼]]'''に出されています。[[{{TALKSPACE}}:{{PAGENAME}}|このページのノート]]も参照してください。 この項目の削除可否についての議論が<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>で進行中です。 この項目は'''まだ削除されていません'''。削除に異議のある方は<span class="sakujo-request">[[Wiktionary:削除依頼/2023年8月/外来語関連のカテゴリ|該当する削除依頼]]</span>に是非ご参加ください。該当する削除依頼が終了するまで'''このメッセージを剥がさないでください。''' [[カテゴリ:削除依頼中のページ]] |} 1ufr6kk8tb38jr9xoi6icai2ff9oc1s provenir 0 488950 2281227 2169546 2026-06-09T10:53:14Z Kuroco2k 84207 2281227 wikitext text/x-wiki =={{L|ca}}== ==={{alter}}=== * {{l|ca|provindre}} ==={{etym}}=== {{bor|ca|la|prōvenīre}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|i(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|pres_1_sg=provinc|past_part=provingut}} #[[生じる]]、[[起源]]とする、[[由来]]する。 {{ca-conj-ir-tenir|proven|provin|prové<!-- -->|impr_2_sg=provén<!-- -->}} ===={{rel}}==== * {{l|ca|provinença}} * {{l|ca|provinent}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|prōvenīre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #[[生じる]]、[[起源]]とする、[[由来]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|originar}} ===={{rel}}==== * {{l|es|proveniencia}} * {{l|es|proveniente}} * {{l|es|venir}} =={{L|fr}}== ==={{etym}}=== {{etyl|la|fr}} {{m|la|prōvenīre}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-provenir.ogg}} ==={{verb}}=== {{fr-verb}} #[[生じる]]、[[起源]]とする、[[由来]]する。 ===={{conjugation}}==== {{fr-conj-venir|pro|être}} ===={{rel}}==== * {{l|fr|provenance}} r31gmh3kbqe5sm6dyxn6siesz5d46bp 利用者:Kuroco2k 2 489345 2280896 2278599 2026-06-08T13:11:23Z Kuroco2k 84207 /* テスト */ 2280896 wikitext text/x-wiki '''Kuroco2k'''(雛宮黒狐ともいう)といいます。基本中立。議論が下手だから。 ==最近思うこと== #新規項目よりも既存項目の充実が大事であり、それが一段落するまで濫造に走ってはいけない。 ==配下ページ== *[[/二簡字]](未完) *[[/朝鮮語基本語彙表]](今作ってある分の赤リンクを作り終えたら続編も作る) ==Todo== #(進行中)漢検範囲内の訓立項 #(進行中)漢字項目のメンテナンス、異体字整理 #(進行中)漢字項目の立項 #(進行中)西夏文字項目の立項 ==独り言== #閩東語、閩北語にある「ṳ」などの文字たち。 #*ソート順に迷います。暫定的にはṳにy、e̤にoeを割り振ってます。将来的に提案できたらと思いますが、まだ実用的な段階に踏めてません。例えば、「[[用]]」の閩東語のソートはこれなら「oeyng6」になります。 #[[Template:kanji variants]]を使用してみたけど、ちょっとこの辺に困るなというところ: #*Unicode順に整列されてしまうので、意図した並びが崩れてしまう #*同じ文字を複数入れると反映されない(語義の違いとかで入れることがあるので...) #シソーラスの名前空間 #*多分現状だと記事にカウントされているので、別の名前空間として扱いたい。 ==リンク集(メモ)== *[https://hongkongvision.com/tool/cc_py_conv_zh 漢字→廣東話/粵語拼音轉換工具] **広東語のイェール式に変換してくれる。'''zi.toolsは粤拼'''。 *[https://www.wugniu.com/ 吳語學堂] **いわゆる呉拼というやつ。上海語は下記のでいいですが、方言とかを記述するときにない時が多いので使っている。英語版の標準表記。 *[https://wu-chinese.com/minidict/ 吴音小字典] **日本語版で、呉語の標準表記に使用される(主に上海語で)。 *[https://www.ydict.net/ 榕典] **閩東語方言に使っている。 *[[特別:特別ページ一覧]] **メモ用 *[[利用者:Naggy Nagumo/他言語版にあって日本語版にない項目]] **タスクリスト ==テスト== {{pl-noun|m-in|g2=m-anml|dim=pomidorek|adj=pomidorowy}} ==リスト一覧== {{rel-top|中国語}} {| class="wikitable" style="text-align: center" |- ! 声調番号 !! 声調名 !! 白話字(aを例として) !! 声調値(台北) !! 声調値(台南) |- | 1 || 陰平 || a || 55 || 44 |- | 2 (6) || 陰上 || á || 51 || 53 |- | 3 || 陰去 || à || 31 || 11 |- | 4 || 陰入 || ap/at/ak/ah || 32 || 21 |- | 5 || 陽平 || â || 14 || 25 |- | 7 || 陽去 || ā || 33 || 22 |- | 8 || 陽入 || a̍p/a̍t/a̍k/a̍h || 4 || 5 |} {|class=wikitable border=1 style="text-align: left;" ! 声調名 ! 白話字(aを例として) ! 声調値(苗栗腔) ! 声調値(新竹腔) |- |陰平 |â |24 |53 |- |陽平 |à |11 |55 |- |上声 |á |31 |24 |- |陰去 |a |rowspan="2"|55 |11 |- |陽去 |å |33 |- |陰入 |ap/at/ak |2 |5 |- |陽入 |a̍p/a̍t/a̍k |5 |2 |- |} ([[:w:白話字]]より、要所だけ) {| class="wikitable" style="text-align:center;" | bgcolor="#ABCDEF" |'''名称''' | bgcolor="#ABCDEF" |'''声調番号''' | bgcolor="#ABCDEF" |'''符号''' | bgcolor="#ABCDEF" |'''例''' |- | 上平 | 55 | ◌̆ | 君 '''Gŭng''' |- | 上聲 | 33 | ◌̄ | 滾 '''Gūng''' |- | 上去 | 213 | ◌́ | 貢 '''Góng''' |- | 上入 | <u>24</u> | ◌́ | 谷 '''Gók''' |- | 下平 | 53 | ◌̀ | 群 '''Gùng''' |- | 下去 | 242 | ◌̂ | 郡 '''Gông''' |- | 下入 | 5 | ◌̆ | 掘 '''Gŭk''' |} ([[:w:en:Bàng-uâ-cê]]より、要所だけ) {| class="wikitable" |+ KCRにおける声調符号 |- !番号 |1 |2 |3 |4 |5 |6 |7 |- !声調タイプ |陰平 |陽平 |上聲 |陰去 |陽去 |陰入 |陽入 |- !KCRにおける符号 | <span style="font-size:190%;">ˊ</span> ({{lang|mnp|á}}) | <span style="font-size:190%;">ˆ</span> ({{lang|mnp|â}}) | <span style="font-size:190%;">ˇ</span> ({{lang|mnp|ǎ}}) | <span style="font-size:190%;"> ̿</span> ({{lang|mnp|a̿}}) | <span style="font-size:190%;">ˉ</span> ({{lang|mnp|ā}}) | <span style="font-size:190%;">˘</span> ({{lang|mnp|ă}}) | <span style="font-size:190%;">ˋ</span> ({{lang|mnp|à}}) |- |} ([[:w:en:Kienning Colloquial Romanized]]より、要所だけ) {{rel-bottom}} :{| class="wikitable" style="width:80%; text-align:center" |- !呉拼!!声調番号 (Wikt)!!声調名!!調値!!方言大詞典調値 |- !1!!1!!陰平 |{{IPAfont|˥˧}} 53|| 陰平 ({{IPAfont|˥˧}} 53) |- !5!!2!!陰去 |{{IPAfont|˧˦}} 34|| 陰去 ({{IPAfont|˧˥}} 35)<br>陰上 ({{IPAfont|˥}} 55) |- !6!!3!!陽去 |{{IPAfont|˨˧}} 23|| 陽舒 ({{IPAfont|˩˧}} 13) |- !7!!4!!陰入 |{{IPAfont|˥ʔ}} <u>55</u>||陰入 ({{IPAfont|˥ʔ}} <u>55</u>) |- !8!!5!!陽入 |{{IPAfont|˩˨ʔ}} <u>12</u>|| 陽入 ({{IPAfont|˩˧ʔ}} <u>13</u>) |} {|class="wikitable" style="text-align:center;" |- |声調||陰平||陽平||上聲||陰去||陽去||陰入||陽入||長入 |- |声調番号||1||2||3||4||5||6||7||8 |- |調値||˨˦ (24)||˨˩ (21)||˨˩˩ (211)||˧˥ (35)||˧ (33)||˥ (5)||˧ (3)||˥ (55) |- |方言大詞典調値||24||21||213||35||33||5||3||55 |} なお、ここでいう長入とは、入声であるが、白読によって、第6声とみなされないものをいう。 trwrvg8ypkqq9630d6cgl6jx5mqgni4 画匠 0 495808 2280902 2022518 2026-06-08T13:21:16Z M-30722 1202 2280902 wikitext text/x-wiki {{kana-DEFAULTSORT|がしょう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[がしょう]]}} #{{タグ|ja|芸術家}}[[画家]]。[[絵描き]]。 4emzye1h9ysw8fe4ec587wh11kf73ih fluctuar 0 498193 2281226 2028248 2026-06-09T10:53:14Z Kuroco2k 84207 2281226 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|fluctuāre}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|fluctu}} #[[変動]]する、[[増減]]する、[[上下]]する。 #{{おくりがな3|揺|ゆ|れ|動|うご|く|ゆれうごく}}、[[動揺]]する。 {{ca-conj-ar|fluctu}} ===={{rel}}==== * {{l|ca|fluctuació}} * {{l|ca|fluctuant}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|fluctuāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #[[変動]]する、[[増減]]する、[[上下]]する。 #{{おくりがな3|揺|ゆ|れ|動|うご|く|ゆれうごく}}、[[動揺]]する。 ===={{conjug}}==== {{es-conj|<ú>|nocomb=1}} ===={{rel}}==== * {{l|es|fluctuación}} * {{l|es|fluctuante}} ---- =={{L|pt}}== ==={{verb}}=== {{pt-verb}} #[[flutuar]]の旧綴り。 {{pt-conj|fluctu|ar}} 6q66j3gef9a7gtq2zh6e4e63y0mz733 かっとう 0 503183 2281125 2271634 2026-06-09T05:06:30Z うーむ 129171 /* */ 2281125 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かつどう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[葛藤]]】争い。 *【[[割当]]】分け前。 *【[[甲藤]]】日本人の姓の一つ。 8osafkkbz28ltuw0e3przjo12nb09zg sustituir 0 511649 2281223 2063137 2026-06-09T10:53:13Z Kuroco2k 84207 2281223 wikitext text/x-wiki =={{L|es}}== ==={{alter}}=== * {{l|es|substituir}} ==={{etym}}=== {{etyl|la|es}} {{m|la|substituere}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{おくりがな3|取|と|り|替|か|える|とりかえる}}、[[交換]]する。 #{{おくりがな3|取|と|って|代|か|わる|とってかわる}}、[[代用]]する。 ===={{conjug}}==== {{es-conj}} ===={{syn}}==== * {{l|es|reemplazar}} ===={{drv}}==== * {{l|es|sustituible}} * {{l|es|sustitutorio}} ===={{rel}}==== * {{l|es|sustitución}} * {{l|es|sustitutivo}} * {{l|es|sustituto}} 1slqead8vuirmtu4de04775auco5mwn sonar 0 513986 2281228 2068749 2026-06-09T10:53:13Z Kuroco2k 84207 2281228 wikitext text/x-wiki {{also|Sonar|SONAR|sónar|soñar}} =={{L|is}}== ==={{noun}}=== {{head|is|noun form}} #{{l|is|sonur}}の非限定単数属格。 ---- =={{L|io}}== ==={{etym}}=== {{etyl|eo|io}} {{m|eo|soni}}, {{etyl|fr|io}} {{m|fr|sonner}}, {{etyl|it|io}} {{m|it|suonare}}, {{etyl|es|io}} {{m|es|sonar}} < {{etyl|la|io}} {{m|la|sonāre}} ==={{pron}}=== {{io-IPA}} ==={{verb}}=== {{io-verb|son}} #{{おくりがな2|鳴|な|る|なる}}。 ---- =={{L|ia}}== ==={{verb}}=== {{ia-verb|ar}} #{{おくりがな2|鳴|な|る|なる}}。 {{ia-conj|son|ar}} ---- =={{L|vec}}== ==={{etym}}=== {{etyl|la|vec}} {{m|la|sonāre}} ==={{verb}}=== {{head|vec|verb}} #{{context|他動詞|lang=vec}}{{おくりがな2|鳴|な|らす|ならす}}。 #{{context|他動詞|音楽|lang=vec}}[[演奏]]する。 {{vec-conj-auto}} ---- =={{L|en}}== ==={{etym}}=== {{m|en|SONAR}}, '''[[sound|'''so'''und]] [[navigation|'''na'''vigation]] and [[ranging|'''r'''anging]]''' の[[頭字語]]。 ==={{pron}}=== * {{IPA|lang=en|ˈsoʊ.nɑːɹ}} * {{音声|en|en-us-sonar.ogg|a=US}} ==={{noun}}=== {{en-noun|~}} #{{context|海事|lang=en}}[[反響定位]]、[[エコーロケーション]]。 #{{context|海事|lang=en}}[[ソナー]]。 ===={{syn}}==== * {{l|en|SONAR}} ===={{drv}}==== * {{l|en|Doppler sonar}} * {{l|en|active sonar}} ===={{desc}}==== {{top}} * {{desc|it|sonar|bor=1}} * {{desc|nl|sonar|bor=1}} * {{desc|ca|sonar|bor=1}} * {{desc|sh|sonar|bor=1}} * {{desc|es|sonar|bor=1}} * {{desc|th|โซนาร์|bor=1|tr=soo-nâa}} * {{desc|de|Sonar|bor=1}} * {{desc|fr|sonar|bor=1}} ** {{desc|tr|sonar|bor=1}} ** {{desc|ro|sonar|bor=1}} * {{desc|pl|sonar|bor=1}} * {{desc|pt|sonar|bor=1}} {{bottom}} ===={{seealso}}==== * {{l|en|radar}} * {{l|en|lidar}} * {{l|en|sodar}} ==={{anag}}=== * {{anagrams|en|a=anors|Arons|saron|orans|sorna|Sanor|Rasŏn|roans|arson|Naros|Rason}} ---- =={{L|oc}}== ==={{pron}}=== * {{音声|oc|LL-Q14185 (oci)-Davidgrosclaude-sonar.wav|a=Béarn}} ==={{verb}}=== {{oc-verb|son|ar}} #{{おくりがな2|呼|よ|ぶ|よぶ}}。 {{oc-conj-ar|son}} ===={{syn}}==== * {{l|oc|cridar}} * {{l|oc|apelar}} ---- =={{L|nl}}== ==={{etym}}=== {{bor|nl|en|sonar}} ==={{pron}}=== * {{IPA|lang=nl|ˈsoː.nɑr}} * {{音声|nl|Nl-sonar.ogg}} * {{hyphenation|lang=nl|so|nar}} * {{rhymes|lang=nl|oːnɑr}} ==={{noun}}=== {{nl-noun|g=m|sonars|-}} #{{context|海事|lang=nl}}[[ソナー]]。 ===={{drv}}==== * {{l|nl|grondsonar}} * {{l|nl|sonarapparaat}} * {{l|nl|sonarapparatuur}} * {{l|nl|sonarhut}} * {{l|nl|sonarsignaal}} * {{l|nl|sonarsysteem}} * {{l|nl|sonarvis}} ---- =={{L|ca}}== ==={{pron}}=== * {{音声|es|LL-Q7026 (cat)-Marvives-sonar.wav|a=Barcelone}} ==={{etym}}1=== {{etyl|roa-oca|ca}} {{m|roa-oca|sonar}} < {{etyl|la|ca}} {{m|la|sonāre}} ===={{verb}}==== {{ca-verb|ar|son}} #{{context|自動詞|lang=ca}}{{ふりがな|音|おと}}を出す、{{おくりがな2|鳴|な|る|なる}}。 #{{context|figuratively|自動詞|lang=ca}}{{おくりがな3|心|こころ||当|あ|たり|こころあたり}}がある。 {{ca-conj-ar|son}} ====={{rel}}===== * {{l|ca|resonar}} * {{l|ca|so}} ==={{etym}}2=== {{bor|ca|en|sonar}} ===={{noun}}==== {{ca-noun|m|-}} #{{context|海事|lang=ca}}[[ソナー]]。 ---- =={{L|non}}== ==={{noun}}=== {{head|non|noun form}} #{{l|non|sonr}}の単数属格。 ---- =={{L|sv}}== ==={{noun}}=== {{sv-noun|c}} #{{context|海事|lang=sv}}[[反響定位]]、[[エコーロケーション]]。 #{{context|海事|lang=sv}}[[ソナー]]。 {{sv-noun-unc-irreg-c|2=sonarn}} ==={{verb}}=== {{head|sv|verb form}} #{{l|sv|sona}}の現在形。 ==={{anag}}=== * {{anagrams|sv|a=anors|Arons|nosar|sorna}} ---- =={{L|es}}== ==={{pron}}=== {{es-pr}} * {{音声|es|LL-Q1321 (spa)-Marreromarco-sonar.wav|a=Venezuela}} ==={{etym}}1=== {{etyl|osp|es}} {{m|osp|sonar}} < {{etyl|la|es}} {{m|la|sonāre}} < {{etyl|ine-pro|es}} {{m|ine-pro|*swenh₂-}} ===={{verb}}==== {{es-verb}} #{{context|自動詞|lang=es}}{{ふりがな|音|おと}}を出す、{{おくりがな2|鳴|な|る|なる}}。 #{{context|自動詞|lang=es}}〜に{{おくりがな2|思|おも|わ|おもう}}れる。 #{{context|figuratively|自動詞|lang=es}}{{おくりがな3|心|こころ||当|あ|たり|こころあたり}}がある。 #{{context|他動詞|lang=es}}{{おくりがな2|鳴|な|らす|ならす}}。 #: {{syn|es|tocar}} #{{context|他動詞|音楽|lang=es}}[[演奏]]する。 #{{context|他動詞|再帰動詞|lang=es}}{{ふりがな|鼻|はな}}をかむ。 ====={{conjug}}===== {{es-conj|<ue>}} ====={{drv}}===== * {{l|es|como suena}} * {{l|es|hacer sonar}} * {{l|es|sonadero}} * {{l|es|sonador}} * {{l|es|sonante}} * {{l|es|sonar la flauta}} ====={{rel}}===== * {{l|es|resonar}} * {{l|es|son}} * {{l|es|sonaja}} * {{l|es|sonido}} * {{l|es|sonoro}} ==={{etym}}2=== {{bor|es|en|sonar}} ===={{noun}}==== {{es-noun|m|es}} #{{context|海事|lang=es}}[[ソナー]]。 ====={{alter}}===== * {{l|es|sónar}} ---- =={{L|sh}}== ==={{etym}}=== {{bor|sh|en|sonar}} ==={{pron}}=== * {{IPA|lang=sh|sǒnaːr}} * {{hyphenation|so|nar}} ==={{noun}}=== {{sh-noun+|g=m|head=sònār}} #{{context|海事|lang=sh}}[[ソナー]]。 {{sh-decl-noun|sònār|sonari|sonára|sonara|sonaru|sonarima|sonar|sonare|sonare|sonari|sonaru|sonarima|sonarom|sonarima}} ---- =={{L|fr}}== ==={{etym}}=== {{bor|fr|en|sonar}} ==={{pron}}=== * {{音声|fr|LL-Q150 (fra)-Lyokoï-sonar.wav}} ==={{noun}}=== {{fr-noun|m}} #{{context|海事|lang=fr}}[[ソナー]]。 ===={{desc}}==== * {{desc|tr|sonar|bor=1}} * {{desc|ro|sonar|bor=1}} ---- =={{L|pl}}== ==={{etym}}=== {{bor|pl|en|sonar}} ==={{pron}}=== {{pl-pr}} ==={{noun}}=== {{pl-noun|m-in}} #{{context|海事|lang=pl}}[[ソナー]]。 {{pl-decl-noun-m-in}} ===={{syn}}==== * {{l|pl|asdic}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|en|sonar}} ==={{pron}}=== {{pt-IPA|sònarh}} * {{hyph|pt|so|nar}} ==={{noun}}=== {{pt-noun|m|es}} #{{context|海事|lang=pt}}[[ソナー]]。 ---- =={{L|ro}}== ==={{etym}}=== {{bor|ro|fr|sonar}} ==={{noun}}=== {{ro-noun|n|sonare}} #{{context|海事|lang=ro}}[[ソナー]]。 {{ro-noun-n}} j7349h3cjji3iffuxaxvw8a2vwgh9ro soñar 0 513987 2281224 2068755 2026-06-09T10:53:13Z Kuroco2k 84207 2281224 wikitext text/x-wiki {{DEFAULTSORT:sonar soñar}} {{also|sonar|Sonar|SONAR|sónar|sonhar}} =={{L|ast}}== ==={{pron}}=== {{ast-IPA}} * {{rhymes|lang=ast|aɾ|s=2}} * {{hyph|ast|so|ñar}} ==={{verb}}=== {{ast-verb-ar|soñ|sueñ}} #{{l|ast|suañar}}の異形。 {{ast-conj-ar|soñ|sueñ}} ---- =={{L|gl}}== ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|sonhar}} < {{etyl|la|gl}} {{m|la|somniāre}} ==={{pron}}=== * {{hyph|gl|so|ñar}} ==={{verb}}=== {{gl-verb|soñ|ar}} #{{ふりがな|夢|ゆめ}}を見る。 {{gl-conj-ar|soñ}} ===={{rel}}==== * {{l|gl|sono}} * {{l|gl|soño}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|somniāre}} ==={{pron}}=== {{es-pr}} * {{音声|es|LL-Q1321 (spa)-AdrianAbdulBaha-soñar.wav|a=Colombia}} ==={{verb}}=== {{es-verb}} #{{context|自動詞|or||他動詞|lang=es}}{{ふりがな|夢|ゆめ}}を見る。 #{{context|自動詞|or||他動詞|lang=es}}〜であると{{おくりがな3|決|き|め|付|つ|ける|きめつける}}。 ===={{conjug}}==== {{es-conj|<ue>}} ===={{drv}}==== * {{l|es|soñar despierto}} * {{l|es|sueña con los angelitos}} ===={{rel}}==== * {{l|es|sueño|g=m}} * {{l|es|soñador}} l00tmxigjvsgsi4fhw4f2z6wttnzsa2 カテゴリ:原生生物 14 516115 2280925 2073129 2026-06-08T13:46:19Z 鍼灸 112313 2280925 wikitext text/x-wiki {{kana-DEFAULTSORT|げんせいせいぶつ}} <div class="pathnavbox"> {{Pathnav|分野|自然|生物}} </div> {{wikipedia|Category:原生生物}} [[カテゴリ:生物|*けんせいせふつ]] e75caouopzofm8qm45uv22pezirr8qx encontrar 0 520379 2281222 2083000 2026-06-09T10:53:13Z Kuroco2k 84207 2281222 wikitext text/x-wiki =={{L|ast}}== ==={{verb}}=== {{ast-verb-ar|encontr|encuentr}} #[[alcontrar]]の異形。 {{ast-conj-ar|encontr|encuentr}} ---- =={{L|gl}}== ==={{alter}}=== * {{l|gl|alcontrar}} ==={{etym}}=== {{etyl|roa-opt|gl}} {{m|roa-opt|encontrar}} (13世紀) < {{etyl|LL.|gl}} {{m|la|*incontrāre}} < {{etyl|la|gl}} {{m|la|-}} {{m|la|in}} + {{m|la|contrā}} ==={{verb}}=== {{gl-verb|encontr|ar}} #{{おくりがな2|会|あ|う|あう}}、[[遭遇]]する。 #: {{syn|gl|atopar}} #{{おくりがな3|見|み||付|つ|ける|みつける}}、[[発見]]する。 #: {{syn|gl|atopar}} {{gl-conj-ar|encontr}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|[[in]] [[contra]]}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb|<ue>}} #{{context|他動詞|lang=es}}{{おくりがな2|会|あ|う|あう}}、[[遭遇]]する。 #{{context|他動詞|lang=es}}{{おくりがな3|見|み||付|つ|ける|みつける}}、[[発見]]する。 #: {{syn|es|hallar|trovar}} #{{context|自動詞|or|再帰動詞|lang=es}}[[ばったり]]{{おくりがな3|出|で||会|あ|う|であう}}。 #{{context|他動詞|lang=es}}{{おくりがな2|思|おも|う|おもう}}、[[感じる]]。 #{{context|再帰動詞|lang=es}}〜に[[ある]]、[[存在]]する。 #{{context|再帰動詞|lang=es}}〜の[[状態]]である。 ===={{conjug}}==== {{es-conj|<ue>}} {{es-conj|encontrarse<ue>}} ===={{drv}}==== * {{l|es|arrieros somos, y en el camino nos encontraremos}} * {{l|es|encontrar la horma de su zapato}} * {{l|es|perro que no camina, no encuentra hueso}} ===={{rel}}==== * {{l|es|encontrarse}} * {{l|es|encuentro}} ==={{anag}}=== * {{anagrams|es|entroncar}} ---- =={{L|pt}}== ==={{etym}}=== {{etyl|roa-opt|pt}} {{m|roa-opt|encontrar}} < {{etyl|VL.|pt}} {{m|la|*incontrāre}} < {{etyl|la|pt}} {{m|la|in}} + {{m|la|contrā}} ==={{pron}}=== {{pt-IPA}} ==={{verb}}=== {{pt-verb}} #{{context|pronominal|他動詞|comを伴って|lang=pt}}{{おくりがな2|会|あ|う|あう}}、[[遭遇]]する。 #: {{ant|pt|desencontrar}} #{{context|他動詞|lang=pt}}{{おくりがな3|見|み||付|つ|ける|みつける}}、[[発見]]する。 #: {{syn|pt|achar|localizar}} #: {{ant|pt|perder}} #{{context|pronominal|formal|lang=pt}}〜に[[ある]]、[[存在]]する。 {{pt-conj|encontr|ar}} ===={{rel}}==== * {{l|pt|encontro}} * {{l|pt|desencontrar}} * {{l|pt|reencontrar}} okur9jwpk6gywbi2ur4bekeiuhjh90k カテゴリ:ラトヴィア語 動物 14 526457 2281160 2094801 2026-06-09T06:43:59Z 鍼灸 112313 2281160 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_科学|disp4=科学|{{lv}}_自然科学|disp5=自然科学|{{lv}}_生物学|disp6=生物学|{{lv}}_動物学|disp7=動物学|last=動物}} * {{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|動物|last={{lv}}}} </div> {{catmore}} [[カテゴリ:{{lv}}_動物学|*とうふつ]] [[カテゴリ:{{lv}}_生物|*とうふつ]] [[カテゴリ:動物|らとういあこ]] lknplbknsumhpwvuui6ecl3ifu0n8vn habituar 0 530338 2281225 2103198 2026-06-09T10:53:14Z Kuroco2k 84207 2281225 wikitext text/x-wiki =={{L|ia}}== ==={{verb}}=== {{ia-verb|ar}} #{{おくりがな2|慣|な|らす|ならす}}、[[習慣]]づける。 {{ia-conj|habitu|ar}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|LL.|habituāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{context|他動詞|pronominal|lang=es}}{{おくりがな2|慣|な|らす|ならす}}、[[習慣]]づける。 #: {{syn|es|acostumbrar}} ===={{conjug}}==== {{es-conj|<ú>}} ===={{drv}}==== * {{l|es|habituación}} ===={{rel}}==== * {{l|es|habitual}} * {{l|es|hábito}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|LL.|habituāre}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|ha|bi|tu|ar}} ==={{verb}}=== {{pt-verb}} #{{おくりがな2|慣|な|れる|なれる}}。 #: {{syn|pt|[[acostumar]]-se}} {{pt-conj|habitu|ar}} qz0bexwforxd0loeynagix3uqw5vjmv duplicar 0 531341 2281216 2104875 2026-06-09T10:47:16Z Kuroco2k 84207 2281216 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|duplicāre}} ==={{pron}}=== * {{ca-IPA}} * {{rhymes|a(ɾ)|s=3}} ==={{verb}}=== {{ca-verb|ar|duplic}} #{{context|他動詞|再帰動詞|lang=ca}}[[二重]]にする、二[[倍]]にする。 {{ca-conj-ar|duplic}} ===={{rel}}==== * {{l|ca|duplicat}} ---- =={{L|es}}== ==={{etym}}=== {{bor|es|la|duplicāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{context|他動詞|再帰動詞|lang=es}}[[二重]]にする、二[[倍]]にする。 #{{context|他動詞|lang=es}}[[複写]]する、[[複製]]する。 #: {{syn|es|copiar}} #{{context|他動詞|法律|原告に|lang=es}}[[抗弁]]する。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|duplicación}} * {{l|es|duplicado}} * {{l|es|reduplicar}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|duplicāre}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|du|pli|car}} ==={{verb}}=== {{pt-verb}} #{{context|他動詞|lang=pt}}[[二重]]にする、二[[倍]]にする。 #{{context|他動詞|lang=pt}}[[複写]]する、[[複製]]する。 {{pt-conj|dupli|car}} ===={{rel}}==== * {{l|pt|duplo}} osp5p62o9gzsrjnt2pdriebek7mo696 たんこ 0 532908 2281116 2168838 2026-06-09T03:15:21Z 鍼灸 112313 2281116 wikitext text/x-wiki {{also|たんご|だんこ|だんご|タンゴ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[炭庫]]】:[[石炭]]を[[貯蔵]]する[[倉庫]]。 *【[[淡湖]]】:[[淡水湖]]。 *【[[短袴]]】:丈が短い袴。 *【[[短古]]】:短い[[古詩]]。 *【[[蜑戸]]】:[[海人]]の家。 *【[[単孤]]・[[単己]]】:[[よるべ]]のないこと。[[孤独]]。 *【[[淡古]]】:[[古風]]で[[淡白]]な[[作風]]。 *【[[澹乎]]】:静かで安からなさま。 *【[[貪賈]]】:[[貪欲]]な[[商人]]。 *【[[短弧]]・[[短狐]]】:[[水中]]の[[怪物]]。 *【[[簞壺]]】[[食料]]を携える。 hwyai8vg4joz74d5uc5syx7nj4uqze0 instigar 0 534079 2281214 2111073 2026-06-09T10:47:15Z Kuroco2k 84207 2281214 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|īnstīgāre}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|ar|instig}} #{{context|他動詞|lang=ca}}[[扇動]]する、{{おくりがな2|唆|そそのか|す|そそのかす}}。 {{ca-conj-ar|instig}} ===={{drv}}==== * {{l|ca|instigador}} ===={{rel}}==== * {{l|ca|instigació}} ---- =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|īnstīgāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{context|他動詞|lang=es}}[[扇動]]する、{{おくりがな2|唆|そそのか|す|そそのかす}}。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|instigación}} * {{l|es|instigador}} ---- =={{L|pt}}== ==={{etym}}=== {{bor|pt|la|īnstīgāre}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|ins|ti|gar}} ==={{verb}}=== {{pt-verb}} #{{context|他動詞|lang=pt}}[[刺激]]する。 #{{context|他動詞|lang=pt}}[[扇動]]する、{{おくりがな2|唆|そそのか|す|そそのかす}}。 #{{context|他動詞|lang=pt}}{{おくりがな2|勧|すす|める|すすめる}}、[[提案]]する、[[説得]]する。 {{pt-conj|insti|gar}} ===={{rel}}==== * {{l|pt|instigação}} f6xyfxjkf7xhtz5zzh28l5uq67v5spk palatalizar 0 550943 2281215 2147428 2026-06-09T10:47:16Z Kuroco2k 84207 2281215 wikitext text/x-wiki =={{L|gl}}== ==={{etym}}=== {{affix|gl|palatal|-izar}} ==={{verb}}=== {{head|gl|verb}} #{{タグ|gl|音声学}}[[口蓋音]]化する。 {{gl-conj-ar|palataliz}} ===={{drv}}==== * {{l|gl|despalatalizar}} * {{l|gl|palatalización}} =={{L|es}}== ==={{etym}}=== {{affix|es|palatal|-izar}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|音声学}}[[口蓋音]]化する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|despalatalizar}} * {{l|es|palatalización}} =={{L|pt}}== ==={{etym}}=== {{affix|pt|palatal|-izar}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|pa|la|ta|li|zar}} ==={{verb}}=== {{pt-verb}} #{{タグ|pt|音声学}}[[口蓋音]]化する。 {{pt-conj|palataliz|ar}} ===={{drv}}==== * {{l|pt|despalatalizar}} * {{l|pt|palatalização}} ndutvdlfa7ihjq8pgcwgv5iw37emozx multiplicar 0 553863 2281210 2152831 2026-06-09T10:47:15Z Kuroco2k 84207 2281210 wikitext text/x-wiki =={{L|ca}}== ==={{etym}}=== {{bor|ca|la|multiplicāre}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Marvives-multiplicar.wav|a=Barcelona}} ==={{verb}}=== {{ca-verb|ar|multiplic}} #{{おくりがな2|増|ふ|やす|ふやす}}、{{おくりがな2|重|かさ|ねる|かさねる}}。 #{{タグ|ca|数学}}{{おくりがな2|掛|か|ける|かける}}、[[乗算]]する。 {{ca-conj-ar|multiplic}} ===={{rel}}==== * {{l|ca|multiplicació}} =={{L|pro}}== ==={{etym}}=== {{bor|pro|la|multiplicāre}} ==={{verb}}=== {{head|pro|verb}} #{{タグ|pro|自動詞}}{{おくりがな2|増|ふ|える|ふえる}}、[[増加]]する。 =={{L|es}}== ==={{etym}}=== {{bor|es|la|multiplicāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{おくりがな2|増|ふ|やす|ふやす}}、{{おくりがな2|重|かさ|ねる|かさねる}}。 #{{タグ|es|数学}}{{おくりがな2|掛|か|ける|かける}}、[[乗算]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|tabla de multiplicar}} ===={{rel}}==== * {{l|es|multiplicación}} * {{l|es|multiplicador}} * {{l|es|múltiple}} =={{L|pt}}== ==={{etym}}=== {{lbor|pt|la|multiplicāre}} ==={{pron}}=== {{pt-IPA}} * {{hyphenation|mul|ti|pli|car}} ==={{verb}}=== {{pt-verb}} #{{おくりがな2|増|ふ|やす|ふやす}}、{{おくりがな2|重|かさ|ねる|かさねる}}。 #{{タグ|pt|数学}}{{おくりがな2|掛|か|ける|かける}}、[[乗算]]する。 {{pt-conj|multipli|car}} ===={{drv}}==== * {{l|pt|multiplicação}} * {{l|pt|multiplicativo}} fbqly54shqyjwcyqc6rx2k4991rzy8s conceptualizar 0 555331 2281213 2155812 2026-06-09T10:47:15Z Kuroco2k 84207 2281213 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{affix|es|conceptual|-izar}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞}}[[概念化]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|conceptualización}} ===={{rel}}==== * {{l|es|concepto}} q5z0ja0nr6b64nkl2svpx44b5usbque advenir 0 556917 2281211 2169503 2026-06-09T10:47:14Z Kuroco2k 84207 2281211 wikitext text/x-wiki =={{L|ca}}== ==={{alter}}=== * {{alter+|ca|advindre}} ==={{etym}}=== {{bor|ca|la|advenīre}} ==={{pron}}=== * {{ca-IPA}} ==={{verb}}=== {{ca-verb|pres_1_sg=advinc|past_part=advingut}} #{{タグ|ca|自動詞}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 {{ca-conj-ir-tenir|adven|advin|adve|<!-- -->|pres_ind_3_sg=advé<!-- -->|impr_2_sg=advén<!-- -->}} ===={{rel}}==== * {{l|ca|avenir}} =={{L|es}}== ==={{etym}}=== {{bor|es|la|advenīre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|自動詞}}[[到着]]する、[[到来]]する。 #: {{syn|es|llegar}} #{{タグ|es|自動詞}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 #: {{syn|es|ocurrir|pasar|acontecer|suceder}} ===={{conjug}}==== {{es-conj|nocomb=1}} ===={{drv}}==== * {{l|es|advenedizo}} * {{l|es|advenimiento}} ===={{rel}}==== * {{l|es|avenir}} =={{L|frm}}== ==={{etym}}=== {{bor|frm|la|advenīre}} ==={{verb}}=== {{head|frm|verb}} #{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 =={{L|fr}}== ==={{etym}}=== {{etyl|frm|fr}} {{m|frm|advenir}} < {{etyl|la|fr}} {{m|la|advenīre}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|LL-Q150 (fra)-Lepticed7-advenir.wav|a=Toulouse}} * {{音声|fr|LL-Q150 (fra)-DenisdeShawi-advenir.wav|a=Shawinigan}} * {{音声|fr|LL-Q150 (fra)-LoquaxFR-advenir.wav|a=Vosges}} * {{音声|fr|LL-Q150 (fra)-Mecanautes-advenir.wav|a=France}} * {{音声|fr|LL-Q150 (fra)-WikiLucas00-advenir.wav|a=Lyon}} * {{音声|fr|LL-Q150 (fra)-Jérémy-Günther-Heinz Jähnick-advenir.wav|a=Somain}} ==={{verb}}=== {{fr-verb|type=defective}} #{{タグ|fr|impersonal|defective|literary|or|poetic}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjugation}}==== {{fr-conj-venir|ad|être}} ===={{drv}}==== * {{l|fr|advienne que pourra}} ==={{seealso}}=== * {{l|fr|avenir}} ==={{anag}}=== * {{l|fr|vendrai}}, {{l|fr|viendra}} l5z75mlg5664iofwm902nq055z5idhk avenir 0 556920 2281212 2159044 2026-06-09T10:47:14Z Kuroco2k 84207 2281212 wikitext text/x-wiki {{also|à venir}} =={{L|ast}}== ==={{etym}}=== {{etyl|la|ast}} {{m|la|advenīre}} ==={{verb}}=== {{ast-verb}} #{{タグ|ast|dated}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 #: {{syn|ast|asoceder|aportar|acaecer}} #{{タグ|ast|再帰動詞}} [[同意]]する、[[合意]]する。 #: {{syn|ast|casar|combalachar|averiguar}} ===={{rel}}==== * {{l|ast|avenencia}} * {{l|ast|aveníu}} =={{L|ca}}== ==={{alter}}=== * {{alter+|ca|avindre}} ==={{etym}}=== {{etyl|la|ca}} {{m|la|advenīre}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Marvives-avenir.wav|a=Barcelona}} ==={{verb}}=== {{ca-verb|pres_1_sg=avinc|past_part=avingut}} #{{タグ|ca|他動詞}}[[和解]]させる。 #{{タグ|ca|再帰動詞}}[[同意]]する、[[合意]]する、{{おくりがな3|受|う|け|入|い|れる|うけいれる}}。 #{{タグ|ca|再帰動詞}}{{おくりがな3|仲|なか||良|よ|く|なかよく}}やっていく。 #{{タグ|ca|再帰動詞|事実を}}受け入れる。 {{ca-conj-ir-tenir|adven|avin|ave|<!-- -->|pres_ind_3_sg=avé<!-- -->|impr_2_sg=avén<!-- -->}} ===={{drv}}==== * {{l|ca|desavenir-se}} =={{L|fro}}== ==={{etym}}=== {{bor|fro|la|advenīre}} ==={{verb}}=== {{head|fro|verb}} #{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjugation}}==== {{fro-conj-venir|a}} ===={{desc}}==== * {{desc|fr|advenir|avenir}} (動詞) =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|advenīre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞}}[[和解]]させる。 #{{タグ|es|再帰動詞}}[[同意]]する、[[合意]]する。 #{{おくりがな3|釣|つ|り|合|あ|う|つりあう}}、[[調和]]する。 #{{タグ|es|自動詞|dated}}{{おくりがな2|起|お|こる|おこる}}、[[生じる]]。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|avenencia}} * {{l|es|avenida}} * {{l|es|avenimiento}} ===={{rel}}==== * {{l|es|advenir}} =={{L|fr}}== ==={{etym}}=== {{m|fr|temps}} {{m|fr|à}} {{m|fr|venir}} (来たる時)より ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|Fr-avenir.ogg}} * {{音声|fr|LL-Q150 (fra)-Lepticed7-avenir.wav|a=Toulouse}} * {{音声|fr|LL-Q150 (fra)-Poslovitch-avenir.wav|a=Vosges}} * {{音声|fr|LL-Q150 (fra)-WikiLucas00-avenir.wav|a=Lyon}} * {{音声|fr|LL-Q150 (fra)-Jérémy-Günther-Heinz Jähnick-avenir.wav|a=Somain}} ==={{noun}}=== {{fr-noun|m}} #{{タグ|fr|時間}}[[未来]]。 #: {{syn|fr|futur}} #: {{ant|fr|passé|présent}} ===={{drv}}==== * {{l|fr|à l'avenir}} * {{l|fr|l'avenir appartient à ceux qui se lèvent tôt}} ===={{seealso}}==== * {{l|fr|advenir}} ==={{anag}}=== * {{l|fr|enivra}} * {{l|fr|navire}} =={{L|lad}}== ==={{alter}}=== * {{alter+|lad|avinir|sc=Latn}} ==={{etym}}=== {{bor|lad|fr|avenir}} ==={{noun}}=== {{lad-noun|g=m|heb=אב׳יניר}} #{{タグ|lad|時間}}[[未来]]。 #: {{ant|lad|pasado}} ===={{drv}}==== {{col|lad|por el avenir}} n5vtj8hydjgwrsip541tz1cpun1x3yj だんこ 0 560835 2281115 2168842 2026-06-09T03:14:57Z 鍼灸 112313 2281115 wikitext text/x-wiki {{also|たんこ|たんご|だんご|タンゴ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[断固]]・[[断乎]]】決意が固いさま。 *【[[談古]]】[[古事]]を話す。 *【[[灘戸]]】製塩業者。 3i9gh32eid9h44oje6l7gv0zj4zez5l sistematizar 0 561491 2281209 2169926 2026-06-09T10:47:14Z Kuroco2k 84207 2281209 wikitext text/x-wiki =={{L|es}}== ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞}}[[体系化]]する、[[組織化]]する、[[系統]]立てる。 ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|sistematización}} * {{l|es|sistema}} =={{L|pt}}== ==={{alter}}=== * {{alter+|pt|systematizar||廃用}} ==={{etym}}=== {{m|pt|sistemático}} (< {{etyl|LL.|pt}} < {{etyl|gkm|pt}} {{m|gkm|συστηματικός}} < {{m|grc|σύστημα}}) + {{m|pt|-izar}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|sis|te|ma|ti|zar}} ==={{verb}}=== {{pt-verb}} #[[体系化]]する、[[組織化]]する、[[系統]]立てる。 #: {{syn|pt|sistemar|metodizar}} {{pt-conj|sistematiz|ar}} ===={{drv}}==== * {{l|pt|sistematização}} * {{l|pt|sistematizador}} * {{l|pt|sistematizado}} ===={{rel}}==== {{col3|lang=pt|sistema|sistemar|sistemática|sistematicamente|sistematicidade|sistemático|sistematismo|sistematizante|sistemicamente|sistémico|sistêmico}} cpbqqg4ax97r7hyygg3fjbz6671r5gu halogenar 0 567172 2281204 2181768 2026-06-09T10:42:17Z Kuroco2k 84207 2281204 wikitext text/x-wiki =={{L|es}}== ==={{etym}}=== {{affix|es|halógeno|-ar}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞|化学}}[[ハロゲン化]]する。 ===={{conjug}}==== {{es-conj}} ===={{drv}}==== * {{l|es|halogenación}} =={{L|pt}}== ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|ha|lo|ge|nar}} ==={{verb}}=== {{pt-verb}} #{{タグ|pt|他動詞|化学}}[[ハロゲン化]]する。 {{pt-conj|halogen|ar}} ===={{rel}}==== * {{l|pt|halogênio}} * {{l|pt|halogenação}} iwwillnzrqp64yx584fusxzkx9ogbbn 武器庫 0 571989 2280910 2193054 2026-06-08T13:31:49Z M-30722 1202 [[軍府]]より訳語移動 2280910 wikitext text/x-wiki {{kana-DEFAULTSORT|ぶきこ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|ぶきこ}} #{{タグ|ja|軍事}}[[武器]]を[[保管]]している[[倉庫]]。 ===={{syn}}==== *[[兵器庫]] ===={{trans}}==== *{{T|en}}: {{t|en|armory}}, {{t|en|arsenal}} 9gnfnea9do91csdpyka30rgjb8ax72i 2280911 2280910 2026-06-08T13:32:36Z M-30722 1202 リンク元より訳語追加 2280911 wikitext text/x-wiki {{kana-DEFAULTSORT|ぶきこ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|ぶきこ}} #{{タグ|ja|軍事}}[[武器]]を[[保管]]している[[倉庫]]。 ===={{syn}}==== *[[兵器庫]] ===={{trans}}==== *{{T|en}}: {{t|en|armory}}, {{t|en|arsenal}} *{{T|mnw}}: {{t|mnw|တိုက်လဝဟ်}} 640j7x9l7ax21iseqxst3mspn4r6iow renovar 0 574951 2281208 2199242 2026-06-09T10:47:13Z Kuroco2k 84207 2281208 wikitext text/x-wiki =={{L|ia}}== ==={{verb}}=== {{ia-verb|ar}} #[[更新]]する、[[一新]]する、[[再生]]させる。 {{ia-conj|renov|ar}} ===={{rel}}==== * {{l|ia|renovabile}} * {{l|ia|renovation}} * {{l|ia|renovator}} =={{L|oc}}== ==={{pron}}=== * {{音声|oc|LL-Q14185 (oci)-Davidgrosclaude-renovar.wav|a=Béarn}} ==={{verb}}=== {{oc-verb|renov|ar}} #[[更新]]する、[[一新]]する、[[再生]]させる。 {{oc-conj-ar|renov}} ===={{rel}}==== * {{l|oc|renovacion}} =={{L|ca}}== ==={{etym}}=== {{m|ca|nou}} 又は{{etyl|la|ca}} {{m|la|renovāre}} ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Marvives-renovar.wav|a=Barcelona}} ==={{verb}}=== {{ca-verb|ar|renov}} #[[更新]]する、[[一新]]する、[[再生]]させる。 {{ca-conj-ar|renov}} ===={{drv}}==== * {{l|ca|renovable}} ===={{rel}}==== * {{l|ca|renovació}} =={{L|es}}== ==={{etym}}=== {{etyl|la|es}} {{m|la|renovāre}} ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞}}[[更新]]する、[[一新]]する、[[再生]]させる。 ===={{conjug}}==== {{es-conj|<ue>}} ===={{drv}}==== {{col3|lang=es|renovable|renuevo|renovar la memoria|renovar la herida|renovación|renovador}} =={{L|pt}}== ==={{etym}}=== {{m|pt|novo}} 又は{{etyl|la|pt}} {{m|la|renovāre}} ==={{pron}}=== {{pt-IPA}} ==={{verb}}=== {{pt-verb}} #[[更新]]する、[[一新]]する、[[再生]]させる。 {{pt-conj|renov|ar}} ===={{rel}}==== * {{l|pt|renovação}} 6wak7citmp38netl9fqsostvlu8qi2t pacificar 0 575868 2281207 2201521 2026-06-09T10:47:13Z Kuroco2k 84207 2281207 wikitext text/x-wiki =={{L|es}}== ==={{pron}}=== {{es-pr}} ==={{verb}}=== {{es-verb}} #{{タグ|es|他動詞}}[[平定]]する、[[平和]]を[[もたらす]]、{{おくりがな2|鎮|しず|める|しずめる}}。 #: {{syn|es|apaciguar}} ===={{conjug}}==== {{es-conj}} ===={{rel}}==== * {{l|es|paz}} =={{L|pt}}== ==={{etym}}=== {{lbor|pt|la|pācificāre}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|pa|ci|fi|car}} ==={{verb}}=== {{pt-verb}} #[[平定]]する、[[平和]]を[[もたらす]]、{{おくりがな2|鎮|しず|める|しずめる}}。 {{pt-conj|pacifi|car}} ===={{rel}}==== * {{l|pt|pacífico}} 8k1faijyca6389zsq7ks1yzw5iywh26 さいじき 0 580567 2280941 2213701 2026-06-08T14:01:12Z M-30722 1202 2280941 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|さいしき}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[斎食]]】仏寺などで正午の食事。 *【[[歳時記]]】季語を解説などを付した書物。 bn279gwk0xdphq04m1oms1o0idj9asf 付録:"a"の変形 100 588878 2281249 2279523 2026-06-09T11:04:29Z Kuroco2k 84207 /* 類字 */ 2281249 wikitext text/x-wiki ==単字== {{top3}} * [[A]] (大文字) ** 上付き: [[ᴬ]] ** 下付き: [[ᴀ]] * [[a]] (小文字) ** 上付き: [[ᵃ]] ** 合字形: [[◌ͣ]] ** 下付き: [[ₐ]] {{bottom}} ===書体別=== {| class="wikitable" style="text-align: center; white-space: nowrap; width: 100%;" ! style="width:10%;" | ! style="width:10%;" | 標準 ! style="width:10%;" | {{w|太字}} ! style="width:10%;" | {{w|斜体}} ! style="width:10%;" | 太字/斜体 |- | '''{{w|セリフ (文字)|セリフ}}''' | | [[𝐀]] [[𝐚]] | [[𝐴]] [[𝑎]] | [[𝑨]] [[𝒂]] |- | '''{{w|サンセリフ}}''' | [[𝖠]] [[𝖺]] | [[𝗔]] [[𝗮]] | [[𝘈]] [[𝘢]] | [[𝘼]] [[𝙖]] |- | '''{{w|黒板太字}}''' | [[𝔸]] [[𝕒]] | | | |- | '''{{w|等幅フォント|等幅}}''' | [[𝙰]] [[𝚊]] | | | |- | '''{{w|スクリプト (書体)|スクリプト}}''' | [[𝒜]] [[𝒶]] | [[𝓐]] [[𝓪]] | | |- | '''{{w|フラクトゥール}}''' | [[𝔄]] [[𝔞]] | [[𝕬]] [[𝖆]] | | |- | '''{{w|半角・全角形|全角}}''' | [[A]] [[a]] | | | |- |} ===約物付=== {{top3}} * [[a']] * [[A*]] * [[A+]] * [[a+]] * [[à +]] * [[A-]] * [[a-]] * [[A.]] * [[a.]] * [[A꞉]] * [[a꞉]] * [[A·]] * [[a·]] * [[Aʼ]] * [[aʼ]] * [[ʼa]] * [[A−]] * [[A♭]] * [[A♯]] * [['a]] * [['a']] * [[(A)]] * [[-a]] * [[-a-]] * [[-a']] * [[-aʼ]] * [[a=]] * [[a'-]] * [[a·-]] * [[aʼ-]] * [[ʻa-]] * [[ʼa-]] * [[ʼaʼ]] * [[-ʼAʼ]] * [[-ʼaʼ]] * [[Aꝰ]] {{bottom}} ===数字付=== {{top3}} * [[A 1]] * [[A-1]] * [[a1]] * [[A1]] * [[a2]] * [[A2]] * [[a3]] * [[A3]] * [[a4]] * [[A4]] * [[a5]] * [[A5]] * [[A6]] * [[A7]] * [[A8]] * [[A9]] * [[A10]] * [[a³¹]] * [[a³¹-]] * [[1a]] * [[1:a]] {{bottom}} ==ダイアクリティカルマーク== {{top3}} * [[Á]] [[á]] ** [[Ą́]] [[ą́]] * [[Ă]] [[ă]] ** [[Ặ]] [[ặ]] ** [[Ằ]] [[ằ]] * [[Ȃ]] [[ȃ]] * [[Ǎ]] [[ǎ]] * [[Â]] [[â]] ** [[Ấ]] [[ấ]] ** [[Ậ]] [[ậ]] ** [[Ầ]] [[ầ]] ** [[Ẩ]] [[ẩ]] * [[Ä]] [[ä]] (合字形: [[◌ᷲ]]) ** [[Ǟ]] [[ǟ]] ** [[Ā̈]] [[ā̈]] * [[Ȧ]] [[ȧ]] ** [[Ǡ]] [[ǡ]] * [[Ạ]] [[ạ]] * [[À]] [[à]] * [[Ȁ]] [[ȁ]] * [[Ả]] [[ả]] ** [[Ẳ]] [[ẳ]] * [[Ā]] [[ā]] ** [[Ą̄]] [[ą̄]] * [[A̱]] [[a̱]] * [[Ą]] [[ą]] * [[Å]] [[å]] ** [[Ǻ]] [[ǻ]] ** [[Å̄]] [[å̄]] ** [[Ą̊]] [[ą̊]] * [[Ḁ]] [[ḁ]] * [[Ã]] [[ã]] ** [[Ẵ]] [[ẵ]] ** [[Ą̃]] [[ą̃]] * [[Aͤ]] [[aͤ]] * [[Ꞻ]] [[ꞻ]] * [[ẚ]] * [[ᶏ]] {{bottom}} ===約物付=== {{top4}} * [[ā-]] * [[ʻā-]] * [[-à]] * [[-á]] * [[-á-]] * [[á-]] * [[ʼá-]] * [[-ʼÁ]] * [[-ʼá]] * [[-â]] * [[ä.]] * [[-ä]] * [[-ã]] * [[ʻā]] * [[-ă]] * [[-ǎ]] * [[-ǎ-]] * [[a̱-]] * [[-ʼĄ́]] * [[-ʼą́]] {{bottom}} ==合字== {{top2}} * [[Ꜳ]] [[ꜳ]] (上付き: [[𐞀]]) * [[Æ]] [[æ]] (上付き: [[𐞃]]; 合字形: [[◌ᷔ]]) ** [[Ǽ]] [[ǽ]] ** [[Ǣ]] [[ǣ]] ** [[ᴁ]] (上付き: [[ᴭ]]) ** [[ᴂ]] (上付き: [[ᵆ]]) * [[Ꜵ]] [[ꜵ]] (合字形: [[◌ᷕ]]) * [[Ꜷ]] [[ꜷ]] * [[Ꜹ]] [[ꜹ]] (合字形: [[◌ᷖ]]) ** [[Ꜻ]] [[ꜻ]] * [[Ꜽ]] [[ꜽ]] * [[ꬱ]] {{bottom}} ==関連字 (ラテン文字)== * [[Ɐ]] [[ɐ]] (上付き: [[ᵄ]]) * [[Ɤ]] [[ɤ]] (上付き: [[𐞑]]) * [[Ɑ]] [[ɑ]] (上付き: [[ᵅ]]) ** [[Ɒ]] [[ɒ]] (上付き: [[ᶛ]]) ** [[ꭤ]] ** [[ꬰ]] ** [[ᶐ]] * [[Ꞛ]] [[ꞛ]] * [[◌ᷓ]] ==類字== {{col-top|2|"A"の類字}} * {{l|mul|Α|sc=Grek}} * {{l|mul|А|sc=Cyrl}} * {{l|mul|ꓮ|sc=Lisu|tr=-}} * {{l|mul|𖬮|sc=Hmng}} * {{l|mul|[[Ꭺ]] [[ꭺ]]|sc=Cher}} * {{l|mul|𐤠|sc=Lyci|tr=-}} * {{l|mul|[[Ꭿ]] [[ꭿ]]|sc=Cher}} * {{l|mul|𐌀|sc=Ital|tr=-}} * {{l|mul|𖹬|sc=Medf}} * {{l|mul|[[𞤏]] [[𞤱]]|sc=Adlm}} * {{l|mul|𞠭|sc=Mend}} * {{l|mul|𞠟|sc=Mend}} * {{l|mul|𠔀|sc=Hani}} * {{l|mul|𘯪|sc=Kits}} * {{l|mul|𘠹|sc=Tang}} * {{l|mul|凡|sc=Hani}} * {{l|mul|𠁽|sc=Hani}} * {{l|mul|𖼜|sc=Plrd}} * {{l|mul|丸|sc=Hani}} * {{l|mul|𝈤|sc=Grek|tr=-}} * {{l|mul|𒿢}} * {{l|mul|𠔼|sc=Hani}} * {{l|mul|𘮺|sc=Kits}} * {{l|mul|𘮸|sc=Kits}} * {{l|mul|𝈵|sc=Grek|tr=-}} * {{l|mul|Δ|sc=Grek}} * {{l|mul|[[Ⲇ]] [[ⲇ]]}} * {{l|mul|𐊅|sc=Lyci}} * {{l|mul|ꕔ|sc=Vaii}} * {{l|mul|[[Ѧ]] [[ѧ]]|sc=Cyrl|tr=-}} * {{l|mul|sc=Glag|[[Ⱑ]] [[ⱑ]]|tr=-}} * {{l|mul|Λ|sc=Grek}} * {{l|mul|𐊍|sc=Lyci}} * {{l|mul|ꓥ|sc=Lisu|tr=-}} * {{l|mul|𞊭|tr=-}} * {{l|mul|Ꮑ|sc=Cher}} * {{l|mul|人|sc=Hani}} {{col-bottom}} {{col-top|2|"a"の類字}} * {{l|mul|а|sc=Cyrl}} * {{l|mul|Ⲁ|sc=Copt}} {{l|mul|ⲁ|sc=Copt}} * {{l|mul|𐌳|sc=Goth}} {{col-bottom}} ==記号== {{top3}} * {{l|mul|@|sc=Zyyy}} * {{l|mul|ª|sc=Latn}} * {{l|mul|𝔸|sc=Zyyy}} * {{l|mul|∀|sc=Zyyy}} * {{l|mul|₳|sc=Zyyy}} * {{l|mul|🅐|sc=Zyyy}} * {{l|mul|🄰|sc=Zyyy}} * {{l|mul|🅰|sc=Zyyy}} * {{l|mul|🆎|sc=Zyyy}} * {{l|mul|🄐|sc=Zyyy}} {{l|mul|⒜|sc=Zyyy}} * {{l|mul|℀|sc=Zyyy}} * {{l|mul|℁|sc=Zyyy}} * {{l|mul|⅍|sc=Zyyy}} * {{l|mul|㏂|sc=Zyyy}} * {{l|mul|㏟|sc=Zyyy}} * {{l|mul|㍳|sc=Zyyy}} * {{l|mul|㎄|sc=Zyyy}} * {{l|mul|㎃|sc=Zyyy}} * {{l|mul|㎁|sc=Zyyy}} * {{l|mul|㎀|sc=Zyyy}} * {{l|mul|㎂|sc=Zyyy}} {{bottom}} ===言語学類=== {{top3}} * {{l|mul|A|sc=Latn}} * {{l|mul|a|sc=Latn}} ** {{l|mul|ᵃ|sc=Latn}} * {{l|mul|ᴀ|sc=Latn}} * {{l|mul|ä|sc=Latn}} * {{l|mul|ḁ|sc=Latn}} * {{l|mul|ᶏ|sc=Latn}} * {{l|mul|ɐ|sc=Latn}} * {{l|mul|ɤ|sc=Latn}} ** {{l|mul|𐞑|sc=Latn}} * {{l|mul|ɑ|sc=Latn}} * {{l|mul|ꬰ|sc=Latn}} * {{l|mul|ᶐ|sc=Latn}} * {{l|mul|ꭤ|sc=Latn}} * {{l|mul|ɒ|sc=Latn}} * {{l|mul|ꞛ|sc=Latn}} * {{l|mul|æ|sc=Latn}} ** {{l|mul|𐞃|sc=Latn}} * {{l|mul|ᴁ|sc=Latn}} ** {{l|mul|ᴭ|sc=Latn}} * {{l|mul|ꬱ|sc=Latn}} * {{l|mul|ᴂ|sc=Latn}} ** {{l|mul|ᵆ|sc=Latn}} * {{l|mul|𝑎|sc=Zyyy}} * {{l|mul|Ⓐ|sc=Zyyy}} {{l|mul|ⓐ|sc=Zyyy}} {{bottom}} [[Category:単字の変形|A]] reof6imc4e340z4civ0lshgh1gfhrxh 利用者・トーク:しゅんた(漢字大好き) 3 588983 2281178 2280089 2026-06-09T08:46:26Z エクストリームガードレール 94024 プレビュー機能 2281178 wikitext text/x-wiki == 必須カテゴリ付与等について == 項目作成ありがとうございます。しかしながら作成いただきました書式では最低限のスタイルに達していない為掲載するためには加筆していただく必要があります。具体的には #必ず付ける必要のあるカテゴリ(<code><nowiki>[[カテゴリ:(言語名)]]</nowiki></code>および<code><nowiki>[[カテゴリ:(言語名) (品詞名)]]</nowiki></code>)がありますので付与願います([[Wiktionary:スタイルマニュアル#カテゴリ]] 参照)。 #見出しを単に「意義」とするのではなく'''品詞を明示'''して下さい([[Wiktionary:スタイルマニュアル#項目の構成要素]] 参照)。 全体的な書式としては[[テンプレート:標準の内容/日本語]]や[[Wiktionary:見本項目]]で示されている「[[議論]]」等を参照ください。その他ご不明点ございましたら質問いただけますと回答させていただきます。--[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2026年6月6日 (土) 14:06 (UTC) :<nowiki>[[カテゴリ:日本語|中国語|日本語名詞|拼音|発音]]</nowiki>のような書き方では「カテゴリ:日本語」しか付与されません。<nowiki>[[カテゴリ:日本語]][[カテゴリ:日本語 名詞]][[カテゴリ:中国語]]</nowiki>などのようにそれぞれ分けて書く必要があります。もしくは{{temp|ja-noun}}や{{temp|zh-cat}}等カテゴリを付与するテンプレートを使用します。--[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2026年6月7日 (日) 05:32 (UTC) ==プレビュー機能==  編集ご苦労さまでございます。同じ記事を複数回続けて編集されているようですが、投稿前に投稿ボタンの右隣、「プレビューを表示」ボタンを押していただきますと投稿前に表示イメージをご確認になれます。あまりにも同じ記事を連続で編集なさいますと後にログを確認する際の妨げとなりますのでなるべく編集前にプレビューで内容を精査していただき、編集回数を減らしていただくのが良いかと思います。 --[[利用者:エクストリームガードレール|エクストリームガードレール]] ([[利用者・トーク:エクストリームガードレール|トーク]]) 2026年6月9日 (火) 08:46 (UTC) 42lppvix9l4ono3khrjx680cx6ptupd 𦸶䓥 0 589019 2281083 2280136 2026-06-09T01:23:53Z しゅんた(漢字大好き) 131857 /* 脚注 */ 2281083 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #草むらを蛇が這う音。 #草むらの虫が動く音。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== #https://zi.tools/zi/%F0%A6%B8%B6?secondary=search #https://kanji.jitenon.jp/kanjiy/28720 ed669brz5kq4usjm9wvest0l6gu88u5 2281085 2281083 2026-06-09T01:24:49Z しゅんた(漢字大好き) 131857 /* 脚注 */ 2281085 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #草むらを蛇が這う音。 #草むらの虫が動く音。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== #字統网 #漢字辞典オンライン atcp5fz3g138ucczrjaoq89rpv8kfn2 2281141 2281085 2026-06-09T06:17:10Z しゅんた(漢字大好き) 131857 /* {{noun}} */ 2281141 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #name="zi.tools">zi.tools</ref>草むらの中を蛇が這う音。<ref #name="漢字辞典オンライン">漢字辞典オンライン</ref>草むらの虫が動く音。<ref。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== #字統网 #漢字辞典オンライン ondlmqshw6uqr5s9mzc03x6vohagqn6 2281143 2281141 2026-06-09T06:17:52Z しゅんた(漢字大好き) 131857 /* 脚注 */ 2281143 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #name="zi.tools">zi.tools</ref>草むらの中を蛇が這う音。<ref #name="漢字辞典オンライン">漢字辞典オンライン</ref>草むらの虫が動く音。<ref。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== {{Reflist}} 6j5uv0le09y41awwwn5uqhq1gk4qdxi 2281145 2281143 2026-06-09T06:19:12Z しゅんた(漢字大好き) 131857 /* {{noun}} */ 2281145 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #草むらの中を蛇が這う音。 #草むらの虫が動く音。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== {{Reflist}} 30uuxpto4fmt64ln91o30zcxq6vere4 2281146 2281145 2026-06-09T06:19:54Z しゅんた(漢字大好き) 131857 /* 脚注 */ 2281146 wikitext text/x-wiki {{kana-DEFAULTSORT|さつらつ}} =={{L|ja}}== {{ja-kanjitab|さつ|らつ|yomi=o}} ==={{noun}}=== {{ja-noun|さつらつ}} #草むらの中を蛇が這う音。 #草むらの虫が動く音。 ==脚注== #漢字辞典オンライン #字統网 =={{L|zh}}== {{zh-cat|zha2la4|名詞}} ==={{pron}}=== {{cmn-pron|zhálà}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)草むらを蛇が這う音。 ==脚注== #zi.tools #漢字辞典オンライン suflbqeoiylwx8zq0uclrr6g6cukap2 εξάδελφος 0 589256 2280817 2026-06-08T11:59:24Z Kuroco2k 84207 新規作成 2280817 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{el-noun|m|εξάδελφοι|f=εξαδέλφη}} #{{alternative form of|el|ξάδερφος}} ===={{decl}}==== {{el-nM-ος-οι-3b|εξάδελφ|εξαδέλφ}} 3pxjrl5nmea6yzow8mfof2a6krgpt7g ξάδερφος 0 589257 2280818 2026-06-08T11:59:24Z Kuroco2k 84207 [[:en:ξάδερφος]] 2280818 wikitext text/x-wiki =={{L|el}}== ==={{alter}}=== *{{l|el|ξάδελφος|g=m}} *{{l|el|εξάδελφος|g=m}} *{{l|el|εξάδερφος|g=m}} ==={{etym}}=== {{m|el|ξάδελφος}} <{{m|el|εξάδελφος}} < {{etyl|grc-koi|el}} {{m|grc-koi|ἐξάδελφος}} < {{etyl|grc|el}} {{m|grc|ἐξ-}} + {{m|grc|ἀδελφός}} ==={{noun}}=== {{el-noun|m|ξάδερφοι|f=ξαδέρφη}} #{{context|家族|男性の|lang=el}} [[いとこ]]。 ===={{decl}}==== {{el-nM-ος-οι-3c|ξάδερφ|ξαδέρφ}} ===={{seealso}}==== *{{l|el|ξαδέρφι}} h91a9soqihmxecaqyghg07r3n9ycacg ξάδελφος 0 589258 2280819 2026-06-08T11:59:24Z Kuroco2k 84207 新規作成 2280819 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{el-noun|m|ξάδελφοι|f=ξαδέλφη}} #{{alternative form of|el|ξάδερφος}} ===={{decl}}==== {{el-nM-ος-οι-3c|ξάδελφ|ξαδέλφ}} a9l2t7ux34myki0bojwv4rsh1iayx95 εξάδερφος 0 589259 2280820 2026-06-08T11:59:24Z Kuroco2k 84207 新規作成 2280820 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{el-noun|m|εξάδερφοι|f=εξαδέρφη}} #{{alternative form of|el|ξάδερφος}} ===={{decl}}==== {{el-nM-ος-οι-3b|εξάδερφ|εξαδέρφ}} e6yf3pulgs3ymqp3oifqjj1mwczshue εξαδέλφους 0 589260 2280821 2026-06-08T12:01:12Z Kuroco2k 84207 新規作成 2280821 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||acc|p}} 550mtnw8a07972j9nxdxruts62k8a86 εξάδελφοι 0 589261 2280822 2026-06-08T12:01:12Z Kuroco2k 84207 新規作成 2280822 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||nom//voc|p}} 8arkpxez99x2ohrpgpjr26vx6qmwhcz εξαδέλφων 0 589262 2280823 2026-06-08T12:01:12Z Kuroco2k 84207 新規作成 2280823 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||gen|p}} 3elbjdihvq2o5k44of00uvh626drowb εξάδελφε 0 589263 2280824 2026-06-08T12:01:12Z Kuroco2k 84207 新規作成 2280824 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||voc|s}} hecvckt4ny22r00dfuz6h3w4xzsxah6 εξάδελφο 0 589264 2280825 2026-06-08T12:01:13Z Kuroco2k 84207 新規作成 2280825 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||acc|s}} t0s84ul9zlr9tr37jixsovgmu6t208c εξαδέλφου 0 589265 2280826 2026-06-08T12:01:13Z Kuroco2k 84207 新規作成 2280826 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|nounf|g=m}} #{{noun form of|el|εξάδελφος||gen|s}} p0m2i2lxm9miz6nkqqxgu4l74aj62sm ξάδελφοι 0 589266 2280827 2026-06-08T12:03:09Z Kuroco2k 84207 新規作成 2280827 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||nom//voc|p}} c7z9qkawkxuc4icd8otylr4c13gg7kx ξάδελφου 0 589267 2280828 2026-06-08T12:03:09Z Kuroco2k 84207 新規作成 2280828 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||gen|s}} hpy5p85qvs4y0328pjj7tlgt05zjoqt ξάδελφων 0 589268 2280829 2026-06-08T12:03:10Z Kuroco2k 84207 新規作成 2280829 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||gen|p}} srcfk3ak172ebxfflk5o714n2bmpzbi ξάδελφο 0 589269 2280830 2026-06-08T12:03:10Z Kuroco2k 84207 新規作成 2280830 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||acc|s}} msr54jmnzwqkbp7lpzoi1offesa423a ξάδελφους 0 589270 2280831 2026-06-08T12:03:10Z Kuroco2k 84207 新規作成 2280831 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||acc|p}} r7e5ez3xwgm0s6viu24odr7ph1j9olk ξάδελφε 0 589271 2280832 2026-06-08T12:03:11Z Kuroco2k 84207 新規作成 2280832 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδελφος||voc|s}} gc7ld7kd1bdehizfy8kclciqiifyu4x εξαδέρφων 0 589272 2280833 2026-06-08T12:04:34Z Kuroco2k 84207 新規作成 2280833 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||gen|p}} nb913bqij9mkp26i932t7ougdzpfm66 εξαδέρφους 0 589273 2280834 2026-06-08T12:04:34Z Kuroco2k 84207 新規作成 2280834 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||acc|p}} 0f7pmi54iogmqmug43iq1vtfbzd647t εξαδέρφου 0 589274 2280835 2026-06-08T12:04:35Z Kuroco2k 84207 新規作成 2280835 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||gen|s}} 4g8mmjos67n36m4ui24g9edbxbpxvzx εξάδερφο 0 589275 2280836 2026-06-08T12:04:35Z Kuroco2k 84207 新規作成 2280836 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||acc|s}} i54rghbejz8q9cjlqzdraosapwngtnn εξάδερφοι 0 589276 2280837 2026-06-08T12:04:35Z Kuroco2k 84207 新規作成 2280837 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||nom//voc|p}} gvbss2yzrhkyf4t8myf5hlfbbcuprag εξάδερφε 0 589277 2280838 2026-06-08T12:04:36Z Kuroco2k 84207 新規作成 2280838 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|εξάδερφος||voc|s}} gpmdd7u3kjop4fs646vu3clp0yraqj2 ξάδερφου 0 589278 2280839 2026-06-08T12:06:00Z Kuroco2k 84207 新規作成 2280839 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||gen|s}} 9eudt3zc518n8xlj3wre5lrkkmg41cu ξάδερφο 0 589279 2280840 2026-06-08T12:06:00Z Kuroco2k 84207 新規作成 2280840 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||acc|s}} f75fca9im41gb2krf64qyg5slmc0t2t ξάδερφε 0 589280 2280841 2026-06-08T12:06:00Z Kuroco2k 84207 新規作成 2280841 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||voc|s}} pggzk9ron3kwwbyy0fmx27kdh033ndy ξάδερφοι 0 589281 2280842 2026-06-08T12:06:00Z Kuroco2k 84207 新規作成 2280842 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||nom//voc|p}} okiyof85qpndvel0miamhq0wphwgbe5 ξάδερφων 0 589282 2280843 2026-06-08T12:06:01Z Kuroco2k 84207 新規作成 2280843 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||gen|p}} iyhd089gkunn8kndwxkflrklyg1daz2 ξάδερφους 0 589283 2280844 2026-06-08T12:06:01Z Kuroco2k 84207 新規作成 2280844 wikitext text/x-wiki =={{L|el}}== ==={{noun}}=== {{head|el|noun form|g=m}} #{{noun form of|el|ξάδερφος||acc|p}} nijqp6s56d406m7k8rl4mhm0gfgqlb5 嫗煦 0 589284 2280845 2026-06-08T12:20:24Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|おうく}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[おうく]]}} #[[あたためる|温め]]、[[養育]]すること。 ==={{verb}}=== {{ja-verb-suru|おうく}} {{日本語サ変活用}}」 2280845 wikitext text/x-wiki {{kana-DEFAULTSORT|おうく}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[おうく]]}} #[[あたためる|温め]]、[[養育]]すること。 ==={{verb}}=== {{ja-verb-suru|おうく}} {{日本語サ変活用}} qxouiyih8pqrzeiitmofc8xeui4uqfa 0 589285 2280847 2026-06-08T12:22:17Z Kuroco2k 84207 新規作成 2280847 wikitext text/x-wiki ==漢字== {{kanji|竹|10}} {{kanji variants|箬}} ===意義=== #「[[箬]]」の[[同字]](『{{w|集韻}}』掲載)。 =={{コード}}== {{文字コード|jis=2-50-49|mj={{mjmoji|019608}}|gb=BA4F|cns=1-7162|big5=BF78|全={{全字庫|94562}}|hbig5=y|ksx=1002-6673|kps=10721-64D4}} {{検字|蒼頡=HNMM|四角=8812.7}} {{字典|dj=1321.080|hdz=53005.120|康煕=0894.030|matthews=3129|新潮漢字=8557|諸橋=26318|新大字典=11774|大字源=7096|大漢語林=8341}} rc8m29mpjz3hqvrbvrflnkryp6hdmnl 0 589286 2280848 2026-06-08T12:22:17Z Kuroco2k 84207 新規作成 2280848 wikitext text/x-wiki ==漢字== {{kanji|禸|0}} {{kanji variants|蹂=[[正字]]|𠘯|𠫗}} ===異体字セレクタ=== {{kanjiIVS|ivs=00-02}} ===意義=== #「[[蹂]]」の[[同字]](『{{w|説文解字}}』掲載)。獣が、地を足で踏みつける。 =={{コード}}== {{文字コード|jis=1-89-36/2-48-82|mj={{mjmoji|018981|018982}}|gb=B662|cns=2-2167|big5=C9A8|全={{全字庫|139623}}|hbig5=y|ksx=1027-1-4E3B|kps=10721-61A0}} {{検字|蒼頡=IB,XIB|四角=4022.7}} {{字典|dj=1269.220|hdz=10097.040|康煕=0848.010|matthews=3132|mw=3845a|cowles=5146|ch=986.205|vt=B03082|新潮漢字=8173|諸橋=24884|新大字典=11287|大字源=6775|大漢語林=7945}} by1q0oeav7iqxgghllgjv7zpro9i9wi 0 589287 2280849 2026-06-08T12:22:17Z Kuroco2k 84207 新規作成 2280849 wikitext text/x-wiki {{kana-DEFAULTSORT|ヒ}} ==漢字== {{kanji|竹|10}} ===意義=== #[[かたみ|筐]]。 #物を盛る竹の器。 =={{L|ja}}== {{ja-kanji|呉音=*|漢音=ヒ|訓=かたみ}} =={{L|zh}}== [[Category:{{zh}}|fei3]] [[Category:{{yue}}|fei2]] [[Category:{{nan}}|hui2]] [[Category:{{cdo}}|pi1]] {{zh-han|m=fěi|c=fei2|md=pĭ/pī|mn=xm:húi}} =={{L|ko}}== {{ko-han|비|eumhun=[[대광주리]] 비}} =={{コード}}== {{文字コード|jis=2-83-65/2-50-48|mj={{mjmoji|019607}}|gb=F3F5|cns=2-5929|big5=EABD|全={{全字庫|153897}}|hbig5=y|ksx=1027-1-504B|kps=10721-64BE}} {{検字|蒼頡=HSLY|四角=8871.1}} {{字典|dj=1321.050|hdz=52997.050|康煕=0893.450|matthews=1827|mw=511c|gy=255.16|ch=1019.502|新潮漢字=8613|諸橋=26314|新大字典=11772|大字源=7102|大漢語林=8350|vt=B03243}} 798uqligcrfqxa40sk9geh4uy50b2wn おうく 0 589288 2280850 2026-06-08T12:23:23Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|おうぐ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[嫗煦]]】:温め、養育すること。 *【[[横句]]】:偽りの言葉。」 2280850 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|おうぐ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[嫗煦]]】:温め、養育すること。 *【[[横句]]】:偽りの言葉。 1wz8v992i6s15lfyy92l4m7st0dnii3 おうぐ 0 589289 2280851 2026-06-08T12:27:18Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|おうく}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[応供]]】:阿羅漢。 *【[[嘔喁]]】:喜ぶこと。」 2280851 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|おうく}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[応供]]】:阿羅漢。 *【[[嘔喁]]】:喜ぶこと。 d89h8sdw0q6lmfxu37sy22zqc3mjhpr おやどり 0 589290 2280852 2026-06-08T12:34:09Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|親鳥}} #[[おや|親]]の[[とり|鳥]]。」 2280852 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|親鳥}} #[[おや|親]]の[[とり|鳥]]。 00sc1vwvxi4ajquwzi42yd3futdnvbk 親鳥 0 589291 2280853 2026-06-08T12:35:12Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|おやどり}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|おやどり}} #{{wagokanji of|おやどり}}」 2280853 wikitext text/x-wiki {{kana-DEFAULTSORT|おやどり}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|おやどり}} #{{wagokanji of|おやどり}} qmxfnilcqwdkenupesdvgny0ztfly3x 0 589292 2280854 2026-06-08T12:36:46Z Kuroco2k 84207 新規作成 2280854 wikitext text/x-wiki {{kana-DEFAULTSORT|エン}} ==漢字== {{kanji|手|14}} {{kanji variants|擫|𭚋=[[同字]]|𰓙=[[類推簡化字]]}} ===異体字セレクタ=== {{kanjiIVS|ivs=00-03}} ===意義=== #[[指圧]]する。押さえる。 #[[抑圧]]する。 #[[書法]]における、執筆の方法の一種。親指に力を入れながら書く。 #{{q|{{yue}}}} [[衣服]]を引き上げる。 #{{q|{{yue}}}} [[粗悪]]な。品質の悪い。 =={{L|ja}}== {{ja-kanji|呉音=エン<エム,ヨウ<エフ,ジョウ|漢音=エン<エム,ヨウ<エフ|音=オウ,ニョウ|訓=お-さえる}} =={{L|zh}}== [[Category:{{zh}}|ye4]] [[Category:{{yue}}|yip3]] [[Category:{{cdo}}|aik4]] {{zh-han|m=yè|c=jip3,aap3,ngaap3|md=áik}} =={{L|ko}}== {{ko-han|엽|압|염|eumhun=[[누르다|누를]] 엽, 압, [[가지다|가질]] 염}} =={{コード}}== {{文字コード|jis=2-33-14|mj={{mjmoji|012852|012853|012854}}|gb=944B|cns=3-576C|big5=82F2|全={{全字庫|218988}}|hkscs=8AA4|kps=10721-478F}} {{検字|蒼頡=MKQ}} {{字典|cb=425.04|dj=0809.040|hdz=31973.060|康煕=0460.140|matthews=7327|gy=334.28/540.63|ch=595.406|新潮漢字=4349|諸橋=12867|新大字典=5961|大字源=3610|大漢語林=3813}} nrj1gdl42r5lup9unq18zv32mfquk21 撃摧 0 589293 2280856 2026-06-08T12:42:30Z Kuroco2k 84207 新規作成 2280856 wikitext text/x-wiki {{kana-DEFAULTSORT|げきさい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|げきさい}} #{{alt form|ja|撃砕}} ==={{verb}}=== ===={{conjug}}==== {{日本語サ変活用}} rgqzillqlyldrf3tv2bwu6waapi804a 撃砕 0 589294 2280857 2026-06-08T12:42:30Z Kuroco2k 84207 新規作成 2280857 wikitext text/x-wiki {{kana-DEFAULTSORT|げきさい}} =={{L|ja}}== ==={{alter}}=== *{{alt+|ja|撃摧}} ==={{noun}}=== {{ja-noun-suru|げきさい}} #物や[[敵]]を[[うちくだく|打ち砕く]]こと。{{defdate|1941年~}} ==={{verb}}=== ===={{conjug}}==== {{日本語サ変活用}} ===参考文献=== *{{書誌・コトバンク|author={{w|デジタル大辞泉}}|word=撃砕|accessdate=2026-06-08}} *{{Cite book|和書|author=藤堂明保|author2=松本昭|author3=竹田晃|author4=加納吉光|title=漢字源|edition=改訂第四版|year=2007|isbn=4-05-301828-5|page=612}} 8bxuag6p3mni8r1qqexrqjzfq4g8gwx ひっこしそば 0 589295 2280858 2026-06-08T12:43:20Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|引っ越し蕎麦}} #{{タグ|ja|蕎麦}}[[転居]]してきた者が[[ちかく|近く]]([[そば]])に来たしるしとして[[近隣]]に配る[[そば|蕎麦]]。」 2280858 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|引っ越し蕎麦}} #{{タグ|ja|蕎麦}}[[転居]]してきた者が[[ちかく|近く]]([[そば]])に来たしるしとして[[近隣]]に配る[[そば|蕎麦]]。 7rsndzcxz933292dxkpq3cf27qrnmou 2280860 2280858 2026-06-08T12:43:50Z うーむ 129171 2280860 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|引っ越し蕎麦}} #{{タグ|ja|食品}}[[転居]]してきた者が[[ちかく|近く]]([[そば]])に来たしるしとして[[近隣]]に配る[[そば|蕎麦]]。 qrp09pqfx0jcnu7zhhglfnzviwepeoc 引っ越し蕎麦 0 589296 2280862 2026-06-08T12:44:39Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ひっこしそば}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|ひっこしそば}} #{{wagokanji of|ひっこしそば}}」 2280862 wikitext text/x-wiki {{kana-DEFAULTSORT|ひっこしそば}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|ひっこしそば}} #{{wagokanji of|ひっこしそば}} su794nrlvwexzsuegorysiodkba62av テンプレート:cel-decl-noun-r-mf 10 589297 2280866 2026-06-08T12:45:43Z Kuroco2k 84207 [[:en:Template:cel-decl-noun-r-mf]] 2280866 wikitext text/x-wiki {{#invoke:cel-nouns|r-mf}}<noinclude>{{documentation}}[[カテゴリ:{{cel-pro}} テンプレート]]</noinclude> osojjuxe43zxdobxa2hb4d8ubeaj1vk 付録:ケルト祖語/mātīr 100 589298 2280867 2026-06-08T12:47:55Z Kuroco2k 84207 [[:en:Reconstruction:Proto-Celtic/mātīr]] 2280867 wikitext text/x-wiki =={{L|cel-pro}}== ==={{etym}}=== {{etyl|ine-pro|cel-pro}} {{m|ine-pro|*méh₂tēr}} ==={{noun}}=== {{cel-noun|g=f}} #{{タグ|cel-pro|家族}} {{ふりがな|母|はは}}。 ===={{decl}}==== {{cel-decl-noun-r-mf|māt}} ===={{drv}}==== *{{l|cel-pro|*Mātronā}} *{{desc|cel-pro|*mātrikʷā|der=1}}, {{l|cel-pro|*mātrokʷī}} **{{desctree|cel-bry-pro|*mọdreb}} ===={{desc}}==== *{{desc|cel-gau|matir}} *{{desc|xce|matrubos}} *{{desctree|sga|máthir}} *ブリソン諸語: **{{desc|cy|modrydaf}} (*{{m|cy||modr}} + {{m|cy|bydaf}}) erdr9hd8yqb8ozow56gcbwmibwquxwm カモン 0 589299 2280868 2026-06-08T12:50:13Z うーむ 129171 ページの作成:「=={{L|ja}}== ==={{etym}}=== {{bor|ja|en|come on}} ==={{interj|ja}}=== {{ja-interj}} #こちら側に来るよう促す語。」 2280868 wikitext text/x-wiki =={{L|ja}}== ==={{etym}}=== {{bor|ja|en|come on}} ==={{interj|ja}}=== {{ja-interj}} #こちら側に来るよう促す語。 h8f8hrwfcp1nqjjh7qmawjzk9ma0l9i 2280869 2280868 2026-06-08T12:51:02Z うーむ 129171 2280869 wikitext text/x-wiki =={{L|ja}}== ==={{etym}}=== {{bor|ja|en|come on}} ==={{interj|ja}}=== {{ja-interj}} #こちら側に[[くる|来る]]よう[[うながす|促す]]語。 03fyt2vnor9noefv7t9gzgcmjcbvy41 2280870 2280869 2026-06-08T12:52:12Z うーむ 129171 2280870 wikitext text/x-wiki {{also|かもん|がもん}} =={{L|ja}}== ==={{etym}}=== {{bor|ja|en|come on}} ==={{interj|ja}}=== {{ja-interj}} #こちら側に[[くる|来る]]よう[[うながす|促す]]語。 r7npi0imr17vpsaamxyp9dud8ez4nut баскетбол 0 589300 2280876 2026-06-08T12:57:50Z Kuroco2k 84207 [[:en:баскетбол]] 2280876 wikitext text/x-wiki =={{L|uk}}== ==={{etym}}=== {{bor+|uk|en|basketball}} ==={{pron}}=== *{{uk-IPA|баскетбо́л}} *{{音声|uk|LL-Q8798 (ukr)-Tohaomg-баскетбол.wav}} ==={{noun}}=== {{uk-noun|баскетбо́л<sg>|adj=баскетбо́льний}} #{{topcat|uk|バスケットボール}} [[バスケットボール]]。 ===={{decl}}==== {{uk-ndecl|баскетбо́л<sg>}} ===={{drv}}==== {{col2|uk||баскетболіст|баскетболістка}} =={{L|kk}}== {{kk-regional|баскетбол|باسكەتبول|basketbol}} ==={{etym}}=== {{bor+|kk|ru|баскетбо́л}} < {{etyl|en|kk}} {{m|en|basketball}} ==={{pron}}=== *{{IPA|lang=kk|[bəskʲɪdˈboɫ]}} *{{hyph|kk|бас|кет|бол}} ==={{noun}}=== {{kk-noun}} #{{topcat|kk|バスケットボール}} [[バスケットボール]]。 ===={{drv}}==== *{{l|kk|баскетболшы}} =={{L|tg}}== ==={{etym}}=== {{bor+|tg|ru|баскетбо́л}} < {{etyl|en|tg}} {{m|en|basketball}} ==={{pron}}=== {{tg-IPA|баскет`бол}} ==={{noun}}=== {{tg-noun}} #{{topcat|tg|バスケットボール}} [[バスケットボール]]。 =={{L|bg}}== ==={{etym}}=== {{bor+|bg|en|basketball}} ==={{pron}}=== {{bg-pr|ба́скетбол|a=[KK]}} ==={{noun}}=== {{bg-noun|ба́скетбол|m}} #{{topcat|bg|バスケットボール}} [[バスケットボール]]。 ===={{decl}}==== {{bg-ndecl|баскетбо́л</n:sg>}} =={{L|be}}== ==={{etym}}=== {{bor+|be|en|basketball}} ==={{pron}}=== *{{be-IPA|баскетбо́л}} *{{音声|be|LL-Q9091 (bel)-Ssvb-баскетбол.wav}} ==={{noun}}=== {{be-noun|баскетбо́л<sg>}} #{{topcat|be|バスケットボール}} [[バスケットボール]]。 ===={{decl}}==== {{be-ndecl|баскетбо́л<sg>}} =={{L|ru}}== ==={{etym}}=== {{bor+|ru|en|basketball}} ==={{pron}}=== *{{ru-IPA|баскетбо́л}} *{{音声|ru|Ru-баскетбол.ogg}} *{{音声|ru|LL-Q7737 (rus)-Tatiana Kerbush-баскетбол.wav|a=Saint Petersburg}} ==={{noun}}=== {{ru-noun+|баскетбо́л|n=sg|adj=баскетбо́льный}} #{{topcat|ru|バスケットボール}} [[バスケットボール]]。 ===={{decl}}==== {{ru-noun-table|баскетбо́л|n=sg}} ===={{rel}}==== *{{l|ru|баскетболи́ст}} *{{l|ru|баскетбо́льный мяч}} ===={{desc}}==== *{{desc|hy|բասկետբոլ|bor=1}} *{{desc|kk|баскетбол|bor=1}} c13s743ba9whxt1euezrruzyem6s72x 六科 0 589301 2280877 2026-06-08T12:59:47Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|りくか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|りくか|[[りっか]]}} #[[中国]][[唐]]の[[科挙]]の六つの[[科目]]。秀才、明経、進士、明法、明書、明算。」 2280877 wikitext text/x-wiki {{kana-DEFAULTSORT|りくか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|りくか|[[りっか]]}} #[[中国]][[唐]]の[[科挙]]の六つの[[科目]]。秀才、明経、進士、明法、明書、明算。 8l3ayolhxftiau4vjt014b0hew3mn0x 2280884 2280877 2026-06-08T13:03:58Z M-30722 1202 中国史 2280884 wikitext text/x-wiki {{kana-DEFAULTSORT|りくか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|りくか|[[りっか]]}} #{{タグ|ja|中国史}}[[中国]][[唐]]の[[科挙]]の六つの[[科目]]。秀才、明経、進士、明法、明書、明算。 r7stlkx0gq0ozfw1xjz5wh9305ctiqm 律科 0 589302 2280879 2026-06-08T13:01:20Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|りっか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[りっか]]}} #[[規定]]。」 2280879 wikitext text/x-wiki {{kana-DEFAULTSORT|りっか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[りっか]]}} #[[規定]]。 gilcegwfhlq7198rm212fss5jpujvl2 立枷 0 589303 2280883 2026-06-08T13:03:57Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|りっか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[りっか]]}} #首枷を[[はめる|嵌め]]、[[かご|籠]]の中に立たせること。 ==={{verb}}=== {{ja-verb-suru|りっか}} {{日本語サ変活用}}」 2280883 wikitext text/x-wiki {{kana-DEFAULTSORT|りっか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[りっか]]}} #首枷を[[はめる|嵌め]]、[[かご|籠]]の中に立たせること。 ==={{verb}}=== {{ja-verb-suru|りっか}} {{日本語サ変活用}} q5v5if67bc07i7rsa5hcffqvqfs4a3n Argentyna 0 589304 2280885 2026-06-08T13:04:33Z Kuroco2k 84207 [[:en:Argentyna]] 2280885 wikitext text/x-wiki =={{L|pl}}== ==={{etym}}=== {{affix|pl|{{etyl|la|pl}} {{m|la|argentum}}|-yna}} ==={{pron}}=== {{pl-pr|a=Pl-Argentyna.ogg}} ==={{name}}=== {{pl-prop|f|adj=argentyński}} #{{context|南米の国名|lang=pl}} [[アルゼンチン]]。 ===={{decl}}==== {{pl-decl-noun-f|tantum=s}} ===={{drv}}==== {{col2|pl|Argentyńczyk|Argentynka}} knrxzl1pq35pbtt3hv5qxp4tlzimuti Słowacja 0 589305 2280886 2026-06-08T13:04:33Z Kuroco2k 84207 [[:en:Słowacja]] 2280886 wikitext text/x-wiki =={{L|pl}}== ==={{pron}}=== {{pl-pr|a=Pl-Słowacja.ogg}} ==={{name}}=== {{pl-proper noun|f}} #{{context|ヨーロッパの国名|lang=pl}} [[スロヴァキア]]。 ===={{decl}}==== {{pl-decl-noun-f|tantum=s}} ===={{drv}}==== {{col2|pl|słowacki|Słowak|Słowaczka}} t7ymwkx2z4uthu30cvczm9ku2px52jv Słowenia 0 589306 2280887 2026-06-08T13:04:33Z Kuroco2k 84207 [[:en:Słowenia]] 2280887 wikitext text/x-wiki =={{L|pl}}== ==={{pron}}=== {{pl-pr|Słoweńjia|a=Pl-Słowenia.ogg|h=Sło.wen.ia}} ==={{name}}=== {{pl-proper noun|f}} #{{context|ヨーロッパの国名|lang=pl}} [[スロヴェニア]]。 ===={{decl}}==== {{pl-decl-noun-f|tantum=s}} ===={{drv}}==== {{col2|pl|słoweński|Słoweniec|Słowenka}} fm3cn7361frog2h1hlodq47mtlts1z4 sketchbook 0 589307 2280888 2026-06-08T13:06:26Z M-30722 1202 [[en:sketchbook]]より 2280888 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{affix|en|sketch|book}} ==={{pron}}=== * {{IPA|lang=en|ˈskɛt͡ʃˌbʊk}} * {{音声|en|LL-Q1860 (eng)-Vealhurl-sketchbook.wav|a=Southern England}} ==={{noun}}=== {{en-noun}} #{{タグ|en|美術}}[[スケッチブック]]、[[写生帳]]、[[画帳]]。 ===={{syn}}==== * {{l|en|visual diary}} jg9aj6h4m2lkxii7nu3l7tw1lqstr3i 栗罅 0 589308 2280889 2026-06-08T13:06:48Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|りつか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[りつか]]}} #[[くり|栗]の[[いが]]が割れること。 ==={{verb}}=== {{ja-verb-suru|りつか}} {{日本語サ変活用}}」 2280889 wikitext text/x-wiki {{kana-DEFAULTSORT|りつか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[りつか]]}} #[[くり|栗]の[[いが]]が割れること。 ==={{verb}}=== {{ja-verb-suru|りつか}} {{日本語サ変活用}} sfird6dwd8mnat6mzu8ip2q5kbik3vf 2280890 2280889 2026-06-08T13:07:13Z うーむ 129171 2280890 wikitext text/x-wiki {{kana-DEFAULTSORT|りつか}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[りつか]]}} #[[くり|栗]]の[[いが]]が割れること。 ==={{verb}}=== {{ja-verb-suru|りつか}} {{日本語サ変活用}} e113c1uo1xkqwotb3gwk36mebedviok sketchbooks 0 589309 2280891 2026-06-08T13:08:05Z M-30722 1202 新規作成 2280891 wikitext text/x-wiki =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|sketchbook}} 7exiloas0o2afrojcoif0xwdznpvpry sketch pad 0 589310 2280892 2026-06-08T13:09:39Z M-30722 1202 新規作成 2280892 wikitext text/x-wiki {{DEFAULTSORT:sketchpad}} {{also|sketchpad}} =={{L|en}}== ==={{noun}}=== {{en-noun}} #{{タグ|en|美術}}[[スケッチブック]]、[[写生帳]]、[[画帳]]。 #:{{syn|en|sketchbook}} j4iyqprreapntmmz1sxgr8dsrt71di9 sketch pads 0 589311 2280893 2026-06-08T13:10:03Z M-30722 1202 新規作成 2280893 wikitext text/x-wiki {{DEFAULTSORT:sketchpads}} {{also|sketchpads}} =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|sketch pad}} nhmleaw9wdo9kvll57m65yl7tnzocym sketchpads 0 589312 2280894 2026-06-08T13:10:18Z M-30722 1202 新規作成 2280894 wikitext text/x-wiki {{also|sketch pads}} =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|sketchpad}} c25m3wmqu79cnfvj5aba9sbhrz3vksq sketchpad 0 589313 2280895 2026-06-08T13:10:55Z M-30722 1202 新規作成 2280895 wikitext text/x-wiki {{also|sketch pad}} =={{L|en}}== ==={{noun}}=== {{en-noun}} #{{l|en|sketch pad}}の異綴。 m280x1uwfmp3hqxunmwxfops3ldvvuw pomidor 0 589314 2280899 2026-06-08T13:18:21Z Kuroco2k 84207 [[:en:pomidor]] 2280899 wikitext text/x-wiki =={{L|az}}== {{az-variant|r=pomidor|c=помидор|a=پومیدور}} ==={{etym}}=== {{bor+|az|ru|помидо́р}} < {{etyl|it|az}} {{m|it|pomi d'oro}} ==={{pron}}=== *{{IPA|lang=az|[pɑ.miˈdor]}} {{q|表音リスペリング: pamidor}} *{{IPA|lang=az|[bɑ.mɑˈdor]|a=dialectal}} {{q|表音リスペリング: bamador}} *{{音声|az|LL-Q9292 (aze)-Azerbaijani audiorecordings-pomidor.wav|a=Baku}} *{{hyph|az|po|mi|dor}} ==={{noun}}=== {{az-noun|u|lar}} #{{タグ|az|野菜}} [[トマト]]。 #:{{syn|az|qırmızı badımcan|erməni badımcanı}} ===={{decl}}==== {{az-decl-noun|o|c}} =={{L|uz}}== {{uz-variant|c=помидор|r=pomidor|af=بادنجان رومی}} ==={{alter}}=== *{{alt+|uz|pamildori||口語}} ==={{etym}}=== {{bor+|uz|ru|помидо́р}} < {{etyl|it|uz}} {{m|it|pomi d'oro}} ==={{noun}}=== {{uz-noun}} #{{タグ|uz|野菜}} [[トマト]]。 #:{{syn|uz|potinjon}} ===={{decl}}==== {{uz-decl-noun}} =={{L|tk}}== ==={{etym}}=== {{bor+|tk|ru|помидо́р}} ==={{pron}}=== *{{IPA|lang=tk|[pɑ.mɑˈdoːɾ]}} {{q|表音リスペリング: ''pamador''}} *{{hyph|tk|po|mi|dor}} ==={{noun}}=== {{tk-noun|y|lar}} #{{タグ|tk|野菜}} [[トマト]]。 #:{{syn|tk|tomat}} ===={{decl}}==== {{tk-decl-noun-auto|o|c}} =={{L|pl}}== ==={{etym}}=== {{bor+|pl|it|pomidori}} < {{m|it|pomidoro}}の複数形 ==={{pron}}=== {{pl-pr|a=Pl-pomidor.ogg}} ==={{noun}}=== {{pl-noun|m-in|g2=m-an|dim=pomidorek|adj=pomidorowy}} #{{タグ|pl|野菜}} [[トマト]]。 ===={{decl}}==== {{pl-decl-noun-m-in|gens=pomidora|accs=pomidor/pomidora}} ===={{drv}}==== {{col2|pl|pomidorówka}} fu9l6j5ulob7b79i3tkbaorgqnyh4qt 付録:印欧祖語/(s)ker- 100 589315 2280915 2026-06-08T13:37:41Z Kuroco2k 84207 [[:en:Reconstruction:Proto-Indo-European/(s)ker-]] 2280915 wikitext text/x-wiki =={{L|ine-pro}}== ==={{etym}}1=== ===={{alter}}==== *{{alt+|ine-pro|*(s)kerH-}}<ref name="EDBIL">{{R:bat:EDBIL|head=skirti|page=405}}</ref><ref name="EDL">{{R:itc:EDL|head=carō, carnis|page=94}}</ref> ===={{root}}==== {{ine-root}}<ref>{{R:ine:LIV|page=556-557}}</ref> #{{おくりがな3|断|た|ち|切|き|る|たちきる}}。 #{{おくりがな2|分|わ|かつ|わかつ}}。 ====={{drv}}===== *{{l|ine-pro||*sker-e-ti}} **{{desc|sqj-pro|*skera}} {{see desc}} **{{desc|hyx-pro}} ***{{desc|xcl|քերեմ}} **{{desc|gem-pro|*skeraną}} {{see desc}} *{{l|ine-pro|*(s)kérdʰeti|*(s)kér(H)-dʰe-ti}} *{{l|ine-pro||*skér(H)-ti ~ *skr̥(H)-énti}} **{{desc|cel-pro|*skarati}} {{see desc}} *{{l|ine-pro||*(s)ker(H)-ye-}} **{{desc|grk-pro|*keřřō}} ***{{desc|grc|κείρω}} **{{desc|ine-bsl-pro|*skírˀtei}} ***{{desc|lv|šķir̃t}} ***{{desc|lt|skìrti}} *{{l|ine-pro||*(s)kor-éye-ti}} **{{desc|sqj-pro}} ***{{desc|sq|harr}} **{{desc|hyx-pro}} ***{{desc|xcl|քորեմ}} *{{l|ine-pro||*(s)kr̥-yé-ti}} **{{desc|ine-ana-pro}} ***{{desc|hit|𒅗𒊑𒄑𒍣|tr=ka-ri-ez-zi}} *{{l|ine-pro|*(s)kér(H)[[-ō]]}}<ref name="EDL"/> **{{desc|itc-pro|*karō}} *{{l|ine-pro||*skēr-is}} **{{desc|gem-pro|*skēriz}} {{see desc}} *{{l|ine-pro||*(s)kér-mn̥ ~ *(s)kr̥-mén-s}} **{{desc|iir-pro|*čárma}} {{see desc}} *{{l|ine-pro||*(s)kér-mō}} **{{desc|ine-bsl-pro|*kremō|unc=1}} ***{{desc|sla-pro|*kremy}} {{see desc}} *{{l|ine-pro|*(s)kér[[-tis|-ti-s]] ~ *(s)kr̥-téy-s}} **{{desc|iir-pro|alt=*(s)kr̥tíṣ}} ***{{desc|ira-pro|alt=*(s)kr̥tíṣ}} ****{{desc|sa|कृ॒ति}} **{{desc|gem-pro|*skurdiz}} {{see desc}} *{{l|ine-pro||*(s)kor-éh₂}} **{{desc|itc-pro|*korā}} {{see desc}} **{{desc|gem-pro|*skarō}} {{see desc}} **{{desc|ine-bsl-pro|*karā́ˀ}} ***{{desc|sla-pro|*kora}} {{see desc}} **{{desc|ine-bsl-pro|*skarā́ˀ}} ***{{desc|sla-pro|*skora}} {{see desc}} *{{l|ine-pro||*(s)kor-os}} **{{desc|gem-pro|*skaraz}} ***{{desc|ang|scear}} ****{{desc|en|share}} ***{{desc|goh|skar}} ****{{desc|de|Schar}} *{{l|ine-pro||*(s)kor-mós}} **{{desc|grk-pro||alt=*kormós}} ***{{desc|grc|κορμός}} {{see desc}} *{{l|ine-pro||*(s)kor-tós}} **{{desc|iir-pro|alt=*(s)kartás}} ***{{desc|inc-pro|alt=*(s)kartás}} ****{{desc|sa|क॒र्त}} **{{desc|ine-bsl-pro|*kártas}} ***{{desc|sla-pro|*kõrtъ}} {{see desc}} *{{l|ine-pro||*(s)kor-yo-}} **{{desc|itc-pro|*korjom}} ***{{desc|la|corium}} {{see desc}} *{{l|ine-pro||*(s)kr̥-tós}} **{{desc|itc-pro|*kortos}} ***{{desc|la|curtus}} {{see desc}} **{{desc|gem-pro|*skurtaz}} {{see desc}} **{{desc|ine-bsl-pro|}} ***{{desc|sla-pro|*krъtъ}} {{see desc}} ;形成不明: *{{desc|hyx-pro|-}} **{{desc|xcl|քերծեմ}} {{see desc}} *{{desc|cel-pro|*korukos}} {{see desc}} *{{desc|gem-pro|*skirmiz}} {{see desc}} *{{desc|gem-pro|*skurō}} **{{desc|non|skor}} {{see desc}} *{{desc|gem-pro|*skuriz}} **{{desc|odt|*skuri}} ***{{desc|dum|schore}}, {{l|dum|schuere}} ****{{desc|nl|scheur}} *{{desc|ine-bsl-pro|-}} **{{desc|bor=1|fiu-fin-pro|*kirves}} {{see desc}} **{{desc|lv|cirvis}} **{{desc|lt|kirvis}} =====拡張===== *{{l|ine-pro|*(s)kerb-}} *{{l|ine-pro||*(s)kerdʰ-}}: {{l|ine-pro|*(s)kérdʰeti}}を参照 *{{l|ine-pro|*(s)kerdʰ-}}? *{{l|ine-pro|*kerp-|*ker-p-}} *{{l|ine-pro|*kers-|*(s)ker-s-}} *{{l|ine-pro|*(s)kert-|*(s)ker-t-}} *{{l|ine-pro||*skr-éy-ti}}? **{{desc|der=1|ine-pro|*(s)kreybʰ-|alt=*(s)kr-ey-bʰ-}} **{{desc|der=1|ine-pro||alt=*(s)kr-ey-p-}} ***{{desc|ine-bsl-pro|}} ****{{desc|lv|skrīpât}} *{{l|ine-pro||*(s)kr-ew-}} **{{desc|itc-pro|}} ***{{desc|la|scrūta}} *{{l|ine-pro||*(s)kr-ew-p-}} **{{desc|itc-pro|}} ***{{desc|la|scrūpus}} ==={{etym}}2=== ===={{root}}==== {{ine-root}} #{{おくりがな2|曲|ま|げる|まげる}}。 ====={{drv}}===== *{{l|ine-pro||*(s)kr̥-tós}} **{{desc|grk-pro|}} ***{{desc|grc|κυρτός}} *{{l|ine-pro||*(s)kr̥-wós}} **{{desc|itc-pro|*korwos}} ***{{desc|la|curvus}} {{see desc}} *{{l|ine-pro||*(s)kr̥-kr̥-||pos=duplicated}} **{{desc|itc-pro|*karkros}}, {{l|itc-pro|*kankros}} ***{{desc|la|carcer}}, {{l|la|cancer}} {{see desc}} *{{l|ine-pro||*(s)ker-k-}} **{{desc|grk-pro|}} ***{{desc|grc|κίρκος}}, {{m|grc|κρίκος}} {{see desc}} ****{{desc|la|circus|bor=1}} {{see desc}} **{{desc|sla-pro|*kъrkъ}} {{see desc}} *{{l|ine-pro||*(s)kr̥-tiH-neh₂||pos=extended}} **{{desc|itc-pro|*korteinā|unc=1}} ***{{desc|la|cortīna|id=cauldron}} {{see desc}} *{{l|ine-pro||*(s)ker-ew-}} **{{desc|grk-pro|}} ***{{desc|grc|κορωνός}}, {{l|grc|κορώνη}} *{{l|ine-pro||*(s)kor-os}} **{{desc|cel-pro|*koros}} {{see desc}} *{{l|ine-pro||*(s)kre-i-}} **{{l|ine-pro||*(s)krey-wos}} ***{{desc|ine-bsl-pro|*kreiwás}} ****{{desc|sla-pro|*krivъ}} **{{l|ine-pro||*(s)krey-n-yo-m}} ***{{desc|itc-pro|*skreiniom}} ****{{desc|la|scrīnium}} {{see desc}} *{{l|ine-pro||*(s)kre-i-s-}} **{{desc|itc-pro|}} ***{{desc|la|crīnis}}, {{l|la|crista}}, {{l|la|crispus}} *{{l|ine-pro||*(s)kre-u-k-}} **{{desc|itc-pro|*kruks}} ***{{desc|la|crux}} *{{l|ine-pro||*(s)kre-n-gʰ-}} **{{desc|gem-pro|*hringaz}} {{see desc}} **{{desc|sa|कृणत्ति}} **{{desc|sa|क्रुञ्चति}} **{{desc|sa|क्रौञ्च}} **{{desc|sla-pro|*krǫgъ}} {{see desc}} ==={{seealso}}=== *{{l|ine-pro|*(s)kel-}} *{{l|ine-pro|*(s)kelH-}} ===脚注=== {{Reflist}} h1htl32iqvrtmu81f5l93wehc0z420g zhízhǎng 0 589316 2280917 2026-06-08T13:40:50Z M-30722 1202 新規作成 2280917 wikitext text/x-wiki =={{L|zh}}== ==={{homonym}}=== {{zh-homonym}} *【{{zh-l|職掌}}】①[[職掌]]、[[職務]]、[[職分]]。②職務として[[担当]]する。 *【{{zh-l|執掌}}】(権力などを)[[にぎる|握る]]。 pgok76j53ts06en9i7mfhr92l39pqa4 執掌 0 589317 2280919 2026-06-08T13:44:06Z M-30722 1202 新規作成 2280919 wikitext text/x-wiki =={{L|zh}}== {{zh-cat|zhi2zhang3|動詞}} {{yue-cat|jap1jeung2|動詞}} {{nan-cat|chip4chiong2|動詞}} ==={{pron}}=== {{cmn-pron|zhízhǎng}} {{yue-pron|zap1 zoeng2}} {{nan-pron|qz,xm:chip-chióng/zz:chip-chiáng}} ==={{verb}}=== {{zhchars|s=执掌}} #(権力などを){{おくりがな2|握|にぎ|る|にぎる}}。 9yq506wi5xs72fltxozktzzsvehpxzh 执掌 0 589318 2280920 2026-06-08T13:44:28Z M-30722 1202 新規作成 2280920 wikitext text/x-wiki =={{L|zh}}== {{zh-cat|zhi2zhang3|動詞}} {{yue-cat|jap1jeung2|動詞}} {{nan-cat|chip4chiong2|動詞}} ==={{pron}}=== {{cmn-pron|zhízhǎng|z=n}} {{yue-pron|zap1 zoeng2|h=n}} {{nan-pron|qz,xm:chip-chióng/zz:chip-chiáng}} ==={{verb}}=== {{zhchars|t=執掌}} #(権力などを){{おくりがな2|握|にぎ|る|にぎる}}。 pl40mqkizr0bg7jnaiwat35h03wb5jk tumeur 0 589319 2280952 2026-06-08T14:19:55Z M-30722 1202 [[en:tumeur]]より 2280952 wikitext text/x-wiki =={{L|fr}}== ==={{etym}}=== {{etyl|fro|fr}} {{m|fro|tumour}} < {{etyl|la|fr}} {{m|la|tumor}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|LL-Q150 (fra)-DSwissK-tumeur.wav|a=Valais}} * {{音声|fr|LL-Q150 (fra)-Poslovitch-tumeur.wav|a=Vosges}} * {{音声|fr|LL-Q150 (fra)-Bananax47-tumeur.wav|a=Agen}} ==={{noun}}=== {{fr-noun|f}} #{{タグ|fr|腫瘍学}}[[腫瘍]]。 41411yhb3xhzxf5fpb44qznhc562jcg tumeurs 0 589320 2280953 2026-06-08T14:20:25Z M-30722 1202 新規作成 2280953 wikitext text/x-wiki =={{L|fr}}== ==={{noun}}=== {{head|fr|plural|g=f}} #{{plural of|fr|tumeur}} 6g3haj5elfo3s6m395tguv1udr2myz9 tumour 0 589321 2280954 2026-06-08T14:24:36Z M-30722 1202 [[en:tumour]]より 2280954 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{etyl|enm}} {{m|enm|tumour}} < {{etyl|fro}} {{m|fro|tumour}} < {{etyl|la}} {{m|la|tumor}} < {{m|la|tumēre}} < {{etyl|ine-pro}} {{m|ine-pro|*tewh₂-}} ==={{noun}}=== {{en-noun}} #{{タグ|en|英連邦|腫瘍学}}{{l|en|tumor}}の異綴。 ===={{drv}}==== {{col3|lang=en|antitumour|intertumour|paratumour|brain tumour|hypertumour|intratumour|microtumour|nontumourigenic|pretumoural|protumour|peritumour|pseudotumour|tumoured|tumouricidal|tumourigenesis|tumourigenetic|tumourless|tumourlike|tumourous|tumoursphere|Wilms tumour|Wilms' tumour}} =={{L|fro}}== ==={{alter}}=== * {{l|fro|tumeur}} ==={{etym}}=== {{bor|fro|la|tumor}} ==={{noun}}=== {{fro-noun|f}} #{{タグ|fro|腫瘍学}}[[腫瘍]]。 ===={{desc}}==== * {{desc|fr|tumeur}} * {{desc|bor=1|enm|tumour}} ** {{desc|en|tumour|tumor}} =={{L|enm}}== ==={{etym}}=== {{bor|enm|fro|tumour}} < {{etyl|la|enm}} {{m|la|tumor}} ==={{pron}}=== * {{IPA|lang=enm|ˈtiu̯mur|tiu̯ˈmuːr}} ==={{noun}}=== {{enm-noun|tumours}} {{タグ|enm|Late ME}} #{{タグ|enm|腫瘍学}}[[腫瘍]]。 #{{おくりがな3|腫|は|れ|物|もの||はれもの}}の成長]]。 ===={{desc}}==== * {{desc|en|tumour|tumor}} pc5j960q6ruq0z4so2kep331iavgr1m 2280957 2280954 2026-06-08T14:28:12Z M-30722 1202 /* {{noun}} */ 2280957 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{etyl|enm}} {{m|enm|tumour}} < {{etyl|fro}} {{m|fro|tumour}} < {{etyl|la}} {{m|la|tumor}} < {{m|la|tumēre}} < {{etyl|ine-pro}} {{m|ine-pro|*tewh₂-}} ==={{noun}}=== {{en-noun}} #{{タグ|en|英連邦|腫瘍学}}{{l|en|tumor}}の異綴。 ===={{drv}}==== {{col3|lang=en|antitumour|intertumour|paratumour|brain tumour|hypertumour|intratumour|microtumour|nontumourigenic|pretumoural|protumour|peritumour|pseudotumour|tumoured|tumouricidal|tumourigenesis|tumourigenetic|tumourless|tumourlike|tumourous|tumoursphere|Wilms tumour|Wilms' tumour}} =={{L|fro}}== ==={{alter}}=== * {{l|fro|tumeur}} ==={{etym}}=== {{bor|fro|la|tumor}} ==={{noun}}=== {{fro-noun|f}} #{{タグ|fro|腫瘍学}}[[腫瘍]]。 ===={{desc}}==== * {{desc|fr|tumeur}} * {{desc|bor=1|enm|tumour}} ** {{desc|en|tumour|tumor}} =={{L|enm}}== ==={{etym}}=== {{bor|enm|fro|tumour}} < {{etyl|la|enm}} {{m|la|tumor}} ==={{pron}}=== * {{IPA|lang=enm|ˈtiu̯mur|tiu̯ˈmuːr}} ==={{noun}}=== {{enm-noun|tumours}} {{タグ|enm|Late ME}} #{{タグ|enm|腫瘍学}}[[腫瘍]]。 #{{おくりがな3|腫|は|れ|物|もの||はれもの}}の[[成長]]。 ===={{desc}}==== * {{desc|en|tumour|tumor}} ryxb3edn1sag79lyhpaljrookp2qglq tumours 0 589322 2280956 2026-06-08T14:27:52Z M-30722 1202 新規作成 2280956 wikitext text/x-wiki =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|tumour}} =={{L|enm}}== ==={{noun}}=== {{head|enm|plural}} #{{plural of|enm|tumour}} d23hm1wxfmuby8r1c22oli7ehlmuszu Tumor 0 589323 2280960 2026-06-08T14:32:22Z M-30722 1202 [[en:Tumor]]より 2280960 wikitext text/x-wiki {{also|tumor|tumör|tümör}} =={{L|de}}== ==={{etym}}=== {{bor|de|la|tumor}} ==={{pron}}=== * {{IPA|lang=de|ˈtuːˌmoːɐ̯|tuˈmoːɐ̯}} * {{音声|de|De-Tumor.ogg|a=Berlin}} ==={{noun}}=== {{de-noun|g=m|genitive=Tumors|plural=Tumoren|plural2=Tumore}} #{{タグ|de|腫瘍学}}[[腫瘍]]。 #: {{syn|de|Geschwulst}} {{de-decl-noun-m|s|en}} {{de-decl-noun-m|s|e}} czronwomtfy5z53spgxtlirldhpnkzm カテゴリ:ドイツ語 腫瘍学 14 589324 2280962 2026-06-08T14:34:12Z M-30722 1202 新規作成 2280962 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{de}}|{{de}} 科学|disp4=科学|{{de}} 医学|disp5=医学|last=腫瘍学}} * {{Pathnav|カテゴリ|分野|科学|医学|腫瘍学|last={{de}}}} </div> {{catmore}} [[カテゴリ:{{de}}_医学|*しゆようかく]] [[カテゴリ:腫瘍学|といつこ]] av1exgrg2glux1kspf5qhfxoycv420p Geschwulst 0 589325 2280964 2026-06-08T14:37:27Z M-30722 1202 [[en:Geschwulst]]より 2280964 wikitext text/x-wiki =={{L|de}}== ==={{etym}}=== {{etyl|gmh|de}} {{m|gmh|geswulst}} < {{etyl|goh|de}} {{m|goh|giswulst}} < {{etyl|gem-pro|de}} {{m|gem-pro|*swellaną}} ==={{pron}}=== * {{IPA|lang=de|ɡəˈʃvʊlst}} * {{音声|de|De-Geschwulst.ogg|a=Berlin}} ==={{noun}}=== {{de-noun|g=f|genitive=Geschwulst|plural=Geschwülste|plural2=Geschwulste|diminutive=Geschwülstchen|diminutive2=Geschwülstlein}} {{de-noun|g=n|genitive=Geschwulsts|genitive2=Geschwulstes|plural=Geschwülste|plural2=Geschwulste}} #{{タグ|de|腫瘍学}}[[腫瘍]]。 #: {{syn|de|Tumor}} o706bmz1vrwuekcl39h0au6pc5ker7n Tumors 0 589326 2280966 2026-06-08T14:40:16Z M-30722 1202 新規作成 2280966 wikitext text/x-wiki {{also|tumors|tumörs}} =={{L|de}}== ==={{pron}}=== * {{音声|de|De-Tumors.ogg|a=Berlin}} ==={{noun}}=== {{head|de|noun form}} #{{l|de|Tumor}}の単数属格。 bxno52kd801v89zry02c1m4okc2i2jh Tumore 0 589327 2280967 2026-06-08T14:41:09Z M-30722 1202 新規作成 2280967 wikitext text/x-wiki {{also|tumore}} =={{L|de}}== ==={{pron}}=== * {{音声|de|De-Tumore.ogg|a=Berlin}} ==={{noun}}=== {{head|de|noun form|g=m}} #{{l|de|Tumor}}の複数主格。 #{{l|de|Tumor}}の複数対格。 #{{l|de|Tumor}}の複数属格。 8ud0wn58rxwkp31pwj644aahx6w7e0f tumore 0 589328 2280968 2026-06-08T14:42:41Z M-30722 1202 [[en:tumore]]より 2280968 wikitext text/x-wiki {{also|Tumore}} =={{L|it}}== ==={{etym}}=== {{bor|it|la|tumor}} ==={{pron}}=== {{it-pr|tumóre}} ==={{noun}}=== {{it-noun|tumor|m|e|i}} #{{タグ|it|腫瘍学}}[[腫瘍]]。 #: {{syn|it|cancro|neoplasia|brutto male}} ===={{drv}}==== * {{l|it|tumorale}} ===={{seealso}}==== * {{l|it|carcinoma}} * {{l|it|oncologia}} ==={{anag}}=== * {{anagrams|it|a=emortu|muterò}} =={{L|la}}== ==={{noun}}=== {{la-noun-form|tumōre}} #{{l|la|tumor}}の単数奪格。 p31jmoscnlxio8vfblgr2rupnns61xu tumori 0 589329 2280969 2026-06-08T14:44:10Z M-30722 1202 新規作成 2280969 wikitext text/x-wiki =={{L|it}}== ==={{noun}}=== {{head|it|plural|g=m}} #{{plural of|it|tumore}} ==={{anag}}=== * {{anagrams|it|a=imortu|rimuto|rimutò}} =={{L|la}}== ==={{noun}}=== {{la-noun-form|tumōrī}} #{{l|la|tumor}}の単数与格。 lpx83iv7wc9dlejv7tty38g6b57bdt6 oncologia 0 589330 2280970 2026-06-08T14:46:19Z M-30722 1202 [[en:oncologia]]より 2280970 wikitext text/x-wiki {{also|oncología}} =={{L|it}}== ==={{etym}}=== {{affix|it|onco-|-logia}} ==={{pron}}=== {{it-pr}} ==={{noun}}=== {{it-noun|oncologi|f|a|e}} #{{topcat|it|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|it|oncologo}} * {{l|it|oncologico}} ==={{anag}}=== * {{anagrams|it|a=acgilnooo|giocolano}} =={{L|ca}}== ==={{pron}}=== * {{ca-IPA}} * {{音声|ca|LL-Q7026 (cat)-Marvives-oncologia.wav|a=Barcelona}} * {{rhymes|lang=ca|ia|s=5}} ==={{noun}}=== {{ca-noun|f|-}} #{{topcat|ca|腫瘍学}}[[腫瘍学]]。 ===={{drv}}==== * {{l|ca|oncològic}} ===={{rel}}==== * {{l|ca|oncòleg}} =={{L|pt}}== ==={{etym}}=== {{affix|pt|onco-|-logia}} ==={{pron}}=== {{pt-IPA}} * {{hyph|pt|on|co|lo|gi|a}} ==={{noun}}=== {{pt-noun|f|-}} #{{topcat|pt|腫瘍学}}[[腫瘍学]]。 ffj4jcreqmnwef362d7jc296jouaqyi oncologie 0 589331 2280971 2026-06-08T14:50:56Z M-30722 1202 [[en:oncologie]]より 2280971 wikitext text/x-wiki =={{L|it}}== ==={{noun}}=== {{head|it|plural|g=f}} #{{plural of|it|oncologia}} ==={{anag}}=== * {{anagrams|it|a=cegilnooo|enologico|neologico}} =={{L|nl}}== ==={{etym}}=== {{etyl|grc|nl}} {{m|grc|ὄγκος}} ==={{pron}}=== * {{IPA|lang=nl|ˌɔŋ.koː.loːˈɣi}} * {{音声|nl|Nl-oncologie.ogg}} * {{hyphenation|on|co|lo|gie}} * {{rhymes|lang=nl|i}} ==={{noun}}=== {{nl-noun|g=f|oncologieën|pl2=oncologies|oncologietje}} #{{topcat|nl|腫瘍学}}[[腫瘍学]]。 ===={{drv}}==== * {{l|nl|kinderoncologie}} ===={{rel}}==== * {{l|nl|oncoloog}} * {{l|nl|oncologisch}} ===={{desc}}==== * {{desc|id|bor=1|onkologi}} =={{L|fr}}== ==={{etym}}=== {{affix|fr|onco-|-logie}} ==={{pron}}=== * {{fr-IPA}} * {{音声|fr|LL-Q150 (fra)-Poslovitch-oncologie.wav|a=Vosges}} * {{音声|fr|LL-Q150 (fra)-DSwissK-oncologie.wav|a=Valais}} * {{音声|fr|LL-Q150 (fra)-Bananax47-oncologie.wav|a=Agen}} ==={{noun}}=== {{fr-noun|f|unc}} #{{topcat|fr|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|fr|oncologue}} ===={{desc}}==== * {{desc|tr|onkoloji|bor=1}} =={{L|ro}}== ==={{etym}}=== {{bor|ro|it|oncologia}} ==={{noun}}=== {{ro-noun|f|-}} #{{topcat|ro|腫瘍学}}[[腫瘍学]]。 {{ro-noun-f-ie|oncologi|n=sg}} ===={{rel}}==== * {{l|ro|oncolog}} * {{l|ro|oncologic}} d6smnvlqvbjnhm9lm1uit4714dt4ffq oncologies 0 589332 2280972 2026-06-08T14:51:50Z M-30722 1202 新規作成 2280972 wikitext text/x-wiki =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|oncology}} 8ey12fmlngs3tauzfe05yfflwbu2c8t oncology 0 589333 2280973 2026-06-08T14:54:03Z M-30722 1202 [[en:oncology]]より 2280973 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== 1857年初出。{{surf|en|onco-|-logy}} ==={{pron}}=== * {{音声|en|en-us-oncology.ogg|a=US}} * {{IPA|lang=en|ɒŋˈkɒləd͡ʒi}} * {{IPA|lang=en|ɒnəˈkɒləd͡ʒi|a=proscribed}} ==={{noun}}=== {{en-noun|oncologies|-}} #{{topcat|en|腫瘍学}}[[腫瘍学]]。 #: {{hypo|en|gyneco-oncology|neuro-oncology|cancerology}} ===={{drv}}==== {{col3|lang=en|biooncology|cardiooncology|dermatooncology|psychooncology|radiooncology|gyneco-oncology|neuro-oncology|oncologic,oncological|oncologically|oncologist}} ===={{rel}}==== {{col3|lang=en|oncogene|oncogenesis|oncogenetic|oncogenetics|oncogenic|oncogenics|oncogenome|oncogenomic|oncogenomics|oncoprotein|oncoproteogenome|oncoproteome|oncoproteomic|oncoproteomics|proto-oncogene|proto-oncogenic}} see5fgvippasamb0rspnas54g66jkm4 onkologi 0 589334 2280975 2026-06-08T15:05:03Z M-30722 1202 [[en:onkologi]]より 2280975 wikitext text/x-wiki =={{L|id}}== ==={{etym}}=== {{bor|id|nl|oncologie}} ==={{noun}}=== {{id-noun}} #{{topcat|id|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|id|onkolog}} * {{l|id|onkologis}} =={{L|sv}}== ==={{noun}}=== {{sv-noun|c}} #{{topcat|sv|腫瘍学}}[[腫瘍学]]。 {{sv-noun-unc-irreg-c|2=onkologin}} ===={{rel}}==== * {{l|sv|onkolog}} * {{l|sv|onkologisk}} ===={{seealso}}==== * {{l|sv|cancer}} =={{L|fi}}== ==={{pron}}=== {{fi-p|onko-logi}} ==={{noun}}=== {{fi-noun}} #{{topcat|fi|腫瘍学}}[[腫瘍学]]。 {{fi-decl-risti|onkolog|||a}} tmwsd7lwvq25qwvex6xvwbik7cbdbdh oncological 0 589335 2280976 2026-06-08T15:06:51Z M-30722 1202 [[en:oncological]]より 2280976 wikitext text/x-wiki =={{L|en}}== ==={{etym}}=== {{affix|en|oncology|-ical}} ==={{pron}}=== * {{IPA|lang=en|ˌɒŋkəˈlɒd͡ʒɪkəɫ}} ==={{adjective}}=== {{en-adj|-}} #{{タグ|en|腫瘍学|label=no}}[[腫瘍学]]の。 ===={{syn}}==== * {{l|en|oncologic}} ===={{drv}}==== * {{l|en|hematooncological}} * {{l|en|neurooncological}} * {{l|en|oncologically}} * {{l|en|psychooncological}} * {{l|en|radiooncological}} 781ko79xbtjusigrjt8dgwhfck00rvp onkologis 0 589336 2280978 2026-06-08T15:09:09Z M-30722 1202 [[en:onkologis]]より 2280978 wikitext text/x-wiki =={{L|id}}== ==={{etym}}=== {{bor|id|nl|oncologisch}} ==={{adjective}}=== {{id-adj}} #{{タグ|id|腫瘍学|label=no}}[[腫瘍学]]の。 ===={{rel}}==== * {{l|id|onkolog}} * {{l|id|onkologi}} =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|onkologi}}の非限定単数属格。 04vwsfa3rb0zaw51j26tv1kfhe3htv2 oncologisch 0 589337 2280979 2026-06-08T15:10:32Z M-30722 1202 [[en:oncologisch]]より 2280979 wikitext text/x-wiki =={{L|nl}}== ==={{etym}}=== {{affix|nl|oncologie|-isch}} ==={{pron}}=== * {{IPA|lang=nl|ˌɔŋ.koːˈloː.ɣis}} * {{音声|nl|Nl-oncologisch.ogg}} * {{hyphenation|on|co|lo|gisch}} * {{rhymes|lang=nl|oːɣis}} ==={{adjective}}=== {{nl-adj|-}} #{{タグ|nl|腫瘍学|label=no}}[[腫瘍学]]の。 {{nl-decl-adj||-}} ===={{rel}}==== * {{l|nl|oncologie}} * {{l|nl|oncoloog}} ===={{desc}}==== * {{desc|id|bor=1|onkologis}} lcks9zb43flhmk689jxq663bd55ne6c onkologins 0 589338 2280980 2026-06-08T15:11:28Z M-30722 1202 新規作成 2280980 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|onkologi}}の限定単数属格。 brvcijfjppoty7gzxajx2joo77posiz onkologin 0 589339 2280981 2026-06-08T15:11:55Z M-30722 1202 新規作成 2280981 wikitext text/x-wiki {{also|Onkologin}} =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|onkologi}}の限定単数形。 t06f2o5dhkflf4wt2o03nwe2i579id5 onkoloji 0 589340 2280982 2026-06-08T15:13:25Z M-30722 1202 [[en:onkoloji]]より 2280982 wikitext text/x-wiki =={{L|tr}}== ==={{etym}}=== {{bor|tr|fr|oncologie}} ==={{pron}}=== * {{IPA|lang=tr|ɔn.kɔ.lɔ.ʒi}} ==={{noun}}=== {{tr-noun|yi|ler}} #{{topcat|tr|腫瘍学}}[[腫瘍学]]。 {{tr-infl-noun-v|i}} g05k8mol945nj24646naiohgsbfpa3j oncología 0 589341 2280983 2026-06-08T15:14:54Z M-30722 1202 [[en:oncología]]より 2280983 wikitext text/x-wiki {{DEFAULTSORT:oncologia}} {{also|oncologia}} =={{L|es}}== ==={{etym}}=== {{affix|es|onco-|-logía}} ==={{pron}}=== {{es-pr}} ==={{noun}}=== {{es-noun|f|-}} #{{topcat|es|腫瘍学}}[[腫瘍学]]。 ===={{drv}}==== * {{l|es|oncológico}} ===={{rel}}==== * {{l|es|oncólogo}} neqg8hlqp6c0teva3bwh0oew32zp3wk Onkologie 0 589342 2280984 2026-06-08T15:16:30Z M-30722 1202 [[en:Onkologie]]より 2280984 wikitext text/x-wiki {{also|onkologie}} =={{L|de}}== ==={{pron}}=== * {{IPA|lang=de|ˌɔŋkoloˈɡiː}} * {{音声|de|De-Onkologie.ogg|a=Berlin}} ==={{noun}}=== {{de-noun|g=f||-}} #{{topcat|de|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|de|Onkologe}} * {{l|de|Onkologin}} * {{l|de|onkologisch}} hwe1clu862qaq8bbau6i1l2pm7wtznw onkologie 0 589343 2280985 2026-06-08T15:17:45Z M-30722 1202 [[en:onkologie]]より 2280985 wikitext text/x-wiki {{also|Onkologie}} =={{L|cs}}== ==={{pron}}=== * {{cs-IPA}} ==={{noun}}=== {{cs-noun|f}} #{{topcat|cs|腫瘍学}}[[腫瘍学]]。 {{cs-ndecl|<f>}} ===={{rel}}==== * {{l|cs|onkolog}} * {{l|cs|onkologický}} bhn8kijdisaf36fdontlvgox5fj2z7k oncoloxía 0 589344 2280986 2026-06-08T15:19:12Z M-30722 1202 [[en:oncoloxía]]より 2280986 wikitext text/x-wiki {{DEFAULTSORT:oncoloxia}} =={{L|ast}}== ==={{noun}}=== {{ast-noun|f|-}} #{{topcat|ast|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|ast|oncólogu}} * {{l|ast|oncolóxicu}} =={{L|gl}}== ==={{noun}}=== {{gl-noun|f|-}} #{{topcat|gl|腫瘍学}}[[腫瘍学]]。 ===={{rel}}==== * {{l|gl|oncólogo}} * {{l|gl|oncolóxico}} g3pmrg1i9xg5354fwfm47crifqsnfu0 онкология 0 589345 2280987 2026-06-08T15:20:44Z M-30722 1202 [[en:онкология]]より 2280987 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гия}} * {{音声|ru|LL-Q7737 (rus)-Jordónus-онкология.wav|a=Moscow}} ==={{noun}}=== {{ru-noun+|онколо́гия}} #{{topcat|ru|腫瘍学}}[[腫瘍学]]。 #{{タグ|ru|婉曲表現}}[[癌]]。 {{ru-noun-table|онколо́гия}} ===={{rel}}==== * {{l|ru|онко́лог}} * {{l|ru|онкологи́ческий}} 3m0mxw9s8da7r8obpulcpuhk6a2re9g онкологии 0 589346 2280988 2026-06-08T15:22:03Z M-30722 1202 新規作成 2280988 wikitext text/x-wiki {{also|онкологий}} =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гии}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гии|g=f-in}} #{{l|ru|онколо́гия}}の複数主格。 #{{l|ru|онколо́гия}}の単数生格。 #{{l|ru|онколо́гия}}の単数与格。 #{{l|ru|онколо́гия}}の複数対格。 #{{l|ru|онколо́гия}}の単数前置格。 q09obfp8a1ut72vrqtiblf22r6bg0ge онкологий 0 589347 2280989 2026-06-08T15:22:20Z M-30722 1202 新規作成 2280989 wikitext text/x-wiki {{also|онкологии}} =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гий}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гий|g=f-in}} #{{l|ru|онколо́гия}}の複数生格。 bu4di1efnqfvmmlxrrtabio4n37m86v онкологиями 0 589348 2280990 2026-06-08T15:23:06Z M-30722 1202 新規作成 2280990 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гия̣ми}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гиями|g=f-in}} #{{l|ru|онколо́гия}}の複数造格。 j03nvi2mhjshn1cq7ambt9vr449b5ru онкологиям 0 589349 2280991 2026-06-08T15:23:21Z M-30722 1202 新規作成 2280991 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гия̣м}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гиям|g=f-in}} #{{l|ru|онколо́гия}}の複数与格。 6sdq2gow33rdamq0i5c44zk9eveck90 онкологиях 0 589350 2280992 2026-06-08T15:23:46Z M-30722 1202 新規作成 2280992 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гия̣х}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гиях|g=f-in}} #{{l|ru|онколо́гия}}の複数前置格。 pkb05zswd97a5gj9lo9ru6lenhcxhq6 онкологиею 0 589351 2280993 2026-06-08T15:24:07Z M-30722 1202 新規作成 2280993 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гиею}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гиею|g=f-in}} #{{l|ru|онколо́гия}}の単数造格。 47h6o19o20sk74ob8hdm18ijtclquk1 онкологию 0 589352 2280994 2026-06-08T15:24:24Z M-30722 1202 新規作成 2280994 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гию}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гию|g=f-in}} #{{l|ru|онколо́гия}}の単数対格。 nazwiydmvy1602k6kqv9kpjv6yzy7qz онкологией 0 589353 2280995 2026-06-08T15:24:40Z M-30722 1202 新規作成 2280995 wikitext text/x-wiki =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|онколо́гией}} ==={{noun}}=== {{head|ru|noun form|head=онколо́гией|g=f-in}} #{{l|ru|онколо́гия}}の単数造格。 21lt088d1zspwhugdkcdsu4pemeewax онкологический 0 589354 2280996 2026-06-08T15:27:06Z M-30722 1202 [[en:онкологический]]より 2280996 wikitext text/x-wiki =={{L|ru}}== ==={{etym}}=== {{affix|ru|онколо́гия|-и́ческий}} ==={{pron}}=== * {{ru-IPA|онкологи́ческий}} ==={{adjective}}=== {{ru-adj|онкологи́ческий|-}} #{{タグ|ru|腫瘍学|label=no}}[[腫瘍学]]の。 {{ru-decl-adj|онкологи́ческий|-}} ===={{rel}}==== * {{l|ru|онколо́гия}} * {{l|ru|онко́лог}} n0qkw9dz0id0kvx9gpkixyflhl6zhw4 почка 0 589355 2281004 2026-06-08T15:46:15Z M-30722 1202 [[en:почка]]より 2281004 wikitext text/x-wiki =={{L|bg}}== ==={{pron}}=== {{bg-pr|по́чка|a=[KK]}} ==={{noun}}=== {{bg-noun|по́чка|f}} {{タグ|bg|方言}} #(溝と陸の)[[境界]]。 #{{ふりがな|縁|へり}}、{{ふりがな|際|きわ}}。 {{bg-ndecl|по́чка<>}} ===={{coor}}==== * {{l|bg|заста́ва}} * {{l|bg|прегра́да}} * {{l|bg|межда́}} * {{l|bg|гра́ница}} * {{l|bg|разде́л}}, {{l|bg|преде́л}} * {{l|bg|кро́ма}} (方言) =={{L|ru}}== ==={{pron}}=== * {{ru-IPA|по́чка}} * {{音声|ru|Ru-почка.ogg}} ==={{etym}}1=== {{etyl|orv|ru}} {{m|orv|почька}} ===={{noun}}==== {{ru-noun+|по́чка|*}} #{{タグ|ru|解剖学}}[[腎臓]]。 {{ru-noun-table|по́чка|*}} {{ru-noun-table|по́чка|*|old=y}} ====={{drv}}===== * {{l|ru|по́здно пить боржо́ми, когда́ по́чки отказа́ли}} ====={{desc}}===== * {{desc|hy|պոչկա|bor=1}} * {{desc|izh|pocka|bor=1}} ==={{etym}}2=== {{etyl|orv|ru}} {{m|orv|почька}} < {{etyl|sla-pro|ru}} {{m|sla-pro|*pъťьka}} ===={{noun}}==== {{ru-noun+|по́чка|*}} #{{タグ|ru|植物学}}{{ふりがな|芽|め}}、{{ふりがな|蕾|つぼみ}}。 {{ru-noun-table|по́чка|*}} {{ru-noun-table|по́чка|*|old=y}} ====={{desc}}===== * {{desc|izh|pocka|bor=1}} othkum1zjedqby2qzogabw3jl12uzxe онкологія 0 589356 2281009 2026-06-08T15:58:40Z M-30722 1202 [[en:онкологія]]より 2281009 wikitext text/x-wiki {{also|онкология}} =={{L|uk}}== ==={{etym}}=== {{etyl|grc|uk}} {{m|grc|ὄγκος}} ==={{pron}}=== * {{uk-IPA|онколо́гія}} * {{音声|uk|LL-Q8798 (ukr)-Tohaomg-онкологія.wav}} ==={{noun}}=== {{uk-noun|онколо́гія<sg>|adj=онкологі́чний}} #{{topcat|uk|腫瘍学}}[[腫瘍学]]。 {{uk-ndecl|онколо́гія<sg>}} ===={{rel}}==== * {{l|uk|онко́лог|g=m}} ==={{seealso}}=== * {{l|uk|пухли́на|g=f}} 3u1c0xldsc5zaajlk53iyfmkjlnqhls пухлина 0 589357 2281010 2026-06-08T16:02:29Z M-30722 1202 [[en:пухлина]]より 2281010 wikitext text/x-wiki =={{L|uk}}== ==={{etym}}=== {{m|uk|пу́хнути|g=impf}} ==={{pron}}=== * {{uk-IPA|пухли́на}} ==={{noun}}=== {{uk-noun|пухли́на<>}} #{{おくりがな2|腫|は|れ|はれ}}、{{おくりがな3|腫|は|れ|物|もの||はれもの}}。 #{{タグ|uk|腫瘍学}}[[腫瘍]]、[[新生物]]。 #:{{syn|uk|новоутво́рення}} {{uk-ndecl|пухли́на<>}} 1seib9evhdad7frhoqu0is7nhfdxzli пухліна 0 589358 2281011 2026-06-08T16:04:16Z M-30722 1202 [[en:пухліна]]より 2281011 wikitext text/x-wiki =={{L|be}}== ==={{etym}}=== {{m|be|пу́хнуць|g=impf}} ==={{pron}}=== * {{be-IPA|пухлі́на}} ==={{noun}}=== {{be-noun|пухлі́на<>}} #{{おくりがな2|腫|は|れ|はれ}}、{{おくりがな3|腫|は|れ|物|もの||はれもの}}。 #{{タグ|be|腫瘍学}}[[腫瘍]]、[[新生物]]。 {{be-ndecl|пухлі́на<>}} 37ecxdpt5tsefd5di555zpla0pc52el онкологија 0 589359 2281012 2026-06-08T16:07:33Z M-30722 1202 [[en:онкологија]]より 2281012 wikitext text/x-wiki =={{L|sh}}== ==={{pron}}=== * {{IPA|lang=sh|onkolǒɡija}} * {{hyphenation|он|ко|ло|ги|ја}} ==={{noun}}=== {{sh-noun+|head=онколо̀гија|g=f}} #{{topcat|sh|腫瘍学}}[[腫瘍学]]。 {{sh-decl-noun-sing|онкологија|онкологије|онкологији|онкологију|онкологијо|онкологији|онкологијом}} =={{L|mk}}== ==={{pron}}=== * {{mk-IPA}} ==={{noun}}=== {{mk-noun|f|adj=онколошки}} #{{topcat|mk|腫瘍学}}[[腫瘍学]]。 {{mk-decl-noun-f-ј|онкологи|n=sg}} 0tj80ghafi9r3uw3wzs0aexaq4o3ni1 onkologija 0 589360 2281013 2026-06-08T16:08:21Z M-30722 1202 新規作成 2281013 wikitext text/x-wiki =={{L|sh}}== ==={{pron}}=== * {{IPA|lang=sh|onkolǒɡija}} * {{hyphenation|on|ko|lo|gi|ja}} ==={{noun}}=== {{sh-noun+|head=onkològija|g=f}} #{{topcat|sh|腫瘍学}}[[腫瘍学]]。 {{sh-decl-noun-sing|onkologija|onkologije|onkologiji|onkologiju|onkologijo|onkologiji|onkologijom}} e1yhdohqr5as0lsch0cgfhrhveap5do onkológia 0 589361 2281014 2026-06-08T16:10:41Z M-30722 1202 [[en:onkológia]]より 2281014 wikitext text/x-wiki {{DEFAULTSORT:onkologia}} {{also|onkologia|onkologią}} =={{L|hu}}== ==={{etym}}=== {{bor|hu|la|oncologia}} < {{etyl|grc|hu}} {{m|grc|ὄγκος}} + {{m|grc|-λογία}} ==={{pron}}=== * {{hu-IPA}} * {{hyphenation|on|ko|ló|gia}} * {{rhymes|lang=hu|jɒ}} ==={{noun}}=== {{hu-noun|-}} #{{topcat|hu|腫瘍学}}[[腫瘍学]]。 {{hu-infl-nom|onkológiá|o|n=sg}}{{hu-pos-tok|onkológiá|n=sg}} ===={{drv}}==== * {{l|hu|onkológiai}} ===={{rel}}==== * {{l|hu|onkológus}} ==={{seealso}}=== * {{l|hu|rákgyógyászat}} * {{l|hu|rákkutatás}} 0b9ok3dimz7z3bxnosukskrr13ge2yy onkologia 0 589362 2281015 2026-06-08T16:12:51Z M-30722 1202 [[en:onkologia]]より 2281015 wikitext text/x-wiki {{also|onkológia|onkologią}} =={{L|fi}}== ==={{pron}}=== {{fi-p|onko-logia}} ==={{etym}}1=== {{affix|fi|onko-|-logia}} ===={{noun}}==== {{fi-noun}} #{{topcat|fi|腫瘍学}}[[腫瘍学]]。 {{fi-decl-kulkija|onkologi|a}} ==={{etym}}2=== ===={{noun}}==== {{head|fi|noun form}} #{{l|fi|onkologi}}の単数分格。 =={{L|pl}}== ==={{etym}}=== {{affix|pl|onko-|-logia}} ==={{pron}}=== {{pl-pr|a=LL-Q809 (pol)-Olaf-onkologia.wav}} ==={{noun}}=== {{pl-noun|f}} #{{topcat|pl|腫瘍学}}[[腫瘍学]]。 {{pl-decl-noun-f|tantum=s}} ===={{drv}}==== * (形容詞) {{l|pl|onkologiczny}} * (副詞) {{l|pl|onkologicznie}} * (名詞) {{l|pl|onkolog}} 8i14i9jtbf0n5l98o5qu2nw7iv1dgil grapple 0 589363 2281016 2026-06-08T16:28:17Z M-30722 1202 [[en:grapple]]より 2281016 wikitext text/x-wiki =={{L|en}}== ==={{alter}}=== * {{l|en|graple}} (廃用) ==={{pron}}=== * {{enPR|grăpʹəl|a=RP|a2=GA}}, {{IPA|lang=en|ˈɡɹæpəl}} * {{音声|en|en-ca-grapple.oga|a=CA}} * {{音声|en|en-au-grapple.ogg|a=AU}} * {{rhymes|lang=en|æpəl|s=2}} * {{hyphenation|grap|ple}} ==={{etym}}1=== *{{etyl|enm}} {{m|enm|*grapplen}} < {{etyl|ang}} {{m|ang|*græpplian}} < {{etyl|gem-pro}} {{m|gem-pro|*graipilōną}}, {{m|gem-pro|*grabbalōną}} < {{etyl|ine-pro}} {{m|ine-pro|*gʰrebʰ-}} *{{affix|en|grab|-le}} ===={{verb}}==== {{en-verb|grappl|ing}} #{{タグ|en|他動詞}}[[しっかり]]{{おくりがな2|掴|つか|む|つかむ}}。 #{{タグ|en|自動詞}}[[とっくみあう|取っ組み合う]]、[[格闘]]する。 #{{タグ|en|figuratively|{{m|en|with}}を伴って}}[[懸命]]に{{おくりがな3|取|と|り|組|く|む|とりくむ}}。 ====={{drv}}===== * {{l|en|gaffle}} * {{l|en|grapplehook}} * {{l|en|grapplement}} * {{l|en|grappler}} * {{l|en|grapplesome}} * {{l|en|grapple with}} * {{l|en|ungrapple}} ===={{noun}}==== {{en-noun|~}} #しっかり掴むこと。 #取っ組み合い、格闘。 ====={{drv}}===== * [[grapple plant]] ==={{etym}}2=== {{etyl|enm}} {{m|enm|*grapple}}, {{m|enm|*graple}} < {{etyl|fro}} {{m|fro|grappil}} < {{etyl|fro}} {{m|fro|grape}}, {{m|fro|grappe}}, {{m|fro|crape}} < {{etyl|frk}} {{m|gmw-pro|*krappō}} < {{etyl|ine-pro}} {{m|ine-pro|*grep-}}, {{m|ine-pro|*gremb-}} < {{m|ine-pro|*ger-}} ===={{noun}}==== {{en-noun}} #{{タグ|en|道具}}引っ掛け{{ふりがな|鉤|かぎ}}。 ===={{verb}}==== {{en-verb|grappl|ing}} #{{タグ|en|他動詞}}引っ掛け鉤で{{おくりがな3|引|ひ|っ|掛|か|ける|ひっかける}}。 #{{タグ|en|他動詞|自動詞}}よじ{{おくりがな2|登|のぼ|る|よじのぼる}}。 #{{タグ|en|自動詞}}引っ掛け鉤を使う。 ===={{drv}}==== * [[grappling tongs]] iwihlryj73a3hxhf7664kr30xe26ysc grapples 0 589364 2281017 2026-06-08T16:29:24Z M-30722 1202 新規作成 2281017 wikitext text/x-wiki =={{L|en}}== ==={{noun}}=== {{en-plural}} #{{plural of|en|grapple}} ==={{verb}}=== {{head|en|verb form}} #{{l|en|grapple}}の直説法現在第三人称単数形。 4g0v5nghfilc5ro3o9auls86lf04i6n grappled 0 589365 2281018 2026-06-08T16:29:45Z M-30722 1202 新規作成 2281018 wikitext text/x-wiki =={{L|en}}== ==={{verb}}=== {{head|en|verb form}} #{{l|en|grapple}}の過去形・過去分詞。 4foj50d82l73pskt1hhf11bxzlhbonr ὄγκος 0 589366 2281020 2026-06-08T16:38:03Z M-30722 1202 [[en:ὄγκος]]より 2281020 wikitext text/x-wiki {{DEFAULTSORT:ογκοσ}} {{also|όγκος}} =={{L|grc}}== ==={{pron}}=== {{grc-IPA}} ==={{etym}}1=== {{etyl|grk-pro|grc}} {{m|grk-pro|*ónkos}} < {{etyl|ine-pro|grc}} {{m|ine-pro|*h₂ónkos}} ===={{noun}}==== {{grc-noun|ὄγκου|m|second}} #[[カーブ]]、[[角]]。 #{{タグ|grc|道具}}{{ふりがな|鉤|かぎ}}。 {{grc-decl|ὄγκος|ὄγκου|form=M}} ==={{etym}}2=== {{etyl|ine-pro|grc}} {{m|ine-pro|*h₁onḱos}} < {{m|ine-pro|*h₁neḱ-}} か ===={{noun}}==== {{grc-noun|ὄγκου|m|second}} #{{ふりがな|嵩|かさ}}、{{ふりがな|塊|かたまり}}、[[体積]]、[[容積]]。 #{{タグ|grc|腫瘍学}}[[腫瘍]]。 #{{タグ|grc|性}}[[性的]][[いたずら]]。 #[[微塵]]。 {{grc-decl|ὄγκος|ὄγκου|form=M}} ====={{drv}}===== * {{l|grc|ὀγκηρός}} ====={{desc}}===== * {{desc|en|onco-}} * {{desc|el|όγκος}} * {{desc|es|onco-}} * {{desc|pt|onco-}} s9ylfxo8be2kutgqu7s28blllnkow3b όγκος 0 589367 2281021 2026-06-08T16:40:38Z M-30722 1202 [[en:όγκος]]より 2281021 wikitext text/x-wiki {{DEFAULTSORT:ογκοσ}} {{also|ὄγκος}} =={{L|el}}== ==={{etym}}=== {{bor|el|grc|ὄγκος}} ==={{pron}}=== * {{IPA|lang=el|ˈoŋ.ɡos}} * {{hyphenation|el|ό|γκος}} ==={{noun}}=== {{el-noun|m|όγκοι}} #{{ふりがな|嵩|かさ}}、{{ふりがな|塊|かたまり}}、[[体積]]、[[容積]]。 #{{タグ|el|腫瘍学}}[[腫瘍]]。 {{el-nM-ος-οι-2a|όγκ}} ===={{syn}}==== * {{l|el|χωρητικότητα|g=f}} ===={{rel}}==== {{top}} * {{l|el|διογκώνω}} * {{l|el|εξογκώνω}} * {{l|el|ογκόλιθος|g=m}} * {{l|el|ογκολογία|g=f}} * {{l|el|ογκολόγος|g=m|g2=f}} * {{l|el|ογκομέτρηση|g=f}} * {{l|el|ογκομετρία|g=f}} * {{l|el|ογκομετρικός}} * {{l|el|ογκόμετρο|g=n}} * {{l|el|ογκούμαι}} * {{l|el|ογκώδης}} * {{l|el|υπέρογκος}} {{bottom}} kkd3wyhq39drckonu9yr2lf6z4pob7x ογκολογία 0 589368 2281022 2026-06-08T16:42:12Z M-30722 1202 新規作成 2281022 wikitext text/x-wiki {{DEFAULTSORT:ογκολογια}} =={{L|el}}== ==={{noun}}=== {{el-noun|f|unc}} #{{topcat|el|腫瘍学}}[[腫瘍学]]。 {{el-nF-α-2a|ογκολογί}} 43u62828nl2yq6xmah347szvajhqz72 tümör 0 589369 2281024 2026-06-08T16:45:31Z M-30722 1202 [[en:tümör]]より 2281024 wikitext text/x-wiki {{DEFAULTSORT:tumor}} {{also|tumor|Tumor|tumör}} =={{L|tr}}== ==={{etym}}=== {{bor|tr|fr|tumeur}} ==={{pron}}=== * {{音声|tr|LL-Q256 (tur)-ToprakM-tümör.wav}} * {{rhymes|lang=tr|œɾ|s=2}} ==={{noun}}=== {{tr-noun|ü|ler}} #{{タグ|tr|腫瘍学}}[[腫瘍]]。 {{tr-infl-noun-c|ö|poss=1}} 0isqpia9sqw2ax51ljoy3r7fcdp0q5e tumör 0 589370 2281025 2026-06-08T16:46:29Z M-30722 1202 [[en:tumör]]より 2281025 wikitext text/x-wiki {{also|tumor|Tumor|tümör}} =={{L|sv}}== ==={{etym}}=== {{etyl|la|sv}} {{m|la|tumor}} ==={{noun}}=== {{sv-noun|c}} #{{タグ|sv|腫瘍学}}[[腫瘍]]。 {{sv-infl-noun-c-er}} 9279qqc0fug6xsjp7uzviqbyumrtxko tumörs 0 589371 2281026 2026-06-08T16:47:18Z M-30722 1202 新規作成 2281026 wikitext text/x-wiki {{also|tumors|Tumors}} =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の非限定単数属格。 r64mc6vgb48m7yg86ghhaosys4sqemg tumörens 0 589372 2281027 2026-06-08T16:47:33Z M-30722 1202 新規作成 2281027 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の限定単数属格。 prailnzcd2qqiu3ub75dmsadz2rnae1 tumören 0 589373 2281028 2026-06-08T16:47:53Z M-30722 1202 新規作成 2281028 wikitext text/x-wiki {{also|tumoren|Tumoren}} =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の限定単数形。 p1r7y8n2v73curvmsnrgpi94fajxa0d tumörers 0 589374 2281029 2026-06-08T16:48:23Z M-30722 1202 新規作成 2281029 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の非限定複数属格。 nrms8kh1pglh2lwgvrgtfjuw0thsv3b tumörernas 0 589375 2281030 2026-06-08T16:48:35Z M-30722 1202 新規作成 2281030 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の限定複数属格。 lc2895ibcccjts10ue43zq8ol0vwe6t tumörer 0 589376 2281031 2026-06-08T16:48:51Z M-30722 1202 新規作成 2281031 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の非限定複数形。 sis15t68crn5vpkp4s8pwyke0tasbpy tumörerna 0 589377 2281032 2026-06-08T16:49:03Z M-30722 1202 新規作成 2281032 wikitext text/x-wiki =={{L|sv}}== ==={{noun}}=== {{head|sv|noun form}} #{{l|sv|tumör}}の限定複数形。 8m6x7otfp48lbgj5bbpakgkxj2usb1j Tumoren 0 589378 2281033 2026-06-08T16:49:57Z M-30722 1202 新規作成 2281033 wikitext text/x-wiki {{also|tumoren|tumören}} =={{L|de}}== ==={{pron}}=== * {{音声|de|De-Tumoren.ogg|a=Berlin}} ==={{noun}}=== {{head|de|noun form|g=m}} #{{l|de|Tumor}}の複数形。 g9vb5f48748uo3m7zx2ejq81yxku6hn tumoro 0 589379 2281034 2026-06-08T16:52:21Z M-30722 1202 新規作成 2281034 wikitext text/x-wiki {{also|tumɔ́ro}} =={{L|eo}}== ==={{pron}}=== {{eo-pr}} ==={{noun}}=== {{eo-noun}} #{{タグ|eo|腫瘍学}}[[腫瘍]]。 ryusboom41xc6dts8ll0ql725mpktvg tumorojn 0 589380 2281035 2026-06-08T16:53:12Z M-30722 1202 新規作成 2281035 wikitext text/x-wiki =={{L|eo}}== ==={{noun}}=== {{eo-noun-form}} #{{l|eo|tumoro}}の複数対格。 8hy9nru4pdujxmklgem872w0zzhgx1t tumoron 0 589381 2281036 2026-06-08T16:53:26Z M-30722 1202 新規作成 2281036 wikitext text/x-wiki =={{L|eo}}== ==={{noun}}=== {{eo-noun-form}} #{{l|eo|tumoro}}の単数対格。 mo2tveuxqrthdpzp3xsn05gwjpsix0o tumoroj 0 589382 2281037 2026-06-08T16:53:39Z M-30722 1202 新規作成 2281037 wikitext text/x-wiki =={{L|eo}}== ==={{noun}}=== {{eo-noun-form}} #{{l|eo|tumoro}}の複数形。 c6ljfodwbomizgohfta4cwwev7ppcma はちくい 0 589383 2281042 2026-06-08T22:02:57Z 鍼灸 112313 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|蜂食|蜂喰}} #{{タグ|ja|鳥}}ブッポソウ目ハチクイ科ハチクイ属に属する鳥の総称。 #1.に属する鳥の一種。[[ハチクイ]]。」 2281042 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|蜂食|蜂喰}} #{{タグ|ja|鳥}}ブッポソウ目ハチクイ科ハチクイ属に属する鳥の総称。 #1.に属する鳥の一種。[[ハチクイ]]。 khmpd18grq0u4keb80v0dbcs77f9ty7 ハチクイ 0 589384 2281043 2026-06-08T22:05:10Z 鍼灸 112313 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== {{wikipedia}} ==={{noun}}=== {{ja-noun|蜂食|蜂喰}} #{{タグ|ja|鳥}}ブッポウソウ目ハチクイ科ハチクイ属に属する鳥の一種。学名:[[Merops philippinus]]。」 2281043 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== {{wikipedia}} ==={{noun}}=== {{ja-noun|蜂食|蜂喰}} #{{タグ|ja|鳥}}ブッポウソウ目ハチクイ科ハチクイ属に属する鳥の一種。学名:[[Merops philippinus]]。 rc3yz9cfxbv4ak1s4psw5pt8uvkc7t8 2281044 2281043 2026-06-08T22:17:22Z 鍼灸 112313 2281044 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== {{wikipedia}} ==={{noun}}=== {{ja-noun|蜂食|蜂喰}} #{{タグ|ja|鳥}}ブッポウソウ目ハチクイ科ハチクイ属に属する鳥の一種。学名:[[Merops ornatus]]。 55f71cryuwzugmu7ejigt9ql4lhlwjx Merops 0 589385 2281045 2026-06-08T22:20:13Z 鍼灸 112313 ページの作成:「=={{la}}== ==={{noun}}=== {{head|la|noun|g=m}} #[[ハチクイ属]] [[Category:学名]] ===={{hyper}}==== *[[Meropidae]]」 2281045 wikitext text/x-wiki =={{la}}== ==={{noun}}=== {{head|la|noun|g=m}} #[[ハチクイ属]] [[Category:学名]] ===={{hyper}}==== *[[Meropidae]] 39t6jv6v9r5t7z2d7efdkjlnfivhihq 2281046 2281045 2026-06-08T22:20:56Z 鍼灸 112313 2281046 wikitext text/x-wiki =={{la}}== ==={{noun}}=== {{head|la|noun|g=m}} #[[ハチクイ属]]の学名。 ===={{hyper}}==== *[[Meropidae]] [[Category:学名]] t4al170h7mc0pd09o92bywomyc2nrsh Meropidae 0 589386 2281047 2026-06-08T22:22:55Z 鍼灸 112313 ページの作成:「=={{la}}== ==={{noun}}=== {{head|la|noun}} #[[ハチクイ科]]の学名。 ===={{hyper}}==== *[[Coraciiformes]] [[Category:学名]]」 2281047 wikitext text/x-wiki =={{la}}== ==={{noun}}=== {{head|la|noun}} #[[ハチクイ科]]の学名。 ===={{hyper}}==== *[[Coraciiformes]] [[Category:学名]] kr1fxg167wnoitma7jdhvomkgnenb0t 2281048 2281047 2026-06-08T22:23:55Z 鍼灸 112313 2281048 wikitext text/x-wiki =={{la}}== ==={{etym}}=== {{suffix+|Merops|idae|lang=la}} ==={{noun}}=== {{head|la|noun}} #[[ハチクイ科]]の学名。 ===={{hyper}}==== *[[Coraciiformes]] [[Category:学名]] mo5c7cdj1bbc0b3wcmytuj3uo7gyxck むしさされ 0 589387 2281049 2026-06-08T22:48:54Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|虫刺され}} #[[か|蚊]]や[[はち|蜂]]などの虫に刺されること。また、それによる[[かゆみ|痒み]]や[[いたみ|痛み]]などの[[症状]]。」 2281049 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|虫刺され}} #[[か|蚊]]や[[はち|蜂]]などの虫に刺されること。また、それによる[[かゆみ|痒み]]や[[いたみ|痛み]]などの[[症状]]。 jjib5qd770r3x8k4bwc81jefuh49uhx 虫刺され 0 589388 2281050 2026-06-08T22:49:36Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|むしさされ}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|むしさされ}} #{{wagokanji of|むしさされ}}」 2281050 wikitext text/x-wiki {{kana-DEFAULTSORT|むしさされ}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|むしさされ}} #{{wagokanji of|むしさされ}} qmlxzkroo7megdx411jmxxjlgrpz0o5 かみきず 0 589389 2281051 2026-06-08T22:53:43Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|噛み傷}} #[[動物]]や[[へび]]に咬まれてできた[[きず|傷]]。[[咬傷]]。」 2281051 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|噛み傷}} #[[動物]]や[[へび]]に咬まれてできた[[きず|傷]]。[[咬傷]]。 bxhwa7tscl0ptd3ma59jbk1qvjav4sw 2281052 2281051 2026-06-08T22:54:32Z うーむ 129171 2281052 wikitext text/x-wiki {{kana-DEFAULTSORT}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|噛み傷|咬み傷}} #[[動物]]や[[へび]]に咬まれてできた[[きず|傷]]。[[咬傷]]。 m9z6m6c1zlleypt0dhxlt2teaut1rx0 噛み傷 0 589390 2281053 2026-06-08T22:55:10Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|かみきず}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|かみきず}} #{{wagokanji of|かみきず}}」 2281053 wikitext text/x-wiki {{kana-DEFAULTSORT|かみきず}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|かみきず}} #{{wagokanji of|かみきず}} jrjrc8iy2zejsvnj4eh68tppjnxu0yx 咬み傷 0 589391 2281054 2026-06-08T22:55:50Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|かみきず}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|かみきず}} #{{wagokanji of|かみきず}}」 2281054 wikitext text/x-wiki {{kana-DEFAULTSORT|かみきず}} =={{L|ja}}== ==={{wagokanji}}=== {{ja-wagokanji|かみきず}} #{{wagokanji of|かみきず}} jrjrc8iy2zejsvnj4eh68tppjnxu0yx 酷税 0 589392 2281055 2026-06-09T00:18:55Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|こくぜい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[こくぜい]]}} #[[苛酷]]な[[租税]]。[[重税]]。」 2281055 wikitext text/x-wiki {{kana-DEFAULTSORT|こくぜい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[こくぜい]]}} #[[苛酷]]な[[租税]]。[[重税]]。 8xk50avu1dxjtg7jnbvve00h2tb2reu こくぜい 0 589393 2281056 2026-06-09T00:22:03Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|こくせい|ごくせい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[国税]]】:国が賦課、徴収する租税。 *【[[酷税]]】:重税。」 2281056 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|こくせい|ごくせい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[国税]]】:国が賦課、徴収する租税。 *【[[酷税]]】:重税。 4m9pgdhhyr4893odqf9wy5jhr1hz0ib 極製 0 589394 2281057 2026-06-09T00:24:47Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ごくせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ごくせい]]}} #極めて[[上等]]な[[つくり|造り]]。」 2281057 wikitext text/x-wiki {{kana-DEFAULTSORT|ごくせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ごくせい]]}} #極めて[[上等]]な[[つくり|造り]]。 hlo1ail5sueai8trigun98mocy9k3fw 獄成 0 589395 2281058 2026-06-09T00:26:22Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ごくせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ごくせい]]}} #[[審理]]が[[確定]]すること。 ==={{verb}}=== {{ja-verb-suru|ごくせい}} {{日本語サ変活用}}」 2281058 wikitext text/x-wiki {{kana-DEFAULTSORT|ごくせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ごくせい]]}} #[[審理]]が[[確定]]すること。 ==={{verb}}=== {{ja-verb-suru|ごくせい}} {{日本語サ変活用}} gmkiixvjbcgnaqv93vmd7cz8t2kymj3 ごくせい 0 589396 2281059 2026-06-09T00:28:28Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|こくせい|こくぜい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[極製]]】:極めて上等な造り。 *【[[獄成]]】:審理が確定すること。」 2281059 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|こくせい|こくぜい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[極製]]】:極めて上等な造り。 *【[[獄成]]】:審理が確定すること。 fq0ar875wajq7yvc3sl279h5qcruhmt ítél 0 589397 2281060 2026-06-09T00:34:47Z NekoyamaWataru 87354 /* 新規作成 */ [[en:ítél]]より翻訳 2281060 wikitext text/x-wiki {{DEFAULTSORT:itel}} {{also|itel|-itel}} =={{hu}}== ==={{pron}}=== * {{hu-IPA|ítél|itél}} * {{hyph|hu|ítél}} ==={{etym}}=== {{suffix+|üt|él|pos2=反復接尾辞|lang=hu}} ==={{verb}}=== {{hu-verb}} # {{label|hu|transitive}} [[判断]]する。(~で {{hu-case|nak}}) #: 批判したり、レッテルを貼ったりする #: {{uxi|hu|Ne '''ítélj''' első látásra!|物事を見た目だけで判断してはいけない!}} # {{label|hu|transitive|law}} [[判決]]を[[くだす|下す]]。(~に {{hu-case|re}}) ===={{conjug}}==== {{hu-conj-ek|ít|é|l|caus=tet}} ===={{drv}}==== {{top4}} * {{l|hu|ítélés}} * {{l|hu|ítélet}} * {{l|hu|ítélkezik}} * {{l|hu|ítéltetik}} {{bottom}} {{hu-verbpref|ítél|el|meg|oda|vissza}} ===={{comp}}==== * {{l|hu|halálraítélt}} ===参考文献=== * {{R:ErtSz}} s8kkyg9o21759m1f4be0okbctseaxjo しょうまん 0 589398 2281063 2026-06-09T00:43:24Z ふゆくれ 95641 ページの作成:「{{kana-DEFAULTSORT}} {{also|じょうまん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|小満|t=二十四節気の八番目。|hom=y}} {{ja-k|韶曼|t=美しいこと。そのさま。}}」 2281063 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|じょうまん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|小満|t=二十四節気の八番目。|hom=y}} {{ja-k|韶曼|t=美しいこと。そのさま。}} 5jcrlh90zlgouqmxw11xxj0b21k23pu じょうまん 0 589399 2281064 2026-06-09T00:43:26Z ふゆくれ 95641 ページの作成:「{{kana-DEFAULTSORT}} {{also|しょうまん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|冗漫|t=無駄が多くて締まりないこと。そのさま。|hom=y}} {{ja-k|成満|t=仏教で、一切が完成・成就すること。}}」 2281064 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|しょうまん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|冗漫|t=無駄が多くて締まりないこと。そのさま。|hom=y}} {{ja-k|成満|t=仏教で、一切が完成・成就すること。}} fq9yj29jzsn4uvgkrm9c6o8md91tbb1 小滿 0 589400 2281065 2026-06-09T00:43:29Z ふゆくれ 95641 ページの作成:「{{kana-DEFAULTSORT|せうまん}} =={{L|ja}}== {{ja-kanjitab|せう|まん|yomi=o}} ==={{kyujitai}}=== {{ja-kyujitai|せうまん}} #{{kyujitai of|小満}} {{-}} =={{L|zh}}== {{中国の節気}} {{wikipedia|lang=zh}} {{wikipedia|lang=yue}} {{wikipedia|Séu-mân|lang=hak}} {{wikipedia|Siēu-muāng|lang=cdo}} {{wikipedia|Siáu-boán|lang=nan}} ==={{pron}}=== {{cmn-pron|xiǎomǎn|s=xiao3man3}} {{yue-pron|siu2 mun5}} {{hak-pron|séu-mân|h=siauˊ manˋ|gd=xiau3 man1}}…」 2281065 wikitext text/x-wiki {{kana-DEFAULTSORT|せうまん}} =={{L|ja}}== {{ja-kanjitab|せう|まん|yomi=o}} ==={{kyujitai}}=== {{ja-kyujitai|せうまん}} #{{kyujitai of|小満}} {{-}} =={{L|zh}}== {{中国の節気}} {{wikipedia|lang=zh}} {{wikipedia|lang=yue}} {{wikipedia|Séu-mân|lang=hak}} {{wikipedia|Siēu-muāng|lang=cdo}} {{wikipedia|Siáu-boán|lang=nan}} ==={{pron}}=== {{cmn-pron|xiǎomǎn|s=xiao3man3}} {{yue-pron|siu2 mun5}} {{hak-pron|séu-mân|h=siauˊ manˋ|gd=xiau3 man1}} {{mnp-pron|siǎu-muǐng}} {{cdo-pron|siēu-māng}} {{nan-pron|siáu-boán/sió-boán/tw:sió-móa|t=siou2 muan2}} {{cpx-pron|pt:^sieo3 muang3/xy:sieo3 muong3}} {{wuu-pron|sh:5shiau moe}} {{gan-pron|xieu3 mon3}} {{cjy-pron|xiau2 man2}} {{hsn-pron|siau3 monn3}} ==={{noun}}=== {{zh-cat|xiao3man3|noun|暦}} {{zhx-sic-cat|xiao3man3|noun|暦}} {{yue-cat|siu2mun5|noun|暦}} {{hak-cat|seu3man1|noun|暦}} {{mnp-cat|siau3muing3|noun|暦}} {{cdo-cat|sieu2mang2|noun|暦}} {{nan-cat|sio2boan2|noun|暦}} {{nan-tws-cat|siou2muan2|noun|暦}} {{cpx-cat|sieo3muang3|noun|暦}} {{wuu-cat|shiau3moe1|noun|暦}} {{gan-cat|xieu3mon3|noun|暦}} {{cjy-cat|xiau2man2|noun|暦}} {{hsn-cat|siau3monn3|noun|暦}} {{zhchars|s=小满}} #小満。 {{二十四節気/中国語繁体字}} ==={{desc}}=== {{CJKV||小満|j=しょうまん|소만|tiểu mãn}} =={{L|ko}}== {{ko-hanjatab}} ==={{noun}}=== {{ko-head|noun|소만|cat2=暦}} #小満。 =={{L|vi}}== {{vi-hantutab}} ==={{noun}}=== {{vi-head|noun|tiểu|mãn|cat2=暦}} #小満。 ao3v4eyyax29vdurcqoqunjhed1wvtz 小满 0 589401 2281066 2026-06-09T00:43:33Z ふゆくれ 95641 ページの作成:「=={{L|zh}}== {{中国の節気}} ==={{pron}}=== {{cmn-pron|xiǎomǎn|s=xiao3man3|z=n}} {{yue-pron|siu2 mun5|h=n}} {{hak-pron|séu-mân|h=siauˊ manˋ|gd=xiau3 man1}} {{mnp-pron|siǎu-muǐng}} {{cdo-pron|siēu-māng}} {{nan-pron|ml:siáu-boán/ml:sió-boán|t=siou2 muan2}} {{cpx-pron|pt:^sieo3 muang3/xy:sieo3 muong3}} {{wuu-pron|sh:5shiau moe}} {{gan-pron|xieu3 mon3}} {{cjy-pron|xiau2 man2}} {{hsn-pron|siau3 monn3}} ==={{noun}}=== {{zh-cat|xiao3man3|noun|暦}} {{zhx-…」 2281066 wikitext text/x-wiki =={{L|zh}}== {{中国の節気}} ==={{pron}}=== {{cmn-pron|xiǎomǎn|s=xiao3man3|z=n}} {{yue-pron|siu2 mun5|h=n}} {{hak-pron|séu-mân|h=siauˊ manˋ|gd=xiau3 man1}} {{mnp-pron|siǎu-muǐng}} {{cdo-pron|siēu-māng}} {{nan-pron|ml:siáu-boán/ml:sió-boán|t=siou2 muan2}} {{cpx-pron|pt:^sieo3 muang3/xy:sieo3 muong3}} {{wuu-pron|sh:5shiau moe}} {{gan-pron|xieu3 mon3}} {{cjy-pron|xiau2 man2}} {{hsn-pron|siau3 monn3}} ==={{noun}}=== {{zh-cat|xiao3man3|noun|暦}} {{zhx-sic-cat|xiao3man3|noun|暦}} {{yue-cat|siu2mun5|noun|暦}} {{hak-cat|seu3man1|noun|暦}} {{mnp-cat|siau3muing3|noun|暦}} {{cdo-cat|sieu2mang2|noun|暦}} {{nan-cat|sio2boan2|noun|暦}} {{nan-tws-cat|siou2muan2|noun|暦}} {{cpx-cat|sieo3muang3|noun|暦}} {{wuu-cat|shiau3moe1|noun|暦}} {{gan-cat|xieu3mon3|noun|暦}} {{cjy-cat|xiau2man2|noun|暦}} {{hsn-cat|siau3monn3|noun|暦}} {{zhchars|t=小滿}} #[[小満]]。 {{二十四節気/中国語簡体字}} q2n0cuqc4iv7hjpzo8ork5ihnmfhet6 소만 0 589402 2281067 2026-06-09T00:43:35Z ふゆくれ 95641 ページの作成:「=={{L|ko}}== ==={{pron}}=== {{ko-IPA}} ==={{noun}}=== {{head|ko|noun}} {{ko-h|小|滿|hom=y}} #{{context|暦|lang=ko}}[[小満]]。 #*{{seealso}}: {{ko-l|이십사절기|二十四節氣}} {{ko-h|疏|慢}} #[[疏慢]]。 {{ko-h|掃|萬}} #[[]]。 {{stub|ko}}」 2281067 wikitext text/x-wiki =={{L|ko}}== ==={{pron}}=== {{ko-IPA}} ==={{noun}}=== {{head|ko|noun}} {{ko-h|小|滿|hom=y}} #{{context|暦|lang=ko}}[[小満]]。 #*{{seealso}}: {{ko-l|이십사절기|二十四節氣}} {{ko-h|疏|慢}} #[[疏慢]]。 {{ko-h|掃|萬}} #[[]]。 {{stub|ko}} eo1x4kkv8rf981xbbwarnpolqe414t6 tiểu mãn 0 589403 2281068 2026-06-09T00:43:37Z ふゆくれ 95641 ページの作成:「{{vi-DEFAULTSORT|tiểu|mãn}} =={{L|vi}}== ==={{pron}}=== {{vi-pron}} ==={{noun}}=== {{head|vi|noun}}{{vi-h|小|滿}} #{{context|暦|lang=vi}}[[小満]]。 ===={{seealso}}==== *{{vi-l|hai mươi tư tiết khí|𠄩𨒒四節氣}}」 2281068 wikitext text/x-wiki {{vi-DEFAULTSORT|tiểu|mãn}} =={{L|vi}}== ==={{pron}}=== {{vi-pron}} ==={{noun}}=== {{head|vi|noun}}{{vi-h|小|滿}} #{{context|暦|lang=vi}}[[小満]]。 ===={{seealso}}==== *{{vi-l|hai mươi tư tiết khí|𠄩𨒒四節氣}} 1d34atenwti7ghumk8voxqm0yvmeykk 兎眼 0 589404 2281069 2026-06-09T00:45:21Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|とがん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[とがん]]}} #顔面神経の[[麻痺]]により[[まぶた]]が完全に閉じず、[[眼球]]の一部が見えている状態。」 2281069 wikitext text/x-wiki {{kana-DEFAULTSORT|とがん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[とがん]]}} #顔面神経の[[麻痺]]により[[まぶた]]が完全に閉じず、[[眼球]]の一部が見えている状態。 ckb0egb7jbx8k35x7tp6mek4udd2uvb とがん 0 589405 2281070 2026-06-09T00:46:49Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|どかん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} *【[[兎眼]]】:顔面神経の麻痺により眼球の一部が常に見えている状態。」 2281070 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|どかん}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} *【[[兎眼]]】:顔面神経の麻痺により眼球の一部が常に見えている状態。 n62tswhi4gfbimnd0eepo6m7rjckoie 芒种 0 589406 2281073 2026-06-09T01:08:53Z ふゆくれ 95641 ページの作成:「=={{L|zh}}== {{中国の節気}} ==={{pron}}=== {{cmn-pron|mángzhòng|s=mang2zong3|z=n}} {{yue-pron|mong4 zung3|h=n}} {{hak-pron|miòng-chung/mòng-chung|h=mong zhungˇ|gd=mong2 zung4}} {{mnp-pron|mông-ce̤̿ng}} {{cdo-pron|mòng-cṳ̄ng}} {{nan-pron|ml:bông-chéng|t=mang5 zong2}} {{cpx-pron|pt:^morng2 zoeng3/xy:morng2 zyoeng3}} {{wuu-pron|sh:6maon tson}} {{gan-pron|mong4 zung}} {{cjy-pron|mon1 zung2}} {{hsn-pron|man2 zhong4}} ==={{noun}}=== {{zh-cat|mang2zhong4…」 2281073 wikitext text/x-wiki =={{L|zh}}== {{中国の節気}} ==={{pron}}=== {{cmn-pron|mángzhòng|s=mang2zong3|z=n}} {{yue-pron|mong4 zung3|h=n}} {{hak-pron|miòng-chung/mòng-chung|h=mong zhungˇ|gd=mong2 zung4}} {{mnp-pron|mông-ce̤̿ng}} {{cdo-pron|mòng-cṳ̄ng}} {{nan-pron|ml:bông-chéng|t=mang5 zong2}} {{cpx-pron|pt:^morng2 zoeng3/xy:morng2 zyoeng3}} {{wuu-pron|sh:6maon tson}} {{gan-pron|mong4 zung}} {{cjy-pron|mon1 zung2}} {{hsn-pron|man2 zhong4}} ==={{noun}}=== {{zh-cat|mang2zhong4|noun|暦}} {{zhx-sic-cat|mang2zong3|noun|暦}} {{yue-cat|mong4jung3|noun|暦}} {{hak-cat|miong2chung4|noun|暦}} {{mnp-cat|mong2coeng4|noun|暦}} {{cdo-cat|mong5cung2|noun|暦}} {{nan-cat|bong5cheng2|noun|暦}} {{nan-tws-cat|mang5zong2|noun|暦}} {{cpx-cat|morng2zoeng3|noun|暦}} {{wuu-cat|maon3tson1|noun|暦}} {{gan-cat|mong4zung|noun|暦}} {{cjy-cat|mon1zung2|noun|暦}} {{hsn-cat|man2zhong4|noun|暦}} {{zhchars|s=芒種}} #芒種。 {{二十四節気/中国語簡体字}} 67webpwo0g65vap6h54nrtx4b38zg78 망종 0 589407 2281074 2026-06-09T01:08:55Z ふゆくれ 95641 ページの作成:「=={{L|ko}}== ==={{pron}}=== {{ko-IPA}} ==={{noun}}=== {{head|ko|noun}} {{ko-h|芒|種|hom=y}} #{{context|暦|lang=ko}}[[芒種]]。 #*{{seealso}}: {{ko-l|이십사절기|二十四節氣}} {{ko-h|亡|種}} #[[絶滅]]。 {{ko-h|亡|終}} #[[死去]]。」 2281074 wikitext text/x-wiki =={{L|ko}}== ==={{pron}}=== {{ko-IPA}} ==={{noun}}=== {{head|ko|noun}} {{ko-h|芒|種|hom=y}} #{{context|暦|lang=ko}}[[芒種]]。 #*{{seealso}}: {{ko-l|이십사절기|二十四節氣}} {{ko-h|亡|種}} #[[絶滅]]。 {{ko-h|亡|終}} #[[死去]]。 290pttxvm3sajr0vn3vlfg5y9begjei mang chủng 0 589408 2281075 2026-06-09T01:08:58Z ふゆくれ 95641 ページの作成:「{{vi-DEFAULTSORT|mang|chủng}} =={{L|vi}}== ==={{pron}}=== {{vi-pron}} ==={{noun}}=== {{head|vi|noun}}{{vi-h|芒|種}} #{{context|暦|lang=vi}}[[芒種]]。 ===={{seealso}}==== *{{vi-l|hai mươi tư tiết khí|𠄩𨒒四節氣}}」 2281075 wikitext text/x-wiki {{vi-DEFAULTSORT|mang|chủng}} =={{L|vi}}== ==={{pron}}=== {{vi-pron}} ==={{noun}}=== {{head|vi|noun}}{{vi-h|芒|種}} #{{context|暦|lang=vi}}[[芒種]]。 ===={{seealso}}==== *{{vi-l|hai mươi tư tiết khí|𠄩𨒒四節氣}} qgql37ha3vh4m4gbxek19u3fzapbek2 muengzcungq 0 589409 2281076 2026-06-09T01:09:00Z ふゆくれ 95641 ページの作成:「=={{L|za}}== ==={{etym}}=== {{bor|za|zh|芒種|tr=mángzhòng}} ==={{pron}}=== {{za-pron}} ==={{noun}}=== {{za-head|noun}} #{{context|暦|lang=za}}[[芒種]]。 ===={{seealso}}==== *[[ngeih cib seiq aen cietheiq]]」 2281076 wikitext text/x-wiki =={{L|za}}== ==={{etym}}=== {{bor|za|zh|芒種|tr=mángzhòng}} ==={{pron}}=== {{za-pron}} ==={{noun}}=== {{za-head|noun}} #{{context|暦|lang=za}}[[芒種]]。 ===={{seealso}}==== *[[ngeih cib seiq aen cietheiq]] ob2ykbcru41nm1imdnpd5vi2lvth2il ほうじゅ 0 589410 2281080 2026-06-09T01:22:42Z ふゆくれ 95641 ページの作成:「{{kana-DEFAULTSORT}} {{also|ほうしゅ|ぼうしゅ|ぼうじゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|烽戍|t=狼煙と守備。}} {{ja-k|封樹|t=墓に土を盛り、植樹すること。}} {{ja-k|宝綬|t=高位。}}」 2281080 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ぼうしゅ|ぼうじゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|烽戍|t=狼煙と守備。}} {{ja-k|封樹|t=墓に土を盛り、植樹すること。}} {{ja-k|宝綬|t=高位。}} lhwww4fd8ah3c3iuwk70fwyx6dfkrbl 2281096 2281080 2026-06-09T02:04:38Z ふゆくれ 95641 /* {{kangokana}} */ 2281096 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ぼうしゅ|ぼうじゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|烽戍|t=狼煙と守備。|hom=y}} {{ja-k|封樹|t=墓に土を盛り、植樹すること。}} {{ja-k|宝綬|t=高位。}} 8crsgxgkvar5o774h0gtjrcw0b6jtwh ぼうじゅ 0 589411 2281082 2026-06-09T01:22:46Z ふゆくれ 95641 ページの作成:「{{kana-DEFAULTSORT}} {{also|ほうしゅ|ほうじゅ|ぼうしゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|傍受|t=交わされている無線通信を第三者が受信して聞くこと。|hom=y}} {{ja-k|牟寿|t=大寿。}} {{ja-k|貿儒|t=迂儒。}} {{ja-k|耄儒|t=老儒。}}」 2281082 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ほうじゅ|ぼうしゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|傍受|t=交わされている無線通信を第三者が受信して聞くこと。|hom=y}} {{ja-k|牟寿|t=大寿。}} {{ja-k|貿儒|t=迂儒。}} {{ja-k|耄儒|t=老儒。}} khr2vv5g2bnixq3uoaxmthxaew7lrpk 2281355 2281082 2026-06-09T11:45:29Z うーむ 129171 /* 日本語 */ 2281355 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ほうじゅ|ぼうしゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|傍受|t=交わされている無線通信を第三者が受信して聞くこと。|hom=y}} {{ja-k|牟寿|t=[[大寿]]。}} {{ja-k|貿儒|t=[[迂儒]]。}} {{ja-k|耄儒|t=[[老儒]]。}} eqtttqui8ifpwfaqg0ofe67peafbsum 2281363 2281355 2026-06-09T11:51:07Z うーむ 129171 /* 日本語 */ 2281363 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|ほうしゅ|ほうじゅ|ぼうしゅ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} {{ja-k|傍受|t=交わされている無線通信を第三者が受信して聞くこと。|hom=y}} {{ja-k|牟寿|t=大寿。}} {{ja-k|貿儒|t=[[迂儒]]。}} {{ja-k|耄儒|t=[[老儒]]。}} 0ugrqmpv7ohe6z5qjfkrumsg5wuwy30 かんぜい 0 589412 2281084 2026-06-09T01:23:59Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|かんせい|がんせい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[関税]]】:輸出入などにかかる租税。 *【[[勧説]]】:説いて勧めること。」 2281084 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|かんせい|がんせい}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[関税]]】:輸出入などにかかる租税。 *【[[勧説]]】:説いて勧めること。 9php58lnrxyvshwthb8w4ofjbh7vwtk 𣩭𣨀 0 589413 2281088 2026-06-09T01:29:19Z しゅんた(漢字大好き) 131857 ページの作成:「{{kana-DEFAULTSORT|ぼつらん}} =={{L|ja}}== {{ja-kanjitab|ぼつ|らん|yomi=o}} ==={{noun}}=== {{ja-noun|ぼつらん}} #臨死で意識がはっきりしない。 ==脚注== #字統网 =={{L|zh}}== {{zh-cat|zhai4luan4|名詞}} ==={{pron}}=== {{cmn-pron|zhàiluàn}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)臨死で意識がはっきりしない。 ==脚注== #字統网」 2281088 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼつらん}} =={{L|ja}}== {{ja-kanjitab|ぼつ|らん|yomi=o}} ==={{noun}}=== {{ja-noun|ぼつらん}} #臨死で意識がはっきりしない。 ==脚注== #字統网 =={{L|zh}}== {{zh-cat|zhai4luan4|名詞}} ==={{pron}}=== {{cmn-pron|zhàiluàn}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)臨死で意識がはっきりしない。 ==脚注== #字統网 ir5y0mtkjziik07uftfh8jk6ssr0gbz 2281089 2281088 2026-06-09T01:34:29Z しゅんた(漢字大好き) 131857 2281089 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼつらん}} =={{L|ja}}== {{ja-kanjitab|ぼつ|らん|yomi=o}} ==={{noun}}=== {{ja-noun|ぼつらん}} #[[臨死|りんし]]で[[意識|いしき]]が[[はっきり]]しない。 ==脚注== #字統网 =={{L|zh}}== {{zh-cat|zhai4luan4|名詞}} ==={{pron}}=== {{cmn-pron|zhàiluàn}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)[[臨死|りんし]]で[[意識|いしき]]が[[はっきり]]しない。 ==脚注== #字統网 [[カテゴリ:日本語]][[カテゴリ:名詞]][[カテゴリ:中国語]] 6tjxtcqlwu7w5kh2v0hdh8pkvlcstvk 2281090 2281089 2026-06-09T01:35:19Z しゅんた(漢字大好き) 131857 2281090 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼつらん}} =={{L|ja}}== {{ja-kanjitab|ぼつ|らん|yomi=o}} ==={{noun}}=== {{ja-noun|ぼつらん}} #[[りんし|臨死]]で[[いしき|意識]]が[[はっきり]]しない。 ==脚注== #字統网 =={{L|zh}}== {{zh-cat|zhai4luan4|名詞}} ==={{pron}}=== {{cmn-pron|zhàiluàn}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)[[りんし|臨死]]で[[いしき|意識]]が[[はっきり]]しない。 ==脚注== #字統网 [[カテゴリ:日本語]][[カテゴリ:名詞]][[カテゴリ:中国語]] 937f8j344rk5y3ahi4iulc2om3kh8am カテゴリ:チワン語 暦 14 589414 2281099 2026-06-09T02:11:33Z ふゆくれ 95641 ページの作成:「<div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{za}}|{{za}}_時間|disp4=時間|last=暦}} * {{Pathnav|カテゴリ|分野|時間|暦|last={{za}}}} </div> {{en-categoryTOC}} {{catmore}} [[カテゴリ:{{za}}_時間|*こよみ]] [[カテゴリ:暦|ちわんこ]]」 2281099 wikitext text/x-wiki <div class="pathnavbox"> * {{Pathnav|カテゴリ|言語|{{za}}|{{za}}_時間|disp4=時間|last=暦}} * {{Pathnav|カテゴリ|分野|時間|暦|last={{za}}}} </div> {{en-categoryTOC}} {{catmore}} [[カテゴリ:{{za}}_時間|*こよみ]] [[カテゴリ:暦|ちわんこ]] jtsuuosjyj5wcnhsibrp6ejp6bc4t8q 稟懇 0 589415 2281100 2026-06-09T02:17:08Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ひんこん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ひんこん]]}} #[[懇請]]すること。 ==={{verb}}=== {{ja-verb-suru|ひんこん}} {{日本語サ変活用}}」 2281100 wikitext text/x-wiki {{kana-DEFAULTSORT|ひんこん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ひんこん]]}} #[[懇請]]すること。 ==={{verb}}=== {{ja-verb-suru|ひんこん}} {{日本語サ変活用}} hzk7bd19h5plj1ezmurirfblh9ywa2c 懇請 0 589416 2281101 2026-06-09T02:19:50Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|こんせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[こんせい]]}} #心を込めて[[たのみこむ|頼み込む]]こと。ひたすら[[請願]]すること。 ==={{verb}}=== {{ja-verb-suru|こんせい}} {{日本語サ変活用}}」 2281101 wikitext text/x-wiki {{kana-DEFAULTSORT|こんせい}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[こんせい]]}} #心を込めて[[たのみこむ|頼み込む]]こと。ひたすら[[請願]]すること。 ==={{verb}}=== {{ja-verb-suru|こんせい}} {{日本語サ変活用}} 8lufa6sygxqno45tbczd2rc038obl4d だいだん 0 589417 2281112 2026-06-09T03:07:40Z 鍼灸 112313 ページの作成:「{{kana-DEFAULTSORT}} {{also|たいだん|だいたん|タイタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[大壇]]】:[[天壇]]。 *【[[大段]]】:[[大略]]。」 2281112 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たいだん|だいたん|タイタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[大壇]]】:[[天壇]]。 *【[[大段]]】:[[大略]]。 q2saidyg4vv8ro1p9q3kxy73pi3hnpg だいたん 0 589418 2281113 2026-06-09T03:09:36Z 鍼灸 112313 ページの作成:「{{kana-DEFAULTSORT}} {{also|たいだん|だいだん|タイタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[大胆]]】:[[胆大]]。 *【[[大端]]】:[[あらまし]]。」 2281113 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たいだん|だいだん|タイタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[大胆]]】:[[胆大]]。 *【[[大端]]】:[[あらまし]]。 k9iq3wku6slcpuew2swadk9jpx546v1 カテゴリ:ウズベク語 植物 14 589419 2281121 2026-06-09T03:58:15Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|{{uz}}_植物学|disp7=植物学|last=植物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{uz}}}} </div> [[カテゴリ:ウズベク語 植物学|*しよくふつ]] [[カテゴリ:ウズベク語 生物|*しよくふつ]] [[カテゴリ:植物|うすへくこ]]」 2281121 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|{{uz}}_植物学|disp7=植物学|last=植物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{uz}}}} </div> [[カテゴリ:ウズベク語 植物学|*しよくふつ]] [[カテゴリ:ウズベク語 生物|*しよくふつ]] [[カテゴリ:植物|うすへくこ]] asv56ry9rd6lc7100y9esriot4q106g カテゴリ:ウズベク語 植物学 14 589420 2281122 2026-06-09T04:01:19Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|last=植物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 生物学|*しよくふつかく]] [[カテゴリ:植物学|うすへくこ]]」 2281122 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|last=植物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 生物学|*しよくふつかく]] [[カテゴリ:植物学|うすへくこ]] nm0z57lbfgthj4im1qyfd92e80tqhd0 勝手気まま 0 589421 2281129 2026-06-09T05:21:03Z うーむ 129171 [[勝手気儘]]への転送ページ 2281129 wikitext text/x-wiki #転送[[勝手気儘]] qtbshuvkud9zyouhlj3pq8okeith2rw 大端 0 589422 2281132 2026-06-09T06:01:33Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|だいたん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいたん]]}} #[[あらまし]]。 #[[重要]]な物事の[[端緒]]。」 2281132 wikitext text/x-wiki {{kana-DEFAULTSORT|だいたん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいたん]]}} #[[あらまし]]。 #[[重要]]な物事の[[端緒]]。 gy6sna59t2gdmrpb60ly8ignv18bawg カテゴリ:ウズベク語 生物学 14 589423 2281133 2026-06-09T06:02:52Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|last=生物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 自然科学|*せいふつかく]] [[カテゴリ:生物学|うすへくこ]]」 2281133 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|last=生物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 自然科学|*せいふつかく]] [[カテゴリ:生物学|うすへくこ]] 86wvymekzp0kh6be0ji6vkvgue6j685 カテゴリ:ウズベク語 生物 14 589424 2281134 2026-06-09T06:05:14Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 自然|*せいふつ]] [[カテゴリ:生物|うすへくこ]]」 2281134 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{uz}}}} </div> {{catmore}} [[カテゴリ:ウズベク語 自然|*せいふつ]] [[カテゴリ:生物|うすへくこ]] bptcpjyd204y2l312djmid97rk3t9la カテゴリ:ウズベク語 動物 14 589425 2281137 2026-06-09T06:08:50Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|{{uz}}_動物学|disp7=動物学|last=動物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|動物|last={{uz}}}} </div> [[カテゴリ:ウズベク語 動物学|*とうふつ]] [[カテゴリ:ウズベク語 生物|*とうふつ]] [[カテゴリ:動物|うすへくこ]]」 2281137 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|{{uz}}_動物学|disp7=動物学|last=動物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|動物|last={{uz}}}} </div> [[カテゴリ:ウズベク語 動物学|*とうふつ]] [[カテゴリ:ウズベク語 生物|*とうふつ]] [[カテゴリ:動物|うすへくこ]] 00p7i6ux98l36pmgb7tb1bdptsu4n2d カテゴリ:ウズベク語 動物学 14 589426 2281138 2026-06-09T06:10:55Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|last=動物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|last={{uz}}}} </div> [[カテゴリ:ウズベク語 生物学|*とうふつかく]] [[カテゴリ:動物学|うすへくこ]]」 2281138 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{uz}}|{{uz}}_科学|disp4=科学|{{uz}}_自然科学|disp5=自然科学|{{uz}}_生物学|disp6=生物学|last=動物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|動物学|last={{uz}}}} </div> [[カテゴリ:ウズベク語 生物学|*とうふつかく]] [[カテゴリ:動物学|うすへくこ]] 7z7dd67jufuq5vxvu85jm69e24s7bjo カテゴリ:セルビア・クロアチア語 方位 14 589427 2281140 2026-06-09T06:16:02Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{sh}}|{{sh}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{sh}}}} </div> {{catmore}} [[Category:{{sh}}_自然|*ほうい]] [[Category:方位|せるひあくろあちあこ]]」 2281140 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{sh}}|{{sh}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{sh}}}} </div> {{catmore}} [[Category:{{sh}}_自然|*ほうい]] [[Category:方位|せるひあくろあちあこ]] 97tekghpu5qsz644097iz86v39jtenz Lucemburk 0 589428 2281142 2026-06-09T06:17:11Z Kuroco2k 84207 [[:en:Lucemburk]] 2281142 wikitext text/x-wiki =={{L|cs}}== ==={{pron}}=== *{{cs-IPA}} *{{音声|cs|Cs-Lucemburk.ogg}} ==={{name}}=== {{cs-proper noun|g=m-in|adj=lucemburský}} #{{context|首都|lang=cs}} [[ルクセンブルク市]]。 ===={{decl}}==== {{cs-ndecl|<m.sg>}} ===={{rel}}==== *{{l|cs|Lucembursko}} erdmo3jotrl4eskk1qvud6ig1xwqg2k カテゴリ:マケドニア語 方位 14 589429 2281144 2026-06-09T06:19:03Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{mk}}|{{mk}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{mk}}}} </div> {{catmore}} [[Category:{{mk}}_自然|*ほうい]] [[Category:方位|まけとにあこ]]」 2281144 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{mk}}|{{mk}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{mk}}}} </div> {{catmore}} [[Category:{{mk}}_自然|*ほうい]] [[Category:方位|まけとにあこ]] o4nbzcdwttc493e5czt9jyo5j0r8pft カテゴリ:エストニア語 生物 14 589430 2281150 2026-06-09T06:28:43Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{et}}|{{et}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{et}}}} </div> {{catmore}} [[Category:{{et}}_自然|*せいふつ]] [[Category:生物|えすとにあこ]]」 2281150 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{et}}|{{et}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{et}}}} </div> {{catmore}} [[Category:{{et}}_自然|*せいふつ]] [[Category:生物|えすとにあこ]] lhttt8qhpvljkidcoicer0dhhsvzk05 𬻍𬻌 0 589431 2281154 2026-06-09T06:33:58Z しゅんた(漢字大好き) 131857 ページの作成:「{{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #name="zitoumou">字統网</ref>。玉佩の打ち合う音。<ref #name="zi.tools">字統网</ref>。水の打ち合う音<ref ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #name="zitoumou">字統网</ref>。水や玉佩などの打ち合う音。<ref ==…」 2281154 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #name="zitoumou">字統网</ref>。玉佩の打ち合う音。<ref #name="zi.tools">字統网</ref>。水の打ち合う音<ref ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #name="zitoumou">字統网</ref>。水や玉佩などの打ち合う音。<ref ==脚注== {{Reflist}} [[カテゴリ:日本語]] 17vp63abmoa4pp56cctd9xdhl6kvwyt 2281167 2281154 2026-06-09T07:23:11Z しゅんた(漢字大好き) 131857 /* {{noun}} */ 2281167 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #name="zitoumou">字統网</ref>。玉佩の打ち合う音。<ref #name="zitoumou">字統网</ref>。水の打ち合う音<ref ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #name="zitoumou">字統网</ref>。水や玉佩などの打ち合う音。<ref ==脚注== {{Reflist}} [[カテゴリ:日本語]] rrtfxwpqd0mk8rlcl03s5zuwlitl211 2281168 2281167 2026-06-09T07:25:04Z しゅんた(漢字大好き) 131857 2281168 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #玉佩の打ち合う音。 #水の打ち合う音 ==脚注== #zi.tools =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #水や玉佩などの打ち合う音。 ==脚注== #zi.tools [[カテゴリ:日本語]] 6epj0ry0pyma81e7mrzndhknqxnoapg 2281169 2281168 2026-06-09T07:38:41Z しゅんた(漢字大好き) 131857 2281169 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #玉佩の打ち合う音。name="kanjitoasobu">「越諺・賸語」(清・范寅撰 )聲音音楽</ref> #水の打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #水や玉佩などの打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} [[カテゴリ:日本語]] sv6r5sel5d0cj79q0qzlpjl2nyq4och 2281170 2281169 2026-06-09T07:40:24Z しゅんた(漢字大好き) 131857 /* {{noun}} */ 2281170 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #玉佩の打ち合う音。name="「越諺・賸語」(清・范寅撰)聲音音樂"> #水の打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #水や玉佩などの打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} [[カテゴリ:日本語]] 9ke5qe884015xqssll1jcr3enmhtnyc 2281171 2281170 2026-06-09T07:41:18Z しゅんた(漢字大好き) 131857 /* {{L|ja}} */ 2281171 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #玉佩の打ち合う音。name="「越諺・賸語」(清・范寅撰)聲音音樂"> #水の打ち合う音。name="zi.tools" /> ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #水や玉佩などの打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} [[カテゴリ:日本語]] eiy1zesdvfs6osrmi9mah685u4eeuae 2281172 2281171 2026-06-09T07:44:57Z しゅんた(漢字大好き) 131857 /* {{L|ja}} */ 2281172 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #name="「越諺・賸語」(清・范寅撰)聲音音樂">玉佩の打ち合う音。<ref #name="zitoumou">「字統网」</ref>。水の打ち合う音。<ref ==脚注== {{Reflist}} =={{L|zh}}== {{zh-cat|ti2dong1|名詞}} ==={{pron}}=== {{cmn-pron|tídōng}} ==={{noun}}=== {{zhchars}} #水や玉佩などの打ち合う音。<ref name="zi.tools" /> ==脚注== {{Reflist}} [[カテゴリ:日本語]] 1amrppwlwjnbij75unhp5ttcyacswk8 2281173 2281172 2026-06-09T07:47:20Z しゅんた(漢字大好き) 131857 ページの白紙化 2281173 wikitext text/x-wiki phoiac9h4m842xq45sp7s6u21eteeq1 2281174 2281173 2026-06-09T07:55:15Z しゅんた(漢字大好き) 131857 2281174 wikitext text/x-wiki {{kana-DEFAULTSORT|ていとう}} =={{L|ja}}== {{ja-kanjitab|てい|とう|yomi=o}} ==={{noun}}=== {{ja-noun|ていとう}} #玉佩の打ち合う音。 #水の打ち合う音。 ==脚注== #字統网 =={{L|zh}}== {{zh-cat|di1dong1|名詞}} ==={{pron}}=== {{cmn-pron|dīdōng}} ==={{noun}}=== {{zhchars}} #(日本語に同じ)水や玉の打ち合う音。 ==脚注== #字統网 kkux35prblxdmlbupfva3wlevg079om カテゴリ:リトアニア語 生物 14 589432 2281156 2026-06-09T06:35:47Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lt}}|{{lt}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{lt}}}} </div> {{catmore}} [[Category:{{lt}}_自然|*せいふつ]] [[Category:生物|りとあにあこ]]」 2281156 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lt}}|{{lt}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{lt}}}} </div> {{catmore}} [[Category:{{lt}}_自然|*せいふつ]] [[Category:生物|りとあにあこ]] 4d76w68gykojtg21g3mh7doka3db63v カテゴリ:ラトヴィア語 植物 14 589433 2281158 2026-06-09T06:39:19Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_科学|disp4=科学|{{lv}}_自然科学|disp5=自然科学|{{lv}}_生物学|disp6=生物学|{{lv}}_植物学|disp7=植物学|last=植物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_植物学|*しよくふつ]] [[Category:{{lv}}_生物|*しよくふつ]] [[Category:植物|らとういあこ]]」 2281158 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_科学|disp4=科学|{{lv}}_自然科学|disp5=自然科学|{{lv}}_生物学|disp6=生物学|{{lv}}_植物学|disp7=植物学|last=植物}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|植物|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_植物学|*しよくふつ]] [[Category:{{lv}}_生物|*しよくふつ]] [[Category:植物|らとういあこ]] 9oom0bzdweh9tg3hz7muser90xu597e カテゴリ:ラトヴィア語 植物学 14 589434 2281159 2026-06-09T06:42:16Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_科学|disp4=科学|{{lv}}_自然科学|disp5=自然科学|{{lv}}_生物学|disp6=生物学|last=植物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_生物学|*しよくふつかく]] [[Category:植物学|らとういあこ]]」 2281159 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_科学|disp4=科学|{{lv}}_自然科学|disp5=自然科学|{{lv}}_生物学|disp6=生物学|last=植物学}} *{{Pathnav|カテゴリ|分野|科学|自然科学|生物学|植物学|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_生物学|*しよくふつかく]] [[Category:植物学|らとういあこ]] fod238xbg00p8jrlfci47a4s0l8930p カテゴリ:ラトヴィア語 生物 14 589435 2281161 2026-06-09T06:45:29Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_自然|*せいふつ]] [[Category:生物|らとういあこ]]」 2281161 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{lv}}|{{lv}}_自然|disp4=自然|last=生物}} *{{Pathnav|カテゴリ|分野|自然|生物|last={{lv}}}} </div> {{catmore}} [[Category:{{lv}}_自然|*せいふつ]] [[Category:生物|らとういあこ]] rucbsbrhn5kb3jtkz030ukxg1byrfgn カテゴリ:エストニア語 方位 14 589436 2281181 2026-06-09T08:57:14Z 鍼灸 112313 ページの作成:「<div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{et}}|{{et}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{et}}}} </div> {{catmore}} [[Category:{{et}}_自然|*ほうい]] [[Category:方位|えすとにあこ]]」 2281181 wikitext text/x-wiki <div class="pathnavbox"> *{{Pathnav|カテゴリ|言語|{{et}}|{{et}}_自然|disp4=自然|last=方位}} *{{Pathnav|カテゴリ|分野|自然|方位|last={{et}}}} </div> {{catmore}} [[Category:{{et}}_自然|*ほうい]] [[Category:方位|えすとにあこ]] m5quqoouk4bhbd8h8sl0boomu75gxia モジュール:es-inflections 828 589437 2281182 2026-06-09T09:02:49Z Kuroco2k 84207 [[:en:Module:es-inflections]] 2281182 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> This module implements {{es-verb form of}}, which automatically generates the appropriate inflections of a non-lemma verb form given the form and the conjugation spec for the verb (which is usually just the infinitive; see {{es-conj}} and {{es-verb}}). ]=] local m_links = require("Module:links") local m_table = require("Module:table") local m_form_of = require("Module:form of") local accel_module = "Module:accel" local es_verb_module = "Module:es-verb" local lang = require("Module:languages").getByCode("es") local rmatch = mw.ustring.match local rfind = mw.ustring.find local rsplit = mw.text.split local unpack = unpack or table.unpack -- Lua 5.2 compatibility local usub = mw.ustring.sub local function track(page) require("Module:debug/track")("es-inflections/" .. page) return true end local function generate_inflection_of(tag_sets, lemma, pretext, args) for _, tag_set in ipairs(tag_sets) do tag_set.tags = rsplit(tag_set.tag, "|") tag_set.tag = nil end local has_multiple_tag_sets = #tag_sets > 1 -- If only one tag set, extract out the "combined with ..." text and move into posttext=, which goes after the lemma. local posttext if #tag_sets == 1 then local tags = tag_sets[1].tags local last_tag = tags[#tags] if last_tag:match("^combined with .*$") then -- NOTE: table.remove() side-effects the list by removing and returning the last item. posttext = " " .. table.remove(tags) end end local function hack_clitics(text) return text:gsub("%[%[(.-)%]%]", function(pronoun) return m_links.full_link({term = pronoun, lang = lang}, "term") end) end -- Hack to convert raw-linked pronouns e.g. in 'combined with [[te]]' to Spanish-linked pronouns. for _, tag_set in ipairs(tag_sets) do for i, tag in ipairs(tag_set.tags) do if tag:find("%[%[") then tag_set.tags[i] = hack_clitics(tag) end end end posttext = posttext and hack_clitics(posttext) or nil local lemma_obj = { lang = lang, term = lemma, gloss = args.t, pos = args.pos, lit = args.lit, id = args.id, } if has_multiple_tag_sets then tag_sets = require(accel_module).combine_tag_sets_into_multipart(tag_sets, lang, "verb") end return m_form_of.tagged_inflections { lang = lang, tag_sets = tag_sets, lemmas = {lemma_obj}, lemma_face = "term", pretext = pretext, posttext = posttext, POS = "verb", } end function export.verb_form_of(frame) local parargs = frame:getParent().args local params = { [1] = {required = true}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use ["slots"] = {}, -- restrict to only these slots ["noslots"] = {}, -- restrict to all but these slots ["t"] = {}, ["gloss"] = {alias_of = "t"}, ["lit"] = {}, ["pos"] = {}, ["id"] = {}, } local m_es_verb = require(es_verb_module) local args = require("Module:parameters").process(parargs, params) local alternant_multiword_spec = m_es_verb.do_generate_forms(args, "es-verb form of") local non_lemma_form = alternant_multiword_spec.verb_form_of_form local lemmas = {} if not alternant_multiword_spec.forms.infinitive then error("Internal error: No infinitive?") end for _, formobj in ipairs(alternant_multiword_spec.forms.infinitive) do m_table.insertIfNot(lemmas, m_links.remove_links(formobj.form)) end -- FIXME: Consider supporting multiple lemmas. local lemma = lemmas[1] local slot_restrictions = args.slots and m_table.listToSet(rsplit(args.slots, ",")) or nil local negated_slot_restrictions = args.noslots and m_table.listToSet(rsplit(args.noslots, ",")) or nil local tags = {} local slots_seen = {} local function loop_over_verb_slots(verb_slots) for _, slot_accel in ipairs(verb_slots) do local slot, accel = unpack(slot_accel) -- If used on the infinitive page, don't include the infinitive as a form. if slot ~= "infinitive" and slot ~= "infinitive_linked" then local forms = alternant_multiword_spec.forms[slot] if forms then for _, formobj in ipairs(forms) do local form = m_links.remove_links(formobj.form) -- Skip "combined forms" for reflexive verbs; otherwise e.g. ''ámate'' gets identified as a -- combined form of [[amarse]]. if non_lemma_form == form and (not alternant_multiword_spec.refl or not slot:find("comb")) then if (not slot_restrictions or slot_restrictions[slot]) and ( not negated_slot_restrictions or not negated_slot_restrictions[slot] ) then m_table.insertIfNot(tags, {tag = accel}) end if slot_restrictions or negated_slot_restrictions then slots_seen[slot] = true end end end end end end end local function check_slot_restrictions_against_slots_seen() local function get_slots_seen() local slots_seen_list = {} for slot, _ in pairs(slots_seen) do table.insert(slots_seen_list, slot) end table.sort(slots_seen_list) return slots_seen_list end local function check_against_slots_seen(restrictions, prefix) for slot, _ in pairs(restrictions) do if not slots_seen[slot] then error(("%sslot restriction for slot '%s' had no effect (typo?) because it is not any of the slots matching form '%s' for verb '%s': possible values %s"):format( prefix, slot, non_lemma_form, lemma, table.concat(get_slots_seen(), ","))) end end end if slot_restrictions then check_against_slots_seen(slot_restrictions, "") end if negated_slot_restrictions then check_against_slots_seen(negated_slot_restrictions, "negated ") end end loop_over_verb_slots(alternant_multiword_spec.verb_slots_basic) loop_over_verb_slots(alternant_multiword_spec.verb_slots_combined) if next(slots_seen) then check_slot_restrictions_against_slots_seen() end if #tags > 0 then return generate_inflection_of(tags, lemma, nil, args) end -- If we don't find any matches, we try again, looking for non-reflexive forms of reflexive-only verbs. slots_seen = {} if alternant_multiword_spec.refl and not lemma:find(" ") then local refl_forms_to_tags = {} -- Only basic verb forms (not combined forms) have non-reflexive parts generated. for _, slot_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slot_accel) local part_forms = alternant_multiword_spec.forms[slot .. "_non_reflexive"] local full_forms = alternant_multiword_spec.forms[slot] local variant_forms = alternant_multiword_spec.forms[slot .. "_variant"] -- Make sure same number of part and full forms, otherwise we can't match them up. if part_forms and full_forms and #part_forms == #full_forms and ( not variant_forms or #part_forms == #variant_forms) then -- Find part form the same as the non-lemma form we're generating the inflection(s) of, -- and accumulate properties into refl_forms_to_tags. for i, part_form in ipairs(part_forms) do local form = part_form.form if non_lemma_form == form then if (not slot_restrictions or slot_restrictions[slot]) and ( not negated_slot_restrictions or not negated_slot_restrictions[slot] ) then local saw_existing = false for _, refl_form_to_tags in ipairs(refl_forms_to_tags) do if refl_form_to_tags.form == full_forms[i].form then table.insert(refl_form_to_tags.tags, {tag = accel}) saw_existing = true break end end if not saw_existing then table.insert(refl_forms_to_tags, { form = full_forms[i].form, tags = {{tag = accel}}, variant = variant_forms and variant_forms[i].form, }) end end if slot_restrictions or negated_slot_restrictions then slots_seen[slot] = true end end end end end if next(slots_seen) then check_slot_restrictions_against_slots_seen() end if #refl_forms_to_tags > 0 then local parts = {} for _, refl_form_to_tags in ipairs(refl_forms_to_tags) do local only_used_in if refl_form_to_tags.variant then only_used_in = frame:preprocess(("{{only used in|es|%s}}, <span class='use-with-mention'>syntactic variant of {{m|es|%s}}</span>"):format( refl_form_to_tags.variant, refl_form_to_tags.form)) else only_used_in = frame:preprocess(("{{only used in|es|%s}}"):format(refl_form_to_tags.form)) end if refl_form_to_tags.form == lemma then table.insert(parts, only_used_in) else local infl = generate_inflection_of(refl_form_to_tags.tags, lemma, only_used_in .. ", ", args) table.insert(parts, infl) end end return table.concat(parts, "\n# ") end end error(("'%s' is not any of the forms of the verb '%s'"):format(non_lemma_form, table.concat(lemmas, "/"))) end return export j7xwd5gp8g5nreso09jhbu8syd1ypca モジュール:es-verb 828 589438 2281183 2026-06-09T09:11:59Z Kuroco2k 84207 [[:en:Module:es-verb]] 2281183 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> ]=] --[=[ TERMINOLOGY: -- "slot" = A particular combination of tense/mood/person/number/etc. Example slot names for verbs are "pres_1s" (present indicative first-person singular), "pres_sub_2sv" (present subjunctive second-person singular voseo form) "impf_sub_ra_3p" (imperfect subjunctive -ra form third-person plural), "imp_1p_comb_lo" (imperative first-person plural combined with clitic [[lo]]). Each slot is filled with zero or more forms. -- "form" = The conjugated Spanish form representing the value of a given slot. -- "lemma" = The dictionary form of a given Spanish term. For Spanish, always the infinitive. ]=] --[=[ FIXME: 1. Implement no_pres_stressed for aterir, garantir. (NOTE: Per RAE, garantir used in all forms in Argentina/Uruguay.) [DONE] 2. Support concluyo. [DONE] 3. Fixes for veo -> ve vs. preveo -> prevé. [DONE] 4. Various more irregular verbs, e.g. predecir, redecir, bendecir, maldecir. [DONE] 5. Raising of e -> i, o -> u before -iendo, -ió, etc. occurs only in -ir verbs. [DONE] 6. Raising of e -> i, o -> u happens before subjunctive -amos, -áis in -ir verbs. [DONE] 7. Implement reflexive verbs. [DONE] 8. Implement categories. [DONE] 9. Implement show_forms. [DONE] 10. Reconcile stems.vowel_alt from irregular verbs with vowel_alt from indicators. May require moving the irregular-verb handling code in construct_stems() into detect_indicator_spec(). [DONE] 11. Implement make_table. [DONE] 12. Vowel alternation should show u-ue (jugar), i-ie (adquirir), e-í (reír) alternations specially. [DONE] 13. Handle linking of multiword forms as is done in [[Module:es-headword]]. [DONE] 14. Implement comparison against previous module. [DONE] 15. Implement categorization of irregularities for individual tenses. 16. Support nocomb=1. [DONE] 17. (Possibly) display irregular forms in a different color, as with the old module. 18. (Possibly) display a "rule" description indicating the types of alternations. 19. Implement replace_reflexive_indicators(). [NOT DONE; SUPPORT REMOVED] 20. Implement verbs with attached clitics e.g. [[pasarlo]], [[corrérsela]]. [DONE] 21. When footnote + tú/vos notation, add a space before tú/vos. 22. Fix [[erguir]] so ie-i vowel alternation produces ye- at beginning of word, similarly for errar. Also allow multiple vowel alternation specs in irregular verbs, for errar. Finally, ie should show as e-ye for errar and as e-ye-i for erguir. [DONE] 23. Figure out why red links in combined forms show up as black not red. 24. Consider including alternative superseded forms of verbs like [[ciar]] (e.g. pret_3s = cio, ció with footnote). 25. Allow conjugation of suffixes e.g. -ir, -ecer; need to fix in [[Module:inflection utilities]]. [DONE] 26. Allow specification of stems esp. so that footnotes can be hung off them; use + for the default. 27. Don't remove monosyllabic accents when conjugating suffixes. [DONE] 28. If multiword expression with no <>, add <> after first word, as with [[Module:es-headword]]. [DONE] 29. (Possibly) link the parts of a reflexive or cliticized infinitive, as done in [[Module:es-headword]]. [DONE] 30. Final fixes to allow [[Module:es-headword]] to use this module. [DONE] --]=] local lang = require("Module:languages").getByCode("es") local m_string_utilities = require("Module:string utilities") local m_links = require("Module:links") local m_table = require("Module:table") local iut = require("Module:inflection utilities") local put = require("Module:parse utilities") local com = require("Module:es-common") local force_cat = false -- set to true for debugging local check_for_red_links = false -- set to false for debugging local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsplit = mw.text.split local rsub = com.rsub local unpack = unpack or table.unpack -- Lua 5.2 compatibility local function link_term(term) return m_links.full_link({ lang = lang, term = term }, "term") end local V = com.V -- vowel regex class local AV = com.AV -- accented vowel regex class local C = com.C -- consonant regex class local tuteo_link = link_term("tuteo") local voseo_link = link_term("voseo") local fut_sub_note = "[rare; now chiefly used in legal language]" local pres_sub_voseo_note = "[Argentine and Uruguayan " .. voseo_link .. " prefers the " .. tuteo_link .. "-form for the present subjunctive]" local vowel_alternants = m_table.listToSet({"ie", "ie-i", "ye", "ye-i", "ue", "ue-u", "hue", "i", "í", "ú", "+"}) local vowel_alternant_to_desc = { ["ie"] = "e-ie", ["ie-i"] = "e-ie-i", ["ye"] = "e-ye", ["ye-i"] = "e-ye-i", ["ue"] = "o-ue", ["ue-u"] = "o-ue-u", ["hue"] = "o-hue", ["i"] = "e-i", ["í"] = "i-í", ["ú"] = "u-ú", } local raise_vowel = {["e"] = "i", ["o"] = "u"} local all_persons_numbers = { ["1s"] = "1|s", ["2s"] = "2|s", ["2sv"] = "2|s|voseo", ["3s"] = "3|s", ["1p"] = "1|p", ["2p"] = "2|p", ["3p"] = "3|p", } local person_number_list_basic = {"1s", "2s", "3s", "1p", "2p", "3p"} local person_number_list_voseo = {"1s", "2s", "2sv", "3s", "1p", "2p", "3p"} local imp_person_number_list = {"2s", "2sv", "3s", "1p", "2p", "3p"} local neg_imp_person_number_list = {"2s", "3s", "1p", "2p", "3p"} person_number_to_reflexive_pronoun = { ["1s"] = "me", ["2s"] = "te", ["2sv"] = "te", ["3s"] = "se", ["1p"] = "nos", ["2p"] = "os", ["3p"] = "se", } local indicator_flags = m_table.listToSet { "no_pres_stressed", "no_pres1_and_sub", "only3s", "only3sp", "only3p", "no_built_in", } -- Initialize all the slots for which we generate forms. The particular slots may depend on whether we're generating -- combined slots (`not alternant_multiword_spec.nocomb`, which is always false if we're dealing with a verb with an -- attached clitic, such as [[hincarla]], or a reflexive or partly-reflexive verb, where a partly-reflexive verb is -- a conjoined term made up of two or more verbs, where some but not all are reflexive). It may also depend on whether -- we're being requested to generate some double-combined forms, such as [[llevándoselo]]; see the comment below for -- `verb_slot_double_combined_rows`. local function add_slots(alternant_multiword_spec) -- "Basic" slots: All slots that go into the regular table (not the combined-form table). alternant_multiword_spec.verb_slots_basic = { {"infinitive", "inf"}, {"infinitive_linked", "inf"}, {"gerund", "ger"}, {"pp_ms", "m|s|past|part"}, {"pp_fs", "f|s|past|part"}, {"pp_mp", "m|p|past|part"}, {"pp_fp", "f|p|past|part"}, } -- Slots that go into the combined-form table, along with double-combined slots (e.g. [[llevándoselo]]) that are -- requested for use with {{es-verb form of}}. alternant_multiword_spec.verb_slots_combined = {} -- Special slots used to handle non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- For example, for a reflexive-only verb like [[jambarse]], we want to be able to use {{es-verb form of}} on -- [[jambe]] (which should mention that it is a part of 'me jambe', first-person singular present subjunctive, and -- 'se jambe', third-person singular present subjunctive) or on [[jambamos]] (which should mention that it is a -- part of 'nos jambamos', first-person plural present indicative or preterite). Similarly, we want to use -- {{es-verb form of}} on [[jambando]] (which should mention that it is a part of 'se ... jambando', syntactic -- variant of [[jambándose]], which is the gerund of [[jambarse]]). To do this, we need to be able to map -- non-reflexive parts like [[jambe]], [[jambamos]], [[jambando]], etc. to their reflexive equivalent(s), to the -- tag(s) of the equivalent(s), and, in the case of forms like [[jambando]], [[jambar]] and imperatives, to the -- separated syntactic variant of the verb+clitic combination. We do this by creating slots for the non-reflexive -- part equivalent of each basic reflexive slot, and for the separated syntactic-variant equivalent of each basic -- reflexive slot that is formed of verb+clitic. We use slots in this way to deal with multiword lemmas. Note that -- we run into difficulties mapping between reflexive verbs, non-reflexive part equivalents, and separated syntactic -- variants if a slot contains more than one form. To handle this, if there are the same number of forms in two -- slots we're trying to match up, we assume the forms match one-to-one; otherwise we don't match up the two slots -- (which means {{es-verb form of}} won't work in this case, but such a case is extremely rare and not worth -- worrying about). Alternatives that handle this "properly" are significantly more complicated and require -- non-trivial modifications to [[Module:inflection utilities]]. local need_special_verb_form_of_slots = alternant_multiword_spec.source_template == "es-verb form of" and alternant_multiword_spec.refl if need_special_verb_form_of_slots then alternant_multiword_spec.verb_slots_reflexive_verb_form_of = { {"infinitive_non_reflexive", "-"}, {"infinitive_variant", "-"}, {"gerund_non_reflexive", "-"}, {"gerund_variant", "-"}, } else alternant_multiword_spec.verb_slots_reflexive_verb_form_of = {} end -- For generating combined forms, i.e. combinations of a basic form (specifically, infinitive, gerund or an -- imperative form) with a clitic (or in some cases, two clitics). This is a list of lists of the form -- {BASIC_SLOT, CLITICS} where BASIC_SLOT is the slot to add the clitic pronouns to (e.g. "gerund" or "imp_2s") -- and CLITICS is a list of the clitic pronouns to add. alternant_multiword_spec.verb_slot_combined_rows = {} -- For generating double combined forms (e.g. [[llevándoselo]] or [[dámela]]). This is used by {{es-verb form of}} -- when it detects that it is being requested to find the inflection tags for a double-combined form. The number of -- double-combined forms is relatively large, so to optimize this, [[Module:es-inflections]] (which implements -- {{es-verb form of}}) detects which two clitics are involved, and we only generate double-combined forms -- involving those two clitics; this is specified using `double_combined_forms_to_include`, passed into -- do_generate_forms(). The value of this field is a list of lists of the form {SINGLE_COMB_SLOT, CLITICS} where -- SINGLE_COMB_SLOT is the single-combined slot to add the object clitic pronouns to (e.g. "gerund_comb_se" or -- "imp_2s_comb_me") and CLITICS is a list of the clitic pronouns to add. CLITICS will normally be a length-one -- list whose value is one of {"lo", "la", "le", "los", "las", "les"}. alternant_multiword_spec.verb_slot_double_combined_rows = {} -- Add entries for a slot with person/number variants. -- `verb_slots` is the table to add to. -- `slot_prefix` is the prefix of the slot, typically specifying the tense/aspect. -- `tag_suffix` is a string listing the set of inflection tags to add after the person/number tags. -- `person_number_list` is a list of the person/number slot suffixes to add to `slot_prefix`. local function add_personal_slot(verb_slots, slot_prefix, tag_suffix, person_number_list) for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(verb_slots, {slot, accel}) end end -- Add a personal slot (i.e. a slot with person/number variants) to `verb_slots_basic`. local function add_basic_personal_slot(slot_prefix, tag_suffix, person_number_list, no_special_verb_form_of_slot, need_variant_slot) add_personal_slot(alternant_multiword_spec.verb_slots_basic, slot_prefix, tag_suffix, person_number_list) -- Add special slots for handling non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- See comment above in `need_special_verb_form_of_slots`. if need_special_verb_form_of_slots and not no_special_verb_form_of_slot then for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local basic_slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_non_reflexive", "-"}) if need_variant_slot then table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_variant", "-"}) end end end end add_basic_personal_slot("pres", "pres|ind", person_number_list_voseo) add_basic_personal_slot("impf", "impf|ind", person_number_list_basic) add_basic_personal_slot("pret", "pret|ind", person_number_list_basic) add_basic_personal_slot("fut", "fut|ind", person_number_list_basic) add_basic_personal_slot("cond", "cond", person_number_list_basic) add_basic_personal_slot("pres_sub", "pres|sub", person_number_list_voseo) add_basic_personal_slot("impf_sub_ra", "impf|sub", person_number_list_basic) add_basic_personal_slot("impf_sub_se", "impf|sub", person_number_list_basic) add_basic_personal_slot("fut_sub", "fut|sub", person_number_list_basic) -- Need variant slots because the imperative clitics are suffixed. add_basic_personal_slot("imp", "imp", imp_person_number_list, nil, "need variant slot") -- Don't need special non-reflexive-part slots because the negative imperative is multiword, of which the -- individual words are 'no' + subjunctive. add_basic_personal_slot("neg_imp", "neg|imp", neg_imp_person_number_list, "no special verb form of") -- Don't need special non-reflexive-part slots because we don't want [[jambando]] mapping to [[jambándome]] -- (only [[jambándose]]) or [[jambar]] mapping to [[jambarme]] (only [[jambarse]]). add_basic_personal_slot("infinitive", "inf", person_number_list_basic, "no special verb form of") add_basic_personal_slot("gerund", "ger", person_number_list_basic, "no special verb form of") local third_person_object_clitics = {"lo", "la", "le", "los", "las", "les"} -- Add combined-form slots. if not alternant_multiword_spec.nocomb then -- Add a row of slots representing the combination of a basic slot with a clitic. `basic_slot` is the basic slot -- descriptor, `tag_prefix` is a string describing the inflection tags of the basic slot, and `personal_clitics` -- is a list of the personal clitics ("me", "te", "se", "nos" or "os") to add to the basic slot. local function add_combined_slot_row(basic_slot, tag_prefix, personal_clitics) -- First, add each individual combined slot to `verb_slots_combined`. local clitics_with_object = m_table.append(personal_clitics, third_person_object_clitics) for _, clitic in ipairs(clitics_with_object) do local slot = basic_slot .. "_comb_" .. clitic -- You have to pass this through full_link() to get a Spanish-specific link local accel = tag_prefix .. "|combined with [[" .. clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) end -- Also, add the row to `verb_slot_combined_rows`. table.insert(alternant_multiword_spec.verb_slot_combined_rows, {basic_slot, clitics_with_object}) -- Also do double-combined forms for a specific set of clitics, if requested. See the comment above -- `verb_slot_double_combined_rows` above. if alternant_multiword_spec.double_combined_forms_to_include then -- Add a special "lxx" clitic for le/les when transformed into se in double-combined forms. local personal_clitics_with_lxx = {unpack(personal_clitics)} table.insert(personal_clitics_with_lxx, "lxx") for _, personal_clitic in ipairs(personal_clitics_with_lxx) do for _, object_clitic in ipairs(third_person_object_clitics) do for _, form_to_include in ipairs(alternant_multiword_spec.double_combined_forms_to_include) do local to_include_personal_clitic, to_include_object_clitic = unpack(form_to_include) if personal_clitic == to_include_personal_clitic and object_clitic == to_include_object_clitic then local single_comb_slot = basic_slot .. "_comb_" .. personal_clitic local slot = single_comb_slot .. "_" .. object_clitic accel_clitic = personal_clitic == "lxx" and "[[le]]/[[les]]" or "[[" .. personal_clitic .. "]]" local accel = tag_prefix .. "|combined with indirect object " .. accel_clitic .. " and direct object [[" .. object_clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) table.insert(alternant_multiword_spec.verb_slot_double_combined_rows, {single_comb_slot, {object_clitic}}) break end end end end end end add_combined_slot_row("infinitive", "inf", {"me", "te", "se", "nos", "os"}) add_combined_slot_row("gerund", "gerund", {"me", "te", "se", "nos", "os"}) local function add_combined_imp_slot_row(persnum, personal_clitics) add_combined_slot_row("imp_" .. persnum, all_persons_numbers[persnum] .. "|imp", personal_clitics) end add_combined_imp_slot_row("2s", {"me", "te", "nos"}) add_combined_imp_slot_row("2sv", {"me", "te", "nos"}) add_combined_imp_slot_row("3s", {"me", "se", "nos"}) add_combined_imp_slot_row("1p", {"te", "nos", "os"}) add_combined_imp_slot_row("2p", {"me", "nos", "os"}) add_combined_imp_slot_row("3p", {"me", "se", "nos"}) end -- Generate the list of all slots. alternant_multiword_spec.all_verb_slots = {} for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_combined) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_reflexive_verb_form_of) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end alternant_multiword_spec.verb_slots_basic_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_basic_map[slot] = accel end alternant_multiword_spec.verb_slots_combined_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_combined) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_combined_map[slot] = accel end end -- Return true if `form` is accented and is likely monosyllabic. Used in remove_monosyllabic_accents(); if true, we -- run the syllabification algorithm to determine the syllable count, and if monosyllabic, remove the accent. Also used -- in conjunction with user-specified form overrides to add an asterisk to prevent accents from being removed. local function may_need_monosyllabic_accent_removed(form) return not rfind(form, "^%-") and rfind(form, AV) and not rfind(form, V .. C .. V) end local overridable_stems = {} -- If `add_monosyllabic_asterisk` is given, add a * to accented forms that may be monosyllabic to prevent the accent -- from being removed in remove_monosyllabic_accents(). local function allow_multiple_values_for_override(separated_groups, data, add_monosyllabic_asterisk) local retvals = {} for _, separated_group in ipairs(separated_groups) do local footnotes = data.fetch_footnotes(separated_group) local form = separated_group[1] if add_monosyllabic_asterisk and may_need_monosyllabic_accent_removed(form) then form = form .. "*" end -- Add suppress_prefix to prevent the built-in verb prefix from being added to the override. local retval = {form = form, footnotes = footnotes, suppress_prefix = true} table.insert(retvals, retval) end return retvals end local function simple_choice(choices) return function(separated_groups, data) if #separated_groups > 1 then data.parse_err("For spec '" .. data.prefix .. ":', only one value currently allowed") end if #separated_groups[1] > 1 then data.parse_err("For spec '" .. data.prefix .. ":', no footnotes currently allowed") end local choice = separated_groups[1][1] if not m_table.contains(choices, choice) then data.parse_err("For spec '" .. data.prefix .. ":', saw value '" .. choice .. "' but expected one of '" .. table.concat(choices, ",") .. "'") end return choice end end for _, overridable_stem in ipairs { "pres_unstressed", "pres_stressed", "pres1_and_sub", -- Don't include pres1; use pres_1s if you need to override just that form "impf", "full_impf", "pret", {"pret_conj", simple_choice({"irreg", "ar", "er", "ir"}) }, "fut", "cond", "pres_sub_stressed", "pres_sub_unstressed", "impf_sub_ra", "impf_sub_se", "fut_sub", "pp", } do if type(overridable_stem) == "string" then overridable_stems[overridable_stem] = allow_multiple_values_for_override else local stem, validator = unpack(overridable_stem) overridable_stems[stem] = validator end end local function match_against_verbs(ref_verb, prefixes) return function(verb) for _, prefix in ipairs(prefixes) do if verb == prefix .. ref_verb then return prefix, ref_verb end end return nil end end --[=[ Special cases for verbs: diluviar, atardecer: impersonal; all finite non-3s forms are nonexistent or hypothetical. Handle using '.only3s'. empecer, atañer, concernir: all finite non-third-person forms are nonexistent or hypothetical. Handle using '.only3sp'. desnacer: Former module claimed an irregular past participle 'desnato'. Verb is not in RAE at all and barely exists; unlikely to have irregular past participle. desposeer: Former module claimed an irregular past participle 'desposeso'. Not per RAE. valer: Former module claimed an irregular imperative 'val'. Not per RAE. manumitir: Former module claimed an irregular past participle 'manumiso'. Not per RAE. raer: Former module claimed a pres 1sg rao. Not per RAE. rehuir: Handle using +ú. sustituir: Former module claimed an irregular past participle 'sustituto'. Not per RAE. venir: Former module claimed an irregular clitic combination ven + nos -> venos. Not per native speakers. --------- Verbs to check: rehuir (+ú), prohibir (+í), reunir (+ú) --------- -ir verbs: There are several types of vowel alternations: 1. No alternation. Includes some verbs in -e- and -o-, e.g. aterir(se) (no_pres_stressed), tra(n)sgredir (pres_stressed forms rare), abolir (pres_stressed forms rare), colorir (no_pres_stressed), sumergir, divergir, convergir, arrecir (no_pres_stressed), rostir, polir (obsolete), condir (obsolete), possibly ascondir (obsolete), atordir (obsolete), sacodir (obsolete), sobrevendir (possible misspelling), empedernir (no_pres_stressed), decebir (obsolete; possibly actually like concebir, i.e. decibo not decebo), premir (obsolete), expremir (obsolete), exir (obsolete), escreuir (obsolete; fix conjugation), escrebir (obsolete), agredir; sometimes the stressed forms are rare or disused. (Also embaír, desvaír are no_pres_stressed.) 2a. ie: Infinitive has -e-, changing to -ie- when stressed. No raising before i+V. Only hendir, cernir, discernir, concernir (only3sp); discernir -> discierno, discerniendo, discernió, discernamos. 2b. ye: Infinitive has -e-, changing to -ye- when stressed. No raising before i+V. Does not occur (cf. errar). 3a. ie-i: Infinitive has -e- or -i-, changing to -ie- when stressed. Raising before i+V and 1p/2p pres subjunctive: sentir -> siento, sintiendo, sintió, sintamos. adquirir -> adquiero, adquiriendo, adquirió, adquiramos. 3b. ye-i: Infinitive has -e-, changing to -ye- when stressed. Raising before i+V and 1p/2p pres subjunctive. Only erguir: erguir -> yergo, irguiendo, irguió, irgamos. 4. i: Infinitive has -e-, changing to -i- when stressed. Raising before i+V and 1p/2p pres subjunctive: vestir -> visto, vistiendo, vistió, vistamos. Variant: ceñir -> ciño, ciñendo, ciñó, ciñamos. NOTE: preterir (no_pres_stressed). 5. ue-u: Infinitive has -o-, changing to -ue- when stressed. Raising before i+V and 1p/2p pres subjunctive: Only dormir, morir and compounds. dormir -> duermo, durmiendo, durmió, durmamos. 6. ue: This type would be parallel to 'ie' but doesn't appear to exist. --------- Verbs to fix (extra forms need to be excised or deleted): The above verbs under type (1) -ir vowel alternations; [[neviscar]] (impersonal), [[acaecer]] (third-person only), [[acontecer]] (third-person only), [[cellisquear]] (impersonal), [[pintear]] (impersonal? other meaning "to play hookey" given, not in RAE), [[diluviar]] (impersonal). [[desabrir]] (not like abrir, rare in pres_stressed/sub forms), [[jabrir]] (not like abrir). Verbs with existing errors: * [[abeldar]]: (missing <ie>) [FORMS TO DELETE] * [[acaecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[acontecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[anticuar]] (conjugated without ú) [FORMS TO DELETE] * [[antojar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[aerografiar]]: (conjugated without í) [FORMS TO DELETE] * [[afiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[agraviar]]: (wrongly has í) [FORMS TO DELETE] * [[arrecir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[aserrar]]: (missing <ie>) [FORMS TO DELETE] * [[aspaventar]]: (missing <ie>) [OK] * [[atesar]]: (wrongly has ie) [FORMS TO DELETE] * [[avalentar]]: (wrongly has ie) [FORMS TO DELETE] * [[autorregularse]] (conjugated as non-reflexive) [OK] * [[auxiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[balbucir]] (pres1_and_sub nonexistent) [DELETE PRES1_AND_SUB FORMS] * [[caçar]] (conjugated as -zar) [OK] * [[calefacer]] (extra form caleface) [FIX] * [[cellisquear]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[chilenizar]] (conjugated with no cons alternation) [OK] * [[colorir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[comisariar]] (conjugated without í) [FORMS TO DELETE] * [[complacer]] (missing complega in imperative 3s) [OK] * [[comprehender]] (conjugated as comprender) [OK] * [[decebir]] (was conjugated without <i>) [FORMS TO DELETE] * [[desafiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[desagregar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desairar]]: (conjugated with í should be only +) [FORMS TO DELETE] * [[descordar]]: (missing <ue>) [FORMS TO DELETE] * [[deseleccionar]] (conjugated as desseleccionar) [OK] * [[desestacionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desgonzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desguinzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[deshacer]] (extra form deshace, desháceme etc.) [OK] * [[desnacer]] (extra form desnato etc.) [DELETE PP FORMS] * [[desposeer]] (extra form desposeso etc.) [DELETE PP FORMS] * [[dezmar]]: (wrongly has ie) [FORMS TO DELETE] * [[diluviar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[draftear]] (extraneous param lang=es) [REMOVE PARAM] * [[ejemplarizar]] (extraneous param compound=1) [compound -> combined] * [[ejercitar]] (extraneous param compound=1) [compound -> combined] * [[empecer]] (empezca has imperatives, 1s in its verb form entry) [FIX] * [[encentar]]: (wrongly has ie) [OK] * [[encubertar]]: (wrongly has ie) [FORMS TO DELETE] * [[entrechocar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[entredecir]] (imp_2s has entredice should be entredí; extra future/cond forms entredeciré etc.) [FORMS TO DELETE/FIX] * [[escenografiar]]: (conjugated without í) [FORMS TO DELETE] * [[estar]] (incorrect combined forms, e.g. éstela instead of estela) [OK] * [[extasiar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[facer]] (extra form face, fáceme, etc.) [FIX] * [[ferrar]]: (missing <ie>) [FORMS TO DELETE] * [[gloriar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[hacer]] (extra form hace, háceme, etc.) [DELETE hácete] * [[homogeneizar]] (extra form homogeneízo) [DELETE homogeneízo, homogeneízas, homogeneíza, homogeneízan, homogeneícen, homogeneícemos] * [[incensar]]: (missing <ie>) [FORMS TO DELETE] * [[ir]] (extraneous param aux=ser) [REMOVE PARAM] * [[jacer]] (extra form jace, jáceme, etc.) [FIX] * [[jarrear]] (extraneous param impersonal=yes) * [[litografiar]]: (conjugated without í) [FORMS TO DELETE] * [[manumitir]] (extra form manumiso, etc.) [FIX; is an adjective] * [[mecanografiar]]: (conjugated without í) [FORMS TO DELETE] * [[mordiscar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[neviscar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[obsipar]] (conjugated as obispar) [DELETE VERB] * [[obstar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[orificar]] (conjugated as orificiar) [OK] * [[complacer]], [[placer]] (missing plega in imperative 3s, etc.) [OK] * [[prevaler]] (extra form preval, incorrect form prévalme etc.) [DELETE preval] * [[preterir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[raer]] (extra form rao) [DELETE rao] * [[rebordar]] (extraneous param lang=es) [REMOVE PARAM] * [[redecir]] (incorrect imp_2s redice instead of redí) [FIX] * [[reinstitucionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[reirse]] [DELETE] * [[serigrafiar]]: (conjugated without í) [FORMS TO DELETE] * [[sobresalir]] (incorrect combined forms e.g. sobrésalme) [OK] * [[superpoblar]] (missing <ue>) [FORMS TO DELETE] * [[sustituir]] (extra form sustituto, etc.) [OK] * [[usucapir]]: (used only in inf and pp) [DELETE ALL FORMS BUT PP] * [[valefacer]] (extra form valeface) [FIX] * [[valer]] (extra form val, etc.) [OK] * LOTS OF COMBINED FORMS OF VERBS IN -iar, -uar, -ai-, -au-, -ei-, -eu-, etc. Example: afeitar (afeítate, afeítese, afeítense). Need a script to find them. * [[acostar]]: normally <ue> but in meaning "arrive at the coast", <> * [[adecuar]]: <+,ú> * [[aerografiar]]: <í> * [[aferrar]]: <+,ie[obsolete]> * [[afiliar]]: <> * [[aforar]]: in meaning "to gauge, to measure": <>; in meaning "otorgar fuero": <ue> * [[arrecir]]: <no_pres_stressed> * [[agraviar]]: <> * [[agriar]]: <í,+> * [[aserrar]]: <ie> * [[asolar]]: in meaning "destroy": <ue,+>; in meaning "to dry up": <> * [[aspaventar]]: <ie> * [[atentar]]: in meaning "to commit a crime" does not have vowel alt * [[atesar]]: <>; possibly <ie> in obsolete meaning "atiesar" * [[atestar]]: in meaning "to pack": <ie,+>; in meaning "testify": <> * [[autoevacuarse]]: <+,ú> * [[auxiliar]]: <> * [[avalentar]]: <> * [[cimentar]]: <ie,+> * [[colar]]: most meanings <ue> but "canonically confer (an ecclesiastical benefit)" <> * [[colorir]]: <no_pres_stressed> * [[comisariar]]: <í> * [[desafiliar]]: <> * [[desaforar]]: "to deprive of fuero": <ue,+[less common]> * [[desairar]]: <> * [[desolar]]: <ue,+> * [[desmembrar]]: <ie,+> * [[dezmar]]: <> * [[ejecutoriar]]: <í,+> * [[emparentar]]: <ie,+> * [[encentar]]: <> * [[encubertar]]: <> * [[engrosar]]: <ue,+> * [[escenografiar]]: <í> * [[evacuar]]: <+,ú> * [[expatriar]]: <í,+> * [[extasiar]]: <í> * [[ferrar]]: <ie> * [[follar]]: <ue> * [[gloriar]]: <í> * [[hibernar]]: no vowel alt or e-ie; e-ie not in RAE, ask about it * [[historiar]]: <í,+> * [[incensar]]: <ie> * [[invernar]]: <ie,+> * [[licuar]]: <+,ú> * [[litografiar]]: <í> * [[mecanografiar]]: <í> * [[paliar]]: <í,+> * [[preterir]]: <i.no_pres_stressed> * [[promiscuar]]: <+,ú> * [[readecuar]]: <+,ú> * [[repatriar]]: <í,+> * [[retrocar]]: <ue,+> * [[serigrafiar]]: <í> * [[soterrar]]: <ie,+> * [[superpoblar]]: <ue> * [[templar]]: <+,ie[in some parts of Latin America]> * [[vidriar]]: <í,+> Second round of verbs to fix: * [[apropriar]]: forms point to reflexive [FORMS TO FIX] * [[autogobernarse]]: (missing <ie>) [FORMS TO DELETE] * [[autorreproducirse]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[aventarse]]: (missing <ie>) [FORMS TO DELETE] * [[aventar]]: forms point to reflexive [FORMS TO FIX] * [[culiar]]: yo culio or culío? [VERIFY] * [[desnacer]]: delete [[dasnatos]] * [[poseer]]: delete [[posesa]], [[posesos]], [[posesas]] * [[reproducir]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[trasgredir]]: (wrongly had <i>) [FORMS TO DELETE] --------- Irregular conjugations. Each entry is processed in turn and consists of an object with two fields: 1. match=: Specifies the irregular verbs that match this object. 2. forms=: Specifies the irregular stems and forms for these verbs. The value of match= is either a string beginning with "^" (match only the specified verb), a string not beginning with "^" (match any verb ending in that string), or a function that is passed in the verb and should return the prefix of the verb if it matches, otherwise nil. The function match_against_verbs() is provided to facilitate matching a set of verbs with a common ending and specific prefixes (e.g. [[andar]] and [[desandar]] but not [[mandar]], etc.). The value of forms= is a table specifying stems and individual override forms. Each key of the table names either a stem (e.g. `pres_stressed`), a stem property (e.g. `vowel_alt`) or an individual override form (e.g. `pres_1s`). Each value of a stem can either be a string (a single stem), a list of strings, or a list of objects of the form {form = STEM, footnotes = {FOONOTES}}. Each value of an individual override should be of exactly the same form except that the strings specify full forms rather than stems. The values of a stem property depend on the specific property but are generally strings or booleans. In order to understand how the stem specifications work, it's important to understand the phonetic modifications done by combine_stem_ending(). In general, the complexities of predictable stem and ending modifications are all handled in this function. In particular: 1. Spelling-based modifications (c/z, g/gu, gu/gü, g/j) occur automatically as appropriate for the ending. 2. Raising of e -> i, o -> u in -ir verbs before an ending beginning with i + vowel, as well as in the 1p/2p forms of the present subjunctive (dormir -> durmiendo, durmió, durmamos), are handled here. Raising happens only for -ir verbs and only when the stem setting `raising_conj` is true (which is normally set to true when vowel alternations `ie-i`, `ye-i`, `ue-u`, `i`, `í` or `ú` are specified). 3. Numerous modifications are automatically made before an ending beginning with i + vowel. These include: a. final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; b. in the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. imperfect and and future subjunctive), initial i absorbed after j and u (dijeron not #dijieron, likewise for condujeron, trajeron; also fueron not #fuyeron). This happens only when stem setting `pret_conj` == "irreg"; this must be set explicitly by irregular verbs. Does not apply everywhere because of cases like regular [[tejer]] (tejieron not #tejeron), regular [[concluir]] (concluyeron not #conclueron). c. initial i of ending -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; ir -> yendo; d. initial i of ending -> y after gü, which becomes gu: argüir -> arguyó, arguyera, arguyendo; e. initial i of ending absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo 4. If the ending begins with (h)i, it gets an accent after a/e/i/o to prevent the two merging into a diphthong: caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. concluir -> concluiste, concluimos. 5. In -uir verbs (i.e. -ir verbs with stem ending in -u), a y is added before endings beginning with a/e/o: concluir -> concluyo, concluyen, concluya, concluyamos. Note that preterite concluyó, gerund concluyendo, etc. are handled by a different rule above (3b). The following stems are recognized: -- pres_unstressed: The present indicative unstressed stem (2s voseo, 1p, 2p). Also controls the imperative 2p and gerund. Defaults to the infinitive stem. -- pres_stressed: The present indicative stressed stem (1s, 2s, 3s, 3p). Also controls the imperative 2s. Default is empty if indicator `no_pres_stressed`, else a vowel alternation if such an indicator is given (e.g. `ue`, `ì`), else the infinitive stem. -- pres1_and_sub: Overriding stem for 1s present indicative and the entire subjunctive. Only set by irregular verbs and by the indicator `no_pres_stressed` (since verbs of this sort, e.g. [[aterir]], are missing the entire subjunctive as well as the forms with stressed root). Used by many irregular verbs, e.g. [[caer]], [[roer]], [[salir]], [[tener]], [[valer]], [[venir]], etc. Some verbs set this and then supply an override for the pres_1sg if it's irregular, e.g. [[saber]], with irregular subjunctive stem "sep-" and special 1s present indicative "sé*" (the * indicates that the monosyllabic accent should not be removed). -- pres1: Special stem for 1s present indicative. Normally, do not set this explicitly. If you need to specify an irregular 1s present indicative, use the form override pres_1s= to specify the entire form. Defaults to pres1_and_sub if given, else pres_stressed. -- pres_sub_unstressed: The present subjunctive unstressed stem (1p, 2p, also 2s voseo for -ar verbs). Defaults to pres1_and_sub if given, else the infinitive stem. -- pres_sub_stressed: The present subjunctive stressed stem (1s, 2s, 3s, 1p, also 2s voseo for -er/-ir verbs). Defaults to pres1. -- impf: The imperfect stem. Defaults to the infinitive stem. -- pret: The preterite stem. Defaults to the infinitive stem. -- pret_conj: Determines the set of endings used in the preterite. Should be one of "ar", "er", "ir" or "irreg". Defaults to the conjugation as determined from the infinitive. -- fut: The future stem. Defaults to the infinitive stem. -- cond: The conditional stem. Defaults to fut. -- impf_sub_ra: The imperfect subjunctive -ra stem. Defaults to the preterite stem. -- impf_sub_se: The imperfect subjunctive -se stem. Defaults to the preterite stem. -- fut_sub: The future subjunctive stem. Defaults to the preterite stem. -- pp: The past participle stem. Default is based on the verb conjugation: infinitive stem + "ad" for -ar verbs, otherwise infinitive stem + "id". ]=] local built_in_conjugations = { { -- andar, desandar -- we don't want to match e.g. mandar. match = match_against_verbs("andar", {"", "des"}), forms = {pret = "anduv", pret_conj = "irreg"} }, { -- asir, desasir match = "asir", -- use 'asgu' because we're in a front environment; if we use 'asg', we'll get '#asjo' forms = {pres1_and_sub = "asgu"} }, { -- abrir, cubrir and compounds match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(brir)$") -- Only match abrir, cubrir and compounds, and don't match desabrir/jabrir if not prefix then return nil elseif not prefix:find("a$") and not prefix:find("cu$") then return nil elseif prefix == "desa" or prefix == "ja" then return nil else return prefix, base_verb end end, forms = {pp = "biert"} }, { match = "caber", forms = {pres1_and_sub = "quep", pret = "cup", pret_conj = "irreg", fut = "cabr"} }, { -- caer, decaer, descaer, recaer match = "caer", -- use 'caigu' because we're in a front environment; if we use 'caig', we'll get '#caijo' forms = {pres1_and_sub = "caigu"} }, { -- cocer, escocer, precocer, etc. match = "cocer", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "ue", pres1 = "cuez", pres_sub_unstressed = "coz", cons_alt = "c-z"}, -- not cozco, as would normally be generated }, { -- dar, desdar match = match_against_verbs("dar", {"", "des"}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_1s = "doy", pres_2s = "dás", pres_3s = "dá", pres_2p = "dáis", pres_3p = "dán", pret = "d", pret_conj = "er", pres_sub_1s = "dé*", -- * signals that the monosyllabic accent must remain pres_sub_2s = "dés", pres_sub_3s = "dé*", pres_sub_2p = "déis", pres_sub_3p = "dén", imp_2s = "dá", } }, { -- decir, redecir, entredecir match = match_against_verbs("decir", {"", "re", "entre"}), forms = { -- for this and variant verbs in -decir, we set cons_alt to false because we don't want the -- verb categorized as a c-zc alternating verb, which would happen by default -- use 'digu' because we're in a front environment; if we use 'dig', we'll get '#dijo' pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir", imp_2s = "dí" -- need the accent for the compounds; it will be removed in the simplex } }, { -- antedecir, interdecir match = match_against_verbs("decir", {"ante", "inter"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir" -- imp_2s regular } }, { -- bendecir, maldecir match = match_against_verbs("decir", {"ben", "mal"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = {"decid", "dit"} -- imp_2s regular, fut regular } }, { -- condecir, contradecir, desdecir, predecir, others? match = "decir", forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = {"decir", "dir"} -- imp_2s regular } }, { match = "^desvaír", forms = { pres_2s = "desvaes", pres_3s = "desvae", pres_3p = "desvaen", imp_2s = "desvae" } }, { -- conducir, producir, reducir, traducir, etc. match = "ducir", forms = {pret = "duj", pret_conj = "irreg"} }, { -- elegir, reelegir; not preelegir, per RAE match = match_against_verbs("elegir", {"", "re"}), forms = {vowel_alt = "i", pp = {"elegid", "elect"}} }, { -- erguir match = "^erguir", forms = { vowel_alt = {"i", "ye-i"}, -- We would not need to make this verb irregular except for the alternative unstressed present subjunctive forms -- in yerg-. We can't use pres_sub_unstressed = {"irgu", "yergu"} because the "i" and "ye-i" vowel alternations -- are e->i raising in the unstressed present subjunctive and we wrongly get irgamos/yirgamos etc. pres_sub_2sv = {"irgás", "yergás"}, pres_sub_1p = {"irgamos", "yergamos"}, pres_sub_2p = {"irgáis", "yergáis"}, }, }, { match = "^estar", forms = { pres_1s = "estoy", pres_2s = "estás", pres_2sv = "estás", pres_3s = "está", pres_3p = "están", pret = "estuv", pret_conj = "irreg", pres_sub_1s = "esté", pres_sub_2s = "estés", pres_sub_2sv = "estés", pres_sub_3s = "esté", pres_sub_3p = "estén", imp_2s = "está", imp_2sv = "está", } }, { -- freír, refreír match = "freír", forms = {vowel_alt = "í", pp = {"freíd", "frit"}} }, { match = "garantir", forms = { pres_stressed = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, pres1_and_sub = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, } }, { match = "^haber", forms = { pres_1s = "he", pres_2s = "has", pres_2sv = "has", pres_3s = {"ha", {form = "hay", footnotes = {"[used impersonally]"}}}, pres_1p = "hemos", pres_3p = "han", pres1_and_sub = "hay", -- only for subjunctive as we override pres_1s pret = "hub", pret_conj = "irreg", imp_2s = {"habe", "he"}, imp_2sv = {"habe", "he"}, fut = "habr", } }, { match = "satisfacer", forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "satisfagu", cons_alt = false, pret = "satisfic", pret_conj = "irreg", pp = "satisfech", fut = "satisfar", imp_2s = {"satisface", "satisfaz"} } }, { match = match_against_verbs("hacer", {"contra", "re"}), -- contrahacer/rehacer require an extra accent in the preterite (rehíce, rehízo). forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "hagu", cons_alt = false, pret = "hic", pret_1s = "híce", pret_3s = "hízo", pret_conj = "irreg", pp = "hech", fut = "har", imp_2s = "haz" } }, { -- hacer, deshacer, contrahacer, rehacer, facer, desfacer, jacer match = function(verb) return rmatch(verb, "^(.*[hjf])(acer)$") end, forms = { -- for these verbs, we set cons_alt to false because we don't want the verb categorized as a -- c-zc alternating verb, which would happen by default -- use 'agu' because we're in a front environment; if we use 'ag', we'll get '#hajo' pres1_and_sub = "agu", cons_alt = false, pret = "ic", pret_conj = "irreg", pp = "ech", fut = "ar", imp_2s = "az" } }, { -- imprimir, reimprimir match = "imprimir", forms = {pp = {"imprimid", "impres"}} }, { -- infecir match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "i", pres1 = "infiz", pres_sub_unstressed = "infez", cons_alt = "c-z"}, -- not infizco, as would normally be generated }, { match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "infez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { match = "^ir", forms = { pres_1s = "voy", pres_2s = "vas", pres_2sv = "vas", pres_3s = "va", pres_1p = "vamos", pres_2p = "vais", pres_3p = "van", pres1_and_sub = "vay", -- only for subjunctive as we override pres_1s full_impf = "ib", impf_1p = "íbamos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", imp_2s = "ve", imp_2sv = "andá", imp_1p = {"vamos", "vayamos"}, refl_imp_2p = {"idos", "iros"}, imp_2p_comb_os = {"idos", "iros"}, } }, { -- mecer, remecer -- we don't want to match e.g. adormecer, estremecer match = match_against_verbs("mecer", {"re", ""}), -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "mez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { -- morir, desmorir, premorir match = "morir", forms = {vowel_alt = "ue-u", pp = "muert"}, }, { -- oír, desoír, entreoír, trasoír match = "oír", -- use 'oigu' because we're in a front environment; if we use 'oig', we'll get '#oijo' forms = {pres1_and_sub = "oigu"} }, { match = "olver", -- solver, volver, bolver and derivatives forms = {vowel_alt = "ue", pp = "uelt"} }, { -- placer, desplacer match = "placer", forms = { pret_3s = {"plació", {form = "plugo", footnotes = {"[archaic]"}}}, pret_3p = {"placieron", {form = "pluguieron", footnotes = {"[archaic]"}}}, pres_sub_3s = {"plazca", {form = "plega", footnotes = {"[archaic]"}}, {form = "plegue", footnotes = {"[archaic]"}}}, impf_sub_ra_3s = {"placiera", {form = "pluguiera", footnotes = {"[archaic]"}}}, impf_sub_ra_3p = {"placieran", {form = "pluguieran", footnotes = {"[archaic]"}}}, impf_sub_se_3s = {"placiese", {form = "pluguiese", footnotes = {"[archaic]"}}}, impf_sub_se_3p = {"placiesen", {form = "pluguiesen", footnotes = {"[archaic]"}}}, fut_sub_3s = {"placiere", {form = "pluguiere", footnotes = {"[archaic]"}}}, fut_sub_3p = {"placieren", {form = "pluguieren", footnotes = {"[archaic]"}}}, } }, { match = "poder", forms = {vowel_alt = "ue", pret = "pud", pret_conj = "irreg", fut = "podr", gerund = "pudiendo"} }, { -- poner, componer, deponer, imponer, oponer, suponer, many others match = "poner", forms = { -- use 'pongu' because we're in a front environment; if we use 'pong', we'll get '#ponjo' pres1_and_sub = "pongu", pret = "pus", pret_conj = "irreg", fut = "pondr", pp = "puest", imp_2s = "pón" -- need the accent for the compounds; it will be removed in the simplex } }, { -- proveer, desproveer match = "proveer", forms = {pp = {"provist", "proveíd"}}, }, { match = "pudrir", forms = {pp = "podrid"} }, { -- querer, desquerer, malquerer match = "querer", forms = {vowel_alt = "ie", pret = "quis", pret_conj = "irreg", fut = "querr"} }, { match = "^raer", -- use 'raigu' because we're in a front environment; if we use 'raig', we'll get '#raijo' forms = {pres1_and_sub = {"raigu", "ray"}} }, { -- roer, corroer match = "roer", -- use 'roigu' because we're in a front environment; if we use 'roig', we'll get '#roijo' forms = {pres1_and_sub = {"ro", "roigu", "roy"}} }, { -- romper, entrerromper, arromper, derromper; not corromper; FIXME: not sure about interromper (obsolete) match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(romper)$") -- Don't match corromper if prefix == "cor" then return nil else return prefix, base_verb end end, forms = {pp = "rot"} }, { -- saber, resaber match = "saber", forms = { pres_1s = "sé*", -- * signals that the monosyllabic accent must remain pres1_and_sub = "sep", -- only for subjunctive as we override pres_1s pret = "sup", pret_conj = "irreg", fut = "sabr", } }, { match = "salir", forms = { -- use 'salgu' because we're in a front environment; if we use 'salg', we'll get '#saljo' pres1_and_sub = "salgu", fut = "saldr", imp_2s = "sal", -- These don't exist per the RAE. imp_2s_comb_lo = {}, imp_2s_comb_los = {}, imp_2s_comb_la = {}, imp_2s_comb_las = {}, imp_2s_comb_le = {}, imp_2s_comb_les = {}, }, }, { match = "scribir", -- escribir, describir, proscribir, etc. forms = {pp = {"scrit", {form = "script", footnotes = {"[Argentina and Uruguay]"}}}} }, { match = "^ser", forms = { pres_1s = "soy", pres_2s = "eres", pres_2sv = "sos", pres_3s = "es", pres_1p = "somos", pres_2p = "sois", pres_3p = "son", pres1_and_sub = "se", -- only for subjunctive as we override pres_1s full_impf = "er", impf_1p = "éramos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", fut = "ser", imp_2s = "sé*", -- * signals that the monosyllabic accent must remain imp_2sv = "sé*", } }, { match = "^soler", forms = { vowel_alt = "ue", fut = {{form = "soler", footnotes = {"[rare but acceptable]"}}}, fut_sub = {{form = "sol", footnotes = {"[rare but acceptable]"}}}, pp = {{form = "solid", footnotes = {"[rare but acceptable]"}}}, } }, { -- tener, abstener, contener, detener, obtener, sostener, and many others match = "tener", forms = { -- use 'tengu' because we're in a front environment; if we use 'teng', we'll get '#tenjo' pres1_and_sub = "tengu", vowel_alt = "ie", pret = "tuv", pret_conj = "irreg", fut = "tendr", imp_2s = "tén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- traer, atraer, detraer, distraer, extraer, sustraer, and many others match = "traer", -- use 'traigu' because we're in a front environment; if we use 'traig', we'll get '#traijo' forms = {pres1_and_sub = "traigu", pret = "traj", pret_conj = "irreg"} }, { -- valer, equivaler, prevaler match = "valer", -- use 'valgu' because we're in a front environment; if we use 'valg', we'll get '#valjo' forms = {pres1_and_sub = "valgu", fut = "valdr"} }, { match = "venir", forms = { -- use 'vengu' because we're in a front environment; if we use 'veng', we'll get '#venjo' pres1_and_sub = "vengu", vowel_alt = "ie-i", pret = "vin", pret_conj = "irreg", -- uniquely for this verb, pres sub 2sv/1p/2p do not raise the vowel even though we are an -- e-ie-i verb (contrast sentir -> sintamos/sintáis) pres_sub_2sv = "vengás", pres_sub_1p = "vengamos", pres_sub_2p = "vengáis", fut = "vendr", imp_2s = "vén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- We want to match antever etc. but not atrever etc. No way to avoid listing each verb. match = match_against_verbs("ver", {"ante", "entre", "pre", "re", "tras", ""}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_2s = "vés", pres_2sv = "vés", pres_3s = "vé", pres_2p = "véis", pres_3p = "vén", pres1_and_sub = "ve", impf = "ve", pp = "vist", imp_2s = "vé" -- need the accent for the compounds; it will be removed in the simplex } }, { -- yacer, adyacer, subyacer match = "yacer", -- use 'yazqu/yazgu/yagu' because we're in a front environment; see 'decir' above forms = {pres1_and_sub = {"yazqu", "yazgu", "yagu"}, imp_2s = {"yace", "yaz"}} }, } local reflexive_masc_forms = { ["su"] = {"mi", "tu", "su", "nuestro", "vuestro", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestros", "vuestros", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotros", "vosotros", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotros", "con vosotros", "consigo"}, } local reflexive_fem_forms = { ["su"] = {"mi", "tu", "su", "nuestra", "vuestra", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestras", "vuestras", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotras", "vosotras", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotras", "con vosotras", "consigo"}, } local reflexive_forms = { ["se"] = {"me", "te", "se", "nos", "os", "se"}, ["suyo"] = {"mío", "tuyo", "suyo", "nuestro", "vuestro", "suyo"}, ["suya"] = {"mía", "tuya", "suya", "nuestra", "vuestra", "suya"}, ["suyos"] = {"míos", "tuyos", "suyos", "nuestros", "vuestros", "suyos"}, ["suyas"] = {"mías", "tuyas", "suyas", "nuestras", "vuestras", "suyas"}, } local function skip_slot(base, slot, allow_overrides) if not allow_overrides and (base.basic_overrides[slot] or base.combined_overrides[slot] or base.refl and base.basic_reflexive_only_overrides[slot]) then -- Skip any slots for which there are overrides. return true end if base.only3s and (slot:find("^pp_f") or slot:find("^pp_mp")) then -- diluviar, atardecer, neviscar; impersonal verbs have only masc sing pp return true end if not slot:find("[123]") then -- Don't skip non-personal slots. return false end if base.nofinite then return true end if (base.only3s or base.only3sp or base.only3p) and (slot:find("^imp_") or slot:find("^neg_imp_")) then return true end if base.only3s and not slot:find("3s") then -- diluviar, atardecer, neviscar return true end if base.only3sp and not slot:find("3[sp]") then -- atañer, concernir return true end if base.only3p and not slot:find("3p") then -- [[caer cuatro gotas]], [[caer chuzos de punta]], [[entrarle los siete males]] return true end return false end -- Add the `stem` to the `ending` for the given `slot` and apply any phonetic modifications. -- `is_combining_ending` is true if `ending` is actually the ending (this function is also -- called to combine prefix + stem). WARNING: This function is written very carefully; changes -- to it can easily have unintended consequences. local function combine_stem_ending(base, slot, stem, ending, is_combining_ending) if not is_combining_ending then return stem .. ending end if base.stems.raising_conj and (rfind(ending, "^i" .. V) or slot == "pres_sub_1p" or slot == "pres_sub_2p" or slot == "pres_sub_2sv") then -- need to raise e -> i, o -> u: dormir -> durmió, durmiera, durmiendo, durmamos stem = rsub(stem, "([eo])(" .. C .. "*)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) -- also with stem ending in -gu or -qu (e.g. erguir -> irguió, irguiera, irguiendo, irgamos) stem = rsub(stem, "([eo])(" .. C .. "*[gq]u)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) end -- Lots of sound changes involving endings beginning with i + vowel if rfind(ending, "^i" .. V) then -- (1) final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; note that this rule may be fed -- by the preceding one (stem sonre- raised to sonri-, then final i absorbed) stem = stem:gsub("i$", "") -- (2) In the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. -- imperfect and future subjunctive), initial i absorbed after j (dijeron not #dijieron, likewise for -- condujeron, trajeron) and u (fueron not #fuyeron). Does not apply in regular verb tejer (tejieron not -- #tejeron) and concluir (concluyeron not #conclueron). if base.stems.pret_conj == "irreg" and rfind(stem, "[ju]$") then ending = ending:gsub("^i", "") end -- (3) initial i -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; -- concluir -> concluyó, concluyera, concluyendo; ir -> yendo; but not conseguir/delinquir if stem == "" or (rfind(stem, V .. "$") and not rfind(stem, "[gq]u$")) then ending = ending:gsub("^i", "y") end -- (4) -gü + ie- -> -guye-: argüir -> arguyó, arguyera, arguyendo if stem:find("gü$") then -- transfer the y to the stem to avoid gü -> gu below in front/back conversions stem = stem:gsub("ü$", "uy") ending = ending:gsub("^i", "") end -- (5) initial i absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo if rfind(stem, "[ñy]$") or rfind(stem, "ll$") then ending = ending:gsub("^i", "") end end -- If ending begins with i, it must get an accent after a/e/i/o to prevent the two merging into a diphthong: -- caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. -- concluir -> concluiste, concluimos. if ending:find("^i") and stem:find("[aeio]$") then ending = ending:gsub("^i", "í") end -- If -oír/-uir (i.e. -ir with stem ending in -o/u, e.g. oír, concluir), a y must be added before endings -- beginning with a/e/o. Check for base.stems.pret_conj == "irreg" to exclude stem fu- of [[ir]]. if base.conj == "ir" and rfind(ending, "^[aeoáéó]") and base.stems.pret_conj ~= "irreg" then if rfind(stem, "[aoú]$") then -- oír -> oye, rehuir -> rehúyo/rehúye (with indicator 'ú') stem = stem .. "y" elseif rfind(stem, "[^gq]u$") then -- concluir, but not conseguir or delinquir stem = stem .. "y" elseif stem:find("ü$") then -- argüir -> arguyendo stem = stem:gsub("ü$", "uy") end end -- Spelling changes in the stem; it depends on whether the stem given is the pre-front-vowel or -- pre-back-vowel variant, as indicated by `frontback`. We want these front-back spelling changes to happen -- between stem and ending, not between prefix and stem; the prefix may not have the same "front/backness" -- as the stem. local is_front = rfind(ending, "^[eiéí]") if base.frontback == "front" and not is_front then -- parecer -> parezco, conducir -> conduzco; use zqu to avoid triggering the following gsub(); -- the third line will replace zqu -> zc if slot ~= "pret_3s" then -- exclude hice -> hizo (not #hizco) stem = rsub(stem, "(" .. V .. ")c$", "%1zqu") end stem = stem:gsub("sc$", "squ") -- evanescer -> evanesco, fosforescer -> fosforesco stem = stem:gsub("c$", "z") -- ejercer -> ejerzo, uncir -> unzo stem = stem:gsub("qu$", "c") -- delinquir -> delinco, parecer -> parezqu- -> parezco stem = stem:gsub("g$", "j") -- coger -> cojo, afligir -> aflijo stem = stem:gsub("gu$", "g") -- distinguir -> distingo stem = stem:gsub("gü$", "gu") -- may not occur; argüir -> arguyo handled above elseif base.frontback == "back" and is_front then stem = stem:gsub("gu$", "gü") -- averiguar -> averigüé stem = stem:gsub("g$", "gu") -- cargar -> cargué stem = stem:gsub("c$", "qu") -- marcar -> marqué stem = rsub(stem, "[çz]$", "c") -- aderezar/adereçar -> aderecé end return stem .. ending end local function check_stems_for_suppress_prefix(slot, stems) -- Check whether any or all stems have `suppress_prefix`. local any_suppress_prefix = false local any_not_suppress_prefix = false if type(stems) == "table" then if stems.suppress_prefix then -- A single form object. any_suppress_prefix = true else for _, stem in ipairs(stems) do if type(stem) == "table" and stem.suppress_prefix then any_suppress_prefix = true else any_not_suppress_prefix = true end end end else any_not_suppress_prefix = true end if any_suppress_prefix and any_not_suppress_prefix then -- This should never happen because suppress_prefix is set on user-specified stem and individual form -- overrides, which should completely replace built-in overrides (which don't have suppress_prefix). error("Internal error: For slot '" .. slot .. ", saw a mixture of suppress-prefix and non-suppress-prefix stems, and can't handle") else return any_suppress_prefix end end local function add(base, slot, stems, endings, is_combining_ending, allow_overrides) if skip_slot(base, slot, allow_overrides) then return end local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end iut.add_forms(base.forms, slot, stems, endings, do_combine_stem_ending, nil, nil, base.all_footnotes) end local function add3(base, slot, stems, endings, allow_overrides) local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, stems) if suppress_prefix then return add(base, slot, stems, endings, "is combining ending", allow_overrides) end if skip_slot(base, slot, allow_overrides) then return end local is_combining_ending = false local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end -- Have to reimplement add_multiple_forms() ourselves due to the is_combining_ending -- flag, which needs to be different when adding prefix to stems vs. stems to ending. -- Otherwise we get e.g. #reímpreso instead of reimpreso. local tempdest = {} iut.add_forms(tempdest, slot, base.prefix, stems, do_combine_stem_ending) is_combining_ending = true iut.add_forms(base.forms, slot, tempdest[slot], endings, do_combine_stem_ending) end local function insert_form(base, slot, form) if not skip_slot(base, slot) then iut.insert_form(base.forms, slot, form) end end local function insert_forms(base, slot, forms) if not skip_slot(base, slot) then iut.insert_forms(base.forms, slot, forms) end end local function add_single_stem_tense(base, slot_pref, stems, s1, s2, s3, p1, p2, p3) local function addit(slot, ending) add3(base, slot_pref .. "_" .. slot, stems, ending) end addit("1s", s1) addit("2s", s2) addit("3s", s3) addit("1p", p1) addit("2p", p2) addit("3p", p3) end local function add_present_indic(base) local function addit(slot, stems, ending) add3(base, "pres_" .. slot, stems, ending) end local s2, s2v, s3, p1, p2, p3 if base.conj == "ar" then s2, s2v, s3, p1, p2, p3 = "as", "ás", "a", "amos", "áis", "an" elseif base.conj == "er" then s2, s2v, s3, p1, p2, p3 = "es", "és", "e", "emos", "éis", "en" elseif base.conj == "ir" then s2, s2v, s3, p1, p2, p3 = "es", "ís", "e", "imos", "ís", "en" else error("Internal error: Unrecognized conjugation " .. base.conj) end addit("1s", base.stems.pres1, "o") addit("2s", base.stems.pres_stressed, s2) addit("2sv", base.stems.pres_unstressed, s2v) addit("3s", base.stems.pres_stressed, s3) addit("1p", base.stems.pres_unstressed, p1) addit("2p", base.stems.pres_unstressed, p2) addit("3p", base.stems.pres_stressed, p3) end local function add_present_subj(base) local function addit(slot, stems, ending) add3(base, "pres_sub_" .. slot, stems, ending) end local s1, s2, s2v, s3, p1, p2, p3, voseo_stem if base.conj == "ar" then s1, s2, s2v, s3, p1, p2, p3 = "e", "es", "és", "e", "emos", "éis", "en" else s1, s2, s2v, s3, p1, p2, p3 = "a", "as", "ás", "a", "amos", "áis", "an" end addit("1s", base.stems.pres_sub_stressed, s1) addit("2s", base.stems.pres_sub_stressed, s2) addit("2sv", base.stems.pres_sub_unstressed, s2v) addit("3s", base.stems.pres_sub_stressed, s3) addit("1p", base.stems.pres_sub_unstressed, p1) addit("2p", base.stems.pres_sub_unstressed, p2) addit("3p", base.stems.pres_sub_stressed, p3) end local function add_imper(base) local function addit(slot, stems, ending) add3(base, "imp_" .. slot, stems, ending) end if base.conj == "ar" then addit("2s", base.stems.pres_stressed, "a") addit("2sv", base.stems.pres_unstressed, "á") addit("2p", base.stems.pres_unstressed, "ad") elseif base.conj == "er" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "é") addit("2p", base.stems.pres_unstressed, "ed") elseif base.conj == "ir" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "í") addit("2p", base.stems.pres_unstressed, "id") else error("Internal error: Unrecognized conjugation " .. base.conj) end end local function add_finite_non_present(base) local function add_tense(slot, stem, s1, s2, s3, p1, p2, p3) add_single_stem_tense(base, slot, stem, s1, s2, s3, p1, p2, p3) end local stems = base.stems if stems.full_impf then -- An override needs to be supplied for the impf_1p due to the accent on the stem. add_tense("impf", stems.full_impf, "a", "as", "a", {}, "ais", "an") elseif base.conj == "ar" then add_tense("impf", stems.impf, "aba", "abas", "aba", "ábamos", "abais", "aban") else add_tense("impf", stems.impf, "ía", "ías", "ía", "íamos", "íais", "ían") end if stems.pret_conj == "irreg" then add_tense("pret", stems.pret, "e", "iste", "o", "imos", "isteis", "ieron") elseif stems.pret_conj == "ar" then add_tense("pret", stems.pret, "é", "aste", "ó", "amos", "asteis", "aron") else add_tense("pret", stems.pret, "í", "iste", "ió", "imos", "isteis", "ieron") end if stems.pret_conj == "ar" then add_tense("impf_sub_ra", stems.impf_sub_ra, "ara", "aras", "ara", "áramos", "arais", "aran") add_tense("impf_sub_se", stems.impf_sub_se, "ase", "ases", "ase", "ásemos", "aseis", "asen") add_tense("fut_sub", stems.fut_sub, "are", "ares", "are", "áremos", "areis", "aren") else add_tense("impf_sub_ra", stems.impf_sub_ra, "iera", "ieras", "iera", "iéramos", "ierais", "ieran") add_tense("impf_sub_se", stems.impf_sub_se, "iese", "ieses", "iese", "iésemos", "ieseis", "iesen") add_tense("fut_sub", stems.fut_sub, "iere", "ieres", "iere", "iéremos", "iereis", "ieren") end add_tense("fut", stems.fut, "é", "ás", "á", "emos", "éis", "án") add_tense("cond", stems.cond, "ía", "ías", "ía", "íamos", "íais", "ían") end local function add_non_finite_forms(base) local stems = base.stems local function addit(slot, stems, ending) add3(base, slot, stems, ending) end insert_form(base, "infinitive", {form = base.verb}) -- Also insert "infinitive + reflexive pronoun" combinations if we're handling a reflexive verb. See comment below for -- "gerund + reflexive pronoun" combinations. if base.refl then for _, persnum in ipairs(person_number_list_basic) do insert_form(base, "infinitive_" .. persnum, {form = base.verb}) end end local ger_ending = base.conj == "ar" and "ando" or "iendo" addit("gerund", stems.pres_unstressed, ger_ending) -- Also insert "gerund + reflexive pronoun" combinations if we're handling a reflexive verb. We insert exactly the same -- form as for the bare gerund; later on in add_reflexive_or_fixed_clitic_to_forms(), we add the appropriate clitic -- pronouns. It's important not to do this for non-reflexive verbs, because in that case, the clitic pronouns won't be -- added, and {{es-verb form of}} will wrongly consider all these combinations as possible inflections of the bare -- gerund. Thanks to [[User:JeffDoozan]] for this bug fix. if base.refl then for _, persnum in ipairs(person_number_list_basic) do addit("gerund_" .. persnum, stems.pres_unstressed, ger_ending) end end addit("pp_ms", stems.pp, "o") addit("pp_fs", stems.pp, "a") addit("pp_mp", stems.pp, "os") addit("pp_fp", stems.pp, "as") end local function copy_subjunctives_to_imperatives(base) -- Copy subjunctives to imperatives, unless there's an override for the given slot (as with the imp_1p of [[ir]]). for _, persnum in ipairs({"3s", "1p", "3p"}) do local from = "pres_sub_" .. persnum local to = "imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) return form end)) end end -- Remove monosyllabic accents (e.g. the 3sg preterite of fiar is fio not #fió). Note that there are a -- few monosyllabic verb forms that intentionally have an accent, to distinguish them from other words -- with the same pronunciation. These are as follows: -- (1) [[sé]] 1sg present indicative of [[saber]]; -- (2) [[sé]] 2sg imperative of [[ser]]; -- (3) [[dé]] 1sg and 3sg present subjunctive of [[dar]]. -- For these, a * is added, which indicates that the accent needs to remain. If we see such a *, we remove -- it but otherwise leave the form alone. local function remove_monosyllabic_accents(base) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) if base.forms[slot] then for _, form in ipairs(base.forms[slot]) do if form.form:find("%*") then -- * means leave alone any accented vowel form.form = form.form:gsub("%*", "") elseif may_need_monosyllabic_accent_removed(form.form) then -- Has an accented vowel and no VCV sequence and not a suffix; may be monosyllabic, in which -- case we need to remove the accent. Check # of syllables and remove accent if only 1. Note -- that the checks for accented vowel and VCV sequence are not strictly needed, but are -- optimizations to avoid running the whole syllabification algorithm on every verb form. local syllables = com.syllabify(form.form) if #syllables == 1 then form.form = com.remove_accent_from_syllable(syllables[1]) end end end end end end -- Add the appropriate clitic pronouns in `clitics` to the forms in `base_slot`. `store_cliticized_form` is a function -- of three arguments (clitic, formobj, cliticized_form) and should store the cliticized form for the specified clitic -- and form object. local function add_forms_with_clitic(base, base_slot, clitics, store_cliticized_form) -- the special slot lxx is for le/les clitics that become "se" in double clitics if base_slot:match("_comb_lxx$") then base_slot = base_slot:gsub("_comb_lxx$", "_comb_le") end if not base.forms[base_slot] then mw.log("unhandled base_slot " .. base_slot) -- This can happen, e.g. in only3s/only3sp/only3p verbs. return end for _, formobj in ipairs(base.forms[base_slot]) do -- Figure out the correct accenting of the verb when a clitic pronoun is attached to it. We may need to -- add or remove an accent mark: -- (1) No accent mark currently, none needed: infinitive sentar -> sentarlo; imperative singular ten -> tenlo; -- (2) Accent mark currently, still needed: infinitive oír -> oírlo; -- (3) No accent mark currently, accent needed: imperative singular siente -> siéntelo; -- (4) Accent mark currently, not needed: imperative singular está -> estalo, sé -> selo. local syllables = com.syllabify(formobj.form) local sylno = com.stressed_syllable(syllables) table.insert(syllables, "lo") local needs_accent = com.accent_needed(syllables, sylno) if needs_accent then syllables[sylno] = com.add_accent_to_syllable(syllables[sylno]) else syllables[sylno] = com.remove_accent_from_syllable(syllables[sylno]) end table.remove(syllables) -- remove added clitic pronoun local reaccented_form = table.concat(syllables) for _, clitic in ipairs(clitics) do local cliticized_form -- Some further special cases. if base_slot == "imp_1p" and (clitic == "nos" or clitic == "os") then -- Final -s disappears: sintamos + nos -> sintámonos, sintamos + os -> sintámoos cliticized_form = reaccented_form:gsub("s$", "") .. clitic elseif base_slot == "imp_2p" and clitic == "os" then -- Final -d disappears, which may cause an accent to be required: -- haced + os -> haceos, sentid + os -> sentíos if reaccented_form:find("id$") then cliticized_form = reaccented_form:gsub("id$", "íos") else cliticized_form = reaccented_form:gsub("d$", "os") end else cliticized_form = reaccented_form .. clitic end store_cliticized_form(clitic, formobj, cliticized_form) end end end -- Generate the combinations of verb form (infinitive, gerund or various imperatives) + clitic pronoun. local function add_combined_forms(base) for _, base_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_combined_rows) do local base_slot, clitics = unpack(base_slot_and_clitics) add_forms_with_clitic(base, base_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, base_slot .. "_comb_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end for _, single_comb_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_double_combined_rows) do local single_comb_slot, clitics = unpack(single_comb_slot_and_clitics) -- Handle le -> se transformation for double clitics if single_comb_slot:match("_comb_lxx$") then add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) -- Only add se version for accusative clitics (lo/la/los/las) if clitic:match("^l[aeo]") then cliticized_form = cliticized_form:gsub("le" .. clitic .. "$", "se" .. clitic) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end end ) end add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end end local function process_slot_overrides(base, do_basic, reflexive_only) local overrides = reflexive_only and base.basic_reflexive_only_overrides or do_basic and base.basic_overrides or base.combined_overrides for slot, forms in pairs(overrides) do local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, forms) add(base, slot, suppress_prefix and "" or base.prefix, forms, false, "allow overrides") end end -- Prefix `form` with `clitic`, adding fixed text `between` between them. Add links as appropriate unless the user -- requested no links. Check whether form already has brackets (as will be the case if the form has a fixed clitic). local function add_clitic_to_form(base, clitic, between, form) if base.alternant_multiword_spec.args.noautolinkverb then return clitic .. between .. form else local clitic_pref = "[[" .. clitic .. "]]" .. between if form:find("%[%[") then return clitic_pref .. form else return clitic_pref .. "[[" .. form .. "]]" end end end -- Add a reflexive pronoun or fixed clitic, e.g. [[lo]], as appropriate to the base form that were generated. -- `do_joined` means to do only the forms where the pronoun is joined to the end of the form; otherwise, do only the -- forms where it is not joined and precedes the form. local function add_reflexive_or_fixed_clitic_to_forms(base, do_reflexive, do_joined) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) local clitic if not do_reflexive then clitic = base.clitic elseif slot:find("[123]") then local persnum = slot:match("^.*_(.-)$") clitic = person_number_to_reflexive_pronoun[persnum] else clitic = "se" end if base.forms[slot] then if do_reflexive and slot:find("^pp_") or slot == "infinitive_linked" then -- do nothing with reflexive past participles or with infinitive linked (handled at the end) elseif slot:find("^neg_imp_") then error("Internal error: Should not have forms set for negative imperative at this stage") else local slot_has_suffixed_clitic = slot:find("infinitive") or slot:find("gerund") or slot:find("^imp_") -- Maybe generate non-reflexive parts and separated syntactic variants for use in {{es-verb form of}}. -- See comment in add_slots() above `need_special_verb_form_of_slots`. Check for do_joined so we only -- run this code once. if do_reflexive and do_joined and base.alternant_multiword_spec.source_template == "es-verb form of" and -- Skip personal variants of infinitives and gerunds so we don't think [[jambando]] is a -- non-reflexive equivalent of [[jambándome]]. not slot:find("infinitive_") and not slot:find("gerund_") then -- Clone the forms because we will be destructively modifying them just below, adding the reflexive -- pronoun. insert_forms(base, slot .. "_non_reflexive", mw.clone(base.forms[slot])) if slot_has_suffixed_clitic then insert_forms(base, slot .. "_variant", iut.map_forms(base.forms[slot], function(form) return add_clitic_to_form(base, clitic, " ... ", form) end)) end end if slot_has_suffixed_clitic then if do_joined then add_forms_with_clitic(base, slot, {clitic}, function(clitic, formobj, cliticized_form) formobj.form = cliticized_form end ) end elseif not do_joined then -- Add clitic as separate word before all other forms. for _, form in ipairs(base.forms[slot]) do form.form = add_clitic_to_form(base, clitic, " ", form.form) end end end end end end local function handle_infinitive_linked(base) -- Compute linked versions of potential lemma slots, for use in {{es-verb}}. -- We substitute the original lemma (before removing links) for forms that -- are the same as the lemma, if the original lemma has links. for _, slot in ipairs({"infinitive"}) do insert_forms(base, slot .. "_linked", iut.map_forms(base.forms[slot], function(form) if form == base.lemma and rfind(base.linked_lemma, "%[%[") then return base.linked_lemma else return form end end)) end end local function generate_negative_imperatives(base) -- Copy subjunctives to negative imperatives, preceded by "no". for _, persnum in ipairs(neg_imp_person_number_list) do local from = "pres_sub_" .. persnum local to = "neg_imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) if base.alternant_multiword_spec.args.noautolinkverb then return "no " .. form elseif form:find("%[%[") then -- already linked, e.g. when reflexive return "[[no]] " .. form else return "[[no]] [[" .. form .. "]]" end end)) end end -- Process specs given by the user using 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'. local function process_addnote_specs(base) for _, spec in ipairs(base.addnote_specs) do for _, slot_spec in ipairs(spec.slot_specs) do slot_spec = "^" .. slot_spec .. "$" for slot, forms in pairs(base.forms) do if rfind(slot, slot_spec) then -- To save on memory, side-effect the existing forms. for _, form in ipairs(forms) do form.footnotes = iut.combine_footnotes(form.footnotes, spec.footnotes) end end end end end end local function add_missing_links_to_forms(base) -- Any forms without links should get them now. Redundant ones will be stripped later. for slot, forms in pairs(base.forms) do for _, form in ipairs(forms) do if not form.form:find("%[%[") then form.form = "[[" .. form.form .. "]]" end end end end local function conjugate_verb(base) add_present_indic(base) add_present_subj(base) add_imper(base) add_finite_non_present(base) add_non_finite_forms(base) -- This should happen before add_combined_forms() so overrides of basic forms end up part of the combined forms. process_slot_overrides(base, "do basic") -- do basic slot overrides -- This should happen after process_slot_overrides() in case a derived slot is based on an override (as with the -- imp_3s of [[dar]], [[estar]]). copy_subjunctives_to_imperatives(base) -- This should happen after process_slot_overrides() because overrides may have accents in them that need to be -- removed. (This happens e.g. for most present indicative forms of [[ver]], which have accents in them for the -- prefixed derived verbs, but the accents shouldn't be present in the base verb.) remove_monosyllabic_accents(base) if not base.nocomb then add_combined_forms(base) end -- We need to add joined reflexives, then joined and non-joined clitics, then non-joined reflexives, so we get -- [[házmelo]] but [[no]] [[me]] [[lo]] [[haga]]. if base.refl then -- This should happen after remove_monosyllabic_accents() so the * marking the preservation of monosyllabic -- accents doesn't end up in the middle of a word. add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", "do joined") process_slot_overrides(base, "do basic", "do reflexive") -- do reflexive-only basic slot overrides end if base.clitic then -- This should happen after reflexives are added. add_reflexive_or_fixed_clitic_to_forms(base, false, "do joined") add_reflexive_or_fixed_clitic_to_forms(base, false, false) end if base.refl then add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", false) end -- This should happen after add_reflexive_or_fixed_clitic_to_forms() so negative imperatives get the reflexive pronoun -- and clitic in them. generate_negative_imperatives(base) if not base.nocomb then process_slot_overrides(base, false) -- do combined slot overrides end -- This should happen before add_missing_links_to_forms() so that the comparison `form == base.lemma` -- in handle_infinitive_linked() works correctly and compares unlinked forms to unlinked forms. handle_infinitive_linked(base) process_addnote_specs(base) if not base.alternant_multiword_spec.args.noautolinkverb then add_missing_links_to_forms(base) end end local function parse_indicator_spec(angle_bracket_spec) -- Store the original angle bracket spec so we can reconstruct the overall conj spec with the lemma(s) in them. local base = { angle_bracket_spec = angle_bracket_spec, user_basic_overrides = {}, user_stems = {}, addnote_specs = {}, } local function parse_err(msg) error(msg .. ": " .. angle_bracket_spec) end local function fetch_footnotes(separated_group) local footnotes for j = 2, #separated_group - 1, 2 do if separated_group[j + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(separated_group) .. "'") end if not footnotes then footnotes = {} end table.insert(footnotes, separated_group[j]) end return footnotes end local inside = angle_bracket_spec:match("^<(.*)>$") assert(inside) if inside == "" then return base end local segments = put.parse_balanced_segment_run(inside, "[", "]") local dot_separated_groups = put.split_alternating_runs(segments, "%.") for i, dot_separated_group in ipairs(dot_separated_groups) do local first_element = dot_separated_group[1] if first_element == "addnote" then local spec_and_footnotes = fetch_footnotes(dot_separated_group) if #spec_and_footnotes < 2 then parse_err("Spec with 'addnote' should be of the form 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'") end local slot_spec = table.remove(spec_and_footnotes, 1) local slot_spec_inside = rmatch(slot_spec, "^%[(.*)%]$") if not slot_spec_inside then parse_err("Internal error: slot_spec " .. slot_spec .. " should be surrounded with brackets") end local slot_specs = rsplit(slot_spec_inside, ",") -- FIXME: Here, [[Module:it-verb]] called strip_spaces(). Generally we don't do this. Should we? table.insert(base.addnote_specs, {slot_specs = slot_specs, footnotes = spec_and_footnotes}) elseif indicator_flags[first_element] then if #dot_separated_group > 1 then parse_err("No footnotes allowed with '" .. first_element .. "' spec") end if base[first_element] then parse_err("Spec '" .. first_element .. "' specified twice") end base[first_element] = true elseif rfind(first_element, ":") then local colon_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*:%s*") local first_element = colon_separated_groups[1][1] if #colon_separated_groups[1] > 1 then parse_err("Can't attach footnotes directly to '" .. first_element .. "' spec; attach them to the " .. "colon-separated values following the initial colon") end if overridable_stems[first_element] then if base.user_stems[first_element] then parse_err("Overridable stem '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_stems[first_element] = overridable_stems[first_element](colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}) else -- assume a basic override; we validate further later when the possible slots are available if base.user_basic_overrides[first_element] then parse_err("Basic override '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_basic_overrides[first_element] = allow_multiple_values_for_override( colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}, "add monosyllabic asterisk" ) end else local comma_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*,%s*") for j = 1, #comma_separated_groups do local alt = comma_separated_groups[j][1] if not vowel_alternants[alt] then if #comma_separated_groups == 1 then parse_err("Unrecognized spec or vowel alternant '" .. alt .. "'") else parse_err("Unrecognized vowel alternant '" .. alt .. "'") end end if base.vowel_alt then for _, existing_alt in ipairs(base.vowel_alt) do if existing_alt.form == alt then parse_err("Vowel alternant '" .. alt .. "' specified twice") end end else base.vowel_alt = {} end table.insert(base.vowel_alt, {form = alt, footnotes = fetch_footnotes(comma_separated_groups[j])}) end end end return base end -- Normalize all lemmas, substituting the pagename for blank lemmas and adding links to multiword lemmas. local function normalize_all_lemmas(alternant_multiword_spec, pagename) -- (1) Add links to all before and after text. Remember the original text so we can reconstruct the verb spec later. if not alternant_multiword_spec.args.noautolinktext then iut.add_links_to_before_and_after_text(alternant_multiword_spec, "remember original") end -- (2) Remove any links from the lemma, but remember the original form -- so we can use it below in the 'lemma_linked' form. iut.map_word_specs(alternant_multiword_spec, function(base) if base.lemma == "" then base.lemma = pagename end base.user_specified_lemma = base.lemma base.lemma = m_links.remove_links(base.lemma) local refl_verb, clitic = rmatch(base.lemma, "^(.-)(l[aeo]s?)$") if not refl_verb then refl_verb, clitic = base.lemma, nil end local verb, refl = rmatch(refl_verb, "^(.-)(se)$") if not verb then verb, refl = refl_verb, nil end base.user_specified_verb = verb base.refl = refl base.clitic = clitic if base.refl and base.clitic then -- We have to parse the verb suffix to see how to construct the base verb; e.g. -- abrírsela -> abrir but oírsela -> oír. We parse the verb suffix again in all cases -- in detect_indicator_spec(), after splitting off the prefix of irrregular verbs. local actual_verb local inf_stem, suffix = rmatch(base.user_specified_verb, "^(.*)([aáeéií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.user_specified_verb) end if suffix == "ír" and inf_stem:find("[aeo]$") then -- accent on suffix should remain base.verb = base.user_specified_verb else base.verb = inf_stem .. com.remove_accent_from_syllable(suffix) end else base.verb = base.user_specified_verb end local linked_lemma if alternant_multiword_spec.args.noautolinkverb or base.user_specified_lemma:find("%[%[") then linked_lemma = base.user_specified_lemma elseif base.refl or base.clitic then -- Reconstruct the linked lemma with separate links around base verb, reflexive pronoun and clitic. linked_lemma = base.user_specified_verb == base.verb and "[[" .. base.user_specified_verb .. "]]" or "[[" .. base.verb .. "|" .. base.user_specified_verb .. "]]" linked_lemma = linked_lemma .. (refl and "[[" .. refl .. "]]" or "") .. (clitic and "[[" .. clitic .. "]]" or "") else -- Add links to the lemma so the user doesn't specifically need to, since we preserve -- links in multiword lemmas and include links in non-lemma forms rather than allowing -- the entire form to be a link. linked_lemma = iut.add_links(base.user_specified_lemma) end base.linked_lemma = linked_lemma end) end local function construct_stems(base) local stems = base.stems stems.pres_unstressed = stems.pres_unstressed or base.inf_stem stems.pres_stressed = stems.pres_stressed or -- If no_pres_stressed given, pres_stressed stem should be empty so no forms are generated. base.no_pres_stressed and {} or base.vowel_alt or base.inf_stem stems.pres1_and_sub = stems.pres1_and_sub or -- If no_pres_stressed given, the entire subjunctive is missing. base.no_pres_stressed and {} or -- If no_pres1_and_sub given, pres1 and entire subjunctive are missing. base.no_pres1_and_sub and {} or nil stems.pres1 = stems.pres1 or stems.pres1_and_sub or stems.pres_stressed stems.impf = stems.impf or base.inf_stem stems.pret = stems.pret or base.inf_stem stems.pret_conj = stems.pret_conj or base.conj stems.fut = stems.fut or base.inf_stem .. base.conj stems.cond = stems.cond or stems.fut stems.pres_sub_stressed = stems.pres_sub_stressed or stems.pres1 stems.pres_sub_unstressed = stems.pres_sub_unstressed or stems.pres1_and_sub or stems.pres_unstressed stems.impf_sub_ra = stems.impf_sub_ra or stems.pret stems.impf_sub_se = stems.impf_sub_se or stems.pret stems.fut_sub = stems.fut_sub or stems.pret stems.pp = stems.pp or base.conj == "ar" and combine_stem_ending(base, "pp_ms", base.inf_stem, "ad", "is combining ending") or -- use combine_stem_ending esp. so we get reído, caído, etc. combine_stem_ending(base, "pp_ms", base.inf_stem, "id", "is combining ending") end -- Make a list of the slots given in `list1` and optionally `list2`, with `prefix` added to the beginning of each slot -- name. The elements of each list are of the form {SLOT, ACCEL}. Used for error messages. local function construct_possible_slots(list1, list2, prefix) list2 = list2 or {} prefix = prefix or "" local slots = {} local function insert_list_slots(list) for _, slotaccel in ipairs(list) do local slot, accel = unpack(slotaccel) table.insert(slots, prefix .. slot) end end insert_list_slots(list1) insert_list_slots(list2) return m_table.serialCommaJoin(slots) end local function detect_indicator_spec(base) base.forms = {} base.non_reflexive_forms = {} base.stems = {} if (base.only3s and 1 or 0) + (base.only3sp and 1 or 0) + (base.only3p and 1 or 0) > 1 then error("Only one of 'only3s', 'only3sp' and 'only3p' can be specified") end base.basic_overrides = {} base.basic_reflexive_only_overrides = {} base.combined_overrides = {} if not base.no_built_in then for _, built_in_conj in ipairs(built_in_conjugations) do if type(built_in_conj.match) == "function" then base.prefix, base.non_prefixed_verb = built_in_conj.match(base.verb) elseif built_in_conj.match:find("^%^") and rsub(built_in_conj.match, "^%^", "") == base.verb then -- begins with ^, for exact match, and matches base.prefix, base.non_prefixed_verb = "", base.verb else base.prefix, base.non_prefixed_verb = rmatch(base.verb, "^(.*)(" .. built_in_conj.match .. ")$") end if base.prefix then -- we found a built-in verb base.irreg_verb = true for stem, forms in pairs(built_in_conj.forms) do if stem:find("^refl_") then stem = stem:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[stem] then error("Internal error: setting for 'refl_" .. stem .. "' does not refer to a basic verb slot") end base.basic_reflexive_only_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_basic_map[stem] then -- an individual form override of a basic form base.basic_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_combined_map[stem] then -- an individual form override of a combined form base.combined_overrides[stem] = forms else base.stems[stem] = forms end end break end end end -- Override built-in-verb stems and overrides with user-specified ones. for stem, values in pairs(base.user_stems) do base.stems[stem] = values end for override, values in pairs(base.user_basic_overrides) do if override:find("^refl_") then if not base.refl then error("Can't set reflexive-only override '" .. override .. "' on a non-reflexive verb") end override = override:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[override] then error("Unrecognized reflexive-only override 'refl_" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, nil, "refl_")) end base.basic_reflexive_only_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_basic_map[override] then base.basic_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_combined_map[override] then base.combined_overrides[override] = values else error("Unrecognized override '" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, base.alternant_multiword_spec.verb_slots_combined)) end end base.prefix = base.prefix or "" base.non_prefixed_verb = base.non_prefixed_verb or base.verb local inf_stem, suffix = rmatch(base.non_prefixed_verb, "^(.*)([aeií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.verb) end base.inf_stem = inf_stem suffix = suffix == "ír" and "ir" or suffix base.conj = suffix base.frontback = suffix == "ar" and "back" or "front" if base.stems.vowel_alt then -- built-in verb with specified vowel alternation if base.vowel_alt then error(base.verb .. " is a recognized built-in verb, and should not have vowel alternations specified with it") end base.vowel_alt = iut.convert_to_general_list_form(base.stems.vowel_alt) end -- Propagate built-in-verb indicator flags to `base` and combine with user-specified flags. for indicator_flag, _ in pairs(indicator_flags) do base[indicator_flag] = base[indicator_flag] or base.stems[indicator_flag] end -- Convert vowel alternation indicators into stems. if base.vowel_alt then for _, altform in ipairs(base.vowel_alt) do altform.alt = altform.form -- save original indicator local alt = altform.alt if base.conj == "ir" then local raising = ( alt == "ie-i" or alt == "ye-i" or alt == "ue-u" or alt == "i" or alt == "í" or alt == "ú" ) if base.stems.raising_conj == nil then base.stems.raising_conj = raising elseif base.stems.raising_conj ~= raising then error("Can't currently support a mixture of raising (e.g. 'ie-i') and non-raising (e.g. 'ie') vowel alternations in -ir verbs") end end if alt == "+" then altform.form = base.inf_stem else local normalized_alt = alt if alt == "ie-i" or alt == "ye-i" or alt == "ue-u" then if base.conj ~= "ir" then error("Vowel alternation '" .. alt .. "' only supported with -ir verbs") end -- ie-i is like i except for the vowel raising before i+V, similarly for ye-i, ue-u, -- so convert appropriately. normalized_alt = alt == "ie-i" and "ie" or alt == "ye-i" and "ye" or "ue" end local ret = com.apply_vowel_alternation(base.inf_stem, normalized_alt) if ret.err then error("To use '" .. alt .. "', present stem '" .. base.inf_stem .. "' " .. ret.err) end altform.form = ret.ret end end end end local function detect_all_indicator_specs(alternant_multiword_spec) -- Propagate some settings up; some are used internally, others by [[Module:es-headword]]. iut.map_word_specs(alternant_multiword_spec, function(base) -- Internal indicator flags. Do these before calling detect_indicator_spec() because add_slots() uses them. for _, prop in ipairs { "refl", "clitic" } do if base[prop] then alternant_multiword_spec[prop] = true end end base.alternant_multiword_spec = alternant_multiword_spec -- If reflexive or fixed clitic, don't include combined forms. alternant_multiword_spec.nocomb = alternant_multiword_spec.nocomb or base.clitic or base.refl end) add_slots(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base) base.nocomb = alternant_multiword_spec.args.nocomb detect_indicator_spec(base) -- User-specified indicator flags. Do these after calling detect_indicator_spec() because the latter may set these -- indicators for built-in verbs. for prop, _ in pairs(indicator_flags) do if base[prop] then alternant_multiword_spec[prop] = true end end construct_stems(base) end) end local function add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) local function insert_ann(anntype, value) m_table.insertIfNot(alternant_multiword_spec.annotation[anntype], value) end local function insert_cat(cat, also_when_multiword) -- Don't place multiword terms in categories like 'Spanish verbs ending in -ar' to avoid spamming the -- categories with such terms. if also_when_multiword or not multiword_lemma then m_table.insertIfNot(alternant_multiword_spec.categories, "Spanish " .. cat) end end if check_for_red_links and alternant_multiword_spec.source_template == "es-conj" and multiword_lemma then for _, slot_and_accel in ipairs(alternant_multiword_spec.all_verb_slots) do local slot = slot_and_accel[1] local forms = base.forms[slot] local must_break = false if forms then for _, form in ipairs(forms) do if not form.form:find("%[%[") then local title = mw.title.new(form.form) if title and not title.exists then insert_cat("verbs with red links in their inflection tables") must_break = true break end end end end if must_break then break end end end insert_cat("verbs ending in -" .. base.conj) if base.irreg_verb then insert_ann("irreg", "irregular") insert_cat("irregular verbs") else insert_ann("irreg", "regular") end if base.only3s then insert_ann("defective", "impersonal") insert_cat("impersonal verbs") elseif base.only3sp then insert_ann("defective", "third-person only") insert_cat("third-person-only verbs") elseif base.only3p then insert_ann("defective", "third-person plural only") insert_cat("third-person-plural-only verbs") elseif base.no_pres_stressed or base.no_pres1_and_sub then insert_ann("defective", "defective") insert_cat("defective verbs") else insert_ann("defective", "regular") end if base.clitic then insert_cat("verbs with lexical clitics") end if base.refl then insert_cat("reflexive verbs") end if not base.vowel_alt then insert_ann("vowel_alt", "non-alternating") else local inf_stem = base.inf_stem:gsub("[gq]u$", "x") for _, alt in ipairs(base.vowel_alt) do if alt.alt == "+" then insert_ann("vowel_alt", "non-alternating") else local desc if alt.alt == "ue" and rfind(inf_stem, "u" .. C .. "*$") then desc = "u-ue alternation" -- jugar elseif alt.alt == "ie" and rfind(inf_stem, "i" .. C .. "*$") then desc = "i-ie alternation" -- adquirir elseif alt.alt == "í" and rfind(inf_stem, "e" .. C .. "*$") then desc = "e-í alternation" -- reír, freír, etc. else desc = vowel_alternant_to_desc[alt.alt] .. " alternation" end insert_ann("vowel_alt", desc) insert_cat("verbs with " .. desc) end end end local cons_alt = base.stems.cons_alt if cons_alt == nil then if base.conj == "ar" then if base.inf_stem:find("z$") then cons_alt = "c-z" elseif base.inf_stem:find("ç$") then cons_alt = "c-ç" elseif base.inf_stem:find("c$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-gu" elseif base.inf_stem:find("gu$") then cons_alt = "gu-gü" end else if base.no_pres_stressed or base.no_pres1_and_sub then cons_alt = nil -- no c-zc alternation in balbucir or arrecir elseif rfind(base.inf_stem, V .. "c$") then cons_alt = "c-zc" elseif base.inf_stem:find("sc$") then cons_alt = "hard-soft" elseif base.inf_stem:find("c$") then cons_alt = "c-z" elseif base.inf_stem:find("qu$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-j" elseif base.inf_stem:find("gu$") then cons_alt = "g-gu" elseif base.inf_stem:find("gü$") then cons_alt = "gu-gü" end end end if cons_alt then local desc = cons_alt .. " alternation" insert_ann("cons_alt", desc) insert_cat("verbs with " .. desc) else insert_ann("cons_alt", "non-alternating") end end -- Compute the categories to add the verb to, as well as the annotation to display in the -- conjugation title bar. We combine the code to do these functions as both categories and -- title bar contain similar information. local function compute_categories_and_annotation(alternant_multiword_spec) alternant_multiword_spec.categories = {} local ann = {} alternant_multiword_spec.annotation = ann ann.irreg = {} ann.defective = {} ann.vowel_alt = {} ann.cons_alt = {} local multiword_lemma = false for _, form in ipairs(alternant_multiword_spec.forms.infinitive) do if form.form:find(" ") then multiword_lemma = true break end end iut.map_word_specs(alternant_multiword_spec, function(base) add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) end) local ann_parts = {} local irreg = table.concat(ann.irreg, " or ") if irreg ~= "" and irreg ~= "regular" then table.insert(ann_parts, irreg) end local defective = table.concat(ann.defective, " or ") if defective ~= "" and defective ~= "regular" then table.insert(ann_parts, defective) end local vowel_alt = table.concat(ann.vowel_alt, " or ") if vowel_alt ~= "" and vowel_alt ~= "non-alternating" then table.insert(ann_parts, vowel_alt) end local cons_alt = table.concat(ann.cons_alt, " or ") if cons_alt ~= "" and cons_alt ~= "non-alternating" then table.insert(ann_parts, cons_alt) end alternant_multiword_spec.annotation = table.concat(ann_parts, "; ") end local function show_forms(alternant_multiword_spec) local lemmas = alternant_multiword_spec.forms.infinitive alternant_multiword_spec.lemmas = lemmas -- save for later use in make_table() local reconstructed_verb_spec = iut.reconstruct_original_spec(alternant_multiword_spec) -- Initialize the footnotes with those for the future subjunctive and maybe the pres subjunctive -- voseo usage. In the latter case, we only do it if there is a distinct pres subjunctive voseo form. local function create_footnote_obj() local obj = iut.create_footnote_obj() iut.get_footnote_text({fut_sub_note}, obj) -- Compute whether the tuteo and voseo variants are different, for each voseo variant. -- We use this later in make_table(). for _, slot in ipairs({"pres_2s", "pres_sub_2s", "imp_2s"}) do alternant_multiword_spec["separate_" .. slot .. "v"] = false iut.map_word_specs(alternant_multiword_spec, function(base) if not m_table.deepEquals(base.forms[slot], base.forms[slot .. "v"]) then alternant_multiword_spec["separate_" .. slot .. "v"] = true end end) end if alternant_multiword_spec.separate_pres_sub_2sv then iut.get_footnote_text({pres_sub_voseo_note}, obj) end return obj end local function transform_accel_obj(slot, formobj, accel_obj) -- No accelerators for negative imperatives, which are always multiword and derived directly from the -- present subjunctive. if slot:find("^neg_imp") then return nil end if accel_obj then if slot:find("^pp_") then accel_obj.form = slot elseif slot == "gerund" then accel_obj.form = "gerund-" .. reconstructed_verb_spec else accel_obj.form = "verb-form-" .. reconstructed_verb_spec end end return accel_obj end local props = { lang = lang, lemmas = lemmas, create_footnote_obj = create_footnote_obj, transform_accel_obj = transform_accel_obj, } props.slot_list = alternant_multiword_spec.verb_slots_basic iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_basic = alternant_multiword_spec.forms.footnote props.create_footnote_obj = nil props.slot_list = alternant_multiword_spec.verb_slots_combined iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_combined = alternant_multiword_spec.forms.footnote end local notes_template = [=[ <div class="roa-footnote-outer-div" style="width:100%;"> <div class="roa-footnote-inner-div"> {footnote} </div></div> ]=] local pres_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_2sv}<sup><sup>vos</sup></sup>' local pres_sub_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_sub_2sv}<sup><sup>vos<sup class="roa-red-superscript">2</sup></sup></sup>' local imp_2sv_template = '<sup><sup>tú</sup></sup><br />{imp_2sv}<sup><sup>vos</sup></sup>' local basic_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; Conjugation of {title} (See [[Appendix:Spanish verbs]])</div> <div class="NavContent"> {\op}| class="roa-inflection-table" |- ! colspan="3" class="roa-nonfinite-header" | <span title="infinitivo">infinitive</span> | colspan="5" | {infinitive} |- ! colspan="3" class="roa-nonfinite-header" | <span title="gerundio">gerund</span> | colspan="5" | {gerund} |- ! rowspan="3" colspan="2" class="roa-nonfinite-header" | <span title="participio (pasado)">past participle</span> | colspan="2" class="roa-nonfinite-header" | ! colspan="2" class="roa-nonfinite-header" | <span title="masculino">masculine</span> ! colspan="2" class="roa-nonfinite-header" | <span title="femenino">feminine</span> |- ! colspan="2" class="roa-nonfinite-header" | singular | colspan="2" | {pp_ms} | colspan="2" | {pp_fs} |- ! colspan="2" class="roa-nonfinite-header" | plural | colspan="2" | {pp_mp} | colspan="2" | {pp_fp} |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 1st person ! class="roa-person-number-header" | 2nd person ! class="roa-person-number-header" | 3rd person ! class="roa-person-number-header" | 1st person ! class="roa-person-number-header" | 2nd person ! class="roa-person-number-header" | 3rd person |-{reflexive_non_finite_clause} ! rowspan="6" class="roa-indicative-left-rail" | <span title="indicativo">indicative</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de indicativo">present</span> | {pres_1s} | {pres_2s}{pres_2sv_text} | {pres_3s} | {pres_1p} | {pres_2p} | {pres_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto (copréterito)">imperfect</span> | {impf_1s} | {impf_2s} | {impf_3s} | {impf_1p} | {impf_2p} | {impf_3p} |- ! class="roa-finite-header" | <span title="pretérito perfecto simple (pretérito indefinido)">preterite</span> | {pret_1s} | {pret_2s} | {pret_3s} | {pret_1p} | {pret_2p} | {pret_3p} |- ! class="roa-finite-header" | <span title="futuro simple (futuro imperfecto)">future</span> | {fut_1s} | {fut_2s} | {fut_3s} | {fut_1p} | {fut_2p} | {fut_3p} |- ! class="roa-finite-header" | <span title="condicional simple (pospretérito de modo indicativo)">conditional</span> | {cond_1s} | {cond_2s} | {cond_3s} | {cond_1p} | {cond_2p} | {cond_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="5" class="roa-subjunctive-left-rail" | <span title="subjuntivo">subjunctive</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de subjuntivo">present</span> | {pres_sub_1s} | {pres_sub_2s}{pres_sub_2sv_text} | {pres_sub_3s} | {pres_sub_1p} | {pres_sub_2p} | {pres_sub_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">imperfect</span><br />(ra) | {impf_sub_ra_1s} | {impf_sub_ra_2s} | {impf_sub_ra_3s} | {impf_sub_ra_1p} | {impf_sub_ra_2p} | {impf_sub_ra_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">imperfect</span><br />(se) | {impf_sub_se_1s} | {impf_sub_se_2s} | {impf_sub_se_3s} | {impf_sub_se_1p} | {impf_sub_se_2p} | {impf_sub_se_3p} |- ! class="roa-finite-header" | <span title="futuro simple de subjuntivo (futuro de subjuntivo)">future</span><sup class="roa-red-superscript">1</sup> | {fut_sub_1s} | {fut_sub_2s} | {fut_sub_3s} | {fut_sub_1p} | {fut_sub_2p} | {fut_sub_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="6" class="roa-imperative-left-rail" | <span title="imperativo">imperative</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | — ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ustedes |- ! class="roa-finite-header" | <span title="imperativo afirmativo">affirmative</span> | | {imp_2s}{imp_2sv_text} | {imp_3s} | {imp_1p} | {imp_2p} | {imp_3p} |- ! class="roa-finite-header" | <span title="imperativo negativo">negative</span> | | {neg_imp_2s} | {neg_imp_3s} | {neg_imp_1p} | {neg_imp_2p} | {neg_imp_3p} |{\cl}{notes_clause}</div></div> ]=] local reflexive_non_finite_template = [=[ ! rowspan="3" class="roa-nonfinite-header" | personal non-finite ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="infinitivo">infinitive</span> | {infinitive_1s} | {infinitive_2s} | {infinitive_3s} | {infinitive_1p} | {infinitive_2p} | {infinitive_3p} |- ! class="roa-finite-header" | <span title="gerundio">gerund</span> | {gerund_1s} | {gerund_2s} | {gerund_3s} | {gerund_1p} | {gerund_2p} | {gerund_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |-]=] local combined_form_combined_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with informal second-person singular {tuteo}<i>/</i>{voseo} imperative {imp_2s} ! class="roa-finite-header" | dative | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''not used'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | accusative | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''not used'' | {imp_2s_comb_los}, {imp_2s_comb_las} |-]=] local combined_form_separate_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with informal second-person singular {tuteo} imperative {imp_2s} ! class="roa-finite-header" | dative | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''not used'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | accusative | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''not used'' | {imp_2s_comb_los}, {imp_2s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with informal second-person singular {voseo} imperative {imp_2sv} ! class="roa-finite-header" | dative | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_le} | {imp_2sv_comb_nos} | ''not used'' | {imp_2sv_comb_les} |- ! class="roa-finite-header" | accusative | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_lo}, {imp_2sv_comb_la} | {imp_2sv_comb_nos} | ''not used'' | {imp_2sv_comb_los}, {imp_2sv_comb_las} |-]=] local combined_form_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; Selected combined forms of {title}</div> <div class="NavContent"> These forms are generated automatically and may not actually be used. Pronoun usage varies by region. {\op}| class="inflection-table es-inflection-table" |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 1st person ! class="roa-person-number-header" | 2nd person ! class="roa-person-number-header" | 3rd person ! class="roa-person-number-header" | 1st person ! class="roa-person-number-header" | 2nd person ! class="roa-person-number-header" | 3rd person |- ! rowspan="2" class="roa-combined-with-infinitive" | with infinitive {infinitive} ! class="roa-finite-header" | dative | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_le}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_les}, {infinitive_comb_se} |- ! class="roa-finite-header" | accusative | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_lo}, {infinitive_comb_la}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_los}, {infinitive_comb_las}, {infinitive_comb_se} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-gerund" | with gerund {gerund} ! class="roa-finite-header" | dative | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_le}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_les}, {gerund_comb_se} |- ! class="roa-finite-header" | accusative | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_lo}, {gerund_comb_la}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_los}, {gerund_comb_las}, {gerund_comb_se} |-{tu_vos_clause} ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with formal second-person singular imperative {imp_3s} ! class="roa-finite-header" | dative | {imp_3s_comb_me} | ''not used'' | {imp_3s_comb_le}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''not used'' | {imp_3s_comb_les} |- ! class="roa-finite-header" | accusative | {imp_3s_comb_me} | ''not used'' | {imp_3s_comb_lo}, {imp_3s_comb_la}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''not used'' | {imp_3s_comb_los}, {imp_3s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with first-person plural imperative {imp_1p} ! class="roa-finite-header" | dative | ''not used'' | {imp_1p_comb_te} | {imp_1p_comb_le} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_les} |- ! class="roa-finite-header" | accusative | ''not used'' | {imp_1p_comb_te} | {imp_1p_comb_lo}, {imp_1p_comb_la} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_los}, {imp_1p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with informal second-person plural imperative {imp_2p} ! class="roa-finite-header" | dative | {imp_2p_comb_me} | ''not used'' | {imp_2p_comb_le} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_les} |- ! class="roa-finite-header" | accusative | {imp_2p_comb_me} | ''not used'' | {imp_2p_comb_lo}, {imp_2p_comb_la} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_los}, {imp_2p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | with formal second-person plural imperative {imp_3p} ! class="roa-finite-header" | dative | {imp_3p_comb_me} | ''not used'' | {imp_3p_comb_le} | {imp_3p_comb_nos} | ''not used'' | {imp_3p_comb_les}, {imp_3p_comb_se} |- ! class="roa-finite-header" | accusative | {imp_3p_comb_me} | ''not used'' | {imp_3p_comb_lo}, {imp_3p_comb_la} | {imp_3p_comb_nos} | ''not used'' | {imp_3p_comb_los}, {imp_3p_comb_las}, {imp_3p_comb_se} |{\cl}{notes_clause}</div></div> ]=] local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms forms.title = link_term(alternant_multiword_spec.lemmas[1].form) if alternant_multiword_spec.annotation ~= "" then forms.title = forms.title .. " (" .. alternant_multiword_spec.annotation .. ")" end forms.description = "" -- Format the basic table. forms.tuteo = tuteo_link forms.voseo = voseo_link forms.footnote = alternant_multiword_spec.footnote_basic forms.reflexive_non_finite_clause = alternant_multiword_spec.refl and m_string_utilities.format(reflexive_non_finite_template, forms) or "" forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- The separate_* values are computed in show_forms(). forms.pres_2sv_text = alternant_multiword_spec.separate_pres_2sv and m_string_utilities.format(pres_2sv_template, forms) or "" forms.pres_sub_2sv_text = alternant_multiword_spec.separate_pres_sub_2sv and m_string_utilities.format(pres_sub_2sv_template, forms) or "" forms.imp_2sv_text = alternant_multiword_spec.separate_imp_2sv and m_string_utilities.format(imp_2sv_template, forms) or "" local formatted_basic_table = m_string_utilities.format(basic_table, forms) -- Format the combined table. local formatted_combined_table if alternant_multiword_spec.refl or alternant_multiword_spec.args.nocomb or alternant_multiword_spec.clitic then formatted_combined_table = "" else forms.footnote = alternant_multiword_spec.footnote_combined forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- separate_imp_2sv is computed in show_forms(). local tu_vos_template = alternant_multiword_spec.separate_imp_2sv and combined_form_separate_tu_vos_template or combined_form_combined_tu_vos_template forms.tu_vos_clause = m_string_utilities.format(tu_vos_template, forms) formatted_combined_table = m_string_utilities.format(combined_form_table, forms) end -- Paste them together. return require("Module:TemplateStyles")("Module:roa-verb/style.css") .. formatted_basic_table .. formatted_combined_table end -- Externally callable function to parse and conjugate a verb given user-specified arguments. -- Return value is WORD_SPEC, an object where the conjugated forms are in `WORD_SPEC.forms` -- for each slot. If there are no values for a slot, the slot key will be missing. The value -- for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms(args, source_template, headword_head, double_combined_forms_to_include) local PAGENAME = mw.loadData("Module:headword/data").pagename local function in_template_space() return mw.title.getCurrentTitle().nsText == "テンプレート" end -- Determine the verb spec we're being asked to generate the conjugation of. This may be taken from the -- current page title or the value of |pagename=; but not when called from {{es-verb form of}}, where the -- page title is a non-lemma form. Note that the verb spec may omit the infinitive; e.g. it may be "<ue>". -- For this reason, we use the value of `pagename` computed here down below, when calling normalize_all_lemmas(). local pagename = source_template ~= "es-verb form of" and args.pagename or PAGENAME local head = headword_head or pagename local arg1 = args[1] if not arg1 then if (pagename == "es-conj" or pagename == "es-verb") and in_template_space() then arg1 = "licuar<+,ú>" elseif pagename == "es-verb form of" and in_template_space() then arg1 = "amar" else arg1 = "<>" end end -- When called from {{es-verb form of}}, determine the non-lemma form whose inflections we're being asked to -- determine. This normally comes from the page title or the value of |pagename=. local verb_form_of_form if source_template == "es-verb form of" then verb_form_of_form = args.pagename if not verb_form_of_form then if PAGENAME == "es-verb form of" and in_template_space() then verb_form_of_form = "ame" else verb_form_of_form = PAGENAME end end end local incorporated_headword_head_into_lemma = false if arg1:find("^<.*>$") then -- missing lemma if head:find(" ") then -- If multiword lemma, try to add arg spec after the first word. -- Try to preserve the brackets in the part after the verb, but don't do it -- if there aren't the same number of left and right brackets in the verb -- (which means the verb was linked as part of a larger expression). local refl_clitic_verb, post = rmatch(head, "^(.-)( .*)$") local left_brackets = rsub(refl_clitic_verb, "[^%[]", "") local right_brackets = rsub(refl_clitic_verb, "[^%]]", "") if #left_brackets == #right_brackets then arg1 = iut.remove_redundant_links(refl_clitic_verb) .. arg1 .. post incorporated_headword_head_into_lemma = true else -- Try again using the form without links. local linkless_head = m_links.remove_links(head) if linkless_head:find(" ") then refl_clitic_verb, post = rmatch(linkless_head, "^(.-)( .*)$") arg1 = refl_clitic_verb .. arg1 .. post else error("Unable to incorporate <...> spec into explicit head due to a multiword linked verb or " .. "unbalanced brackets; please include <> explicitly: " .. arg1) end end else -- Will be incorporated through `head` below in the call to normalize_all_lemmas(). incorporated_headword_head_into_lemma = true end end local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, allow_blank_lemma = true, } local alternant_multiword_spec = iut.parse_inflected_text(arg1, parse_props) alternant_multiword_spec.pos = pos or "verbs" alternant_multiword_spec.args = args alternant_multiword_spec.source_template = source_template alternant_multiword_spec.verb_form_of_form = verb_form_of_form alternant_multiword_spec.incorporated_headword_head_into_lemma = incorporated_headword_head_into_lemma -- Now determine if we need to generate any double-combined forms, and if so, which clitics are involved. -- See the comment above the initialization of `verb_slot_double_combined_rows` above in add_slots(). if verb_form_of_form and rfind(verb_form_of_form, AV) then -- All double-clitic forms have an explicit accent, so we check for this. In addition, all double-clitic forms -- are of the form "(me|te|se|nos|os)(lo|la|le)s$". We have no alternations in Lua patterns, but we can exploit -- the similarity of the clitics in question. local single_comb_form, object_clitic = rmatch(verb_form_of_form, "^(.*)(l[aeo]s?)$") if single_comb_form then local personal_clitic = rmatch(single_comb_form, "^.*([mts]e)$") if not personal_clitic then personal_clitic = rmatch(single_comb_form, "^.-(n?os)$") end if personal_clitic then if personal_clitic == "nos" then -- "os" is a substring of "nos"; conceivably we could have a form ending in -n + os, and we don't -- know whether to interpret as -n + os or - + nos. alternant_multiword_spec.double_combined_forms_to_include = {{"nos", object_clitic}, {"os", object_clitic}} else if personal_clitic == "se" then -- Use the special "lxx" clitic for le/les when transformed into se in double-combined forms. personal_clitic = "lxx" end alternant_multiword_spec.double_combined_forms_to_include = {{personal_clitic, object_clitic}} end end end end normalize_all_lemmas(alternant_multiword_spec, pagename) detect_all_indicator_specs(alternant_multiword_spec) local inflect_props = { slot_list = alternant_multiword_spec.all_verb_slots, inflect_word_spec = conjugate_verb, -- We add links around the generated verbal forms rather than allow the entire multiword -- expression to be a link, so ensure that user-specified links get included as well. include_user_specified_links = true, } iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) -- Remove redundant brackets around entire forms. for slot, forms in pairs(alternant_multiword_spec.forms) do for _, form in ipairs(forms) do form.form = iut.remove_redundant_links(form.form) end end compute_categories_and_annotation(alternant_multiword_spec) if args.json and not from_headword and not from_verb_form_of then -- There is a circular reference in `base.alternant_multiword_spec`, which points back to top level. iut.map_word_specs(alternant_multiword_spec, function(base) base.alternant_multiword_spec = nil end) return require("Module:JSON").toJSON(alternant_multiword_spec) end return alternant_multiword_spec end -- Entry point for {{es-conj}}. Template-callable function to parse and conjugate a verb given -- user-specified arguments and generate a displayable table of the conjugated forms. function export.show(frame) local parent_args = frame:getParent().args local params = { [1] = {}, ["nocomb"] = {type = "boolean"}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use } local args = require("Module:parameters").process(parent_args, params) local alternant_multiword_spec = export.do_generate_forms(args, "es-conj") if type(alternant_multiword_spec) == "string" then -- JSON return value return alternant_multiword_spec end show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang, nil, nil, force_cat) end return export 0dga1ejm6zn9k8ubzzp0ehpdxcixv0l 2281197 2281183 2026-06-09T10:34:55Z Kuroco2k 84207 2281197 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> ]=] --[=[ TERMINOLOGY: -- "slot" = A particular combination of tense/mood/person/number/etc. Example slot names for verbs are "pres_1s" (present indicative first-person singular), "pres_sub_2sv" (present subjunctive second-person singular voseo form) "impf_sub_ra_3p" (imperfect subjunctive -ra form third-person plural), "imp_1p_comb_lo" (imperative first-person plural combined with clitic [[lo]]). Each slot is filled with zero or more forms. -- "form" = The conjugated Spanish form representing the value of a given slot. -- "lemma" = The dictionary form of a given Spanish term. For Spanish, always the infinitive. ]=] --[=[ FIXME: 1. Implement no_pres_stressed for aterir, garantir. (NOTE: Per RAE, garantir used in all forms in Argentina/Uruguay.) [DONE] 2. Support concluyo. [DONE] 3. Fixes for veo -> ve vs. preveo -> prevé. [DONE] 4. Various more irregular verbs, e.g. predecir, redecir, bendecir, maldecir. [DONE] 5. Raising of e -> i, o -> u before -iendo, -ió, etc. occurs only in -ir verbs. [DONE] 6. Raising of e -> i, o -> u happens before subjunctive -amos, -áis in -ir verbs. [DONE] 7. Implement reflexive verbs. [DONE] 8. Implement categories. [DONE] 9. Implement show_forms. [DONE] 10. Reconcile stems.vowel_alt from irregular verbs with vowel_alt from indicators. May require moving the irregular-verb handling code in construct_stems() into detect_indicator_spec(). [DONE] 11. Implement make_table. [DONE] 12. Vowel alternation should show u-ue (jugar), i-ie (adquirir), e-í (reír) alternations specially. [DONE] 13. Handle linking of multiword forms as is done in [[Module:es-headword]]. [DONE] 14. Implement comparison against previous module. [DONE] 15. Implement categorization of irregularities for individual tenses. 16. Support nocomb=1. [DONE] 17. (Possibly) display irregular forms in a different color, as with the old module. 18. (Possibly) display a "rule" description indicating the types of alternations. 19. Implement replace_reflexive_indicators(). [NOT DONE; SUPPORT REMOVED] 20. Implement verbs with attached clitics e.g. [[pasarlo]], [[corrérsela]]. [DONE] 21. When footnote + tú/vos notation, add a space before tú/vos. 22. Fix [[erguir]] so ie-i vowel alternation produces ye- at beginning of word, similarly for errar. Also allow multiple vowel alternation specs in irregular verbs, for errar. Finally, ie should show as e-ye for errar and as e-ye-i for erguir. [DONE] 23. Figure out why red links in combined forms show up as black not red. 24. Consider including alternative superseded forms of verbs like [[ciar]] (e.g. pret_3s = cio, ció with footnote). 25. Allow conjugation of suffixes e.g. -ir, -ecer; need to fix in [[Module:inflection utilities]]. [DONE] 26. Allow specification of stems esp. so that footnotes can be hung off them; use + for the default. 27. Don't remove monosyllabic accents when conjugating suffixes. [DONE] 28. If multiword expression with no <>, add <> after first word, as with [[Module:es-headword]]. [DONE] 29. (Possibly) link the parts of a reflexive or cliticized infinitive, as done in [[Module:es-headword]]. [DONE] 30. Final fixes to allow [[Module:es-headword]] to use this module. [DONE] --]=] local lang = require("Module:languages").getByCode("es") local m_string_utilities = require("Module:string utilities") local m_links = require("Module:links") local m_table = require("Module:table") local iut = require("Module:inflection utilities") local put = require("Module:parse utilities") local com = require("Module:es-common") local force_cat = false -- set to true for debugging local check_for_red_links = false -- set to false for debugging local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsplit = mw.text.split local rsub = com.rsub local unpack = unpack or table.unpack -- Lua 5.2 compatibility local function link_term(term) return m_links.full_link({ lang = lang, term = term }, "term") end local V = com.V -- vowel regex class local AV = com.AV -- accented vowel regex class local C = com.C -- consonant regex class local tuteo_link = link_term("tuteo") local voseo_link = link_term("voseo") local fut_sub_note = "[rare; now chiefly used in legal language]" local pres_sub_voseo_note = "[Argentine and Uruguayan " .. voseo_link .. " prefers the " .. tuteo_link .. "-form for the present subjunctive]" local vowel_alternants = m_table.listToSet({"ie", "ie-i", "ye", "ye-i", "ue", "ue-u", "hue", "i", "í", "ú", "+"}) local vowel_alternant_to_desc = { ["ie"] = "e-ie", ["ie-i"] = "e-ie-i", ["ye"] = "e-ye", ["ye-i"] = "e-ye-i", ["ue"] = "o-ue", ["ue-u"] = "o-ue-u", ["hue"] = "o-hue", ["i"] = "e-i", ["í"] = "i-í", ["ú"] = "u-ú", } local raise_vowel = {["e"] = "i", ["o"] = "u"} local all_persons_numbers = { ["1s"] = "1|s", ["2s"] = "2|s", ["2sv"] = "2|s|voseo", ["3s"] = "3|s", ["1p"] = "1|p", ["2p"] = "2|p", ["3p"] = "3|p", } local person_number_list_basic = {"1s", "2s", "3s", "1p", "2p", "3p"} local person_number_list_voseo = {"1s", "2s", "2sv", "3s", "1p", "2p", "3p"} local imp_person_number_list = {"2s", "2sv", "3s", "1p", "2p", "3p"} local neg_imp_person_number_list = {"2s", "3s", "1p", "2p", "3p"} person_number_to_reflexive_pronoun = { ["1s"] = "me", ["2s"] = "te", ["2sv"] = "te", ["3s"] = "se", ["1p"] = "nos", ["2p"] = "os", ["3p"] = "se", } local indicator_flags = m_table.listToSet { "no_pres_stressed", "no_pres1_and_sub", "only3s", "only3sp", "only3p", "no_built_in", } -- Initialize all the slots for which we generate forms. The particular slots may depend on whether we're generating -- combined slots (`not alternant_multiword_spec.nocomb`, which is always false if we're dealing with a verb with an -- attached clitic, such as [[hincarla]], or a reflexive or partly-reflexive verb, where a partly-reflexive verb is -- a conjoined term made up of two or more verbs, where some but not all are reflexive). It may also depend on whether -- we're being requested to generate some double-combined forms, such as [[llevándoselo]]; see the comment below for -- `verb_slot_double_combined_rows`. local function add_slots(alternant_multiword_spec) -- "Basic" slots: All slots that go into the regular table (not the combined-form table). alternant_multiword_spec.verb_slots_basic = { {"infinitive", "inf"}, {"infinitive_linked", "inf"}, {"gerund", "ger"}, {"pp_ms", "m|s|past|part"}, {"pp_fs", "f|s|past|part"}, {"pp_mp", "m|p|past|part"}, {"pp_fp", "f|p|past|part"}, } -- Slots that go into the combined-form table, along with double-combined slots (e.g. [[llevándoselo]]) that are -- requested for use with {{es-verb form of}}. alternant_multiword_spec.verb_slots_combined = {} -- Special slots used to handle non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- For example, for a reflexive-only verb like [[jambarse]], we want to be able to use {{es-verb form of}} on -- [[jambe]] (which should mention that it is a part of 'me jambe', first-person singular present subjunctive, and -- 'se jambe', third-person singular present subjunctive) or on [[jambamos]] (which should mention that it is a -- part of 'nos jambamos', first-person plural present indicative or preterite). Similarly, we want to use -- {{es-verb form of}} on [[jambando]] (which should mention that it is a part of 'se ... jambando', syntactic -- variant of [[jambándose]], which is the gerund of [[jambarse]]). To do this, we need to be able to map -- non-reflexive parts like [[jambe]], [[jambamos]], [[jambando]], etc. to their reflexive equivalent(s), to the -- tag(s) of the equivalent(s), and, in the case of forms like [[jambando]], [[jambar]] and imperatives, to the -- separated syntactic variant of the verb+clitic combination. We do this by creating slots for the non-reflexive -- part equivalent of each basic reflexive slot, and for the separated syntactic-variant equivalent of each basic -- reflexive slot that is formed of verb+clitic. We use slots in this way to deal with multiword lemmas. Note that -- we run into difficulties mapping between reflexive verbs, non-reflexive part equivalents, and separated syntactic -- variants if a slot contains more than one form. To handle this, if there are the same number of forms in two -- slots we're trying to match up, we assume the forms match one-to-one; otherwise we don't match up the two slots -- (which means {{es-verb form of}} won't work in this case, but such a case is extremely rare and not worth -- worrying about). Alternatives that handle this "properly" are significantly more complicated and require -- non-trivial modifications to [[Module:inflection utilities]]. local need_special_verb_form_of_slots = alternant_multiword_spec.source_template == "es-verb form of" and alternant_multiword_spec.refl if need_special_verb_form_of_slots then alternant_multiword_spec.verb_slots_reflexive_verb_form_of = { {"infinitive_non_reflexive", "-"}, {"infinitive_variant", "-"}, {"gerund_non_reflexive", "-"}, {"gerund_variant", "-"}, } else alternant_multiword_spec.verb_slots_reflexive_verb_form_of = {} end -- For generating combined forms, i.e. combinations of a basic form (specifically, infinitive, gerund or an -- imperative form) with a clitic (or in some cases, two clitics). This is a list of lists of the form -- {BASIC_SLOT, CLITICS} where BASIC_SLOT is the slot to add the clitic pronouns to (e.g. "gerund" or "imp_2s") -- and CLITICS is a list of the clitic pronouns to add. alternant_multiword_spec.verb_slot_combined_rows = {} -- For generating double combined forms (e.g. [[llevándoselo]] or [[dámela]]). This is used by {{es-verb form of}} -- when it detects that it is being requested to find the inflection tags for a double-combined form. The number of -- double-combined forms is relatively large, so to optimize this, [[Module:es-inflections]] (which implements -- {{es-verb form of}}) detects which two clitics are involved, and we only generate double-combined forms -- involving those two clitics; this is specified using `double_combined_forms_to_include`, passed into -- do_generate_forms(). The value of this field is a list of lists of the form {SINGLE_COMB_SLOT, CLITICS} where -- SINGLE_COMB_SLOT is the single-combined slot to add the object clitic pronouns to (e.g. "gerund_comb_se" or -- "imp_2s_comb_me") and CLITICS is a list of the clitic pronouns to add. CLITICS will normally be a length-one -- list whose value is one of {"lo", "la", "le", "los", "las", "les"}. alternant_multiword_spec.verb_slot_double_combined_rows = {} -- Add entries for a slot with person/number variants. -- `verb_slots` is the table to add to. -- `slot_prefix` is the prefix of the slot, typically specifying the tense/aspect. -- `tag_suffix` is a string listing the set of inflection tags to add after the person/number tags. -- `person_number_list` is a list of the person/number slot suffixes to add to `slot_prefix`. local function add_personal_slot(verb_slots, slot_prefix, tag_suffix, person_number_list) for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(verb_slots, {slot, accel}) end end -- Add a personal slot (i.e. a slot with person/number variants) to `verb_slots_basic`. local function add_basic_personal_slot(slot_prefix, tag_suffix, person_number_list, no_special_verb_form_of_slot, need_variant_slot) add_personal_slot(alternant_multiword_spec.verb_slots_basic, slot_prefix, tag_suffix, person_number_list) -- Add special slots for handling non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- See comment above in `need_special_verb_form_of_slots`. if need_special_verb_form_of_slots and not no_special_verb_form_of_slot then for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local basic_slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_non_reflexive", "-"}) if need_variant_slot then table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_variant", "-"}) end end end end add_basic_personal_slot("pres", "pres|ind", person_number_list_voseo) add_basic_personal_slot("impf", "impf|ind", person_number_list_basic) add_basic_personal_slot("pret", "pret|ind", person_number_list_basic) add_basic_personal_slot("fut", "fut|ind", person_number_list_basic) add_basic_personal_slot("cond", "cond", person_number_list_basic) add_basic_personal_slot("pres_sub", "pres|sub", person_number_list_voseo) add_basic_personal_slot("impf_sub_ra", "impf|sub", person_number_list_basic) add_basic_personal_slot("impf_sub_se", "impf|sub", person_number_list_basic) add_basic_personal_slot("fut_sub", "fut|sub", person_number_list_basic) -- Need variant slots because the imperative clitics are suffixed. add_basic_personal_slot("imp", "imp", imp_person_number_list, nil, "need variant slot") -- Don't need special non-reflexive-part slots because the negative imperative is multiword, of which the -- individual words are 'no' + subjunctive. add_basic_personal_slot("neg_imp", "neg|imp", neg_imp_person_number_list, "no special verb form of") -- Don't need special non-reflexive-part slots because we don't want [[jambando]] mapping to [[jambándome]] -- (only [[jambándose]]) or [[jambar]] mapping to [[jambarme]] (only [[jambarse]]). add_basic_personal_slot("infinitive", "inf", person_number_list_basic, "no special verb form of") add_basic_personal_slot("gerund", "ger", person_number_list_basic, "no special verb form of") local third_person_object_clitics = {"lo", "la", "le", "los", "las", "les"} -- Add combined-form slots. if not alternant_multiword_spec.nocomb then -- Add a row of slots representing the combination of a basic slot with a clitic. `basic_slot` is the basic slot -- descriptor, `tag_prefix` is a string describing the inflection tags of the basic slot, and `personal_clitics` -- is a list of the personal clitics ("me", "te", "se", "nos" or "os") to add to the basic slot. local function add_combined_slot_row(basic_slot, tag_prefix, personal_clitics) -- First, add each individual combined slot to `verb_slots_combined`. local clitics_with_object = m_table.append(personal_clitics, third_person_object_clitics) for _, clitic in ipairs(clitics_with_object) do local slot = basic_slot .. "_comb_" .. clitic -- You have to pass this through full_link() to get a Spanish-specific link local accel = tag_prefix .. "|combined with [[" .. clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) end -- Also, add the row to `verb_slot_combined_rows`. table.insert(alternant_multiword_spec.verb_slot_combined_rows, {basic_slot, clitics_with_object}) -- Also do double-combined forms for a specific set of clitics, if requested. See the comment above -- `verb_slot_double_combined_rows` above. if alternant_multiword_spec.double_combined_forms_to_include then -- Add a special "lxx" clitic for le/les when transformed into se in double-combined forms. local personal_clitics_with_lxx = {unpack(personal_clitics)} table.insert(personal_clitics_with_lxx, "lxx") for _, personal_clitic in ipairs(personal_clitics_with_lxx) do for _, object_clitic in ipairs(third_person_object_clitics) do for _, form_to_include in ipairs(alternant_multiword_spec.double_combined_forms_to_include) do local to_include_personal_clitic, to_include_object_clitic = unpack(form_to_include) if personal_clitic == to_include_personal_clitic and object_clitic == to_include_object_clitic then local single_comb_slot = basic_slot .. "_comb_" .. personal_clitic local slot = single_comb_slot .. "_" .. object_clitic accel_clitic = personal_clitic == "lxx" and "[[le]]/[[les]]" or "[[" .. personal_clitic .. "]]" local accel = tag_prefix .. "|combined with indirect object " .. accel_clitic .. " and direct object [[" .. object_clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) table.insert(alternant_multiword_spec.verb_slot_double_combined_rows, {single_comb_slot, {object_clitic}}) break end end end end end end add_combined_slot_row("infinitive", "inf", {"me", "te", "se", "nos", "os"}) add_combined_slot_row("gerund", "gerund", {"me", "te", "se", "nos", "os"}) local function add_combined_imp_slot_row(persnum, personal_clitics) add_combined_slot_row("imp_" .. persnum, all_persons_numbers[persnum] .. "|imp", personal_clitics) end add_combined_imp_slot_row("2s", {"me", "te", "nos"}) add_combined_imp_slot_row("2sv", {"me", "te", "nos"}) add_combined_imp_slot_row("3s", {"me", "se", "nos"}) add_combined_imp_slot_row("1p", {"te", "nos", "os"}) add_combined_imp_slot_row("2p", {"me", "nos", "os"}) add_combined_imp_slot_row("3p", {"me", "se", "nos"}) end -- Generate the list of all slots. alternant_multiword_spec.all_verb_slots = {} for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_combined) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_reflexive_verb_form_of) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end alternant_multiword_spec.verb_slots_basic_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_basic_map[slot] = accel end alternant_multiword_spec.verb_slots_combined_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_combined) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_combined_map[slot] = accel end end -- Return true if `form` is accented and is likely monosyllabic. Used in remove_monosyllabic_accents(); if true, we -- run the syllabification algorithm to determine the syllable count, and if monosyllabic, remove the accent. Also used -- in conjunction with user-specified form overrides to add an asterisk to prevent accents from being removed. local function may_need_monosyllabic_accent_removed(form) return not rfind(form, "^%-") and rfind(form, AV) and not rfind(form, V .. C .. V) end local overridable_stems = {} -- If `add_monosyllabic_asterisk` is given, add a * to accented forms that may be monosyllabic to prevent the accent -- from being removed in remove_monosyllabic_accents(). local function allow_multiple_values_for_override(separated_groups, data, add_monosyllabic_asterisk) local retvals = {} for _, separated_group in ipairs(separated_groups) do local footnotes = data.fetch_footnotes(separated_group) local form = separated_group[1] if add_monosyllabic_asterisk and may_need_monosyllabic_accent_removed(form) then form = form .. "*" end -- Add suppress_prefix to prevent the built-in verb prefix from being added to the override. local retval = {form = form, footnotes = footnotes, suppress_prefix = true} table.insert(retvals, retval) end return retvals end local function simple_choice(choices) return function(separated_groups, data) if #separated_groups > 1 then data.parse_err("For spec '" .. data.prefix .. ":', only one value currently allowed") end if #separated_groups[1] > 1 then data.parse_err("For spec '" .. data.prefix .. ":', no footnotes currently allowed") end local choice = separated_groups[1][1] if not m_table.contains(choices, choice) then data.parse_err("For spec '" .. data.prefix .. ":', saw value '" .. choice .. "' but expected one of '" .. table.concat(choices, ",") .. "'") end return choice end end for _, overridable_stem in ipairs { "pres_unstressed", "pres_stressed", "pres1_and_sub", -- Don't include pres1; use pres_1s if you need to override just that form "impf", "full_impf", "pret", {"pret_conj", simple_choice({"irreg", "ar", "er", "ir"}) }, "fut", "cond", "pres_sub_stressed", "pres_sub_unstressed", "impf_sub_ra", "impf_sub_se", "fut_sub", "pp", } do if type(overridable_stem) == "string" then overridable_stems[overridable_stem] = allow_multiple_values_for_override else local stem, validator = unpack(overridable_stem) overridable_stems[stem] = validator end end local function match_against_verbs(ref_verb, prefixes) return function(verb) for _, prefix in ipairs(prefixes) do if verb == prefix .. ref_verb then return prefix, ref_verb end end return nil end end --[=[ Special cases for verbs: diluviar, atardecer: impersonal; all finite non-3s forms are nonexistent or hypothetical. Handle using '.only3s'. empecer, atañer, concernir: all finite non-third-person forms are nonexistent or hypothetical. Handle using '.only3sp'. desnacer: Former module claimed an irregular past participle 'desnato'. Verb is not in RAE at all and barely exists; unlikely to have irregular past participle. desposeer: Former module claimed an irregular past participle 'desposeso'. Not per RAE. valer: Former module claimed an irregular imperative 'val'. Not per RAE. manumitir: Former module claimed an irregular past participle 'manumiso'. Not per RAE. raer: Former module claimed a pres 1sg rao. Not per RAE. rehuir: Handle using +ú. sustituir: Former module claimed an irregular past participle 'sustituto'. Not per RAE. venir: Former module claimed an irregular clitic combination ven + nos -> venos. Not per native speakers. --------- Verbs to check: rehuir (+ú), prohibir (+í), reunir (+ú) --------- -ir verbs: There are several types of vowel alternations: 1. No alternation. Includes some verbs in -e- and -o-, e.g. aterir(se) (no_pres_stressed), tra(n)sgredir (pres_stressed forms rare), abolir (pres_stressed forms rare), colorir (no_pres_stressed), sumergir, divergir, convergir, arrecir (no_pres_stressed), rostir, polir (obsolete), condir (obsolete), possibly ascondir (obsolete), atordir (obsolete), sacodir (obsolete), sobrevendir (possible misspelling), empedernir (no_pres_stressed), decebir (obsolete; possibly actually like concebir, i.e. decibo not decebo), premir (obsolete), expremir (obsolete), exir (obsolete), escreuir (obsolete; fix conjugation), escrebir (obsolete), agredir; sometimes the stressed forms are rare or disused. (Also embaír, desvaír are no_pres_stressed.) 2a. ie: Infinitive has -e-, changing to -ie- when stressed. No raising before i+V. Only hendir, cernir, discernir, concernir (only3sp); discernir -> discierno, discerniendo, discernió, discernamos. 2b. ye: Infinitive has -e-, changing to -ye- when stressed. No raising before i+V. Does not occur (cf. errar). 3a. ie-i: Infinitive has -e- or -i-, changing to -ie- when stressed. Raising before i+V and 1p/2p pres subjunctive: sentir -> siento, sintiendo, sintió, sintamos. adquirir -> adquiero, adquiriendo, adquirió, adquiramos. 3b. ye-i: Infinitive has -e-, changing to -ye- when stressed. Raising before i+V and 1p/2p pres subjunctive. Only erguir: erguir -> yergo, irguiendo, irguió, irgamos. 4. i: Infinitive has -e-, changing to -i- when stressed. Raising before i+V and 1p/2p pres subjunctive: vestir -> visto, vistiendo, vistió, vistamos. Variant: ceñir -> ciño, ciñendo, ciñó, ciñamos. NOTE: preterir (no_pres_stressed). 5. ue-u: Infinitive has -o-, changing to -ue- when stressed. Raising before i+V and 1p/2p pres subjunctive: Only dormir, morir and compounds. dormir -> duermo, durmiendo, durmió, durmamos. 6. ue: This type would be parallel to 'ie' but doesn't appear to exist. --------- Verbs to fix (extra forms need to be excised or deleted): The above verbs under type (1) -ir vowel alternations; [[neviscar]] (impersonal), [[acaecer]] (third-person only), [[acontecer]] (third-person only), [[cellisquear]] (impersonal), [[pintear]] (impersonal? other meaning "to play hookey" given, not in RAE), [[diluviar]] (impersonal). [[desabrir]] (not like abrir, rare in pres_stressed/sub forms), [[jabrir]] (not like abrir). Verbs with existing errors: * [[abeldar]]: (missing <ie>) [FORMS TO DELETE] * [[acaecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[acontecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[anticuar]] (conjugated without ú) [FORMS TO DELETE] * [[antojar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[aerografiar]]: (conjugated without í) [FORMS TO DELETE] * [[afiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[agraviar]]: (wrongly has í) [FORMS TO DELETE] * [[arrecir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[aserrar]]: (missing <ie>) [FORMS TO DELETE] * [[aspaventar]]: (missing <ie>) [OK] * [[atesar]]: (wrongly has ie) [FORMS TO DELETE] * [[avalentar]]: (wrongly has ie) [FORMS TO DELETE] * [[autorregularse]] (conjugated as non-reflexive) [OK] * [[auxiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[balbucir]] (pres1_and_sub nonexistent) [DELETE PRES1_AND_SUB FORMS] * [[caçar]] (conjugated as -zar) [OK] * [[calefacer]] (extra form caleface) [FIX] * [[cellisquear]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[chilenizar]] (conjugated with no cons alternation) [OK] * [[colorir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[comisariar]] (conjugated without í) [FORMS TO DELETE] * [[complacer]] (missing complega in imperative 3s) [OK] * [[comprehender]] (conjugated as comprender) [OK] * [[decebir]] (was conjugated without <i>) [FORMS TO DELETE] * [[desafiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[desagregar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desairar]]: (conjugated with í should be only +) [FORMS TO DELETE] * [[descordar]]: (missing <ue>) [FORMS TO DELETE] * [[deseleccionar]] (conjugated as desseleccionar) [OK] * [[desestacionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desgonzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desguinzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[deshacer]] (extra form deshace, desháceme etc.) [OK] * [[desnacer]] (extra form desnato etc.) [DELETE PP FORMS] * [[desposeer]] (extra form desposeso etc.) [DELETE PP FORMS] * [[dezmar]]: (wrongly has ie) [FORMS TO DELETE] * [[diluviar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[draftear]] (extraneous param lang=es) [REMOVE PARAM] * [[ejemplarizar]] (extraneous param compound=1) [compound -> combined] * [[ejercitar]] (extraneous param compound=1) [compound -> combined] * [[empecer]] (empezca has imperatives, 1s in its verb form entry) [FIX] * [[encentar]]: (wrongly has ie) [OK] * [[encubertar]]: (wrongly has ie) [FORMS TO DELETE] * [[entrechocar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[entredecir]] (imp_2s has entredice should be entredí; extra future/cond forms entredeciré etc.) [FORMS TO DELETE/FIX] * [[escenografiar]]: (conjugated without í) [FORMS TO DELETE] * [[estar]] (incorrect combined forms, e.g. éstela instead of estela) [OK] * [[extasiar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[facer]] (extra form face, fáceme, etc.) [FIX] * [[ferrar]]: (missing <ie>) [FORMS TO DELETE] * [[gloriar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[hacer]] (extra form hace, háceme, etc.) [DELETE hácete] * [[homogeneizar]] (extra form homogeneízo) [DELETE homogeneízo, homogeneízas, homogeneíza, homogeneízan, homogeneícen, homogeneícemos] * [[incensar]]: (missing <ie>) [FORMS TO DELETE] * [[ir]] (extraneous param aux=ser) [REMOVE PARAM] * [[jacer]] (extra form jace, jáceme, etc.) [FIX] * [[jarrear]] (extraneous param impersonal=yes) * [[litografiar]]: (conjugated without í) [FORMS TO DELETE] * [[manumitir]] (extra form manumiso, etc.) [FIX; is an adjective] * [[mecanografiar]]: (conjugated without í) [FORMS TO DELETE] * [[mordiscar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[neviscar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[obsipar]] (conjugated as obispar) [DELETE VERB] * [[obstar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[orificar]] (conjugated as orificiar) [OK] * [[complacer]], [[placer]] (missing plega in imperative 3s, etc.) [OK] * [[prevaler]] (extra form preval, incorrect form prévalme etc.) [DELETE preval] * [[preterir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[raer]] (extra form rao) [DELETE rao] * [[rebordar]] (extraneous param lang=es) [REMOVE PARAM] * [[redecir]] (incorrect imp_2s redice instead of redí) [FIX] * [[reinstitucionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[reirse]] [DELETE] * [[serigrafiar]]: (conjugated without í) [FORMS TO DELETE] * [[sobresalir]] (incorrect combined forms e.g. sobrésalme) [OK] * [[superpoblar]] (missing <ue>) [FORMS TO DELETE] * [[sustituir]] (extra form sustituto, etc.) [OK] * [[usucapir]]: (used only in inf and pp) [DELETE ALL FORMS BUT PP] * [[valefacer]] (extra form valeface) [FIX] * [[valer]] (extra form val, etc.) [OK] * LOTS OF COMBINED FORMS OF VERBS IN -iar, -uar, -ai-, -au-, -ei-, -eu-, etc. Example: afeitar (afeítate, afeítese, afeítense). Need a script to find them. * [[acostar]]: normally <ue> but in meaning "arrive at the coast", <> * [[adecuar]]: <+,ú> * [[aerografiar]]: <í> * [[aferrar]]: <+,ie[obsolete]> * [[afiliar]]: <> * [[aforar]]: in meaning "to gauge, to measure": <>; in meaning "otorgar fuero": <ue> * [[arrecir]]: <no_pres_stressed> * [[agraviar]]: <> * [[agriar]]: <í,+> * [[aserrar]]: <ie> * [[asolar]]: in meaning "destroy": <ue,+>; in meaning "to dry up": <> * [[aspaventar]]: <ie> * [[atentar]]: in meaning "to commit a crime" does not have vowel alt * [[atesar]]: <>; possibly <ie> in obsolete meaning "atiesar" * [[atestar]]: in meaning "to pack": <ie,+>; in meaning "testify": <> * [[autoevacuarse]]: <+,ú> * [[auxiliar]]: <> * [[avalentar]]: <> * [[cimentar]]: <ie,+> * [[colar]]: most meanings <ue> but "canonically confer (an ecclesiastical benefit)" <> * [[colorir]]: <no_pres_stressed> * [[comisariar]]: <í> * [[desafiliar]]: <> * [[desaforar]]: "to deprive of fuero": <ue,+[less common]> * [[desairar]]: <> * [[desolar]]: <ue,+> * [[desmembrar]]: <ie,+> * [[dezmar]]: <> * [[ejecutoriar]]: <í,+> * [[emparentar]]: <ie,+> * [[encentar]]: <> * [[encubertar]]: <> * [[engrosar]]: <ue,+> * [[escenografiar]]: <í> * [[evacuar]]: <+,ú> * [[expatriar]]: <í,+> * [[extasiar]]: <í> * [[ferrar]]: <ie> * [[follar]]: <ue> * [[gloriar]]: <í> * [[hibernar]]: no vowel alt or e-ie; e-ie not in RAE, ask about it * [[historiar]]: <í,+> * [[incensar]]: <ie> * [[invernar]]: <ie,+> * [[licuar]]: <+,ú> * [[litografiar]]: <í> * [[mecanografiar]]: <í> * [[paliar]]: <í,+> * [[preterir]]: <i.no_pres_stressed> * [[promiscuar]]: <+,ú> * [[readecuar]]: <+,ú> * [[repatriar]]: <í,+> * [[retrocar]]: <ue,+> * [[serigrafiar]]: <í> * [[soterrar]]: <ie,+> * [[superpoblar]]: <ue> * [[templar]]: <+,ie[in some parts of Latin America]> * [[vidriar]]: <í,+> Second round of verbs to fix: * [[apropriar]]: forms point to reflexive [FORMS TO FIX] * [[autogobernarse]]: (missing <ie>) [FORMS TO DELETE] * [[autorreproducirse]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[aventarse]]: (missing <ie>) [FORMS TO DELETE] * [[aventar]]: forms point to reflexive [FORMS TO FIX] * [[culiar]]: yo culio or culío? [VERIFY] * [[desnacer]]: delete [[dasnatos]] * [[poseer]]: delete [[posesa]], [[posesos]], [[posesas]] * [[reproducir]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[trasgredir]]: (wrongly had <i>) [FORMS TO DELETE] --------- Irregular conjugations. Each entry is processed in turn and consists of an object with two fields: 1. match=: Specifies the irregular verbs that match this object. 2. forms=: Specifies the irregular stems and forms for these verbs. The value of match= is either a string beginning with "^" (match only the specified verb), a string not beginning with "^" (match any verb ending in that string), or a function that is passed in the verb and should return the prefix of the verb if it matches, otherwise nil. The function match_against_verbs() is provided to facilitate matching a set of verbs with a common ending and specific prefixes (e.g. [[andar]] and [[desandar]] but not [[mandar]], etc.). The value of forms= is a table specifying stems and individual override forms. Each key of the table names either a stem (e.g. `pres_stressed`), a stem property (e.g. `vowel_alt`) or an individual override form (e.g. `pres_1s`). Each value of a stem can either be a string (a single stem), a list of strings, or a list of objects of the form {form = STEM, footnotes = {FOONOTES}}. Each value of an individual override should be of exactly the same form except that the strings specify full forms rather than stems. The values of a stem property depend on the specific property but are generally strings or booleans. In order to understand how the stem specifications work, it's important to understand the phonetic modifications done by combine_stem_ending(). In general, the complexities of predictable stem and ending modifications are all handled in this function. In particular: 1. Spelling-based modifications (c/z, g/gu, gu/gü, g/j) occur automatically as appropriate for the ending. 2. Raising of e -> i, o -> u in -ir verbs before an ending beginning with i + vowel, as well as in the 1p/2p forms of the present subjunctive (dormir -> durmiendo, durmió, durmamos), are handled here. Raising happens only for -ir verbs and only when the stem setting `raising_conj` is true (which is normally set to true when vowel alternations `ie-i`, `ye-i`, `ue-u`, `i`, `í` or `ú` are specified). 3. Numerous modifications are automatically made before an ending beginning with i + vowel. These include: a. final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; b. in the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. imperfect and and future subjunctive), initial i absorbed after j and u (dijeron not #dijieron, likewise for condujeron, trajeron; also fueron not #fuyeron). This happens only when stem setting `pret_conj` == "irreg"; this must be set explicitly by irregular verbs. Does not apply everywhere because of cases like regular [[tejer]] (tejieron not #tejeron), regular [[concluir]] (concluyeron not #conclueron). c. initial i of ending -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; ir -> yendo; d. initial i of ending -> y after gü, which becomes gu: argüir -> arguyó, arguyera, arguyendo; e. initial i of ending absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo 4. If the ending begins with (h)i, it gets an accent after a/e/i/o to prevent the two merging into a diphthong: caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. concluir -> concluiste, concluimos. 5. In -uir verbs (i.e. -ir verbs with stem ending in -u), a y is added before endings beginning with a/e/o: concluir -> concluyo, concluyen, concluya, concluyamos. Note that preterite concluyó, gerund concluyendo, etc. are handled by a different rule above (3b). The following stems are recognized: -- pres_unstressed: The present indicative unstressed stem (2s voseo, 1p, 2p). Also controls the imperative 2p and gerund. Defaults to the infinitive stem. -- pres_stressed: The present indicative stressed stem (1s, 2s, 3s, 3p). Also controls the imperative 2s. Default is empty if indicator `no_pres_stressed`, else a vowel alternation if such an indicator is given (e.g. `ue`, `ì`), else the infinitive stem. -- pres1_and_sub: Overriding stem for 1s present indicative and the entire subjunctive. Only set by irregular verbs and by the indicator `no_pres_stressed` (since verbs of this sort, e.g. [[aterir]], are missing the entire subjunctive as well as the forms with stressed root). Used by many irregular verbs, e.g. [[caer]], [[roer]], [[salir]], [[tener]], [[valer]], [[venir]], etc. Some verbs set this and then supply an override for the pres_1sg if it's irregular, e.g. [[saber]], with irregular subjunctive stem "sep-" and special 1s present indicative "sé*" (the * indicates that the monosyllabic accent should not be removed). -- pres1: Special stem for 1s present indicative. Normally, do not set this explicitly. If you need to specify an irregular 1s present indicative, use the form override pres_1s= to specify the entire form. Defaults to pres1_and_sub if given, else pres_stressed. -- pres_sub_unstressed: The present subjunctive unstressed stem (1p, 2p, also 2s voseo for -ar verbs). Defaults to pres1_and_sub if given, else the infinitive stem. -- pres_sub_stressed: The present subjunctive stressed stem (1s, 2s, 3s, 1p, also 2s voseo for -er/-ir verbs). Defaults to pres1. -- impf: The imperfect stem. Defaults to the infinitive stem. -- pret: The preterite stem. Defaults to the infinitive stem. -- pret_conj: Determines the set of endings used in the preterite. Should be one of "ar", "er", "ir" or "irreg". Defaults to the conjugation as determined from the infinitive. -- fut: The future stem. Defaults to the infinitive stem. -- cond: The conditional stem. Defaults to fut. -- impf_sub_ra: The imperfect subjunctive -ra stem. Defaults to the preterite stem. -- impf_sub_se: The imperfect subjunctive -se stem. Defaults to the preterite stem. -- fut_sub: The future subjunctive stem. Defaults to the preterite stem. -- pp: The past participle stem. Default is based on the verb conjugation: infinitive stem + "ad" for -ar verbs, otherwise infinitive stem + "id". ]=] local built_in_conjugations = { { -- andar, desandar -- we don't want to match e.g. mandar. match = match_against_verbs("andar", {"", "des"}), forms = {pret = "anduv", pret_conj = "irreg"} }, { -- asir, desasir match = "asir", -- use 'asgu' because we're in a front environment; if we use 'asg', we'll get '#asjo' forms = {pres1_and_sub = "asgu"} }, { -- abrir, cubrir and compounds match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(brir)$") -- Only match abrir, cubrir and compounds, and don't match desabrir/jabrir if not prefix then return nil elseif not prefix:find("a$") and not prefix:find("cu$") then return nil elseif prefix == "desa" or prefix == "ja" then return nil else return prefix, base_verb end end, forms = {pp = "biert"} }, { match = "caber", forms = {pres1_and_sub = "quep", pret = "cup", pret_conj = "irreg", fut = "cabr"} }, { -- caer, decaer, descaer, recaer match = "caer", -- use 'caigu' because we're in a front environment; if we use 'caig', we'll get '#caijo' forms = {pres1_and_sub = "caigu"} }, { -- cocer, escocer, precocer, etc. match = "cocer", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "ue", pres1 = "cuez", pres_sub_unstressed = "coz", cons_alt = "c-z"}, -- not cozco, as would normally be generated }, { -- dar, desdar match = match_against_verbs("dar", {"", "des"}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_1s = "doy", pres_2s = "dás", pres_3s = "dá", pres_2p = "dáis", pres_3p = "dán", pret = "d", pret_conj = "er", pres_sub_1s = "dé*", -- * signals that the monosyllabic accent must remain pres_sub_2s = "dés", pres_sub_3s = "dé*", pres_sub_2p = "déis", pres_sub_3p = "dén", imp_2s = "dá", } }, { -- decir, redecir, entredecir match = match_against_verbs("decir", {"", "re", "entre"}), forms = { -- for this and variant verbs in -decir, we set cons_alt to false because we don't want the -- verb categorized as a c-zc alternating verb, which would happen by default -- use 'digu' because we're in a front environment; if we use 'dig', we'll get '#dijo' pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir", imp_2s = "dí" -- need the accent for the compounds; it will be removed in the simplex } }, { -- antedecir, interdecir match = match_against_verbs("decir", {"ante", "inter"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir" -- imp_2s regular } }, { -- bendecir, maldecir match = match_against_verbs("decir", {"ben", "mal"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = {"decid", "dit"} -- imp_2s regular, fut regular } }, { -- condecir, contradecir, desdecir, predecir, others? match = "decir", forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = {"decir", "dir"} -- imp_2s regular } }, { match = "^desvaír", forms = { pres_2s = "desvaes", pres_3s = "desvae", pres_3p = "desvaen", imp_2s = "desvae" } }, { -- conducir, producir, reducir, traducir, etc. match = "ducir", forms = {pret = "duj", pret_conj = "irreg"} }, { -- elegir, reelegir; not preelegir, per RAE match = match_against_verbs("elegir", {"", "re"}), forms = {vowel_alt = "i", pp = {"elegid", "elect"}} }, { -- erguir match = "^erguir", forms = { vowel_alt = {"i", "ye-i"}, -- We would not need to make this verb irregular except for the alternative unstressed present subjunctive forms -- in yerg-. We can't use pres_sub_unstressed = {"irgu", "yergu"} because the "i" and "ye-i" vowel alternations -- are e->i raising in the unstressed present subjunctive and we wrongly get irgamos/yirgamos etc. pres_sub_2sv = {"irgás", "yergás"}, pres_sub_1p = {"irgamos", "yergamos"}, pres_sub_2p = {"irgáis", "yergáis"}, }, }, { match = "^estar", forms = { pres_1s = "estoy", pres_2s = "estás", pres_2sv = "estás", pres_3s = "está", pres_3p = "están", pret = "estuv", pret_conj = "irreg", pres_sub_1s = "esté", pres_sub_2s = "estés", pres_sub_2sv = "estés", pres_sub_3s = "esté", pres_sub_3p = "estén", imp_2s = "está", imp_2sv = "está", } }, { -- freír, refreír match = "freír", forms = {vowel_alt = "í", pp = {"freíd", "frit"}} }, { match = "garantir", forms = { pres_stressed = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, pres1_and_sub = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, } }, { match = "^haber", forms = { pres_1s = "he", pres_2s = "has", pres_2sv = "has", pres_3s = {"ha", {form = "hay", footnotes = {"[used impersonally]"}}}, pres_1p = "hemos", pres_3p = "han", pres1_and_sub = "hay", -- only for subjunctive as we override pres_1s pret = "hub", pret_conj = "irreg", imp_2s = {"habe", "he"}, imp_2sv = {"habe", "he"}, fut = "habr", } }, { match = "satisfacer", forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "satisfagu", cons_alt = false, pret = "satisfic", pret_conj = "irreg", pp = "satisfech", fut = "satisfar", imp_2s = {"satisface", "satisfaz"} } }, { match = match_against_verbs("hacer", {"contra", "re"}), -- contrahacer/rehacer require an extra accent in the preterite (rehíce, rehízo). forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "hagu", cons_alt = false, pret = "hic", pret_1s = "híce", pret_3s = "hízo", pret_conj = "irreg", pp = "hech", fut = "har", imp_2s = "haz" } }, { -- hacer, deshacer, contrahacer, rehacer, facer, desfacer, jacer match = function(verb) return rmatch(verb, "^(.*[hjf])(acer)$") end, forms = { -- for these verbs, we set cons_alt to false because we don't want the verb categorized as a -- c-zc alternating verb, which would happen by default -- use 'agu' because we're in a front environment; if we use 'ag', we'll get '#hajo' pres1_and_sub = "agu", cons_alt = false, pret = "ic", pret_conj = "irreg", pp = "ech", fut = "ar", imp_2s = "az" } }, { -- imprimir, reimprimir match = "imprimir", forms = {pp = {"imprimid", "impres"}} }, { -- infecir match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "i", pres1 = "infiz", pres_sub_unstressed = "infez", cons_alt = "c-z"}, -- not infizco, as would normally be generated }, { match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "infez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { match = "^ir", forms = { pres_1s = "voy", pres_2s = "vas", pres_2sv = "vas", pres_3s = "va", pres_1p = "vamos", pres_2p = "vais", pres_3p = "van", pres1_and_sub = "vay", -- only for subjunctive as we override pres_1s full_impf = "ib", impf_1p = "íbamos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", imp_2s = "ve", imp_2sv = "andá", imp_1p = {"vamos", "vayamos"}, refl_imp_2p = {"idos", "iros"}, imp_2p_comb_os = {"idos", "iros"}, } }, { -- mecer, remecer -- we don't want to match e.g. adormecer, estremecer match = match_against_verbs("mecer", {"re", ""}), -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "mez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { -- morir, desmorir, premorir match = "morir", forms = {vowel_alt = "ue-u", pp = "muert"}, }, { -- oír, desoír, entreoír, trasoír match = "oír", -- use 'oigu' because we're in a front environment; if we use 'oig', we'll get '#oijo' forms = {pres1_and_sub = "oigu"} }, { match = "olver", -- solver, volver, bolver and derivatives forms = {vowel_alt = "ue", pp = "uelt"} }, { -- placer, desplacer match = "placer", forms = { pret_3s = {"plació", {form = "plugo", footnotes = {"[archaic]"}}}, pret_3p = {"placieron", {form = "pluguieron", footnotes = {"[archaic]"}}}, pres_sub_3s = {"plazca", {form = "plega", footnotes = {"[archaic]"}}, {form = "plegue", footnotes = {"[archaic]"}}}, impf_sub_ra_3s = {"placiera", {form = "pluguiera", footnotes = {"[archaic]"}}}, impf_sub_ra_3p = {"placieran", {form = "pluguieran", footnotes = {"[archaic]"}}}, impf_sub_se_3s = {"placiese", {form = "pluguiese", footnotes = {"[archaic]"}}}, impf_sub_se_3p = {"placiesen", {form = "pluguiesen", footnotes = {"[archaic]"}}}, fut_sub_3s = {"placiere", {form = "pluguiere", footnotes = {"[archaic]"}}}, fut_sub_3p = {"placieren", {form = "pluguieren", footnotes = {"[archaic]"}}}, } }, { match = "poder", forms = {vowel_alt = "ue", pret = "pud", pret_conj = "irreg", fut = "podr", gerund = "pudiendo"} }, { -- poner, componer, deponer, imponer, oponer, suponer, many others match = "poner", forms = { -- use 'pongu' because we're in a front environment; if we use 'pong', we'll get '#ponjo' pres1_and_sub = "pongu", pret = "pus", pret_conj = "irreg", fut = "pondr", pp = "puest", imp_2s = "pón" -- need the accent for the compounds; it will be removed in the simplex } }, { -- proveer, desproveer match = "proveer", forms = {pp = {"provist", "proveíd"}}, }, { match = "pudrir", forms = {pp = "podrid"} }, { -- querer, desquerer, malquerer match = "querer", forms = {vowel_alt = "ie", pret = "quis", pret_conj = "irreg", fut = "querr"} }, { match = "^raer", -- use 'raigu' because we're in a front environment; if we use 'raig', we'll get '#raijo' forms = {pres1_and_sub = {"raigu", "ray"}} }, { -- roer, corroer match = "roer", -- use 'roigu' because we're in a front environment; if we use 'roig', we'll get '#roijo' forms = {pres1_and_sub = {"ro", "roigu", "roy"}} }, { -- romper, entrerromper, arromper, derromper; not corromper; FIXME: not sure about interromper (obsolete) match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(romper)$") -- Don't match corromper if prefix == "cor" then return nil else return prefix, base_verb end end, forms = {pp = "rot"} }, { -- saber, resaber match = "saber", forms = { pres_1s = "sé*", -- * signals that the monosyllabic accent must remain pres1_and_sub = "sep", -- only for subjunctive as we override pres_1s pret = "sup", pret_conj = "irreg", fut = "sabr", } }, { match = "salir", forms = { -- use 'salgu' because we're in a front environment; if we use 'salg', we'll get '#saljo' pres1_and_sub = "salgu", fut = "saldr", imp_2s = "sal", -- These don't exist per the RAE. imp_2s_comb_lo = {}, imp_2s_comb_los = {}, imp_2s_comb_la = {}, imp_2s_comb_las = {}, imp_2s_comb_le = {}, imp_2s_comb_les = {}, }, }, { match = "scribir", -- escribir, describir, proscribir, etc. forms = {pp = {"scrit", {form = "script", footnotes = {"[Argentina and Uruguay]"}}}} }, { match = "^ser", forms = { pres_1s = "soy", pres_2s = "eres", pres_2sv = "sos", pres_3s = "es", pres_1p = "somos", pres_2p = "sois", pres_3p = "son", pres1_and_sub = "se", -- only for subjunctive as we override pres_1s full_impf = "er", impf_1p = "éramos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", fut = "ser", imp_2s = "sé*", -- * signals that the monosyllabic accent must remain imp_2sv = "sé*", } }, { match = "^soler", forms = { vowel_alt = "ue", fut = {{form = "soler", footnotes = {"[rare but acceptable]"}}}, fut_sub = {{form = "sol", footnotes = {"[rare but acceptable]"}}}, pp = {{form = "solid", footnotes = {"[rare but acceptable]"}}}, } }, { -- tener, abstener, contener, detener, obtener, sostener, and many others match = "tener", forms = { -- use 'tengu' because we're in a front environment; if we use 'teng', we'll get '#tenjo' pres1_and_sub = "tengu", vowel_alt = "ie", pret = "tuv", pret_conj = "irreg", fut = "tendr", imp_2s = "tén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- traer, atraer, detraer, distraer, extraer, sustraer, and many others match = "traer", -- use 'traigu' because we're in a front environment; if we use 'traig', we'll get '#traijo' forms = {pres1_and_sub = "traigu", pret = "traj", pret_conj = "irreg"} }, { -- valer, equivaler, prevaler match = "valer", -- use 'valgu' because we're in a front environment; if we use 'valg', we'll get '#valjo' forms = {pres1_and_sub = "valgu", fut = "valdr"} }, { match = "venir", forms = { -- use 'vengu' because we're in a front environment; if we use 'veng', we'll get '#venjo' pres1_and_sub = "vengu", vowel_alt = "ie-i", pret = "vin", pret_conj = "irreg", -- uniquely for this verb, pres sub 2sv/1p/2p do not raise the vowel even though we are an -- e-ie-i verb (contrast sentir -> sintamos/sintáis) pres_sub_2sv = "vengás", pres_sub_1p = "vengamos", pres_sub_2p = "vengáis", fut = "vendr", imp_2s = "vén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- We want to match antever etc. but not atrever etc. No way to avoid listing each verb. match = match_against_verbs("ver", {"ante", "entre", "pre", "re", "tras", ""}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_2s = "vés", pres_2sv = "vés", pres_3s = "vé", pres_2p = "véis", pres_3p = "vén", pres1_and_sub = "ve", impf = "ve", pp = "vist", imp_2s = "vé" -- need the accent for the compounds; it will be removed in the simplex } }, { -- yacer, adyacer, subyacer match = "yacer", -- use 'yazqu/yazgu/yagu' because we're in a front environment; see 'decir' above forms = {pres1_and_sub = {"yazqu", "yazgu", "yagu"}, imp_2s = {"yace", "yaz"}} }, } local reflexive_masc_forms = { ["su"] = {"mi", "tu", "su", "nuestro", "vuestro", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestros", "vuestros", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotros", "vosotros", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotros", "con vosotros", "consigo"}, } local reflexive_fem_forms = { ["su"] = {"mi", "tu", "su", "nuestra", "vuestra", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestras", "vuestras", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotras", "vosotras", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotras", "con vosotras", "consigo"}, } local reflexive_forms = { ["se"] = {"me", "te", "se", "nos", "os", "se"}, ["suyo"] = {"mío", "tuyo", "suyo", "nuestro", "vuestro", "suyo"}, ["suya"] = {"mía", "tuya", "suya", "nuestra", "vuestra", "suya"}, ["suyos"] = {"míos", "tuyos", "suyos", "nuestros", "vuestros", "suyos"}, ["suyas"] = {"mías", "tuyas", "suyas", "nuestras", "vuestras", "suyas"}, } local function skip_slot(base, slot, allow_overrides) if not allow_overrides and (base.basic_overrides[slot] or base.combined_overrides[slot] or base.refl and base.basic_reflexive_only_overrides[slot]) then -- Skip any slots for which there are overrides. return true end if base.only3s and (slot:find("^pp_f") or slot:find("^pp_mp")) then -- diluviar, atardecer, neviscar; impersonal verbs have only masc sing pp return true end if not slot:find("[123]") then -- Don't skip non-personal slots. return false end if base.nofinite then return true end if (base.only3s or base.only3sp or base.only3p) and (slot:find("^imp_") or slot:find("^neg_imp_")) then return true end if base.only3s and not slot:find("3s") then -- diluviar, atardecer, neviscar return true end if base.only3sp and not slot:find("3[sp]") then -- atañer, concernir return true end if base.only3p and not slot:find("3p") then -- [[caer cuatro gotas]], [[caer chuzos de punta]], [[entrarle los siete males]] return true end return false end -- Add the `stem` to the `ending` for the given `slot` and apply any phonetic modifications. -- `is_combining_ending` is true if `ending` is actually the ending (this function is also -- called to combine prefix + stem). WARNING: This function is written very carefully; changes -- to it can easily have unintended consequences. local function combine_stem_ending(base, slot, stem, ending, is_combining_ending) if not is_combining_ending then return stem .. ending end if base.stems.raising_conj and (rfind(ending, "^i" .. V) or slot == "pres_sub_1p" or slot == "pres_sub_2p" or slot == "pres_sub_2sv") then -- need to raise e -> i, o -> u: dormir -> durmió, durmiera, durmiendo, durmamos stem = rsub(stem, "([eo])(" .. C .. "*)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) -- also with stem ending in -gu or -qu (e.g. erguir -> irguió, irguiera, irguiendo, irgamos) stem = rsub(stem, "([eo])(" .. C .. "*[gq]u)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) end -- Lots of sound changes involving endings beginning with i + vowel if rfind(ending, "^i" .. V) then -- (1) final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; note that this rule may be fed -- by the preceding one (stem sonre- raised to sonri-, then final i absorbed) stem = stem:gsub("i$", "") -- (2) In the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. -- imperfect and future subjunctive), initial i absorbed after j (dijeron not #dijieron, likewise for -- condujeron, trajeron) and u (fueron not #fuyeron). Does not apply in regular verb tejer (tejieron not -- #tejeron) and concluir (concluyeron not #conclueron). if base.stems.pret_conj == "irreg" and rfind(stem, "[ju]$") then ending = ending:gsub("^i", "") end -- (3) initial i -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; -- concluir -> concluyó, concluyera, concluyendo; ir -> yendo; but not conseguir/delinquir if stem == "" or (rfind(stem, V .. "$") and not rfind(stem, "[gq]u$")) then ending = ending:gsub("^i", "y") end -- (4) -gü + ie- -> -guye-: argüir -> arguyó, arguyera, arguyendo if stem:find("gü$") then -- transfer the y to the stem to avoid gü -> gu below in front/back conversions stem = stem:gsub("ü$", "uy") ending = ending:gsub("^i", "") end -- (5) initial i absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo if rfind(stem, "[ñy]$") or rfind(stem, "ll$") then ending = ending:gsub("^i", "") end end -- If ending begins with i, it must get an accent after a/e/i/o to prevent the two merging into a diphthong: -- caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. -- concluir -> concluiste, concluimos. if ending:find("^i") and stem:find("[aeio]$") then ending = ending:gsub("^i", "í") end -- If -oír/-uir (i.e. -ir with stem ending in -o/u, e.g. oír, concluir), a y must be added before endings -- beginning with a/e/o. Check for base.stems.pret_conj == "irreg" to exclude stem fu- of [[ir]]. if base.conj == "ir" and rfind(ending, "^[aeoáéó]") and base.stems.pret_conj ~= "irreg" then if rfind(stem, "[aoú]$") then -- oír -> oye, rehuir -> rehúyo/rehúye (with indicator 'ú') stem = stem .. "y" elseif rfind(stem, "[^gq]u$") then -- concluir, but not conseguir or delinquir stem = stem .. "y" elseif stem:find("ü$") then -- argüir -> arguyendo stem = stem:gsub("ü$", "uy") end end -- Spelling changes in the stem; it depends on whether the stem given is the pre-front-vowel or -- pre-back-vowel variant, as indicated by `frontback`. We want these front-back spelling changes to happen -- between stem and ending, not between prefix and stem; the prefix may not have the same "front/backness" -- as the stem. local is_front = rfind(ending, "^[eiéí]") if base.frontback == "front" and not is_front then -- parecer -> parezco, conducir -> conduzco; use zqu to avoid triggering the following gsub(); -- the third line will replace zqu -> zc if slot ~= "pret_3s" then -- exclude hice -> hizo (not #hizco) stem = rsub(stem, "(" .. V .. ")c$", "%1zqu") end stem = stem:gsub("sc$", "squ") -- evanescer -> evanesco, fosforescer -> fosforesco stem = stem:gsub("c$", "z") -- ejercer -> ejerzo, uncir -> unzo stem = stem:gsub("qu$", "c") -- delinquir -> delinco, parecer -> parezqu- -> parezco stem = stem:gsub("g$", "j") -- coger -> cojo, afligir -> aflijo stem = stem:gsub("gu$", "g") -- distinguir -> distingo stem = stem:gsub("gü$", "gu") -- may not occur; argüir -> arguyo handled above elseif base.frontback == "back" and is_front then stem = stem:gsub("gu$", "gü") -- averiguar -> averigüé stem = stem:gsub("g$", "gu") -- cargar -> cargué stem = stem:gsub("c$", "qu") -- marcar -> marqué stem = rsub(stem, "[çz]$", "c") -- aderezar/adereçar -> aderecé end return stem .. ending end local function check_stems_for_suppress_prefix(slot, stems) -- Check whether any or all stems have `suppress_prefix`. local any_suppress_prefix = false local any_not_suppress_prefix = false if type(stems) == "table" then if stems.suppress_prefix then -- A single form object. any_suppress_prefix = true else for _, stem in ipairs(stems) do if type(stem) == "table" and stem.suppress_prefix then any_suppress_prefix = true else any_not_suppress_prefix = true end end end else any_not_suppress_prefix = true end if any_suppress_prefix and any_not_suppress_prefix then -- This should never happen because suppress_prefix is set on user-specified stem and individual form -- overrides, which should completely replace built-in overrides (which don't have suppress_prefix). error("Internal error: For slot '" .. slot .. ", saw a mixture of suppress-prefix and non-suppress-prefix stems, and can't handle") else return any_suppress_prefix end end local function add(base, slot, stems, endings, is_combining_ending, allow_overrides) if skip_slot(base, slot, allow_overrides) then return end local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end iut.add_forms(base.forms, slot, stems, endings, do_combine_stem_ending, nil, nil, base.all_footnotes) end local function add3(base, slot, stems, endings, allow_overrides) local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, stems) if suppress_prefix then return add(base, slot, stems, endings, "is combining ending", allow_overrides) end if skip_slot(base, slot, allow_overrides) then return end local is_combining_ending = false local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end -- Have to reimplement add_multiple_forms() ourselves due to the is_combining_ending -- flag, which needs to be different when adding prefix to stems vs. stems to ending. -- Otherwise we get e.g. #reímpreso instead of reimpreso. local tempdest = {} iut.add_forms(tempdest, slot, base.prefix, stems, do_combine_stem_ending) is_combining_ending = true iut.add_forms(base.forms, slot, tempdest[slot], endings, do_combine_stem_ending) end local function insert_form(base, slot, form) if not skip_slot(base, slot) then iut.insert_form(base.forms, slot, form) end end local function insert_forms(base, slot, forms) if not skip_slot(base, slot) then iut.insert_forms(base.forms, slot, forms) end end local function add_single_stem_tense(base, slot_pref, stems, s1, s2, s3, p1, p2, p3) local function addit(slot, ending) add3(base, slot_pref .. "_" .. slot, stems, ending) end addit("1s", s1) addit("2s", s2) addit("3s", s3) addit("1p", p1) addit("2p", p2) addit("3p", p3) end local function add_present_indic(base) local function addit(slot, stems, ending) add3(base, "pres_" .. slot, stems, ending) end local s2, s2v, s3, p1, p2, p3 if base.conj == "ar" then s2, s2v, s3, p1, p2, p3 = "as", "ás", "a", "amos", "áis", "an" elseif base.conj == "er" then s2, s2v, s3, p1, p2, p3 = "es", "és", "e", "emos", "éis", "en" elseif base.conj == "ir" then s2, s2v, s3, p1, p2, p3 = "es", "ís", "e", "imos", "ís", "en" else error("Internal error: Unrecognized conjugation " .. base.conj) end addit("1s", base.stems.pres1, "o") addit("2s", base.stems.pres_stressed, s2) addit("2sv", base.stems.pres_unstressed, s2v) addit("3s", base.stems.pres_stressed, s3) addit("1p", base.stems.pres_unstressed, p1) addit("2p", base.stems.pres_unstressed, p2) addit("3p", base.stems.pres_stressed, p3) end local function add_present_subj(base) local function addit(slot, stems, ending) add3(base, "pres_sub_" .. slot, stems, ending) end local s1, s2, s2v, s3, p1, p2, p3, voseo_stem if base.conj == "ar" then s1, s2, s2v, s3, p1, p2, p3 = "e", "es", "és", "e", "emos", "éis", "en" else s1, s2, s2v, s3, p1, p2, p3 = "a", "as", "ás", "a", "amos", "áis", "an" end addit("1s", base.stems.pres_sub_stressed, s1) addit("2s", base.stems.pres_sub_stressed, s2) addit("2sv", base.stems.pres_sub_unstressed, s2v) addit("3s", base.stems.pres_sub_stressed, s3) addit("1p", base.stems.pres_sub_unstressed, p1) addit("2p", base.stems.pres_sub_unstressed, p2) addit("3p", base.stems.pres_sub_stressed, p3) end local function add_imper(base) local function addit(slot, stems, ending) add3(base, "imp_" .. slot, stems, ending) end if base.conj == "ar" then addit("2s", base.stems.pres_stressed, "a") addit("2sv", base.stems.pres_unstressed, "á") addit("2p", base.stems.pres_unstressed, "ad") elseif base.conj == "er" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "é") addit("2p", base.stems.pres_unstressed, "ed") elseif base.conj == "ir" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "í") addit("2p", base.stems.pres_unstressed, "id") else error("Internal error: Unrecognized conjugation " .. base.conj) end end local function add_finite_non_present(base) local function add_tense(slot, stem, s1, s2, s3, p1, p2, p3) add_single_stem_tense(base, slot, stem, s1, s2, s3, p1, p2, p3) end local stems = base.stems if stems.full_impf then -- An override needs to be supplied for the impf_1p due to the accent on the stem. add_tense("impf", stems.full_impf, "a", "as", "a", {}, "ais", "an") elseif base.conj == "ar" then add_tense("impf", stems.impf, "aba", "abas", "aba", "ábamos", "abais", "aban") else add_tense("impf", stems.impf, "ía", "ías", "ía", "íamos", "íais", "ían") end if stems.pret_conj == "irreg" then add_tense("pret", stems.pret, "e", "iste", "o", "imos", "isteis", "ieron") elseif stems.pret_conj == "ar" then add_tense("pret", stems.pret, "é", "aste", "ó", "amos", "asteis", "aron") else add_tense("pret", stems.pret, "í", "iste", "ió", "imos", "isteis", "ieron") end if stems.pret_conj == "ar" then add_tense("impf_sub_ra", stems.impf_sub_ra, "ara", "aras", "ara", "áramos", "arais", "aran") add_tense("impf_sub_se", stems.impf_sub_se, "ase", "ases", "ase", "ásemos", "aseis", "asen") add_tense("fut_sub", stems.fut_sub, "are", "ares", "are", "áremos", "areis", "aren") else add_tense("impf_sub_ra", stems.impf_sub_ra, "iera", "ieras", "iera", "iéramos", "ierais", "ieran") add_tense("impf_sub_se", stems.impf_sub_se, "iese", "ieses", "iese", "iésemos", "ieseis", "iesen") add_tense("fut_sub", stems.fut_sub, "iere", "ieres", "iere", "iéremos", "iereis", "ieren") end add_tense("fut", stems.fut, "é", "ás", "á", "emos", "éis", "án") add_tense("cond", stems.cond, "ía", "ías", "ía", "íamos", "íais", "ían") end local function add_non_finite_forms(base) local stems = base.stems local function addit(slot, stems, ending) add3(base, slot, stems, ending) end insert_form(base, "infinitive", {form = base.verb}) -- Also insert "infinitive + reflexive pronoun" combinations if we're handling a reflexive verb. See comment below for -- "gerund + reflexive pronoun" combinations. if base.refl then for _, persnum in ipairs(person_number_list_basic) do insert_form(base, "infinitive_" .. persnum, {form = base.verb}) end end local ger_ending = base.conj == "ar" and "ando" or "iendo" addit("gerund", stems.pres_unstressed, ger_ending) -- Also insert "gerund + reflexive pronoun" combinations if we're handling a reflexive verb. We insert exactly the same -- form as for the bare gerund; later on in add_reflexive_or_fixed_clitic_to_forms(), we add the appropriate clitic -- pronouns. It's important not to do this for non-reflexive verbs, because in that case, the clitic pronouns won't be -- added, and {{es-verb form of}} will wrongly consider all these combinations as possible inflections of the bare -- gerund. Thanks to [[User:JeffDoozan]] for this bug fix. if base.refl then for _, persnum in ipairs(person_number_list_basic) do addit("gerund_" .. persnum, stems.pres_unstressed, ger_ending) end end addit("pp_ms", stems.pp, "o") addit("pp_fs", stems.pp, "a") addit("pp_mp", stems.pp, "os") addit("pp_fp", stems.pp, "as") end local function copy_subjunctives_to_imperatives(base) -- Copy subjunctives to imperatives, unless there's an override for the given slot (as with the imp_1p of [[ir]]). for _, persnum in ipairs({"3s", "1p", "3p"}) do local from = "pres_sub_" .. persnum local to = "imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) return form end)) end end -- Remove monosyllabic accents (e.g. the 3sg preterite of fiar is fio not #fió). Note that there are a -- few monosyllabic verb forms that intentionally have an accent, to distinguish them from other words -- with the same pronunciation. These are as follows: -- (1) [[sé]] 1sg present indicative of [[saber]]; -- (2) [[sé]] 2sg imperative of [[ser]]; -- (3) [[dé]] 1sg and 3sg present subjunctive of [[dar]]. -- For these, a * is added, which indicates that the accent needs to remain. If we see such a *, we remove -- it but otherwise leave the form alone. local function remove_monosyllabic_accents(base) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) if base.forms[slot] then for _, form in ipairs(base.forms[slot]) do if form.form:find("%*") then -- * means leave alone any accented vowel form.form = form.form:gsub("%*", "") elseif may_need_monosyllabic_accent_removed(form.form) then -- Has an accented vowel and no VCV sequence and not a suffix; may be monosyllabic, in which -- case we need to remove the accent. Check # of syllables and remove accent if only 1. Note -- that the checks for accented vowel and VCV sequence are not strictly needed, but are -- optimizations to avoid running the whole syllabification algorithm on every verb form. local syllables = com.syllabify(form.form) if #syllables == 1 then form.form = com.remove_accent_from_syllable(syllables[1]) end end end end end end -- Add the appropriate clitic pronouns in `clitics` to the forms in `base_slot`. `store_cliticized_form` is a function -- of three arguments (clitic, formobj, cliticized_form) and should store the cliticized form for the specified clitic -- and form object. local function add_forms_with_clitic(base, base_slot, clitics, store_cliticized_form) -- the special slot lxx is for le/les clitics that become "se" in double clitics if base_slot:match("_comb_lxx$") then base_slot = base_slot:gsub("_comb_lxx$", "_comb_le") end if not base.forms[base_slot] then mw.log("unhandled base_slot " .. base_slot) -- This can happen, e.g. in only3s/only3sp/only3p verbs. return end for _, formobj in ipairs(base.forms[base_slot]) do -- Figure out the correct accenting of the verb when a clitic pronoun is attached to it. We may need to -- add or remove an accent mark: -- (1) No accent mark currently, none needed: infinitive sentar -> sentarlo; imperative singular ten -> tenlo; -- (2) Accent mark currently, still needed: infinitive oír -> oírlo; -- (3) No accent mark currently, accent needed: imperative singular siente -> siéntelo; -- (4) Accent mark currently, not needed: imperative singular está -> estalo, sé -> selo. local syllables = com.syllabify(formobj.form) local sylno = com.stressed_syllable(syllables) table.insert(syllables, "lo") local needs_accent = com.accent_needed(syllables, sylno) if needs_accent then syllables[sylno] = com.add_accent_to_syllable(syllables[sylno]) else syllables[sylno] = com.remove_accent_from_syllable(syllables[sylno]) end table.remove(syllables) -- remove added clitic pronoun local reaccented_form = table.concat(syllables) for _, clitic in ipairs(clitics) do local cliticized_form -- Some further special cases. if base_slot == "imp_1p" and (clitic == "nos" or clitic == "os") then -- Final -s disappears: sintamos + nos -> sintámonos, sintamos + os -> sintámoos cliticized_form = reaccented_form:gsub("s$", "") .. clitic elseif base_slot == "imp_2p" and clitic == "os" then -- Final -d disappears, which may cause an accent to be required: -- haced + os -> haceos, sentid + os -> sentíos if reaccented_form:find("id$") then cliticized_form = reaccented_form:gsub("id$", "íos") else cliticized_form = reaccented_form:gsub("d$", "os") end else cliticized_form = reaccented_form .. clitic end store_cliticized_form(clitic, formobj, cliticized_form) end end end -- Generate the combinations of verb form (infinitive, gerund or various imperatives) + clitic pronoun. local function add_combined_forms(base) for _, base_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_combined_rows) do local base_slot, clitics = unpack(base_slot_and_clitics) add_forms_with_clitic(base, base_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, base_slot .. "_comb_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end for _, single_comb_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_double_combined_rows) do local single_comb_slot, clitics = unpack(single_comb_slot_and_clitics) -- Handle le -> se transformation for double clitics if single_comb_slot:match("_comb_lxx$") then add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) -- Only add se version for accusative clitics (lo/la/los/las) if clitic:match("^l[aeo]") then cliticized_form = cliticized_form:gsub("le" .. clitic .. "$", "se" .. clitic) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end end ) end add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end end local function process_slot_overrides(base, do_basic, reflexive_only) local overrides = reflexive_only and base.basic_reflexive_only_overrides or do_basic and base.basic_overrides or base.combined_overrides for slot, forms in pairs(overrides) do local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, forms) add(base, slot, suppress_prefix and "" or base.prefix, forms, false, "allow overrides") end end -- Prefix `form` with `clitic`, adding fixed text `between` between them. Add links as appropriate unless the user -- requested no links. Check whether form already has brackets (as will be the case if the form has a fixed clitic). local function add_clitic_to_form(base, clitic, between, form) if base.alternant_multiword_spec.args.noautolinkverb then return clitic .. between .. form else local clitic_pref = "[[" .. clitic .. "]]" .. between if form:find("%[%[") then return clitic_pref .. form else return clitic_pref .. "[[" .. form .. "]]" end end end -- Add a reflexive pronoun or fixed clitic, e.g. [[lo]], as appropriate to the base form that were generated. -- `do_joined` means to do only the forms where the pronoun is joined to the end of the form; otherwise, do only the -- forms where it is not joined and precedes the form. local function add_reflexive_or_fixed_clitic_to_forms(base, do_reflexive, do_joined) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) local clitic if not do_reflexive then clitic = base.clitic elseif slot:find("[123]") then local persnum = slot:match("^.*_(.-)$") clitic = person_number_to_reflexive_pronoun[persnum] else clitic = "se" end if base.forms[slot] then if do_reflexive and slot:find("^pp_") or slot == "infinitive_linked" then -- do nothing with reflexive past participles or with infinitive linked (handled at the end) elseif slot:find("^neg_imp_") then error("Internal error: Should not have forms set for negative imperative at this stage") else local slot_has_suffixed_clitic = slot:find("infinitive") or slot:find("gerund") or slot:find("^imp_") -- Maybe generate non-reflexive parts and separated syntactic variants for use in {{es-verb form of}}. -- See comment in add_slots() above `need_special_verb_form_of_slots`. Check for do_joined so we only -- run this code once. if do_reflexive and do_joined and base.alternant_multiword_spec.source_template == "es-verb form of" and -- Skip personal variants of infinitives and gerunds so we don't think [[jambando]] is a -- non-reflexive equivalent of [[jambándome]]. not slot:find("infinitive_") and not slot:find("gerund_") then -- Clone the forms because we will be destructively modifying them just below, adding the reflexive -- pronoun. insert_forms(base, slot .. "_non_reflexive", mw.clone(base.forms[slot])) if slot_has_suffixed_clitic then insert_forms(base, slot .. "_variant", iut.map_forms(base.forms[slot], function(form) return add_clitic_to_form(base, clitic, " ... ", form) end)) end end if slot_has_suffixed_clitic then if do_joined then add_forms_with_clitic(base, slot, {clitic}, function(clitic, formobj, cliticized_form) formobj.form = cliticized_form end ) end elseif not do_joined then -- Add clitic as separate word before all other forms. for _, form in ipairs(base.forms[slot]) do form.form = add_clitic_to_form(base, clitic, " ", form.form) end end end end end end local function handle_infinitive_linked(base) -- Compute linked versions of potential lemma slots, for use in {{es-verb}}. -- We substitute the original lemma (before removing links) for forms that -- are the same as the lemma, if the original lemma has links. for _, slot in ipairs({"infinitive"}) do insert_forms(base, slot .. "_linked", iut.map_forms(base.forms[slot], function(form) if form == base.lemma and rfind(base.linked_lemma, "%[%[") then return base.linked_lemma else return form end end)) end end local function generate_negative_imperatives(base) -- Copy subjunctives to negative imperatives, preceded by "no". for _, persnum in ipairs(neg_imp_person_number_list) do local from = "pres_sub_" .. persnum local to = "neg_imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) if base.alternant_multiword_spec.args.noautolinkverb then return "no " .. form elseif form:find("%[%[") then -- already linked, e.g. when reflexive return "[[no]] " .. form else return "[[no]] [[" .. form .. "]]" end end)) end end -- Process specs given by the user using 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'. local function process_addnote_specs(base) for _, spec in ipairs(base.addnote_specs) do for _, slot_spec in ipairs(spec.slot_specs) do slot_spec = "^" .. slot_spec .. "$" for slot, forms in pairs(base.forms) do if rfind(slot, slot_spec) then -- To save on memory, side-effect the existing forms. for _, form in ipairs(forms) do form.footnotes = iut.combine_footnotes(form.footnotes, spec.footnotes) end end end end end end local function add_missing_links_to_forms(base) -- Any forms without links should get them now. Redundant ones will be stripped later. for slot, forms in pairs(base.forms) do for _, form in ipairs(forms) do if not form.form:find("%[%[") then form.form = "[[" .. form.form .. "]]" end end end end local function conjugate_verb(base) add_present_indic(base) add_present_subj(base) add_imper(base) add_finite_non_present(base) add_non_finite_forms(base) -- This should happen before add_combined_forms() so overrides of basic forms end up part of the combined forms. process_slot_overrides(base, "do basic") -- do basic slot overrides -- This should happen after process_slot_overrides() in case a derived slot is based on an override (as with the -- imp_3s of [[dar]], [[estar]]). copy_subjunctives_to_imperatives(base) -- This should happen after process_slot_overrides() because overrides may have accents in them that need to be -- removed. (This happens e.g. for most present indicative forms of [[ver]], which have accents in them for the -- prefixed derived verbs, but the accents shouldn't be present in the base verb.) remove_monosyllabic_accents(base) if not base.nocomb then add_combined_forms(base) end -- We need to add joined reflexives, then joined and non-joined clitics, then non-joined reflexives, so we get -- [[házmelo]] but [[no]] [[me]] [[lo]] [[haga]]. if base.refl then -- This should happen after remove_monosyllabic_accents() so the * marking the preservation of monosyllabic -- accents doesn't end up in the middle of a word. add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", "do joined") process_slot_overrides(base, "do basic", "do reflexive") -- do reflexive-only basic slot overrides end if base.clitic then -- This should happen after reflexives are added. add_reflexive_or_fixed_clitic_to_forms(base, false, "do joined") add_reflexive_or_fixed_clitic_to_forms(base, false, false) end if base.refl then add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", false) end -- This should happen after add_reflexive_or_fixed_clitic_to_forms() so negative imperatives get the reflexive pronoun -- and clitic in them. generate_negative_imperatives(base) if not base.nocomb then process_slot_overrides(base, false) -- do combined slot overrides end -- This should happen before add_missing_links_to_forms() so that the comparison `form == base.lemma` -- in handle_infinitive_linked() works correctly and compares unlinked forms to unlinked forms. handle_infinitive_linked(base) process_addnote_specs(base) if not base.alternant_multiword_spec.args.noautolinkverb then add_missing_links_to_forms(base) end end local function parse_indicator_spec(angle_bracket_spec) -- Store the original angle bracket spec so we can reconstruct the overall conj spec with the lemma(s) in them. local base = { angle_bracket_spec = angle_bracket_spec, user_basic_overrides = {}, user_stems = {}, addnote_specs = {}, } local function parse_err(msg) error(msg .. ": " .. angle_bracket_spec) end local function fetch_footnotes(separated_group) local footnotes for j = 2, #separated_group - 1, 2 do if separated_group[j + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(separated_group) .. "'") end if not footnotes then footnotes = {} end table.insert(footnotes, separated_group[j]) end return footnotes end local inside = angle_bracket_spec:match("^<(.*)>$") assert(inside) if inside == "" then return base end local segments = put.parse_balanced_segment_run(inside, "[", "]") local dot_separated_groups = put.split_alternating_runs(segments, "%.") for i, dot_separated_group in ipairs(dot_separated_groups) do local first_element = dot_separated_group[1] if first_element == "addnote" then local spec_and_footnotes = fetch_footnotes(dot_separated_group) if #spec_and_footnotes < 2 then parse_err("Spec with 'addnote' should be of the form 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'") end local slot_spec = table.remove(spec_and_footnotes, 1) local slot_spec_inside = rmatch(slot_spec, "^%[(.*)%]$") if not slot_spec_inside then parse_err("Internal error: slot_spec " .. slot_spec .. " should be surrounded with brackets") end local slot_specs = rsplit(slot_spec_inside, ",") -- FIXME: Here, [[Module:it-verb]] called strip_spaces(). Generally we don't do this. Should we? table.insert(base.addnote_specs, {slot_specs = slot_specs, footnotes = spec_and_footnotes}) elseif indicator_flags[first_element] then if #dot_separated_group > 1 then parse_err("No footnotes allowed with '" .. first_element .. "' spec") end if base[first_element] then parse_err("Spec '" .. first_element .. "' specified twice") end base[first_element] = true elseif rfind(first_element, ":") then local colon_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*:%s*") local first_element = colon_separated_groups[1][1] if #colon_separated_groups[1] > 1 then parse_err("Can't attach footnotes directly to '" .. first_element .. "' spec; attach them to the " .. "colon-separated values following the initial colon") end if overridable_stems[first_element] then if base.user_stems[first_element] then parse_err("Overridable stem '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_stems[first_element] = overridable_stems[first_element](colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}) else -- assume a basic override; we validate further later when the possible slots are available if base.user_basic_overrides[first_element] then parse_err("Basic override '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_basic_overrides[first_element] = allow_multiple_values_for_override( colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}, "add monosyllabic asterisk" ) end else local comma_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*,%s*") for j = 1, #comma_separated_groups do local alt = comma_separated_groups[j][1] if not vowel_alternants[alt] then if #comma_separated_groups == 1 then parse_err("Unrecognized spec or vowel alternant '" .. alt .. "'") else parse_err("Unrecognized vowel alternant '" .. alt .. "'") end end if base.vowel_alt then for _, existing_alt in ipairs(base.vowel_alt) do if existing_alt.form == alt then parse_err("Vowel alternant '" .. alt .. "' specified twice") end end else base.vowel_alt = {} end table.insert(base.vowel_alt, {form = alt, footnotes = fetch_footnotes(comma_separated_groups[j])}) end end end return base end -- Normalize all lemmas, substituting the pagename for blank lemmas and adding links to multiword lemmas. local function normalize_all_lemmas(alternant_multiword_spec, pagename) -- (1) Add links to all before and after text. Remember the original text so we can reconstruct the verb spec later. if not alternant_multiword_spec.args.noautolinktext then iut.add_links_to_before_and_after_text(alternant_multiword_spec, "remember original") end -- (2) Remove any links from the lemma, but remember the original form -- so we can use it below in the 'lemma_linked' form. iut.map_word_specs(alternant_multiword_spec, function(base) if base.lemma == "" then base.lemma = pagename end base.user_specified_lemma = base.lemma base.lemma = m_links.remove_links(base.lemma) local refl_verb, clitic = rmatch(base.lemma, "^(.-)(l[aeo]s?)$") if not refl_verb then refl_verb, clitic = base.lemma, nil end local verb, refl = rmatch(refl_verb, "^(.-)(se)$") if not verb then verb, refl = refl_verb, nil end base.user_specified_verb = verb base.refl = refl base.clitic = clitic if base.refl and base.clitic then -- We have to parse the verb suffix to see how to construct the base verb; e.g. -- abrírsela -> abrir but oírsela -> oír. We parse the verb suffix again in all cases -- in detect_indicator_spec(), after splitting off the prefix of irrregular verbs. local actual_verb local inf_stem, suffix = rmatch(base.user_specified_verb, "^(.*)([aáeéií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.user_specified_verb) end if suffix == "ír" and inf_stem:find("[aeo]$") then -- accent on suffix should remain base.verb = base.user_specified_verb else base.verb = inf_stem .. com.remove_accent_from_syllable(suffix) end else base.verb = base.user_specified_verb end local linked_lemma if alternant_multiword_spec.args.noautolinkverb or base.user_specified_lemma:find("%[%[") then linked_lemma = base.user_specified_lemma elseif base.refl or base.clitic then -- Reconstruct the linked lemma with separate links around base verb, reflexive pronoun and clitic. linked_lemma = base.user_specified_verb == base.verb and "[[" .. base.user_specified_verb .. "]]" or "[[" .. base.verb .. "|" .. base.user_specified_verb .. "]]" linked_lemma = linked_lemma .. (refl and "[[" .. refl .. "]]" or "") .. (clitic and "[[" .. clitic .. "]]" or "") else -- Add links to the lemma so the user doesn't specifically need to, since we preserve -- links in multiword lemmas and include links in non-lemma forms rather than allowing -- the entire form to be a link. linked_lemma = iut.add_links(base.user_specified_lemma) end base.linked_lemma = linked_lemma end) end local function construct_stems(base) local stems = base.stems stems.pres_unstressed = stems.pres_unstressed or base.inf_stem stems.pres_stressed = stems.pres_stressed or -- If no_pres_stressed given, pres_stressed stem should be empty so no forms are generated. base.no_pres_stressed and {} or base.vowel_alt or base.inf_stem stems.pres1_and_sub = stems.pres1_and_sub or -- If no_pres_stressed given, the entire subjunctive is missing. base.no_pres_stressed and {} or -- If no_pres1_and_sub given, pres1 and entire subjunctive are missing. base.no_pres1_and_sub and {} or nil stems.pres1 = stems.pres1 or stems.pres1_and_sub or stems.pres_stressed stems.impf = stems.impf or base.inf_stem stems.pret = stems.pret or base.inf_stem stems.pret_conj = stems.pret_conj or base.conj stems.fut = stems.fut or base.inf_stem .. base.conj stems.cond = stems.cond or stems.fut stems.pres_sub_stressed = stems.pres_sub_stressed or stems.pres1 stems.pres_sub_unstressed = stems.pres_sub_unstressed or stems.pres1_and_sub or stems.pres_unstressed stems.impf_sub_ra = stems.impf_sub_ra or stems.pret stems.impf_sub_se = stems.impf_sub_se or stems.pret stems.fut_sub = stems.fut_sub or stems.pret stems.pp = stems.pp or base.conj == "ar" and combine_stem_ending(base, "pp_ms", base.inf_stem, "ad", "is combining ending") or -- use combine_stem_ending esp. so we get reído, caído, etc. combine_stem_ending(base, "pp_ms", base.inf_stem, "id", "is combining ending") end -- Make a list of the slots given in `list1` and optionally `list2`, with `prefix` added to the beginning of each slot -- name. The elements of each list are of the form {SLOT, ACCEL}. Used for error messages. local function construct_possible_slots(list1, list2, prefix) list2 = list2 or {} prefix = prefix or "" local slots = {} local function insert_list_slots(list) for _, slotaccel in ipairs(list) do local slot, accel = unpack(slotaccel) table.insert(slots, prefix .. slot) end end insert_list_slots(list1) insert_list_slots(list2) return m_table.serialCommaJoin(slots) end local function detect_indicator_spec(base) base.forms = {} base.non_reflexive_forms = {} base.stems = {} if (base.only3s and 1 or 0) + (base.only3sp and 1 or 0) + (base.only3p and 1 or 0) > 1 then error("Only one of 'only3s', 'only3sp' and 'only3p' can be specified") end base.basic_overrides = {} base.basic_reflexive_only_overrides = {} base.combined_overrides = {} if not base.no_built_in then for _, built_in_conj in ipairs(built_in_conjugations) do if type(built_in_conj.match) == "function" then base.prefix, base.non_prefixed_verb = built_in_conj.match(base.verb) elseif built_in_conj.match:find("^%^") and rsub(built_in_conj.match, "^%^", "") == base.verb then -- begins with ^, for exact match, and matches base.prefix, base.non_prefixed_verb = "", base.verb else base.prefix, base.non_prefixed_verb = rmatch(base.verb, "^(.*)(" .. built_in_conj.match .. ")$") end if base.prefix then -- we found a built-in verb base.irreg_verb = true for stem, forms in pairs(built_in_conj.forms) do if stem:find("^refl_") then stem = stem:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[stem] then error("Internal error: setting for 'refl_" .. stem .. "' does not refer to a basic verb slot") end base.basic_reflexive_only_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_basic_map[stem] then -- an individual form override of a basic form base.basic_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_combined_map[stem] then -- an individual form override of a combined form base.combined_overrides[stem] = forms else base.stems[stem] = forms end end break end end end -- Override built-in-verb stems and overrides with user-specified ones. for stem, values in pairs(base.user_stems) do base.stems[stem] = values end for override, values in pairs(base.user_basic_overrides) do if override:find("^refl_") then if not base.refl then error("Can't set reflexive-only override '" .. override .. "' on a non-reflexive verb") end override = override:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[override] then error("Unrecognized reflexive-only override 'refl_" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, nil, "refl_")) end base.basic_reflexive_only_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_basic_map[override] then base.basic_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_combined_map[override] then base.combined_overrides[override] = values else error("Unrecognized override '" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, base.alternant_multiword_spec.verb_slots_combined)) end end base.prefix = base.prefix or "" base.non_prefixed_verb = base.non_prefixed_verb or base.verb local inf_stem, suffix = rmatch(base.non_prefixed_verb, "^(.*)([aeií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.verb) end base.inf_stem = inf_stem suffix = suffix == "ír" and "ir" or suffix base.conj = suffix base.frontback = suffix == "ar" and "back" or "front" if base.stems.vowel_alt then -- built-in verb with specified vowel alternation if base.vowel_alt then error(base.verb .. " is a recognized built-in verb, and should not have vowel alternations specified with it") end base.vowel_alt = iut.convert_to_general_list_form(base.stems.vowel_alt) end -- Propagate built-in-verb indicator flags to `base` and combine with user-specified flags. for indicator_flag, _ in pairs(indicator_flags) do base[indicator_flag] = base[indicator_flag] or base.stems[indicator_flag] end -- Convert vowel alternation indicators into stems. if base.vowel_alt then for _, altform in ipairs(base.vowel_alt) do altform.alt = altform.form -- save original indicator local alt = altform.alt if base.conj == "ir" then local raising = ( alt == "ie-i" or alt == "ye-i" or alt == "ue-u" or alt == "i" or alt == "í" or alt == "ú" ) if base.stems.raising_conj == nil then base.stems.raising_conj = raising elseif base.stems.raising_conj ~= raising then error("Can't currently support a mixture of raising (e.g. 'ie-i') and non-raising (e.g. 'ie') vowel alternations in -ir verbs") end end if alt == "+" then altform.form = base.inf_stem else local normalized_alt = alt if alt == "ie-i" or alt == "ye-i" or alt == "ue-u" then if base.conj ~= "ir" then error("母音交替 '" .. alt .. "' は -ir動詞のみです") end -- ie-i is like i except for the vowel raising before i+V, similarly for ye-i, ue-u, -- so convert appropriately. normalized_alt = alt == "ie-i" and "ie" or alt == "ye-i" and "ye" or "ue" end local ret = com.apply_vowel_alternation(base.inf_stem, normalized_alt) if ret.err then error("To use '" .. alt .. "', present stem '" .. base.inf_stem .. "' " .. ret.err) end altform.form = ret.ret end end end end local function detect_all_indicator_specs(alternant_multiword_spec) -- Propagate some settings up; some are used internally, others by [[Module:es-headword]]. iut.map_word_specs(alternant_multiword_spec, function(base) -- Internal indicator flags. Do these before calling detect_indicator_spec() because add_slots() uses them. for _, prop in ipairs { "refl", "clitic" } do if base[prop] then alternant_multiword_spec[prop] = true end end base.alternant_multiword_spec = alternant_multiword_spec -- If reflexive or fixed clitic, don't include combined forms. alternant_multiword_spec.nocomb = alternant_multiword_spec.nocomb or base.clitic or base.refl end) add_slots(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base) base.nocomb = alternant_multiword_spec.args.nocomb detect_indicator_spec(base) -- User-specified indicator flags. Do these after calling detect_indicator_spec() because the latter may set these -- indicators for built-in verbs. for prop, _ in pairs(indicator_flags) do if base[prop] then alternant_multiword_spec[prop] = true end end construct_stems(base) end) end local function add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) local function insert_ann(anntype, value) m_table.insertIfNot(alternant_multiword_spec.annotation[anntype], value) end local function insert_cat(cat, also_when_multiword) -- Don't place multiword terms in categories like 'Spanish verbs ending in -ar' to avoid spamming the -- categories with such terms. if also_when_multiword or not multiword_lemma then m_table.insertIfNot(alternant_multiword_spec.categories, "Spanish " .. cat) end end if check_for_red_links and alternant_multiword_spec.source_template == "es-conj" and multiword_lemma then for _, slot_and_accel in ipairs(alternant_multiword_spec.all_verb_slots) do local slot = slot_and_accel[1] local forms = base.forms[slot] local must_break = false if forms then for _, form in ipairs(forms) do if not form.form:find("%[%[") then local title = mw.title.new(form.form) if title and not title.exists then insert_cat("verbs with red links in their inflection tables") must_break = true break end end end end if must_break then break end end end insert_cat("verbs ending in -" .. base.conj) if base.irreg_verb then insert_ann("irreg", "irregular") insert_cat("irregular verbs") else insert_ann("irreg", "regular") end if base.only3s then insert_ann("defective", "impersonal") insert_cat("impersonal verbs") elseif base.only3sp then insert_ann("defective", "third-person only") insert_cat("third-person-only verbs") elseif base.only3p then insert_ann("defective", "third-person plural only") insert_cat("third-person-plural-only verbs") elseif base.no_pres_stressed or base.no_pres1_and_sub then insert_ann("defective", "defective") insert_cat("defective verbs") else insert_ann("defective", "regular") end if base.clitic then insert_cat("verbs with lexical clitics") end if base.refl then insert_cat("reflexive verbs") end if not base.vowel_alt then insert_ann("vowel_alt", "non-alternating") else local inf_stem = base.inf_stem:gsub("[gq]u$", "x") for _, alt in ipairs(base.vowel_alt) do if alt.alt == "+" then insert_ann("vowel_alt", "non-alternating") else local desc if alt.alt == "ue" and rfind(inf_stem, "u" .. C .. "*$") then desc = "u-ue 交替" -- jugar elseif alt.alt == "ie" and rfind(inf_stem, "i" .. C .. "*$") then desc = "i-ie 交替" -- adquirir elseif alt.alt == "í" and rfind(inf_stem, "e" .. C .. "*$") then desc = "e-í 交替" -- reír, freír, etc. else desc = vowel_alternant_to_desc[alt.alt] .. " 交替" end insert_ann("vowel_alt", desc) insert_cat("verbs with " .. desc) end end end local cons_alt = base.stems.cons_alt if cons_alt == nil then if base.conj == "ar" then if base.inf_stem:find("z$") then cons_alt = "c-z" elseif base.inf_stem:find("ç$") then cons_alt = "c-ç" elseif base.inf_stem:find("c$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-gu" elseif base.inf_stem:find("gu$") then cons_alt = "gu-gü" end else if base.no_pres_stressed or base.no_pres1_and_sub then cons_alt = nil -- no c-zc alternation in balbucir or arrecir elseif rfind(base.inf_stem, V .. "c$") then cons_alt = "c-zc" elseif base.inf_stem:find("sc$") then cons_alt = "hard-soft" elseif base.inf_stem:find("c$") then cons_alt = "c-z" elseif base.inf_stem:find("qu$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-j" elseif base.inf_stem:find("gu$") then cons_alt = "g-gu" elseif base.inf_stem:find("gü$") then cons_alt = "gu-gü" end end end if cons_alt then local desc = cons_alt .. "交替" insert_ann("cons_alt", desc) insert_cat("verbs with " .. desc) else insert_ann("cons_alt", "non-alternating") end end -- Compute the categories to add the verb to, as well as the annotation to display in the -- conjugation title bar. We combine the code to do these functions as both categories and -- title bar contain similar information. local function compute_categories_and_annotation(alternant_multiword_spec) alternant_multiword_spec.categories = {} local ann = {} alternant_multiword_spec.annotation = ann ann.irreg = {} ann.defective = {} ann.vowel_alt = {} ann.cons_alt = {} local multiword_lemma = false for _, form in ipairs(alternant_multiword_spec.forms.infinitive) do if form.form:find(" ") then multiword_lemma = true break end end iut.map_word_specs(alternant_multiword_spec, function(base) add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) end) local ann_parts = {} local irreg = table.concat(ann.irreg, " or ") if irreg ~= "" and irreg ~= "regular" then table.insert(ann_parts, irreg) end local defective = table.concat(ann.defective, " or ") if defective ~= "" and defective ~= "regular" then table.insert(ann_parts, defective) end local vowel_alt = table.concat(ann.vowel_alt, " or ") if vowel_alt ~= "" and vowel_alt ~= "non-alternating" then table.insert(ann_parts, vowel_alt) end local cons_alt = table.concat(ann.cons_alt, " or ") if cons_alt ~= "" and cons_alt ~= "non-alternating" then table.insert(ann_parts, cons_alt) end alternant_multiword_spec.annotation = table.concat(ann_parts, "; ") end local function show_forms(alternant_multiword_spec) local lemmas = alternant_multiword_spec.forms.infinitive alternant_multiword_spec.lemmas = lemmas -- save for later use in make_table() local reconstructed_verb_spec = iut.reconstruct_original_spec(alternant_multiword_spec) -- Initialize the footnotes with those for the future subjunctive and maybe the pres subjunctive -- voseo usage. In the latter case, we only do it if there is a distinct pres subjunctive voseo form. local function create_footnote_obj() local obj = iut.create_footnote_obj() iut.get_footnote_text({fut_sub_note}, obj) -- Compute whether the tuteo and voseo variants are different, for each voseo variant. -- We use this later in make_table(). for _, slot in ipairs({"pres_2s", "pres_sub_2s", "imp_2s"}) do alternant_multiword_spec["separate_" .. slot .. "v"] = false iut.map_word_specs(alternant_multiword_spec, function(base) if not m_table.deepEquals(base.forms[slot], base.forms[slot .. "v"]) then alternant_multiword_spec["separate_" .. slot .. "v"] = true end end) end if alternant_multiword_spec.separate_pres_sub_2sv then iut.get_footnote_text({pres_sub_voseo_note}, obj) end return obj end local function transform_accel_obj(slot, formobj, accel_obj) -- No accelerators for negative imperatives, which are always multiword and derived directly from the -- present subjunctive. if slot:find("^neg_imp") then return nil end if accel_obj then if slot:find("^pp_") then accel_obj.form = slot elseif slot == "gerund" then accel_obj.form = "gerund-" .. reconstructed_verb_spec else accel_obj.form = "verb-form-" .. reconstructed_verb_spec end end return accel_obj end local props = { lang = lang, lemmas = lemmas, create_footnote_obj = create_footnote_obj, transform_accel_obj = transform_accel_obj, } props.slot_list = alternant_multiword_spec.verb_slots_basic iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_basic = alternant_multiword_spec.forms.footnote props.create_footnote_obj = nil props.slot_list = alternant_multiword_spec.verb_slots_combined iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_combined = alternant_multiword_spec.forms.footnote end local notes_template = [=[ <div class="roa-footnote-outer-div" style="width:100%;"> <div class="roa-footnote-inner-div"> {footnote} </div></div> ]=] local pres_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_2sv}<sup><sup>vos</sup></sup>' local pres_sub_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_sub_2sv}<sup><sup>vos<sup class="roa-red-superscript">2</sup></sup></sup>' local imp_2sv_template = '<sup><sup>tú</sup></sup><br />{imp_2sv}<sup><sup>vos</sup></sup>' local basic_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; {title}の活用 ([[付録:スペイン語の動詞]]も参照)</div> <div class="NavContent"> {\op}| class="roa-inflection-table" |- ! colspan="3" class="roa-nonfinite-header" | <span title="infinitivo">不定詞</span> | colspan="5" | {infinitive} |- ! colspan="3" class="roa-nonfinite-header" | <span title="gerundio">現在分詞</span> | colspan="5" | {gerund} |- ! rowspan="3" colspan="2" class="roa-nonfinite-header" | <span title="participio (pasado)">過去分詞</span> | colspan="2" class="roa-nonfinite-header" | ! colspan="2" class="roa-nonfinite-header" | <span title="masculino">男性</span> ! colspan="2" class="roa-nonfinite-header" | <span title="femenino">女性</span> |- ! colspan="2" class="roa-nonfinite-header" | 単数 | colspan="2" | {pp_ms} | colspan="2" | {pp_fs} |- ! colspan="2" class="roa-nonfinite-header" | 複数 | colspan="2" | {pp_mp} | colspan="2" | {pp_fp} |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | 単数 ! colspan="3" class="roa-person-number-header" | 複数 |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |-{reflexive_non_finite_clause} ! rowspan="6" class="roa-indicative-left-rail" | <span title="indicativo">直説法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de indicativo">現在</span> | {pres_1s} | {pres_2s}{pres_2sv_text} | {pres_3s} | {pres_1p} | {pres_2p} | {pres_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto (copréterito)">不完了過去</span> | {impf_1s} | {impf_2s} | {impf_3s} | {impf_1p} | {impf_2p} | {impf_3p} |- ! class="roa-finite-header" | <span title="pretérito perfecto simple (pretérito indefinido)">完了過去</span> | {pret_1s} | {pret_2s} | {pret_3s} | {pret_1p} | {pret_2p} | {pret_3p} |- ! class="roa-finite-header" | <span title="futuro simple (futuro imperfecto)">未来</span> | {fut_1s} | {fut_2s} | {fut_3s} | {fut_1p} | {fut_2p} | {fut_3p} |- ! class="roa-finite-header" | <span title="condicional simple (pospretérito de modo indicativo)">過去未来・可能法</span> | {cond_1s} | {cond_2s} | {cond_3s} | {cond_1p} | {cond_2p} | {cond_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="5" class="roa-subjunctive-left-rail" | <span title="subjuntivo">接続法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de subjuntivo">現在</span> | {pres_sub_1s} | {pres_sub_2s}{pres_sub_2sv_text} | {pres_sub_3s} | {pres_sub_1p} | {pres_sub_2p} | {pres_sub_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(ra) | {impf_sub_ra_1s} | {impf_sub_ra_2s} | {impf_sub_ra_3s} | {impf_sub_ra_1p} | {impf_sub_ra_2p} | {impf_sub_ra_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(se) | {impf_sub_se_1s} | {impf_sub_se_2s} | {impf_sub_se_3s} | {impf_sub_se_1p} | {impf_sub_se_2p} | {impf_sub_se_3p} |- ! class="roa-finite-header" | <span title="futuro simple de subjuntivo (futuro de subjuntivo)">未来</span><sup class="roa-red-superscript">1</sup> | {fut_sub_1s} | {fut_sub_2s} | {fut_sub_3s} | {fut_sub_1p} | {fut_sub_2p} | {fut_sub_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="6" class="roa-imperative-left-rail" | <span title="imperativo">命令法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | — ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ustedes |- ! class="roa-finite-header" | <span title="imperativo afirmativo">-</span> | | {imp_2s}{imp_2sv_text} | {imp_3s} | {imp_1p} | {imp_2p} | {imp_3p} |- ! class="roa-finite-header" | <span title="imperativo negativo">禁止</span> | | {neg_imp_2s} | {neg_imp_3s} | {neg_imp_1p} | {neg_imp_2p} | {neg_imp_3p} |{\cl}{notes_clause}</div></div> ]=] local reflexive_non_finite_template = [=[ ! rowspan="3" class="roa-nonfinite-header" | personal non-finite ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="infinitivo">不定詞</span> | {infinitive_1s} | {infinitive_2s} | {infinitive_3s} | {infinitive_1p} | {infinitive_2p} | {infinitive_3p} |- ! class="roa-finite-header" | <span title="gerundio">現在分詞</span> | {gerund_1s} | {gerund_2s} | {gerund_3s} | {gerund_1p} | {gerund_2p} | {gerund_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |-]=] local combined_form_combined_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}<i>/</i>{voseo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |-]=] local combined_form_separate_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({voseo}) {imp_2sv} ! class="roa-finite-header" | 与格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_le} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_lo}, {imp_2sv_comb_la} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_los}, {imp_2sv_comb_las} |-]=] local combined_form_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp;{title}の複合形</div> <div class="NavContent"> これらは自動生成されたものであり、実際に使用されるものとは異なる場合がある。また、代名詞の用法は地域によって大きく異なる。 {\op}| class="inflection-table es-inflection-table" |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |- ! rowspan="2" class="roa-combined-with-infinitive" | 不定詞 {infinitive} ! class="roa-finite-header" | 与格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_le}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_les}, {infinitive_comb_se} |- ! class="roa-finite-header" | 対格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_lo}, {infinitive_comb_la}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_los}, {infinitive_comb_las}, {infinitive_comb_se} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-gerund" | 現在分詞 {gerund} ! class="roa-finite-header" | 与格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_le}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_les}, {gerund_comb_se} |- ! class="roa-finite-header" | 対格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_lo}, {gerund_comb_la}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_los}, {gerund_comb_las}, {gerund_comb_se} |-{tu_vos_clause} ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称単数 {imp_3s} ! class="roa-finite-header" | 与格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_le}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_lo}, {imp_3s_comb_la}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_los}, {imp_3s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 命令法第一人称複数 {imp_1p} ! class="roa-finite-header" | 与格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_le} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_les} |- ! class="roa-finite-header" | 対格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_lo}, {imp_1p_comb_la} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_los}, {imp_1p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称複数 {imp_2p} ! class="roa-finite-header" | 与格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_le} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_lo}, {imp_2p_comb_la} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_los}, {imp_2p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称複数 {imp_3p} ! class="roa-finite-header" | 与格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_le} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_les}, {imp_3p_comb_se} |- ! class="roa-finite-header" | 対格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_lo}, {imp_3p_comb_la} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_los}, {imp_3p_comb_las}, {imp_3p_comb_se} |{\cl}{notes_clause}</div></div> ]=] local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms forms.title = link_term(alternant_multiword_spec.lemmas[1].form) if alternant_multiword_spec.annotation ~= "" then forms.title = forms.title .. " (" .. alternant_multiword_spec.annotation .. ")" end forms.description = "" -- Format the basic table. forms.tuteo = tuteo_link forms.voseo = voseo_link forms.footnote = alternant_multiword_spec.footnote_basic forms.reflexive_non_finite_clause = alternant_multiword_spec.refl and m_string_utilities.format(reflexive_non_finite_template, forms) or "" forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- The separate_* values are computed in show_forms(). forms.pres_2sv_text = alternant_multiword_spec.separate_pres_2sv and m_string_utilities.format(pres_2sv_template, forms) or "" forms.pres_sub_2sv_text = alternant_multiword_spec.separate_pres_sub_2sv and m_string_utilities.format(pres_sub_2sv_template, forms) or "" forms.imp_2sv_text = alternant_multiword_spec.separate_imp_2sv and m_string_utilities.format(imp_2sv_template, forms) or "" local formatted_basic_table = m_string_utilities.format(basic_table, forms) -- Format the combined table. local formatted_combined_table if alternant_multiword_spec.refl or alternant_multiword_spec.args.nocomb or alternant_multiword_spec.clitic then formatted_combined_table = "" else forms.footnote = alternant_multiword_spec.footnote_combined forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- separate_imp_2sv is computed in show_forms(). local tu_vos_template = alternant_multiword_spec.separate_imp_2sv and combined_form_separate_tu_vos_template or combined_form_combined_tu_vos_template forms.tu_vos_clause = m_string_utilities.format(tu_vos_template, forms) formatted_combined_table = m_string_utilities.format(combined_form_table, forms) end -- Paste them together. return require("Module:TemplateStyles")("Module:roa-verb/style.css") .. formatted_basic_table .. formatted_combined_table end -- Externally callable function to parse and conjugate a verb given user-specified arguments. -- Return value is WORD_SPEC, an object where the conjugated forms are in `WORD_SPEC.forms` -- for each slot. If there are no values for a slot, the slot key will be missing. The value -- for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms(args, source_template, headword_head, double_combined_forms_to_include) local PAGENAME = mw.loadData("Module:headword/data").pagename local function in_template_space() return mw.title.getCurrentTitle().nsText == "テンプレート" end -- Determine the verb spec we're being asked to generate the conjugation of. This may be taken from the -- current page title or the value of |pagename=; but not when called from {{es-verb form of}}, where the -- page title is a non-lemma form. Note that the verb spec may omit the infinitive; e.g. it may be "<ue>". -- For this reason, we use the value of `pagename` computed here down below, when calling normalize_all_lemmas(). local pagename = source_template ~= "es-verb form of" and args.pagename or PAGENAME local head = headword_head or pagename local arg1 = args[1] if not arg1 then if (pagename == "es-conj" or pagename == "es-verb") and in_template_space() then arg1 = "licuar<+,ú>" elseif pagename == "es-verb form of" and in_template_space() then arg1 = "amar" else arg1 = "<>" end end -- When called from {{es-verb form of}}, determine the non-lemma form whose inflections we're being asked to -- determine. This normally comes from the page title or the value of |pagename=. local verb_form_of_form if source_template == "es-verb form of" then verb_form_of_form = args.pagename if not verb_form_of_form then if PAGENAME == "es-verb form of" and in_template_space() then verb_form_of_form = "ame" else verb_form_of_form = PAGENAME end end end local incorporated_headword_head_into_lemma = false if arg1:find("^<.*>$") then -- missing lemma if head:find(" ") then -- If multiword lemma, try to add arg spec after the first word. -- Try to preserve the brackets in the part after the verb, but don't do it -- if there aren't the same number of left and right brackets in the verb -- (which means the verb was linked as part of a larger expression). local refl_clitic_verb, post = rmatch(head, "^(.-)( .*)$") local left_brackets = rsub(refl_clitic_verb, "[^%[]", "") local right_brackets = rsub(refl_clitic_verb, "[^%]]", "") if #left_brackets == #right_brackets then arg1 = iut.remove_redundant_links(refl_clitic_verb) .. arg1 .. post incorporated_headword_head_into_lemma = true else -- Try again using the form without links. local linkless_head = m_links.remove_links(head) if linkless_head:find(" ") then refl_clitic_verb, post = rmatch(linkless_head, "^(.-)( .*)$") arg1 = refl_clitic_verb .. arg1 .. post else error("Unable to incorporate <...> spec into explicit head due to a multiword linked verb or " .. "unbalanced brackets; please include <> explicitly: " .. arg1) end end else -- Will be incorporated through `head` below in the call to normalize_all_lemmas(). incorporated_headword_head_into_lemma = true end end local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, allow_blank_lemma = true, } local alternant_multiword_spec = iut.parse_inflected_text(arg1, parse_props) alternant_multiword_spec.pos = pos or "verbs" alternant_multiword_spec.args = args alternant_multiword_spec.source_template = source_template alternant_multiword_spec.verb_form_of_form = verb_form_of_form alternant_multiword_spec.incorporated_headword_head_into_lemma = incorporated_headword_head_into_lemma -- Now determine if we need to generate any double-combined forms, and if so, which clitics are involved. -- See the comment above the initialization of `verb_slot_double_combined_rows` above in add_slots(). if verb_form_of_form and rfind(verb_form_of_form, AV) then -- All double-clitic forms have an explicit accent, so we check for this. In addition, all double-clitic forms -- are of the form "(me|te|se|nos|os)(lo|la|le)s$". We have no alternations in Lua patterns, but we can exploit -- the similarity of the clitics in question. local single_comb_form, object_clitic = rmatch(verb_form_of_form, "^(.*)(l[aeo]s?)$") if single_comb_form then local personal_clitic = rmatch(single_comb_form, "^.*([mts]e)$") if not personal_clitic then personal_clitic = rmatch(single_comb_form, "^.-(n?os)$") end if personal_clitic then if personal_clitic == "nos" then -- "os" is a substring of "nos"; conceivably we could have a form ending in -n + os, and we don't -- know whether to interpret as -n + os or - + nos. alternant_multiword_spec.double_combined_forms_to_include = {{"nos", object_clitic}, {"os", object_clitic}} else if personal_clitic == "se" then -- Use the special "lxx" clitic for le/les when transformed into se in double-combined forms. personal_clitic = "lxx" end alternant_multiword_spec.double_combined_forms_to_include = {{personal_clitic, object_clitic}} end end end end normalize_all_lemmas(alternant_multiword_spec, pagename) detect_all_indicator_specs(alternant_multiword_spec) local inflect_props = { slot_list = alternant_multiword_spec.all_verb_slots, inflect_word_spec = conjugate_verb, -- We add links around the generated verbal forms rather than allow the entire multiword -- expression to be a link, so ensure that user-specified links get included as well. include_user_specified_links = true, } iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) -- Remove redundant brackets around entire forms. for slot, forms in pairs(alternant_multiword_spec.forms) do for _, form in ipairs(forms) do form.form = iut.remove_redundant_links(form.form) end end compute_categories_and_annotation(alternant_multiword_spec) if args.json and not from_headword and not from_verb_form_of then -- There is a circular reference in `base.alternant_multiword_spec`, which points back to top level. iut.map_word_specs(alternant_multiword_spec, function(base) base.alternant_multiword_spec = nil end) return require("Module:JSON").toJSON(alternant_multiword_spec) end return alternant_multiword_spec end -- Entry point for {{es-conj}}. Template-callable function to parse and conjugate a verb given -- user-specified arguments and generate a displayable table of the conjugated forms. function export.show(frame) local parent_args = frame:getParent().args local params = { [1] = {}, ["nocomb"] = {type = "boolean"}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use } local args = require("Module:parameters").process(parent_args, params) local alternant_multiword_spec = export.do_generate_forms(args, "es-conj") if type(alternant_multiword_spec) == "string" then -- JSON return value return alternant_multiword_spec end show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang, nil, nil, force_cat) end return export pdrq77jwpi4n3ps02wpfuipqmh03idf 2281206 2281197 2026-06-09T10:43:16Z Kuroco2k 84207 2281206 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> ]=] --[=[ TERMINOLOGY: -- "slot" = A particular combination of tense/mood/person/number/etc. Example slot names for verbs are "pres_1s" (present indicative first-person singular), "pres_sub_2sv" (present subjunctive second-person singular voseo form) "impf_sub_ra_3p" (imperfect subjunctive -ra form third-person plural), "imp_1p_comb_lo" (imperative first-person plural combined with clitic [[lo]]). Each slot is filled with zero or more forms. -- "form" = The conjugated Spanish form representing the value of a given slot. -- "lemma" = The dictionary form of a given Spanish term. For Spanish, always the infinitive. ]=] --[=[ FIXME: 1. Implement no_pres_stressed for aterir, garantir. (NOTE: Per RAE, garantir used in all forms in Argentina/Uruguay.) [DONE] 2. Support concluyo. [DONE] 3. Fixes for veo -> ve vs. preveo -> prevé. [DONE] 4. Various more irregular verbs, e.g. predecir, redecir, bendecir, maldecir. [DONE] 5. Raising of e -> i, o -> u before -iendo, -ió, etc. occurs only in -ir verbs. [DONE] 6. Raising of e -> i, o -> u happens before subjunctive -amos, -áis in -ir verbs. [DONE] 7. Implement reflexive verbs. [DONE] 8. Implement categories. [DONE] 9. Implement show_forms. [DONE] 10. Reconcile stems.vowel_alt from irregular verbs with vowel_alt from indicators. May require moving the irregular-verb handling code in construct_stems() into detect_indicator_spec(). [DONE] 11. Implement make_table. [DONE] 12. Vowel alternation should show u-ue (jugar), i-ie (adquirir), e-í (reír) alternations specially. [DONE] 13. Handle linking of multiword forms as is done in [[Module:es-headword]]. [DONE] 14. Implement comparison against previous module. [DONE] 15. Implement categorization of irregularities for individual tenses. 16. Support nocomb=1. [DONE] 17. (Possibly) display irregular forms in a different color, as with the old module. 18. (Possibly) display a "rule" description indicating the types of alternations. 19. Implement replace_reflexive_indicators(). [NOT DONE; SUPPORT REMOVED] 20. Implement verbs with attached clitics e.g. [[pasarlo]], [[corrérsela]]. [DONE] 21. When footnote + tú/vos notation, add a space before tú/vos. 22. Fix [[erguir]] so ie-i vowel alternation produces ye- at beginning of word, similarly for errar. Also allow multiple vowel alternation specs in irregular verbs, for errar. Finally, ie should show as e-ye for errar and as e-ye-i for erguir. [DONE] 23. Figure out why red links in combined forms show up as black not red. 24. Consider including alternative superseded forms of verbs like [[ciar]] (e.g. pret_3s = cio, ció with footnote). 25. Allow conjugation of suffixes e.g. -ir, -ecer; need to fix in [[Module:inflection utilities]]. [DONE] 26. Allow specification of stems esp. so that footnotes can be hung off them; use + for the default. 27. Don't remove monosyllabic accents when conjugating suffixes. [DONE] 28. If multiword expression with no <>, add <> after first word, as with [[Module:es-headword]]. [DONE] 29. (Possibly) link the parts of a reflexive or cliticized infinitive, as done in [[Module:es-headword]]. [DONE] 30. Final fixes to allow [[Module:es-headword]] to use this module. [DONE] --]=] local lang = require("Module:languages").getByCode("es") local m_string_utilities = require("Module:string utilities") local m_links = require("Module:links") local m_table = require("Module:table") local iut = require("Module:inflection utilities") local put = require("Module:parse utilities") local com = require("Module:es-common") local force_cat = false -- set to true for debugging local check_for_red_links = false -- set to false for debugging local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsplit = mw.text.split local rsub = com.rsub local unpack = unpack or table.unpack -- Lua 5.2 compatibility local function link_term(term) return m_links.full_link({ lang = lang, term = term }, "term") end local V = com.V -- vowel regex class local AV = com.AV -- accented vowel regex class local C = com.C -- consonant regex class local tuteo_link = link_term("tuteo") local voseo_link = link_term("voseo") local fut_sub_note = "[rare; now chiefly used in legal language]" local pres_sub_voseo_note = "[Argentine and Uruguayan " .. voseo_link .. " prefers the " .. tuteo_link .. "-form for the present subjunctive]" local vowel_alternants = m_table.listToSet({"ie", "ie-i", "ye", "ye-i", "ue", "ue-u", "hue", "i", "í", "ú", "+"}) local vowel_alternant_to_desc = { ["ie"] = "e-ie", ["ie-i"] = "e-ie-i", ["ye"] = "e-ye", ["ye-i"] = "e-ye-i", ["ue"] = "o-ue", ["ue-u"] = "o-ue-u", ["hue"] = "o-hue", ["i"] = "e-i", ["í"] = "i-í", ["ú"] = "u-ú", } local raise_vowel = {["e"] = "i", ["o"] = "u"} local all_persons_numbers = { ["1s"] = "1|s", ["2s"] = "2|s", ["2sv"] = "2|s|voseo", ["3s"] = "3|s", ["1p"] = "1|p", ["2p"] = "2|p", ["3p"] = "3|p", } local person_number_list_basic = {"1s", "2s", "3s", "1p", "2p", "3p"} local person_number_list_voseo = {"1s", "2s", "2sv", "3s", "1p", "2p", "3p"} local imp_person_number_list = {"2s", "2sv", "3s", "1p", "2p", "3p"} local neg_imp_person_number_list = {"2s", "3s", "1p", "2p", "3p"} person_number_to_reflexive_pronoun = { ["1s"] = "me", ["2s"] = "te", ["2sv"] = "te", ["3s"] = "se", ["1p"] = "nos", ["2p"] = "os", ["3p"] = "se", } local indicator_flags = m_table.listToSet { "no_pres_stressed", "no_pres1_and_sub", "only3s", "only3sp", "only3p", "no_built_in", } -- Initialize all the slots for which we generate forms. The particular slots may depend on whether we're generating -- combined slots (`not alternant_multiword_spec.nocomb`, which is always false if we're dealing with a verb with an -- attached clitic, such as [[hincarla]], or a reflexive or partly-reflexive verb, where a partly-reflexive verb is -- a conjoined term made up of two or more verbs, where some but not all are reflexive). It may also depend on whether -- we're being requested to generate some double-combined forms, such as [[llevándoselo]]; see the comment below for -- `verb_slot_double_combined_rows`. local function add_slots(alternant_multiword_spec) -- "Basic" slots: All slots that go into the regular table (not the combined-form table). alternant_multiword_spec.verb_slots_basic = { {"infinitive", "inf"}, {"infinitive_linked", "inf"}, {"gerund", "ger"}, {"pp_ms", "m|s|past|part"}, {"pp_fs", "f|s|past|part"}, {"pp_mp", "m|p|past|part"}, {"pp_fp", "f|p|past|part"}, } -- Slots that go into the combined-form table, along with double-combined slots (e.g. [[llevándoselo]]) that are -- requested for use with {{es-verb form of}}. alternant_multiword_spec.verb_slots_combined = {} -- Special slots used to handle non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- For example, for a reflexive-only verb like [[jambarse]], we want to be able to use {{es-verb form of}} on -- [[jambe]] (which should mention that it is a part of 'me jambe', first-person singular present subjunctive, and -- 'se jambe', third-person singular present subjunctive) or on [[jambamos]] (which should mention that it is a -- part of 'nos jambamos', first-person plural present indicative or preterite). Similarly, we want to use -- {{es-verb form of}} on [[jambando]] (which should mention that it is a part of 'se ... jambando', syntactic -- variant of [[jambándose]], which is the gerund of [[jambarse]]). To do this, we need to be able to map -- non-reflexive parts like [[jambe]], [[jambamos]], [[jambando]], etc. to their reflexive equivalent(s), to the -- tag(s) of the equivalent(s), and, in the case of forms like [[jambando]], [[jambar]] and imperatives, to the -- separated syntactic variant of the verb+clitic combination. We do this by creating slots for the non-reflexive -- part equivalent of each basic reflexive slot, and for the separated syntactic-variant equivalent of each basic -- reflexive slot that is formed of verb+clitic. We use slots in this way to deal with multiword lemmas. Note that -- we run into difficulties mapping between reflexive verbs, non-reflexive part equivalents, and separated syntactic -- variants if a slot contains more than one form. To handle this, if there are the same number of forms in two -- slots we're trying to match up, we assume the forms match one-to-one; otherwise we don't match up the two slots -- (which means {{es-verb form of}} won't work in this case, but such a case is extremely rare and not worth -- worrying about). Alternatives that handle this "properly" are significantly more complicated and require -- non-trivial modifications to [[Module:inflection utilities]]. local need_special_verb_form_of_slots = alternant_multiword_spec.source_template == "es-verb form of" and alternant_multiword_spec.refl if need_special_verb_form_of_slots then alternant_multiword_spec.verb_slots_reflexive_verb_form_of = { {"infinitive_non_reflexive", "-"}, {"infinitive_variant", "-"}, {"gerund_non_reflexive", "-"}, {"gerund_variant", "-"}, } else alternant_multiword_spec.verb_slots_reflexive_verb_form_of = {} end -- For generating combined forms, i.e. combinations of a basic form (specifically, infinitive, gerund or an -- imperative form) with a clitic (or in some cases, two clitics). This is a list of lists of the form -- {BASIC_SLOT, CLITICS} where BASIC_SLOT is the slot to add the clitic pronouns to (e.g. "gerund" or "imp_2s") -- and CLITICS is a list of the clitic pronouns to add. alternant_multiword_spec.verb_slot_combined_rows = {} -- For generating double combined forms (e.g. [[llevándoselo]] or [[dámela]]). This is used by {{es-verb form of}} -- when it detects that it is being requested to find the inflection tags for a double-combined form. The number of -- double-combined forms is relatively large, so to optimize this, [[Module:es-inflections]] (which implements -- {{es-verb form of}}) detects which two clitics are involved, and we only generate double-combined forms -- involving those two clitics; this is specified using `double_combined_forms_to_include`, passed into -- do_generate_forms(). The value of this field is a list of lists of the form {SINGLE_COMB_SLOT, CLITICS} where -- SINGLE_COMB_SLOT is the single-combined slot to add the object clitic pronouns to (e.g. "gerund_comb_se" or -- "imp_2s_comb_me") and CLITICS is a list of the clitic pronouns to add. CLITICS will normally be a length-one -- list whose value is one of {"lo", "la", "le", "los", "las", "les"}. alternant_multiword_spec.verb_slot_double_combined_rows = {} -- Add entries for a slot with person/number variants. -- `verb_slots` is the table to add to. -- `slot_prefix` is the prefix of the slot, typically specifying the tense/aspect. -- `tag_suffix` is a string listing the set of inflection tags to add after the person/number tags. -- `person_number_list` is a list of the person/number slot suffixes to add to `slot_prefix`. local function add_personal_slot(verb_slots, slot_prefix, tag_suffix, person_number_list) for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(verb_slots, {slot, accel}) end end -- Add a personal slot (i.e. a slot with person/number variants) to `verb_slots_basic`. local function add_basic_personal_slot(slot_prefix, tag_suffix, person_number_list, no_special_verb_form_of_slot, need_variant_slot) add_personal_slot(alternant_multiword_spec.verb_slots_basic, slot_prefix, tag_suffix, person_number_list) -- Add special slots for handling non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- See comment above in `need_special_verb_form_of_slots`. if need_special_verb_form_of_slots and not no_special_verb_form_of_slot then for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local basic_slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_non_reflexive", "-"}) if need_variant_slot then table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_variant", "-"}) end end end end add_basic_personal_slot("pres", "pres|ind", person_number_list_voseo) add_basic_personal_slot("impf", "impf|ind", person_number_list_basic) add_basic_personal_slot("pret", "pret|ind", person_number_list_basic) add_basic_personal_slot("fut", "fut|ind", person_number_list_basic) add_basic_personal_slot("cond", "cond", person_number_list_basic) add_basic_personal_slot("pres_sub", "pres|sub", person_number_list_voseo) add_basic_personal_slot("impf_sub_ra", "impf|sub", person_number_list_basic) add_basic_personal_slot("impf_sub_se", "impf|sub", person_number_list_basic) add_basic_personal_slot("fut_sub", "fut|sub", person_number_list_basic) -- Need variant slots because the imperative clitics are suffixed. add_basic_personal_slot("imp", "imp", imp_person_number_list, nil, "need variant slot") -- Don't need special non-reflexive-part slots because the negative imperative is multiword, of which the -- individual words are 'no' + subjunctive. add_basic_personal_slot("neg_imp", "neg|imp", neg_imp_person_number_list, "no special verb form of") -- Don't need special non-reflexive-part slots because we don't want [[jambando]] mapping to [[jambándome]] -- (only [[jambándose]]) or [[jambar]] mapping to [[jambarme]] (only [[jambarse]]). add_basic_personal_slot("infinitive", "inf", person_number_list_basic, "no special verb form of") add_basic_personal_slot("gerund", "ger", person_number_list_basic, "no special verb form of") local third_person_object_clitics = {"lo", "la", "le", "los", "las", "les"} -- Add combined-form slots. if not alternant_multiword_spec.nocomb then -- Add a row of slots representing the combination of a basic slot with a clitic. `basic_slot` is the basic slot -- descriptor, `tag_prefix` is a string describing the inflection tags of the basic slot, and `personal_clitics` -- is a list of the personal clitics ("me", "te", "se", "nos" or "os") to add to the basic slot. local function add_combined_slot_row(basic_slot, tag_prefix, personal_clitics) -- First, add each individual combined slot to `verb_slots_combined`. local clitics_with_object = m_table.append(personal_clitics, third_person_object_clitics) for _, clitic in ipairs(clitics_with_object) do local slot = basic_slot .. "_comb_" .. clitic -- You have to pass this through full_link() to get a Spanish-specific link local accel = tag_prefix .. "|combined with [[" .. clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) end -- Also, add the row to `verb_slot_combined_rows`. table.insert(alternant_multiword_spec.verb_slot_combined_rows, {basic_slot, clitics_with_object}) -- Also do double-combined forms for a specific set of clitics, if requested. See the comment above -- `verb_slot_double_combined_rows` above. if alternant_multiword_spec.double_combined_forms_to_include then -- Add a special "lxx" clitic for le/les when transformed into se in double-combined forms. local personal_clitics_with_lxx = {unpack(personal_clitics)} table.insert(personal_clitics_with_lxx, "lxx") for _, personal_clitic in ipairs(personal_clitics_with_lxx) do for _, object_clitic in ipairs(third_person_object_clitics) do for _, form_to_include in ipairs(alternant_multiword_spec.double_combined_forms_to_include) do local to_include_personal_clitic, to_include_object_clitic = unpack(form_to_include) if personal_clitic == to_include_personal_clitic and object_clitic == to_include_object_clitic then local single_comb_slot = basic_slot .. "_comb_" .. personal_clitic local slot = single_comb_slot .. "_" .. object_clitic accel_clitic = personal_clitic == "lxx" and "[[le]]/[[les]]" or "[[" .. personal_clitic .. "]]" local accel = tag_prefix .. "|combined with indirect object " .. accel_clitic .. " and direct object [[" .. object_clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) table.insert(alternant_multiword_spec.verb_slot_double_combined_rows, {single_comb_slot, {object_clitic}}) break end end end end end end add_combined_slot_row("infinitive", "inf", {"me", "te", "se", "nos", "os"}) add_combined_slot_row("gerund", "gerund", {"me", "te", "se", "nos", "os"}) local function add_combined_imp_slot_row(persnum, personal_clitics) add_combined_slot_row("imp_" .. persnum, all_persons_numbers[persnum] .. "|imp", personal_clitics) end add_combined_imp_slot_row("2s", {"me", "te", "nos"}) add_combined_imp_slot_row("2sv", {"me", "te", "nos"}) add_combined_imp_slot_row("3s", {"me", "se", "nos"}) add_combined_imp_slot_row("1p", {"te", "nos", "os"}) add_combined_imp_slot_row("2p", {"me", "nos", "os"}) add_combined_imp_slot_row("3p", {"me", "se", "nos"}) end -- Generate the list of all slots. alternant_multiword_spec.all_verb_slots = {} for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_combined) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_reflexive_verb_form_of) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end alternant_multiword_spec.verb_slots_basic_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_basic_map[slot] = accel end alternant_multiword_spec.verb_slots_combined_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_combined) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_combined_map[slot] = accel end end -- Return true if `form` is accented and is likely monosyllabic. Used in remove_monosyllabic_accents(); if true, we -- run the syllabification algorithm to determine the syllable count, and if monosyllabic, remove the accent. Also used -- in conjunction with user-specified form overrides to add an asterisk to prevent accents from being removed. local function may_need_monosyllabic_accent_removed(form) return not rfind(form, "^%-") and rfind(form, AV) and not rfind(form, V .. C .. V) end local overridable_stems = {} -- If `add_monosyllabic_asterisk` is given, add a * to accented forms that may be monosyllabic to prevent the accent -- from being removed in remove_monosyllabic_accents(). local function allow_multiple_values_for_override(separated_groups, data, add_monosyllabic_asterisk) local retvals = {} for _, separated_group in ipairs(separated_groups) do local footnotes = data.fetch_footnotes(separated_group) local form = separated_group[1] if add_monosyllabic_asterisk and may_need_monosyllabic_accent_removed(form) then form = form .. "*" end -- Add suppress_prefix to prevent the built-in verb prefix from being added to the override. local retval = {form = form, footnotes = footnotes, suppress_prefix = true} table.insert(retvals, retval) end return retvals end local function simple_choice(choices) return function(separated_groups, data) if #separated_groups > 1 then data.parse_err("For spec '" .. data.prefix .. ":', only one value currently allowed") end if #separated_groups[1] > 1 then data.parse_err("For spec '" .. data.prefix .. ":', no footnotes currently allowed") end local choice = separated_groups[1][1] if not m_table.contains(choices, choice) then data.parse_err("For spec '" .. data.prefix .. ":', saw value '" .. choice .. "' but expected one of '" .. table.concat(choices, ",") .. "'") end return choice end end for _, overridable_stem in ipairs { "pres_unstressed", "pres_stressed", "pres1_and_sub", -- Don't include pres1; use pres_1s if you need to override just that form "impf", "full_impf", "pret", {"pret_conj", simple_choice({"irreg", "ar", "er", "ir"}) }, "fut", "cond", "pres_sub_stressed", "pres_sub_unstressed", "impf_sub_ra", "impf_sub_se", "fut_sub", "pp", } do if type(overridable_stem) == "string" then overridable_stems[overridable_stem] = allow_multiple_values_for_override else local stem, validator = unpack(overridable_stem) overridable_stems[stem] = validator end end local function match_against_verbs(ref_verb, prefixes) return function(verb) for _, prefix in ipairs(prefixes) do if verb == prefix .. ref_verb then return prefix, ref_verb end end return nil end end --[=[ Special cases for verbs: diluviar, atardecer: impersonal; all finite non-3s forms are nonexistent or hypothetical. Handle using '.only3s'. empecer, atañer, concernir: all finite non-third-person forms are nonexistent or hypothetical. Handle using '.only3sp'. desnacer: Former module claimed an irregular past participle 'desnato'. Verb is not in RAE at all and barely exists; unlikely to have irregular past participle. desposeer: Former module claimed an irregular past participle 'desposeso'. Not per RAE. valer: Former module claimed an irregular imperative 'val'. Not per RAE. manumitir: Former module claimed an irregular past participle 'manumiso'. Not per RAE. raer: Former module claimed a pres 1sg rao. Not per RAE. rehuir: Handle using +ú. sustituir: Former module claimed an irregular past participle 'sustituto'. Not per RAE. venir: Former module claimed an irregular clitic combination ven + nos -> venos. Not per native speakers. --------- Verbs to check: rehuir (+ú), prohibir (+í), reunir (+ú) --------- -ir verbs: There are several types of vowel alternations: 1. No alternation. Includes some verbs in -e- and -o-, e.g. aterir(se) (no_pres_stressed), tra(n)sgredir (pres_stressed forms rare), abolir (pres_stressed forms rare), colorir (no_pres_stressed), sumergir, divergir, convergir, arrecir (no_pres_stressed), rostir, polir (obsolete), condir (obsolete), possibly ascondir (obsolete), atordir (obsolete), sacodir (obsolete), sobrevendir (possible misspelling), empedernir (no_pres_stressed), decebir (obsolete; possibly actually like concebir, i.e. decibo not decebo), premir (obsolete), expremir (obsolete), exir (obsolete), escreuir (obsolete; fix conjugation), escrebir (obsolete), agredir; sometimes the stressed forms are rare or disused. (Also embaír, desvaír are no_pres_stressed.) 2a. ie: Infinitive has -e-, changing to -ie- when stressed. No raising before i+V. Only hendir, cernir, discernir, concernir (only3sp); discernir -> discierno, discerniendo, discernió, discernamos. 2b. ye: Infinitive has -e-, changing to -ye- when stressed. No raising before i+V. Does not occur (cf. errar). 3a. ie-i: Infinitive has -e- or -i-, changing to -ie- when stressed. Raising before i+V and 1p/2p pres subjunctive: sentir -> siento, sintiendo, sintió, sintamos. adquirir -> adquiero, adquiriendo, adquirió, adquiramos. 3b. ye-i: Infinitive has -e-, changing to -ye- when stressed. Raising before i+V and 1p/2p pres subjunctive. Only erguir: erguir -> yergo, irguiendo, irguió, irgamos. 4. i: Infinitive has -e-, changing to -i- when stressed. Raising before i+V and 1p/2p pres subjunctive: vestir -> visto, vistiendo, vistió, vistamos. Variant: ceñir -> ciño, ciñendo, ciñó, ciñamos. NOTE: preterir (no_pres_stressed). 5. ue-u: Infinitive has -o-, changing to -ue- when stressed. Raising before i+V and 1p/2p pres subjunctive: Only dormir, morir and compounds. dormir -> duermo, durmiendo, durmió, durmamos. 6. ue: This type would be parallel to 'ie' but doesn't appear to exist. --------- Verbs to fix (extra forms need to be excised or deleted): The above verbs under type (1) -ir vowel alternations; [[neviscar]] (impersonal), [[acaecer]] (third-person only), [[acontecer]] (third-person only), [[cellisquear]] (impersonal), [[pintear]] (impersonal? other meaning "to play hookey" given, not in RAE), [[diluviar]] (impersonal). [[desabrir]] (not like abrir, rare in pres_stressed/sub forms), [[jabrir]] (not like abrir). Verbs with existing errors: * [[abeldar]]: (missing <ie>) [FORMS TO DELETE] * [[acaecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[acontecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[anticuar]] (conjugated without ú) [FORMS TO DELETE] * [[antojar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[aerografiar]]: (conjugated without í) [FORMS TO DELETE] * [[afiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[agraviar]]: (wrongly has í) [FORMS TO DELETE] * [[arrecir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[aserrar]]: (missing <ie>) [FORMS TO DELETE] * [[aspaventar]]: (missing <ie>) [OK] * [[atesar]]: (wrongly has ie) [FORMS TO DELETE] * [[avalentar]]: (wrongly has ie) [FORMS TO DELETE] * [[autorregularse]] (conjugated as non-reflexive) [OK] * [[auxiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[balbucir]] (pres1_and_sub nonexistent) [DELETE PRES1_AND_SUB FORMS] * [[caçar]] (conjugated as -zar) [OK] * [[calefacer]] (extra form caleface) [FIX] * [[cellisquear]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[chilenizar]] (conjugated with no cons alternation) [OK] * [[colorir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[comisariar]] (conjugated without í) [FORMS TO DELETE] * [[complacer]] (missing complega in imperative 3s) [OK] * [[comprehender]] (conjugated as comprender) [OK] * [[decebir]] (was conjugated without <i>) [FORMS TO DELETE] * [[desafiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[desagregar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desairar]]: (conjugated with í should be only +) [FORMS TO DELETE] * [[descordar]]: (missing <ue>) [FORMS TO DELETE] * [[deseleccionar]] (conjugated as desseleccionar) [OK] * [[desestacionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desgonzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desguinzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[deshacer]] (extra form deshace, desháceme etc.) [OK] * [[desnacer]] (extra form desnato etc.) [DELETE PP FORMS] * [[desposeer]] (extra form desposeso etc.) [DELETE PP FORMS] * [[dezmar]]: (wrongly has ie) [FORMS TO DELETE] * [[diluviar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[draftear]] (extraneous param lang=es) [REMOVE PARAM] * [[ejemplarizar]] (extraneous param compound=1) [compound -> combined] * [[ejercitar]] (extraneous param compound=1) [compound -> combined] * [[empecer]] (empezca has imperatives, 1s in its verb form entry) [FIX] * [[encentar]]: (wrongly has ie) [OK] * [[encubertar]]: (wrongly has ie) [FORMS TO DELETE] * [[entrechocar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[entredecir]] (imp_2s has entredice should be entredí; extra future/cond forms entredeciré etc.) [FORMS TO DELETE/FIX] * [[escenografiar]]: (conjugated without í) [FORMS TO DELETE] * [[estar]] (incorrect combined forms, e.g. éstela instead of estela) [OK] * [[extasiar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[facer]] (extra form face, fáceme, etc.) [FIX] * [[ferrar]]: (missing <ie>) [FORMS TO DELETE] * [[gloriar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[hacer]] (extra form hace, háceme, etc.) [DELETE hácete] * [[homogeneizar]] (extra form homogeneízo) [DELETE homogeneízo, homogeneízas, homogeneíza, homogeneízan, homogeneícen, homogeneícemos] * [[incensar]]: (missing <ie>) [FORMS TO DELETE] * [[ir]] (extraneous param aux=ser) [REMOVE PARAM] * [[jacer]] (extra form jace, jáceme, etc.) [FIX] * [[jarrear]] (extraneous param impersonal=yes) * [[litografiar]]: (conjugated without í) [FORMS TO DELETE] * [[manumitir]] (extra form manumiso, etc.) [FIX; is an adjective] * [[mecanografiar]]: (conjugated without í) [FORMS TO DELETE] * [[mordiscar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[neviscar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[obsipar]] (conjugated as obispar) [DELETE VERB] * [[obstar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[orificar]] (conjugated as orificiar) [OK] * [[complacer]], [[placer]] (missing plega in imperative 3s, etc.) [OK] * [[prevaler]] (extra form preval, incorrect form prévalme etc.) [DELETE preval] * [[preterir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[raer]] (extra form rao) [DELETE rao] * [[rebordar]] (extraneous param lang=es) [REMOVE PARAM] * [[redecir]] (incorrect imp_2s redice instead of redí) [FIX] * [[reinstitucionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[reirse]] [DELETE] * [[serigrafiar]]: (conjugated without í) [FORMS TO DELETE] * [[sobresalir]] (incorrect combined forms e.g. sobrésalme) [OK] * [[superpoblar]] (missing <ue>) [FORMS TO DELETE] * [[sustituir]] (extra form sustituto, etc.) [OK] * [[usucapir]]: (used only in inf and pp) [DELETE ALL FORMS BUT PP] * [[valefacer]] (extra form valeface) [FIX] * [[valer]] (extra form val, etc.) [OK] * LOTS OF COMBINED FORMS OF VERBS IN -iar, -uar, -ai-, -au-, -ei-, -eu-, etc. Example: afeitar (afeítate, afeítese, afeítense). Need a script to find them. * [[acostar]]: normally <ue> but in meaning "arrive at the coast", <> * [[adecuar]]: <+,ú> * [[aerografiar]]: <í> * [[aferrar]]: <+,ie[obsolete]> * [[afiliar]]: <> * [[aforar]]: in meaning "to gauge, to measure": <>; in meaning "otorgar fuero": <ue> * [[arrecir]]: <no_pres_stressed> * [[agraviar]]: <> * [[agriar]]: <í,+> * [[aserrar]]: <ie> * [[asolar]]: in meaning "destroy": <ue,+>; in meaning "to dry up": <> * [[aspaventar]]: <ie> * [[atentar]]: in meaning "to commit a crime" does not have vowel alt * [[atesar]]: <>; possibly <ie> in obsolete meaning "atiesar" * [[atestar]]: in meaning "to pack": <ie,+>; in meaning "testify": <> * [[autoevacuarse]]: <+,ú> * [[auxiliar]]: <> * [[avalentar]]: <> * [[cimentar]]: <ie,+> * [[colar]]: most meanings <ue> but "canonically confer (an ecclesiastical benefit)" <> * [[colorir]]: <no_pres_stressed> * [[comisariar]]: <í> * [[desafiliar]]: <> * [[desaforar]]: "to deprive of fuero": <ue,+[less common]> * [[desairar]]: <> * [[desolar]]: <ue,+> * [[desmembrar]]: <ie,+> * [[dezmar]]: <> * [[ejecutoriar]]: <í,+> * [[emparentar]]: <ie,+> * [[encentar]]: <> * [[encubertar]]: <> * [[engrosar]]: <ue,+> * [[escenografiar]]: <í> * [[evacuar]]: <+,ú> * [[expatriar]]: <í,+> * [[extasiar]]: <í> * [[ferrar]]: <ie> * [[follar]]: <ue> * [[gloriar]]: <í> * [[hibernar]]: no vowel alt or e-ie; e-ie not in RAE, ask about it * [[historiar]]: <í,+> * [[incensar]]: <ie> * [[invernar]]: <ie,+> * [[licuar]]: <+,ú> * [[litografiar]]: <í> * [[mecanografiar]]: <í> * [[paliar]]: <í,+> * [[preterir]]: <i.no_pres_stressed> * [[promiscuar]]: <+,ú> * [[readecuar]]: <+,ú> * [[repatriar]]: <í,+> * [[retrocar]]: <ue,+> * [[serigrafiar]]: <í> * [[soterrar]]: <ie,+> * [[superpoblar]]: <ue> * [[templar]]: <+,ie[in some parts of Latin America]> * [[vidriar]]: <í,+> Second round of verbs to fix: * [[apropriar]]: forms point to reflexive [FORMS TO FIX] * [[autogobernarse]]: (missing <ie>) [FORMS TO DELETE] * [[autorreproducirse]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[aventarse]]: (missing <ie>) [FORMS TO DELETE] * [[aventar]]: forms point to reflexive [FORMS TO FIX] * [[culiar]]: yo culio or culío? [VERIFY] * [[desnacer]]: delete [[dasnatos]] * [[poseer]]: delete [[posesa]], [[posesos]], [[posesas]] * [[reproducir]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[trasgredir]]: (wrongly had <i>) [FORMS TO DELETE] --------- Irregular conjugations. Each entry is processed in turn and consists of an object with two fields: 1. match=: Specifies the irregular verbs that match this object. 2. forms=: Specifies the irregular stems and forms for these verbs. The value of match= is either a string beginning with "^" (match only the specified verb), a string not beginning with "^" (match any verb ending in that string), or a function that is passed in the verb and should return the prefix of the verb if it matches, otherwise nil. The function match_against_verbs() is provided to facilitate matching a set of verbs with a common ending and specific prefixes (e.g. [[andar]] and [[desandar]] but not [[mandar]], etc.). The value of forms= is a table specifying stems and individual override forms. Each key of the table names either a stem (e.g. `pres_stressed`), a stem property (e.g. `vowel_alt`) or an individual override form (e.g. `pres_1s`). Each value of a stem can either be a string (a single stem), a list of strings, or a list of objects of the form {form = STEM, footnotes = {FOONOTES}}. Each value of an individual override should be of exactly the same form except that the strings specify full forms rather than stems. The values of a stem property depend on the specific property but are generally strings or booleans. In order to understand how the stem specifications work, it's important to understand the phonetic modifications done by combine_stem_ending(). In general, the complexities of predictable stem and ending modifications are all handled in this function. In particular: 1. Spelling-based modifications (c/z, g/gu, gu/gü, g/j) occur automatically as appropriate for the ending. 2. Raising of e -> i, o -> u in -ir verbs before an ending beginning with i + vowel, as well as in the 1p/2p forms of the present subjunctive (dormir -> durmiendo, durmió, durmamos), are handled here. Raising happens only for -ir verbs and only when the stem setting `raising_conj` is true (which is normally set to true when vowel alternations `ie-i`, `ye-i`, `ue-u`, `i`, `í` or `ú` are specified). 3. Numerous modifications are automatically made before an ending beginning with i + vowel. These include: a. final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; b. in the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. imperfect and and future subjunctive), initial i absorbed after j and u (dijeron not #dijieron, likewise for condujeron, trajeron; also fueron not #fuyeron). This happens only when stem setting `pret_conj` == "irreg"; this must be set explicitly by irregular verbs. Does not apply everywhere because of cases like regular [[tejer]] (tejieron not #tejeron), regular [[concluir]] (concluyeron not #conclueron). c. initial i of ending -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; ir -> yendo; d. initial i of ending -> y after gü, which becomes gu: argüir -> arguyó, arguyera, arguyendo; e. initial i of ending absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo 4. If the ending begins with (h)i, it gets an accent after a/e/i/o to prevent the two merging into a diphthong: caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. concluir -> concluiste, concluimos. 5. In -uir verbs (i.e. -ir verbs with stem ending in -u), a y is added before endings beginning with a/e/o: concluir -> concluyo, concluyen, concluya, concluyamos. Note that preterite concluyó, gerund concluyendo, etc. are handled by a different rule above (3b). The following stems are recognized: -- pres_unstressed: The present indicative unstressed stem (2s voseo, 1p, 2p). Also controls the imperative 2p and gerund. Defaults to the infinitive stem. -- pres_stressed: The present indicative stressed stem (1s, 2s, 3s, 3p). Also controls the imperative 2s. Default is empty if indicator `no_pres_stressed`, else a vowel alternation if such an indicator is given (e.g. `ue`, `ì`), else the infinitive stem. -- pres1_and_sub: Overriding stem for 1s present indicative and the entire subjunctive. Only set by irregular verbs and by the indicator `no_pres_stressed` (since verbs of this sort, e.g. [[aterir]], are missing the entire subjunctive as well as the forms with stressed root). Used by many irregular verbs, e.g. [[caer]], [[roer]], [[salir]], [[tener]], [[valer]], [[venir]], etc. Some verbs set this and then supply an override for the pres_1sg if it's irregular, e.g. [[saber]], with irregular subjunctive stem "sep-" and special 1s present indicative "sé*" (the * indicates that the monosyllabic accent should not be removed). -- pres1: Special stem for 1s present indicative. Normally, do not set this explicitly. If you need to specify an irregular 1s present indicative, use the form override pres_1s= to specify the entire form. Defaults to pres1_and_sub if given, else pres_stressed. -- pres_sub_unstressed: The present subjunctive unstressed stem (1p, 2p, also 2s voseo for -ar verbs). Defaults to pres1_and_sub if given, else the infinitive stem. -- pres_sub_stressed: The present subjunctive stressed stem (1s, 2s, 3s, 1p, also 2s voseo for -er/-ir verbs). Defaults to pres1. -- impf: The imperfect stem. Defaults to the infinitive stem. -- pret: The preterite stem. Defaults to the infinitive stem. -- pret_conj: Determines the set of endings used in the preterite. Should be one of "ar", "er", "ir" or "irreg". Defaults to the conjugation as determined from the infinitive. -- fut: The future stem. Defaults to the infinitive stem. -- cond: The conditional stem. Defaults to fut. -- impf_sub_ra: The imperfect subjunctive -ra stem. Defaults to the preterite stem. -- impf_sub_se: The imperfect subjunctive -se stem. Defaults to the preterite stem. -- fut_sub: The future subjunctive stem. Defaults to the preterite stem. -- pp: The past participle stem. Default is based on the verb conjugation: infinitive stem + "ad" for -ar verbs, otherwise infinitive stem + "id". ]=] local built_in_conjugations = { { -- andar, desandar -- we don't want to match e.g. mandar. match = match_against_verbs("andar", {"", "des"}), forms = {pret = "anduv", pret_conj = "irreg"} }, { -- asir, desasir match = "asir", -- use 'asgu' because we're in a front environment; if we use 'asg', we'll get '#asjo' forms = {pres1_and_sub = "asgu"} }, { -- abrir, cubrir and compounds match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(brir)$") -- Only match abrir, cubrir and compounds, and don't match desabrir/jabrir if not prefix then return nil elseif not prefix:find("a$") and not prefix:find("cu$") then return nil elseif prefix == "desa" or prefix == "ja" then return nil else return prefix, base_verb end end, forms = {pp = "biert"} }, { match = "caber", forms = {pres1_and_sub = "quep", pret = "cup", pret_conj = "irreg", fut = "cabr"} }, { -- caer, decaer, descaer, recaer match = "caer", -- use 'caigu' because we're in a front environment; if we use 'caig', we'll get '#caijo' forms = {pres1_and_sub = "caigu"} }, { -- cocer, escocer, precocer, etc. match = "cocer", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "ue", pres1 = "cuez", pres_sub_unstressed = "coz", cons_alt = "c-z"}, -- not cozco, as would normally be generated }, { -- dar, desdar match = match_against_verbs("dar", {"", "des"}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_1s = "doy", pres_2s = "dás", pres_3s = "dá", pres_2p = "dáis", pres_3p = "dán", pret = "d", pret_conj = "er", pres_sub_1s = "dé*", -- * signals that the monosyllabic accent must remain pres_sub_2s = "dés", pres_sub_3s = "dé*", pres_sub_2p = "déis", pres_sub_3p = "dén", imp_2s = "dá", } }, { -- decir, redecir, entredecir match = match_against_verbs("decir", {"", "re", "entre"}), forms = { -- for this and variant verbs in -decir, we set cons_alt to false because we don't want the -- verb categorized as a c-zc alternating verb, which would happen by default -- use 'digu' because we're in a front environment; if we use 'dig', we'll get '#dijo' pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir", imp_2s = "dí" -- need the accent for the compounds; it will be removed in the simplex } }, { -- antedecir, interdecir match = match_against_verbs("decir", {"ante", "inter"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir" -- imp_2s regular } }, { -- bendecir, maldecir match = match_against_verbs("decir", {"ben", "mal"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = {"decid", "dit"} -- imp_2s regular, fut regular } }, { -- condecir, contradecir, desdecir, predecir, others? match = "decir", forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = {"decir", "dir"} -- imp_2s regular } }, { match = "^desvaír", forms = { pres_2s = "desvaes", pres_3s = "desvae", pres_3p = "desvaen", imp_2s = "desvae" } }, { -- conducir, producir, reducir, traducir, etc. match = "ducir", forms = {pret = "duj", pret_conj = "irreg"} }, { -- elegir, reelegir; not preelegir, per RAE match = match_against_verbs("elegir", {"", "re"}), forms = {vowel_alt = "i", pp = {"elegid", "elect"}} }, { -- erguir match = "^erguir", forms = { vowel_alt = {"i", "ye-i"}, -- We would not need to make this verb irregular except for the alternative unstressed present subjunctive forms -- in yerg-. We can't use pres_sub_unstressed = {"irgu", "yergu"} because the "i" and "ye-i" vowel alternations -- are e->i raising in the unstressed present subjunctive and we wrongly get irgamos/yirgamos etc. pres_sub_2sv = {"irgás", "yergás"}, pres_sub_1p = {"irgamos", "yergamos"}, pres_sub_2p = {"irgáis", "yergáis"}, }, }, { match = "^estar", forms = { pres_1s = "estoy", pres_2s = "estás", pres_2sv = "estás", pres_3s = "está", pres_3p = "están", pret = "estuv", pret_conj = "irreg", pres_sub_1s = "esté", pres_sub_2s = "estés", pres_sub_2sv = "estés", pres_sub_3s = "esté", pres_sub_3p = "estén", imp_2s = "está", imp_2sv = "está", } }, { -- freír, refreír match = "freír", forms = {vowel_alt = "í", pp = {"freíd", "frit"}} }, { match = "garantir", forms = { pres_stressed = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, pres1_and_sub = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, } }, { match = "^haber", forms = { pres_1s = "he", pres_2s = "has", pres_2sv = "has", pres_3s = {"ha", {form = "hay", footnotes = {"[used impersonally]"}}}, pres_1p = "hemos", pres_3p = "han", pres1_and_sub = "hay", -- only for subjunctive as we override pres_1s pret = "hub", pret_conj = "irreg", imp_2s = {"habe", "he"}, imp_2sv = {"habe", "he"}, fut = "habr", } }, { match = "satisfacer", forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "satisfagu", cons_alt = false, pret = "satisfic", pret_conj = "irreg", pp = "satisfech", fut = "satisfar", imp_2s = {"satisface", "satisfaz"} } }, { match = match_against_verbs("hacer", {"contra", "re"}), -- contrahacer/rehacer require an extra accent in the preterite (rehíce, rehízo). forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "hagu", cons_alt = false, pret = "hic", pret_1s = "híce", pret_3s = "hízo", pret_conj = "irreg", pp = "hech", fut = "har", imp_2s = "haz" } }, { -- hacer, deshacer, contrahacer, rehacer, facer, desfacer, jacer match = function(verb) return rmatch(verb, "^(.*[hjf])(acer)$") end, forms = { -- for these verbs, we set cons_alt to false because we don't want the verb categorized as a -- c-zc alternating verb, which would happen by default -- use 'agu' because we're in a front environment; if we use 'ag', we'll get '#hajo' pres1_and_sub = "agu", cons_alt = false, pret = "ic", pret_conj = "irreg", pp = "ech", fut = "ar", imp_2s = "az" } }, { -- imprimir, reimprimir match = "imprimir", forms = {pp = {"imprimid", "impres"}} }, { -- infecir match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "i", pres1 = "infiz", pres_sub_unstressed = "infez", cons_alt = "c-z"}, -- not infizco, as would normally be generated }, { match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "infez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { match = "^ir", forms = { pres_1s = "voy", pres_2s = "vas", pres_2sv = "vas", pres_3s = "va", pres_1p = "vamos", pres_2p = "vais", pres_3p = "van", pres1_and_sub = "vay", -- only for subjunctive as we override pres_1s full_impf = "ib", impf_1p = "íbamos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", imp_2s = "ve", imp_2sv = "andá", imp_1p = {"vamos", "vayamos"}, refl_imp_2p = {"idos", "iros"}, imp_2p_comb_os = {"idos", "iros"}, } }, { -- mecer, remecer -- we don't want to match e.g. adormecer, estremecer match = match_against_verbs("mecer", {"re", ""}), -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "mez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { -- morir, desmorir, premorir match = "morir", forms = {vowel_alt = "ue-u", pp = "muert"}, }, { -- oír, desoír, entreoír, trasoír match = "oír", -- use 'oigu' because we're in a front environment; if we use 'oig', we'll get '#oijo' forms = {pres1_and_sub = "oigu"} }, { match = "olver", -- solver, volver, bolver and derivatives forms = {vowel_alt = "ue", pp = "uelt"} }, { -- placer, desplacer match = "placer", forms = { pret_3s = {"plació", {form = "plugo", footnotes = {"[archaic]"}}}, pret_3p = {"placieron", {form = "pluguieron", footnotes = {"[archaic]"}}}, pres_sub_3s = {"plazca", {form = "plega", footnotes = {"[archaic]"}}, {form = "plegue", footnotes = {"[archaic]"}}}, impf_sub_ra_3s = {"placiera", {form = "pluguiera", footnotes = {"[archaic]"}}}, impf_sub_ra_3p = {"placieran", {form = "pluguieran", footnotes = {"[archaic]"}}}, impf_sub_se_3s = {"placiese", {form = "pluguiese", footnotes = {"[archaic]"}}}, impf_sub_se_3p = {"placiesen", {form = "pluguiesen", footnotes = {"[archaic]"}}}, fut_sub_3s = {"placiere", {form = "pluguiere", footnotes = {"[archaic]"}}}, fut_sub_3p = {"placieren", {form = "pluguieren", footnotes = {"[archaic]"}}}, } }, { match = "poder", forms = {vowel_alt = "ue", pret = "pud", pret_conj = "irreg", fut = "podr", gerund = "pudiendo"} }, { -- poner, componer, deponer, imponer, oponer, suponer, many others match = "poner", forms = { -- use 'pongu' because we're in a front environment; if we use 'pong', we'll get '#ponjo' pres1_and_sub = "pongu", pret = "pus", pret_conj = "irreg", fut = "pondr", pp = "puest", imp_2s = "pón" -- need the accent for the compounds; it will be removed in the simplex } }, { -- proveer, desproveer match = "proveer", forms = {pp = {"provist", "proveíd"}}, }, { match = "pudrir", forms = {pp = "podrid"} }, { -- querer, desquerer, malquerer match = "querer", forms = {vowel_alt = "ie", pret = "quis", pret_conj = "irreg", fut = "querr"} }, { match = "^raer", -- use 'raigu' because we're in a front environment; if we use 'raig', we'll get '#raijo' forms = {pres1_and_sub = {"raigu", "ray"}} }, { -- roer, corroer match = "roer", -- use 'roigu' because we're in a front environment; if we use 'roig', we'll get '#roijo' forms = {pres1_and_sub = {"ro", "roigu", "roy"}} }, { -- romper, entrerromper, arromper, derromper; not corromper; FIXME: not sure about interromper (obsolete) match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(romper)$") -- Don't match corromper if prefix == "cor" then return nil else return prefix, base_verb end end, forms = {pp = "rot"} }, { -- saber, resaber match = "saber", forms = { pres_1s = "sé*", -- * signals that the monosyllabic accent must remain pres1_and_sub = "sep", -- only for subjunctive as we override pres_1s pret = "sup", pret_conj = "irreg", fut = "sabr", } }, { match = "salir", forms = { -- use 'salgu' because we're in a front environment; if we use 'salg', we'll get '#saljo' pres1_and_sub = "salgu", fut = "saldr", imp_2s = "sal", -- These don't exist per the RAE. imp_2s_comb_lo = {}, imp_2s_comb_los = {}, imp_2s_comb_la = {}, imp_2s_comb_las = {}, imp_2s_comb_le = {}, imp_2s_comb_les = {}, }, }, { match = "scribir", -- escribir, describir, proscribir, etc. forms = {pp = {"scrit", {form = "script", footnotes = {"[Argentina and Uruguay]"}}}} }, { match = "^ser", forms = { pres_1s = "soy", pres_2s = "eres", pres_2sv = "sos", pres_3s = "es", pres_1p = "somos", pres_2p = "sois", pres_3p = "son", pres1_and_sub = "se", -- only for subjunctive as we override pres_1s full_impf = "er", impf_1p = "éramos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", fut = "ser", imp_2s = "sé*", -- * signals that the monosyllabic accent must remain imp_2sv = "sé*", } }, { match = "^soler", forms = { vowel_alt = "ue", fut = {{form = "soler", footnotes = {"[rare but acceptable]"}}}, fut_sub = {{form = "sol", footnotes = {"[rare but acceptable]"}}}, pp = {{form = "solid", footnotes = {"[rare but acceptable]"}}}, } }, { -- tener, abstener, contener, detener, obtener, sostener, and many others match = "tener", forms = { -- use 'tengu' because we're in a front environment; if we use 'teng', we'll get '#tenjo' pres1_and_sub = "tengu", vowel_alt = "ie", pret = "tuv", pret_conj = "irreg", fut = "tendr", imp_2s = "tén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- traer, atraer, detraer, distraer, extraer, sustraer, and many others match = "traer", -- use 'traigu' because we're in a front environment; if we use 'traig', we'll get '#traijo' forms = {pres1_and_sub = "traigu", pret = "traj", pret_conj = "irreg"} }, { -- valer, equivaler, prevaler match = "valer", -- use 'valgu' because we're in a front environment; if we use 'valg', we'll get '#valjo' forms = {pres1_and_sub = "valgu", fut = "valdr"} }, { match = "venir", forms = { -- use 'vengu' because we're in a front environment; if we use 'veng', we'll get '#venjo' pres1_and_sub = "vengu", vowel_alt = "ie-i", pret = "vin", pret_conj = "irreg", -- uniquely for this verb, pres sub 2sv/1p/2p do not raise the vowel even though we are an -- e-ie-i verb (contrast sentir -> sintamos/sintáis) pres_sub_2sv = "vengás", pres_sub_1p = "vengamos", pres_sub_2p = "vengáis", fut = "vendr", imp_2s = "vén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- We want to match antever etc. but not atrever etc. No way to avoid listing each verb. match = match_against_verbs("ver", {"ante", "entre", "pre", "re", "tras", ""}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_2s = "vés", pres_2sv = "vés", pres_3s = "vé", pres_2p = "véis", pres_3p = "vén", pres1_and_sub = "ve", impf = "ve", pp = "vist", imp_2s = "vé" -- need the accent for the compounds; it will be removed in the simplex } }, { -- yacer, adyacer, subyacer match = "yacer", -- use 'yazqu/yazgu/yagu' because we're in a front environment; see 'decir' above forms = {pres1_and_sub = {"yazqu", "yazgu", "yagu"}, imp_2s = {"yace", "yaz"}} }, } local reflexive_masc_forms = { ["su"] = {"mi", "tu", "su", "nuestro", "vuestro", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestros", "vuestros", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotros", "vosotros", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotros", "con vosotros", "consigo"}, } local reflexive_fem_forms = { ["su"] = {"mi", "tu", "su", "nuestra", "vuestra", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestras", "vuestras", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotras", "vosotras", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotras", "con vosotras", "consigo"}, } local reflexive_forms = { ["se"] = {"me", "te", "se", "nos", "os", "se"}, ["suyo"] = {"mío", "tuyo", "suyo", "nuestro", "vuestro", "suyo"}, ["suya"] = {"mía", "tuya", "suya", "nuestra", "vuestra", "suya"}, ["suyos"] = {"míos", "tuyos", "suyos", "nuestros", "vuestros", "suyos"}, ["suyas"] = {"mías", "tuyas", "suyas", "nuestras", "vuestras", "suyas"}, } local function skip_slot(base, slot, allow_overrides) if not allow_overrides and (base.basic_overrides[slot] or base.combined_overrides[slot] or base.refl and base.basic_reflexive_only_overrides[slot]) then -- Skip any slots for which there are overrides. return true end if base.only3s and (slot:find("^pp_f") or slot:find("^pp_mp")) then -- diluviar, atardecer, neviscar; impersonal verbs have only masc sing pp return true end if not slot:find("[123]") then -- Don't skip non-personal slots. return false end if base.nofinite then return true end if (base.only3s or base.only3sp or base.only3p) and (slot:find("^imp_") or slot:find("^neg_imp_")) then return true end if base.only3s and not slot:find("3s") then -- diluviar, atardecer, neviscar return true end if base.only3sp and not slot:find("3[sp]") then -- atañer, concernir return true end if base.only3p and not slot:find("3p") then -- [[caer cuatro gotas]], [[caer chuzos de punta]], [[entrarle los siete males]] return true end return false end -- Add the `stem` to the `ending` for the given `slot` and apply any phonetic modifications. -- `is_combining_ending` is true if `ending` is actually the ending (this function is also -- called to combine prefix + stem). WARNING: This function is written very carefully; changes -- to it can easily have unintended consequences. local function combine_stem_ending(base, slot, stem, ending, is_combining_ending) if not is_combining_ending then return stem .. ending end if base.stems.raising_conj and (rfind(ending, "^i" .. V) or slot == "pres_sub_1p" or slot == "pres_sub_2p" or slot == "pres_sub_2sv") then -- need to raise e -> i, o -> u: dormir -> durmió, durmiera, durmiendo, durmamos stem = rsub(stem, "([eo])(" .. C .. "*)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) -- also with stem ending in -gu or -qu (e.g. erguir -> irguió, irguiera, irguiendo, irgamos) stem = rsub(stem, "([eo])(" .. C .. "*[gq]u)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) end -- Lots of sound changes involving endings beginning with i + vowel if rfind(ending, "^i" .. V) then -- (1) final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; note that this rule may be fed -- by the preceding one (stem sonre- raised to sonri-, then final i absorbed) stem = stem:gsub("i$", "") -- (2) In the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. -- imperfect and future subjunctive), initial i absorbed after j (dijeron not #dijieron, likewise for -- condujeron, trajeron) and u (fueron not #fuyeron). Does not apply in regular verb tejer (tejieron not -- #tejeron) and concluir (concluyeron not #conclueron). if base.stems.pret_conj == "irreg" and rfind(stem, "[ju]$") then ending = ending:gsub("^i", "") end -- (3) initial i -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; -- concluir -> concluyó, concluyera, concluyendo; ir -> yendo; but not conseguir/delinquir if stem == "" or (rfind(stem, V .. "$") and not rfind(stem, "[gq]u$")) then ending = ending:gsub("^i", "y") end -- (4) -gü + ie- -> -guye-: argüir -> arguyó, arguyera, arguyendo if stem:find("gü$") then -- transfer the y to the stem to avoid gü -> gu below in front/back conversions stem = stem:gsub("ü$", "uy") ending = ending:gsub("^i", "") end -- (5) initial i absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo if rfind(stem, "[ñy]$") or rfind(stem, "ll$") then ending = ending:gsub("^i", "") end end -- If ending begins with i, it must get an accent after a/e/i/o to prevent the two merging into a diphthong: -- caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. -- concluir -> concluiste, concluimos. if ending:find("^i") and stem:find("[aeio]$") then ending = ending:gsub("^i", "í") end -- If -oír/-uir (i.e. -ir with stem ending in -o/u, e.g. oír, concluir), a y must be added before endings -- beginning with a/e/o. Check for base.stems.pret_conj == "irreg" to exclude stem fu- of [[ir]]. if base.conj == "ir" and rfind(ending, "^[aeoáéó]") and base.stems.pret_conj ~= "irreg" then if rfind(stem, "[aoú]$") then -- oír -> oye, rehuir -> rehúyo/rehúye (with indicator 'ú') stem = stem .. "y" elseif rfind(stem, "[^gq]u$") then -- concluir, but not conseguir or delinquir stem = stem .. "y" elseif stem:find("ü$") then -- argüir -> arguyendo stem = stem:gsub("ü$", "uy") end end -- Spelling changes in the stem; it depends on whether the stem given is the pre-front-vowel or -- pre-back-vowel variant, as indicated by `frontback`. We want these front-back spelling changes to happen -- between stem and ending, not between prefix and stem; the prefix may not have the same "front/backness" -- as the stem. local is_front = rfind(ending, "^[eiéí]") if base.frontback == "front" and not is_front then -- parecer -> parezco, conducir -> conduzco; use zqu to avoid triggering the following gsub(); -- the third line will replace zqu -> zc if slot ~= "pret_3s" then -- exclude hice -> hizo (not #hizco) stem = rsub(stem, "(" .. V .. ")c$", "%1zqu") end stem = stem:gsub("sc$", "squ") -- evanescer -> evanesco, fosforescer -> fosforesco stem = stem:gsub("c$", "z") -- ejercer -> ejerzo, uncir -> unzo stem = stem:gsub("qu$", "c") -- delinquir -> delinco, parecer -> parezqu- -> parezco stem = stem:gsub("g$", "j") -- coger -> cojo, afligir -> aflijo stem = stem:gsub("gu$", "g") -- distinguir -> distingo stem = stem:gsub("gü$", "gu") -- may not occur; argüir -> arguyo handled above elseif base.frontback == "back" and is_front then stem = stem:gsub("gu$", "gü") -- averiguar -> averigüé stem = stem:gsub("g$", "gu") -- cargar -> cargué stem = stem:gsub("c$", "qu") -- marcar -> marqué stem = rsub(stem, "[çz]$", "c") -- aderezar/adereçar -> aderecé end return stem .. ending end local function check_stems_for_suppress_prefix(slot, stems) -- Check whether any or all stems have `suppress_prefix`. local any_suppress_prefix = false local any_not_suppress_prefix = false if type(stems) == "table" then if stems.suppress_prefix then -- A single form object. any_suppress_prefix = true else for _, stem in ipairs(stems) do if type(stem) == "table" and stem.suppress_prefix then any_suppress_prefix = true else any_not_suppress_prefix = true end end end else any_not_suppress_prefix = true end if any_suppress_prefix and any_not_suppress_prefix then -- This should never happen because suppress_prefix is set on user-specified stem and individual form -- overrides, which should completely replace built-in overrides (which don't have suppress_prefix). error("Internal error: For slot '" .. slot .. ", saw a mixture of suppress-prefix and non-suppress-prefix stems, and can't handle") else return any_suppress_prefix end end local function add(base, slot, stems, endings, is_combining_ending, allow_overrides) if skip_slot(base, slot, allow_overrides) then return end local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end iut.add_forms(base.forms, slot, stems, endings, do_combine_stem_ending, nil, nil, base.all_footnotes) end local function add3(base, slot, stems, endings, allow_overrides) local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, stems) if suppress_prefix then return add(base, slot, stems, endings, "is combining ending", allow_overrides) end if skip_slot(base, slot, allow_overrides) then return end local is_combining_ending = false local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end -- Have to reimplement add_multiple_forms() ourselves due to the is_combining_ending -- flag, which needs to be different when adding prefix to stems vs. stems to ending. -- Otherwise we get e.g. #reímpreso instead of reimpreso. local tempdest = {} iut.add_forms(tempdest, slot, base.prefix, stems, do_combine_stem_ending) is_combining_ending = true iut.add_forms(base.forms, slot, tempdest[slot], endings, do_combine_stem_ending) end local function insert_form(base, slot, form) if not skip_slot(base, slot) then iut.insert_form(base.forms, slot, form) end end local function insert_forms(base, slot, forms) if not skip_slot(base, slot) then iut.insert_forms(base.forms, slot, forms) end end local function add_single_stem_tense(base, slot_pref, stems, s1, s2, s3, p1, p2, p3) local function addit(slot, ending) add3(base, slot_pref .. "_" .. slot, stems, ending) end addit("1s", s1) addit("2s", s2) addit("3s", s3) addit("1p", p1) addit("2p", p2) addit("3p", p3) end local function add_present_indic(base) local function addit(slot, stems, ending) add3(base, "pres_" .. slot, stems, ending) end local s2, s2v, s3, p1, p2, p3 if base.conj == "ar" then s2, s2v, s3, p1, p2, p3 = "as", "ás", "a", "amos", "áis", "an" elseif base.conj == "er" then s2, s2v, s3, p1, p2, p3 = "es", "és", "e", "emos", "éis", "en" elseif base.conj == "ir" then s2, s2v, s3, p1, p2, p3 = "es", "ís", "e", "imos", "ís", "en" else error("Internal error: Unrecognized conjugation " .. base.conj) end addit("1s", base.stems.pres1, "o") addit("2s", base.stems.pres_stressed, s2) addit("2sv", base.stems.pres_unstressed, s2v) addit("3s", base.stems.pres_stressed, s3) addit("1p", base.stems.pres_unstressed, p1) addit("2p", base.stems.pres_unstressed, p2) addit("3p", base.stems.pres_stressed, p3) end local function add_present_subj(base) local function addit(slot, stems, ending) add3(base, "pres_sub_" .. slot, stems, ending) end local s1, s2, s2v, s3, p1, p2, p3, voseo_stem if base.conj == "ar" then s1, s2, s2v, s3, p1, p2, p3 = "e", "es", "és", "e", "emos", "éis", "en" else s1, s2, s2v, s3, p1, p2, p3 = "a", "as", "ás", "a", "amos", "áis", "an" end addit("1s", base.stems.pres_sub_stressed, s1) addit("2s", base.stems.pres_sub_stressed, s2) addit("2sv", base.stems.pres_sub_unstressed, s2v) addit("3s", base.stems.pres_sub_stressed, s3) addit("1p", base.stems.pres_sub_unstressed, p1) addit("2p", base.stems.pres_sub_unstressed, p2) addit("3p", base.stems.pres_sub_stressed, p3) end local function add_imper(base) local function addit(slot, stems, ending) add3(base, "imp_" .. slot, stems, ending) end if base.conj == "ar" then addit("2s", base.stems.pres_stressed, "a") addit("2sv", base.stems.pres_unstressed, "á") addit("2p", base.stems.pres_unstressed, "ad") elseif base.conj == "er" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "é") addit("2p", base.stems.pres_unstressed, "ed") elseif base.conj == "ir" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "í") addit("2p", base.stems.pres_unstressed, "id") else error("Internal error: Unrecognized conjugation " .. base.conj) end end local function add_finite_non_present(base) local function add_tense(slot, stem, s1, s2, s3, p1, p2, p3) add_single_stem_tense(base, slot, stem, s1, s2, s3, p1, p2, p3) end local stems = base.stems if stems.full_impf then -- An override needs to be supplied for the impf_1p due to the accent on the stem. add_tense("impf", stems.full_impf, "a", "as", "a", {}, "ais", "an") elseif base.conj == "ar" then add_tense("impf", stems.impf, "aba", "abas", "aba", "ábamos", "abais", "aban") else add_tense("impf", stems.impf, "ía", "ías", "ía", "íamos", "íais", "ían") end if stems.pret_conj == "irreg" then add_tense("pret", stems.pret, "e", "iste", "o", "imos", "isteis", "ieron") elseif stems.pret_conj == "ar" then add_tense("pret", stems.pret, "é", "aste", "ó", "amos", "asteis", "aron") else add_tense("pret", stems.pret, "í", "iste", "ió", "imos", "isteis", "ieron") end if stems.pret_conj == "ar" then add_tense("impf_sub_ra", stems.impf_sub_ra, "ara", "aras", "ara", "áramos", "arais", "aran") add_tense("impf_sub_se", stems.impf_sub_se, "ase", "ases", "ase", "ásemos", "aseis", "asen") add_tense("fut_sub", stems.fut_sub, "are", "ares", "are", "áremos", "areis", "aren") else add_tense("impf_sub_ra", stems.impf_sub_ra, "iera", "ieras", "iera", "iéramos", "ierais", "ieran") add_tense("impf_sub_se", stems.impf_sub_se, "iese", "ieses", "iese", "iésemos", "ieseis", "iesen") add_tense("fut_sub", stems.fut_sub, "iere", "ieres", "iere", "iéremos", "iereis", "ieren") end add_tense("fut", stems.fut, "é", "ás", "á", "emos", "éis", "án") add_tense("cond", stems.cond, "ía", "ías", "ía", "íamos", "íais", "ían") end local function add_non_finite_forms(base) local stems = base.stems local function addit(slot, stems, ending) add3(base, slot, stems, ending) end insert_form(base, "infinitive", {form = base.verb}) -- Also insert "infinitive + reflexive pronoun" combinations if we're handling a reflexive verb. See comment below for -- "gerund + reflexive pronoun" combinations. if base.refl then for _, persnum in ipairs(person_number_list_basic) do insert_form(base, "infinitive_" .. persnum, {form = base.verb}) end end local ger_ending = base.conj == "ar" and "ando" or "iendo" addit("gerund", stems.pres_unstressed, ger_ending) -- Also insert "gerund + reflexive pronoun" combinations if we're handling a reflexive verb. We insert exactly the same -- form as for the bare gerund; later on in add_reflexive_or_fixed_clitic_to_forms(), we add the appropriate clitic -- pronouns. It's important not to do this for non-reflexive verbs, because in that case, the clitic pronouns won't be -- added, and {{es-verb form of}} will wrongly consider all these combinations as possible inflections of the bare -- gerund. Thanks to [[User:JeffDoozan]] for this bug fix. if base.refl then for _, persnum in ipairs(person_number_list_basic) do addit("gerund_" .. persnum, stems.pres_unstressed, ger_ending) end end addit("pp_ms", stems.pp, "o") addit("pp_fs", stems.pp, "a") addit("pp_mp", stems.pp, "os") addit("pp_fp", stems.pp, "as") end local function copy_subjunctives_to_imperatives(base) -- Copy subjunctives to imperatives, unless there's an override for the given slot (as with the imp_1p of [[ir]]). for _, persnum in ipairs({"3s", "1p", "3p"}) do local from = "pres_sub_" .. persnum local to = "imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) return form end)) end end -- Remove monosyllabic accents (e.g. the 3sg preterite of fiar is fio not #fió). Note that there are a -- few monosyllabic verb forms that intentionally have an accent, to distinguish them from other words -- with the same pronunciation. These are as follows: -- (1) [[sé]] 1sg present indicative of [[saber]]; -- (2) [[sé]] 2sg imperative of [[ser]]; -- (3) [[dé]] 1sg and 3sg present subjunctive of [[dar]]. -- For these, a * is added, which indicates that the accent needs to remain. If we see such a *, we remove -- it but otherwise leave the form alone. local function remove_monosyllabic_accents(base) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) if base.forms[slot] then for _, form in ipairs(base.forms[slot]) do if form.form:find("%*") then -- * means leave alone any accented vowel form.form = form.form:gsub("%*", "") elseif may_need_monosyllabic_accent_removed(form.form) then -- Has an accented vowel and no VCV sequence and not a suffix; may be monosyllabic, in which -- case we need to remove the accent. Check # of syllables and remove accent if only 1. Note -- that the checks for accented vowel and VCV sequence are not strictly needed, but are -- optimizations to avoid running the whole syllabification algorithm on every verb form. local syllables = com.syllabify(form.form) if #syllables == 1 then form.form = com.remove_accent_from_syllable(syllables[1]) end end end end end end -- Add the appropriate clitic pronouns in `clitics` to the forms in `base_slot`. `store_cliticized_form` is a function -- of three arguments (clitic, formobj, cliticized_form) and should store the cliticized form for the specified clitic -- and form object. local function add_forms_with_clitic(base, base_slot, clitics, store_cliticized_form) -- the special slot lxx is for le/les clitics that become "se" in double clitics if base_slot:match("_comb_lxx$") then base_slot = base_slot:gsub("_comb_lxx$", "_comb_le") end if not base.forms[base_slot] then mw.log("unhandled base_slot " .. base_slot) -- This can happen, e.g. in only3s/only3sp/only3p verbs. return end for _, formobj in ipairs(base.forms[base_slot]) do -- Figure out the correct accenting of the verb when a clitic pronoun is attached to it. We may need to -- add or remove an accent mark: -- (1) No accent mark currently, none needed: infinitive sentar -> sentarlo; imperative singular ten -> tenlo; -- (2) Accent mark currently, still needed: infinitive oír -> oírlo; -- (3) No accent mark currently, accent needed: imperative singular siente -> siéntelo; -- (4) Accent mark currently, not needed: imperative singular está -> estalo, sé -> selo. local syllables = com.syllabify(formobj.form) local sylno = com.stressed_syllable(syllables) table.insert(syllables, "lo") local needs_accent = com.accent_needed(syllables, sylno) if needs_accent then syllables[sylno] = com.add_accent_to_syllable(syllables[sylno]) else syllables[sylno] = com.remove_accent_from_syllable(syllables[sylno]) end table.remove(syllables) -- remove added clitic pronoun local reaccented_form = table.concat(syllables) for _, clitic in ipairs(clitics) do local cliticized_form -- Some further special cases. if base_slot == "imp_1p" and (clitic == "nos" or clitic == "os") then -- Final -s disappears: sintamos + nos -> sintámonos, sintamos + os -> sintámoos cliticized_form = reaccented_form:gsub("s$", "") .. clitic elseif base_slot == "imp_2p" and clitic == "os" then -- Final -d disappears, which may cause an accent to be required: -- haced + os -> haceos, sentid + os -> sentíos if reaccented_form:find("id$") then cliticized_form = reaccented_form:gsub("id$", "íos") else cliticized_form = reaccented_form:gsub("d$", "os") end else cliticized_form = reaccented_form .. clitic end store_cliticized_form(clitic, formobj, cliticized_form) end end end -- Generate the combinations of verb form (infinitive, gerund or various imperatives) + clitic pronoun. local function add_combined_forms(base) for _, base_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_combined_rows) do local base_slot, clitics = unpack(base_slot_and_clitics) add_forms_with_clitic(base, base_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, base_slot .. "_comb_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end for _, single_comb_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_double_combined_rows) do local single_comb_slot, clitics = unpack(single_comb_slot_and_clitics) -- Handle le -> se transformation for double clitics if single_comb_slot:match("_comb_lxx$") then add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) -- Only add se version for accusative clitics (lo/la/los/las) if clitic:match("^l[aeo]") then cliticized_form = cliticized_form:gsub("le" .. clitic .. "$", "se" .. clitic) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end end ) end add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end end local function process_slot_overrides(base, do_basic, reflexive_only) local overrides = reflexive_only and base.basic_reflexive_only_overrides or do_basic and base.basic_overrides or base.combined_overrides for slot, forms in pairs(overrides) do local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, forms) add(base, slot, suppress_prefix and "" or base.prefix, forms, false, "allow overrides") end end -- Prefix `form` with `clitic`, adding fixed text `between` between them. Add links as appropriate unless the user -- requested no links. Check whether form already has brackets (as will be the case if the form has a fixed clitic). local function add_clitic_to_form(base, clitic, between, form) if base.alternant_multiword_spec.args.noautolinkverb then return clitic .. between .. form else local clitic_pref = "[[" .. clitic .. "]]" .. between if form:find("%[%[") then return clitic_pref .. form else return clitic_pref .. "[[" .. form .. "]]" end end end -- Add a reflexive pronoun or fixed clitic, e.g. [[lo]], as appropriate to the base form that were generated. -- `do_joined` means to do only the forms where the pronoun is joined to the end of the form; otherwise, do only the -- forms where it is not joined and precedes the form. local function add_reflexive_or_fixed_clitic_to_forms(base, do_reflexive, do_joined) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) local clitic if not do_reflexive then clitic = base.clitic elseif slot:find("[123]") then local persnum = slot:match("^.*_(.-)$") clitic = person_number_to_reflexive_pronoun[persnum] else clitic = "se" end if base.forms[slot] then if do_reflexive and slot:find("^pp_") or slot == "infinitive_linked" then -- do nothing with reflexive past participles or with infinitive linked (handled at the end) elseif slot:find("^neg_imp_") then error("Internal error: Should not have forms set for negative imperative at this stage") else local slot_has_suffixed_clitic = slot:find("infinitive") or slot:find("gerund") or slot:find("^imp_") -- Maybe generate non-reflexive parts and separated syntactic variants for use in {{es-verb form of}}. -- See comment in add_slots() above `need_special_verb_form_of_slots`. Check for do_joined so we only -- run this code once. if do_reflexive and do_joined and base.alternant_multiword_spec.source_template == "es-verb form of" and -- Skip personal variants of infinitives and gerunds so we don't think [[jambando]] is a -- non-reflexive equivalent of [[jambándome]]. not slot:find("infinitive_") and not slot:find("gerund_") then -- Clone the forms because we will be destructively modifying them just below, adding the reflexive -- pronoun. insert_forms(base, slot .. "_non_reflexive", mw.clone(base.forms[slot])) if slot_has_suffixed_clitic then insert_forms(base, slot .. "_variant", iut.map_forms(base.forms[slot], function(form) return add_clitic_to_form(base, clitic, " ... ", form) end)) end end if slot_has_suffixed_clitic then if do_joined then add_forms_with_clitic(base, slot, {clitic}, function(clitic, formobj, cliticized_form) formobj.form = cliticized_form end ) end elseif not do_joined then -- Add clitic as separate word before all other forms. for _, form in ipairs(base.forms[slot]) do form.form = add_clitic_to_form(base, clitic, " ", form.form) end end end end end end local function handle_infinitive_linked(base) -- Compute linked versions of potential lemma slots, for use in {{es-verb}}. -- We substitute the original lemma (before removing links) for forms that -- are the same as the lemma, if the original lemma has links. for _, slot in ipairs({"infinitive"}) do insert_forms(base, slot .. "_linked", iut.map_forms(base.forms[slot], function(form) if form == base.lemma and rfind(base.linked_lemma, "%[%[") then return base.linked_lemma else return form end end)) end end local function generate_negative_imperatives(base) -- Copy subjunctives to negative imperatives, preceded by "no". for _, persnum in ipairs(neg_imp_person_number_list) do local from = "pres_sub_" .. persnum local to = "neg_imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) if base.alternant_multiword_spec.args.noautolinkverb then return "no " .. form elseif form:find("%[%[") then -- already linked, e.g. when reflexive return "[[no]] " .. form else return "[[no]] [[" .. form .. "]]" end end)) end end -- Process specs given by the user using 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'. local function process_addnote_specs(base) for _, spec in ipairs(base.addnote_specs) do for _, slot_spec in ipairs(spec.slot_specs) do slot_spec = "^" .. slot_spec .. "$" for slot, forms in pairs(base.forms) do if rfind(slot, slot_spec) then -- To save on memory, side-effect the existing forms. for _, form in ipairs(forms) do form.footnotes = iut.combine_footnotes(form.footnotes, spec.footnotes) end end end end end end local function add_missing_links_to_forms(base) -- Any forms without links should get them now. Redundant ones will be stripped later. for slot, forms in pairs(base.forms) do for _, form in ipairs(forms) do if not form.form:find("%[%[") then form.form = "[[" .. form.form .. "]]" end end end end local function conjugate_verb(base) add_present_indic(base) add_present_subj(base) add_imper(base) add_finite_non_present(base) add_non_finite_forms(base) -- This should happen before add_combined_forms() so overrides of basic forms end up part of the combined forms. process_slot_overrides(base, "do basic") -- do basic slot overrides -- This should happen after process_slot_overrides() in case a derived slot is based on an override (as with the -- imp_3s of [[dar]], [[estar]]). copy_subjunctives_to_imperatives(base) -- This should happen after process_slot_overrides() because overrides may have accents in them that need to be -- removed. (This happens e.g. for most present indicative forms of [[ver]], which have accents in them for the -- prefixed derived verbs, but the accents shouldn't be present in the base verb.) remove_monosyllabic_accents(base) if not base.nocomb then add_combined_forms(base) end -- We need to add joined reflexives, then joined and non-joined clitics, then non-joined reflexives, so we get -- [[házmelo]] but [[no]] [[me]] [[lo]] [[haga]]. if base.refl then -- This should happen after remove_monosyllabic_accents() so the * marking the preservation of monosyllabic -- accents doesn't end up in the middle of a word. add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", "do joined") process_slot_overrides(base, "do basic", "do reflexive") -- do reflexive-only basic slot overrides end if base.clitic then -- This should happen after reflexives are added. add_reflexive_or_fixed_clitic_to_forms(base, false, "do joined") add_reflexive_or_fixed_clitic_to_forms(base, false, false) end if base.refl then add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", false) end -- This should happen after add_reflexive_or_fixed_clitic_to_forms() so negative imperatives get the reflexive pronoun -- and clitic in them. generate_negative_imperatives(base) if not base.nocomb then process_slot_overrides(base, false) -- do combined slot overrides end -- This should happen before add_missing_links_to_forms() so that the comparison `form == base.lemma` -- in handle_infinitive_linked() works correctly and compares unlinked forms to unlinked forms. handle_infinitive_linked(base) process_addnote_specs(base) if not base.alternant_multiword_spec.args.noautolinkverb then add_missing_links_to_forms(base) end end local function parse_indicator_spec(angle_bracket_spec) -- Store the original angle bracket spec so we can reconstruct the overall conj spec with the lemma(s) in them. local base = { angle_bracket_spec = angle_bracket_spec, user_basic_overrides = {}, user_stems = {}, addnote_specs = {}, } local function parse_err(msg) error(msg .. ": " .. angle_bracket_spec) end local function fetch_footnotes(separated_group) local footnotes for j = 2, #separated_group - 1, 2 do if separated_group[j + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(separated_group) .. "'") end if not footnotes then footnotes = {} end table.insert(footnotes, separated_group[j]) end return footnotes end local inside = angle_bracket_spec:match("^<(.*)>$") assert(inside) if inside == "" then return base end local segments = put.parse_balanced_segment_run(inside, "[", "]") local dot_separated_groups = put.split_alternating_runs(segments, "%.") for i, dot_separated_group in ipairs(dot_separated_groups) do local first_element = dot_separated_group[1] if first_element == "addnote" then local spec_and_footnotes = fetch_footnotes(dot_separated_group) if #spec_and_footnotes < 2 then parse_err("Spec with 'addnote' should be of the form 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'") end local slot_spec = table.remove(spec_and_footnotes, 1) local slot_spec_inside = rmatch(slot_spec, "^%[(.*)%]$") if not slot_spec_inside then parse_err("Internal error: slot_spec " .. slot_spec .. " should be surrounded with brackets") end local slot_specs = rsplit(slot_spec_inside, ",") -- FIXME: Here, [[Module:it-verb]] called strip_spaces(). Generally we don't do this. Should we? table.insert(base.addnote_specs, {slot_specs = slot_specs, footnotes = spec_and_footnotes}) elseif indicator_flags[first_element] then if #dot_separated_group > 1 then parse_err("No footnotes allowed with '" .. first_element .. "' spec") end if base[first_element] then parse_err("Spec '" .. first_element .. "' specified twice") end base[first_element] = true elseif rfind(first_element, ":") then local colon_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*:%s*") local first_element = colon_separated_groups[1][1] if #colon_separated_groups[1] > 1 then parse_err("Can't attach footnotes directly to '" .. first_element .. "' spec; attach them to the " .. "colon-separated values following the initial colon") end if overridable_stems[first_element] then if base.user_stems[first_element] then parse_err("Overridable stem '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_stems[first_element] = overridable_stems[first_element](colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}) else -- assume a basic override; we validate further later when the possible slots are available if base.user_basic_overrides[first_element] then parse_err("Basic override '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_basic_overrides[first_element] = allow_multiple_values_for_override( colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}, "add monosyllabic asterisk" ) end else local comma_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*,%s*") for j = 1, #comma_separated_groups do local alt = comma_separated_groups[j][1] if not vowel_alternants[alt] then if #comma_separated_groups == 1 then parse_err("Unrecognized spec or vowel alternant '" .. alt .. "'") else parse_err("Unrecognized vowel alternant '" .. alt .. "'") end end if base.vowel_alt then for _, existing_alt in ipairs(base.vowel_alt) do if existing_alt.form == alt then parse_err("Vowel alternant '" .. alt .. "' specified twice") end end else base.vowel_alt = {} end table.insert(base.vowel_alt, {form = alt, footnotes = fetch_footnotes(comma_separated_groups[j])}) end end end return base end -- Normalize all lemmas, substituting the pagename for blank lemmas and adding links to multiword lemmas. local function normalize_all_lemmas(alternant_multiword_spec, pagename) -- (1) Add links to all before and after text. Remember the original text so we can reconstruct the verb spec later. if not alternant_multiword_spec.args.noautolinktext then iut.add_links_to_before_and_after_text(alternant_multiword_spec, "remember original") end -- (2) Remove any links from the lemma, but remember the original form -- so we can use it below in the 'lemma_linked' form. iut.map_word_specs(alternant_multiword_spec, function(base) if base.lemma == "" then base.lemma = pagename end base.user_specified_lemma = base.lemma base.lemma = m_links.remove_links(base.lemma) local refl_verb, clitic = rmatch(base.lemma, "^(.-)(l[aeo]s?)$") if not refl_verb then refl_verb, clitic = base.lemma, nil end local verb, refl = rmatch(refl_verb, "^(.-)(se)$") if not verb then verb, refl = refl_verb, nil end base.user_specified_verb = verb base.refl = refl base.clitic = clitic if base.refl and base.clitic then -- We have to parse the verb suffix to see how to construct the base verb; e.g. -- abrírsela -> abrir but oírsela -> oír. We parse the verb suffix again in all cases -- in detect_indicator_spec(), after splitting off the prefix of irrregular verbs. local actual_verb local inf_stem, suffix = rmatch(base.user_specified_verb, "^(.*)([aáeéií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.user_specified_verb) end if suffix == "ír" and inf_stem:find("[aeo]$") then -- accent on suffix should remain base.verb = base.user_specified_verb else base.verb = inf_stem .. com.remove_accent_from_syllable(suffix) end else base.verb = base.user_specified_verb end local linked_lemma if alternant_multiword_spec.args.noautolinkverb or base.user_specified_lemma:find("%[%[") then linked_lemma = base.user_specified_lemma elseif base.refl or base.clitic then -- Reconstruct the linked lemma with separate links around base verb, reflexive pronoun and clitic. linked_lemma = base.user_specified_verb == base.verb and "[[" .. base.user_specified_verb .. "]]" or "[[" .. base.verb .. "|" .. base.user_specified_verb .. "]]" linked_lemma = linked_lemma .. (refl and "[[" .. refl .. "]]" or "") .. (clitic and "[[" .. clitic .. "]]" or "") else -- Add links to the lemma so the user doesn't specifically need to, since we preserve -- links in multiword lemmas and include links in non-lemma forms rather than allowing -- the entire form to be a link. linked_lemma = iut.add_links(base.user_specified_lemma) end base.linked_lemma = linked_lemma end) end local function construct_stems(base) local stems = base.stems stems.pres_unstressed = stems.pres_unstressed or base.inf_stem stems.pres_stressed = stems.pres_stressed or -- If no_pres_stressed given, pres_stressed stem should be empty so no forms are generated. base.no_pres_stressed and {} or base.vowel_alt or base.inf_stem stems.pres1_and_sub = stems.pres1_and_sub or -- If no_pres_stressed given, the entire subjunctive is missing. base.no_pres_stressed and {} or -- If no_pres1_and_sub given, pres1 and entire subjunctive are missing. base.no_pres1_and_sub and {} or nil stems.pres1 = stems.pres1 or stems.pres1_and_sub or stems.pres_stressed stems.impf = stems.impf or base.inf_stem stems.pret = stems.pret or base.inf_stem stems.pret_conj = stems.pret_conj or base.conj stems.fut = stems.fut or base.inf_stem .. base.conj stems.cond = stems.cond or stems.fut stems.pres_sub_stressed = stems.pres_sub_stressed or stems.pres1 stems.pres_sub_unstressed = stems.pres_sub_unstressed or stems.pres1_and_sub or stems.pres_unstressed stems.impf_sub_ra = stems.impf_sub_ra or stems.pret stems.impf_sub_se = stems.impf_sub_se or stems.pret stems.fut_sub = stems.fut_sub or stems.pret stems.pp = stems.pp or base.conj == "ar" and combine_stem_ending(base, "pp_ms", base.inf_stem, "ad", "is combining ending") or -- use combine_stem_ending esp. so we get reído, caído, etc. combine_stem_ending(base, "pp_ms", base.inf_stem, "id", "is combining ending") end -- Make a list of the slots given in `list1` and optionally `list2`, with `prefix` added to the beginning of each slot -- name. The elements of each list are of the form {SLOT, ACCEL}. Used for error messages. local function construct_possible_slots(list1, list2, prefix) list2 = list2 or {} prefix = prefix or "" local slots = {} local function insert_list_slots(list) for _, slotaccel in ipairs(list) do local slot, accel = unpack(slotaccel) table.insert(slots, prefix .. slot) end end insert_list_slots(list1) insert_list_slots(list2) return m_table.serialCommaJoin(slots) end local function detect_indicator_spec(base) base.forms = {} base.non_reflexive_forms = {} base.stems = {} if (base.only3s and 1 or 0) + (base.only3sp and 1 or 0) + (base.only3p and 1 or 0) > 1 then error("Only one of 'only3s', 'only3sp' and 'only3p' can be specified") end base.basic_overrides = {} base.basic_reflexive_only_overrides = {} base.combined_overrides = {} if not base.no_built_in then for _, built_in_conj in ipairs(built_in_conjugations) do if type(built_in_conj.match) == "function" then base.prefix, base.non_prefixed_verb = built_in_conj.match(base.verb) elseif built_in_conj.match:find("^%^") and rsub(built_in_conj.match, "^%^", "") == base.verb then -- begins with ^, for exact match, and matches base.prefix, base.non_prefixed_verb = "", base.verb else base.prefix, base.non_prefixed_verb = rmatch(base.verb, "^(.*)(" .. built_in_conj.match .. ")$") end if base.prefix then -- we found a built-in verb base.irreg_verb = true for stem, forms in pairs(built_in_conj.forms) do if stem:find("^refl_") then stem = stem:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[stem] then error("Internal error: setting for 'refl_" .. stem .. "' does not refer to a basic verb slot") end base.basic_reflexive_only_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_basic_map[stem] then -- an individual form override of a basic form base.basic_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_combined_map[stem] then -- an individual form override of a combined form base.combined_overrides[stem] = forms else base.stems[stem] = forms end end break end end end -- Override built-in-verb stems and overrides with user-specified ones. for stem, values in pairs(base.user_stems) do base.stems[stem] = values end for override, values in pairs(base.user_basic_overrides) do if override:find("^refl_") then if not base.refl then error("Can't set reflexive-only override '" .. override .. "' on a non-reflexive verb") end override = override:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[override] then error("Unrecognized reflexive-only override 'refl_" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, nil, "refl_")) end base.basic_reflexive_only_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_basic_map[override] then base.basic_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_combined_map[override] then base.combined_overrides[override] = values else error("Unrecognized override '" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, base.alternant_multiword_spec.verb_slots_combined)) end end base.prefix = base.prefix or "" base.non_prefixed_verb = base.non_prefixed_verb or base.verb local inf_stem, suffix = rmatch(base.non_prefixed_verb, "^(.*)([aeií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.verb) end base.inf_stem = inf_stem suffix = suffix == "ír" and "ir" or suffix base.conj = suffix base.frontback = suffix == "ar" and "back" or "front" if base.stems.vowel_alt then -- built-in verb with specified vowel alternation if base.vowel_alt then error(base.verb .. " is a recognized built-in verb, and should not have vowel alternations specified with it") end base.vowel_alt = iut.convert_to_general_list_form(base.stems.vowel_alt) end -- Propagate built-in-verb indicator flags to `base` and combine with user-specified flags. for indicator_flag, _ in pairs(indicator_flags) do base[indicator_flag] = base[indicator_flag] or base.stems[indicator_flag] end -- Convert vowel alternation indicators into stems. if base.vowel_alt then for _, altform in ipairs(base.vowel_alt) do altform.alt = altform.form -- save original indicator local alt = altform.alt if base.conj == "ir" then local raising = ( alt == "ie-i" or alt == "ye-i" or alt == "ue-u" or alt == "i" or alt == "í" or alt == "ú" ) if base.stems.raising_conj == nil then base.stems.raising_conj = raising elseif base.stems.raising_conj ~= raising then error("Can't currently support a mixture of raising (e.g. 'ie-i') and non-raising (e.g. 'ie') vowel alternations in -ir verbs") end end if alt == "+" then altform.form = base.inf_stem else local normalized_alt = alt if alt == "ie-i" or alt == "ye-i" or alt == "ue-u" then if base.conj ~= "ir" then error("母音交替 '" .. alt .. "' は -ir動詞のみです") end -- ie-i is like i except for the vowel raising before i+V, similarly for ye-i, ue-u, -- so convert appropriately. normalized_alt = alt == "ie-i" and "ie" or alt == "ye-i" and "ye" or "ue" end local ret = com.apply_vowel_alternation(base.inf_stem, normalized_alt) if ret.err then error("To use '" .. alt .. "', present stem '" .. base.inf_stem .. "' " .. ret.err) end altform.form = ret.ret end end end end local function detect_all_indicator_specs(alternant_multiword_spec) -- Propagate some settings up; some are used internally, others by [[Module:es-headword]]. iut.map_word_specs(alternant_multiword_spec, function(base) -- Internal indicator flags. Do these before calling detect_indicator_spec() because add_slots() uses them. for _, prop in ipairs { "refl", "clitic" } do if base[prop] then alternant_multiword_spec[prop] = true end end base.alternant_multiword_spec = alternant_multiword_spec -- If reflexive or fixed clitic, don't include combined forms. alternant_multiword_spec.nocomb = alternant_multiword_spec.nocomb or base.clitic or base.refl end) add_slots(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base) base.nocomb = alternant_multiword_spec.args.nocomb detect_indicator_spec(base) -- User-specified indicator flags. Do these after calling detect_indicator_spec() because the latter may set these -- indicators for built-in verbs. for prop, _ in pairs(indicator_flags) do if base[prop] then alternant_multiword_spec[prop] = true end end construct_stems(base) end) end local function add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) local function insert_ann(anntype, value) m_table.insertIfNot(alternant_multiword_spec.annotation[anntype], value) end local function insert_cat(cat, also_when_multiword) -- Don't place multiword terms in categories like 'Spanish verbs ending in -ar' to avoid spamming the -- categories with such terms. if also_when_multiword or not multiword_lemma then m_table.insertIfNot(alternant_multiword_spec.categories, "Spanish " .. cat) end end if check_for_red_links and alternant_multiword_spec.source_template == "es-conj" and multiword_lemma then for _, slot_and_accel in ipairs(alternant_multiword_spec.all_verb_slots) do local slot = slot_and_accel[1] local forms = base.forms[slot] local must_break = false if forms then for _, form in ipairs(forms) do if not form.form:find("%[%[") then local title = mw.title.new(form.form) if title and not title.exists then insert_cat("verbs with red links in their inflection tables") must_break = true break end end end end if must_break then break end end end insert_cat("verbs ending in -" .. base.conj) if base.irreg_verb then insert_ann("irreg", "irregular") insert_cat("irregular verbs") else insert_ann("irreg", "regular") end if base.only3s then insert_ann("defective", "impersonal") insert_cat("impersonal verbs") elseif base.only3sp then insert_ann("defective", "third-person only") insert_cat("third-person-only verbs") elseif base.only3p then insert_ann("defective", "third-person plural only") insert_cat("third-person-plural-only verbs") elseif base.no_pres_stressed or base.no_pres1_and_sub then insert_ann("defective", "defective") insert_cat("defective verbs") else insert_ann("defective", "regular") end if base.clitic then insert_cat("verbs with lexical clitics") end if base.refl then insert_cat("reflexive verbs") end if not base.vowel_alt then insert_ann("vowel_alt", "non-alternating") else local inf_stem = base.inf_stem:gsub("[gq]u$", "x") for _, alt in ipairs(base.vowel_alt) do if alt.alt == "+" then insert_ann("vowel_alt", "non-alternating") else local desc if alt.alt == "ue" and rfind(inf_stem, "u" .. C .. "*$") then desc = "u-ue 交替" -- jugar elseif alt.alt == "ie" and rfind(inf_stem, "i" .. C .. "*$") then desc = "i-ie 交替" -- adquirir elseif alt.alt == "í" and rfind(inf_stem, "e" .. C .. "*$") then desc = "e-í 交替" -- reír, freír, etc. else desc = vowel_alternant_to_desc[alt.alt] .. " 交替" end insert_ann("vowel_alt", desc) insert_cat("verbs with " .. desc) end end end local cons_alt = base.stems.cons_alt if cons_alt == nil then if base.conj == "ar" then if base.inf_stem:find("z$") then cons_alt = "c-z" elseif base.inf_stem:find("ç$") then cons_alt = "c-ç" elseif base.inf_stem:find("c$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-gu" elseif base.inf_stem:find("gu$") then cons_alt = "gu-gü" end else if base.no_pres_stressed or base.no_pres1_and_sub then cons_alt = nil -- no c-zc alternation in balbucir or arrecir elseif rfind(base.inf_stem, V .. "c$") then cons_alt = "c-zc" elseif base.inf_stem:find("sc$") then cons_alt = "hard-soft" elseif base.inf_stem:find("c$") then cons_alt = "c-z" elseif base.inf_stem:find("qu$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-j" elseif base.inf_stem:find("gu$") then cons_alt = "g-gu" elseif base.inf_stem:find("gü$") then cons_alt = "gu-gü" end end end if cons_alt then local desc = cons_alt .. "交替" insert_ann("cons_alt", desc) insert_cat("verbs with " .. desc) else insert_ann("cons_alt", "non-alternating") end end -- Compute the categories to add the verb to, as well as the annotation to display in the -- conjugation title bar. We combine the code to do these functions as both categories and -- title bar contain similar information. local function compute_categories_and_annotation(alternant_multiword_spec) alternant_multiword_spec.categories = {} local ann = {} alternant_multiword_spec.annotation = ann ann.irreg = {} ann.defective = {} ann.vowel_alt = {} ann.cons_alt = {} local multiword_lemma = false for _, form in ipairs(alternant_multiword_spec.forms.infinitive) do if form.form:find(" ") then multiword_lemma = true break end end iut.map_word_specs(alternant_multiword_spec, function(base) add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) end) local ann_parts = {} local irreg = table.concat(ann.irreg, " or ") if irreg ~= "" and irreg ~= "regular" then table.insert(ann_parts, irreg) end local defective = table.concat(ann.defective, " or ") if defective ~= "" and defective ~= "regular" then table.insert(ann_parts, defective) end local vowel_alt = table.concat(ann.vowel_alt, " or ") if vowel_alt ~= "" and vowel_alt ~= "non-alternating" then table.insert(ann_parts, vowel_alt) end local cons_alt = table.concat(ann.cons_alt, " or ") if cons_alt ~= "" and cons_alt ~= "non-alternating" then table.insert(ann_parts, cons_alt) end alternant_multiword_spec.annotation = table.concat(ann_parts, "; ") end local function show_forms(alternant_multiword_spec) local lemmas = alternant_multiword_spec.forms.infinitive alternant_multiword_spec.lemmas = lemmas -- save for later use in make_table() local reconstructed_verb_spec = iut.reconstruct_original_spec(alternant_multiword_spec) -- Initialize the footnotes with those for the future subjunctive and maybe the pres subjunctive -- voseo usage. In the latter case, we only do it if there is a distinct pres subjunctive voseo form. local function create_footnote_obj() local obj = iut.create_footnote_obj() iut.get_footnote_text({fut_sub_note}, obj) -- Compute whether the tuteo and voseo variants are different, for each voseo variant. -- We use this later in make_table(). for _, slot in ipairs({"pres_2s", "pres_sub_2s", "imp_2s"}) do alternant_multiword_spec["separate_" .. slot .. "v"] = false iut.map_word_specs(alternant_multiword_spec, function(base) if not m_table.deepEquals(base.forms[slot], base.forms[slot .. "v"]) then alternant_multiword_spec["separate_" .. slot .. "v"] = true end end) end if alternant_multiword_spec.separate_pres_sub_2sv then iut.get_footnote_text({pres_sub_voseo_note}, obj) end return obj end local function transform_accel_obj(slot, formobj, accel_obj) -- No accelerators for negative imperatives, which are always multiword and derived directly from the -- present subjunctive. if slot:find("^neg_imp") then return nil end if accel_obj then if slot:find("^pp_") then accel_obj.form = slot elseif slot == "gerund" then accel_obj.form = "gerund-" .. reconstructed_verb_spec else accel_obj.form = "verb-form-" .. reconstructed_verb_spec end end return accel_obj end local props = { lang = lang, lemmas = lemmas, create_footnote_obj = create_footnote_obj, transform_accel_obj = transform_accel_obj, } props.slot_list = alternant_multiword_spec.verb_slots_basic iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_basic = alternant_multiword_spec.forms.footnote props.create_footnote_obj = nil props.slot_list = alternant_multiword_spec.verb_slots_combined iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_combined = alternant_multiword_spec.forms.footnote end local notes_template = [=[ <div class="roa-footnote-outer-div" style="width:100%;"> <div class="roa-footnote-inner-div"> {footnote} </div></div> ]=] local pres_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_2sv}<sup><sup>vos</sup></sup>' local pres_sub_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_sub_2sv}<sup><sup>vos<sup class="roa-red-superscript">2</sup></sup></sup>' local imp_2sv_template = '<sup><sup>tú</sup></sup><br />{imp_2sv}<sup><sup>vos</sup></sup>' local basic_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; {title}の活用 ([[Wiktionary:スペイン語動詞活用]]も参照)</div> <div class="NavContent"> {\op}| class="roa-inflection-table" |- ! colspan="3" class="roa-nonfinite-header" | <span title="infinitivo">不定詞</span> | colspan="5" | {infinitive} |- ! colspan="3" class="roa-nonfinite-header" | <span title="gerundio">現在分詞</span> | colspan="5" | {gerund} |- ! rowspan="3" colspan="2" class="roa-nonfinite-header" | <span title="participio (pasado)">過去分詞</span> | colspan="2" class="roa-nonfinite-header" | ! colspan="2" class="roa-nonfinite-header" | <span title="masculino">男性</span> ! colspan="2" class="roa-nonfinite-header" | <span title="femenino">女性</span> |- ! colspan="2" class="roa-nonfinite-header" | 単数 | colspan="2" | {pp_ms} | colspan="2" | {pp_fs} |- ! colspan="2" class="roa-nonfinite-header" | 複数 | colspan="2" | {pp_mp} | colspan="2" | {pp_fp} |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | 単数 ! colspan="3" class="roa-person-number-header" | 複数 |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |-{reflexive_non_finite_clause} ! rowspan="6" class="roa-indicative-left-rail" | <span title="indicativo">直説法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de indicativo">現在</span> | {pres_1s} | {pres_2s}{pres_2sv_text} | {pres_3s} | {pres_1p} | {pres_2p} | {pres_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto (copréterito)">不完了過去</span> | {impf_1s} | {impf_2s} | {impf_3s} | {impf_1p} | {impf_2p} | {impf_3p} |- ! class="roa-finite-header" | <span title="pretérito perfecto simple (pretérito indefinido)">完了過去</span> | {pret_1s} | {pret_2s} | {pret_3s} | {pret_1p} | {pret_2p} | {pret_3p} |- ! class="roa-finite-header" | <span title="futuro simple (futuro imperfecto)">未来</span> | {fut_1s} | {fut_2s} | {fut_3s} | {fut_1p} | {fut_2p} | {fut_3p} |- ! class="roa-finite-header" | <span title="condicional simple (pospretérito de modo indicativo)">過去未来・可能法</span> | {cond_1s} | {cond_2s} | {cond_3s} | {cond_1p} | {cond_2p} | {cond_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="5" class="roa-subjunctive-left-rail" | <span title="subjuntivo">接続法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de subjuntivo">現在</span> | {pres_sub_1s} | {pres_sub_2s}{pres_sub_2sv_text} | {pres_sub_3s} | {pres_sub_1p} | {pres_sub_2p} | {pres_sub_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(ra) | {impf_sub_ra_1s} | {impf_sub_ra_2s} | {impf_sub_ra_3s} | {impf_sub_ra_1p} | {impf_sub_ra_2p} | {impf_sub_ra_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(se) | {impf_sub_se_1s} | {impf_sub_se_2s} | {impf_sub_se_3s} | {impf_sub_se_1p} | {impf_sub_se_2p} | {impf_sub_se_3p} |- ! class="roa-finite-header" | <span title="futuro simple de subjuntivo (futuro de subjuntivo)">未来</span><sup class="roa-red-superscript">1</sup> | {fut_sub_1s} | {fut_sub_2s} | {fut_sub_3s} | {fut_sub_1p} | {fut_sub_2p} | {fut_sub_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="6" class="roa-imperative-left-rail" | <span title="imperativo">命令法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | — ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ustedes |- ! class="roa-finite-header" | <span title="imperativo afirmativo">-</span> | | {imp_2s}{imp_2sv_text} | {imp_3s} | {imp_1p} | {imp_2p} | {imp_3p} |- ! class="roa-finite-header" | <span title="imperativo negativo">禁止</span> | | {neg_imp_2s} | {neg_imp_3s} | {neg_imp_1p} | {neg_imp_2p} | {neg_imp_3p} |{\cl}{notes_clause}</div></div> ]=] local reflexive_non_finite_template = [=[ ! rowspan="3" class="roa-nonfinite-header" | personal non-finite ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="infinitivo">不定詞</span> | {infinitive_1s} | {infinitive_2s} | {infinitive_3s} | {infinitive_1p} | {infinitive_2p} | {infinitive_3p} |- ! class="roa-finite-header" | <span title="gerundio">現在分詞</span> | {gerund_1s} | {gerund_2s} | {gerund_3s} | {gerund_1p} | {gerund_2p} | {gerund_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |-]=] local combined_form_combined_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}<i>/</i>{voseo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |-]=] local combined_form_separate_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({voseo}) {imp_2sv} ! class="roa-finite-header" | 与格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_le} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_lo}, {imp_2sv_comb_la} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_los}, {imp_2sv_comb_las} |-]=] local combined_form_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp;{title}の複合形</div> <div class="NavContent"> これらは自動生成されたものであり、実際に使用されるものとは異なる場合がある。また、代名詞の用法は地域によって大きく異なる。 {\op}| class="inflection-table es-inflection-table" |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |- ! rowspan="2" class="roa-combined-with-infinitive" | 不定詞 {infinitive} ! class="roa-finite-header" | 与格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_le}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_les}, {infinitive_comb_se} |- ! class="roa-finite-header" | 対格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_lo}, {infinitive_comb_la}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_los}, {infinitive_comb_las}, {infinitive_comb_se} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-gerund" | 現在分詞 {gerund} ! class="roa-finite-header" | 与格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_le}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_les}, {gerund_comb_se} |- ! class="roa-finite-header" | 対格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_lo}, {gerund_comb_la}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_los}, {gerund_comb_las}, {gerund_comb_se} |-{tu_vos_clause} ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称単数 {imp_3s} ! class="roa-finite-header" | 与格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_le}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_lo}, {imp_3s_comb_la}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_los}, {imp_3s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 命令法第一人称複数 {imp_1p} ! class="roa-finite-header" | 与格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_le} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_les} |- ! class="roa-finite-header" | 対格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_lo}, {imp_1p_comb_la} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_los}, {imp_1p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称複数 {imp_2p} ! class="roa-finite-header" | 与格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_le} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_lo}, {imp_2p_comb_la} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_los}, {imp_2p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称複数 {imp_3p} ! class="roa-finite-header" | 与格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_le} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_les}, {imp_3p_comb_se} |- ! class="roa-finite-header" | 対格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_lo}, {imp_3p_comb_la} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_los}, {imp_3p_comb_las}, {imp_3p_comb_se} |{\cl}{notes_clause}</div></div> ]=] local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms forms.title = link_term(alternant_multiword_spec.lemmas[1].form) if alternant_multiword_spec.annotation ~= "" then forms.title = forms.title .. " (" .. alternant_multiword_spec.annotation .. ")" end forms.description = "" -- Format the basic table. forms.tuteo = tuteo_link forms.voseo = voseo_link forms.footnote = alternant_multiword_spec.footnote_basic forms.reflexive_non_finite_clause = alternant_multiword_spec.refl and m_string_utilities.format(reflexive_non_finite_template, forms) or "" forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- The separate_* values are computed in show_forms(). forms.pres_2sv_text = alternant_multiword_spec.separate_pres_2sv and m_string_utilities.format(pres_2sv_template, forms) or "" forms.pres_sub_2sv_text = alternant_multiword_spec.separate_pres_sub_2sv and m_string_utilities.format(pres_sub_2sv_template, forms) or "" forms.imp_2sv_text = alternant_multiword_spec.separate_imp_2sv and m_string_utilities.format(imp_2sv_template, forms) or "" local formatted_basic_table = m_string_utilities.format(basic_table, forms) -- Format the combined table. local formatted_combined_table if alternant_multiword_spec.refl or alternant_multiword_spec.args.nocomb or alternant_multiword_spec.clitic then formatted_combined_table = "" else forms.footnote = alternant_multiword_spec.footnote_combined forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- separate_imp_2sv is computed in show_forms(). local tu_vos_template = alternant_multiword_spec.separate_imp_2sv and combined_form_separate_tu_vos_template or combined_form_combined_tu_vos_template forms.tu_vos_clause = m_string_utilities.format(tu_vos_template, forms) formatted_combined_table = m_string_utilities.format(combined_form_table, forms) end -- Paste them together. return require("Module:TemplateStyles")("Module:roa-verb/style.css") .. formatted_basic_table .. formatted_combined_table end -- Externally callable function to parse and conjugate a verb given user-specified arguments. -- Return value is WORD_SPEC, an object where the conjugated forms are in `WORD_SPEC.forms` -- for each slot. If there are no values for a slot, the slot key will be missing. The value -- for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms(args, source_template, headword_head, double_combined_forms_to_include) local PAGENAME = mw.loadData("Module:headword/data").pagename local function in_template_space() return mw.title.getCurrentTitle().nsText == "テンプレート" end -- Determine the verb spec we're being asked to generate the conjugation of. This may be taken from the -- current page title or the value of |pagename=; but not when called from {{es-verb form of}}, where the -- page title is a non-lemma form. Note that the verb spec may omit the infinitive; e.g. it may be "<ue>". -- For this reason, we use the value of `pagename` computed here down below, when calling normalize_all_lemmas(). local pagename = source_template ~= "es-verb form of" and args.pagename or PAGENAME local head = headword_head or pagename local arg1 = args[1] if not arg1 then if (pagename == "es-conj" or pagename == "es-verb") and in_template_space() then arg1 = "licuar<+,ú>" elseif pagename == "es-verb form of" and in_template_space() then arg1 = "amar" else arg1 = "<>" end end -- When called from {{es-verb form of}}, determine the non-lemma form whose inflections we're being asked to -- determine. This normally comes from the page title or the value of |pagename=. local verb_form_of_form if source_template == "es-verb form of" then verb_form_of_form = args.pagename if not verb_form_of_form then if PAGENAME == "es-verb form of" and in_template_space() then verb_form_of_form = "ame" else verb_form_of_form = PAGENAME end end end local incorporated_headword_head_into_lemma = false if arg1:find("^<.*>$") then -- missing lemma if head:find(" ") then -- If multiword lemma, try to add arg spec after the first word. -- Try to preserve the brackets in the part after the verb, but don't do it -- if there aren't the same number of left and right brackets in the verb -- (which means the verb was linked as part of a larger expression). local refl_clitic_verb, post = rmatch(head, "^(.-)( .*)$") local left_brackets = rsub(refl_clitic_verb, "[^%[]", "") local right_brackets = rsub(refl_clitic_verb, "[^%]]", "") if #left_brackets == #right_brackets then arg1 = iut.remove_redundant_links(refl_clitic_verb) .. arg1 .. post incorporated_headword_head_into_lemma = true else -- Try again using the form without links. local linkless_head = m_links.remove_links(head) if linkless_head:find(" ") then refl_clitic_verb, post = rmatch(linkless_head, "^(.-)( .*)$") arg1 = refl_clitic_verb .. arg1 .. post else error("Unable to incorporate <...> spec into explicit head due to a multiword linked verb or " .. "unbalanced brackets; please include <> explicitly: " .. arg1) end end else -- Will be incorporated through `head` below in the call to normalize_all_lemmas(). incorporated_headword_head_into_lemma = true end end local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, allow_blank_lemma = true, } local alternant_multiword_spec = iut.parse_inflected_text(arg1, parse_props) alternant_multiword_spec.pos = pos or "verbs" alternant_multiword_spec.args = args alternant_multiword_spec.source_template = source_template alternant_multiword_spec.verb_form_of_form = verb_form_of_form alternant_multiword_spec.incorporated_headword_head_into_lemma = incorporated_headword_head_into_lemma -- Now determine if we need to generate any double-combined forms, and if so, which clitics are involved. -- See the comment above the initialization of `verb_slot_double_combined_rows` above in add_slots(). if verb_form_of_form and rfind(verb_form_of_form, AV) then -- All double-clitic forms have an explicit accent, so we check for this. In addition, all double-clitic forms -- are of the form "(me|te|se|nos|os)(lo|la|le)s$". We have no alternations in Lua patterns, but we can exploit -- the similarity of the clitics in question. local single_comb_form, object_clitic = rmatch(verb_form_of_form, "^(.*)(l[aeo]s?)$") if single_comb_form then local personal_clitic = rmatch(single_comb_form, "^.*([mts]e)$") if not personal_clitic then personal_clitic = rmatch(single_comb_form, "^.-(n?os)$") end if personal_clitic then if personal_clitic == "nos" then -- "os" is a substring of "nos"; conceivably we could have a form ending in -n + os, and we don't -- know whether to interpret as -n + os or - + nos. alternant_multiword_spec.double_combined_forms_to_include = {{"nos", object_clitic}, {"os", object_clitic}} else if personal_clitic == "se" then -- Use the special "lxx" clitic for le/les when transformed into se in double-combined forms. personal_clitic = "lxx" end alternant_multiword_spec.double_combined_forms_to_include = {{personal_clitic, object_clitic}} end end end end normalize_all_lemmas(alternant_multiword_spec, pagename) detect_all_indicator_specs(alternant_multiword_spec) local inflect_props = { slot_list = alternant_multiword_spec.all_verb_slots, inflect_word_spec = conjugate_verb, -- We add links around the generated verbal forms rather than allow the entire multiword -- expression to be a link, so ensure that user-specified links get included as well. include_user_specified_links = true, } iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) -- Remove redundant brackets around entire forms. for slot, forms in pairs(alternant_multiword_spec.forms) do for _, form in ipairs(forms) do form.form = iut.remove_redundant_links(form.form) end end compute_categories_and_annotation(alternant_multiword_spec) if args.json and not from_headword and not from_verb_form_of then -- There is a circular reference in `base.alternant_multiword_spec`, which points back to top level. iut.map_word_specs(alternant_multiword_spec, function(base) base.alternant_multiword_spec = nil end) return require("Module:JSON").toJSON(alternant_multiword_spec) end return alternant_multiword_spec end -- Entry point for {{es-conj}}. Template-callable function to parse and conjugate a verb given -- user-specified arguments and generate a displayable table of the conjugated forms. function export.show(frame) local parent_args = frame:getParent().args local params = { [1] = {}, ["nocomb"] = {type = "boolean"}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use } local args = require("Module:parameters").process(parent_args, params) local alternant_multiword_spec = export.do_generate_forms(args, "es-conj") if type(alternant_multiword_spec) == "string" then -- JSON return value return alternant_multiword_spec end show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang, nil, nil, force_cat) end return export nrsuapbpxudtklz78rg2dyh9c9mm5f8 2281219 2281206 2026-06-09T10:50:19Z Kuroco2k 84207 2281219 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> ]=] --[=[ TERMINOLOGY: -- "slot" = A particular combination of tense/mood/person/number/etc. Example slot names for verbs are "pres_1s" (present indicative first-person singular), "pres_sub_2sv" (present subjunctive second-person singular voseo form) "impf_sub_ra_3p" (imperfect subjunctive -ra form third-person plural), "imp_1p_comb_lo" (imperative first-person plural combined with clitic [[lo]]). Each slot is filled with zero or more forms. -- "form" = The conjugated Spanish form representing the value of a given slot. -- "lemma" = The dictionary form of a given Spanish term. For Spanish, always the infinitive. ]=] --[=[ FIXME: 1. Implement no_pres_stressed for aterir, garantir. (NOTE: Per RAE, garantir used in all forms in Argentina/Uruguay.) [DONE] 2. Support concluyo. [DONE] 3. Fixes for veo -> ve vs. preveo -> prevé. [DONE] 4. Various more irregular verbs, e.g. predecir, redecir, bendecir, maldecir. [DONE] 5. Raising of e -> i, o -> u before -iendo, -ió, etc. occurs only in -ir verbs. [DONE] 6. Raising of e -> i, o -> u happens before subjunctive -amos, -áis in -ir verbs. [DONE] 7. Implement reflexive verbs. [DONE] 8. Implement categories. [DONE] 9. Implement show_forms. [DONE] 10. Reconcile stems.vowel_alt from irregular verbs with vowel_alt from indicators. May require moving the irregular-verb handling code in construct_stems() into detect_indicator_spec(). [DONE] 11. Implement make_table. [DONE] 12. Vowel alternation should show u-ue (jugar), i-ie (adquirir), e-í (reír) alternations specially. [DONE] 13. Handle linking of multiword forms as is done in [[Module:es-headword]]. [DONE] 14. Implement comparison against previous module. [DONE] 15. Implement categorization of irregularities for individual tenses. 16. Support nocomb=1. [DONE] 17. (Possibly) display irregular forms in a different color, as with the old module. 18. (Possibly) display a "rule" description indicating the types of alternations. 19. Implement replace_reflexive_indicators(). [NOT DONE; SUPPORT REMOVED] 20. Implement verbs with attached clitics e.g. [[pasarlo]], [[corrérsela]]. [DONE] 21. When footnote + tú/vos notation, add a space before tú/vos. 22. Fix [[erguir]] so ie-i vowel alternation produces ye- at beginning of word, similarly for errar. Also allow multiple vowel alternation specs in irregular verbs, for errar. Finally, ie should show as e-ye for errar and as e-ye-i for erguir. [DONE] 23. Figure out why red links in combined forms show up as black not red. 24. Consider including alternative superseded forms of verbs like [[ciar]] (e.g. pret_3s = cio, ció with footnote). 25. Allow conjugation of suffixes e.g. -ir, -ecer; need to fix in [[Module:inflection utilities]]. [DONE] 26. Allow specification of stems esp. so that footnotes can be hung off them; use + for the default. 27. Don't remove monosyllabic accents when conjugating suffixes. [DONE] 28. If multiword expression with no <>, add <> after first word, as with [[Module:es-headword]]. [DONE] 29. (Possibly) link the parts of a reflexive or cliticized infinitive, as done in [[Module:es-headword]]. [DONE] 30. Final fixes to allow [[Module:es-headword]] to use this module. [DONE] --]=] local lang = require("Module:languages").getByCode("es") local m_string_utilities = require("Module:string utilities") local m_links = require("Module:links") local m_table = require("Module:table") local iut = require("Module:inflection utilities") local put = require("Module:parse utilities") local com = require("Module:es-common") local force_cat = false -- set to true for debugging local check_for_red_links = false -- set to false for debugging local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsplit = mw.text.split local rsub = com.rsub local unpack = unpack or table.unpack -- Lua 5.2 compatibility local function link_term(term) return m_links.full_link({ lang = lang, term = term }, "term") end local V = com.V -- vowel regex class local AV = com.AV -- accented vowel regex class local C = com.C -- consonant regex class local tuteo_link = link_term("tuteo") local voseo_link = link_term("voseo") local fut_sub_note = "[rare; now chiefly used in legal language]" local pres_sub_voseo_note = "[Argentine and Uruguayan " .. voseo_link .. " prefers the " .. tuteo_link .. "-form for the present subjunctive]" local vowel_alternants = m_table.listToSet({"ie", "ie-i", "ye", "ye-i", "ue", "ue-u", "hue", "i", "í", "ú", "+"}) local vowel_alternant_to_desc = { ["ie"] = "e-ie", ["ie-i"] = "e-ie-i", ["ye"] = "e-ye", ["ye-i"] = "e-ye-i", ["ue"] = "o-ue", ["ue-u"] = "o-ue-u", ["hue"] = "o-hue", ["i"] = "e-i", ["í"] = "i-í", ["ú"] = "u-ú", } local raise_vowel = {["e"] = "i", ["o"] = "u"} local all_persons_numbers = { ["1s"] = "1|s", ["2s"] = "2|s", ["2sv"] = "2|s|voseo", ["3s"] = "3|s", ["1p"] = "1|p", ["2p"] = "2|p", ["3p"] = "3|p", } local person_number_list_basic = {"1s", "2s", "3s", "1p", "2p", "3p"} local person_number_list_voseo = {"1s", "2s", "2sv", "3s", "1p", "2p", "3p"} local imp_person_number_list = {"2s", "2sv", "3s", "1p", "2p", "3p"} local neg_imp_person_number_list = {"2s", "3s", "1p", "2p", "3p"} person_number_to_reflexive_pronoun = { ["1s"] = "me", ["2s"] = "te", ["2sv"] = "te", ["3s"] = "se", ["1p"] = "nos", ["2p"] = "os", ["3p"] = "se", } local indicator_flags = m_table.listToSet { "no_pres_stressed", "no_pres1_and_sub", "only3s", "only3sp", "only3p", "no_built_in", } -- Initialize all the slots for which we generate forms. The particular slots may depend on whether we're generating -- combined slots (`not alternant_multiword_spec.nocomb`, which is always false if we're dealing with a verb with an -- attached clitic, such as [[hincarla]], or a reflexive or partly-reflexive verb, where a partly-reflexive verb is -- a conjoined term made up of two or more verbs, where some but not all are reflexive). It may also depend on whether -- we're being requested to generate some double-combined forms, such as [[llevándoselo]]; see the comment below for -- `verb_slot_double_combined_rows`. local function add_slots(alternant_multiword_spec) -- "Basic" slots: All slots that go into the regular table (not the combined-form table). alternant_multiword_spec.verb_slots_basic = { {"infinitive", "inf"}, {"infinitive_linked", "inf"}, {"gerund", "ger"}, {"pp_ms", "m|s|past|part"}, {"pp_fs", "f|s|past|part"}, {"pp_mp", "m|p|past|part"}, {"pp_fp", "f|p|past|part"}, } -- Slots that go into the combined-form table, along with double-combined slots (e.g. [[llevándoselo]]) that are -- requested for use with {{es-verb form of}}. alternant_multiword_spec.verb_slots_combined = {} -- Special slots used to handle non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- For example, for a reflexive-only verb like [[jambarse]], we want to be able to use {{es-verb form of}} on -- [[jambe]] (which should mention that it is a part of 'me jambe', first-person singular present subjunctive, and -- 'se jambe', third-person singular present subjunctive) or on [[jambamos]] (which should mention that it is a -- part of 'nos jambamos', first-person plural present indicative or preterite). Similarly, we want to use -- {{es-verb form of}} on [[jambando]] (which should mention that it is a part of 'se ... jambando', syntactic -- variant of [[jambándose]], which is the gerund of [[jambarse]]). To do this, we need to be able to map -- non-reflexive parts like [[jambe]], [[jambamos]], [[jambando]], etc. to their reflexive equivalent(s), to the -- tag(s) of the equivalent(s), and, in the case of forms like [[jambando]], [[jambar]] and imperatives, to the -- separated syntactic variant of the verb+clitic combination. We do this by creating slots for the non-reflexive -- part equivalent of each basic reflexive slot, and for the separated syntactic-variant equivalent of each basic -- reflexive slot that is formed of verb+clitic. We use slots in this way to deal with multiword lemmas. Note that -- we run into difficulties mapping between reflexive verbs, non-reflexive part equivalents, and separated syntactic -- variants if a slot contains more than one form. To handle this, if there are the same number of forms in two -- slots we're trying to match up, we assume the forms match one-to-one; otherwise we don't match up the two slots -- (which means {{es-verb form of}} won't work in this case, but such a case is extremely rare and not worth -- worrying about). Alternatives that handle this "properly" are significantly more complicated and require -- non-trivial modifications to [[Module:inflection utilities]]. local need_special_verb_form_of_slots = alternant_multiword_spec.source_template == "es-verb form of" and alternant_multiword_spec.refl if need_special_verb_form_of_slots then alternant_multiword_spec.verb_slots_reflexive_verb_form_of = { {"infinitive_non_reflexive", "-"}, {"infinitive_variant", "-"}, {"gerund_non_reflexive", "-"}, {"gerund_variant", "-"}, } else alternant_multiword_spec.verb_slots_reflexive_verb_form_of = {} end -- For generating combined forms, i.e. combinations of a basic form (specifically, infinitive, gerund or an -- imperative form) with a clitic (or in some cases, two clitics). This is a list of lists of the form -- {BASIC_SLOT, CLITICS} where BASIC_SLOT is the slot to add the clitic pronouns to (e.g. "gerund" or "imp_2s") -- and CLITICS is a list of the clitic pronouns to add. alternant_multiword_spec.verb_slot_combined_rows = {} -- For generating double combined forms (e.g. [[llevándoselo]] or [[dámela]]). This is used by {{es-verb form of}} -- when it detects that it is being requested to find the inflection tags for a double-combined form. The number of -- double-combined forms is relatively large, so to optimize this, [[Module:es-inflections]] (which implements -- {{es-verb form of}}) detects which two clitics are involved, and we only generate double-combined forms -- involving those two clitics; this is specified using `double_combined_forms_to_include`, passed into -- do_generate_forms(). The value of this field is a list of lists of the form {SINGLE_COMB_SLOT, CLITICS} where -- SINGLE_COMB_SLOT is the single-combined slot to add the object clitic pronouns to (e.g. "gerund_comb_se" or -- "imp_2s_comb_me") and CLITICS is a list of the clitic pronouns to add. CLITICS will normally be a length-one -- list whose value is one of {"lo", "la", "le", "los", "las", "les"}. alternant_multiword_spec.verb_slot_double_combined_rows = {} -- Add entries for a slot with person/number variants. -- `verb_slots` is the table to add to. -- `slot_prefix` is the prefix of the slot, typically specifying the tense/aspect. -- `tag_suffix` is a string listing the set of inflection tags to add after the person/number tags. -- `person_number_list` is a list of the person/number slot suffixes to add to `slot_prefix`. local function add_personal_slot(verb_slots, slot_prefix, tag_suffix, person_number_list) for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(verb_slots, {slot, accel}) end end -- Add a personal slot (i.e. a slot with person/number variants) to `verb_slots_basic`. local function add_basic_personal_slot(slot_prefix, tag_suffix, person_number_list, no_special_verb_form_of_slot, need_variant_slot) add_personal_slot(alternant_multiword_spec.verb_slots_basic, slot_prefix, tag_suffix, person_number_list) -- Add special slots for handling non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- See comment above in `need_special_verb_form_of_slots`. if need_special_verb_form_of_slots and not no_special_verb_form_of_slot then for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local basic_slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_non_reflexive", "-"}) if need_variant_slot then table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_variant", "-"}) end end end end add_basic_personal_slot("pres", "pres|ind", person_number_list_voseo) add_basic_personal_slot("impf", "impf|ind", person_number_list_basic) add_basic_personal_slot("pret", "pret|ind", person_number_list_basic) add_basic_personal_slot("fut", "fut|ind", person_number_list_basic) add_basic_personal_slot("cond", "cond", person_number_list_basic) add_basic_personal_slot("pres_sub", "pres|sub", person_number_list_voseo) add_basic_personal_slot("impf_sub_ra", "impf|sub", person_number_list_basic) add_basic_personal_slot("impf_sub_se", "impf|sub", person_number_list_basic) add_basic_personal_slot("fut_sub", "fut|sub", person_number_list_basic) -- Need variant slots because the imperative clitics are suffixed. add_basic_personal_slot("imp", "imp", imp_person_number_list, nil, "need variant slot") -- Don't need special non-reflexive-part slots because the negative imperative is multiword, of which the -- individual words are 'no' + subjunctive. add_basic_personal_slot("neg_imp", "neg|imp", neg_imp_person_number_list, "no special verb form of") -- Don't need special non-reflexive-part slots because we don't want [[jambando]] mapping to [[jambándome]] -- (only [[jambándose]]) or [[jambar]] mapping to [[jambarme]] (only [[jambarse]]). add_basic_personal_slot("infinitive", "inf", person_number_list_basic, "no special verb form of") add_basic_personal_slot("gerund", "ger", person_number_list_basic, "no special verb form of") local third_person_object_clitics = {"lo", "la", "le", "los", "las", "les"} -- Add combined-form slots. if not alternant_multiword_spec.nocomb then -- Add a row of slots representing the combination of a basic slot with a clitic. `basic_slot` is the basic slot -- descriptor, `tag_prefix` is a string describing the inflection tags of the basic slot, and `personal_clitics` -- is a list of the personal clitics ("me", "te", "se", "nos" or "os") to add to the basic slot. local function add_combined_slot_row(basic_slot, tag_prefix, personal_clitics) -- First, add each individual combined slot to `verb_slots_combined`. local clitics_with_object = m_table.append(personal_clitics, third_person_object_clitics) for _, clitic in ipairs(clitics_with_object) do local slot = basic_slot .. "_comb_" .. clitic -- You have to pass this through full_link() to get a Spanish-specific link local accel = tag_prefix .. "|combined with [[" .. clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) end -- Also, add the row to `verb_slot_combined_rows`. table.insert(alternant_multiword_spec.verb_slot_combined_rows, {basic_slot, clitics_with_object}) -- Also do double-combined forms for a specific set of clitics, if requested. See the comment above -- `verb_slot_double_combined_rows` above. if alternant_multiword_spec.double_combined_forms_to_include then -- Add a special "lxx" clitic for le/les when transformed into se in double-combined forms. local personal_clitics_with_lxx = {unpack(personal_clitics)} table.insert(personal_clitics_with_lxx, "lxx") for _, personal_clitic in ipairs(personal_clitics_with_lxx) do for _, object_clitic in ipairs(third_person_object_clitics) do for _, form_to_include in ipairs(alternant_multiword_spec.double_combined_forms_to_include) do local to_include_personal_clitic, to_include_object_clitic = unpack(form_to_include) if personal_clitic == to_include_personal_clitic and object_clitic == to_include_object_clitic then local single_comb_slot = basic_slot .. "_comb_" .. personal_clitic local slot = single_comb_slot .. "_" .. object_clitic accel_clitic = personal_clitic == "lxx" and "[[le]]/[[les]]" or "[[" .. personal_clitic .. "]]" local accel = tag_prefix .. "|combined with indirect object " .. accel_clitic .. " and direct object [[" .. object_clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) table.insert(alternant_multiword_spec.verb_slot_double_combined_rows, {single_comb_slot, {object_clitic}}) break end end end end end end add_combined_slot_row("infinitive", "inf", {"me", "te", "se", "nos", "os"}) add_combined_slot_row("gerund", "gerund", {"me", "te", "se", "nos", "os"}) local function add_combined_imp_slot_row(persnum, personal_clitics) add_combined_slot_row("imp_" .. persnum, all_persons_numbers[persnum] .. "|imp", personal_clitics) end add_combined_imp_slot_row("2s", {"me", "te", "nos"}) add_combined_imp_slot_row("2sv", {"me", "te", "nos"}) add_combined_imp_slot_row("3s", {"me", "se", "nos"}) add_combined_imp_slot_row("1p", {"te", "nos", "os"}) add_combined_imp_slot_row("2p", {"me", "nos", "os"}) add_combined_imp_slot_row("3p", {"me", "se", "nos"}) end -- Generate the list of all slots. alternant_multiword_spec.all_verb_slots = {} for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_combined) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_reflexive_verb_form_of) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end alternant_multiword_spec.verb_slots_basic_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_basic_map[slot] = accel end alternant_multiword_spec.verb_slots_combined_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_combined) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_combined_map[slot] = accel end end -- Return true if `form` is accented and is likely monosyllabic. Used in remove_monosyllabic_accents(); if true, we -- run the syllabification algorithm to determine the syllable count, and if monosyllabic, remove the accent. Also used -- in conjunction with user-specified form overrides to add an asterisk to prevent accents from being removed. local function may_need_monosyllabic_accent_removed(form) return not rfind(form, "^%-") and rfind(form, AV) and not rfind(form, V .. C .. V) end local overridable_stems = {} -- If `add_monosyllabic_asterisk` is given, add a * to accented forms that may be monosyllabic to prevent the accent -- from being removed in remove_monosyllabic_accents(). local function allow_multiple_values_for_override(separated_groups, data, add_monosyllabic_asterisk) local retvals = {} for _, separated_group in ipairs(separated_groups) do local footnotes = data.fetch_footnotes(separated_group) local form = separated_group[1] if add_monosyllabic_asterisk and may_need_monosyllabic_accent_removed(form) then form = form .. "*" end -- Add suppress_prefix to prevent the built-in verb prefix from being added to the override. local retval = {form = form, footnotes = footnotes, suppress_prefix = true} table.insert(retvals, retval) end return retvals end local function simple_choice(choices) return function(separated_groups, data) if #separated_groups > 1 then data.parse_err("For spec '" .. data.prefix .. ":', only one value currently allowed") end if #separated_groups[1] > 1 then data.parse_err("For spec '" .. data.prefix .. ":', no footnotes currently allowed") end local choice = separated_groups[1][1] if not m_table.contains(choices, choice) then data.parse_err("For spec '" .. data.prefix .. ":', saw value '" .. choice .. "' but expected one of '" .. table.concat(choices, ",") .. "'") end return choice end end for _, overridable_stem in ipairs { "pres_unstressed", "pres_stressed", "pres1_and_sub", -- Don't include pres1; use pres_1s if you need to override just that form "impf", "full_impf", "pret", {"pret_conj", simple_choice({"irreg", "ar", "er", "ir"}) }, "fut", "cond", "pres_sub_stressed", "pres_sub_unstressed", "impf_sub_ra", "impf_sub_se", "fut_sub", "pp", } do if type(overridable_stem) == "string" then overridable_stems[overridable_stem] = allow_multiple_values_for_override else local stem, validator = unpack(overridable_stem) overridable_stems[stem] = validator end end local function match_against_verbs(ref_verb, prefixes) return function(verb) for _, prefix in ipairs(prefixes) do if verb == prefix .. ref_verb then return prefix, ref_verb end end return nil end end --[=[ Special cases for verbs: diluviar, atardecer: impersonal; all finite non-3s forms are nonexistent or hypothetical. Handle using '.only3s'. empecer, atañer, concernir: all finite non-third-person forms are nonexistent or hypothetical. Handle using '.only3sp'. desnacer: Former module claimed an irregular past participle 'desnato'. Verb is not in RAE at all and barely exists; unlikely to have irregular past participle. desposeer: Former module claimed an irregular past participle 'desposeso'. Not per RAE. valer: Former module claimed an irregular imperative 'val'. Not per RAE. manumitir: Former module claimed an irregular past participle 'manumiso'. Not per RAE. raer: Former module claimed a pres 1sg rao. Not per RAE. rehuir: Handle using +ú. sustituir: Former module claimed an irregular past participle 'sustituto'. Not per RAE. venir: Former module claimed an irregular clitic combination ven + nos -> venos. Not per native speakers. --------- Verbs to check: rehuir (+ú), prohibir (+í), reunir (+ú) --------- -ir verbs: There are several types of vowel alternations: 1. No alternation. Includes some verbs in -e- and -o-, e.g. aterir(se) (no_pres_stressed), tra(n)sgredir (pres_stressed forms rare), abolir (pres_stressed forms rare), colorir (no_pres_stressed), sumergir, divergir, convergir, arrecir (no_pres_stressed), rostir, polir (obsolete), condir (obsolete), possibly ascondir (obsolete), atordir (obsolete), sacodir (obsolete), sobrevendir (possible misspelling), empedernir (no_pres_stressed), decebir (obsolete; possibly actually like concebir, i.e. decibo not decebo), premir (obsolete), expremir (obsolete), exir (obsolete), escreuir (obsolete; fix conjugation), escrebir (obsolete), agredir; sometimes the stressed forms are rare or disused. (Also embaír, desvaír are no_pres_stressed.) 2a. ie: Infinitive has -e-, changing to -ie- when stressed. No raising before i+V. Only hendir, cernir, discernir, concernir (only3sp); discernir -> discierno, discerniendo, discernió, discernamos. 2b. ye: Infinitive has -e-, changing to -ye- when stressed. No raising before i+V. Does not occur (cf. errar). 3a. ie-i: Infinitive has -e- or -i-, changing to -ie- when stressed. Raising before i+V and 1p/2p pres subjunctive: sentir -> siento, sintiendo, sintió, sintamos. adquirir -> adquiero, adquiriendo, adquirió, adquiramos. 3b. ye-i: Infinitive has -e-, changing to -ye- when stressed. Raising before i+V and 1p/2p pres subjunctive. Only erguir: erguir -> yergo, irguiendo, irguió, irgamos. 4. i: Infinitive has -e-, changing to -i- when stressed. Raising before i+V and 1p/2p pres subjunctive: vestir -> visto, vistiendo, vistió, vistamos. Variant: ceñir -> ciño, ciñendo, ciñó, ciñamos. NOTE: preterir (no_pres_stressed). 5. ue-u: Infinitive has -o-, changing to -ue- when stressed. Raising before i+V and 1p/2p pres subjunctive: Only dormir, morir and compounds. dormir -> duermo, durmiendo, durmió, durmamos. 6. ue: This type would be parallel to 'ie' but doesn't appear to exist. --------- Verbs to fix (extra forms need to be excised or deleted): The above verbs under type (1) -ir vowel alternations; [[neviscar]] (impersonal), [[acaecer]] (third-person only), [[acontecer]] (third-person only), [[cellisquear]] (impersonal), [[pintear]] (impersonal? other meaning "to play hookey" given, not in RAE), [[diluviar]] (impersonal). [[desabrir]] (not like abrir, rare in pres_stressed/sub forms), [[jabrir]] (not like abrir). Verbs with existing errors: * [[abeldar]]: (missing <ie>) [FORMS TO DELETE] * [[acaecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[acontecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[anticuar]] (conjugated without ú) [FORMS TO DELETE] * [[antojar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[aerografiar]]: (conjugated without í) [FORMS TO DELETE] * [[afiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[agraviar]]: (wrongly has í) [FORMS TO DELETE] * [[arrecir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[aserrar]]: (missing <ie>) [FORMS TO DELETE] * [[aspaventar]]: (missing <ie>) [OK] * [[atesar]]: (wrongly has ie) [FORMS TO DELETE] * [[avalentar]]: (wrongly has ie) [FORMS TO DELETE] * [[autorregularse]] (conjugated as non-reflexive) [OK] * [[auxiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[balbucir]] (pres1_and_sub nonexistent) [DELETE PRES1_AND_SUB FORMS] * [[caçar]] (conjugated as -zar) [OK] * [[calefacer]] (extra form caleface) [FIX] * [[cellisquear]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[chilenizar]] (conjugated with no cons alternation) [OK] * [[colorir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[comisariar]] (conjugated without í) [FORMS TO DELETE] * [[complacer]] (missing complega in imperative 3s) [OK] * [[comprehender]] (conjugated as comprender) [OK] * [[decebir]] (was conjugated without <i>) [FORMS TO DELETE] * [[desafiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[desagregar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desairar]]: (conjugated with í should be only +) [FORMS TO DELETE] * [[descordar]]: (missing <ue>) [FORMS TO DELETE] * [[deseleccionar]] (conjugated as desseleccionar) [OK] * [[desestacionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desgonzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desguinzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[deshacer]] (extra form deshace, desháceme etc.) [OK] * [[desnacer]] (extra form desnato etc.) [DELETE PP FORMS] * [[desposeer]] (extra form desposeso etc.) [DELETE PP FORMS] * [[dezmar]]: (wrongly has ie) [FORMS TO DELETE] * [[diluviar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[draftear]] (extraneous param lang=es) [REMOVE PARAM] * [[ejemplarizar]] (extraneous param compound=1) [compound -> combined] * [[ejercitar]] (extraneous param compound=1) [compound -> combined] * [[empecer]] (empezca has imperatives, 1s in its verb form entry) [FIX] * [[encentar]]: (wrongly has ie) [OK] * [[encubertar]]: (wrongly has ie) [FORMS TO DELETE] * [[entrechocar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[entredecir]] (imp_2s has entredice should be entredí; extra future/cond forms entredeciré etc.) [FORMS TO DELETE/FIX] * [[escenografiar]]: (conjugated without í) [FORMS TO DELETE] * [[estar]] (incorrect combined forms, e.g. éstela instead of estela) [OK] * [[extasiar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[facer]] (extra form face, fáceme, etc.) [FIX] * [[ferrar]]: (missing <ie>) [FORMS TO DELETE] * [[gloriar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[hacer]] (extra form hace, háceme, etc.) [DELETE hácete] * [[homogeneizar]] (extra form homogeneízo) [DELETE homogeneízo, homogeneízas, homogeneíza, homogeneízan, homogeneícen, homogeneícemos] * [[incensar]]: (missing <ie>) [FORMS TO DELETE] * [[ir]] (extraneous param aux=ser) [REMOVE PARAM] * [[jacer]] (extra form jace, jáceme, etc.) [FIX] * [[jarrear]] (extraneous param impersonal=yes) * [[litografiar]]: (conjugated without í) [FORMS TO DELETE] * [[manumitir]] (extra form manumiso, etc.) [FIX; is an adjective] * [[mecanografiar]]: (conjugated without í) [FORMS TO DELETE] * [[mordiscar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[neviscar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[obsipar]] (conjugated as obispar) [DELETE VERB] * [[obstar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[orificar]] (conjugated as orificiar) [OK] * [[complacer]], [[placer]] (missing plega in imperative 3s, etc.) [OK] * [[prevaler]] (extra form preval, incorrect form prévalme etc.) [DELETE preval] * [[preterir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[raer]] (extra form rao) [DELETE rao] * [[rebordar]] (extraneous param lang=es) [REMOVE PARAM] * [[redecir]] (incorrect imp_2s redice instead of redí) [FIX] * [[reinstitucionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[reirse]] [DELETE] * [[serigrafiar]]: (conjugated without í) [FORMS TO DELETE] * [[sobresalir]] (incorrect combined forms e.g. sobrésalme) [OK] * [[superpoblar]] (missing <ue>) [FORMS TO DELETE] * [[sustituir]] (extra form sustituto, etc.) [OK] * [[usucapir]]: (used only in inf and pp) [DELETE ALL FORMS BUT PP] * [[valefacer]] (extra form valeface) [FIX] * [[valer]] (extra form val, etc.) [OK] * LOTS OF COMBINED FORMS OF VERBS IN -iar, -uar, -ai-, -au-, -ei-, -eu-, etc. Example: afeitar (afeítate, afeítese, afeítense). Need a script to find them. * [[acostar]]: normally <ue> but in meaning "arrive at the coast", <> * [[adecuar]]: <+,ú> * [[aerografiar]]: <í> * [[aferrar]]: <+,ie[obsolete]> * [[afiliar]]: <> * [[aforar]]: in meaning "to gauge, to measure": <>; in meaning "otorgar fuero": <ue> * [[arrecir]]: <no_pres_stressed> * [[agraviar]]: <> * [[agriar]]: <í,+> * [[aserrar]]: <ie> * [[asolar]]: in meaning "destroy": <ue,+>; in meaning "to dry up": <> * [[aspaventar]]: <ie> * [[atentar]]: in meaning "to commit a crime" does not have vowel alt * [[atesar]]: <>; possibly <ie> in obsolete meaning "atiesar" * [[atestar]]: in meaning "to pack": <ie,+>; in meaning "testify": <> * [[autoevacuarse]]: <+,ú> * [[auxiliar]]: <> * [[avalentar]]: <> * [[cimentar]]: <ie,+> * [[colar]]: most meanings <ue> but "canonically confer (an ecclesiastical benefit)" <> * [[colorir]]: <no_pres_stressed> * [[comisariar]]: <í> * [[desafiliar]]: <> * [[desaforar]]: "to deprive of fuero": <ue,+[less common]> * [[desairar]]: <> * [[desolar]]: <ue,+> * [[desmembrar]]: <ie,+> * [[dezmar]]: <> * [[ejecutoriar]]: <í,+> * [[emparentar]]: <ie,+> * [[encentar]]: <> * [[encubertar]]: <> * [[engrosar]]: <ue,+> * [[escenografiar]]: <í> * [[evacuar]]: <+,ú> * [[expatriar]]: <í,+> * [[extasiar]]: <í> * [[ferrar]]: <ie> * [[follar]]: <ue> * [[gloriar]]: <í> * [[hibernar]]: no vowel alt or e-ie; e-ie not in RAE, ask about it * [[historiar]]: <í,+> * [[incensar]]: <ie> * [[invernar]]: <ie,+> * [[licuar]]: <+,ú> * [[litografiar]]: <í> * [[mecanografiar]]: <í> * [[paliar]]: <í,+> * [[preterir]]: <i.no_pres_stressed> * [[promiscuar]]: <+,ú> * [[readecuar]]: <+,ú> * [[repatriar]]: <í,+> * [[retrocar]]: <ue,+> * [[serigrafiar]]: <í> * [[soterrar]]: <ie,+> * [[superpoblar]]: <ue> * [[templar]]: <+,ie[in some parts of Latin America]> * [[vidriar]]: <í,+> Second round of verbs to fix: * [[apropriar]]: forms point to reflexive [FORMS TO FIX] * [[autogobernarse]]: (missing <ie>) [FORMS TO DELETE] * [[autorreproducirse]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[aventarse]]: (missing <ie>) [FORMS TO DELETE] * [[aventar]]: forms point to reflexive [FORMS TO FIX] * [[culiar]]: yo culio or culío? [VERIFY] * [[desnacer]]: delete [[dasnatos]] * [[poseer]]: delete [[posesa]], [[posesos]], [[posesas]] * [[reproducir]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[trasgredir]]: (wrongly had <i>) [FORMS TO DELETE] --------- Irregular conjugations. Each entry is processed in turn and consists of an object with two fields: 1. match=: Specifies the irregular verbs that match this object. 2. forms=: Specifies the irregular stems and forms for these verbs. The value of match= is either a string beginning with "^" (match only the specified verb), a string not beginning with "^" (match any verb ending in that string), or a function that is passed in the verb and should return the prefix of the verb if it matches, otherwise nil. The function match_against_verbs() is provided to facilitate matching a set of verbs with a common ending and specific prefixes (e.g. [[andar]] and [[desandar]] but not [[mandar]], etc.). The value of forms= is a table specifying stems and individual override forms. Each key of the table names either a stem (e.g. `pres_stressed`), a stem property (e.g. `vowel_alt`) or an individual override form (e.g. `pres_1s`). Each value of a stem can either be a string (a single stem), a list of strings, or a list of objects of the form {form = STEM, footnotes = {FOONOTES}}. Each value of an individual override should be of exactly the same form except that the strings specify full forms rather than stems. The values of a stem property depend on the specific property but are generally strings or booleans. In order to understand how the stem specifications work, it's important to understand the phonetic modifications done by combine_stem_ending(). In general, the complexities of predictable stem and ending modifications are all handled in this function. In particular: 1. Spelling-based modifications (c/z, g/gu, gu/gü, g/j) occur automatically as appropriate for the ending. 2. Raising of e -> i, o -> u in -ir verbs before an ending beginning with i + vowel, as well as in the 1p/2p forms of the present subjunctive (dormir -> durmiendo, durmió, durmamos), are handled here. Raising happens only for -ir verbs and only when the stem setting `raising_conj` is true (which is normally set to true when vowel alternations `ie-i`, `ye-i`, `ue-u`, `i`, `í` or `ú` are specified). 3. Numerous modifications are automatically made before an ending beginning with i + vowel. These include: a. final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; b. in the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. imperfect and and future subjunctive), initial i absorbed after j and u (dijeron not #dijieron, likewise for condujeron, trajeron; also fueron not #fuyeron). This happens only when stem setting `pret_conj` == "irreg"; this must be set explicitly by irregular verbs. Does not apply everywhere because of cases like regular [[tejer]] (tejieron not #tejeron), regular [[concluir]] (concluyeron not #conclueron). c. initial i of ending -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; ir -> yendo; d. initial i of ending -> y after gü, which becomes gu: argüir -> arguyó, arguyera, arguyendo; e. initial i of ending absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo 4. If the ending begins with (h)i, it gets an accent after a/e/i/o to prevent the two merging into a diphthong: caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. concluir -> concluiste, concluimos. 5. In -uir verbs (i.e. -ir verbs with stem ending in -u), a y is added before endings beginning with a/e/o: concluir -> concluyo, concluyen, concluya, concluyamos. Note that preterite concluyó, gerund concluyendo, etc. are handled by a different rule above (3b). The following stems are recognized: -- pres_unstressed: The present indicative unstressed stem (2s voseo, 1p, 2p). Also controls the imperative 2p and gerund. Defaults to the infinitive stem. -- pres_stressed: The present indicative stressed stem (1s, 2s, 3s, 3p). Also controls the imperative 2s. Default is empty if indicator `no_pres_stressed`, else a vowel alternation if such an indicator is given (e.g. `ue`, `ì`), else the infinitive stem. -- pres1_and_sub: Overriding stem for 1s present indicative and the entire subjunctive. Only set by irregular verbs and by the indicator `no_pres_stressed` (since verbs of this sort, e.g. [[aterir]], are missing the entire subjunctive as well as the forms with stressed root). Used by many irregular verbs, e.g. [[caer]], [[roer]], [[salir]], [[tener]], [[valer]], [[venir]], etc. Some verbs set this and then supply an override for the pres_1sg if it's irregular, e.g. [[saber]], with irregular subjunctive stem "sep-" and special 1s present indicative "sé*" (the * indicates that the monosyllabic accent should not be removed). -- pres1: Special stem for 1s present indicative. Normally, do not set this explicitly. If you need to specify an irregular 1s present indicative, use the form override pres_1s= to specify the entire form. Defaults to pres1_and_sub if given, else pres_stressed. -- pres_sub_unstressed: The present subjunctive unstressed stem (1p, 2p, also 2s voseo for -ar verbs). Defaults to pres1_and_sub if given, else the infinitive stem. -- pres_sub_stressed: The present subjunctive stressed stem (1s, 2s, 3s, 1p, also 2s voseo for -er/-ir verbs). Defaults to pres1. -- impf: The imperfect stem. Defaults to the infinitive stem. -- pret: The preterite stem. Defaults to the infinitive stem. -- pret_conj: Determines the set of endings used in the preterite. Should be one of "ar", "er", "ir" or "irreg". Defaults to the conjugation as determined from the infinitive. -- fut: The future stem. Defaults to the infinitive stem. -- cond: The conditional stem. Defaults to fut. -- impf_sub_ra: The imperfect subjunctive -ra stem. Defaults to the preterite stem. -- impf_sub_se: The imperfect subjunctive -se stem. Defaults to the preterite stem. -- fut_sub: The future subjunctive stem. Defaults to the preterite stem. -- pp: The past participle stem. Default is based on the verb conjugation: infinitive stem + "ad" for -ar verbs, otherwise infinitive stem + "id". ]=] local built_in_conjugations = { { -- andar, desandar -- we don't want to match e.g. mandar. match = match_against_verbs("andar", {"", "des"}), forms = {pret = "anduv", pret_conj = "irreg"} }, { -- asir, desasir match = "asir", -- use 'asgu' because we're in a front environment; if we use 'asg', we'll get '#asjo' forms = {pres1_and_sub = "asgu"} }, { -- abrir, cubrir and compounds match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(brir)$") -- Only match abrir, cubrir and compounds, and don't match desabrir/jabrir if not prefix then return nil elseif not prefix:find("a$") and not prefix:find("cu$") then return nil elseif prefix == "desa" or prefix == "ja" then return nil else return prefix, base_verb end end, forms = {pp = "biert"} }, { match = "caber", forms = {pres1_and_sub = "quep", pret = "cup", pret_conj = "irreg", fut = "cabr"} }, { -- caer, decaer, descaer, recaer match = "caer", -- use 'caigu' because we're in a front environment; if we use 'caig', we'll get '#caijo' forms = {pres1_and_sub = "caigu"} }, { -- cocer, escocer, precocer, etc. match = "cocer", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "ue", pres1 = "cuez", pres_sub_unstressed = "coz", cons_alt = "c-z"}, -- not cozco, as would normally be generated }, { -- dar, desdar match = match_against_verbs("dar", {"", "des"}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_1s = "doy", pres_2s = "dás", pres_3s = "dá", pres_2p = "dáis", pres_3p = "dán", pret = "d", pret_conj = "er", pres_sub_1s = "dé*", -- * signals that the monosyllabic accent must remain pres_sub_2s = "dés", pres_sub_3s = "dé*", pres_sub_2p = "déis", pres_sub_3p = "dén", imp_2s = "dá", } }, { -- decir, redecir, entredecir match = match_against_verbs("decir", {"", "re", "entre"}), forms = { -- for this and variant verbs in -decir, we set cons_alt to false because we don't want the -- verb categorized as a c-zc alternating verb, which would happen by default -- use 'digu' because we're in a front environment; if we use 'dig', we'll get '#dijo' pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir", imp_2s = "dí" -- need the accent for the compounds; it will be removed in the simplex } }, { -- antedecir, interdecir match = match_against_verbs("decir", {"ante", "inter"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir" -- imp_2s regular } }, { -- bendecir, maldecir match = match_against_verbs("decir", {"ben", "mal"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = {"decid", "dit"} -- imp_2s regular, fut regular } }, { -- condecir, contradecir, desdecir, predecir, others? match = "decir", forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = {"decir", "dir"} -- imp_2s regular } }, { match = "^desvaír", forms = { pres_2s = "desvaes", pres_3s = "desvae", pres_3p = "desvaen", imp_2s = "desvae" } }, { -- conducir, producir, reducir, traducir, etc. match = "ducir", forms = {pret = "duj", pret_conj = "irreg"} }, { -- elegir, reelegir; not preelegir, per RAE match = match_against_verbs("elegir", {"", "re"}), forms = {vowel_alt = "i", pp = {"elegid", "elect"}} }, { -- erguir match = "^erguir", forms = { vowel_alt = {"i", "ye-i"}, -- We would not need to make this verb irregular except for the alternative unstressed present subjunctive forms -- in yerg-. We can't use pres_sub_unstressed = {"irgu", "yergu"} because the "i" and "ye-i" vowel alternations -- are e->i raising in the unstressed present subjunctive and we wrongly get irgamos/yirgamos etc. pres_sub_2sv = {"irgás", "yergás"}, pres_sub_1p = {"irgamos", "yergamos"}, pres_sub_2p = {"irgáis", "yergáis"}, }, }, { match = "^estar", forms = { pres_1s = "estoy", pres_2s = "estás", pres_2sv = "estás", pres_3s = "está", pres_3p = "están", pret = "estuv", pret_conj = "irreg", pres_sub_1s = "esté", pres_sub_2s = "estés", pres_sub_2sv = "estés", pres_sub_3s = "esté", pres_sub_3p = "estén", imp_2s = "está", imp_2sv = "está", } }, { -- freír, refreír match = "freír", forms = {vowel_alt = "í", pp = {"freíd", "frit"}} }, { match = "garantir", forms = { pres_stressed = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, pres1_and_sub = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, } }, { match = "^haber", forms = { pres_1s = "he", pres_2s = "has", pres_2sv = "has", pres_3s = {"ha", {form = "hay", footnotes = {"[used impersonally]"}}}, pres_1p = "hemos", pres_3p = "han", pres1_and_sub = "hay", -- only for subjunctive as we override pres_1s pret = "hub", pret_conj = "irreg", imp_2s = {"habe", "he"}, imp_2sv = {"habe", "he"}, fut = "habr", } }, { match = "satisfacer", forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "satisfagu", cons_alt = false, pret = "satisfic", pret_conj = "irreg", pp = "satisfech", fut = "satisfar", imp_2s = {"satisface", "satisfaz"} } }, { match = match_against_verbs("hacer", {"contra", "re"}), -- contrahacer/rehacer require an extra accent in the preterite (rehíce, rehízo). forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "hagu", cons_alt = false, pret = "hic", pret_1s = "híce", pret_3s = "hízo", pret_conj = "irreg", pp = "hech", fut = "har", imp_2s = "haz" } }, { -- hacer, deshacer, contrahacer, rehacer, facer, desfacer, jacer match = function(verb) return rmatch(verb, "^(.*[hjf])(acer)$") end, forms = { -- for these verbs, we set cons_alt to false because we don't want the verb categorized as a -- c-zc alternating verb, which would happen by default -- use 'agu' because we're in a front environment; if we use 'ag', we'll get '#hajo' pres1_and_sub = "agu", cons_alt = false, pret = "ic", pret_conj = "irreg", pp = "ech", fut = "ar", imp_2s = "az" } }, { -- imprimir, reimprimir match = "imprimir", forms = {pp = {"imprimid", "impres"}} }, { -- infecir match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "i", pres1 = "infiz", pres_sub_unstressed = "infez", cons_alt = "c-z"}, -- not infizco, as would normally be generated }, { match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "infez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { match = "^ir", forms = { pres_1s = "voy", pres_2s = "vas", pres_2sv = "vas", pres_3s = "va", pres_1p = "vamos", pres_2p = "vais", pres_3p = "van", pres1_and_sub = "vay", -- only for subjunctive as we override pres_1s full_impf = "ib", impf_1p = "íbamos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", imp_2s = "ve", imp_2sv = "andá", imp_1p = {"vamos", "vayamos"}, refl_imp_2p = {"idos", "iros"}, imp_2p_comb_os = {"idos", "iros"}, } }, { -- mecer, remecer -- we don't want to match e.g. adormecer, estremecer match = match_against_verbs("mecer", {"re", ""}), -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "mez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { -- morir, desmorir, premorir match = "morir", forms = {vowel_alt = "ue-u", pp = "muert"}, }, { -- oír, desoír, entreoír, trasoír match = "oír", -- use 'oigu' because we're in a front environment; if we use 'oig', we'll get '#oijo' forms = {pres1_and_sub = "oigu"} }, { match = "olver", -- solver, volver, bolver and derivatives forms = {vowel_alt = "ue", pp = "uelt"} }, { -- placer, desplacer match = "placer", forms = { pret_3s = {"plació", {form = "plugo", footnotes = {"[archaic]"}}}, pret_3p = {"placieron", {form = "pluguieron", footnotes = {"[archaic]"}}}, pres_sub_3s = {"plazca", {form = "plega", footnotes = {"[archaic]"}}, {form = "plegue", footnotes = {"[archaic]"}}}, impf_sub_ra_3s = {"placiera", {form = "pluguiera", footnotes = {"[archaic]"}}}, impf_sub_ra_3p = {"placieran", {form = "pluguieran", footnotes = {"[archaic]"}}}, impf_sub_se_3s = {"placiese", {form = "pluguiese", footnotes = {"[archaic]"}}}, impf_sub_se_3p = {"placiesen", {form = "pluguiesen", footnotes = {"[archaic]"}}}, fut_sub_3s = {"placiere", {form = "pluguiere", footnotes = {"[archaic]"}}}, fut_sub_3p = {"placieren", {form = "pluguieren", footnotes = {"[archaic]"}}}, } }, { match = "poder", forms = {vowel_alt = "ue", pret = "pud", pret_conj = "irreg", fut = "podr", gerund = "pudiendo"} }, { -- poner, componer, deponer, imponer, oponer, suponer, many others match = "poner", forms = { -- use 'pongu' because we're in a front environment; if we use 'pong', we'll get '#ponjo' pres1_and_sub = "pongu", pret = "pus", pret_conj = "irreg", fut = "pondr", pp = "puest", imp_2s = "pón" -- need the accent for the compounds; it will be removed in the simplex } }, { -- proveer, desproveer match = "proveer", forms = {pp = {"provist", "proveíd"}}, }, { match = "pudrir", forms = {pp = "podrid"} }, { -- querer, desquerer, malquerer match = "querer", forms = {vowel_alt = "ie", pret = "quis", pret_conj = "irreg", fut = "querr"} }, { match = "^raer", -- use 'raigu' because we're in a front environment; if we use 'raig', we'll get '#raijo' forms = {pres1_and_sub = {"raigu", "ray"}} }, { -- roer, corroer match = "roer", -- use 'roigu' because we're in a front environment; if we use 'roig', we'll get '#roijo' forms = {pres1_and_sub = {"ro", "roigu", "roy"}} }, { -- romper, entrerromper, arromper, derromper; not corromper; FIXME: not sure about interromper (obsolete) match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(romper)$") -- Don't match corromper if prefix == "cor" then return nil else return prefix, base_verb end end, forms = {pp = "rot"} }, { -- saber, resaber match = "saber", forms = { pres_1s = "sé*", -- * signals that the monosyllabic accent must remain pres1_and_sub = "sep", -- only for subjunctive as we override pres_1s pret = "sup", pret_conj = "irreg", fut = "sabr", } }, { match = "salir", forms = { -- use 'salgu' because we're in a front environment; if we use 'salg', we'll get '#saljo' pres1_and_sub = "salgu", fut = "saldr", imp_2s = "sal", -- These don't exist per the RAE. imp_2s_comb_lo = {}, imp_2s_comb_los = {}, imp_2s_comb_la = {}, imp_2s_comb_las = {}, imp_2s_comb_le = {}, imp_2s_comb_les = {}, }, }, { match = "scribir", -- escribir, describir, proscribir, etc. forms = {pp = {"scrit", {form = "script", footnotes = {"[Argentina and Uruguay]"}}}} }, { match = "^ser", forms = { pres_1s = "soy", pres_2s = "eres", pres_2sv = "sos", pres_3s = "es", pres_1p = "somos", pres_2p = "sois", pres_3p = "son", pres1_and_sub = "se", -- only for subjunctive as we override pres_1s full_impf = "er", impf_1p = "éramos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", fut = "ser", imp_2s = "sé*", -- * signals that the monosyllabic accent must remain imp_2sv = "sé*", } }, { match = "^soler", forms = { vowel_alt = "ue", fut = {{form = "soler", footnotes = {"[rare but acceptable]"}}}, fut_sub = {{form = "sol", footnotes = {"[rare but acceptable]"}}}, pp = {{form = "solid", footnotes = {"[rare but acceptable]"}}}, } }, { -- tener, abstener, contener, detener, obtener, sostener, and many others match = "tener", forms = { -- use 'tengu' because we're in a front environment; if we use 'teng', we'll get '#tenjo' pres1_and_sub = "tengu", vowel_alt = "ie", pret = "tuv", pret_conj = "irreg", fut = "tendr", imp_2s = "tén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- traer, atraer, detraer, distraer, extraer, sustraer, and many others match = "traer", -- use 'traigu' because we're in a front environment; if we use 'traig', we'll get '#traijo' forms = {pres1_and_sub = "traigu", pret = "traj", pret_conj = "irreg"} }, { -- valer, equivaler, prevaler match = "valer", -- use 'valgu' because we're in a front environment; if we use 'valg', we'll get '#valjo' forms = {pres1_and_sub = "valgu", fut = "valdr"} }, { match = "venir", forms = { -- use 'vengu' because we're in a front environment; if we use 'veng', we'll get '#venjo' pres1_and_sub = "vengu", vowel_alt = "ie-i", pret = "vin", pret_conj = "irreg", -- uniquely for this verb, pres sub 2sv/1p/2p do not raise the vowel even though we are an -- e-ie-i verb (contrast sentir -> sintamos/sintáis) pres_sub_2sv = "vengás", pres_sub_1p = "vengamos", pres_sub_2p = "vengáis", fut = "vendr", imp_2s = "vén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- We want to match antever etc. but not atrever etc. No way to avoid listing each verb. match = match_against_verbs("ver", {"ante", "entre", "pre", "re", "tras", ""}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_2s = "vés", pres_2sv = "vés", pres_3s = "vé", pres_2p = "véis", pres_3p = "vén", pres1_and_sub = "ve", impf = "ve", pp = "vist", imp_2s = "vé" -- need the accent for the compounds; it will be removed in the simplex } }, { -- yacer, adyacer, subyacer match = "yacer", -- use 'yazqu/yazgu/yagu' because we're in a front environment; see 'decir' above forms = {pres1_and_sub = {"yazqu", "yazgu", "yagu"}, imp_2s = {"yace", "yaz"}} }, } local reflexive_masc_forms = { ["su"] = {"mi", "tu", "su", "nuestro", "vuestro", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestros", "vuestros", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotros", "vosotros", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotros", "con vosotros", "consigo"}, } local reflexive_fem_forms = { ["su"] = {"mi", "tu", "su", "nuestra", "vuestra", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestras", "vuestras", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotras", "vosotras", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotras", "con vosotras", "consigo"}, } local reflexive_forms = { ["se"] = {"me", "te", "se", "nos", "os", "se"}, ["suyo"] = {"mío", "tuyo", "suyo", "nuestro", "vuestro", "suyo"}, ["suya"] = {"mía", "tuya", "suya", "nuestra", "vuestra", "suya"}, ["suyos"] = {"míos", "tuyos", "suyos", "nuestros", "vuestros", "suyos"}, ["suyas"] = {"mías", "tuyas", "suyas", "nuestras", "vuestras", "suyas"}, } local function skip_slot(base, slot, allow_overrides) if not allow_overrides and (base.basic_overrides[slot] or base.combined_overrides[slot] or base.refl and base.basic_reflexive_only_overrides[slot]) then -- Skip any slots for which there are overrides. return true end if base.only3s and (slot:find("^pp_f") or slot:find("^pp_mp")) then -- diluviar, atardecer, neviscar; impersonal verbs have only masc sing pp return true end if not slot:find("[123]") then -- Don't skip non-personal slots. return false end if base.nofinite then return true end if (base.only3s or base.only3sp or base.only3p) and (slot:find("^imp_") or slot:find("^neg_imp_")) then return true end if base.only3s and not slot:find("3s") then -- diluviar, atardecer, neviscar return true end if base.only3sp and not slot:find("3[sp]") then -- atañer, concernir return true end if base.only3p and not slot:find("3p") then -- [[caer cuatro gotas]], [[caer chuzos de punta]], [[entrarle los siete males]] return true end return false end -- Add the `stem` to the `ending` for the given `slot` and apply any phonetic modifications. -- `is_combining_ending` is true if `ending` is actually the ending (this function is also -- called to combine prefix + stem). WARNING: This function is written very carefully; changes -- to it can easily have unintended consequences. local function combine_stem_ending(base, slot, stem, ending, is_combining_ending) if not is_combining_ending then return stem .. ending end if base.stems.raising_conj and (rfind(ending, "^i" .. V) or slot == "pres_sub_1p" or slot == "pres_sub_2p" or slot == "pres_sub_2sv") then -- need to raise e -> i, o -> u: dormir -> durmió, durmiera, durmiendo, durmamos stem = rsub(stem, "([eo])(" .. C .. "*)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) -- also with stem ending in -gu or -qu (e.g. erguir -> irguió, irguiera, irguiendo, irgamos) stem = rsub(stem, "([eo])(" .. C .. "*[gq]u)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) end -- Lots of sound changes involving endings beginning with i + vowel if rfind(ending, "^i" .. V) then -- (1) final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; note that this rule may be fed -- by the preceding one (stem sonre- raised to sonri-, then final i absorbed) stem = stem:gsub("i$", "") -- (2) In the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. -- imperfect and future subjunctive), initial i absorbed after j (dijeron not #dijieron, likewise for -- condujeron, trajeron) and u (fueron not #fuyeron). Does not apply in regular verb tejer (tejieron not -- #tejeron) and concluir (concluyeron not #conclueron). if base.stems.pret_conj == "irreg" and rfind(stem, "[ju]$") then ending = ending:gsub("^i", "") end -- (3) initial i -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; -- concluir -> concluyó, concluyera, concluyendo; ir -> yendo; but not conseguir/delinquir if stem == "" or (rfind(stem, V .. "$") and not rfind(stem, "[gq]u$")) then ending = ending:gsub("^i", "y") end -- (4) -gü + ie- -> -guye-: argüir -> arguyó, arguyera, arguyendo if stem:find("gü$") then -- transfer the y to the stem to avoid gü -> gu below in front/back conversions stem = stem:gsub("ü$", "uy") ending = ending:gsub("^i", "") end -- (5) initial i absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo if rfind(stem, "[ñy]$") or rfind(stem, "ll$") then ending = ending:gsub("^i", "") end end -- If ending begins with i, it must get an accent after a/e/i/o to prevent the two merging into a diphthong: -- caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. -- concluir -> concluiste, concluimos. if ending:find("^i") and stem:find("[aeio]$") then ending = ending:gsub("^i", "í") end -- If -oír/-uir (i.e. -ir with stem ending in -o/u, e.g. oír, concluir), a y must be added before endings -- beginning with a/e/o. Check for base.stems.pret_conj == "irreg" to exclude stem fu- of [[ir]]. if base.conj == "ir" and rfind(ending, "^[aeoáéó]") and base.stems.pret_conj ~= "irreg" then if rfind(stem, "[aoú]$") then -- oír -> oye, rehuir -> rehúyo/rehúye (with indicator 'ú') stem = stem .. "y" elseif rfind(stem, "[^gq]u$") then -- concluir, but not conseguir or delinquir stem = stem .. "y" elseif stem:find("ü$") then -- argüir -> arguyendo stem = stem:gsub("ü$", "uy") end end -- Spelling changes in the stem; it depends on whether the stem given is the pre-front-vowel or -- pre-back-vowel variant, as indicated by `frontback`. We want these front-back spelling changes to happen -- between stem and ending, not between prefix and stem; the prefix may not have the same "front/backness" -- as the stem. local is_front = rfind(ending, "^[eiéí]") if base.frontback == "front" and not is_front then -- parecer -> parezco, conducir -> conduzco; use zqu to avoid triggering the following gsub(); -- the third line will replace zqu -> zc if slot ~= "pret_3s" then -- exclude hice -> hizo (not #hizco) stem = rsub(stem, "(" .. V .. ")c$", "%1zqu") end stem = stem:gsub("sc$", "squ") -- evanescer -> evanesco, fosforescer -> fosforesco stem = stem:gsub("c$", "z") -- ejercer -> ejerzo, uncir -> unzo stem = stem:gsub("qu$", "c") -- delinquir -> delinco, parecer -> parezqu- -> parezco stem = stem:gsub("g$", "j") -- coger -> cojo, afligir -> aflijo stem = stem:gsub("gu$", "g") -- distinguir -> distingo stem = stem:gsub("gü$", "gu") -- may not occur; argüir -> arguyo handled above elseif base.frontback == "back" and is_front then stem = stem:gsub("gu$", "gü") -- averiguar -> averigüé stem = stem:gsub("g$", "gu") -- cargar -> cargué stem = stem:gsub("c$", "qu") -- marcar -> marqué stem = rsub(stem, "[çz]$", "c") -- aderezar/adereçar -> aderecé end return stem .. ending end local function check_stems_for_suppress_prefix(slot, stems) -- Check whether any or all stems have `suppress_prefix`. local any_suppress_prefix = false local any_not_suppress_prefix = false if type(stems) == "table" then if stems.suppress_prefix then -- A single form object. any_suppress_prefix = true else for _, stem in ipairs(stems) do if type(stem) == "table" and stem.suppress_prefix then any_suppress_prefix = true else any_not_suppress_prefix = true end end end else any_not_suppress_prefix = true end if any_suppress_prefix and any_not_suppress_prefix then -- This should never happen because suppress_prefix is set on user-specified stem and individual form -- overrides, which should completely replace built-in overrides (which don't have suppress_prefix). error("Internal error: For slot '" .. slot .. ", saw a mixture of suppress-prefix and non-suppress-prefix stems, and can't handle") else return any_suppress_prefix end end local function add(base, slot, stems, endings, is_combining_ending, allow_overrides) if skip_slot(base, slot, allow_overrides) then return end local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end iut.add_forms(base.forms, slot, stems, endings, do_combine_stem_ending, nil, nil, base.all_footnotes) end local function add3(base, slot, stems, endings, allow_overrides) local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, stems) if suppress_prefix then return add(base, slot, stems, endings, "is combining ending", allow_overrides) end if skip_slot(base, slot, allow_overrides) then return end local is_combining_ending = false local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end -- Have to reimplement add_multiple_forms() ourselves due to the is_combining_ending -- flag, which needs to be different when adding prefix to stems vs. stems to ending. -- Otherwise we get e.g. #reímpreso instead of reimpreso. local tempdest = {} iut.add_forms(tempdest, slot, base.prefix, stems, do_combine_stem_ending) is_combining_ending = true iut.add_forms(base.forms, slot, tempdest[slot], endings, do_combine_stem_ending) end local function insert_form(base, slot, form) if not skip_slot(base, slot) then iut.insert_form(base.forms, slot, form) end end local function insert_forms(base, slot, forms) if not skip_slot(base, slot) then iut.insert_forms(base.forms, slot, forms) end end local function add_single_stem_tense(base, slot_pref, stems, s1, s2, s3, p1, p2, p3) local function addit(slot, ending) add3(base, slot_pref .. "_" .. slot, stems, ending) end addit("1s", s1) addit("2s", s2) addit("3s", s3) addit("1p", p1) addit("2p", p2) addit("3p", p3) end local function add_present_indic(base) local function addit(slot, stems, ending) add3(base, "pres_" .. slot, stems, ending) end local s2, s2v, s3, p1, p2, p3 if base.conj == "ar" then s2, s2v, s3, p1, p2, p3 = "as", "ás", "a", "amos", "áis", "an" elseif base.conj == "er" then s2, s2v, s3, p1, p2, p3 = "es", "és", "e", "emos", "éis", "en" elseif base.conj == "ir" then s2, s2v, s3, p1, p2, p3 = "es", "ís", "e", "imos", "ís", "en" else error("Internal error: Unrecognized conjugation " .. base.conj) end addit("1s", base.stems.pres1, "o") addit("2s", base.stems.pres_stressed, s2) addit("2sv", base.stems.pres_unstressed, s2v) addit("3s", base.stems.pres_stressed, s3) addit("1p", base.stems.pres_unstressed, p1) addit("2p", base.stems.pres_unstressed, p2) addit("3p", base.stems.pres_stressed, p3) end local function add_present_subj(base) local function addit(slot, stems, ending) add3(base, "pres_sub_" .. slot, stems, ending) end local s1, s2, s2v, s3, p1, p2, p3, voseo_stem if base.conj == "ar" then s1, s2, s2v, s3, p1, p2, p3 = "e", "es", "és", "e", "emos", "éis", "en" else s1, s2, s2v, s3, p1, p2, p3 = "a", "as", "ás", "a", "amos", "áis", "an" end addit("1s", base.stems.pres_sub_stressed, s1) addit("2s", base.stems.pres_sub_stressed, s2) addit("2sv", base.stems.pres_sub_unstressed, s2v) addit("3s", base.stems.pres_sub_stressed, s3) addit("1p", base.stems.pres_sub_unstressed, p1) addit("2p", base.stems.pres_sub_unstressed, p2) addit("3p", base.stems.pres_sub_stressed, p3) end local function add_imper(base) local function addit(slot, stems, ending) add3(base, "imp_" .. slot, stems, ending) end if base.conj == "ar" then addit("2s", base.stems.pres_stressed, "a") addit("2sv", base.stems.pres_unstressed, "á") addit("2p", base.stems.pres_unstressed, "ad") elseif base.conj == "er" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "é") addit("2p", base.stems.pres_unstressed, "ed") elseif base.conj == "ir" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "í") addit("2p", base.stems.pres_unstressed, "id") else error("Internal error: Unrecognized conjugation " .. base.conj) end end local function add_finite_non_present(base) local function add_tense(slot, stem, s1, s2, s3, p1, p2, p3) add_single_stem_tense(base, slot, stem, s1, s2, s3, p1, p2, p3) end local stems = base.stems if stems.full_impf then -- An override needs to be supplied for the impf_1p due to the accent on the stem. add_tense("impf", stems.full_impf, "a", "as", "a", {}, "ais", "an") elseif base.conj == "ar" then add_tense("impf", stems.impf, "aba", "abas", "aba", "ábamos", "abais", "aban") else add_tense("impf", stems.impf, "ía", "ías", "ía", "íamos", "íais", "ían") end if stems.pret_conj == "irreg" then add_tense("pret", stems.pret, "e", "iste", "o", "imos", "isteis", "ieron") elseif stems.pret_conj == "ar" then add_tense("pret", stems.pret, "é", "aste", "ó", "amos", "asteis", "aron") else add_tense("pret", stems.pret, "í", "iste", "ió", "imos", "isteis", "ieron") end if stems.pret_conj == "ar" then add_tense("impf_sub_ra", stems.impf_sub_ra, "ara", "aras", "ara", "áramos", "arais", "aran") add_tense("impf_sub_se", stems.impf_sub_se, "ase", "ases", "ase", "ásemos", "aseis", "asen") add_tense("fut_sub", stems.fut_sub, "are", "ares", "are", "áremos", "areis", "aren") else add_tense("impf_sub_ra", stems.impf_sub_ra, "iera", "ieras", "iera", "iéramos", "ierais", "ieran") add_tense("impf_sub_se", stems.impf_sub_se, "iese", "ieses", "iese", "iésemos", "ieseis", "iesen") add_tense("fut_sub", stems.fut_sub, "iere", "ieres", "iere", "iéremos", "iereis", "ieren") end add_tense("fut", stems.fut, "é", "ás", "á", "emos", "éis", "án") add_tense("cond", stems.cond, "ía", "ías", "ía", "íamos", "íais", "ían") end local function add_non_finite_forms(base) local stems = base.stems local function addit(slot, stems, ending) add3(base, slot, stems, ending) end insert_form(base, "infinitive", {form = base.verb}) -- Also insert "infinitive + reflexive pronoun" combinations if we're handling a reflexive verb. See comment below for -- "gerund + reflexive pronoun" combinations. if base.refl then for _, persnum in ipairs(person_number_list_basic) do insert_form(base, "infinitive_" .. persnum, {form = base.verb}) end end local ger_ending = base.conj == "ar" and "ando" or "iendo" addit("gerund", stems.pres_unstressed, ger_ending) -- Also insert "gerund + reflexive pronoun" combinations if we're handling a reflexive verb. We insert exactly the same -- form as for the bare gerund; later on in add_reflexive_or_fixed_clitic_to_forms(), we add the appropriate clitic -- pronouns. It's important not to do this for non-reflexive verbs, because in that case, the clitic pronouns won't be -- added, and {{es-verb form of}} will wrongly consider all these combinations as possible inflections of the bare -- gerund. Thanks to [[User:JeffDoozan]] for this bug fix. if base.refl then for _, persnum in ipairs(person_number_list_basic) do addit("gerund_" .. persnum, stems.pres_unstressed, ger_ending) end end addit("pp_ms", stems.pp, "o") addit("pp_fs", stems.pp, "a") addit("pp_mp", stems.pp, "os") addit("pp_fp", stems.pp, "as") end local function copy_subjunctives_to_imperatives(base) -- Copy subjunctives to imperatives, unless there's an override for the given slot (as with the imp_1p of [[ir]]). for _, persnum in ipairs({"3s", "1p", "3p"}) do local from = "pres_sub_" .. persnum local to = "imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) return form end)) end end -- Remove monosyllabic accents (e.g. the 3sg preterite of fiar is fio not #fió). Note that there are a -- few monosyllabic verb forms that intentionally have an accent, to distinguish them from other words -- with the same pronunciation. These are as follows: -- (1) [[sé]] 1sg present indicative of [[saber]]; -- (2) [[sé]] 2sg imperative of [[ser]]; -- (3) [[dé]] 1sg and 3sg present subjunctive of [[dar]]. -- For these, a * is added, which indicates that the accent needs to remain. If we see such a *, we remove -- it but otherwise leave the form alone. local function remove_monosyllabic_accents(base) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) if base.forms[slot] then for _, form in ipairs(base.forms[slot]) do if form.form:find("%*") then -- * means leave alone any accented vowel form.form = form.form:gsub("%*", "") elseif may_need_monosyllabic_accent_removed(form.form) then -- Has an accented vowel and no VCV sequence and not a suffix; may be monosyllabic, in which -- case we need to remove the accent. Check # of syllables and remove accent if only 1. Note -- that the checks for accented vowel and VCV sequence are not strictly needed, but are -- optimizations to avoid running the whole syllabification algorithm on every verb form. local syllables = com.syllabify(form.form) if #syllables == 1 then form.form = com.remove_accent_from_syllable(syllables[1]) end end end end end end -- Add the appropriate clitic pronouns in `clitics` to the forms in `base_slot`. `store_cliticized_form` is a function -- of three arguments (clitic, formobj, cliticized_form) and should store the cliticized form for the specified clitic -- and form object. local function add_forms_with_clitic(base, base_slot, clitics, store_cliticized_form) -- the special slot lxx is for le/les clitics that become "se" in double clitics if base_slot:match("_comb_lxx$") then base_slot = base_slot:gsub("_comb_lxx$", "_comb_le") end if not base.forms[base_slot] then mw.log("unhandled base_slot " .. base_slot) -- This can happen, e.g. in only3s/only3sp/only3p verbs. return end for _, formobj in ipairs(base.forms[base_slot]) do -- Figure out the correct accenting of the verb when a clitic pronoun is attached to it. We may need to -- add or remove an accent mark: -- (1) No accent mark currently, none needed: infinitive sentar -> sentarlo; imperative singular ten -> tenlo; -- (2) Accent mark currently, still needed: infinitive oír -> oírlo; -- (3) No accent mark currently, accent needed: imperative singular siente -> siéntelo; -- (4) Accent mark currently, not needed: imperative singular está -> estalo, sé -> selo. local syllables = com.syllabify(formobj.form) local sylno = com.stressed_syllable(syllables) table.insert(syllables, "lo") local needs_accent = com.accent_needed(syllables, sylno) if needs_accent then syllables[sylno] = com.add_accent_to_syllable(syllables[sylno]) else syllables[sylno] = com.remove_accent_from_syllable(syllables[sylno]) end table.remove(syllables) -- remove added clitic pronoun local reaccented_form = table.concat(syllables) for _, clitic in ipairs(clitics) do local cliticized_form -- Some further special cases. if base_slot == "imp_1p" and (clitic == "nos" or clitic == "os") then -- Final -s disappears: sintamos + nos -> sintámonos, sintamos + os -> sintámoos cliticized_form = reaccented_form:gsub("s$", "") .. clitic elseif base_slot == "imp_2p" and clitic == "os" then -- Final -d disappears, which may cause an accent to be required: -- haced + os -> haceos, sentid + os -> sentíos if reaccented_form:find("id$") then cliticized_form = reaccented_form:gsub("id$", "íos") else cliticized_form = reaccented_form:gsub("d$", "os") end else cliticized_form = reaccented_form .. clitic end store_cliticized_form(clitic, formobj, cliticized_form) end end end -- Generate the combinations of verb form (infinitive, gerund or various imperatives) + clitic pronoun. local function add_combined_forms(base) for _, base_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_combined_rows) do local base_slot, clitics = unpack(base_slot_and_clitics) add_forms_with_clitic(base, base_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, base_slot .. "_comb_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end for _, single_comb_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_double_combined_rows) do local single_comb_slot, clitics = unpack(single_comb_slot_and_clitics) -- Handle le -> se transformation for double clitics if single_comb_slot:match("_comb_lxx$") then add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) -- Only add se version for accusative clitics (lo/la/los/las) if clitic:match("^l[aeo]") then cliticized_form = cliticized_form:gsub("le" .. clitic .. "$", "se" .. clitic) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end end ) end add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end end local function process_slot_overrides(base, do_basic, reflexive_only) local overrides = reflexive_only and base.basic_reflexive_only_overrides or do_basic and base.basic_overrides or base.combined_overrides for slot, forms in pairs(overrides) do local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, forms) add(base, slot, suppress_prefix and "" or base.prefix, forms, false, "allow overrides") end end -- Prefix `form` with `clitic`, adding fixed text `between` between them. Add links as appropriate unless the user -- requested no links. Check whether form already has brackets (as will be the case if the form has a fixed clitic). local function add_clitic_to_form(base, clitic, between, form) if base.alternant_multiword_spec.args.noautolinkverb then return clitic .. between .. form else local clitic_pref = "[[" .. clitic .. "]]" .. between if form:find("%[%[") then return clitic_pref .. form else return clitic_pref .. "[[" .. form .. "]]" end end end -- Add a reflexive pronoun or fixed clitic, e.g. [[lo]], as appropriate to the base form that were generated. -- `do_joined` means to do only the forms where the pronoun is joined to the end of the form; otherwise, do only the -- forms where it is not joined and precedes the form. local function add_reflexive_or_fixed_clitic_to_forms(base, do_reflexive, do_joined) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) local clitic if not do_reflexive then clitic = base.clitic elseif slot:find("[123]") then local persnum = slot:match("^.*_(.-)$") clitic = person_number_to_reflexive_pronoun[persnum] else clitic = "se" end if base.forms[slot] then if do_reflexive and slot:find("^pp_") or slot == "infinitive_linked" then -- do nothing with reflexive past participles or with infinitive linked (handled at the end) elseif slot:find("^neg_imp_") then error("Internal error: Should not have forms set for negative imperative at this stage") else local slot_has_suffixed_clitic = slot:find("infinitive") or slot:find("gerund") or slot:find("^imp_") -- Maybe generate non-reflexive parts and separated syntactic variants for use in {{es-verb form of}}. -- See comment in add_slots() above `need_special_verb_form_of_slots`. Check for do_joined so we only -- run this code once. if do_reflexive and do_joined and base.alternant_multiword_spec.source_template == "es-verb form of" and -- Skip personal variants of infinitives and gerunds so we don't think [[jambando]] is a -- non-reflexive equivalent of [[jambándome]]. not slot:find("infinitive_") and not slot:find("gerund_") then -- Clone the forms because we will be destructively modifying them just below, adding the reflexive -- pronoun. insert_forms(base, slot .. "_non_reflexive", mw.clone(base.forms[slot])) if slot_has_suffixed_clitic then insert_forms(base, slot .. "_variant", iut.map_forms(base.forms[slot], function(form) return add_clitic_to_form(base, clitic, " ... ", form) end)) end end if slot_has_suffixed_clitic then if do_joined then add_forms_with_clitic(base, slot, {clitic}, function(clitic, formobj, cliticized_form) formobj.form = cliticized_form end ) end elseif not do_joined then -- Add clitic as separate word before all other forms. for _, form in ipairs(base.forms[slot]) do form.form = add_clitic_to_form(base, clitic, " ", form.form) end end end end end end local function handle_infinitive_linked(base) -- Compute linked versions of potential lemma slots, for use in {{es-verb}}. -- We substitute the original lemma (before removing links) for forms that -- are the same as the lemma, if the original lemma has links. for _, slot in ipairs({"infinitive"}) do insert_forms(base, slot .. "_linked", iut.map_forms(base.forms[slot], function(form) if form == base.lemma and rfind(base.linked_lemma, "%[%[") then return base.linked_lemma else return form end end)) end end local function generate_negative_imperatives(base) -- Copy subjunctives to negative imperatives, preceded by "no". for _, persnum in ipairs(neg_imp_person_number_list) do local from = "pres_sub_" .. persnum local to = "neg_imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) if base.alternant_multiword_spec.args.noautolinkverb then return "no " .. form elseif form:find("%[%[") then -- already linked, e.g. when reflexive return "[[no]] " .. form else return "[[no]] [[" .. form .. "]]" end end)) end end -- Process specs given by the user using 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'. local function process_addnote_specs(base) for _, spec in ipairs(base.addnote_specs) do for _, slot_spec in ipairs(spec.slot_specs) do slot_spec = "^" .. slot_spec .. "$" for slot, forms in pairs(base.forms) do if rfind(slot, slot_spec) then -- To save on memory, side-effect the existing forms. for _, form in ipairs(forms) do form.footnotes = iut.combine_footnotes(form.footnotes, spec.footnotes) end end end end end end local function add_missing_links_to_forms(base) -- Any forms without links should get them now. Redundant ones will be stripped later. for slot, forms in pairs(base.forms) do for _, form in ipairs(forms) do if not form.form:find("%[%[") then form.form = "[[" .. form.form .. "]]" end end end end local function conjugate_verb(base) add_present_indic(base) add_present_subj(base) add_imper(base) add_finite_non_present(base) add_non_finite_forms(base) -- This should happen before add_combined_forms() so overrides of basic forms end up part of the combined forms. process_slot_overrides(base, "do basic") -- do basic slot overrides -- This should happen after process_slot_overrides() in case a derived slot is based on an override (as with the -- imp_3s of [[dar]], [[estar]]). copy_subjunctives_to_imperatives(base) -- This should happen after process_slot_overrides() because overrides may have accents in them that need to be -- removed. (This happens e.g. for most present indicative forms of [[ver]], which have accents in them for the -- prefixed derived verbs, but the accents shouldn't be present in the base verb.) remove_monosyllabic_accents(base) if not base.nocomb then add_combined_forms(base) end -- We need to add joined reflexives, then joined and non-joined clitics, then non-joined reflexives, so we get -- [[házmelo]] but [[no]] [[me]] [[lo]] [[haga]]. if base.refl then -- This should happen after remove_monosyllabic_accents() so the * marking the preservation of monosyllabic -- accents doesn't end up in the middle of a word. add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", "do joined") process_slot_overrides(base, "do basic", "do reflexive") -- do reflexive-only basic slot overrides end if base.clitic then -- This should happen after reflexives are added. add_reflexive_or_fixed_clitic_to_forms(base, false, "do joined") add_reflexive_or_fixed_clitic_to_forms(base, false, false) end if base.refl then add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", false) end -- This should happen after add_reflexive_or_fixed_clitic_to_forms() so negative imperatives get the reflexive pronoun -- and clitic in them. generate_negative_imperatives(base) if not base.nocomb then process_slot_overrides(base, false) -- do combined slot overrides end -- This should happen before add_missing_links_to_forms() so that the comparison `form == base.lemma` -- in handle_infinitive_linked() works correctly and compares unlinked forms to unlinked forms. handle_infinitive_linked(base) process_addnote_specs(base) if not base.alternant_multiword_spec.args.noautolinkverb then add_missing_links_to_forms(base) end end local function parse_indicator_spec(angle_bracket_spec) -- Store the original angle bracket spec so we can reconstruct the overall conj spec with the lemma(s) in them. local base = { angle_bracket_spec = angle_bracket_spec, user_basic_overrides = {}, user_stems = {}, addnote_specs = {}, } local function parse_err(msg) error(msg .. ": " .. angle_bracket_spec) end local function fetch_footnotes(separated_group) local footnotes for j = 2, #separated_group - 1, 2 do if separated_group[j + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(separated_group) .. "'") end if not footnotes then footnotes = {} end table.insert(footnotes, separated_group[j]) end return footnotes end local inside = angle_bracket_spec:match("^<(.*)>$") assert(inside) if inside == "" then return base end local segments = put.parse_balanced_segment_run(inside, "[", "]") local dot_separated_groups = put.split_alternating_runs(segments, "%.") for i, dot_separated_group in ipairs(dot_separated_groups) do local first_element = dot_separated_group[1] if first_element == "addnote" then local spec_and_footnotes = fetch_footnotes(dot_separated_group) if #spec_and_footnotes < 2 then parse_err("Spec with 'addnote' should be of the form 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'") end local slot_spec = table.remove(spec_and_footnotes, 1) local slot_spec_inside = rmatch(slot_spec, "^%[(.*)%]$") if not slot_spec_inside then parse_err("Internal error: slot_spec " .. slot_spec .. " should be surrounded with brackets") end local slot_specs = rsplit(slot_spec_inside, ",") -- FIXME: Here, [[Module:it-verb]] called strip_spaces(). Generally we don't do this. Should we? table.insert(base.addnote_specs, {slot_specs = slot_specs, footnotes = spec_and_footnotes}) elseif indicator_flags[first_element] then if #dot_separated_group > 1 then parse_err("No footnotes allowed with '" .. first_element .. "' spec") end if base[first_element] then parse_err("Spec '" .. first_element .. "' specified twice") end base[first_element] = true elseif rfind(first_element, ":") then local colon_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*:%s*") local first_element = colon_separated_groups[1][1] if #colon_separated_groups[1] > 1 then parse_err("Can't attach footnotes directly to '" .. first_element .. "' spec; attach them to the " .. "colon-separated values following the initial colon") end if overridable_stems[first_element] then if base.user_stems[first_element] then parse_err("Overridable stem '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_stems[first_element] = overridable_stems[first_element](colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}) else -- assume a basic override; we validate further later when the possible slots are available if base.user_basic_overrides[first_element] then parse_err("Basic override '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_basic_overrides[first_element] = allow_multiple_values_for_override( colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}, "add monosyllabic asterisk" ) end else local comma_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*,%s*") for j = 1, #comma_separated_groups do local alt = comma_separated_groups[j][1] if not vowel_alternants[alt] then if #comma_separated_groups == 1 then parse_err("Unrecognized spec or vowel alternant '" .. alt .. "'") else parse_err("Unrecognized vowel alternant '" .. alt .. "'") end end if base.vowel_alt then for _, existing_alt in ipairs(base.vowel_alt) do if existing_alt.form == alt then parse_err("Vowel alternant '" .. alt .. "' specified twice") end end else base.vowel_alt = {} end table.insert(base.vowel_alt, {form = alt, footnotes = fetch_footnotes(comma_separated_groups[j])}) end end end return base end -- Normalize all lemmas, substituting the pagename for blank lemmas and adding links to multiword lemmas. local function normalize_all_lemmas(alternant_multiword_spec, pagename) -- (1) Add links to all before and after text. Remember the original text so we can reconstruct the verb spec later. if not alternant_multiword_spec.args.noautolinktext then iut.add_links_to_before_and_after_text(alternant_multiword_spec, "remember original") end -- (2) Remove any links from the lemma, but remember the original form -- so we can use it below in the 'lemma_linked' form. iut.map_word_specs(alternant_multiword_spec, function(base) if base.lemma == "" then base.lemma = pagename end base.user_specified_lemma = base.lemma base.lemma = m_links.remove_links(base.lemma) local refl_verb, clitic = rmatch(base.lemma, "^(.-)(l[aeo]s?)$") if not refl_verb then refl_verb, clitic = base.lemma, nil end local verb, refl = rmatch(refl_verb, "^(.-)(se)$") if not verb then verb, refl = refl_verb, nil end base.user_specified_verb = verb base.refl = refl base.clitic = clitic if base.refl and base.clitic then -- We have to parse the verb suffix to see how to construct the base verb; e.g. -- abrírsela -> abrir but oírsela -> oír. We parse the verb suffix again in all cases -- in detect_indicator_spec(), after splitting off the prefix of irrregular verbs. local actual_verb local inf_stem, suffix = rmatch(base.user_specified_verb, "^(.*)([aáeéií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.user_specified_verb) end if suffix == "ír" and inf_stem:find("[aeo]$") then -- accent on suffix should remain base.verb = base.user_specified_verb else base.verb = inf_stem .. com.remove_accent_from_syllable(suffix) end else base.verb = base.user_specified_verb end local linked_lemma if alternant_multiword_spec.args.noautolinkverb or base.user_specified_lemma:find("%[%[") then linked_lemma = base.user_specified_lemma elseif base.refl or base.clitic then -- Reconstruct the linked lemma with separate links around base verb, reflexive pronoun and clitic. linked_lemma = base.user_specified_verb == base.verb and "[[" .. base.user_specified_verb .. "]]" or "[[" .. base.verb .. "|" .. base.user_specified_verb .. "]]" linked_lemma = linked_lemma .. (refl and "[[" .. refl .. "]]" or "") .. (clitic and "[[" .. clitic .. "]]" or "") else -- Add links to the lemma so the user doesn't specifically need to, since we preserve -- links in multiword lemmas and include links in non-lemma forms rather than allowing -- the entire form to be a link. linked_lemma = iut.add_links(base.user_specified_lemma) end base.linked_lemma = linked_lemma end) end local function construct_stems(base) local stems = base.stems stems.pres_unstressed = stems.pres_unstressed or base.inf_stem stems.pres_stressed = stems.pres_stressed or -- If no_pres_stressed given, pres_stressed stem should be empty so no forms are generated. base.no_pres_stressed and {} or base.vowel_alt or base.inf_stem stems.pres1_and_sub = stems.pres1_and_sub or -- If no_pres_stressed given, the entire subjunctive is missing. base.no_pres_stressed and {} or -- If no_pres1_and_sub given, pres1 and entire subjunctive are missing. base.no_pres1_and_sub and {} or nil stems.pres1 = stems.pres1 or stems.pres1_and_sub or stems.pres_stressed stems.impf = stems.impf or base.inf_stem stems.pret = stems.pret or base.inf_stem stems.pret_conj = stems.pret_conj or base.conj stems.fut = stems.fut or base.inf_stem .. base.conj stems.cond = stems.cond or stems.fut stems.pres_sub_stressed = stems.pres_sub_stressed or stems.pres1 stems.pres_sub_unstressed = stems.pres_sub_unstressed or stems.pres1_and_sub or stems.pres_unstressed stems.impf_sub_ra = stems.impf_sub_ra or stems.pret stems.impf_sub_se = stems.impf_sub_se or stems.pret stems.fut_sub = stems.fut_sub or stems.pret stems.pp = stems.pp or base.conj == "ar" and combine_stem_ending(base, "pp_ms", base.inf_stem, "ad", "is combining ending") or -- use combine_stem_ending esp. so we get reído, caído, etc. combine_stem_ending(base, "pp_ms", base.inf_stem, "id", "is combining ending") end -- Make a list of the slots given in `list1` and optionally `list2`, with `prefix` added to the beginning of each slot -- name. The elements of each list are of the form {SLOT, ACCEL}. Used for error messages. local function construct_possible_slots(list1, list2, prefix) list2 = list2 or {} prefix = prefix or "" local slots = {} local function insert_list_slots(list) for _, slotaccel in ipairs(list) do local slot, accel = unpack(slotaccel) table.insert(slots, prefix .. slot) end end insert_list_slots(list1) insert_list_slots(list2) return m_table.serialCommaJoin(slots) end local function detect_indicator_spec(base) base.forms = {} base.non_reflexive_forms = {} base.stems = {} if (base.only3s and 1 or 0) + (base.only3sp and 1 or 0) + (base.only3p and 1 or 0) > 1 then error("Only one of 'only3s', 'only3sp' and 'only3p' can be specified") end base.basic_overrides = {} base.basic_reflexive_only_overrides = {} base.combined_overrides = {} if not base.no_built_in then for _, built_in_conj in ipairs(built_in_conjugations) do if type(built_in_conj.match) == "function" then base.prefix, base.non_prefixed_verb = built_in_conj.match(base.verb) elseif built_in_conj.match:find("^%^") and rsub(built_in_conj.match, "^%^", "") == base.verb then -- begins with ^, for exact match, and matches base.prefix, base.non_prefixed_verb = "", base.verb else base.prefix, base.non_prefixed_verb = rmatch(base.verb, "^(.*)(" .. built_in_conj.match .. ")$") end if base.prefix then -- we found a built-in verb base.irreg_verb = true for stem, forms in pairs(built_in_conj.forms) do if stem:find("^refl_") then stem = stem:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[stem] then error("Internal error: setting for 'refl_" .. stem .. "' does not refer to a basic verb slot") end base.basic_reflexive_only_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_basic_map[stem] then -- an individual form override of a basic form base.basic_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_combined_map[stem] then -- an individual form override of a combined form base.combined_overrides[stem] = forms else base.stems[stem] = forms end end break end end end -- Override built-in-verb stems and overrides with user-specified ones. for stem, values in pairs(base.user_stems) do base.stems[stem] = values end for override, values in pairs(base.user_basic_overrides) do if override:find("^refl_") then if not base.refl then error("Can't set reflexive-only override '" .. override .. "' on a non-reflexive verb") end override = override:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[override] then error("Unrecognized reflexive-only override 'refl_" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, nil, "refl_")) end base.basic_reflexive_only_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_basic_map[override] then base.basic_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_combined_map[override] then base.combined_overrides[override] = values else error("Unrecognized override '" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, base.alternant_multiword_spec.verb_slots_combined)) end end base.prefix = base.prefix or "" base.non_prefixed_verb = base.non_prefixed_verb or base.verb local inf_stem, suffix = rmatch(base.non_prefixed_verb, "^(.*)([aeií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.verb) end base.inf_stem = inf_stem suffix = suffix == "ír" and "ir" or suffix base.conj = suffix base.frontback = suffix == "ar" and "back" or "front" if base.stems.vowel_alt then -- built-in verb with specified vowel alternation if base.vowel_alt then error(base.verb .. " is a recognized built-in verb, and should not have vowel alternations specified with it") end base.vowel_alt = iut.convert_to_general_list_form(base.stems.vowel_alt) end -- Propagate built-in-verb indicator flags to `base` and combine with user-specified flags. for indicator_flag, _ in pairs(indicator_flags) do base[indicator_flag] = base[indicator_flag] or base.stems[indicator_flag] end -- Convert vowel alternation indicators into stems. if base.vowel_alt then for _, altform in ipairs(base.vowel_alt) do altform.alt = altform.form -- save original indicator local alt = altform.alt if base.conj == "ir" then local raising = ( alt == "ie-i" or alt == "ye-i" or alt == "ue-u" or alt == "i" or alt == "í" or alt == "ú" ) if base.stems.raising_conj == nil then base.stems.raising_conj = raising elseif base.stems.raising_conj ~= raising then error("Can't currently support a mixture of raising (e.g. 'ie-i') and non-raising (e.g. 'ie') vowel alternations in -ir verbs") end end if alt == "+" then altform.form = base.inf_stem else local normalized_alt = alt if alt == "ie-i" or alt == "ye-i" or alt == "ue-u" then if base.conj ~= "ir" then error("母音交替 '" .. alt .. "' は -ir動詞のみです") end -- ie-i is like i except for the vowel raising before i+V, similarly for ye-i, ue-u, -- so convert appropriately. normalized_alt = alt == "ie-i" and "ie" or alt == "ye-i" and "ye" or "ue" end local ret = com.apply_vowel_alternation(base.inf_stem, normalized_alt) if ret.err then error("To use '" .. alt .. "', present stem '" .. base.inf_stem .. "' " .. ret.err) end altform.form = ret.ret end end end end local function detect_all_indicator_specs(alternant_multiword_spec) -- Propagate some settings up; some are used internally, others by [[Module:es-headword]]. iut.map_word_specs(alternant_multiword_spec, function(base) -- Internal indicator flags. Do these before calling detect_indicator_spec() because add_slots() uses them. for _, prop in ipairs { "refl", "clitic" } do if base[prop] then alternant_multiword_spec[prop] = true end end base.alternant_multiword_spec = alternant_multiword_spec -- If reflexive or fixed clitic, don't include combined forms. alternant_multiword_spec.nocomb = alternant_multiword_spec.nocomb or base.clitic or base.refl end) add_slots(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base) base.nocomb = alternant_multiword_spec.args.nocomb detect_indicator_spec(base) -- User-specified indicator flags. Do these after calling detect_indicator_spec() because the latter may set these -- indicators for built-in verbs. for prop, _ in pairs(indicator_flags) do if base[prop] then alternant_multiword_spec[prop] = true end end construct_stems(base) end) end local function add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) local function insert_ann(anntype, value) m_table.insertIfNot(alternant_multiword_spec.annotation[anntype], value) end local function insert_cat(cat, also_when_multiword) -- Don't place multiword terms in categories like 'Spanish verbs ending in -ar' to avoid spamming the -- categories with such terms. if also_when_multiword or not multiword_lemma then m_table.insertIfNot(alternant_multiword_spec.categories, "Spanish " .. cat) end end if check_for_red_links and alternant_multiword_spec.source_template == "es-conj" and multiword_lemma then for _, slot_and_accel in ipairs(alternant_multiword_spec.all_verb_slots) do local slot = slot_and_accel[1] local forms = base.forms[slot] local must_break = false if forms then for _, form in ipairs(forms) do if not form.form:find("%[%[") then local title = mw.title.new(form.form) if title and not title.exists then insert_cat("verbs with red links in their inflection tables") must_break = true break end end end end if must_break then break end end end insert_cat("verbs ending in -" .. base.conj) if base.irreg_verb then insert_ann("irreg", "irregular") insert_cat("不規則動詞") else insert_ann("irreg", "regular") end if base.only3s then insert_ann("defective", "impersonal") insert_cat("impersonal verbs") elseif base.only3sp then insert_ann("defective", "third-person only") insert_cat("third-person-only verbs") elseif base.only3p then insert_ann("defective", "third-person plural only") insert_cat("third-person-plural-only verbs") elseif base.no_pres_stressed or base.no_pres1_and_sub then insert_ann("defective", "defective") insert_cat("defective verbs") else insert_ann("defective", "regular") end if base.clitic then insert_cat("verbs with lexical clitics") end if base.refl then insert_cat("reflexive verbs") end if not base.vowel_alt then insert_ann("vowel_alt", "non-alternating") else local inf_stem = base.inf_stem:gsub("[gq]u$", "x") for _, alt in ipairs(base.vowel_alt) do if alt.alt == "+" then insert_ann("vowel_alt", "non-alternating") else local desc if alt.alt == "ue" and rfind(inf_stem, "u" .. C .. "*$") then desc = "u-ue交替" -- jugar elseif alt.alt == "ie" and rfind(inf_stem, "i" .. C .. "*$") then desc = "i-ie交替" -- adquirir elseif alt.alt == "í" and rfind(inf_stem, "e" .. C .. "*$") then desc = "e-í交替" -- reír, freír, etc. else desc = vowel_alternant_to_desc[alt.alt] .. "交替" end insert_ann("vowel_alt", desc) insert_cat("verbs with " .. desc) end end end local cons_alt = base.stems.cons_alt if cons_alt == nil then if base.conj == "ar" then if base.inf_stem:find("z$") then cons_alt = "c-z" elseif base.inf_stem:find("ç$") then cons_alt = "c-ç" elseif base.inf_stem:find("c$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-gu" elseif base.inf_stem:find("gu$") then cons_alt = "gu-gü" end else if base.no_pres_stressed or base.no_pres1_and_sub then cons_alt = nil -- no c-zc alternation in balbucir or arrecir elseif rfind(base.inf_stem, V .. "c$") then cons_alt = "c-zc" elseif base.inf_stem:find("sc$") then cons_alt = "hard-soft" elseif base.inf_stem:find("c$") then cons_alt = "c-z" elseif base.inf_stem:find("qu$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-j" elseif base.inf_stem:find("gu$") then cons_alt = "g-gu" elseif base.inf_stem:find("gü$") then cons_alt = "gu-gü" end end end if cons_alt then local desc = cons_alt .. "交替" insert_ann("cons_alt", desc) insert_cat("verbs with " .. desc) else insert_ann("cons_alt", "non-alternating") end end -- Compute the categories to add the verb to, as well as the annotation to display in the -- conjugation title bar. We combine the code to do these functions as both categories and -- title bar contain similar information. local function compute_categories_and_annotation(alternant_multiword_spec) alternant_multiword_spec.categories = {} local ann = {} alternant_multiword_spec.annotation = ann ann.irreg = {} ann.defective = {} ann.vowel_alt = {} ann.cons_alt = {} local multiword_lemma = false for _, form in ipairs(alternant_multiword_spec.forms.infinitive) do if form.form:find(" ") then multiword_lemma = true break end end iut.map_word_specs(alternant_multiword_spec, function(base) add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) end) local ann_parts = {} local irreg = table.concat(ann.irreg, " or ") if irreg ~= "" and irreg ~= "regular" then table.insert(ann_parts, irreg) end local defective = table.concat(ann.defective, " or ") if defective ~= "" and defective ~= "regular" then table.insert(ann_parts, defective) end local vowel_alt = table.concat(ann.vowel_alt, " or ") if vowel_alt ~= "" and vowel_alt ~= "non-alternating" then table.insert(ann_parts, vowel_alt) end local cons_alt = table.concat(ann.cons_alt, " or ") if cons_alt ~= "" and cons_alt ~= "non-alternating" then table.insert(ann_parts, cons_alt) end alternant_multiword_spec.annotation = table.concat(ann_parts, "; ") end local function show_forms(alternant_multiword_spec) local lemmas = alternant_multiword_spec.forms.infinitive alternant_multiword_spec.lemmas = lemmas -- save for later use in make_table() local reconstructed_verb_spec = iut.reconstruct_original_spec(alternant_multiword_spec) -- Initialize the footnotes with those for the future subjunctive and maybe the pres subjunctive -- voseo usage. In the latter case, we only do it if there is a distinct pres subjunctive voseo form. local function create_footnote_obj() local obj = iut.create_footnote_obj() iut.get_footnote_text({fut_sub_note}, obj) -- Compute whether the tuteo and voseo variants are different, for each voseo variant. -- We use this later in make_table(). for _, slot in ipairs({"pres_2s", "pres_sub_2s", "imp_2s"}) do alternant_multiword_spec["separate_" .. slot .. "v"] = false iut.map_word_specs(alternant_multiword_spec, function(base) if not m_table.deepEquals(base.forms[slot], base.forms[slot .. "v"]) then alternant_multiword_spec["separate_" .. slot .. "v"] = true end end) end if alternant_multiword_spec.separate_pres_sub_2sv then iut.get_footnote_text({pres_sub_voseo_note}, obj) end return obj end local function transform_accel_obj(slot, formobj, accel_obj) -- No accelerators for negative imperatives, which are always multiword and derived directly from the -- present subjunctive. if slot:find("^neg_imp") then return nil end if accel_obj then if slot:find("^pp_") then accel_obj.form = slot elseif slot == "gerund" then accel_obj.form = "gerund-" .. reconstructed_verb_spec else accel_obj.form = "verb-form-" .. reconstructed_verb_spec end end return accel_obj end local props = { lang = lang, lemmas = lemmas, create_footnote_obj = create_footnote_obj, transform_accel_obj = transform_accel_obj, } props.slot_list = alternant_multiword_spec.verb_slots_basic iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_basic = alternant_multiword_spec.forms.footnote props.create_footnote_obj = nil props.slot_list = alternant_multiword_spec.verb_slots_combined iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_combined = alternant_multiword_spec.forms.footnote end local notes_template = [=[ <div class="roa-footnote-outer-div" style="width:100%;"> <div class="roa-footnote-inner-div"> {footnote} </div></div> ]=] local pres_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_2sv}<sup><sup>vos</sup></sup>' local pres_sub_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_sub_2sv}<sup><sup>vos<sup class="roa-red-superscript">2</sup></sup></sup>' local imp_2sv_template = '<sup><sup>tú</sup></sup><br />{imp_2sv}<sup><sup>vos</sup></sup>' local basic_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; {title}の活用 ([[Wiktionary:スペイン語動詞活用]]も参照)</div> <div class="NavContent"> {\op}| class="roa-inflection-table" |- ! colspan="3" class="roa-nonfinite-header" | <span title="infinitivo">不定詞</span> | colspan="5" | {infinitive} |- ! colspan="3" class="roa-nonfinite-header" | <span title="gerundio">現在分詞</span> | colspan="5" | {gerund} |- ! rowspan="3" colspan="2" class="roa-nonfinite-header" | <span title="participio (pasado)">過去分詞</span> | colspan="2" class="roa-nonfinite-header" | ! colspan="2" class="roa-nonfinite-header" | <span title="masculino">男性</span> ! colspan="2" class="roa-nonfinite-header" | <span title="femenino">女性</span> |- ! colspan="2" class="roa-nonfinite-header" | 単数 | colspan="2" | {pp_ms} | colspan="2" | {pp_fs} |- ! colspan="2" class="roa-nonfinite-header" | 複数 | colspan="2" | {pp_mp} | colspan="2" | {pp_fp} |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | 単数 ! colspan="3" class="roa-person-number-header" | 複数 |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |-{reflexive_non_finite_clause} ! rowspan="6" class="roa-indicative-left-rail" | <span title="indicativo">直説法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de indicativo">現在</span> | {pres_1s} | {pres_2s}{pres_2sv_text} | {pres_3s} | {pres_1p} | {pres_2p} | {pres_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto (copréterito)">不完了過去</span> | {impf_1s} | {impf_2s} | {impf_3s} | {impf_1p} | {impf_2p} | {impf_3p} |- ! class="roa-finite-header" | <span title="pretérito perfecto simple (pretérito indefinido)">完了過去</span> | {pret_1s} | {pret_2s} | {pret_3s} | {pret_1p} | {pret_2p} | {pret_3p} |- ! class="roa-finite-header" | <span title="futuro simple (futuro imperfecto)">未来</span> | {fut_1s} | {fut_2s} | {fut_3s} | {fut_1p} | {fut_2p} | {fut_3p} |- ! class="roa-finite-header" | <span title="condicional simple (pospretérito de modo indicativo)">過去未来・可能法</span> | {cond_1s} | {cond_2s} | {cond_3s} | {cond_1p} | {cond_2p} | {cond_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="5" class="roa-subjunctive-left-rail" | <span title="subjuntivo">接続法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de subjuntivo">現在</span> | {pres_sub_1s} | {pres_sub_2s}{pres_sub_2sv_text} | {pres_sub_3s} | {pres_sub_1p} | {pres_sub_2p} | {pres_sub_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(ra) | {impf_sub_ra_1s} | {impf_sub_ra_2s} | {impf_sub_ra_3s} | {impf_sub_ra_1p} | {impf_sub_ra_2p} | {impf_sub_ra_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(se) | {impf_sub_se_1s} | {impf_sub_se_2s} | {impf_sub_se_3s} | {impf_sub_se_1p} | {impf_sub_se_2p} | {impf_sub_se_3p} |- ! class="roa-finite-header" | <span title="futuro simple de subjuntivo (futuro de subjuntivo)">未来</span><sup class="roa-red-superscript">1</sup> | {fut_sub_1s} | {fut_sub_2s} | {fut_sub_3s} | {fut_sub_1p} | {fut_sub_2p} | {fut_sub_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="6" class="roa-imperative-left-rail" | <span title="imperativo">命令法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | — ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ustedes |- ! class="roa-finite-header" | <span title="imperativo afirmativo">-</span> | | {imp_2s}{imp_2sv_text} | {imp_3s} | {imp_1p} | {imp_2p} | {imp_3p} |- ! class="roa-finite-header" | <span title="imperativo negativo">禁止</span> | | {neg_imp_2s} | {neg_imp_3s} | {neg_imp_1p} | {neg_imp_2p} | {neg_imp_3p} |{\cl}{notes_clause}</div></div> ]=] local reflexive_non_finite_template = [=[ ! rowspan="3" class="roa-nonfinite-header" | personal non-finite ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="infinitivo">不定詞</span> | {infinitive_1s} | {infinitive_2s} | {infinitive_3s} | {infinitive_1p} | {infinitive_2p} | {infinitive_3p} |- ! class="roa-finite-header" | <span title="gerundio">現在分詞</span> | {gerund_1s} | {gerund_2s} | {gerund_3s} | {gerund_1p} | {gerund_2p} | {gerund_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |-]=] local combined_form_combined_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}<i>/</i>{voseo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |-]=] local combined_form_separate_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({voseo}) {imp_2sv} ! class="roa-finite-header" | 与格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_le} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_lo}, {imp_2sv_comb_la} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_los}, {imp_2sv_comb_las} |-]=] local combined_form_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp;{title}の複合形</div> <div class="NavContent"> これらは自動生成されたものであり、実際に使用されるものとは異なる場合がある。また、代名詞の用法は地域によって大きく異なる。 {\op}| class="inflection-table es-inflection-table" |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |- ! rowspan="2" class="roa-combined-with-infinitive" | 不定詞 {infinitive} ! class="roa-finite-header" | 与格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_le}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_les}, {infinitive_comb_se} |- ! class="roa-finite-header" | 対格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_lo}, {infinitive_comb_la}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_los}, {infinitive_comb_las}, {infinitive_comb_se} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-gerund" | 現在分詞 {gerund} ! class="roa-finite-header" | 与格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_le}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_les}, {gerund_comb_se} |- ! class="roa-finite-header" | 対格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_lo}, {gerund_comb_la}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_los}, {gerund_comb_las}, {gerund_comb_se} |-{tu_vos_clause} ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称単数 {imp_3s} ! class="roa-finite-header" | 与格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_le}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_lo}, {imp_3s_comb_la}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_los}, {imp_3s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 命令法第一人称複数 {imp_1p} ! class="roa-finite-header" | 与格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_le} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_les} |- ! class="roa-finite-header" | 対格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_lo}, {imp_1p_comb_la} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_los}, {imp_1p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称複数 {imp_2p} ! class="roa-finite-header" | 与格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_le} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_lo}, {imp_2p_comb_la} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_los}, {imp_2p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称複数 {imp_3p} ! class="roa-finite-header" | 与格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_le} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_les}, {imp_3p_comb_se} |- ! class="roa-finite-header" | 対格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_lo}, {imp_3p_comb_la} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_los}, {imp_3p_comb_las}, {imp_3p_comb_se} |{\cl}{notes_clause}</div></div> ]=] local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms forms.title = link_term(alternant_multiword_spec.lemmas[1].form) if alternant_multiword_spec.annotation ~= "" then forms.title = forms.title .. " (" .. alternant_multiword_spec.annotation .. ")" end forms.description = "" -- Format the basic table. forms.tuteo = tuteo_link forms.voseo = voseo_link forms.footnote = alternant_multiword_spec.footnote_basic forms.reflexive_non_finite_clause = alternant_multiword_spec.refl and m_string_utilities.format(reflexive_non_finite_template, forms) or "" forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- The separate_* values are computed in show_forms(). forms.pres_2sv_text = alternant_multiword_spec.separate_pres_2sv and m_string_utilities.format(pres_2sv_template, forms) or "" forms.pres_sub_2sv_text = alternant_multiword_spec.separate_pres_sub_2sv and m_string_utilities.format(pres_sub_2sv_template, forms) or "" forms.imp_2sv_text = alternant_multiword_spec.separate_imp_2sv and m_string_utilities.format(imp_2sv_template, forms) or "" local formatted_basic_table = m_string_utilities.format(basic_table, forms) -- Format the combined table. local formatted_combined_table if alternant_multiword_spec.refl or alternant_multiword_spec.args.nocomb or alternant_multiword_spec.clitic then formatted_combined_table = "" else forms.footnote = alternant_multiword_spec.footnote_combined forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- separate_imp_2sv is computed in show_forms(). local tu_vos_template = alternant_multiword_spec.separate_imp_2sv and combined_form_separate_tu_vos_template or combined_form_combined_tu_vos_template forms.tu_vos_clause = m_string_utilities.format(tu_vos_template, forms) formatted_combined_table = m_string_utilities.format(combined_form_table, forms) end -- Paste them together. return require("Module:TemplateStyles")("Module:roa-verb/style.css") .. formatted_basic_table .. formatted_combined_table end -- Externally callable function to parse and conjugate a verb given user-specified arguments. -- Return value is WORD_SPEC, an object where the conjugated forms are in `WORD_SPEC.forms` -- for each slot. If there are no values for a slot, the slot key will be missing. The value -- for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms(args, source_template, headword_head, double_combined_forms_to_include) local PAGENAME = mw.loadData("Module:headword/data").pagename local function in_template_space() return mw.title.getCurrentTitle().nsText == "テンプレート" end -- Determine the verb spec we're being asked to generate the conjugation of. This may be taken from the -- current page title or the value of |pagename=; but not when called from {{es-verb form of}}, where the -- page title is a non-lemma form. Note that the verb spec may omit the infinitive; e.g. it may be "<ue>". -- For this reason, we use the value of `pagename` computed here down below, when calling normalize_all_lemmas(). local pagename = source_template ~= "es-verb form of" and args.pagename or PAGENAME local head = headword_head or pagename local arg1 = args[1] if not arg1 then if (pagename == "es-conj" or pagename == "es-verb") and in_template_space() then arg1 = "licuar<+,ú>" elseif pagename == "es-verb form of" and in_template_space() then arg1 = "amar" else arg1 = "<>" end end -- When called from {{es-verb form of}}, determine the non-lemma form whose inflections we're being asked to -- determine. This normally comes from the page title or the value of |pagename=. local verb_form_of_form if source_template == "es-verb form of" then verb_form_of_form = args.pagename if not verb_form_of_form then if PAGENAME == "es-verb form of" and in_template_space() then verb_form_of_form = "ame" else verb_form_of_form = PAGENAME end end end local incorporated_headword_head_into_lemma = false if arg1:find("^<.*>$") then -- missing lemma if head:find(" ") then -- If multiword lemma, try to add arg spec after the first word. -- Try to preserve the brackets in the part after the verb, but don't do it -- if there aren't the same number of left and right brackets in the verb -- (which means the verb was linked as part of a larger expression). local refl_clitic_verb, post = rmatch(head, "^(.-)( .*)$") local left_brackets = rsub(refl_clitic_verb, "[^%[]", "") local right_brackets = rsub(refl_clitic_verb, "[^%]]", "") if #left_brackets == #right_brackets then arg1 = iut.remove_redundant_links(refl_clitic_verb) .. arg1 .. post incorporated_headword_head_into_lemma = true else -- Try again using the form without links. local linkless_head = m_links.remove_links(head) if linkless_head:find(" ") then refl_clitic_verb, post = rmatch(linkless_head, "^(.-)( .*)$") arg1 = refl_clitic_verb .. arg1 .. post else error("Unable to incorporate <...> spec into explicit head due to a multiword linked verb or " .. "unbalanced brackets; please include <> explicitly: " .. arg1) end end else -- Will be incorporated through `head` below in the call to normalize_all_lemmas(). incorporated_headword_head_into_lemma = true end end local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, allow_blank_lemma = true, } local alternant_multiword_spec = iut.parse_inflected_text(arg1, parse_props) alternant_multiword_spec.pos = pos or "verbs" alternant_multiword_spec.args = args alternant_multiword_spec.source_template = source_template alternant_multiword_spec.verb_form_of_form = verb_form_of_form alternant_multiword_spec.incorporated_headword_head_into_lemma = incorporated_headword_head_into_lemma -- Now determine if we need to generate any double-combined forms, and if so, which clitics are involved. -- See the comment above the initialization of `verb_slot_double_combined_rows` above in add_slots(). if verb_form_of_form and rfind(verb_form_of_form, AV) then -- All double-clitic forms have an explicit accent, so we check for this. In addition, all double-clitic forms -- are of the form "(me|te|se|nos|os)(lo|la|le)s$". We have no alternations in Lua patterns, but we can exploit -- the similarity of the clitics in question. local single_comb_form, object_clitic = rmatch(verb_form_of_form, "^(.*)(l[aeo]s?)$") if single_comb_form then local personal_clitic = rmatch(single_comb_form, "^.*([mts]e)$") if not personal_clitic then personal_clitic = rmatch(single_comb_form, "^.-(n?os)$") end if personal_clitic then if personal_clitic == "nos" then -- "os" is a substring of "nos"; conceivably we could have a form ending in -n + os, and we don't -- know whether to interpret as -n + os or - + nos. alternant_multiword_spec.double_combined_forms_to_include = {{"nos", object_clitic}, {"os", object_clitic}} else if personal_clitic == "se" then -- Use the special "lxx" clitic for le/les when transformed into se in double-combined forms. personal_clitic = "lxx" end alternant_multiword_spec.double_combined_forms_to_include = {{personal_clitic, object_clitic}} end end end end normalize_all_lemmas(alternant_multiword_spec, pagename) detect_all_indicator_specs(alternant_multiword_spec) local inflect_props = { slot_list = alternant_multiword_spec.all_verb_slots, inflect_word_spec = conjugate_verb, -- We add links around the generated verbal forms rather than allow the entire multiword -- expression to be a link, so ensure that user-specified links get included as well. include_user_specified_links = true, } iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) -- Remove redundant brackets around entire forms. for slot, forms in pairs(alternant_multiword_spec.forms) do for _, form in ipairs(forms) do form.form = iut.remove_redundant_links(form.form) end end compute_categories_and_annotation(alternant_multiword_spec) if args.json and not from_headword and not from_verb_form_of then -- There is a circular reference in `base.alternant_multiword_spec`, which points back to top level. iut.map_word_specs(alternant_multiword_spec, function(base) base.alternant_multiword_spec = nil end) return require("Module:JSON").toJSON(alternant_multiword_spec) end return alternant_multiword_spec end -- Entry point for {{es-conj}}. Template-callable function to parse and conjugate a verb given -- user-specified arguments and generate a displayable table of the conjugated forms. function export.show(frame) local parent_args = frame:getParent().args local params = { [1] = {}, ["nocomb"] = {type = "boolean"}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use } local args = require("Module:parameters").process(parent_args, params) local alternant_multiword_spec = export.do_generate_forms(args, "es-conj") if type(alternant_multiword_spec) == "string" then -- JSON return value return alternant_multiword_spec end show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang, nil, nil, force_cat) end return export dzd1jm756y2rljawwt86jiqjg28lf9k 2281235 2281219 2026-06-09T11:00:39Z Kuroco2k 84207 2281235 Scribunto text/plain local export = {} --[=[ Authorship: Ben Wing <benwing2> ]=] --[=[ TERMINOLOGY: -- "slot" = A particular combination of tense/mood/person/number/etc. Example slot names for verbs are "pres_1s" (present indicative first-person singular), "pres_sub_2sv" (present subjunctive second-person singular voseo form) "impf_sub_ra_3p" (imperfect subjunctive -ra form third-person plural), "imp_1p_comb_lo" (imperative first-person plural combined with clitic [[lo]]). Each slot is filled with zero or more forms. -- "form" = The conjugated Spanish form representing the value of a given slot. -- "lemma" = The dictionary form of a given Spanish term. For Spanish, always the infinitive. ]=] --[=[ FIXME: 1. Implement no_pres_stressed for aterir, garantir. (NOTE: Per RAE, garantir used in all forms in Argentina/Uruguay.) [DONE] 2. Support concluyo. [DONE] 3. Fixes for veo -> ve vs. preveo -> prevé. [DONE] 4. Various more irregular verbs, e.g. predecir, redecir, bendecir, maldecir. [DONE] 5. Raising of e -> i, o -> u before -iendo, -ió, etc. occurs only in -ir verbs. [DONE] 6. Raising of e -> i, o -> u happens before subjunctive -amos, -áis in -ir verbs. [DONE] 7. Implement reflexive verbs. [DONE] 8. Implement categories. [DONE] 9. Implement show_forms. [DONE] 10. Reconcile stems.vowel_alt from irregular verbs with vowel_alt from indicators. May require moving the irregular-verb handling code in construct_stems() into detect_indicator_spec(). [DONE] 11. Implement make_table. [DONE] 12. Vowel alternation should show u-ue (jugar), i-ie (adquirir), e-í (reír) alternations specially. [DONE] 13. Handle linking of multiword forms as is done in [[Module:es-headword]]. [DONE] 14. Implement comparison against previous module. [DONE] 15. Implement categorization of irregularities for individual tenses. 16. Support nocomb=1. [DONE] 17. (Possibly) display irregular forms in a different color, as with the old module. 18. (Possibly) display a "rule" description indicating the types of alternations. 19. Implement replace_reflexive_indicators(). [NOT DONE; SUPPORT REMOVED] 20. Implement verbs with attached clitics e.g. [[pasarlo]], [[corrérsela]]. [DONE] 21. When footnote + tú/vos notation, add a space before tú/vos. 22. Fix [[erguir]] so ie-i vowel alternation produces ye- at beginning of word, similarly for errar. Also allow multiple vowel alternation specs in irregular verbs, for errar. Finally, ie should show as e-ye for errar and as e-ye-i for erguir. [DONE] 23. Figure out why red links in combined forms show up as black not red. 24. Consider including alternative superseded forms of verbs like [[ciar]] (e.g. pret_3s = cio, ció with footnote). 25. Allow conjugation of suffixes e.g. -ir, -ecer; need to fix in [[Module:inflection utilities]]. [DONE] 26. Allow specification of stems esp. so that footnotes can be hung off them; use + for the default. 27. Don't remove monosyllabic accents when conjugating suffixes. [DONE] 28. If multiword expression with no <>, add <> after first word, as with [[Module:es-headword]]. [DONE] 29. (Possibly) link the parts of a reflexive or cliticized infinitive, as done in [[Module:es-headword]]. [DONE] 30. Final fixes to allow [[Module:es-headword]] to use this module. [DONE] --]=] local lang = require("Module:languages").getByCode("es") local m_string_utilities = require("Module:string utilities") local m_links = require("Module:links") local m_table = require("Module:table") local iut = require("Module:inflection utilities") local put = require("Module:parse utilities") local com = require("Module:es-common") local force_cat = false -- set to true for debugging local check_for_red_links = false -- set to false for debugging local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsplit = mw.text.split local rsub = com.rsub local unpack = unpack or table.unpack -- Lua 5.2 compatibility local function link_term(term) return m_links.full_link({ lang = lang, term = term }, "term") end local V = com.V -- vowel regex class local AV = com.AV -- accented vowel regex class local C = com.C -- consonant regex class local tuteo_link = link_term("tuteo") local voseo_link = link_term("voseo") local fut_sub_note = "[rare; now chiefly used in legal language]" local pres_sub_voseo_note = "[Argentine and Uruguayan " .. voseo_link .. " prefers the " .. tuteo_link .. "-form for the present subjunctive]" local vowel_alternants = m_table.listToSet({"ie", "ie-i", "ye", "ye-i", "ue", "ue-u", "hue", "i", "í", "ú", "+"}) local vowel_alternant_to_desc = { ["ie"] = "e-ie", ["ie-i"] = "e-ie-i", ["ye"] = "e-ye", ["ye-i"] = "e-ye-i", ["ue"] = "o-ue", ["ue-u"] = "o-ue-u", ["hue"] = "o-hue", ["i"] = "e-i", ["í"] = "i-í", ["ú"] = "u-ú", } local raise_vowel = {["e"] = "i", ["o"] = "u"} local all_persons_numbers = { ["1s"] = "1|s", ["2s"] = "2|s", ["2sv"] = "2|s|voseo", ["3s"] = "3|s", ["1p"] = "1|p", ["2p"] = "2|p", ["3p"] = "3|p", } local person_number_list_basic = {"1s", "2s", "3s", "1p", "2p", "3p"} local person_number_list_voseo = {"1s", "2s", "2sv", "3s", "1p", "2p", "3p"} local imp_person_number_list = {"2s", "2sv", "3s", "1p", "2p", "3p"} local neg_imp_person_number_list = {"2s", "3s", "1p", "2p", "3p"} person_number_to_reflexive_pronoun = { ["1s"] = "me", ["2s"] = "te", ["2sv"] = "te", ["3s"] = "se", ["1p"] = "nos", ["2p"] = "os", ["3p"] = "se", } local indicator_flags = m_table.listToSet { "no_pres_stressed", "no_pres1_and_sub", "only3s", "only3sp", "only3p", "no_built_in", } -- Initialize all the slots for which we generate forms. The particular slots may depend on whether we're generating -- combined slots (`not alternant_multiword_spec.nocomb`, which is always false if we're dealing with a verb with an -- attached clitic, such as [[hincarla]], or a reflexive or partly-reflexive verb, where a partly-reflexive verb is -- a conjoined term made up of two or more verbs, where some but not all are reflexive). It may also depend on whether -- we're being requested to generate some double-combined forms, such as [[llevándoselo]]; see the comment below for -- `verb_slot_double_combined_rows`. local function add_slots(alternant_multiword_spec) -- "Basic" slots: All slots that go into the regular table (not the combined-form table). alternant_multiword_spec.verb_slots_basic = { {"infinitive", "inf"}, {"infinitive_linked", "inf"}, {"gerund", "ger"}, {"pp_ms", "m|s|past|part"}, {"pp_fs", "f|s|past|part"}, {"pp_mp", "m|p|past|part"}, {"pp_fp", "f|p|past|part"}, } -- Slots that go into the combined-form table, along with double-combined slots (e.g. [[llevándoselo]]) that are -- requested for use with {{es-verb form of}}. alternant_multiword_spec.verb_slots_combined = {} -- Special slots used to handle non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- For example, for a reflexive-only verb like [[jambarse]], we want to be able to use {{es-verb form of}} on -- [[jambe]] (which should mention that it is a part of 'me jambe', first-person singular present subjunctive, and -- 'se jambe', third-person singular present subjunctive) or on [[jambamos]] (which should mention that it is a -- part of 'nos jambamos', first-person plural present indicative or preterite). Similarly, we want to use -- {{es-verb form of}} on [[jambando]] (which should mention that it is a part of 'se ... jambando', syntactic -- variant of [[jambándose]], which is the gerund of [[jambarse]]). To do this, we need to be able to map -- non-reflexive parts like [[jambe]], [[jambamos]], [[jambando]], etc. to their reflexive equivalent(s), to the -- tag(s) of the equivalent(s), and, in the case of forms like [[jambando]], [[jambar]] and imperatives, to the -- separated syntactic variant of the verb+clitic combination. We do this by creating slots for the non-reflexive -- part equivalent of each basic reflexive slot, and for the separated syntactic-variant equivalent of each basic -- reflexive slot that is formed of verb+clitic. We use slots in this way to deal with multiword lemmas. Note that -- we run into difficulties mapping between reflexive verbs, non-reflexive part equivalents, and separated syntactic -- variants if a slot contains more than one form. To handle this, if there are the same number of forms in two -- slots we're trying to match up, we assume the forms match one-to-one; otherwise we don't match up the two slots -- (which means {{es-verb form of}} won't work in this case, but such a case is extremely rare and not worth -- worrying about). Alternatives that handle this "properly" are significantly more complicated and require -- non-trivial modifications to [[Module:inflection utilities]]. local need_special_verb_form_of_slots = alternant_multiword_spec.source_template == "es-verb form of" and alternant_multiword_spec.refl if need_special_verb_form_of_slots then alternant_multiword_spec.verb_slots_reflexive_verb_form_of = { {"infinitive_non_reflexive", "-"}, {"infinitive_variant", "-"}, {"gerund_non_reflexive", "-"}, {"gerund_variant", "-"}, } else alternant_multiword_spec.verb_slots_reflexive_verb_form_of = {} end -- For generating combined forms, i.e. combinations of a basic form (specifically, infinitive, gerund or an -- imperative form) with a clitic (or in some cases, two clitics). This is a list of lists of the form -- {BASIC_SLOT, CLITICS} where BASIC_SLOT is the slot to add the clitic pronouns to (e.g. "gerund" or "imp_2s") -- and CLITICS is a list of the clitic pronouns to add. alternant_multiword_spec.verb_slot_combined_rows = {} -- For generating double combined forms (e.g. [[llevándoselo]] or [[dámela]]). This is used by {{es-verb form of}} -- when it detects that it is being requested to find the inflection tags for a double-combined form. The number of -- double-combined forms is relatively large, so to optimize this, [[Module:es-inflections]] (which implements -- {{es-verb form of}}) detects which two clitics are involved, and we only generate double-combined forms -- involving those two clitics; this is specified using `double_combined_forms_to_include`, passed into -- do_generate_forms(). The value of this field is a list of lists of the form {SINGLE_COMB_SLOT, CLITICS} where -- SINGLE_COMB_SLOT is the single-combined slot to add the object clitic pronouns to (e.g. "gerund_comb_se" or -- "imp_2s_comb_me") and CLITICS is a list of the clitic pronouns to add. CLITICS will normally be a length-one -- list whose value is one of {"lo", "la", "le", "los", "las", "les"}. alternant_multiword_spec.verb_slot_double_combined_rows = {} -- Add entries for a slot with person/number variants. -- `verb_slots` is the table to add to. -- `slot_prefix` is the prefix of the slot, typically specifying the tense/aspect. -- `tag_suffix` is a string listing the set of inflection tags to add after the person/number tags. -- `person_number_list` is a list of the person/number slot suffixes to add to `slot_prefix`. local function add_personal_slot(verb_slots, slot_prefix, tag_suffix, person_number_list) for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(verb_slots, {slot, accel}) end end -- Add a personal slot (i.e. a slot with person/number variants) to `verb_slots_basic`. local function add_basic_personal_slot(slot_prefix, tag_suffix, person_number_list, no_special_verb_form_of_slot, need_variant_slot) add_personal_slot(alternant_multiword_spec.verb_slots_basic, slot_prefix, tag_suffix, person_number_list) -- Add special slots for handling non-reflexive parts of reflexive verbs in {{es-verb form of}}. -- See comment above in `need_special_verb_form_of_slots`. if need_special_verb_form_of_slots and not no_special_verb_form_of_slot then for _, persnum in ipairs(person_number_list) do local persnum_tag = all_persons_numbers[persnum] local basic_slot = slot_prefix .. "_" .. persnum local accel = persnum_tag .. "|" .. tag_suffix table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_non_reflexive", "-"}) if need_variant_slot then table.insert(alternant_multiword_spec.verb_slots_reflexive_verb_form_of, {basic_slot .. "_variant", "-"}) end end end end add_basic_personal_slot("pres", "pres|ind", person_number_list_voseo) add_basic_personal_slot("impf", "impf|ind", person_number_list_basic) add_basic_personal_slot("pret", "pret|ind", person_number_list_basic) add_basic_personal_slot("fut", "fut|ind", person_number_list_basic) add_basic_personal_slot("cond", "cond", person_number_list_basic) add_basic_personal_slot("pres_sub", "pres|sub", person_number_list_voseo) add_basic_personal_slot("impf_sub_ra", "impf|sub", person_number_list_basic) add_basic_personal_slot("impf_sub_se", "impf|sub", person_number_list_basic) add_basic_personal_slot("fut_sub", "fut|sub", person_number_list_basic) -- Need variant slots because the imperative clitics are suffixed. add_basic_personal_slot("imp", "imp", imp_person_number_list, nil, "need variant slot") -- Don't need special non-reflexive-part slots because the negative imperative is multiword, of which the -- individual words are 'no' + subjunctive. add_basic_personal_slot("neg_imp", "neg|imp", neg_imp_person_number_list, "no special verb form of") -- Don't need special non-reflexive-part slots because we don't want [[jambando]] mapping to [[jambándome]] -- (only [[jambándose]]) or [[jambar]] mapping to [[jambarme]] (only [[jambarse]]). add_basic_personal_slot("infinitive", "inf", person_number_list_basic, "no special verb form of") add_basic_personal_slot("gerund", "ger", person_number_list_basic, "no special verb form of") local third_person_object_clitics = {"lo", "la", "le", "los", "las", "les"} -- Add combined-form slots. if not alternant_multiword_spec.nocomb then -- Add a row of slots representing the combination of a basic slot with a clitic. `basic_slot` is the basic slot -- descriptor, `tag_prefix` is a string describing the inflection tags of the basic slot, and `personal_clitics` -- is a list of the personal clitics ("me", "te", "se", "nos" or "os") to add to the basic slot. local function add_combined_slot_row(basic_slot, tag_prefix, personal_clitics) -- First, add each individual combined slot to `verb_slots_combined`. local clitics_with_object = m_table.append(personal_clitics, third_person_object_clitics) for _, clitic in ipairs(clitics_with_object) do local slot = basic_slot .. "_comb_" .. clitic -- You have to pass this through full_link() to get a Spanish-specific link local accel = tag_prefix .. "|combined with [[" .. clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) end -- Also, add the row to `verb_slot_combined_rows`. table.insert(alternant_multiword_spec.verb_slot_combined_rows, {basic_slot, clitics_with_object}) -- Also do double-combined forms for a specific set of clitics, if requested. See the comment above -- `verb_slot_double_combined_rows` above. if alternant_multiword_spec.double_combined_forms_to_include then -- Add a special "lxx" clitic for le/les when transformed into se in double-combined forms. local personal_clitics_with_lxx = {unpack(personal_clitics)} table.insert(personal_clitics_with_lxx, "lxx") for _, personal_clitic in ipairs(personal_clitics_with_lxx) do for _, object_clitic in ipairs(third_person_object_clitics) do for _, form_to_include in ipairs(alternant_multiword_spec.double_combined_forms_to_include) do local to_include_personal_clitic, to_include_object_clitic = unpack(form_to_include) if personal_clitic == to_include_personal_clitic and object_clitic == to_include_object_clitic then local single_comb_slot = basic_slot .. "_comb_" .. personal_clitic local slot = single_comb_slot .. "_" .. object_clitic accel_clitic = personal_clitic == "lxx" and "[[le]]/[[les]]" or "[[" .. personal_clitic .. "]]" local accel = tag_prefix .. "|combined with indirect object " .. accel_clitic .. " and direct object [[" .. object_clitic .. "]]" table.insert(alternant_multiword_spec.verb_slots_combined, {slot, accel}) table.insert(alternant_multiword_spec.verb_slot_double_combined_rows, {single_comb_slot, {object_clitic}}) break end end end end end end add_combined_slot_row("infinitive", "inf", {"me", "te", "se", "nos", "os"}) add_combined_slot_row("gerund", "gerund", {"me", "te", "se", "nos", "os"}) local function add_combined_imp_slot_row(persnum, personal_clitics) add_combined_slot_row("imp_" .. persnum, all_persons_numbers[persnum] .. "|imp", personal_clitics) end add_combined_imp_slot_row("2s", {"me", "te", "nos"}) add_combined_imp_slot_row("2sv", {"me", "te", "nos"}) add_combined_imp_slot_row("3s", {"me", "se", "nos"}) add_combined_imp_slot_row("1p", {"te", "nos", "os"}) add_combined_imp_slot_row("2p", {"me", "nos", "os"}) add_combined_imp_slot_row("3p", {"me", "se", "nos"}) end -- Generate the list of all slots. alternant_multiword_spec.all_verb_slots = {} for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_basic) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_combined) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end for _, slot_and_accel in ipairs(alternant_multiword_spec.verb_slots_reflexive_verb_form_of) do table.insert(alternant_multiword_spec.all_verb_slots, slot_and_accel) end alternant_multiword_spec.verb_slots_basic_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_basic_map[slot] = accel end alternant_multiword_spec.verb_slots_combined_map = {} for _, slotaccel in ipairs(alternant_multiword_spec.verb_slots_combined) do local slot, accel = unpack(slotaccel) alternant_multiword_spec.verb_slots_combined_map[slot] = accel end end -- Return true if `form` is accented and is likely monosyllabic. Used in remove_monosyllabic_accents(); if true, we -- run the syllabification algorithm to determine the syllable count, and if monosyllabic, remove the accent. Also used -- in conjunction with user-specified form overrides to add an asterisk to prevent accents from being removed. local function may_need_monosyllabic_accent_removed(form) return not rfind(form, "^%-") and rfind(form, AV) and not rfind(form, V .. C .. V) end local overridable_stems = {} -- If `add_monosyllabic_asterisk` is given, add a * to accented forms that may be monosyllabic to prevent the accent -- from being removed in remove_monosyllabic_accents(). local function allow_multiple_values_for_override(separated_groups, data, add_monosyllabic_asterisk) local retvals = {} for _, separated_group in ipairs(separated_groups) do local footnotes = data.fetch_footnotes(separated_group) local form = separated_group[1] if add_monosyllabic_asterisk and may_need_monosyllabic_accent_removed(form) then form = form .. "*" end -- Add suppress_prefix to prevent the built-in verb prefix from being added to the override. local retval = {form = form, footnotes = footnotes, suppress_prefix = true} table.insert(retvals, retval) end return retvals end local function simple_choice(choices) return function(separated_groups, data) if #separated_groups > 1 then data.parse_err("For spec '" .. data.prefix .. ":', only one value currently allowed") end if #separated_groups[1] > 1 then data.parse_err("For spec '" .. data.prefix .. ":', no footnotes currently allowed") end local choice = separated_groups[1][1] if not m_table.contains(choices, choice) then data.parse_err("For spec '" .. data.prefix .. ":', saw value '" .. choice .. "' but expected one of '" .. table.concat(choices, ",") .. "'") end return choice end end for _, overridable_stem in ipairs { "pres_unstressed", "pres_stressed", "pres1_and_sub", -- Don't include pres1; use pres_1s if you need to override just that form "impf", "full_impf", "pret", {"pret_conj", simple_choice({"irreg", "ar", "er", "ir"}) }, "fut", "cond", "pres_sub_stressed", "pres_sub_unstressed", "impf_sub_ra", "impf_sub_se", "fut_sub", "pp", } do if type(overridable_stem) == "string" then overridable_stems[overridable_stem] = allow_multiple_values_for_override else local stem, validator = unpack(overridable_stem) overridable_stems[stem] = validator end end local function match_against_verbs(ref_verb, prefixes) return function(verb) for _, prefix in ipairs(prefixes) do if verb == prefix .. ref_verb then return prefix, ref_verb end end return nil end end --[=[ Special cases for verbs: diluviar, atardecer: impersonal; all finite non-3s forms are nonexistent or hypothetical. Handle using '.only3s'. empecer, atañer, concernir: all finite non-third-person forms are nonexistent or hypothetical. Handle using '.only3sp'. desnacer: Former module claimed an irregular past participle 'desnato'. Verb is not in RAE at all and barely exists; unlikely to have irregular past participle. desposeer: Former module claimed an irregular past participle 'desposeso'. Not per RAE. valer: Former module claimed an irregular imperative 'val'. Not per RAE. manumitir: Former module claimed an irregular past participle 'manumiso'. Not per RAE. raer: Former module claimed a pres 1sg rao. Not per RAE. rehuir: Handle using +ú. sustituir: Former module claimed an irregular past participle 'sustituto'. Not per RAE. venir: Former module claimed an irregular clitic combination ven + nos -> venos. Not per native speakers. --------- Verbs to check: rehuir (+ú), prohibir (+í), reunir (+ú) --------- -ir verbs: There are several types of vowel alternations: 1. No alternation. Includes some verbs in -e- and -o-, e.g. aterir(se) (no_pres_stressed), tra(n)sgredir (pres_stressed forms rare), abolir (pres_stressed forms rare), colorir (no_pres_stressed), sumergir, divergir, convergir, arrecir (no_pres_stressed), rostir, polir (obsolete), condir (obsolete), possibly ascondir (obsolete), atordir (obsolete), sacodir (obsolete), sobrevendir (possible misspelling), empedernir (no_pres_stressed), decebir (obsolete; possibly actually like concebir, i.e. decibo not decebo), premir (obsolete), expremir (obsolete), exir (obsolete), escreuir (obsolete; fix conjugation), escrebir (obsolete), agredir; sometimes the stressed forms are rare or disused. (Also embaír, desvaír are no_pres_stressed.) 2a. ie: Infinitive has -e-, changing to -ie- when stressed. No raising before i+V. Only hendir, cernir, discernir, concernir (only3sp); discernir -> discierno, discerniendo, discernió, discernamos. 2b. ye: Infinitive has -e-, changing to -ye- when stressed. No raising before i+V. Does not occur (cf. errar). 3a. ie-i: Infinitive has -e- or -i-, changing to -ie- when stressed. Raising before i+V and 1p/2p pres subjunctive: sentir -> siento, sintiendo, sintió, sintamos. adquirir -> adquiero, adquiriendo, adquirió, adquiramos. 3b. ye-i: Infinitive has -e-, changing to -ye- when stressed. Raising before i+V and 1p/2p pres subjunctive. Only erguir: erguir -> yergo, irguiendo, irguió, irgamos. 4. i: Infinitive has -e-, changing to -i- when stressed. Raising before i+V and 1p/2p pres subjunctive: vestir -> visto, vistiendo, vistió, vistamos. Variant: ceñir -> ciño, ciñendo, ciñó, ciñamos. NOTE: preterir (no_pres_stressed). 5. ue-u: Infinitive has -o-, changing to -ue- when stressed. Raising before i+V and 1p/2p pres subjunctive: Only dormir, morir and compounds. dormir -> duermo, durmiendo, durmió, durmamos. 6. ue: This type would be parallel to 'ie' but doesn't appear to exist. --------- Verbs to fix (extra forms need to be excised or deleted): The above verbs under type (1) -ir vowel alternations; [[neviscar]] (impersonal), [[acaecer]] (third-person only), [[acontecer]] (third-person only), [[cellisquear]] (impersonal), [[pintear]] (impersonal? other meaning "to play hookey" given, not in RAE), [[diluviar]] (impersonal). [[desabrir]] (not like abrir, rare in pres_stressed/sub forms), [[jabrir]] (not like abrir). Verbs with existing errors: * [[abeldar]]: (missing <ie>) [FORMS TO DELETE] * [[acaecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[acontecer]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[anticuar]] (conjugated without ú) [FORMS TO DELETE] * [[antojar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[aerografiar]]: (conjugated without í) [FORMS TO DELETE] * [[afiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[agraviar]]: (wrongly has í) [FORMS TO DELETE] * [[arrecir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[aserrar]]: (missing <ie>) [FORMS TO DELETE] * [[aspaventar]]: (missing <ie>) [OK] * [[atesar]]: (wrongly has ie) [FORMS TO DELETE] * [[avalentar]]: (wrongly has ie) [FORMS TO DELETE] * [[autorregularse]] (conjugated as non-reflexive) [OK] * [[auxiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[balbucir]] (pres1_and_sub nonexistent) [DELETE PRES1_AND_SUB FORMS] * [[caçar]] (conjugated as -zar) [OK] * [[calefacer]] (extra form caleface) [FIX] * [[cellisquear]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[chilenizar]] (conjugated with no cons alternation) [OK] * [[colorir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[comisariar]] (conjugated without í) [FORMS TO DELETE] * [[complacer]] (missing complega in imperative 3s) [OK] * [[comprehender]] (conjugated as comprender) [OK] * [[decebir]] (was conjugated without <i>) [FORMS TO DELETE] * [[desafiliar]]: (conjugated with í/+ should be only +) [FORMS TO DELETE] * [[desagregar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desairar]]: (conjugated with í should be only +) [FORMS TO DELETE] * [[descordar]]: (missing <ue>) [FORMS TO DELETE] * [[deseleccionar]] (conjugated as desseleccionar) [OK] * [[desestacionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desgonzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[desguinzar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[deshacer]] (extra form deshace, desháceme etc.) [OK] * [[desnacer]] (extra form desnato etc.) [DELETE PP FORMS] * [[desposeer]] (extra form desposeso etc.) [DELETE PP FORMS] * [[dezmar]]: (wrongly has ie) [FORMS TO DELETE] * [[diluviar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[draftear]] (extraneous param lang=es) [REMOVE PARAM] * [[ejemplarizar]] (extraneous param compound=1) [compound -> combined] * [[ejercitar]] (extraneous param compound=1) [compound -> combined] * [[empecer]] (empezca has imperatives, 1s in its verb form entry) [FIX] * [[encentar]]: (wrongly has ie) [OK] * [[encubertar]]: (wrongly has ie) [FORMS TO DELETE] * [[entrechocar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[entredecir]] (imp_2s has entredice should be entredí; extra future/cond forms entredeciré etc.) [FORMS TO DELETE/FIX] * [[escenografiar]]: (conjugated without í) [FORMS TO DELETE] * [[estar]] (incorrect combined forms, e.g. éstela instead of estela) [OK] * [[extasiar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[facer]] (extra form face, fáceme, etc.) [FIX] * [[ferrar]]: (missing <ie>) [FORMS TO DELETE] * [[gloriar]]: (conjugated with í/+ should be only í) [FORMS TO DELETE] * [[hacer]] (extra form hace, háceme, etc.) [DELETE hácete] * [[homogeneizar]] (extra form homogeneízo) [DELETE homogeneízo, homogeneízas, homogeneíza, homogeneízan, homogeneícen, homogeneícemos] * [[incensar]]: (missing <ie>) [FORMS TO DELETE] * [[ir]] (extraneous param aux=ser) [REMOVE PARAM] * [[jacer]] (extra form jace, jáceme, etc.) [FIX] * [[jarrear]] (extraneous param impersonal=yes) * [[litografiar]]: (conjugated without í) [FORMS TO DELETE] * [[manumitir]] (extra form manumiso, etc.) [FIX; is an adjective] * [[mecanografiar]]: (conjugated without í) [FORMS TO DELETE] * [[mordiscar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[neviscar]]: (used only in 3rd person singular) [DELETE ALL FIRST AND SECOND PERSON FORMS, ALL 3RD PLURAL FORMS AND ALL PP NON-MS FORMS] * [[obsipar]] (conjugated as obispar) [DELETE VERB] * [[obstar]]: (used only in 3rd person) [DELETE ALL FIRST AND SECOND PERSON FORMS] * [[orificar]] (conjugated as orificiar) [OK] * [[complacer]], [[placer]] (missing plega in imperative 3s, etc.) [OK] * [[prevaler]] (extra form preval, incorrect form prévalme etc.) [DELETE preval] * [[preterir]]: (not given as no_pres_stressed) [FORMS TO DELETE] * [[raer]] (extra form rao) [DELETE rao] * [[rebordar]] (extraneous param lang=es) [REMOVE PARAM] * [[redecir]] (incorrect imp_2s redice instead of redí) [FIX] * [[reinstitucionalizar]] (conjugated with no cons alternation) [FORMS TO DELETE] * [[reirse]] [DELETE] * [[serigrafiar]]: (conjugated without í) [FORMS TO DELETE] * [[sobresalir]] (incorrect combined forms e.g. sobrésalme) [OK] * [[superpoblar]] (missing <ue>) [FORMS TO DELETE] * [[sustituir]] (extra form sustituto, etc.) [OK] * [[usucapir]]: (used only in inf and pp) [DELETE ALL FORMS BUT PP] * [[valefacer]] (extra form valeface) [FIX] * [[valer]] (extra form val, etc.) [OK] * LOTS OF COMBINED FORMS OF VERBS IN -iar, -uar, -ai-, -au-, -ei-, -eu-, etc. Example: afeitar (afeítate, afeítese, afeítense). Need a script to find them. * [[acostar]]: normally <ue> but in meaning "arrive at the coast", <> * [[adecuar]]: <+,ú> * [[aerografiar]]: <í> * [[aferrar]]: <+,ie[obsolete]> * [[afiliar]]: <> * [[aforar]]: in meaning "to gauge, to measure": <>; in meaning "otorgar fuero": <ue> * [[arrecir]]: <no_pres_stressed> * [[agraviar]]: <> * [[agriar]]: <í,+> * [[aserrar]]: <ie> * [[asolar]]: in meaning "destroy": <ue,+>; in meaning "to dry up": <> * [[aspaventar]]: <ie> * [[atentar]]: in meaning "to commit a crime" does not have vowel alt * [[atesar]]: <>; possibly <ie> in obsolete meaning "atiesar" * [[atestar]]: in meaning "to pack": <ie,+>; in meaning "testify": <> * [[autoevacuarse]]: <+,ú> * [[auxiliar]]: <> * [[avalentar]]: <> * [[cimentar]]: <ie,+> * [[colar]]: most meanings <ue> but "canonically confer (an ecclesiastical benefit)" <> * [[colorir]]: <no_pres_stressed> * [[comisariar]]: <í> * [[desafiliar]]: <> * [[desaforar]]: "to deprive of fuero": <ue,+[less common]> * [[desairar]]: <> * [[desolar]]: <ue,+> * [[desmembrar]]: <ie,+> * [[dezmar]]: <> * [[ejecutoriar]]: <í,+> * [[emparentar]]: <ie,+> * [[encentar]]: <> * [[encubertar]]: <> * [[engrosar]]: <ue,+> * [[escenografiar]]: <í> * [[evacuar]]: <+,ú> * [[expatriar]]: <í,+> * [[extasiar]]: <í> * [[ferrar]]: <ie> * [[follar]]: <ue> * [[gloriar]]: <í> * [[hibernar]]: no vowel alt or e-ie; e-ie not in RAE, ask about it * [[historiar]]: <í,+> * [[incensar]]: <ie> * [[invernar]]: <ie,+> * [[licuar]]: <+,ú> * [[litografiar]]: <í> * [[mecanografiar]]: <í> * [[paliar]]: <í,+> * [[preterir]]: <i.no_pres_stressed> * [[promiscuar]]: <+,ú> * [[readecuar]]: <+,ú> * [[repatriar]]: <í,+> * [[retrocar]]: <ue,+> * [[serigrafiar]]: <í> * [[soterrar]]: <ie,+> * [[superpoblar]]: <ue> * [[templar]]: <+,ie[in some parts of Latin America]> * [[vidriar]]: <í,+> Second round of verbs to fix: * [[apropriar]]: forms point to reflexive [FORMS TO FIX] * [[autogobernarse]]: (missing <ie>) [FORMS TO DELETE] * [[autorreproducirse]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[aventarse]]: (missing <ie>) [FORMS TO DELETE] * [[aventar]]: forms point to reflexive [FORMS TO FIX] * [[culiar]]: yo culio or culío? [VERIFY] * [[desnacer]]: delete [[dasnatos]] * [[poseer]]: delete [[posesa]], [[posesos]], [[posesas]] * [[reproducir]]: (wrongly had regular preterite and impf/fut sub) [FORMS TO DELETE] * [[trasgredir]]: (wrongly had <i>) [FORMS TO DELETE] --------- Irregular conjugations. Each entry is processed in turn and consists of an object with two fields: 1. match=: Specifies the irregular verbs that match this object. 2. forms=: Specifies the irregular stems and forms for these verbs. The value of match= is either a string beginning with "^" (match only the specified verb), a string not beginning with "^" (match any verb ending in that string), or a function that is passed in the verb and should return the prefix of the verb if it matches, otherwise nil. The function match_against_verbs() is provided to facilitate matching a set of verbs with a common ending and specific prefixes (e.g. [[andar]] and [[desandar]] but not [[mandar]], etc.). The value of forms= is a table specifying stems and individual override forms. Each key of the table names either a stem (e.g. `pres_stressed`), a stem property (e.g. `vowel_alt`) or an individual override form (e.g. `pres_1s`). Each value of a stem can either be a string (a single stem), a list of strings, or a list of objects of the form {form = STEM, footnotes = {FOONOTES}}. Each value of an individual override should be of exactly the same form except that the strings specify full forms rather than stems. The values of a stem property depend on the specific property but are generally strings or booleans. In order to understand how the stem specifications work, it's important to understand the phonetic modifications done by combine_stem_ending(). In general, the complexities of predictable stem and ending modifications are all handled in this function. In particular: 1. Spelling-based modifications (c/z, g/gu, gu/gü, g/j) occur automatically as appropriate for the ending. 2. Raising of e -> i, o -> u in -ir verbs before an ending beginning with i + vowel, as well as in the 1p/2p forms of the present subjunctive (dormir -> durmiendo, durmió, durmamos), are handled here. Raising happens only for -ir verbs and only when the stem setting `raising_conj` is true (which is normally set to true when vowel alternations `ie-i`, `ye-i`, `ue-u`, `i`, `í` or `ú` are specified). 3. Numerous modifications are automatically made before an ending beginning with i + vowel. These include: a. final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; b. in the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. imperfect and and future subjunctive), initial i absorbed after j and u (dijeron not #dijieron, likewise for condujeron, trajeron; also fueron not #fuyeron). This happens only when stem setting `pret_conj` == "irreg"; this must be set explicitly by irregular verbs. Does not apply everywhere because of cases like regular [[tejer]] (tejieron not #tejeron), regular [[concluir]] (concluyeron not #conclueron). c. initial i of ending -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; ir -> yendo; d. initial i of ending -> y after gü, which becomes gu: argüir -> arguyó, arguyera, arguyendo; e. initial i of ending absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo 4. If the ending begins with (h)i, it gets an accent after a/e/i/o to prevent the two merging into a diphthong: caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. concluir -> concluiste, concluimos. 5. In -uir verbs (i.e. -ir verbs with stem ending in -u), a y is added before endings beginning with a/e/o: concluir -> concluyo, concluyen, concluya, concluyamos. Note that preterite concluyó, gerund concluyendo, etc. are handled by a different rule above (3b). The following stems are recognized: -- pres_unstressed: The present indicative unstressed stem (2s voseo, 1p, 2p). Also controls the imperative 2p and gerund. Defaults to the infinitive stem. -- pres_stressed: The present indicative stressed stem (1s, 2s, 3s, 3p). Also controls the imperative 2s. Default is empty if indicator `no_pres_stressed`, else a vowel alternation if such an indicator is given (e.g. `ue`, `ì`), else the infinitive stem. -- pres1_and_sub: Overriding stem for 1s present indicative and the entire subjunctive. Only set by irregular verbs and by the indicator `no_pres_stressed` (since verbs of this sort, e.g. [[aterir]], are missing the entire subjunctive as well as the forms with stressed root). Used by many irregular verbs, e.g. [[caer]], [[roer]], [[salir]], [[tener]], [[valer]], [[venir]], etc. Some verbs set this and then supply an override for the pres_1sg if it's irregular, e.g. [[saber]], with irregular subjunctive stem "sep-" and special 1s present indicative "sé*" (the * indicates that the monosyllabic accent should not be removed). -- pres1: Special stem for 1s present indicative. Normally, do not set this explicitly. If you need to specify an irregular 1s present indicative, use the form override pres_1s= to specify the entire form. Defaults to pres1_and_sub if given, else pres_stressed. -- pres_sub_unstressed: The present subjunctive unstressed stem (1p, 2p, also 2s voseo for -ar verbs). Defaults to pres1_and_sub if given, else the infinitive stem. -- pres_sub_stressed: The present subjunctive stressed stem (1s, 2s, 3s, 1p, also 2s voseo for -er/-ir verbs). Defaults to pres1. -- impf: The imperfect stem. Defaults to the infinitive stem. -- pret: The preterite stem. Defaults to the infinitive stem. -- pret_conj: Determines the set of endings used in the preterite. Should be one of "ar", "er", "ir" or "irreg". Defaults to the conjugation as determined from the infinitive. -- fut: The future stem. Defaults to the infinitive stem. -- cond: The conditional stem. Defaults to fut. -- impf_sub_ra: The imperfect subjunctive -ra stem. Defaults to the preterite stem. -- impf_sub_se: The imperfect subjunctive -se stem. Defaults to the preterite stem. -- fut_sub: The future subjunctive stem. Defaults to the preterite stem. -- pp: The past participle stem. Default is based on the verb conjugation: infinitive stem + "ad" for -ar verbs, otherwise infinitive stem + "id". ]=] local built_in_conjugations = { { -- andar, desandar -- we don't want to match e.g. mandar. match = match_against_verbs("andar", {"", "des"}), forms = {pret = "anduv", pret_conj = "irreg"} }, { -- asir, desasir match = "asir", -- use 'asgu' because we're in a front environment; if we use 'asg', we'll get '#asjo' forms = {pres1_and_sub = "asgu"} }, { -- abrir, cubrir and compounds match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(brir)$") -- Only match abrir, cubrir and compounds, and don't match desabrir/jabrir if not prefix then return nil elseif not prefix:find("a$") and not prefix:find("cu$") then return nil elseif prefix == "desa" or prefix == "ja" then return nil else return prefix, base_verb end end, forms = {pp = "biert"} }, { match = "caber", forms = {pres1_and_sub = "quep", pret = "cup", pret_conj = "irreg", fut = "cabr"} }, { -- caer, decaer, descaer, recaer match = "caer", -- use 'caigu' because we're in a front environment; if we use 'caig', we'll get '#caijo' forms = {pres1_and_sub = "caigu"} }, { -- cocer, escocer, precocer, etc. match = "cocer", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "ue", pres1 = "cuez", pres_sub_unstressed = "coz", cons_alt = "c-z"}, -- not cozco, as would normally be generated }, { -- dar, desdar match = match_against_verbs("dar", {"", "des"}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_1s = "doy", pres_2s = "dás", pres_3s = "dá", pres_2p = "dáis", pres_3p = "dán", pret = "d", pret_conj = "er", pres_sub_1s = "dé*", -- * signals that the monosyllabic accent must remain pres_sub_2s = "dés", pres_sub_3s = "dé*", pres_sub_2p = "déis", pres_sub_3p = "dén", imp_2s = "dá", } }, { -- decir, redecir, entredecir match = match_against_verbs("decir", {"", "re", "entre"}), forms = { -- for this and variant verbs in -decir, we set cons_alt to false because we don't want the -- verb categorized as a c-zc alternating verb, which would happen by default -- use 'digu' because we're in a front environment; if we use 'dig', we'll get '#dijo' pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir", imp_2s = "dí" -- need the accent for the compounds; it will be removed in the simplex } }, { -- antedecir, interdecir match = match_against_verbs("decir", {"ante", "inter"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = "dir" -- imp_2s regular } }, { -- bendecir, maldecir match = match_against_verbs("decir", {"ben", "mal"}), forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = {"decid", "dit"} -- imp_2s regular, fut regular } }, { -- condecir, contradecir, desdecir, predecir, others? match = "decir", forms = { pres1_and_sub = "digu", vowel_alt = "i", cons_alt = false, pret = "dij", pret_conj = "irreg", pp = "dich", fut = {"decir", "dir"} -- imp_2s regular } }, { match = "^desvaír", forms = { pres_2s = "desvaes", pres_3s = "desvae", pres_3p = "desvaen", imp_2s = "desvae" } }, { -- conducir, producir, reducir, traducir, etc. match = "ducir", forms = {pret = "duj", pret_conj = "irreg"} }, { -- elegir, reelegir; not preelegir, per RAE match = match_against_verbs("elegir", {"", "re"}), forms = {vowel_alt = "i", pp = {"elegid", "elect"}} }, { -- erguir match = "^erguir", forms = { vowel_alt = {"i", "ye-i"}, -- We would not need to make this verb irregular except for the alternative unstressed present subjunctive forms -- in yerg-. We can't use pres_sub_unstressed = {"irgu", "yergu"} because the "i" and "ye-i" vowel alternations -- are e->i raising in the unstressed present subjunctive and we wrongly get irgamos/yirgamos etc. pres_sub_2sv = {"irgás", "yergás"}, pres_sub_1p = {"irgamos", "yergamos"}, pres_sub_2p = {"irgáis", "yergáis"}, }, }, { match = "^estar", forms = { pres_1s = "estoy", pres_2s = "estás", pres_2sv = "estás", pres_3s = "está", pres_3p = "están", pret = "estuv", pret_conj = "irreg", pres_sub_1s = "esté", pres_sub_2s = "estés", pres_sub_2sv = "estés", pres_sub_3s = "esté", pres_sub_3p = "estén", imp_2s = "está", imp_2sv = "está", } }, { -- freír, refreír match = "freír", forms = {vowel_alt = "í", pp = {"freíd", "frit"}} }, { match = "garantir", forms = { pres_stressed = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, pres1_and_sub = {{form = "garant", footnotes = {"[only used in Argentina and Uruguay]"}}}, } }, { match = "^haber", forms = { pres_1s = "he", pres_2s = "has", pres_2sv = "has", pres_3s = {"ha", {form = "hay", footnotes = {"[used impersonally]"}}}, pres_1p = "hemos", pres_3p = "han", pres1_and_sub = "hay", -- only for subjunctive as we override pres_1s pret = "hub", pret_conj = "irreg", imp_2s = {"habe", "he"}, imp_2sv = {"habe", "he"}, fut = "habr", } }, { match = "satisfacer", forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "satisfagu", cons_alt = false, pret = "satisfic", pret_conj = "irreg", pp = "satisfech", fut = "satisfar", imp_2s = {"satisface", "satisfaz"} } }, { match = match_against_verbs("hacer", {"contra", "re"}), -- contrahacer/rehacer require an extra accent in the preterite (rehíce, rehízo). forms = { -- see below for cons_alt setting and pres1_and_sub setting pres1_and_sub = "hagu", cons_alt = false, pret = "hic", pret_1s = "híce", pret_3s = "hízo", pret_conj = "irreg", pp = "hech", fut = "har", imp_2s = "haz" } }, { -- hacer, deshacer, contrahacer, rehacer, facer, desfacer, jacer match = function(verb) return rmatch(verb, "^(.*[hjf])(acer)$") end, forms = { -- for these verbs, we set cons_alt to false because we don't want the verb categorized as a -- c-zc alternating verb, which would happen by default -- use 'agu' because we're in a front environment; if we use 'ag', we'll get '#hajo' pres1_and_sub = "agu", cons_alt = false, pret = "ic", pret_conj = "irreg", pp = "ech", fut = "ar", imp_2s = "az" } }, { -- imprimir, reimprimir match = "imprimir", forms = {pp = {"imprimid", "impres"}} }, { -- infecir match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {vowel_alt = "i", pres1 = "infiz", pres_sub_unstressed = "infez", cons_alt = "c-z"}, -- not infizco, as would normally be generated }, { match = "infecir", -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "infez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { match = "^ir", forms = { pres_1s = "voy", pres_2s = "vas", pres_2sv = "vas", pres_3s = "va", pres_1p = "vamos", pres_2p = "vais", pres_3p = "van", pres1_and_sub = "vay", -- only for subjunctive as we override pres_1s full_impf = "ib", impf_1p = "íbamos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", imp_2s = "ve", imp_2sv = "andá", imp_1p = {"vamos", "vayamos"}, refl_imp_2p = {"idos", "iros"}, imp_2p_comb_os = {"idos", "iros"}, } }, { -- mecer, remecer -- we don't want to match e.g. adormecer, estremecer match = match_against_verbs("mecer", {"re", ""}), -- override cons_alt, otherwise the verb would be categorized as a c-zc alternating verb forms = {pres1_and_sub = "mez", cons_alt = "c-z"}, -- not mezco, as would normally be generated }, { -- morir, desmorir, premorir match = "morir", forms = {vowel_alt = "ue-u", pp = "muert"}, }, { -- oír, desoír, entreoír, trasoír match = "oír", -- use 'oigu' because we're in a front environment; if we use 'oig', we'll get '#oijo' forms = {pres1_and_sub = "oigu"} }, { match = "olver", -- solver, volver, bolver and derivatives forms = {vowel_alt = "ue", pp = "uelt"} }, { -- placer, desplacer match = "placer", forms = { pret_3s = {"plació", {form = "plugo", footnotes = {"[archaic]"}}}, pret_3p = {"placieron", {form = "pluguieron", footnotes = {"[archaic]"}}}, pres_sub_3s = {"plazca", {form = "plega", footnotes = {"[archaic]"}}, {form = "plegue", footnotes = {"[archaic]"}}}, impf_sub_ra_3s = {"placiera", {form = "pluguiera", footnotes = {"[archaic]"}}}, impf_sub_ra_3p = {"placieran", {form = "pluguieran", footnotes = {"[archaic]"}}}, impf_sub_se_3s = {"placiese", {form = "pluguiese", footnotes = {"[archaic]"}}}, impf_sub_se_3p = {"placiesen", {form = "pluguiesen", footnotes = {"[archaic]"}}}, fut_sub_3s = {"placiere", {form = "pluguiere", footnotes = {"[archaic]"}}}, fut_sub_3p = {"placieren", {form = "pluguieren", footnotes = {"[archaic]"}}}, } }, { match = "poder", forms = {vowel_alt = "ue", pret = "pud", pret_conj = "irreg", fut = "podr", gerund = "pudiendo"} }, { -- poner, componer, deponer, imponer, oponer, suponer, many others match = "poner", forms = { -- use 'pongu' because we're in a front environment; if we use 'pong', we'll get '#ponjo' pres1_and_sub = "pongu", pret = "pus", pret_conj = "irreg", fut = "pondr", pp = "puest", imp_2s = "pón" -- need the accent for the compounds; it will be removed in the simplex } }, { -- proveer, desproveer match = "proveer", forms = {pp = {"provist", "proveíd"}}, }, { match = "pudrir", forms = {pp = "podrid"} }, { -- querer, desquerer, malquerer match = "querer", forms = {vowel_alt = "ie", pret = "quis", pret_conj = "irreg", fut = "querr"} }, { match = "^raer", -- use 'raigu' because we're in a front environment; if we use 'raig', we'll get '#raijo' forms = {pres1_and_sub = {"raigu", "ray"}} }, { -- roer, corroer match = "roer", -- use 'roigu' because we're in a front environment; if we use 'roig', we'll get '#roijo' forms = {pres1_and_sub = {"ro", "roigu", "roy"}} }, { -- romper, entrerromper, arromper, derromper; not corromper; FIXME: not sure about interromper (obsolete) match = function(verb) local prefix, base_verb = rmatch(verb, "^(.*)(romper)$") -- Don't match corromper if prefix == "cor" then return nil else return prefix, base_verb end end, forms = {pp = "rot"} }, { -- saber, resaber match = "saber", forms = { pres_1s = "sé*", -- * signals that the monosyllabic accent must remain pres1_and_sub = "sep", -- only for subjunctive as we override pres_1s pret = "sup", pret_conj = "irreg", fut = "sabr", } }, { match = "salir", forms = { -- use 'salgu' because we're in a front environment; if we use 'salg', we'll get '#saljo' pres1_and_sub = "salgu", fut = "saldr", imp_2s = "sal", -- These don't exist per the RAE. imp_2s_comb_lo = {}, imp_2s_comb_los = {}, imp_2s_comb_la = {}, imp_2s_comb_las = {}, imp_2s_comb_le = {}, imp_2s_comb_les = {}, }, }, { match = "scribir", -- escribir, describir, proscribir, etc. forms = {pp = {"scrit", {form = "script", footnotes = {"[Argentina and Uruguay]"}}}} }, { match = "^ser", forms = { pres_1s = "soy", pres_2s = "eres", pres_2sv = "sos", pres_3s = "es", pres_1p = "somos", pres_2p = "sois", pres_3p = "son", pres1_and_sub = "se", -- only for subjunctive as we override pres_1s full_impf = "er", impf_1p = "éramos", pret = "fu", pret_conj = "irreg", -- this signals that fu + -ieron -> fueron not fuyeron pret_1s = "fui", pret_3s = "fue", fut = "ser", imp_2s = "sé*", -- * signals that the monosyllabic accent must remain imp_2sv = "sé*", } }, { match = "^soler", forms = { vowel_alt = "ue", fut = {{form = "soler", footnotes = {"[rare but acceptable]"}}}, fut_sub = {{form = "sol", footnotes = {"[rare but acceptable]"}}}, pp = {{form = "solid", footnotes = {"[rare but acceptable]"}}}, } }, { -- tener, abstener, contener, detener, obtener, sostener, and many others match = "tener", forms = { -- use 'tengu' because we're in a front environment; if we use 'teng', we'll get '#tenjo' pres1_and_sub = "tengu", vowel_alt = "ie", pret = "tuv", pret_conj = "irreg", fut = "tendr", imp_2s = "tén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- traer, atraer, detraer, distraer, extraer, sustraer, and many others match = "traer", -- use 'traigu' because we're in a front environment; if we use 'traig', we'll get '#traijo' forms = {pres1_and_sub = "traigu", pret = "traj", pret_conj = "irreg"} }, { -- valer, equivaler, prevaler match = "valer", -- use 'valgu' because we're in a front environment; if we use 'valg', we'll get '#valjo' forms = {pres1_and_sub = "valgu", fut = "valdr"} }, { match = "venir", forms = { -- use 'vengu' because we're in a front environment; if we use 'veng', we'll get '#venjo' pres1_and_sub = "vengu", vowel_alt = "ie-i", pret = "vin", pret_conj = "irreg", -- uniquely for this verb, pres sub 2sv/1p/2p do not raise the vowel even though we are an -- e-ie-i verb (contrast sentir -> sintamos/sintáis) pres_sub_2sv = "vengás", pres_sub_1p = "vengamos", pres_sub_2p = "vengáis", fut = "vendr", imp_2s = "vén" -- need the accent for the compounds; it will be removed in the simplex } }, { -- We want to match antever etc. but not atrever etc. No way to avoid listing each verb. match = match_against_verbs("ver", {"ante", "entre", "pre", "re", "tras", ""}), forms = { -- we need to override various present indicative forms and add an accent for the compounds; -- not needed for the simplex and in fact the accents will be removed in that case pres_2s = "vés", pres_2sv = "vés", pres_3s = "vé", pres_2p = "véis", pres_3p = "vén", pres1_and_sub = "ve", impf = "ve", pp = "vist", imp_2s = "vé" -- need the accent for the compounds; it will be removed in the simplex } }, { -- yacer, adyacer, subyacer match = "yacer", -- use 'yazqu/yazgu/yagu' because we're in a front environment; see 'decir' above forms = {pres1_and_sub = {"yazqu", "yazgu", "yagu"}, imp_2s = {"yace", "yaz"}} }, } local reflexive_masc_forms = { ["su"] = {"mi", "tu", "su", "nuestro", "vuestro", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestros", "vuestros", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotros", "vosotros", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotros", "con vosotros", "consigo"}, } local reflexive_fem_forms = { ["su"] = {"mi", "tu", "su", "nuestra", "vuestra", "su"}, ["sus"] = {"mis", "tus", "sus", "nuestras", "vuestras", "sus"}, ["sí"] = {"mí", "ti", "sí", "nosotras", "vosotras", "sí"}, ["consigo"] = {"conmigo", "contigo", "consigo", "con nosotras", "con vosotras", "consigo"}, } local reflexive_forms = { ["se"] = {"me", "te", "se", "nos", "os", "se"}, ["suyo"] = {"mío", "tuyo", "suyo", "nuestro", "vuestro", "suyo"}, ["suya"] = {"mía", "tuya", "suya", "nuestra", "vuestra", "suya"}, ["suyos"] = {"míos", "tuyos", "suyos", "nuestros", "vuestros", "suyos"}, ["suyas"] = {"mías", "tuyas", "suyas", "nuestras", "vuestras", "suyas"}, } local function skip_slot(base, slot, allow_overrides) if not allow_overrides and (base.basic_overrides[slot] or base.combined_overrides[slot] or base.refl and base.basic_reflexive_only_overrides[slot]) then -- Skip any slots for which there are overrides. return true end if base.only3s and (slot:find("^pp_f") or slot:find("^pp_mp")) then -- diluviar, atardecer, neviscar; impersonal verbs have only masc sing pp return true end if not slot:find("[123]") then -- Don't skip non-personal slots. return false end if base.nofinite then return true end if (base.only3s or base.only3sp or base.only3p) and (slot:find("^imp_") or slot:find("^neg_imp_")) then return true end if base.only3s and not slot:find("3s") then -- diluviar, atardecer, neviscar return true end if base.only3sp and not slot:find("3[sp]") then -- atañer, concernir return true end if base.only3p and not slot:find("3p") then -- [[caer cuatro gotas]], [[caer chuzos de punta]], [[entrarle los siete males]] return true end return false end -- Add the `stem` to the `ending` for the given `slot` and apply any phonetic modifications. -- `is_combining_ending` is true if `ending` is actually the ending (this function is also -- called to combine prefix + stem). WARNING: This function is written very carefully; changes -- to it can easily have unintended consequences. local function combine_stem_ending(base, slot, stem, ending, is_combining_ending) if not is_combining_ending then return stem .. ending end if base.stems.raising_conj and (rfind(ending, "^i" .. V) or slot == "pres_sub_1p" or slot == "pres_sub_2p" or slot == "pres_sub_2sv") then -- need to raise e -> i, o -> u: dormir -> durmió, durmiera, durmiendo, durmamos stem = rsub(stem, "([eo])(" .. C .. "*)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) -- also with stem ending in -gu or -qu (e.g. erguir -> irguió, irguiera, irguiendo, irgamos) stem = rsub(stem, "([eo])(" .. C .. "*[gq]u)$", function(vowel, rest) return raise_vowel[vowel] .. rest end) end -- Lots of sound changes involving endings beginning with i + vowel if rfind(ending, "^i" .. V) then -- (1) final -i of stem absorbed: sonreír -> sonrió, sonriera, sonriendo; note that this rule may be fed -- by the preceding one (stem sonre- raised to sonri-, then final i absorbed) stem = stem:gsub("i$", "") -- (2) In the preterite of irregular verbs (likewise for other tenses derived from the preterite stem, i.e. -- imperfect and future subjunctive), initial i absorbed after j (dijeron not #dijieron, likewise for -- condujeron, trajeron) and u (fueron not #fuyeron). Does not apply in regular verb tejer (tejieron not -- #tejeron) and concluir (concluyeron not #conclueron). if base.stems.pret_conj == "irreg" and rfind(stem, "[ju]$") then ending = ending:gsub("^i", "") end -- (3) initial i -> y after vowel and word-initially: poseer -> poseyó, poseyera, poseyendo; -- concluir -> concluyó, concluyera, concluyendo; ir -> yendo; but not conseguir/delinquir if stem == "" or (rfind(stem, V .. "$") and not rfind(stem, "[gq]u$")) then ending = ending:gsub("^i", "y") end -- (4) -gü + ie- -> -guye-: argüir -> arguyó, arguyera, arguyendo if stem:find("gü$") then -- transfer the y to the stem to avoid gü -> gu below in front/back conversions stem = stem:gsub("ü$", "uy") ending = ending:gsub("^i", "") end -- (5) initial i absorbed after ñ, ll, y: tañer -> tañó, tañera, tañendo; bullir -> bulló, bullera, bullendo if rfind(stem, "[ñy]$") or rfind(stem, "ll$") then ending = ending:gsub("^i", "") end end -- If ending begins with i, it must get an accent after a/e/i/o to prevent the two merging into a diphthong: -- caer -> caíste, caímos; reír -> reíste, reímos (pres and pret). This does not apply after u, e.g. -- concluir -> concluiste, concluimos. if ending:find("^i") and stem:find("[aeio]$") then ending = ending:gsub("^i", "í") end -- If -oír/-uir (i.e. -ir with stem ending in -o/u, e.g. oír, concluir), a y must be added before endings -- beginning with a/e/o. Check for base.stems.pret_conj == "irreg" to exclude stem fu- of [[ir]]. if base.conj == "ir" and rfind(ending, "^[aeoáéó]") and base.stems.pret_conj ~= "irreg" then if rfind(stem, "[aoú]$") then -- oír -> oye, rehuir -> rehúyo/rehúye (with indicator 'ú') stem = stem .. "y" elseif rfind(stem, "[^gq]u$") then -- concluir, but not conseguir or delinquir stem = stem .. "y" elseif stem:find("ü$") then -- argüir -> arguyendo stem = stem:gsub("ü$", "uy") end end -- Spelling changes in the stem; it depends on whether the stem given is the pre-front-vowel or -- pre-back-vowel variant, as indicated by `frontback`. We want these front-back spelling changes to happen -- between stem and ending, not between prefix and stem; the prefix may not have the same "front/backness" -- as the stem. local is_front = rfind(ending, "^[eiéí]") if base.frontback == "front" and not is_front then -- parecer -> parezco, conducir -> conduzco; use zqu to avoid triggering the following gsub(); -- the third line will replace zqu -> zc if slot ~= "pret_3s" then -- exclude hice -> hizo (not #hizco) stem = rsub(stem, "(" .. V .. ")c$", "%1zqu") end stem = stem:gsub("sc$", "squ") -- evanescer -> evanesco, fosforescer -> fosforesco stem = stem:gsub("c$", "z") -- ejercer -> ejerzo, uncir -> unzo stem = stem:gsub("qu$", "c") -- delinquir -> delinco, parecer -> parezqu- -> parezco stem = stem:gsub("g$", "j") -- coger -> cojo, afligir -> aflijo stem = stem:gsub("gu$", "g") -- distinguir -> distingo stem = stem:gsub("gü$", "gu") -- may not occur; argüir -> arguyo handled above elseif base.frontback == "back" and is_front then stem = stem:gsub("gu$", "gü") -- averiguar -> averigüé stem = stem:gsub("g$", "gu") -- cargar -> cargué stem = stem:gsub("c$", "qu") -- marcar -> marqué stem = rsub(stem, "[çz]$", "c") -- aderezar/adereçar -> aderecé end return stem .. ending end local function check_stems_for_suppress_prefix(slot, stems) -- Check whether any or all stems have `suppress_prefix`. local any_suppress_prefix = false local any_not_suppress_prefix = false if type(stems) == "table" then if stems.suppress_prefix then -- A single form object. any_suppress_prefix = true else for _, stem in ipairs(stems) do if type(stem) == "table" and stem.suppress_prefix then any_suppress_prefix = true else any_not_suppress_prefix = true end end end else any_not_suppress_prefix = true end if any_suppress_prefix and any_not_suppress_prefix then -- This should never happen because suppress_prefix is set on user-specified stem and individual form -- overrides, which should completely replace built-in overrides (which don't have suppress_prefix). error("Internal error: For slot '" .. slot .. ", saw a mixture of suppress-prefix and non-suppress-prefix stems, and can't handle") else return any_suppress_prefix end end local function add(base, slot, stems, endings, is_combining_ending, allow_overrides) if skip_slot(base, slot, allow_overrides) then return end local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end iut.add_forms(base.forms, slot, stems, endings, do_combine_stem_ending, nil, nil, base.all_footnotes) end local function add3(base, slot, stems, endings, allow_overrides) local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, stems) if suppress_prefix then return add(base, slot, stems, endings, "is combining ending", allow_overrides) end if skip_slot(base, slot, allow_overrides) then return end local is_combining_ending = false local function do_combine_stem_ending(stem, ending) return combine_stem_ending(base, slot, stem, ending, is_combining_ending) end -- Have to reimplement add_multiple_forms() ourselves due to the is_combining_ending -- flag, which needs to be different when adding prefix to stems vs. stems to ending. -- Otherwise we get e.g. #reímpreso instead of reimpreso. local tempdest = {} iut.add_forms(tempdest, slot, base.prefix, stems, do_combine_stem_ending) is_combining_ending = true iut.add_forms(base.forms, slot, tempdest[slot], endings, do_combine_stem_ending) end local function insert_form(base, slot, form) if not skip_slot(base, slot) then iut.insert_form(base.forms, slot, form) end end local function insert_forms(base, slot, forms) if not skip_slot(base, slot) then iut.insert_forms(base.forms, slot, forms) end end local function add_single_stem_tense(base, slot_pref, stems, s1, s2, s3, p1, p2, p3) local function addit(slot, ending) add3(base, slot_pref .. "_" .. slot, stems, ending) end addit("1s", s1) addit("2s", s2) addit("3s", s3) addit("1p", p1) addit("2p", p2) addit("3p", p3) end local function add_present_indic(base) local function addit(slot, stems, ending) add3(base, "pres_" .. slot, stems, ending) end local s2, s2v, s3, p1, p2, p3 if base.conj == "ar" then s2, s2v, s3, p1, p2, p3 = "as", "ás", "a", "amos", "áis", "an" elseif base.conj == "er" then s2, s2v, s3, p1, p2, p3 = "es", "és", "e", "emos", "éis", "en" elseif base.conj == "ir" then s2, s2v, s3, p1, p2, p3 = "es", "ís", "e", "imos", "ís", "en" else error("Internal error: Unrecognized conjugation " .. base.conj) end addit("1s", base.stems.pres1, "o") addit("2s", base.stems.pres_stressed, s2) addit("2sv", base.stems.pres_unstressed, s2v) addit("3s", base.stems.pres_stressed, s3) addit("1p", base.stems.pres_unstressed, p1) addit("2p", base.stems.pres_unstressed, p2) addit("3p", base.stems.pres_stressed, p3) end local function add_present_subj(base) local function addit(slot, stems, ending) add3(base, "pres_sub_" .. slot, stems, ending) end local s1, s2, s2v, s3, p1, p2, p3, voseo_stem if base.conj == "ar" then s1, s2, s2v, s3, p1, p2, p3 = "e", "es", "és", "e", "emos", "éis", "en" else s1, s2, s2v, s3, p1, p2, p3 = "a", "as", "ás", "a", "amos", "áis", "an" end addit("1s", base.stems.pres_sub_stressed, s1) addit("2s", base.stems.pres_sub_stressed, s2) addit("2sv", base.stems.pres_sub_unstressed, s2v) addit("3s", base.stems.pres_sub_stressed, s3) addit("1p", base.stems.pres_sub_unstressed, p1) addit("2p", base.stems.pres_sub_unstressed, p2) addit("3p", base.stems.pres_sub_stressed, p3) end local function add_imper(base) local function addit(slot, stems, ending) add3(base, "imp_" .. slot, stems, ending) end if base.conj == "ar" then addit("2s", base.stems.pres_stressed, "a") addit("2sv", base.stems.pres_unstressed, "á") addit("2p", base.stems.pres_unstressed, "ad") elseif base.conj == "er" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "é") addit("2p", base.stems.pres_unstressed, "ed") elseif base.conj == "ir" then addit("2s", base.stems.pres_stressed, "e") addit("2sv", base.stems.pres_unstressed, "í") addit("2p", base.stems.pres_unstressed, "id") else error("Internal error: Unrecognized conjugation " .. base.conj) end end local function add_finite_non_present(base) local function add_tense(slot, stem, s1, s2, s3, p1, p2, p3) add_single_stem_tense(base, slot, stem, s1, s2, s3, p1, p2, p3) end local stems = base.stems if stems.full_impf then -- An override needs to be supplied for the impf_1p due to the accent on the stem. add_tense("impf", stems.full_impf, "a", "as", "a", {}, "ais", "an") elseif base.conj == "ar" then add_tense("impf", stems.impf, "aba", "abas", "aba", "ábamos", "abais", "aban") else add_tense("impf", stems.impf, "ía", "ías", "ía", "íamos", "íais", "ían") end if stems.pret_conj == "irreg" then add_tense("pret", stems.pret, "e", "iste", "o", "imos", "isteis", "ieron") elseif stems.pret_conj == "ar" then add_tense("pret", stems.pret, "é", "aste", "ó", "amos", "asteis", "aron") else add_tense("pret", stems.pret, "í", "iste", "ió", "imos", "isteis", "ieron") end if stems.pret_conj == "ar" then add_tense("impf_sub_ra", stems.impf_sub_ra, "ara", "aras", "ara", "áramos", "arais", "aran") add_tense("impf_sub_se", stems.impf_sub_se, "ase", "ases", "ase", "ásemos", "aseis", "asen") add_tense("fut_sub", stems.fut_sub, "are", "ares", "are", "áremos", "areis", "aren") else add_tense("impf_sub_ra", stems.impf_sub_ra, "iera", "ieras", "iera", "iéramos", "ierais", "ieran") add_tense("impf_sub_se", stems.impf_sub_se, "iese", "ieses", "iese", "iésemos", "ieseis", "iesen") add_tense("fut_sub", stems.fut_sub, "iere", "ieres", "iere", "iéremos", "iereis", "ieren") end add_tense("fut", stems.fut, "é", "ás", "á", "emos", "éis", "án") add_tense("cond", stems.cond, "ía", "ías", "ía", "íamos", "íais", "ían") end local function add_non_finite_forms(base) local stems = base.stems local function addit(slot, stems, ending) add3(base, slot, stems, ending) end insert_form(base, "infinitive", {form = base.verb}) -- Also insert "infinitive + reflexive pronoun" combinations if we're handling a reflexive verb. See comment below for -- "gerund + reflexive pronoun" combinations. if base.refl then for _, persnum in ipairs(person_number_list_basic) do insert_form(base, "infinitive_" .. persnum, {form = base.verb}) end end local ger_ending = base.conj == "ar" and "ando" or "iendo" addit("gerund", stems.pres_unstressed, ger_ending) -- Also insert "gerund + reflexive pronoun" combinations if we're handling a reflexive verb. We insert exactly the same -- form as for the bare gerund; later on in add_reflexive_or_fixed_clitic_to_forms(), we add the appropriate clitic -- pronouns. It's important not to do this for non-reflexive verbs, because in that case, the clitic pronouns won't be -- added, and {{es-verb form of}} will wrongly consider all these combinations as possible inflections of the bare -- gerund. Thanks to [[User:JeffDoozan]] for this bug fix. if base.refl then for _, persnum in ipairs(person_number_list_basic) do addit("gerund_" .. persnum, stems.pres_unstressed, ger_ending) end end addit("pp_ms", stems.pp, "o") addit("pp_fs", stems.pp, "a") addit("pp_mp", stems.pp, "os") addit("pp_fp", stems.pp, "as") end local function copy_subjunctives_to_imperatives(base) -- Copy subjunctives to imperatives, unless there's an override for the given slot (as with the imp_1p of [[ir]]). for _, persnum in ipairs({"3s", "1p", "3p"}) do local from = "pres_sub_" .. persnum local to = "imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) return form end)) end end -- Remove monosyllabic accents (e.g. the 3sg preterite of fiar is fio not #fió). Note that there are a -- few monosyllabic verb forms that intentionally have an accent, to distinguish them from other words -- with the same pronunciation. These are as follows: -- (1) [[sé]] 1sg present indicative of [[saber]]; -- (2) [[sé]] 2sg imperative of [[ser]]; -- (3) [[dé]] 1sg and 3sg present subjunctive of [[dar]]. -- For these, a * is added, which indicates that the accent needs to remain. If we see such a *, we remove -- it but otherwise leave the form alone. local function remove_monosyllabic_accents(base) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) if base.forms[slot] then for _, form in ipairs(base.forms[slot]) do if form.form:find("%*") then -- * means leave alone any accented vowel form.form = form.form:gsub("%*", "") elseif may_need_monosyllabic_accent_removed(form.form) then -- Has an accented vowel and no VCV sequence and not a suffix; may be monosyllabic, in which -- case we need to remove the accent. Check # of syllables and remove accent if only 1. Note -- that the checks for accented vowel and VCV sequence are not strictly needed, but are -- optimizations to avoid running the whole syllabification algorithm on every verb form. local syllables = com.syllabify(form.form) if #syllables == 1 then form.form = com.remove_accent_from_syllable(syllables[1]) end end end end end end -- Add the appropriate clitic pronouns in `clitics` to the forms in `base_slot`. `store_cliticized_form` is a function -- of three arguments (clitic, formobj, cliticized_form) and should store the cliticized form for the specified clitic -- and form object. local function add_forms_with_clitic(base, base_slot, clitics, store_cliticized_form) -- the special slot lxx is for le/les clitics that become "se" in double clitics if base_slot:match("_comb_lxx$") then base_slot = base_slot:gsub("_comb_lxx$", "_comb_le") end if not base.forms[base_slot] then mw.log("unhandled base_slot " .. base_slot) -- This can happen, e.g. in only3s/only3sp/only3p verbs. return end for _, formobj in ipairs(base.forms[base_slot]) do -- Figure out the correct accenting of the verb when a clitic pronoun is attached to it. We may need to -- add or remove an accent mark: -- (1) No accent mark currently, none needed: infinitive sentar -> sentarlo; imperative singular ten -> tenlo; -- (2) Accent mark currently, still needed: infinitive oír -> oírlo; -- (3) No accent mark currently, accent needed: imperative singular siente -> siéntelo; -- (4) Accent mark currently, not needed: imperative singular está -> estalo, sé -> selo. local syllables = com.syllabify(formobj.form) local sylno = com.stressed_syllable(syllables) table.insert(syllables, "lo") local needs_accent = com.accent_needed(syllables, sylno) if needs_accent then syllables[sylno] = com.add_accent_to_syllable(syllables[sylno]) else syllables[sylno] = com.remove_accent_from_syllable(syllables[sylno]) end table.remove(syllables) -- remove added clitic pronoun local reaccented_form = table.concat(syllables) for _, clitic in ipairs(clitics) do local cliticized_form -- Some further special cases. if base_slot == "imp_1p" and (clitic == "nos" or clitic == "os") then -- Final -s disappears: sintamos + nos -> sintámonos, sintamos + os -> sintámoos cliticized_form = reaccented_form:gsub("s$", "") .. clitic elseif base_slot == "imp_2p" and clitic == "os" then -- Final -d disappears, which may cause an accent to be required: -- haced + os -> haceos, sentid + os -> sentíos if reaccented_form:find("id$") then cliticized_form = reaccented_form:gsub("id$", "íos") else cliticized_form = reaccented_form:gsub("d$", "os") end else cliticized_form = reaccented_form .. clitic end store_cliticized_form(clitic, formobj, cliticized_form) end end end -- Generate the combinations of verb form (infinitive, gerund or various imperatives) + clitic pronoun. local function add_combined_forms(base) for _, base_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_combined_rows) do local base_slot, clitics = unpack(base_slot_and_clitics) add_forms_with_clitic(base, base_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, base_slot .. "_comb_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end for _, single_comb_slot_and_clitics in ipairs(base.alternant_multiword_spec.verb_slot_double_combined_rows) do local single_comb_slot, clitics = unpack(single_comb_slot_and_clitics) -- Handle le -> se transformation for double clitics if single_comb_slot:match("_comb_lxx$") then add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) -- Only add se version for accusative clitics (lo/la/los/las) if clitic:match("^l[aeo]") then cliticized_form = cliticized_form:gsub("le" .. clitic .. "$", "se" .. clitic) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end end ) end add_forms_with_clitic(base, single_comb_slot, clitics, function(clitic, formobj, cliticized_form) insert_form(base, single_comb_slot .. "_" .. clitic, {form = cliticized_form, footnotes = formobj.footnotes}) end ) end end local function process_slot_overrides(base, do_basic, reflexive_only) local overrides = reflexive_only and base.basic_reflexive_only_overrides or do_basic and base.basic_overrides or base.combined_overrides for slot, forms in pairs(overrides) do local suppress_prefix = base.prefix == "" or check_stems_for_suppress_prefix(slot, forms) add(base, slot, suppress_prefix and "" or base.prefix, forms, false, "allow overrides") end end -- Prefix `form` with `clitic`, adding fixed text `between` between them. Add links as appropriate unless the user -- requested no links. Check whether form already has brackets (as will be the case if the form has a fixed clitic). local function add_clitic_to_form(base, clitic, between, form) if base.alternant_multiword_spec.args.noautolinkverb then return clitic .. between .. form else local clitic_pref = "[[" .. clitic .. "]]" .. between if form:find("%[%[") then return clitic_pref .. form else return clitic_pref .. "[[" .. form .. "]]" end end end -- Add a reflexive pronoun or fixed clitic, e.g. [[lo]], as appropriate to the base form that were generated. -- `do_joined` means to do only the forms where the pronoun is joined to the end of the form; otherwise, do only the -- forms where it is not joined and precedes the form. local function add_reflexive_or_fixed_clitic_to_forms(base, do_reflexive, do_joined) for _, slotaccel in ipairs(base.alternant_multiword_spec.verb_slots_basic) do local slot, accel = unpack(slotaccel) local clitic if not do_reflexive then clitic = base.clitic elseif slot:find("[123]") then local persnum = slot:match("^.*_(.-)$") clitic = person_number_to_reflexive_pronoun[persnum] else clitic = "se" end if base.forms[slot] then if do_reflexive and slot:find("^pp_") or slot == "infinitive_linked" then -- do nothing with reflexive past participles or with infinitive linked (handled at the end) elseif slot:find("^neg_imp_") then error("Internal error: Should not have forms set for negative imperative at this stage") else local slot_has_suffixed_clitic = slot:find("infinitive") or slot:find("gerund") or slot:find("^imp_") -- Maybe generate non-reflexive parts and separated syntactic variants for use in {{es-verb form of}}. -- See comment in add_slots() above `need_special_verb_form_of_slots`. Check for do_joined so we only -- run this code once. if do_reflexive and do_joined and base.alternant_multiword_spec.source_template == "es-verb form of" and -- Skip personal variants of infinitives and gerunds so we don't think [[jambando]] is a -- non-reflexive equivalent of [[jambándome]]. not slot:find("infinitive_") and not slot:find("gerund_") then -- Clone the forms because we will be destructively modifying them just below, adding the reflexive -- pronoun. insert_forms(base, slot .. "_non_reflexive", mw.clone(base.forms[slot])) if slot_has_suffixed_clitic then insert_forms(base, slot .. "_variant", iut.map_forms(base.forms[slot], function(form) return add_clitic_to_form(base, clitic, " ... ", form) end)) end end if slot_has_suffixed_clitic then if do_joined then add_forms_with_clitic(base, slot, {clitic}, function(clitic, formobj, cliticized_form) formobj.form = cliticized_form end ) end elseif not do_joined then -- Add clitic as separate word before all other forms. for _, form in ipairs(base.forms[slot]) do form.form = add_clitic_to_form(base, clitic, " ", form.form) end end end end end end local function handle_infinitive_linked(base) -- Compute linked versions of potential lemma slots, for use in {{es-verb}}. -- We substitute the original lemma (before removing links) for forms that -- are the same as the lemma, if the original lemma has links. for _, slot in ipairs({"infinitive"}) do insert_forms(base, slot .. "_linked", iut.map_forms(base.forms[slot], function(form) if form == base.lemma and rfind(base.linked_lemma, "%[%[") then return base.linked_lemma else return form end end)) end end local function generate_negative_imperatives(base) -- Copy subjunctives to negative imperatives, preceded by "no". for _, persnum in ipairs(neg_imp_person_number_list) do local from = "pres_sub_" .. persnum local to = "neg_imp_" .. persnum insert_forms(base, to, iut.map_forms(base.forms[from], function(form) if base.alternant_multiword_spec.args.noautolinkverb then return "no " .. form elseif form:find("%[%[") then -- already linked, e.g. when reflexive return "[[no]] " .. form else return "[[no]] [[" .. form .. "]]" end end)) end end -- Process specs given by the user using 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'. local function process_addnote_specs(base) for _, spec in ipairs(base.addnote_specs) do for _, slot_spec in ipairs(spec.slot_specs) do slot_spec = "^" .. slot_spec .. "$" for slot, forms in pairs(base.forms) do if rfind(slot, slot_spec) then -- To save on memory, side-effect the existing forms. for _, form in ipairs(forms) do form.footnotes = iut.combine_footnotes(form.footnotes, spec.footnotes) end end end end end end local function add_missing_links_to_forms(base) -- Any forms without links should get them now. Redundant ones will be stripped later. for slot, forms in pairs(base.forms) do for _, form in ipairs(forms) do if not form.form:find("%[%[") then form.form = "[[" .. form.form .. "]]" end end end end local function conjugate_verb(base) add_present_indic(base) add_present_subj(base) add_imper(base) add_finite_non_present(base) add_non_finite_forms(base) -- This should happen before add_combined_forms() so overrides of basic forms end up part of the combined forms. process_slot_overrides(base, "do basic") -- do basic slot overrides -- This should happen after process_slot_overrides() in case a derived slot is based on an override (as with the -- imp_3s of [[dar]], [[estar]]). copy_subjunctives_to_imperatives(base) -- This should happen after process_slot_overrides() because overrides may have accents in them that need to be -- removed. (This happens e.g. for most present indicative forms of [[ver]], which have accents in them for the -- prefixed derived verbs, but the accents shouldn't be present in the base verb.) remove_monosyllabic_accents(base) if not base.nocomb then add_combined_forms(base) end -- We need to add joined reflexives, then joined and non-joined clitics, then non-joined reflexives, so we get -- [[házmelo]] but [[no]] [[me]] [[lo]] [[haga]]. if base.refl then -- This should happen after remove_monosyllabic_accents() so the * marking the preservation of monosyllabic -- accents doesn't end up in the middle of a word. add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", "do joined") process_slot_overrides(base, "do basic", "do reflexive") -- do reflexive-only basic slot overrides end if base.clitic then -- This should happen after reflexives are added. add_reflexive_or_fixed_clitic_to_forms(base, false, "do joined") add_reflexive_or_fixed_clitic_to_forms(base, false, false) end if base.refl then add_reflexive_or_fixed_clitic_to_forms(base, "do reflexive", false) end -- This should happen after add_reflexive_or_fixed_clitic_to_forms() so negative imperatives get the reflexive pronoun -- and clitic in them. generate_negative_imperatives(base) if not base.nocomb then process_slot_overrides(base, false) -- do combined slot overrides end -- This should happen before add_missing_links_to_forms() so that the comparison `form == base.lemma` -- in handle_infinitive_linked() works correctly and compares unlinked forms to unlinked forms. handle_infinitive_linked(base) process_addnote_specs(base) if not base.alternant_multiword_spec.args.noautolinkverb then add_missing_links_to_forms(base) end end local function parse_indicator_spec(angle_bracket_spec) -- Store the original angle bracket spec so we can reconstruct the overall conj spec with the lemma(s) in them. local base = { angle_bracket_spec = angle_bracket_spec, user_basic_overrides = {}, user_stems = {}, addnote_specs = {}, } local function parse_err(msg) error(msg .. ": " .. angle_bracket_spec) end local function fetch_footnotes(separated_group) local footnotes for j = 2, #separated_group - 1, 2 do if separated_group[j + 1] ~= "" then parse_err("Extraneous text after bracketed footnotes: '" .. table.concat(separated_group) .. "'") end if not footnotes then footnotes = {} end table.insert(footnotes, separated_group[j]) end return footnotes end local inside = angle_bracket_spec:match("^<(.*)>$") assert(inside) if inside == "" then return base end local segments = put.parse_balanced_segment_run(inside, "[", "]") local dot_separated_groups = put.split_alternating_runs(segments, "%.") for i, dot_separated_group in ipairs(dot_separated_groups) do local first_element = dot_separated_group[1] if first_element == "addnote" then local spec_and_footnotes = fetch_footnotes(dot_separated_group) if #spec_and_footnotes < 2 then parse_err("Spec with 'addnote' should be of the form 'addnote[SLOTSPEC][FOOTNOTE][FOOTNOTE][...]'") end local slot_spec = table.remove(spec_and_footnotes, 1) local slot_spec_inside = rmatch(slot_spec, "^%[(.*)%]$") if not slot_spec_inside then parse_err("Internal error: slot_spec " .. slot_spec .. " should be surrounded with brackets") end local slot_specs = rsplit(slot_spec_inside, ",") -- FIXME: Here, [[Module:it-verb]] called strip_spaces(). Generally we don't do this. Should we? table.insert(base.addnote_specs, {slot_specs = slot_specs, footnotes = spec_and_footnotes}) elseif indicator_flags[first_element] then if #dot_separated_group > 1 then parse_err("No footnotes allowed with '" .. first_element .. "' spec") end if base[first_element] then parse_err("Spec '" .. first_element .. "' specified twice") end base[first_element] = true elseif rfind(first_element, ":") then local colon_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*:%s*") local first_element = colon_separated_groups[1][1] if #colon_separated_groups[1] > 1 then parse_err("Can't attach footnotes directly to '" .. first_element .. "' spec; attach them to the " .. "colon-separated values following the initial colon") end if overridable_stems[first_element] then if base.user_stems[first_element] then parse_err("Overridable stem '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_stems[first_element] = overridable_stems[first_element](colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}) else -- assume a basic override; we validate further later when the possible slots are available if base.user_basic_overrides[first_element] then parse_err("Basic override '" .. first_element .. "' specified twice") end table.remove(colon_separated_groups, 1) base.user_basic_overrides[first_element] = allow_multiple_values_for_override( colon_separated_groups, {prefix = first_element, base = base, parse_err = parse_err, fetch_footnotes = fetch_footnotes}, "add monosyllabic asterisk" ) end else local comma_separated_groups = put.split_alternating_runs(dot_separated_group, "%s*,%s*") for j = 1, #comma_separated_groups do local alt = comma_separated_groups[j][1] if not vowel_alternants[alt] then if #comma_separated_groups == 1 then parse_err("Unrecognized spec or vowel alternant '" .. alt .. "'") else parse_err("Unrecognized vowel alternant '" .. alt .. "'") end end if base.vowel_alt then for _, existing_alt in ipairs(base.vowel_alt) do if existing_alt.form == alt then parse_err("Vowel alternant '" .. alt .. "' specified twice") end end else base.vowel_alt = {} end table.insert(base.vowel_alt, {form = alt, footnotes = fetch_footnotes(comma_separated_groups[j])}) end end end return base end -- Normalize all lemmas, substituting the pagename for blank lemmas and adding links to multiword lemmas. local function normalize_all_lemmas(alternant_multiword_spec, pagename) -- (1) Add links to all before and after text. Remember the original text so we can reconstruct the verb spec later. if not alternant_multiword_spec.args.noautolinktext then iut.add_links_to_before_and_after_text(alternant_multiword_spec, "remember original") end -- (2) Remove any links from the lemma, but remember the original form -- so we can use it below in the 'lemma_linked' form. iut.map_word_specs(alternant_multiword_spec, function(base) if base.lemma == "" then base.lemma = pagename end base.user_specified_lemma = base.lemma base.lemma = m_links.remove_links(base.lemma) local refl_verb, clitic = rmatch(base.lemma, "^(.-)(l[aeo]s?)$") if not refl_verb then refl_verb, clitic = base.lemma, nil end local verb, refl = rmatch(refl_verb, "^(.-)(se)$") if not verb then verb, refl = refl_verb, nil end base.user_specified_verb = verb base.refl = refl base.clitic = clitic if base.refl and base.clitic then -- We have to parse the verb suffix to see how to construct the base verb; e.g. -- abrírsela -> abrir but oírsela -> oír. We parse the verb suffix again in all cases -- in detect_indicator_spec(), after splitting off the prefix of irrregular verbs. local actual_verb local inf_stem, suffix = rmatch(base.user_specified_verb, "^(.*)([aáeéií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.user_specified_verb) end if suffix == "ír" and inf_stem:find("[aeo]$") then -- accent on suffix should remain base.verb = base.user_specified_verb else base.verb = inf_stem .. com.remove_accent_from_syllable(suffix) end else base.verb = base.user_specified_verb end local linked_lemma if alternant_multiword_spec.args.noautolinkverb or base.user_specified_lemma:find("%[%[") then linked_lemma = base.user_specified_lemma elseif base.refl or base.clitic then -- Reconstruct the linked lemma with separate links around base verb, reflexive pronoun and clitic. linked_lemma = base.user_specified_verb == base.verb and "[[" .. base.user_specified_verb .. "]]" or "[[" .. base.verb .. "|" .. base.user_specified_verb .. "]]" linked_lemma = linked_lemma .. (refl and "[[" .. refl .. "]]" or "") .. (clitic and "[[" .. clitic .. "]]" or "") else -- Add links to the lemma so the user doesn't specifically need to, since we preserve -- links in multiword lemmas and include links in non-lemma forms rather than allowing -- the entire form to be a link. linked_lemma = iut.add_links(base.user_specified_lemma) end base.linked_lemma = linked_lemma end) end local function construct_stems(base) local stems = base.stems stems.pres_unstressed = stems.pres_unstressed or base.inf_stem stems.pres_stressed = stems.pres_stressed or -- If no_pres_stressed given, pres_stressed stem should be empty so no forms are generated. base.no_pres_stressed and {} or base.vowel_alt or base.inf_stem stems.pres1_and_sub = stems.pres1_and_sub or -- If no_pres_stressed given, the entire subjunctive is missing. base.no_pres_stressed and {} or -- If no_pres1_and_sub given, pres1 and entire subjunctive are missing. base.no_pres1_and_sub and {} or nil stems.pres1 = stems.pres1 or stems.pres1_and_sub or stems.pres_stressed stems.impf = stems.impf or base.inf_stem stems.pret = stems.pret or base.inf_stem stems.pret_conj = stems.pret_conj or base.conj stems.fut = stems.fut or base.inf_stem .. base.conj stems.cond = stems.cond or stems.fut stems.pres_sub_stressed = stems.pres_sub_stressed or stems.pres1 stems.pres_sub_unstressed = stems.pres_sub_unstressed or stems.pres1_and_sub or stems.pres_unstressed stems.impf_sub_ra = stems.impf_sub_ra or stems.pret stems.impf_sub_se = stems.impf_sub_se or stems.pret stems.fut_sub = stems.fut_sub or stems.pret stems.pp = stems.pp or base.conj == "ar" and combine_stem_ending(base, "pp_ms", base.inf_stem, "ad", "is combining ending") or -- use combine_stem_ending esp. so we get reído, caído, etc. combine_stem_ending(base, "pp_ms", base.inf_stem, "id", "is combining ending") end -- Make a list of the slots given in `list1` and optionally `list2`, with `prefix` added to the beginning of each slot -- name. The elements of each list are of the form {SLOT, ACCEL}. Used for error messages. local function construct_possible_slots(list1, list2, prefix) list2 = list2 or {} prefix = prefix or "" local slots = {} local function insert_list_slots(list) for _, slotaccel in ipairs(list) do local slot, accel = unpack(slotaccel) table.insert(slots, prefix .. slot) end end insert_list_slots(list1) insert_list_slots(list2) return m_table.serialCommaJoin(slots) end local function detect_indicator_spec(base) base.forms = {} base.non_reflexive_forms = {} base.stems = {} if (base.only3s and 1 or 0) + (base.only3sp and 1 or 0) + (base.only3p and 1 or 0) > 1 then error("Only one of 'only3s', 'only3sp' and 'only3p' can be specified") end base.basic_overrides = {} base.basic_reflexive_only_overrides = {} base.combined_overrides = {} if not base.no_built_in then for _, built_in_conj in ipairs(built_in_conjugations) do if type(built_in_conj.match) == "function" then base.prefix, base.non_prefixed_verb = built_in_conj.match(base.verb) elseif built_in_conj.match:find("^%^") and rsub(built_in_conj.match, "^%^", "") == base.verb then -- begins with ^, for exact match, and matches base.prefix, base.non_prefixed_verb = "", base.verb else base.prefix, base.non_prefixed_verb = rmatch(base.verb, "^(.*)(" .. built_in_conj.match .. ")$") end if base.prefix then -- we found a built-in verb base.irreg_verb = true for stem, forms in pairs(built_in_conj.forms) do if stem:find("^refl_") then stem = stem:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[stem] then error("Internal error: setting for 'refl_" .. stem .. "' does not refer to a basic verb slot") end base.basic_reflexive_only_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_basic_map[stem] then -- an individual form override of a basic form base.basic_overrides[stem] = forms elseif base.alternant_multiword_spec.verb_slots_combined_map[stem] then -- an individual form override of a combined form base.combined_overrides[stem] = forms else base.stems[stem] = forms end end break end end end -- Override built-in-verb stems and overrides with user-specified ones. for stem, values in pairs(base.user_stems) do base.stems[stem] = values end for override, values in pairs(base.user_basic_overrides) do if override:find("^refl_") then if not base.refl then error("Can't set reflexive-only override '" .. override .. "' on a non-reflexive verb") end override = override:gsub("^refl_", "") if not base.alternant_multiword_spec.verb_slots_basic_map[override] then error("Unrecognized reflexive-only override 'refl_" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, nil, "refl_")) end base.basic_reflexive_only_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_basic_map[override] then base.basic_overrides[override] = values elseif base.alternant_multiword_spec.verb_slots_combined_map[override] then base.combined_overrides[override] = values else error("Unrecognized override '" .. override .. "': possible slots are " .. construct_possible_slots(base.alternant_multiword_spec.verb_slots_basic, base.alternant_multiword_spec.verb_slots_combined)) end end base.prefix = base.prefix or "" base.non_prefixed_verb = base.non_prefixed_verb or base.verb local inf_stem, suffix = rmatch(base.non_prefixed_verb, "^(.*)([aeií]r)$") if not inf_stem then error("Unrecognized infinitive: " .. base.verb) end base.inf_stem = inf_stem suffix = suffix == "ír" and "ir" or suffix base.conj = suffix base.frontback = suffix == "ar" and "back" or "front" if base.stems.vowel_alt then -- built-in verb with specified vowel alternation if base.vowel_alt then error(base.verb .. " is a recognized built-in verb, and should not have vowel alternations specified with it") end base.vowel_alt = iut.convert_to_general_list_form(base.stems.vowel_alt) end -- Propagate built-in-verb indicator flags to `base` and combine with user-specified flags. for indicator_flag, _ in pairs(indicator_flags) do base[indicator_flag] = base[indicator_flag] or base.stems[indicator_flag] end -- Convert vowel alternation indicators into stems. if base.vowel_alt then for _, altform in ipairs(base.vowel_alt) do altform.alt = altform.form -- save original indicator local alt = altform.alt if base.conj == "ir" then local raising = ( alt == "ie-i" or alt == "ye-i" or alt == "ue-u" or alt == "i" or alt == "í" or alt == "ú" ) if base.stems.raising_conj == nil then base.stems.raising_conj = raising elseif base.stems.raising_conj ~= raising then error("Can't currently support a mixture of raising (e.g. 'ie-i') and non-raising (e.g. 'ie') vowel alternations in -ir verbs") end end if alt == "+" then altform.form = base.inf_stem else local normalized_alt = alt if alt == "ie-i" or alt == "ye-i" or alt == "ue-u" then if base.conj ~= "ir" then error("母音交替 '" .. alt .. "' は -ir動詞のみです") end -- ie-i is like i except for the vowel raising before i+V, similarly for ye-i, ue-u, -- so convert appropriately. normalized_alt = alt == "ie-i" and "ie" or alt == "ye-i" and "ye" or "ue" end local ret = com.apply_vowel_alternation(base.inf_stem, normalized_alt) if ret.err then error("To use '" .. alt .. "', present stem '" .. base.inf_stem .. "' " .. ret.err) end altform.form = ret.ret end end end end local function detect_all_indicator_specs(alternant_multiword_spec) -- Propagate some settings up; some are used internally, others by [[Module:es-headword]]. iut.map_word_specs(alternant_multiword_spec, function(base) -- Internal indicator flags. Do these before calling detect_indicator_spec() because add_slots() uses them. for _, prop in ipairs { "refl", "clitic" } do if base[prop] then alternant_multiword_spec[prop] = true end end base.alternant_multiword_spec = alternant_multiword_spec -- If reflexive or fixed clitic, don't include combined forms. alternant_multiword_spec.nocomb = alternant_multiword_spec.nocomb or base.clitic or base.refl end) add_slots(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base) base.nocomb = alternant_multiword_spec.args.nocomb detect_indicator_spec(base) -- User-specified indicator flags. Do these after calling detect_indicator_spec() because the latter may set these -- indicators for built-in verbs. for prop, _ in pairs(indicator_flags) do if base[prop] then alternant_multiword_spec[prop] = true end end construct_stems(base) end) end local function add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) local function insert_ann(anntype, value) m_table.insertIfNot(alternant_multiword_spec.annotation[anntype], value) end local function insert_cat(cat, also_when_multiword) -- Don't place multiword terms in categories like 'Spanish verbs ending in -ar' to avoid spamming the -- categories with such terms. if also_when_multiword or not multiword_lemma then m_table.insertIfNot(alternant_multiword_spec.categories, "スペイン語 " .. cat) end end if check_for_red_links and alternant_multiword_spec.source_template == "es-conj" and multiword_lemma then for _, slot_and_accel in ipairs(alternant_multiword_spec.all_verb_slots) do local slot = slot_and_accel[1] local forms = base.forms[slot] local must_break = false if forms then for _, form in ipairs(forms) do if not form.form:find("%[%[") then local title = mw.title.new(form.form) if title and not title.exists then insert_cat("活用表に赤リンクを含む動詞") must_break = true break end end end end if must_break then break end end end insert_cat("-" .. base.conj .."で終わる動詞") if base.irreg_verb then insert_ann("irreg", "irregular") insert_cat("不規則動詞") else insert_ann("irreg", "regular") end if base.only3s then insert_ann("defective", "impersonal") insert_cat("impersonal verbs") elseif base.only3sp then insert_ann("defective", "third-person only") insert_cat("third-person-only verbs") elseif base.only3p then insert_ann("defective", "third-person plural only") insert_cat("third-person-plural-only verbs") elseif base.no_pres_stressed or base.no_pres1_and_sub then insert_ann("defective", "defective") insert_cat("defective verbs") else insert_ann("defective", "regular") end if base.clitic then insert_cat("verbs with lexical clitics") end if base.refl then insert_cat("reflexive verbs") end if not base.vowel_alt then insert_ann("vowel_alt", "non-alternating") else local inf_stem = base.inf_stem:gsub("[gq]u$", "x") for _, alt in ipairs(base.vowel_alt) do if alt.alt == "+" then insert_ann("vowel_alt", "non-alternating") else local desc if alt.alt == "ue" and rfind(inf_stem, "u" .. C .. "*$") then desc = "u-ue交替" -- jugar elseif alt.alt == "ie" and rfind(inf_stem, "i" .. C .. "*$") then desc = "i-ie交替" -- adquirir elseif alt.alt == "í" and rfind(inf_stem, "e" .. C .. "*$") then desc = "e-í交替" -- reír, freír, etc. else desc = vowel_alternant_to_desc[alt.alt] .. "交替" end insert_ann("vowel_alt", desc) insert_cat(desc.."の動詞") end end end local cons_alt = base.stems.cons_alt if cons_alt == nil then if base.conj == "ar" then if base.inf_stem:find("z$") then cons_alt = "c-z" elseif base.inf_stem:find("ç$") then cons_alt = "c-ç" elseif base.inf_stem:find("c$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-gu" elseif base.inf_stem:find("gu$") then cons_alt = "gu-gü" end else if base.no_pres_stressed or base.no_pres1_and_sub then cons_alt = nil -- no c-zc alternation in balbucir or arrecir elseif rfind(base.inf_stem, V .. "c$") then cons_alt = "c-zc" elseif base.inf_stem:find("sc$") then cons_alt = "hard-soft" elseif base.inf_stem:find("c$") then cons_alt = "c-z" elseif base.inf_stem:find("qu$") then cons_alt = "c-qu" elseif base.inf_stem:find("g$") then cons_alt = "g-j" elseif base.inf_stem:find("gu$") then cons_alt = "g-gu" elseif base.inf_stem:find("gü$") then cons_alt = "gu-gü" end end end if cons_alt then local desc = cons_alt .. "交替" insert_ann("cons_alt", desc) insert_cat(desc.."の動詞") else insert_ann("cons_alt", "non-alternating") end end -- Compute the categories to add the verb to, as well as the annotation to display in the -- conjugation title bar. We combine the code to do these functions as both categories and -- title bar contain similar information. local function compute_categories_and_annotation(alternant_multiword_spec) alternant_multiword_spec.categories = {} local ann = {} alternant_multiword_spec.annotation = ann ann.irreg = {} ann.defective = {} ann.vowel_alt = {} ann.cons_alt = {} local multiword_lemma = false for _, form in ipairs(alternant_multiword_spec.forms.infinitive) do if form.form:find(" ") then multiword_lemma = true break end end iut.map_word_specs(alternant_multiword_spec, function(base) add_categories_and_annotation(alternant_multiword_spec, base, multiword_lemma) end) local ann_parts = {} local irreg = table.concat(ann.irreg, " or ") if irreg ~= "" and irreg ~= "regular" then table.insert(ann_parts, irreg) end local defective = table.concat(ann.defective, " or ") if defective ~= "" and defective ~= "regular" then table.insert(ann_parts, defective) end local vowel_alt = table.concat(ann.vowel_alt, " or ") if vowel_alt ~= "" and vowel_alt ~= "non-alternating" then table.insert(ann_parts, vowel_alt) end local cons_alt = table.concat(ann.cons_alt, " or ") if cons_alt ~= "" and cons_alt ~= "non-alternating" then table.insert(ann_parts, cons_alt) end alternant_multiword_spec.annotation = table.concat(ann_parts, "; ") end local function show_forms(alternant_multiword_spec) local lemmas = alternant_multiword_spec.forms.infinitive alternant_multiword_spec.lemmas = lemmas -- save for later use in make_table() local reconstructed_verb_spec = iut.reconstruct_original_spec(alternant_multiword_spec) -- Initialize the footnotes with those for the future subjunctive and maybe the pres subjunctive -- voseo usage. In the latter case, we only do it if there is a distinct pres subjunctive voseo form. local function create_footnote_obj() local obj = iut.create_footnote_obj() iut.get_footnote_text({fut_sub_note}, obj) -- Compute whether the tuteo and voseo variants are different, for each voseo variant. -- We use this later in make_table(). for _, slot in ipairs({"pres_2s", "pres_sub_2s", "imp_2s"}) do alternant_multiword_spec["separate_" .. slot .. "v"] = false iut.map_word_specs(alternant_multiword_spec, function(base) if not m_table.deepEquals(base.forms[slot], base.forms[slot .. "v"]) then alternant_multiword_spec["separate_" .. slot .. "v"] = true end end) end if alternant_multiword_spec.separate_pres_sub_2sv then iut.get_footnote_text({pres_sub_voseo_note}, obj) end return obj end local function transform_accel_obj(slot, formobj, accel_obj) -- No accelerators for negative imperatives, which are always multiword and derived directly from the -- present subjunctive. if slot:find("^neg_imp") then return nil end if accel_obj then if slot:find("^pp_") then accel_obj.form = slot elseif slot == "gerund" then accel_obj.form = "gerund-" .. reconstructed_verb_spec else accel_obj.form = "verb-form-" .. reconstructed_verb_spec end end return accel_obj end local props = { lang = lang, lemmas = lemmas, create_footnote_obj = create_footnote_obj, transform_accel_obj = transform_accel_obj, } props.slot_list = alternant_multiword_spec.verb_slots_basic iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_basic = alternant_multiword_spec.forms.footnote props.create_footnote_obj = nil props.slot_list = alternant_multiword_spec.verb_slots_combined iut.show_forms(alternant_multiword_spec.forms, props) alternant_multiword_spec.footnote_combined = alternant_multiword_spec.forms.footnote end local notes_template = [=[ <div class="roa-footnote-outer-div" style="width:100%;"> <div class="roa-footnote-inner-div"> {footnote} </div></div> ]=] local pres_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_2sv}<sup><sup>vos</sup></sup>' local pres_sub_2sv_template = '<sup><sup>tú</sup></sup><br />{pres_sub_2sv}<sup><sup>vos<sup class="roa-red-superscript">2</sup></sup></sup>' local imp_2sv_template = '<sup><sup>tú</sup></sup><br />{imp_2sv}<sup><sup>vos</sup></sup>' local basic_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp; {title}の活用 ([[Wiktionary:スペイン語動詞活用]]も参照)</div> <div class="NavContent"> {\op}| class="roa-inflection-table" |- ! colspan="3" class="roa-nonfinite-header" | <span title="infinitivo">不定詞</span> | colspan="5" | {infinitive} |- ! colspan="3" class="roa-nonfinite-header" | <span title="gerundio">現在分詞</span> | colspan="5" | {gerund} |- ! rowspan="3" colspan="2" class="roa-nonfinite-header" | <span title="participio (pasado)">過去分詞</span> | colspan="2" class="roa-nonfinite-header" | ! colspan="2" class="roa-nonfinite-header" | <span title="masculino">男性</span> ! colspan="2" class="roa-nonfinite-header" | <span title="femenino">女性</span> |- ! colspan="2" class="roa-nonfinite-header" | 単数 | colspan="2" | {pp_ms} | colspan="2" | {pp_fs} |- ! colspan="2" class="roa-nonfinite-header" | 複数 | colspan="2" | {pp_mp} | colspan="2" | {pp_fp} |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | 単数 ! colspan="3" class="roa-person-number-header" | 複数 |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |-{reflexive_non_finite_clause} ! rowspan="6" class="roa-indicative-left-rail" | <span title="indicativo">直説法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de indicativo">現在</span> | {pres_1s} | {pres_2s}{pres_2sv_text} | {pres_3s} | {pres_1p} | {pres_2p} | {pres_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto (copréterito)">不完了過去</span> | {impf_1s} | {impf_2s} | {impf_3s} | {impf_1p} | {impf_2p} | {impf_3p} |- ! class="roa-finite-header" | <span title="pretérito perfecto simple (pretérito indefinido)">完了過去</span> | {pret_1s} | {pret_2s} | {pret_3s} | {pret_1p} | {pret_2p} | {pret_3p} |- ! class="roa-finite-header" | <span title="futuro simple (futuro imperfecto)">未来</span> | {fut_1s} | {fut_2s} | {fut_3s} | {fut_1p} | {fut_2p} | {fut_3p} |- ! class="roa-finite-header" | <span title="condicional simple (pospretérito de modo indicativo)">過去未来・可能法</span> | {cond_1s} | {cond_2s} | {cond_3s} | {cond_1p} | {cond_2p} | {cond_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="5" class="roa-subjunctive-left-rail" | <span title="subjuntivo">接続法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="presente de subjuntivo">現在</span> | {pres_sub_1s} | {pres_sub_2s}{pres_sub_2sv_text} | {pres_sub_3s} | {pres_sub_1p} | {pres_sub_2p} | {pres_sub_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(ra) | {impf_sub_ra_1s} | {impf_sub_ra_2s} | {impf_sub_ra_3s} | {impf_sub_ra_1p} | {impf_sub_ra_2p} | {impf_sub_ra_3p} |- ! class="roa-finite-header" | <span title="pretérito imperfecto de subjuntivo">過去</span><br />(se) | {impf_sub_se_1s} | {impf_sub_se_2s} | {impf_sub_se_3s} | {impf_sub_se_1p} | {impf_sub_se_2p} | {impf_sub_se_3p} |- ! class="roa-finite-header" | <span title="futuro simple de subjuntivo (futuro de subjuntivo)">未来</span><sup class="roa-red-superscript">1</sup> | {fut_sub_1s} | {fut_sub_2s} | {fut_sub_3s} | {fut_sub_1p} | {fut_sub_2p} | {fut_sub_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |- ! rowspan="6" class="roa-imperative-left-rail" | <span title="imperativo">命令法</span> ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | — ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ustedes |- ! class="roa-finite-header" | <span title="imperativo afirmativo">-</span> | | {imp_2s}{imp_2sv_text} | {imp_3s} | {imp_1p} | {imp_2p} | {imp_3p} |- ! class="roa-finite-header" | <span title="imperativo negativo">禁止</span> | | {neg_imp_2s} | {neg_imp_3s} | {neg_imp_1p} | {neg_imp_2p} | {neg_imp_3p} |{\cl}{notes_clause}</div></div> ]=] local reflexive_non_finite_template = [=[ ! rowspan="3" class="roa-nonfinite-header" | personal non-finite ! class="roa-native-person-number-header" | ! class="roa-native-person-number-header" | yo ! class="roa-native-person-number-header" | tú<br />vos ! class="roa-native-person-number-header" | él/ella/ello<br />usted ! class="roa-native-person-number-header" | nosotros<br />nosotras ! class="roa-native-person-number-header" | vosotros<br />vosotras ! class="roa-native-person-number-header" | ellos/ellas<br />ustedes |- ! class="roa-finite-header" | <span title="infinitivo">不定詞</span> | {infinitive_1s} | {infinitive_2s} | {infinitive_3s} | {infinitive_1p} | {infinitive_2p} | {infinitive_3p} |- ! class="roa-finite-header" | <span title="gerundio">現在分詞</span> | {gerund_1s} | {gerund_2s} | {gerund_3s} | {gerund_1p} | {gerund_2p} | {gerund_3p} |- ! class="roa-person-number-header" style="height:.75em" colspan="8" | |-]=] local combined_form_combined_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}<i>/</i>{voseo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |-]=] local combined_form_separate_tu_vos_template = [=[ ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({tuteo}) {imp_2s} ! class="roa-finite-header" | 与格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_le} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2s_comb_me} | {imp_2s_comb_te} | {imp_2s_comb_lo}, {imp_2s_comb_la} | {imp_2s_comb_nos} | ''不使用'' | {imp_2s_comb_los}, {imp_2s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称単数 ({voseo}) {imp_2sv} ! class="roa-finite-header" | 与格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_le} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2sv_comb_me} | {imp_2sv_comb_te} | {imp_2sv_comb_lo}, {imp_2sv_comb_la} | {imp_2sv_comb_nos} | ''不使用'' | {imp_2sv_comb_los}, {imp_2sv_comb_las} |-]=] local combined_form_table = [=[ {description}<div class="NavFrame"> <div class="NavHead" align=center>&nbsp; &nbsp;{title}の複合形</div> <div class="NavContent"> これらは自動生成されたものであり、実際に使用されるものとは異なる場合がある。また、代名詞の用法は地域によって大きく異なる。 {\op}| class="inflection-table es-inflection-table" |- ! colspan="2" rowspan="2" class="roa-person-number-header" | ! colspan="3" class="roa-person-number-header" | singular ! colspan="3" class="roa-person-number-header" | plural |- ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 ! class="roa-person-number-header" | 第一人称 ! class="roa-person-number-header" | 第二人称 ! class="roa-person-number-header" | 第三人称 |- ! rowspan="2" class="roa-combined-with-infinitive" | 不定詞 {infinitive} ! class="roa-finite-header" | 与格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_le}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_les}, {infinitive_comb_se} |- ! class="roa-finite-header" | 対格 | {infinitive_comb_me} | {infinitive_comb_te} | {infinitive_comb_lo}, {infinitive_comb_la}, {infinitive_comb_se} | {infinitive_comb_nos} | {infinitive_comb_os} | {infinitive_comb_los}, {infinitive_comb_las}, {infinitive_comb_se} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-gerund" | 現在分詞 {gerund} ! class="roa-finite-header" | 与格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_le}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_les}, {gerund_comb_se} |- ! class="roa-finite-header" | 対格 | {gerund_comb_me} | {gerund_comb_te} | {gerund_comb_lo}, {gerund_comb_la}, {gerund_comb_se} | {gerund_comb_nos} | {gerund_comb_os} | {gerund_comb_los}, {gerund_comb_las}, {gerund_comb_se} |-{tu_vos_clause} ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称単数 {imp_3s} ! class="roa-finite-header" | 与格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_le}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_3s_comb_me} | ''不使用'' | {imp_3s_comb_lo}, {imp_3s_comb_la}, {imp_3s_comb_se} | {imp_3s_comb_nos} | ''不使用'' | {imp_3s_comb_los}, {imp_3s_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 命令法第一人称複数 {imp_1p} ! class="roa-finite-header" | 与格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_le} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_les} |- ! class="roa-finite-header" | 対格 | ''不使用'' | {imp_1p_comb_te} | {imp_1p_comb_lo}, {imp_1p_comb_la} | {imp_1p_comb_nos} | {imp_1p_comb_os} | {imp_1p_comb_los}, {imp_1p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 口語命令法第二人称複数 {imp_2p} ! class="roa-finite-header" | 与格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_le} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_les} |- ! class="roa-finite-header" | 対格 | {imp_2p_comb_me} | ''不使用'' | {imp_2p_comb_lo}, {imp_2p_comb_la} | {imp_2p_comb_nos} | {imp_2p_comb_os} | {imp_2p_comb_los}, {imp_2p_comb_las} |- ! class="roa-person-number-header" style="height:.35em" colspan="8" | |- ! rowspan="2" class="roa-combined-with-imperative" | 格式命令法第二人称複数 {imp_3p} ! class="roa-finite-header" | 与格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_le} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_les}, {imp_3p_comb_se} |- ! class="roa-finite-header" | 対格 | {imp_3p_comb_me} | ''不使用'' | {imp_3p_comb_lo}, {imp_3p_comb_la} | {imp_3p_comb_nos} | ''不使用'' | {imp_3p_comb_los}, {imp_3p_comb_las}, {imp_3p_comb_se} |{\cl}{notes_clause}</div></div> ]=] local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms forms.title = link_term(alternant_multiword_spec.lemmas[1].form) if alternant_multiword_spec.annotation ~= "" then forms.title = forms.title .. " (" .. alternant_multiword_spec.annotation .. ")" end forms.description = "" -- Format the basic table. forms.tuteo = tuteo_link forms.voseo = voseo_link forms.footnote = alternant_multiword_spec.footnote_basic forms.reflexive_non_finite_clause = alternant_multiword_spec.refl and m_string_utilities.format(reflexive_non_finite_template, forms) or "" forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- The separate_* values are computed in show_forms(). forms.pres_2sv_text = alternant_multiword_spec.separate_pres_2sv and m_string_utilities.format(pres_2sv_template, forms) or "" forms.pres_sub_2sv_text = alternant_multiword_spec.separate_pres_sub_2sv and m_string_utilities.format(pres_sub_2sv_template, forms) or "" forms.imp_2sv_text = alternant_multiword_spec.separate_imp_2sv and m_string_utilities.format(imp_2sv_template, forms) or "" local formatted_basic_table = m_string_utilities.format(basic_table, forms) -- Format the combined table. local formatted_combined_table if alternant_multiword_spec.refl or alternant_multiword_spec.args.nocomb or alternant_multiword_spec.clitic then formatted_combined_table = "" else forms.footnote = alternant_multiword_spec.footnote_combined forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" -- separate_imp_2sv is computed in show_forms(). local tu_vos_template = alternant_multiword_spec.separate_imp_2sv and combined_form_separate_tu_vos_template or combined_form_combined_tu_vos_template forms.tu_vos_clause = m_string_utilities.format(tu_vos_template, forms) formatted_combined_table = m_string_utilities.format(combined_form_table, forms) end -- Paste them together. return require("Module:TemplateStyles")("Module:roa-verb/style.css") .. formatted_basic_table .. formatted_combined_table end -- Externally callable function to parse and conjugate a verb given user-specified arguments. -- Return value is WORD_SPEC, an object where the conjugated forms are in `WORD_SPEC.forms` -- for each slot. If there are no values for a slot, the slot key will be missing. The value -- for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms(args, source_template, headword_head, double_combined_forms_to_include) local PAGENAME = mw.loadData("Module:headword/data").pagename local function in_template_space() return mw.title.getCurrentTitle().nsText == "テンプレート" end -- Determine the verb spec we're being asked to generate the conjugation of. This may be taken from the -- current page title or the value of |pagename=; but not when called from {{es-verb form of}}, where the -- page title is a non-lemma form. Note that the verb spec may omit the infinitive; e.g. it may be "<ue>". -- For this reason, we use the value of `pagename` computed here down below, when calling normalize_all_lemmas(). local pagename = source_template ~= "es-verb form of" and args.pagename or PAGENAME local head = headword_head or pagename local arg1 = args[1] if not arg1 then if (pagename == "es-conj" or pagename == "es-verb") and in_template_space() then arg1 = "licuar<+,ú>" elseif pagename == "es-verb form of" and in_template_space() then arg1 = "amar" else arg1 = "<>" end end -- When called from {{es-verb form of}}, determine the non-lemma form whose inflections we're being asked to -- determine. This normally comes from the page title or the value of |pagename=. local verb_form_of_form if source_template == "es-verb form of" then verb_form_of_form = args.pagename if not verb_form_of_form then if PAGENAME == "es-verb form of" and in_template_space() then verb_form_of_form = "ame" else verb_form_of_form = PAGENAME end end end local incorporated_headword_head_into_lemma = false if arg1:find("^<.*>$") then -- missing lemma if head:find(" ") then -- If multiword lemma, try to add arg spec after the first word. -- Try to preserve the brackets in the part after the verb, but don't do it -- if there aren't the same number of left and right brackets in the verb -- (which means the verb was linked as part of a larger expression). local refl_clitic_verb, post = rmatch(head, "^(.-)( .*)$") local left_brackets = rsub(refl_clitic_verb, "[^%[]", "") local right_brackets = rsub(refl_clitic_verb, "[^%]]", "") if #left_brackets == #right_brackets then arg1 = iut.remove_redundant_links(refl_clitic_verb) .. arg1 .. post incorporated_headword_head_into_lemma = true else -- Try again using the form without links. local linkless_head = m_links.remove_links(head) if linkless_head:find(" ") then refl_clitic_verb, post = rmatch(linkless_head, "^(.-)( .*)$") arg1 = refl_clitic_verb .. arg1 .. post else error("Unable to incorporate <...> spec into explicit head due to a multiword linked verb or " .. "unbalanced brackets; please include <> explicitly: " .. arg1) end end else -- Will be incorporated through `head` below in the call to normalize_all_lemmas(). incorporated_headword_head_into_lemma = true end end local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, allow_blank_lemma = true, } local alternant_multiword_spec = iut.parse_inflected_text(arg1, parse_props) alternant_multiword_spec.pos = pos or "verbs" alternant_multiword_spec.args = args alternant_multiword_spec.source_template = source_template alternant_multiword_spec.verb_form_of_form = verb_form_of_form alternant_multiword_spec.incorporated_headword_head_into_lemma = incorporated_headword_head_into_lemma -- Now determine if we need to generate any double-combined forms, and if so, which clitics are involved. -- See the comment above the initialization of `verb_slot_double_combined_rows` above in add_slots(). if verb_form_of_form and rfind(verb_form_of_form, AV) then -- All double-clitic forms have an explicit accent, so we check for this. In addition, all double-clitic forms -- are of the form "(me|te|se|nos|os)(lo|la|le)s$". We have no alternations in Lua patterns, but we can exploit -- the similarity of the clitics in question. local single_comb_form, object_clitic = rmatch(verb_form_of_form, "^(.*)(l[aeo]s?)$") if single_comb_form then local personal_clitic = rmatch(single_comb_form, "^.*([mts]e)$") if not personal_clitic then personal_clitic = rmatch(single_comb_form, "^.-(n?os)$") end if personal_clitic then if personal_clitic == "nos" then -- "os" is a substring of "nos"; conceivably we could have a form ending in -n + os, and we don't -- know whether to interpret as -n + os or - + nos. alternant_multiword_spec.double_combined_forms_to_include = {{"nos", object_clitic}, {"os", object_clitic}} else if personal_clitic == "se" then -- Use the special "lxx" clitic for le/les when transformed into se in double-combined forms. personal_clitic = "lxx" end alternant_multiword_spec.double_combined_forms_to_include = {{personal_clitic, object_clitic}} end end end end normalize_all_lemmas(alternant_multiword_spec, pagename) detect_all_indicator_specs(alternant_multiword_spec) local inflect_props = { slot_list = alternant_multiword_spec.all_verb_slots, inflect_word_spec = conjugate_verb, -- We add links around the generated verbal forms rather than allow the entire multiword -- expression to be a link, so ensure that user-specified links get included as well. include_user_specified_links = true, } iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) -- Remove redundant brackets around entire forms. for slot, forms in pairs(alternant_multiword_spec.forms) do for _, form in ipairs(forms) do form.form = iut.remove_redundant_links(form.form) end end compute_categories_and_annotation(alternant_multiword_spec) if args.json and not from_headword and not from_verb_form_of then -- There is a circular reference in `base.alternant_multiword_spec`, which points back to top level. iut.map_word_specs(alternant_multiword_spec, function(base) base.alternant_multiword_spec = nil end) return require("Module:JSON").toJSON(alternant_multiword_spec) end return alternant_multiword_spec end -- Entry point for {{es-conj}}. Template-callable function to parse and conjugate a verb given -- user-specified arguments and generate a displayable table of the conjugated forms. function export.show(frame) local parent_args = frame:getParent().args local params = { [1] = {}, ["nocomb"] = {type = "boolean"}, ["noautolinktext"] = {type = "boolean"}, ["noautolinkverb"] = {type = "boolean"}, ["pagename"] = {}, -- for testing/documentation pages ["json"] = {type = "boolean"}, -- for bot use } local args = require("Module:parameters").process(parent_args, params) local alternant_multiword_spec = export.do_generate_forms(args, "es-conj") if type(alternant_multiword_spec) == "string" then -- JSON return value return alternant_multiword_spec end show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang, nil, nil, force_cat) end return export t2qd18u1r7aw687sijgbdhwmcd1ytet ぱっとみ 0 589439 2281184 2026-06-09T09:19:53Z Shikayu728 131682 ページの作成:「{{kana-DEFAULTSORT|ぱっとみ}} =={{L|ja}}== ==={{adv}}=== {{ja-adv|ぱっとみ|head=[[ぱっと]][[見#日本語|見]]}} # 軽く見たところ、[[一瞥]]したところ。 #*{{ux|ja|'''ぱっと見'''問題点はなさそう。}} ==={{verb}}=== {{ja-adv|ぱっとみる|head=[[ぱっと]][[見る]]}} # 軽くちらっと見る。 #*{{ux|ja|'''ぱっと見'''た感じ}} ===={{conjug}}==== {{日本語上一段活用|ぱっとみる}}」 2281184 wikitext text/x-wiki {{kana-DEFAULTSORT|ぱっとみ}} =={{L|ja}}== ==={{adv}}=== {{ja-adv|ぱっとみ|head=[[ぱっと]][[見#日本語|見]]}} # 軽く見たところ、[[一瞥]]したところ。 #*{{ux|ja|'''ぱっと見'''問題点はなさそう。}} ==={{verb}}=== {{ja-adv|ぱっとみる|head=[[ぱっと]][[見る]]}} # 軽くちらっと見る。 #*{{ux|ja|'''ぱっと見'''た感じ}} ===={{conjug}}==== {{日本語上一段活用|ぱっとみる}} bf31g9zjdzuvotxlc792j7mnyi6hsx6 テンプレート:方位名/ja 10 589440 2281187 2026-06-09T09:26:37Z 鍼灸 112313 ページの作成:「{{list helper 2|title=方位の一覧|hypernym|list=|lang=ja}} {{compass |n=[[きた|北]] |ne=[[北東]]<br/>[[東北]] |e=[[ひがし|東]] |se=[[南東]]<br/>[[東南]] |s=[[みなみ|南]] |sw=[[南西]]<br/>[[西南]] |w=[[にし|西]] |nw=[[北西]]<br/>[[西北]] |lang=ja}}<noinclude>[[Category:方位名のテンプレート|ja]][[Category:{{ja}} テンプレート]]</noinclude>」 2281187 wikitext text/x-wiki {{list helper 2|title=方位の一覧|hypernym|list=|lang=ja}} {{compass |n=[[きた|北]] |ne=[[北東]]<br/>[[東北]] |e=[[ひがし|東]] |se=[[南東]]<br/>[[東南]] |s=[[みなみ|南]] |sw=[[南西]]<br/>[[西南]] |w=[[にし|西]] |nw=[[北西]]<br/>[[西北]] |lang=ja}}<noinclude>[[Category:方位名のテンプレート|ja]][[Category:{{ja}} テンプレート]]</noinclude> kmqem6e0vzpcmrx79m4oqq08bzupniy 2281190 2281187 2026-06-09T09:40:58Z 鍼灸 112313 2281190 wikitext text/x-wiki {{list helper 2|title=方位の一覧|hypernym|list=|lang=ja}} {{compass |n=[[きた|北]] |ne=[[北東]]<br/>[[東北]] |e=[[ひがし|東]] |se=[[東南]]<br/>[[南東]] |s=[[みなみ|南]] |sw=[[西南]]<br/>[[南西]] |w=[[にし|西]] |nw=[[北西]]<br/>[[西北]] |lang=ja}}<noinclude>[[Category:方位名のテンプレート|ja]][[Category:{{ja}} テンプレート]]</noinclude> gq9wd2hdzlexg0gbb8onzxmiyykbphb だいじゃ 0 589442 2281193 2026-06-09T09:47:28Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|たいしゃ|だいしゃ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} *【[[大蛇]]】:大きな蛇。」 2281193 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|たいしゃ|だいしゃ}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana}} *【[[大蛇]]】:大きな蛇。 7edpxtfsp4zrj2r8f7c2fw0hc9b4k2q テンプレート:方位名/en 10 589443 2281194 2026-06-09T09:47:52Z 鍼灸 112313 ページの作成:「{{list helper 2|title=方位の一覧|hypernym|list=|lang=en}} {{compass |n=[[north]] |ne=[[northeast]] |e=[[east]] |se=[[southeast]] |s=[[south]] |sw=[[southwest]] |w=[[west]] |nw=[[northwest]] |lang=en}}<noinclude>[[Category:方位名のテンプレート|en]][[Category:{{en}} テンプレート]]</noinclude>」 2281194 wikitext text/x-wiki {{list helper 2|title=方位の一覧|hypernym|list=|lang=en}} {{compass |n=[[north]] |ne=[[northeast]] |e=[[east]] |se=[[southeast]] |s=[[south]] |sw=[[southwest]] |w=[[west]] |nw=[[northwest]] |lang=en}}<noinclude>[[Category:方位名のテンプレート|en]][[Category:{{en}} テンプレート]]</noinclude> 27fhy7ldie14dcb2l2m4dmxjedmi339 地壇 0 589445 2281217 2026-06-09T10:48:30Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ちだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ちだん]]}} #[[中国]]で[[大地]]の神を[[祭祀]]するために築いた[[祭壇]]。 ===={{rel}}==== *[[天壇]]」 2281217 wikitext text/x-wiki {{kana-DEFAULTSORT|ちだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ちだん]]}} #[[中国]]で[[大地]]の神を[[祭祀]]するために築いた[[祭壇]]。 ===={{rel}}==== *[[天壇]] 2lad9phm1m6zwhdaz9hfu2hr2i6rh75 雉壇 0 589446 2281218 2026-06-09T10:50:07Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ちだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ちだん]]}} #[[血盟]]すること。 ==={{verb}}=== {{ja-verb-suru|ちだん}} {{日本語サ変活用}}」 2281218 wikitext text/x-wiki {{kana-DEFAULTSORT|ちだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ちだん]]}} #[[血盟]]すること。 ==={{verb}}=== {{ja-verb-suru|ちだん}} {{日本語サ変活用}} i5oquybsmm55se10qxh1yirvaf7u6cp ちだん 0 589447 2281220 2026-06-09T10:52:10Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT}} {{also|チタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[地壇]]】:中国で大地の神を祭祀するために築いた祭壇。 *【[[雉壇]]】:血盟すること。」 2281220 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|チタン}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[地壇]]】:中国で大地の神を祭祀するために築いた祭壇。 *【[[雉壇]]】:血盟すること。 ouyp6brctx0m7vbl8ure34kgif3781k 天壇 0 589448 2281236 2026-06-09T11:02:53Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|てんだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|てんだん}} #[[中国]]で[[天子]]が[[天帝]]を[[祭祀]]するため、国都の南郊に築いた[[祭壇]]。 ===={{rel}}==== *[[地壇]]」 2281236 wikitext text/x-wiki {{kana-DEFAULTSORT|てんだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|てんだん}} #[[中国]]で[[天子]]が[[天帝]]を[[祭祀]]するため、国都の南郊に築いた[[祭壇]]。 ===={{rel}}==== *[[地壇]] 83b1mid5gmrkk4oxc7f9r7hg54vs25v ぞうぼう 0 589449 2281237 2026-06-09T11:03:21Z 鍼灸 112313 ページの作成:「{{kana-DEFAULTSORT}} {{also|そうほう|そうぼう|ぞうほう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[贈賵]]】:[[車馬]][[衣服]]の類を贈って、[[葬事]]を助ける。 *【[[造謀]]】:[[謀略]]。」 2281237 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|そうほう|そうぼう|ぞうほう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[贈賵]]】:[[車馬]][[衣服]]の類を贈って、[[葬事]]を助ける。 *【[[造謀]]】:[[謀略]]。 m0fuquirhlszhwb4vsif43focni9t69 2281250 2281237 2026-06-09T11:05:14Z 鍼灸 112313 2281250 wikitext text/x-wiki {{kana-DEFAULTSORT}} {{also|そうほう|そうぼう|ぞうほう}} =={{L|ja}}== ==={{kangokana}}=== {{ja-kangokana|h=y}} *【[[贈賵]]】:[[車馬]][[衣服]]の類を贈って、[[葬事]]を助ける。 *【[[造謀]]】:[[謀略]]。 *【[[造謗]]】:[[そしる]]。 *【[[像貌]]】:[[容貌]]。 p6foyr95vjlx5m9exvy328djui7sfjz 大壇 0 589450 2281254 2026-06-09T11:09:19Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|だいだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいだん]]}} #{{タグ|ja|仏教}}[[密教]]の[[法要]]で[[導師]]が使用する大型で方形の[[壇]]。 #[[天壇]]。」 2281254 wikitext text/x-wiki {{kana-DEFAULTSORT|だいだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいだん]]}} #{{タグ|ja|仏教}}[[密教]]の[[法要]]で[[導師]]が使用する大型で方形の[[壇]]。 #[[天壇]]。 4u2qrjs0rs45srlsrh4ulc2r8drja0b 大段 0 589451 2281255 2026-06-09T11:12:29Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|だいだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいだん]]}} #[[大略]]。[[大体]]。[[おおよそ]]。 #おおきな[[段落]]。」 2281255 wikitext text/x-wiki {{kana-DEFAULTSORT|だいだん}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[だいだん]]}} #[[大略]]。[[大体]]。[[おおよそ]]。 #おおきな[[段落]]。 kotpgipw582hd711w0lq26smtvm8sxc 像貌 0 589452 2281320 2026-06-09T11:39:02Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぞうぼう]]}} #[[容貌]]。」 2281320 wikitext text/x-wiki {{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぞうぼう]]}} #[[容貌]]。 jlum51nybdivdf8gw44sddc58494qrl 造謀 0 589453 2281338 2026-06-09T11:40:10Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぞうぼう]]}} #[[謀略]]。」 2281338 wikitext text/x-wiki {{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぞうぼう]]}} #[[謀略]]。 m91g8iewwdb50ohz1fv12v4qkqj7oyd 造謗 0 589454 2281340 2026-06-09T11:41:28Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ぞうぼう]]}} #[[そしる|謗る]]こと。 ==={{verb}}=== {{ja-verb-suru|}} {{日本語サ変活用}}」 2281340 wikitext text/x-wiki {{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ぞうぼう]]}} #[[そしる|謗る]]こと。 ==={{verb}}=== {{ja-verb-suru|}} {{日本語サ変活用}} evcfyci0r3jzok82eq0d2eucw2zgs52 トーク:ぱっとみ 1 589455 2281341 2026-06-09T11:42:03Z M-30722 1202 /* 和語では? */ 新しい節 2281341 wikitext text/x-wiki == 和語では? == {{@|Shikayu728}}「見」は訓読みでこの語は和語ではないかと思うのですが、項目名は「ぱっとみ」ではなく「ぱっと見」で間違いないですか?--[[利用者:M-30722|M-30722]] ([[利用者・トーク:M-30722|トーク]]) 2026年6月9日 (火) 11:42 (UTC) tvceh92fjsukpewg389z1cinlhlvg4t 贈賵 0 589456 2281353 2026-06-09T11:43:54Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ぞうぼう]]}} #[[車馬]]や[[衣類]]などを贈り、[[葬儀]]などを助けること。 ==={{verb}}=== {{ja-verb-suru|ぞうぼう}} {{日本語サ変活用}}」 2281353 wikitext text/x-wiki {{kana-DEFAULTSORT|ぞうぼう}} =={{L|ja}}== ==={{noun}}=== {{ja-noun-suru|[[ぞうぼう]]}} #[[車馬]]や[[衣類]]などを贈り、[[葬儀]]などを助けること。 ==={{verb}}=== {{ja-verb-suru|ぞうぼう}} {{日本語サ変活用}} es221te6u86b9tsernuaw2t227orpgd 迂儒 0 589457 2281360 2026-06-09T11:49:15Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|うじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|うじゅ}} #{{タグ|ja|蔑称}}[[書物]]については詳しいが、[[世間]]の[[事情]]に疎い[[学者]]。」 2281360 wikitext text/x-wiki {{kana-DEFAULTSORT|うじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|うじゅ}} #{{タグ|ja|蔑称}}[[書物]]については詳しいが、[[世間]]の[[事情]]に疎い[[学者]]。 994p6twnruj7qmf2crpru1xqqsjtsq2 耄儒 0 589458 2281376 2026-06-09T11:53:24Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[老儒]]。」 2281376 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[老儒]]。 m6bzertjec7bbq0xeirkmnbdr9mjfuj 貿儒 0 589459 2281377 2026-06-09T11:54:52Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[迂儒]]。」 2281377 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[迂儒]]。 pgx02txbh3w6ox0nz8qfoyzleiegh2o 牟寿 0 589460 2281390 2026-06-09T11:56:14Z うーむ 129171 ページの作成:「{{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[長命]]。[[長寿]]。」 2281390 wikitext text/x-wiki {{kana-DEFAULTSORT|ぼうじゅ}} =={{L|ja}}== ==={{noun}}=== {{ja-noun|[[ぼうじゅ]]}} #[[長命]]。[[長寿]]。 dedw6vujt442057v2eki9gvg3rfpzqd