위키낱말사전 kowiktionary https://ko.wiktionary.org/wiki/%EC%9C%84%ED%82%A4%EB%82%B1%EB%A7%90%EC%82%AC%EC%A0%84:%EB%8C%80%EB%AC%B8 MediaWiki 1.46.0-wmf.26 case-sensitive 미디어 특수 토론 사용자 사용자토론 위키낱말사전 위키낱말사전토론 파일 파일토론 미디어위키 미디어위키토론 틀토론 도움말 도움말토론 분류 분류토론 부록 부록 토론 TimedText TimedText talk 모듈 모듈토론 행사 행사토론 0 2952 4483138 4201239 2026-05-01T04:46:37Z Jeebeen 13056 /* 명사 */ 4483138 wikitext text/x-wiki == 한국어 == [[분류:한국어 단일어명사]] {{발음 듣기|}} {{ko-IPA}} === 어원 1 === ==== 명사 === {{한국어 명사}} # 다른 사람의 처지 또는 가진 것을 탐내는 마음. #: {{유의어|ko|시기|질투}} #: {{ux|ko|아이가 샘이 여간이 아니군요.}} #: {{ux|ko|샘 내지 말고 사이 좋게 지내거라.}} ==== 파생어 ==== {{col|ko|샘나다|샘내다|샘하다|pos3=동사|샘바르다|pos4=형용사 === 어원 2 === {{한국어 명사}} # {{senseid|ko|Q124714}} 산이나 들에 물이 솟아 나오는 곳. 또는 그 물 #: {{uxi|ko|가뭄이 들어 '''샘'''이 말라 붙었다.}} #: {{uxi|ko|목마른 사람 '''샘''' 파기|무엇을 절실히 필요로 하는 사람은 스스로 그것을 찾아야 한다}} ==== 파생어 ==== {{col|ko|샘솟다|pos1=동사|t1=물이 땅에서 [[솟아나오다]]|샘파다|pos2=동사|t2=우물을 파다}} *합성어: [[샘물]], [[샘터]] *합성어: [[귀밑샘]], [[눈물샘]], [[땀샘]], [[도래샘]], [[옹달샘]], [[젖샘]], [[침샘]], [[턱밑샘]], [[혀밑샘]] {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): [[spring]], [[fountain]] * 이도(io): * 이탈리아어(it): [[fonte]] * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} * '''2-2.''' '[[샘터]]'. #: 말을 세우고 샘에 내려와서 손을 씻고 손수건을 물에 적시어서…. {{따옴|홍명희, 임꺽정}} {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): * 이도(io): * 이탈리아어(it): * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} ko5fddsrm17z7izxoqfmga7b6ak9p8w 4483139 4483138 2026-05-01T04:46:47Z Jeebeen 13056 /* = 명사 */ 4483139 wikitext text/x-wiki == 한국어 == [[분류:한국어 단일어명사]] {{발음 듣기|}} {{ko-IPA}} === 어원 1 === ==== 명사 ==== {{한국어 명사}} # 다른 사람의 처지 또는 가진 것을 탐내는 마음. #: {{유의어|ko|시기|질투}} #: {{ux|ko|아이가 샘이 여간이 아니군요.}} #: {{ux|ko|샘 내지 말고 사이 좋게 지내거라.}} ==== 파생어 ==== {{col|ko|샘나다|샘내다|샘하다|pos3=동사|샘바르다|pos4=형용사 === 어원 2 === {{한국어 명사}} # {{senseid|ko|Q124714}} 산이나 들에 물이 솟아 나오는 곳. 또는 그 물 #: {{uxi|ko|가뭄이 들어 '''샘'''이 말라 붙었다.}} #: {{uxi|ko|목마른 사람 '''샘''' 파기|무엇을 절실히 필요로 하는 사람은 스스로 그것을 찾아야 한다}} ==== 파생어 ==== {{col|ko|샘솟다|pos1=동사|t1=물이 땅에서 [[솟아나오다]]|샘파다|pos2=동사|t2=우물을 파다}} *합성어: [[샘물]], [[샘터]] *합성어: [[귀밑샘]], [[눈물샘]], [[땀샘]], [[도래샘]], [[옹달샘]], [[젖샘]], [[침샘]], [[턱밑샘]], [[혀밑샘]] {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): [[spring]], [[fountain]] * 이도(io): * 이탈리아어(it): [[fonte]] * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} * '''2-2.''' '[[샘터]]'. #: 말을 세우고 샘에 내려와서 손을 씻고 손수건을 물에 적시어서…. {{따옴|홍명희, 임꺽정}} {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): * 이도(io): * 이탈리아어(it): * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} 9lfedi7oe2kyujortu3jbntquz5f375 4483140 4483139 2026-05-01T04:47:00Z Jeebeen 13056 /* 파생어 */ 4483140 wikitext text/x-wiki == 한국어 == [[분류:한국어 단일어명사]] {{발음 듣기|}} {{ko-IPA}} === 어원 1 === ==== 명사 ==== {{한국어 명사}} # 다른 사람의 처지 또는 가진 것을 탐내는 마음. #: {{유의어|ko|시기|질투}} #: {{ux|ko|아이가 샘이 여간이 아니군요.}} #: {{ux|ko|샘 내지 말고 사이 좋게 지내거라.}} ==== 파생어 ==== {{col|ko|샘나다|샘내다|샘하다|pos3=동사|샘바르다|pos4=형용사}} === 어원 2 === {{한국어 명사}} # {{senseid|ko|Q124714}} 산이나 들에 물이 솟아 나오는 곳. 또는 그 물 #: {{uxi|ko|가뭄이 들어 '''샘'''이 말라 붙었다.}} #: {{uxi|ko|목마른 사람 '''샘''' 파기|무엇을 절실히 필요로 하는 사람은 스스로 그것을 찾아야 한다}} ==== 파생어 ==== {{col|ko|샘솟다|pos1=동사|t1=물이 땅에서 [[솟아나오다]]|샘파다|pos2=동사|t2=우물을 파다}} *합성어: [[샘물]], [[샘터]] *합성어: [[귀밑샘]], [[눈물샘]], [[땀샘]], [[도래샘]], [[옹달샘]], [[젖샘]], [[침샘]], [[턱밑샘]], [[혀밑샘]] {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): [[spring]], [[fountain]] * 이도(io): * 이탈리아어(it): [[fonte]] * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} * '''2-2.''' '[[샘터]]'. #: 말을 세우고 샘에 내려와서 손을 씻고 손수건을 물에 적시어서…. {{따옴|홍명희, 임꺽정}} {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): * 이도(io): * 이탈리아어(it): * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} regjhmmyqzr1dpjsi5qkabx0xt0i5x7 4483141 4483140 2026-05-01T04:47:21Z Jeebeen 13056 /* 한국어 */ 4483141 wikitext text/x-wiki == 한국어 == === 발음 === [[분류:한국어 단일어명사]] {{발음 듣기|}} {{ko-IPA}} === 어원 1 === ==== 명사 ==== {{한국어 명사}} # 다른 사람의 처지 또는 가진 것을 탐내는 마음. #: {{유의어|ko|시기|질투}} #: {{ux|ko|아이가 샘이 여간이 아니군요.}} #: {{ux|ko|샘 내지 말고 사이 좋게 지내거라.}} ==== 파생어 ==== {{col|ko|샘나다|샘내다|샘하다|pos3=동사|샘바르다|pos4=형용사}} === 어원 2 === {{한국어 명사}} # {{senseid|ko|Q124714}} 산이나 들에 물이 솟아 나오는 곳. 또는 그 물 #: {{uxi|ko|가뭄이 들어 '''샘'''이 말라 붙었다.}} #: {{uxi|ko|목마른 사람 '''샘''' 파기|무엇을 절실히 필요로 하는 사람은 스스로 그것을 찾아야 한다}} ==== 파생어 ==== {{col|ko|샘솟다|pos1=동사|t1=물이 땅에서 [[솟아나오다]]|샘파다|pos2=동사|t2=우물을 파다}} *합성어: [[샘물]], [[샘터]] *합성어: [[귀밑샘]], [[눈물샘]], [[땀샘]], [[도래샘]], [[옹달샘]], [[젖샘]], [[침샘]], [[턱밑샘]], [[혀밑샘]] {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): [[spring]], [[fountain]] * 이도(io): * 이탈리아어(it): [[fonte]] * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} * '''2-2.''' '[[샘터]]'. #: 말을 세우고 샘에 내려와서 손을 씻고 손수건을 물에 적시어서…. {{따옴|홍명희, 임꺽정}} {{외국어| * 그리스어(el): * 네덜란드어(nl): * 노르웨이어(no): * 덴마크어(da): * 독일어(de): * 라틴어(la): * 러시아어(ru): * 루마니아어(ro): * 몽골어(mn): * 불가리아어(bg): * 브르타뉴어(br): * 산스크리트어(sa): * 스웨덴어(sv): * 스페인어(es): * 슬로바키아어(sk): * 슬로베니아어(sl): * 아랍어(ar): | * 에스페란토(eo): * 영어(en): * 이도(io): * 이탈리아어(it): * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): * 중국어(zh): * 체코어(cs): * 카탈루냐어(ca): * 포르투갈어(pt): * 폴란드어(pl): * 프랑스어(fr): * 핀란드어(fi): * 헝가리어(hu): * 히브리어(he): }} jgm22s6b21qcasi4e19qo9zothys6xf книга 0 31706 4483146 3832858 2026-05-01T04:54:55Z Jeebeen 13056 /* 러시아어 */ 4483146 wikitext text/x-wiki == 러시아어 == === 어원 === * {{inh|ru|sla-pro|*kъniga}} === 발음 === {{발음 듣기|Ru-книга.ogg}} {{IPA|ˈknʲiɡə}} === 명사 === {{ru-noun+|кни́га}} # [[책]], [[서적]] ==== 파생어 ==== {{col|ru|книжка|pos1=명사|t1=[[호]]; [[수첩]]; [[통장]]|книжный|pos2=형용사|t2=책의, 서적용의}} == 우크라이나어 == :*여성 *어원: < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪɦə}} * '''1.''' [[책]]. == 불가리아어 == === 명사 === [[분류:불가리아어 명사]] :*여성 *어원: < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. :로마자 표기: kniga == 마케도니아어 == :*여성 *어원: < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. :로마자 표기: kniga == 아바자어 == === 명사 === [[분류:아바자어 명사]][[분류:아바자어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 알타이어 == === 명사 === [[분류:알타이어 명사]][[분류:알타이어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 코미어 == === 명사 === [[분류:코미어 명사]][[분류:코미페르먀크어]][[분류:코미어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 마리어 == *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 모크샤어 == *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 네네츠어 == *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 우드무르트어 == === 명사 === [[분류:우드무르트어 명사]][[분류:우드무르트어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 하카스어 == === 명사 === [[분류:하카스어 명사]][[분류:하카스어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 체첸어 == *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 쇼르어 == *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 에벤키어 == === 명사 === [[분류:에벤키어 명사]][[분류:에벤키어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 에벤어 == === 명사 === [[분류:에벤어 명사]][[분류:에벤어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 에르자어 == === 명사 === [[분류:에르자어 명사]][[분류:에르자어 외래어]] *어원: < 러시아어 [[книга]] < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪgə}} * '''1.''' [[책]]. == 루신어 == :*여성 *어원: < 슬라브조어 [[*kъniga]] {{발음 듣기|}} {{IPA|ˈknʲɪɦə}} * '''1.''' [[책]]. [[분류:마리어 외래어]] [[분류:모크샤어 외래어]] [[분류:체첸어 외래어]] [[분류:쇼르어 외래어]] [[분류:네네츠어 외래어]] e403x53pzmjgeuvogwhvp03ex6tvb0u камень 0 40450 4483123 3831993 2026-04-30T12:44:09Z Jeebeen 13056 4483123 wikitext text/x-wiki == 러시아어 == === 발음 === {{발음 듣기|Ru-камень.ogg}} {{IPA|ˈkamʲɪnʲ}} === 명사 === {{ru-noun+|ка́мень|m*|or||m*-ья|каме́н|gen_pl=камне́й,ка́мней*,каме́ньев△**|dat_pl=камня́м,ка́мням*,каме́ньям△**|ins_pl=камня́ми,ка́мнями*,каме́ньями△**|pre_pl=камня́х, ка́мнях*, каме́ньях△**|pltail=**|notes=* 문학적, ** 고어형|adj=ка́менный|dim=ка́мешек,ка́мушек|aug=каменю́ка,каменю́га}} # [[돌]], [[암석]] # [[석재]] ==== 파생어 ==== {{col|ru|ка́менный|pos1=형용사|t1=돌로 된, [[석조]]의|камени́стый|pos2=형용사|t2=돌이 많은, 돌로 된|ка́мещик|pos3=명사|t3=[[석공]]|окаме́ть|pos4=동사|t4=돌이 되게 하다, [[경화되다]]}} == 벨라루스어 == === 명사 === [[분류:벨라루스어 명사]] :*남성 *어원: < 폴란드어 [[kamień]] {{발음 듣기|}} {{IPA|kamʲɛnʲ}} * '''1.''' [[돌]]. :로마자 표기: [[kamień]] k90w9x55t4jnm8b62y0jnfgz2o4nj6b жена 0 42403 4483122 3829323 2026-04-30T12:24:50Z Jeebeen 13056 4483122 wikitext text/x-wiki == 러시아어 == === 어원 === * 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] === 명사 === {{ru-noun+|жена́}} # [[아내]]. # {{lb|ru|사어}} [[여자]]. #: {{유의어|ru|супруга}} ==== 파생어 ==== {{col|ru|женатый|pos1=형용사|t1=[[혼인하다|혼인한]]|женить|pos2=동사|t2=[[결혼시키다]]|женитьба|pos3=명사|t3=[[결혼]], [[혼인]]|жених|pos4=명사|t4=[[신랑]]|жеский|pos5=형용사|t5=여자의|женстнность|pos6=명사|t6=여성스러움, [[정숙]]|женщина|pos7=명사|t7=[[여자]], [[부인]]}} == 불가리아어 == === 명사 === :*여성 *어원: < 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] {{발음 듣기|}} {{IPA|ʒɛˈna}} * '''1.''' [[아내]]. * '''2.''' [[여자]]. :로마자 표기: zhena == 마케도니아어 == :*여성 *어원: < 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[아내]]. * '''2.''' [[여자]]. :로마자 표기: zhena == 보스니아어 == :*여성 *어원: < 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[아내]]. * '''2.''' [[여자]]. :로마자 표기: [[žena]] *아랍 문자 표기: [[ژه‌نا]] == 세르비아어 == :*여성 *어원: < 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[아내]]. * '''2.''' [[여자]]. {{세르비아어-보스니아어 격변화|жена|жене|жене|жена|жени|женама|жену|жене|жено|жене|женом|женама|жени|женама}} :로마자 표기: [[žena]] == 세르보크로아트어 == === 명사 === :*여성 *어원: < 슬라브어 [[žena]] < 인도유럽어 [[gʷḗn]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[여자]]. * '''2.''' [[아내]]. :로마자 표기: [[žena|žèna]] {{세르보크로아트어 격변화|жѐна|жене |жене|же́на̄ |жени|женама |жену|жене |же̏но|жене |жени|женама |женом|женама}} [[분류:불가리아어 명사]] [[분류:세르보크로아트어 명사]] [[분류:보스니아어 키릴]] [[분류:고대 러시아어 명사]] id954gn39imzg98hxz6e0zvko02umry ключ 0 45266 4483133 3832845 2026-05-01T04:28:00Z Jeebeen 13056 /* 러시아어 */ 4483133 wikitext text/x-wiki == 러시아어 == {{발음 듣기|Ru-ключ.ogg}} {{IPA|klʲʉʨ}} === 명사 === {{ru-noun+}} # [[열쇠]] ==== 파생어 ==== {{col|ru|клю́ница|pos1=|t1=[[창고지기]]|ключево́й|pos2=형용사|t2={{l|ko|샘|id=Q124714}}의|вы́ключить|pos3=동사|t3=[[밸브]]를 [[잠그다]], [[가스]]나 [[전류]]를 [[끊다]]|заключе́ние|pos4=명사|t4=[[유배]], [[유폐]]; [[결론]], [[결정]]|исключи́тельный|pos5=형용사|t5=[[예외적이다|예외적인]], [[독점적이다|독점적인]], [[특별하다|특별한]]}} |наклонность|поклон|поклонник|склон|склонить|уклонение|кланяться|раскланиваться|раскла == 벨라루스어 == === 명사 === [[분류:벨라루스어 명사]] *어원: 슬라브어에서 {{발음 듣기|}} {{IPA|klʲutʃ}} * '''1.''' [[열쇠]]. :로마자 표기: [[kłiuč]] == 우크라이나어 == :*남성 *어원: 슬라브어에서 {{발음 듣기|Uk-ключ.ogg}} {{IPA|klʲutʃ}} * '''1.''' [[열쇠]]. == 불가리아어 == === 명사 === :*남성 *어원: 슬라브어에서 {{발음 듣기|}} {{IPA|klʲutʃ}} * '''1.''' [[열쇠]]. :로마자 표기: klyuch == 코미어 == === 명사 === *어원: < 러시아어 [[ключ]](슬라브어에서) {{발음 듣기|}} {{IPA|klʲutʃ}} * '''1.''' (코미지리안어/코미페르먀크어) [[열쇠]]. == 네네츠어 == *어원: < 러시아어 [[ключ]](슬라브어에서) {{발음 듣기|}} {{IPA|klʲutʃ}} * '''1.''' [[열쇠]]. == 에벤키어 == === 명사 === *어원: < 러시아어 [[ключ]](슬라브어에서) {{발음 듣기|}} {{IPA|klʲutʃ}} * '''1.''' [[열쇠]]. [[분류:불가리아어 명사]] [[분류:코미어 명사]] [[분류:코미어 외래어]] [[분류:코미지리안어]] [[분류:코미페르먀크어]] [[분류:에벤키어 명사]] [[분류:에벤키어 외래어]] [[분류:네네츠어 외래어]] aysgps0xmbq77zjv821sjlw7zdp1lca ຕາ 0 47943 4483134 4482770 2026-05-01T04:35:26Z Apisite 21408 /* 라오어 */ 4483134 wikitext text/x-wiki == 라오어 == === 발음 === {{IPA|taː˩(˧)|비엔티안}} {{IPA|taː˩˨|루앙프라방}} === 명사 === {{head|lo|명사}} # (사물을 보는) '[[눈]]' ==== 파생어 ==== {{col|lo|ຕາເວັນ|ຕາແດງ|ຕາແກ້ວ|ພັບຕາ}} 98899rye5fsm617dl3xdhs81shitmqj кожа 0 52859 4483147 3832938 2026-05-01T05:01:06Z Jeebeen 13056 /* 러시아어 */ 4483147 wikitext text/x-wiki == 러시아어 == === 어원 === * {{inh|ru|sla-pro|*kozi̯ā}} === 발음 === {{발음 듣기|Ru-кожа.ogg}} {{IPA|ˈkoʐə}} === 명사 === {{ru-noun+|ко́жа}} # [[피부]]. # [[가죽]]. # [[피혁]]. ==== 파생어 ==== {{col|ru|ко́жаный|pos1=형용사|t1=[[가죽]]의, [[피혁]]의|коже́венный|pos2=형용사|t2=가죽에 관한, 피혁 제조에 관한, [[무두질]]에 관한}} == 우크라이나어 == :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|kóža}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. == 불가리아어 == === 명사 === [[분류:불가리아어 명사]] :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. :로마자 표기: kozha == 마케도니아어 == :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. :로마자 표기: koža == 보스니아어 == :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. :로마자 표기: [[koža]] == 세르비아어 == :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. :로마자 표기: [[koža]] == 슬로비오 == *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. :로마자 표기: [[kozxa]] == 고대교회슬라브어 == :*여성 *어원: < 슬라브어 [[kozi̯ā]] {{발음 듣기|}} {{IPA|}} * '''1.''' [[피부]]. * '''2.''' [[가죽]]. *낱말의 영향: :* 보스니아어: [[koža]] :* 크로아티아어: [[koža]] :* 마케도니아어: [[кожа]] :* 러시아어: [[кожа]] :* 세르비아어: [[koža]] :* 슬로베니아어: [[koža]] [[분류:보스니아어 키릴]] qdbco3i8l7bk8rej7djv2ine3ekpd0y клад 0 83614 4483124 3832783 2026-04-30T12:56:24Z Jeebeen 13056 4483124 wikitext text/x-wiki == 러시아어 == === 명사 === {{ru-noun+}} # [[보물]]. #: {{유의어|ru|сокровище}} ==== 파생어 ==== {{col|ru|кладбише|кладовя|класть|докладывать|заклад|укладываться}} {{러시아어 격변화|кла́д|кла́ды|кла́да|кла́дов|кла́ду|кла́дам|кла́д|кла́ды|кла́дом|кла́дами|кла́де|кла́дах}} :로마자 표기: klad ctahwokuypxboio88nn82huea2n7sy8 4483131 4483124 2026-05-01T03:49:16Z Jeebeen 13056 4483131 wikitext text/x-wiki == 러시아어 == === 명사 === {{ru-noun+}} # [[보물]]. #: {{유의어|ru|сокровище}} ==== 파생어 ==== {{col|ru|кла́дбише|pos1=명사|t1=[[묘지]]|кладова́я|pos2=명사|t2=[[창고]], [[곳간]]|кла́сть|pos3=동사|t3=[[놓다]], [[설치하다]]|докла́дывать|pos4=동사|t4=[[보고하다]], [[알리다]]|закла́д|pos5=명사|t5=[[저당]], [[담보물]], [[담보]]; [[내기]]; [[도박]]|укла́дываться|pos6=동사|t6=[[눕다]], 짐을 [[챙기다]]}} lsj7mocqax11ha7j25bftge6uaae8wu 오이 0 89108 4483152 4248688 2026-05-01T09:49:58Z Apisite 21408 /* 한국어 */ + ko-noun 4483152 wikitext text/x-wiki == 한국어 == === 어원 === {{ko-etym-native}} === 발음 === {{ko-IPA}} === 명사 === {{ko-noun}} # [[박]]과의 [[채소]]. [[열매]]는 길고 겉은 울퉁불퉁하며, [[과즙]]이 많은게 [[특징]]이다. ==== 번역 ==== {{외국어| * 그리스어(el): [[αγγούρι]](angoúri) * 네덜란드어(nl): [[komkommerplant]], [[komkommer]] * 노르웨이어(no): [[agurk]] * 덴마크어(da): [[agurk]] * 독일어(de): [[Gurke]] * 라오어(lo): [[ໝາກແຕງ]](maak-tëëng) * 라트비아어(lv): [[gurķis]] * 라틴어(la): * 러시아어(ru): [[огурец]](oguréc) * 루마니아어(ro): [[castravete]] * 리투아니아어(lt): [[agurkas]] * 마케도니아어(mk): [[краставица]](krastávica) * 말레이어(ms): [[timun]] * 몰타어(mt): [[ħjara]] * 몽골어(mn): * 베트남어(vi): [[dưa chuột]] * 보스니아어(bs): [[krastavac]] * 불가리아어(bg): [[краставица]] * 브레통어(br): * 세르비아어(sr): [[краставац]](키릴)/[[krastavac]](라틴) * 스웨덴어(sv): [[gurka]] * 슬로바키아어(sk): [[uhorka]] * 슬로베니아어(sl): [[kumara]] * 아랍어(ar): [[خيار|خِيار]](khiyaar), (이집트); [[خيار]](khiyaar) * 아르메니아어(hy): [[վարունգ]](varung) * 아이슬란드어(is): [[gúrka]], [[agúrka]] * 알바니아어(sq): [[krastravec]] * 에스토니아어(et): [[kurk]] * 스페인어(es): [[pepino]] * 에스페란토(eo): [[kukumo]] * 에웨어(ee): [[adzamtre]] | * 영어(en): [[cucumber]] * 우르두어(ur): [[کھیرا]](khīrā) * 우크라이나어(uk): [[огірок]](ohirók) * 이도(io): * 이탈리아어(it): [[cetriolo]] * 인도네시아어(id): * 인터링구아(ia): * 일본어(ja): {{lang|ja|[[胡瓜]]([[きゅうり]])}}(kyūri) * 자와어(jv): [[timun]] * 중국어(zh): [[黄瓜]](간체)/[[黄瓜]](번체자)(huángguā); [[青瓜]](간체)/[[青瓜]](번체자)(qīngguā) * 체코어(cs): [[okurka]] * 카탈루냐어(ca): [[cogombre]] * 쿠르드어(ku): (소라니어); [[ئاروو]](Aroo), [[خه‌یار]](xeyar) * 크로아티아어(hr): [[krastavac]] * 키르기스어(ky): [[бадыраң]] * 타갈로그어(tl): * 타이어(th): [[แตงกวา]](dtaeng-gwaa) * 타지크어(tg): [[бодиринг]] * 터키어(tr): * 텔루구어(te): [[దోస]](dOsa), [[దోస కాయ]](dOsa kaaya) * 팔라우어(pau): [[kiuri]] * 파피아멘토어(pap): [[kònkòmber]] * 페르시아어(fa): [[خیار]] * 포르투갈어(pt): [[pepineiro]], [[pepino]] * 폴란드어(pl): [[ogórek]] * 프랑스어(fr): [[concombre]] * 핀란드어(fi): [[kurkku]] * 헝가리어(hu): [[uborka]] * 히브리어(he): [[מלפפון]](melafefon) * 힌디어(hi): [[खीरा]](khīrā) }} [[분류:한국어 식물]] a8ul1tb29w531hh1xkdkiq9jb5r42bu ນ້ຳ 0 101931 4483135 4482762 2026-05-01T04:38:50Z Apisite 21408 /* 라오어 */ + 파생어 4483135 wikitext text/x-wiki == 라오어 == === 발음 === {{IPA|nam˥˨|비엔티안}} {{IPA|nam˧˦|루앙프라방}} === 명사 === {{head|lo|명사}} # [[물]] ==== 파생어 ==== {{col3|lo|ນ້ຳສົ້ມ |ນ້ຳຕານ |ນ້ຳປາ |ນ້ຳອະສຸຈິ |ນ້ຳສ້າງ |ນ້ຳຊາ |ນ້ຳດື່ມ |ຕົກຕາດນ້ຳ,ນ້ຳຕາດ,ນ້ຳຕົກ,ນ້ຳຕົກຕາດ,ນ້ຳໂຕນຕາດ,ນ້ຳໂຕນຜາ |ນ້ຳຖ້ວມ |ນ້ຳນົມ |ນ້ຳພຸ |ນ້ຳມັນ |ນ້ຳຫອມ |ຫ້ອງນ້ຳ<tr:hɔ̏ːŋ nâm> |ນ້ຳໝາກໄມ້ |ລອຍນ້ຳ |ແມ່ນ້ຳ }} 7rnzh348s0u30inholqcky8bdxduflu 4483136 4483135 2026-05-01T04:39:23Z Apisite 21408 /* 라오어 */ 4483136 wikitext text/x-wiki == 라오어 == === 발음 === {{IPA|nam˥˨|비엔티안}} {{IPA|nam˧˦|루앙프라방}} === 명사 === {{head|lo|명사}} # [[물]] ==== 파생어 ==== {{col3|lo|ນ້ຳສົ້ມ |ນ້ຳຕານ |ນ້ຳປາ |ນ້ຳອະສຸຈິ |ນ້ຳສ້າງ |ນ້ຳຊາ |ນ້ຳດື່ມ |ຕົກຕາດນ້ຳ,ນ້ຳຕາດ,ນ້ຳຕົກ,ນ້ຳຕົກຕາດ,ນ້ຳໂຕນຕາດ,ນ້ຳໂຕນຜາ |ນ້ຳຖ້ວມ |ນ້ຳນົມ |ນ້ຳພຸ |ນ້ຳມັນ |ນ້ຳຫອມ |ຫ້ອງນ້ຳ |ນ້ຳໝາກໄມ້ |ລອຍນ້ຳ |ແມ່ນ້ຳ }} 8x8yenh8ifovyf2kwhl4fybpux4y9bj သွား 0 114948 4483151 4052911 2026-05-01T09:47:47Z Apisite 21408 /* 버마어 */ 4483151 wikitext text/x-wiki == 버마어 == === 발음 === {{IPA|θwá}} {{발음 듣기|}} === 명사 === {{head|my|명사}} {{표제어|언어=버마어|발음=똬}} # [[이]], [[이빨]] === 동사 === {{head|my|동사}} {{표제어|언어=버마어|발음=똬}} # [[가다|가]](~다) :* [[ထွက်]]'''သွား'''! :: 나'''가'''! mr67p97b3vl09jm3mb0ckinyhv8cxuo reflektieren 0 227804 4483158 4215792 2026-05-01T11:58:54Z Jeuwre 13250 발음 4483158 wikitext text/x-wiki == 독일어 == {{발음 듣기|De-reflektieren2.ogg}} {{IPA|ʁeflɛkˈtiːʁən}} # :* [[분류:독일어 초안]] fnwpvmb0gbv9cqrox9i47efodqu8kwo ເຂົ່າ 0 355918 4483142 4482732 2026-05-01T04:47:22Z Apisite 21408 /* 라오어 */ + 발음 4483142 wikitext text/x-wiki == 라오어 == === 발음 === {{IPA|kʰaw˧|비엔티안}} {{IPA|kʰaw˧˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[무릎]] {{번역 낱말|무릎|}} [[분류:라오어 해부학]] dqad0rr4hfr1myu7khe68x2rmuxyxof 4483144 4483142 2026-05-01T04:51:21Z Apisite 21408 4483144 wikitext text/x-wiki {{참고|ເຂົາ|ເຂົ້າ}} == 라오어 == === 발음 === {{IPA|kʰaw˧|비엔티안}} {{IPA|kʰaw˧˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[무릎]] {{번역 낱말|무릎|}} [[분류:라오어 해부학]] i4vptar5wp5kict4q75y7otxvtxofau 모듈:affix 828 446529 4483156 4476628 2026-05-01T10:36:12Z Jeebeen 13056 871: 표면 분석에 따르면 > 형태론적으로는 4483156 Scribunto text/plain local export = {} local debug_force_cat = false -- if set to true, always display categories even on userspace pages local m_links = require("Module:also/link") local m_str_utils = require("Module:string utilities") local m_table = require("Module:table") local etymology_module = "Module:etymology" local pron_qualifier_module = "Module:pron qualifier" local scripts_module = "Module:scripts" local utilities_module = "Module:utilities" local m_ko_utils = require("Module:ko-utilities") -- [[Module:category tree/etymology]]에서 접근할 수 있도록 export export.affix_lang_data_module_prefix = "Module:affix/lang-data/" local rsub = m_str_utils.gsub local usub = m_str_utils.sub local ulen = m_str_utils.len local rfind = m_str_utils.find local rmatch = m_str_utils.match local u = m_str_utils.char local ucfirst = m_str_utils.ucfirst local unpack = unpack or table.unpack -- Lua 5.2 호환성 -- [[Module:category tree/etymology]]에서 접근할 수 있도록 export export.langs_with_lang_specific_data = { ["az"] = true, ["fi"] = true, ["izh"] = true, ["la"] = true, ["sah"] = true, ["tr"] = true, } local default_pos = "낱말" --[==[ 소개: === 다른 종류의 하이픈("틀", "표시", "조회")에 대하여: === * "틀 하이픈"은 틀 호출에서 어떤 항이 접사임을 나타내기 위해 사용되는 스크립트별 하이픈 문자입니다. 항상 단일 유니코드 문자이지만, 특정 스크립트에 대해서는 여러 하이픈이 가능할 수 있습니다. 보통은 일반 하이픈 문자 "-"이지만, 일부 라틴 문자가 아닌 언어(현재는 오른쪽에서 왼쪽으로 쓰는 언어만 해당)에서는 다릅니다. * "표시 하이픈"은 어떤 항이 접사임을 나타내기 위해 표시되고 링크될 때 해당 항에 추가되는 문자열입니다 (빈 문자열일 수도 있음). 현재는 항상 틀 하이픈과 같거나 빈 문자열이지만, 아래 코드는 임의의 표시 하이픈을 처리할 수 있을 만큼 일반적입니다. 구체적으로: *# 동아시아 언어의 경우, 표시 하이픈은 항상 비어 있습니다. *# 아랍 문자 언어의 경우, 타트윌(ـ) 또는 ZWNJ(폭 없는 비연결자)가 틀 하이픈으로 허용됩니다. ZWNJ는 일부 접미사가 비연결 동작을 보이기 때문에 주로 페르시아어에서 지원됩니다. 타트윌에 해당하는 표시 하이픈은 역시 타트윌이지만, ZWNJ에 해당하는 표시 하이픈은 비어 있습니다 (명시적 하이픈이 없는 {{접두사}}/{{접미사}} 등의 호출에서는 타트윌이 기본 표시 하이픈임). * "조회 하이픈"은 언어별 접사 매핑을 조회할 때 사용되는 하이픈입니다. (이 매핑은 아래 링크 접사를 논할 때 더 자세히 설명). 이는 해당 접사의 스크립트에만 의존합니다. 대부분의 스크립트(동아시아 스크립트 포함)는 일반 하이픈 "-"을 조회 하이픈으로 사용하지만, 히브리어와 아랍어는 각각 고유의 조회 하이픈(마켑과 타트윌)을 가집니다. 특히 아랍어의 경우, 세 가지 가능한 틀 하이픈 (타트윌, ZWNJ, 일반 하이픈)이 인식되지만, 매핑에서는 반드시 타트윌을 사용해야 합니다. === 다른 종류의 접사("틀", "표시", "링크", "조회", "분류")에 대하여: === * "틀 접사"는 틀 호출에 나타나는 소스 형태의 접사입니다. 일반적으로 틀 접사에는 틀 하이픈이 붙어 접사임을 나타내고 어떤 종류의 접사인지(접두사, 접미사, 접요사, 양접사)를 나타내지만, {{접미사}}, {{접두사}} 등 구식 틀 중 일부는 "위치적" 접사를 가지며, 특정 위치(예: 두 번째 또는 세 번째 매개변수)에 접사가 존재한다는 사실 자체가 틀 하이픈의 존재 여부와 관계없이 특정 종류의 접사임을 나타냅니다. * "표시 접사"는 사용자에게 실제로 표시되는 해당 접사입니다. 표시 접사는 여러 이유로 틀 접사와 다를 수 있습니다: *# 표시 접사는 `|altN=` 매개변수, `<alt:...>` 인라인 수정자 또는 `[[-kas|-käs]]` 형태의 파이프 링크를 사용하여 명시적으로 지정될 수 있습니다 (여기서는 접사가 -käs로 표시되지만 -kas로 링크되어야 함을 나타냄). 이때 틀 접사는 전체 파이프 링크이고, 표시 접사는 -käs입니다. *# 위와 같은 명시적 지정이 없더라도, 특정 언어는 틀에 지정된 "틀 하이픈"과 "표시 하이픈"이 다를 수 있으며, 이에 따라 틀 접사와 표시 접사도 달라집니다. * (일반) "링크 접사"는 접사가 사용자에게 보일 때 링크되는 접사입니다. 링크 접사는 보통 표시 접사와 같지만, 세 가지 경우에 달라집니다: *# 위 "표시 접사"에서 설명한 대로 명시적 지정으로 표시 접사와 링크 접사가 달라지는 경우. *# 특정 언어의 경우, 특정 접사가 언어별 매핑을 통해 표준형으로 변환됩니다. 예를 들어, 핀란드어에서 형용사 형성 접미사 [[-kas]]는 전설모음 뒤에서 [[-käs]]로 나타나지만, 논리적으로 두 형태는 동일한 접미사이므로 동일하게 링크되고 분류되어야 합니다. 매핑은 `모듈:affix/lang-data/언어코드`에 제공되어 핀란드어 [[-käs]]를 링크 및 분류 목적으로 [[-kas]]로 변환합니다. 매핑에 있는 접사들은 "조회 하이픈"을 사용하는데, 이는 보통 틀 하이픈과 같지만 아랍 문자에서는 다릅니다. * "정리된 링크 접사"는 언어의 `makeEntryName()` 함수를 거친 링크 접사로, 특정 발음 구별 기호를 제거할 수 있습니다. 정리된 링크 접사는 현재 분류명에 사용되는 것입니다. * "조회 접사"는 위에서 설명한 언어별 조회 매핑에서 조회되는 형태의 접사입니다. 실제로는 두 단계의 조회가 있습니다: *# 먼저, 수정된 표시 형태(표시 접사와 같지만 조회 하이픈 사용)로 접사를 조회합니다. *# 항목을 찾지 못하면, 발음 구별 기호를 제거한 수정된 링크 형태로 다시 조회합니다. 이 이중 조회 절차는 발음 구별 기호에 민감한 매핑과 그렇지 않은 매핑을 모두 허용하기 위함입니다. * "분류 접사"는 [[:분류:-kas가 붙은 핀란드어 낱말]]과 같은 분류에 나타나는 접사입니다. 분류 접사는 현재 항상 정리된 링크 접사와 동일합니다. ]==] ----------------------------------------------------------------------------------------- -- Template and display hyphens -- ----------------------------------------------------------------------------------------- --[=[ 스크립트별 틀 하이픈. 틀 하이픈은 {{접사}}/{{접두사}}/{{접미사}} 등 틀의 위키코드에 나타나는 것입니다. 위 설명 참조. 아래 키는 스크립트 코드에서 하이픈과 그 앞부분을 제거한 것입니다. 따라서 'fa-Arab', 'ur-Arab' 같은 스크립트 코드는 'Arab'과 일치합니다. 값은 하나 이상의 하이픈 문자로 이루어진 문자열입니다. ]=] local ZWNJ = u(0x200C) -- 폭 없는 비연결자(Zero-width non-joiner) local template_hyphens = { -- This covers all Arabic scripts. See above. ["Arab"] = "ـ" .. ZWNJ .. "-", -- 타트윌 + ZWNJ + 일반 하이픈 ["Hebr"] = "־", -- 히브리어 고유 하이픈 "마켑(maqqef)" ["Mong"] = "᠊", -- FIXME! 아래 오른쪽-왼쪽 스크립트들에 대한 처리 필요 -- Adlm (Adlam) -- Armi (Imperial Aramaic) -- Avst (Avestan) -- Cprt (Cypriot) -- Khar (Kharoshthi) -- Mand (Mandaic/Mandaean) -- Mani (Manichaean) -- Mend (Mende/Mende Kikakui) -- Narb (Old North Arabian) -- Nbat (Nabataean/Nabatean) -- Nkoo (N'Ko) -- Orkh (Orkhon runes) -- Phli (Inscriptional Pahlavi) -- Phlp (Psalter Pahlavi) -- Phlv (Book Pahlavi) -- Phnx (Phoenician) -- Prti (Inscriptional Parthian) -- Rohg (Hanifi Rohingya) -- Samr (Samaritan) -- Sarb (Old South Arabian) -- Sogd (Sogdian) -- Sogo (Old Sogdian) -- Syrc (Syriac) -- Thaa (Thaana) } -- 언어별 접사 매핑에서 접사를 조회할 때 사용되는 하이픈. 기본값은 일반 하이픈(-). -- 키는 스크립트 코드. 값은 단일 문자여야 함. local lookup_hyphens = { ["Hebr"] = "־", -- 모든 아랍계 스크립트에 해당. ["Arab"] = "ـ", } -- 기본 표시-하이픈 함수 local function default_display_hyphen(script, hyph) if not hyph then return template_hyphens[script] or "-" end return hyph end -- 아랍계 스크립트의 표시-하이픈 함수 local function arab_get_display_hyphen(script, hyph) if not hyph then return "ـ" -- 타트윌 elseif hyph == ZWNJ then return "" else return hyph end end local function no_display_hyphen(script, hyph) return "" end -- 스크립트별로 올바른 표시 하이픈을 반환하는 함수 -- 키는 스크립트 코드 local display_hyphens = { -- 모든 아랍계 스크립트에 해당 ["Arab"] = arab_get_display_hyphen, ["Bopo"] = no_display_hyphen, -- 주음부호 ["Hani"] = no_display_hyphen, -- 한자(통합) ["Hans"] = no_display_hyphen, -- 한자(간체) ["Hant"] = no_display_hyphen, -- 한자(정체) ["Jpan"] = no_display_hyphen, -- 일본어 ["Jurc"] = no_display_hyphen, -- 여진 문자 ["Kitl"] = no_display_hyphen, -- 거란 소자 ["Kits"] = no_display_hyphen, -- 거란 대자 ["Laoo"] = no_display_hyphen, -- 라오 문자 ["Nshu"] = no_display_hyphen, -- 여서 문자 ["Shui"] = no_display_hyphen, -- 수 문자 ["Tang"] = no_display_hyphen, -- 서하 문자 ["Thaa"] = no_display_hyphen, -- 타나 문자 ["Thai"] = no_display_hyphen, -- 타이 문자 } ----------------------------------------------------------------------------------------- -- Basic Utility functions -- ----------------------------------------------------------------------------------------- local function glossary_link(entry, text) text = text or entry return "[[부록:용어사전#" .. entry .. "|" .. text .. "]]" end local function track(page) if type(page) == "table" then for i, pg in ipairs(page) do page[i] = "affix/" .. pg end else page = "affix/" .. page end require("Module:debug/track")(page) end local function ine(val) return val ~= "" and val or nil end ----------------------------------------------------------------------------------------- -- 복합어 유형 -- ----------------------------------------------------------------------------------------- -- 복합어 유형 항목 생성 (용어사전 링크 사용) local function make_compound_type(typ, alttext) return { text = glossary_link(typ, alttext) .. " 복합어", cat = typ .. " 복합어", } end -- 복합어 유형 항목 생성 (단순 링크 사용) -- 추후 용어집에 항목이 생성되면 glossary_link로 대체해야 함 local function make_non_glossary_compound_type(typ, alttext) local link = alttext and "[[" .. typ .. "|" .. alttext .. "]]" or "[[" .. typ .. "]]" return { text = link .. " 복합어", cat = typ .. " 복합어", } end -- 원시 복합어 유형 항목 생성 local function make_raw_compound_type(typ, alttext) return { text = glossary_link(typ, alttext), cat = typ, } end -- 차용 유형 항목 생성 local function make_borrowing_type(typ, alttext) return { text = glossary_link(typ, alttext), borrowing_type = typ, } end -- 각종 어원 유형 및 약어 정의 export.etymology_types = { ["adapted borrowing"] = make_borrowing_type("adapted borrowing", "순화 차용"), ["adap"] = "adapted borrowing", ["abor"] = "adapted borrowing", ["alliterative"] = make_non_glossary_compound_type("alliterative", "두운"), ["allit"] = "alliterative", ["antonymous"] = make_non_glossary_compound_type("antonymous", "반의"), ["ant"] = "antonymous", ["bahuvrihi"] = make_compound_type("bahuvrihi", "bahuvrīhi", "바후브리히"), ["bahu"] = "bahuvrihi", ["bv"] = "bahuvrihi", ["coordinative"] = make_compound_type("coordinative", "대등"), ["coord"] = "coordinative", ["descriptive"] = make_compound_type("descriptive", "기술"), ["desc"] = "descriptive", ["determinative"] = make_compound_type("determinative", "한정"), ["det"] = "determinative", ["dvandva"] = make_compound_type("dvandva", "드반드바"), ["dva"] = "dvandva", ["dvigu"] = make_compound_type("dvigu", "드비구"), ["dvi"] = "dvigu", ["endocentric"] = make_compound_type("endocentric", "내심"), ["endo"] = "endocentric", ["exocentric"] = make_compound_type("exocentric", "외심"), ["exo"] = "exocentric", ["izafet I"] = make_compound_type("izafet I", "이자페트 I"), ["iz1"] = "izafet I", ["izafet II"] = make_compound_type("izafet II", "이자페트 II"), ["iz2"] = "izafet II", ["izafet III"] = make_compound_type("izafet III", "이자페트 III"), ["iz3"] = "izafet III", ["karmadharaya"] = make_compound_type("karmadharaya", "karmadhāraya", "카르마다라야"), ["karma"] = "karmadharaya", ["kd"] = "karmadharaya", ["kenning"] = make_raw_compound_type("kenning", "케닝"), ["ken"] = "kenning", ["rhyming"] = make_non_glossary_compound_type("rhyming", "압운"), ["rhy"] = "rhyming", ["synonymous"] = make_non_glossary_compound_type("synonymous", "동의"), ["syn"] = "synonymous", ["tatpurusa"] = make_compound_type("tatpurusa", "tatpuruṣa", "타트푸루샤"), ["tat"] = "tatpurusa", ["tp"] = "tatpurusa", } -- 어원 유형 처리 local function process_etymology_type(typ, nocap, notext, has_parts) local text_sections = {} local categories = {} local borrowing_type if typ then local typdata = export.etymology_types[typ] if type(typdata) == "string" then typdata = export.etymology_types[typdata] end if not typdata then error("내부 오류: 인식할 수 없는 유형 '" .. typ .. "'") end local text = typdata.text if not nocap then text = ucfirst(text) end local cat = typdata.cat borrowing_type = typdata.borrowing_type local oftext = typdata.oftext or "의 " if not notext then if has_parts then table.insert(text_sections, text) table.insert(text_sections, oftext) else table.insert(text_sections, text) end end if cat then table.insert(categories, cat) end end return text_sections, categories, borrowing_type end ----------------------------------------------------------------------------------------- -- 유틸리티 함수 -- ----------------------------------------------------------------------------------------- -- 배열에서 가장 큰 정수 인덱스까지 반복 local function ipairs_with_gaps(t) local indices = m_table.numKeys(t) local max_index = #indices > 0 and math.max(unpack(indices)) or 0 local i = 0 return function() while i < max_index do i = i + 1 return i, t[i] end end end export.ipairs_with_gaps = ipairs_with_gaps --[==[ 형식화된 부분들(`parts_formatted`)을 합치고, 직역(`lit`), 분류(`categories`) 등을 추가하는 함수. `nocat`이 주어지면 분류를 추가하지 않음. `force_cat`은 사용자 문서 등에서도 분류를 강제로 추가함. ]==] function export.join_formatted_parts(data) local cattext local lang = data.data.lang local force_cat = data.data.force_cat or debug_force_cat if data.data.nocat then cattext = "" else for i, cat in ipairs(data.categories) do local cat_base_string local sort_key local sort_base if type(cat) == "table" then cat_base_string = cat.cat sort_key = cat.sort_key sort_base = cat.sort_base else cat_base_string = cat sort_key = data.data.sort_key sort_base = nil end local full_cat_string if cat_base_string:find(" 붙은 ", 1, true) then full_cat_string = cat_base_string:gsub(" 붙은 ", " 붙은 " .. lang:getFullName() .. " ", 1) else full_cat_string = lang:getFullName() .. " " .. cat_base_string end data.categories[i] = require(utilities_module).format_categories(full_cat_string, lang, sort_key, sort_base, force_cat) end cattext = table.concat(data.categories) end local result = table.concat(data.parts_formatted, " +&lrm; ") .. (data.data.lit and ", 직역하면 " .. m_links.mark(data.data.lit, "gloss") or "") local q = data.data.q local qq = data.data.qq local l = data.data.l local ll = data.data.ll if q and q[1] or qq and qq[1] or l and l[1] or ll and ll[1] then result = require(pron_qualifier_module).format_qualifiers { lang = lang, text = result, q = q, qq = qq, l = l, ll = ll, } end return result .. cattext end --[==[ join_formatted_parts()를 호출하는 구식 함수. 호출부를 수정해야 함. ]==] function export.concat_parts(lang, parts_formatted, categories, nocat, sort_key, lit, force_cat) return export.join_formatted_parts { data = { lang = lang, nocat = nocat, sort_key = sort_key, lit = lit, force_cat = force_cat, }, parts_formatted = parts_formatted, categories = categories, } end -- 링크를 제거하고 lang:makeEntryName(term) 호출 local function make_entry_name_no_links(lang, term) return (lang:makeEntryName(m_links.remove_links(term))) end --[=[ 매개변수로 넘어온 원시(raw) 부분을 링크 가능한 부분으로 변환. 전체 언어/스크립트를 기본값으로 사용하고, 용어에서 조각(#)을 파싱함. ]=] local function canonicalize_part(part, lang, sc) if not part then return end -- Save the original (user-specified, part-specific) value of `lang`. If such a value is specified, we don't insert -- a '*fixed with' category, and we format the part using format_derived() in [[Module:etymology]] rather than -- full_link() in [[Module:links]]. part.part_lang = part.lang part.lang = part.lang or lang part.sc = part.sc or sc local term = part.term if not term then return elseif not part.fragment then part.term, part.fragment = m_links.get_fragment(term) else part.term = m_links.get_fragment(term) end end --[==[ 주어진 부분(`part`)의 정보를 바탕으로 링크된 부분을 생성. `part.part_lang`이 지정되면 모듈:etymology의 `format_derived`를 호출하고, 아니면 모듈:links의 `full_link`를 호출. ]==] function export.link_term(part, data) local result if part.part_lang then -- format_derived() processes per-part qualifiers, labels and references, but they end up on the wrong side -- of the source (at least on the left), so we need to move them up. local q = part.q local qq = part.qq local l = part.l local ll = part.ll local refs = part.refs part.q = nil part.qq = nil part.l = nil part.ll = nil part.refs = nil result = require(etymology_module).format_derived { lang = data.lang, terms = {part}, sources = {part.lang}, sort_key = data.sort_key, nocat = data.nocat, borrowing_type = data.borrowing_type, force_cat = data.force_cat or debug_force_cat, q = q, qq = qq, l = l, ll = ll, refs = refs, } else result = m_links.full_link(part, "term", nil, "show qualifiers") end return result end -- 스크립트 코드를 표준화 (예: fa-Arab -> Arab) local function canonicalize_script_code(scode) return (scode:gsub("^.*%-", "")) end ----------------------------------------------------------------------------------------- -- 접사 처리 함수 -- ----------------------------------------------------------------------------------------- -- 주어진 접사와 언어에 맞는 스크립트를 파악하고, 그에 맞는 하이픈 값들을 반환. local function detect_script_and_hyphens(text, lang, sc) local scode if sc then scode = sc:getCode() else local possible_script_codes = lang:getScriptCodes() local num_possible_script_codes = m_table.length(possible_script_codes) if num_possible_script_codes == 0 then error("심각한 오류 발생! " .. lang:getCanonicalName() .. " 언어에 스크립트 코드가 없습니다.") end if num_possible_script_codes == 1 then scode = possible_script_codes[1] else local may_have_nondefault_hyphen = false for _, script_code in ipairs(possible_script_codes) do script_code = canonicalize_script_code(script_code) if template_hyphens[script_code] or display_hyphens[script_code] then may_have_nondefault_hyphen = true break end end if not may_have_nondefault_hyphen then scode = "Latn" else scode = lang:findBestScript(text):getCode() end end end scode = canonicalize_script_code(scode) local template_hyphen = template_hyphens[scode] or "-" local lookup_hyphen = lookup_hyphens[scode] or "-" local display_hyphen = display_hyphens[scode] or default_display_hyphen return scode, template_hyphen, display_hyphen, lookup_hyphen end --[=[ 주어진 틀 접사(`term`)와 접사 유형(`affix_type`)에 따라, 관련된 틀 하이픈을 새로운 하이픈(`new_hyphen`)으로 변경하거나, 없는 경우 추가함. ]=] local function reconstruct_term_per_hyphens(term, affix_type, scode, thyph_re, new_hyphen) local function get_hyphen(hyph) if type(new_hyphen) == "string" then return new_hyphen end return new_hyphen(scode, hyph) end if affix_type == "non-affix" then return term elseif affix_type == "circumfix" then local before, before_hyphen, after_hyphen, after = rmatch(term, "^(.*)" .. thyph_re .. " " .. thyph_re .. "(.*)$") if not before or ulen(term) <= 3 then -- Unlike with other types of affixes, don't try to add hyphens in the middle of the term to convert it to -- a circumfix. Also, if the term is just hyphen + space + hyphen, return it. return term end return before .. get_hyphen(before_hyphen) .. " " .. get_hyphen(after_hyphen) .. after elseif affix_type == "infix" or affix_type == "interfix" then local before_hyphen, middle, after_hyphen = rmatch(term, "^" .. thyph_re .. "(.*)" .. thyph_re .. "$") if before_hyphen and ulen(term) <= 1 then -- If the term is just a hyphen, return it. return term end return get_hyphen(before_hyphen) .. (middle or term) .. get_hyphen(after_hyphen) elseif affix_type == "prefix" then local middle, after_hyphen = rmatch(term, "^(.*)" .. thyph_re .. "$") if middle and ulen(term) <= 1 then -- If the term is just a hyphen, return it. return term end return (middle or term) .. get_hyphen(after_hyphen) elseif affix_type == "suffix" then local before_hyphen, middle = rmatch(term, "^" .. thyph_re .. "(.*)$") if before_hyphen and ulen(term) <= 1 then -- If the term is just a hyphen, return it. return term end return get_hyphen(before_hyphen) .. (middle or term) else error(("내부 오류: 인식할 수 없는 접사 유형 '%s'"):format(affix_type)) end end --[=[ 주어진 접사 변이형을 표준형으로 매핑하는 함수. 매핑 테이블은 언어별, ID별로 지정될 수 있음. ]=] local function lookup_affix_mapping(affix, affix_type, lang, scode, thyph_re, lookup_hyph, affix_id) local function do_lookup(affix) -- Ensure that the affix uses lookup hyphens regardless of whether it used a different type of hyphens before -- or no hyphens. local lookup_affix = reconstruct_term_per_hyphens(affix, affix_type, scode, thyph_re, lookup_hyph) local function do_lookup_for_langcode(langcode) if export.langs_with_lang_specific_data[langcode] then local langdata = mw.loadData(export.affix_lang_data_module_prefix .. langcode) if langdata.affix_mappings then local mapping = langdata.affix_mappings[lookup_affix] if mapping then if type(mapping) == "table" then mapping = mapping[affix_id or false] if mapping then return mapping end else return mapping end end end end end -- If `lang` is an etymology-only language, look for a mapping both for it and its full parent. local langcode = lang:getCode() local mapping = do_lookup_for_langcode(langcode) if mapping then return mapping end local full_langcode = lang:getFullCode() if full_langcode ~= langcode then mapping = do_lookup_for_langcode(full_langcode) if mapping then return mapping end end return nil end if affix:find("%[%[") then return nil end -- Double parens because makeEntryName() returns multiple values. Yuck. return do_lookup(affix) or do_lookup((lang:makeEntryName(affix))) or nil end --[==[ 주어진 틀 용어(`term`)에 대해 접사 유형, 링크용어, 표시용어, 조회용어를 반환하는 핵심 분석 함수. ]==] local function parse_term_for_affixes(term, lang, sc, affix_type, do_affix_mapping, return_lookup_affix, affix_id) if not term then return "non-affix", nil, nil, nil end if term == "^" then -- Indicates a null term to emulate the behavior of {{suffix|foo||bar}}. term = "" return "non-affix", term, term, term end if term:find("^%^") then -- HACK! ^ at the beginning of Korean languages has a special meaning, triggering capitalization of the -- transliteration. Don't interpret it as "force non-affix" for those languages. local langcode = lang:getCode() if langcode ~= "ko" and langcode ~= "okm" and langcode ~= "jje" then -- Formerly we allowed ^ to force non-affix type; this is now handled using an inline modifier -- <naf>, <root>, etc. Throw an error for the moment when the old way is encountered. error("^ 기호를 사용하여 비접사 상태를 강제하는 것은 더 이상 지원되지 않습니다. 요소 뒤에 <naf> 또는 <root>와 같은 인라인 수정자를 사용하세요.") end end -- Remove an asterisk if the morpheme is reconstructed and add it back at the end. local reconstructed = "" if term:find("^%*") then reconstructed = "*" term = term:gsub("^%*", "") end local scode, thyph, dhyph, lhyph = detect_script_and_hyphens(term, lang, sc) thyph = "([" .. thyph .. "])" if not affix_type then if rfind(term, thyph .. " " .. thyph) then affix_type = "circumfix" else local has_beginning_hyphen = rfind(term, "^" .. thyph) local has_ending_hyphen = rfind(term, thyph .. "$") if has_beginning_hyphen and has_ending_hyphen then affix_type = "interfix" elseif has_ending_hyphen then affix_type = "prefix" elseif has_beginning_hyphen then affix_type = "suffix" else affix_type = "non-affix" end end end local link_term, display_term, lookup_term if affix_type == "non-affix" then link_term = term display_term = term lookup_term = term else display_term = reconstruct_term_per_hyphens(term, affix_type, scode, thyph, dhyph) if do_affix_mapping then link_term = lookup_affix_mapping(term, affix_type, lang, scode, thyph, lhyph, affix_id) -- The return value of lookup_affix_mapping() may be an affix mapping with lookup hyphens if a mapping -- was found, otherwise nil if a mapping was not found. We need to convert to display hyphens in -- either case, but in the latter case we can reuse the display term, which has already been converted. if link_term then link_term = reconstruct_term_per_hyphens(link_term, affix_type, scode, thyph, dhyph) else link_term = display_term end else link_term = display_term end if return_lookup_affix then lookup_term = reconstruct_term_per_hyphens(term, affix_type, scode, thyph, lhyph) else lookup_term = display_term end end link_term = reconstructed .. link_term display_term = reconstructed .. display_term lookup_term = reconstructed .. lookup_term return affix_type, link_term, display_term, lookup_term end --[==[ Add a hyphen to a term in the appropriate place, based on the specified affix type, stripping off any existing hyphens in that place. For example, if `affix_type` == {"prefix"}, we'll add a hyphen onto the end if it's not already there (or is of the wrong type). Three values are returned: the link term, display term and lookup term. This function is a thin wrapper around `parse_term_for_affixes`; see the comments above that function for more information. Note that this function is exposed externally because it is called by [[Module:category tree/affixes and compounds]]; see the comment in `parse_term_for_affixes` for more information. ]==] function export.make_affix(term, lang, sc, affix_type, do_affix_mapping, return_lookup_affix, affix_id) if not (affix_type == "prefix" or affix_type == "suffix" or affix_type == "circumfix" or affix_type == "infix" or affix_type == "interfix" or affix_type == "non-affix") then error("내부 오류: 유효하지 않은 접사 유형 " .. (affix_type or "(없음)")) end local _, link_term, display_term, lookup_term = parse_term_for_affixes(term, lang, sc, affix_type, do_affix_mapping, return_lookup_affix, affix_id) return link_term, display_term, lookup_term end ----------------------------------------------------------------------------------------- -- 메인 진입점 -- ----------------------------------------------------------------------------------------- --[==[ ==[{{affix}} 및 {{surface analysis}} 구현. `data` 테이블은 표시에 필요한 모든 정보를 담고 있음. * `.lang` (필수): 전체 언어 객체. * `.parts` (필수): 표시할 접사 부분들의 목록. * `.pos`: 전체 품사 (기본값: "낱말"). 분류에 사용됨. 경고: 이 함수는 `data`와 `.parts` 안의 개별 구조를 직접 수정함. ]==] function export.show_affix(data) data.pos = data.pos or default_pos local text_sections, categories, borrowing_type = process_etymology_type(data.type, data.surface_analysis or data.nocap, data.notext, #data.parts > 0) data.borrowing_type = borrowing_type -- Process each part local parts_formatted = {} local whole_words = 0 local is_affix_or_compound = false -- 모든 부분을 먼저 표준화하고 링크를 생성 for i, part in ipairs_with_gaps(data.parts) do part = part or {} data.parts[i] = part canonicalize_part(part, data.lang, data.sc) -- Determine affix type and get link and display terms (see text at top of file). Store them in the part -- (in fields that won't clash with fields used by full_link() in [[Module:links]] or link_term()), so they -- can be used in the loop below when categorizing. part.affix_type, part.affix_link_term, part.affix_display_term = parse_term_for_affixes(part.term, part.lang, part.sc, part.type, not part.alt, nil, part.id) -- If link_term is an empty string, either a bare ^ was specified or an empty term was used along with inline -- modifiers. The intention in either case is not to link the term. part.term = ine(part.affix_link_term) -- If part.alt would be the same as part.term, make it nil, so that it isn't erroneously tracked as being -- redundant alt text. part.alt = part.alt or (part.affix_display_term ~= part.affix_link_term and part.affix_display_term) or nil -- Make a link for the part. table.insert(parts_formatted, export.link_term(part, data)) end -- 그 다음 분류 작업을 수행 for i, part in ipairs_with_gaps(data.parts) do local affix_type = part.affix_type if affix_type ~= "non-affix" then is_affix_or_compound = true -- Make a sort key. For the first part, use the second part as the sort key; the intention is that if the -- term has a prefix, sorting by the prefix won't be very useful so we sort by what follows, which is -- presumably the root. local part_sort_base = nil local part_sort = part.sort or data.sort_key if i == 1 and data.parts[2] and data.parts[2].term then local part2 = data.parts[2] -- If the second-part link term is empty, the user requested an unlinked term; avoid a wikitext error -- by using the alt value if available. part_sort_base = ine(part2.affix_link_term) or ine(part2.alt) if part_sort_base then part_sort_base = make_entry_name_no_links(part2.lang, part_sort_base) end end if part.pos and rfind(part.pos, "patronym") then table.insert(categories, {cat = "인명", sort_key = part_sort, sort_base = part_sort_base}) end if data.pos ~= "낱말" and part.pos and rfind(part.pos, "diminutive") then table.insert(categories, {cat = "지소 " .. data.pos, sort_key = part_sort, sort_base = part_sort_base}) end -- Don't add a '*fixed with' category if the link term is empty or is in a different language. if ine(part.affix_link_term) and not part.part_lang then local affix_type_ko if affix_type == "prefix" then affix_type_ko = "접두사" elseif affix_type == "suffix" then affix_type_ko = "접미사" elseif affix_type == "infix" then affix_type_ko = "접요사" elseif affix_type == "circumfix" then affix_type_ko = "양접사" elseif affix_type == "interfix" then affix_type_ko = "연결사" end if affix_type_ko then local affix_name = make_entry_name_no_links(part.lang, part.affix_link_term) .. (part.id and " (" .. part.id .. ")" or "") table.insert(categories, {cat = affix_type_ko .. " " .. m_ko_utils.allomorphy(affix_name, "sbj") .. " 붙은 " .. data.pos, sort_key = part_sort, sort_base = part_sort_base}) end end else whole_words = whole_words + 1 if whole_words == 2 then is_affix_or_compound = true if data.pos == default_pos then table.insert(categories, "복합어") else table.insert(categories, "복합 " .. data.pos) end end end end -- Make sure there was either an affix or a compound (two or more non-affix terms). if not is_affix_or_compound then error("매개변수에 접사가 포함되지 않았거나, 복합어가 아닙니다. 적어도 하나의 접사를 제공해주세요.") end if data.surface_analysis then local text = glossary_link("형태론적 분석", "형태론적") .. "으로는" if not data.nocap then text = ucfirst(text) end table.insert(text_sections, 1, text) end table.insert(text_sections, export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories }) return table.concat(text_sections) end function export.show_surface_analysis(data) data.surface_analysis = true return export.show_affix(data) end --[==[ {{compound}} 구현. 경고: 이 함수는 `data`와 `.parts` 안의 개별 구조를 직접 수정함. ]==] function export.show_compound(data) data.pos = data.pos or default_pos local text_sections, categories, borrowing_type = process_etymology_type(data.type, data.nocap, data.notext, #data.parts > 0) data.borrowing_type = borrowing_type local parts_formatted = {} if data.pos == default_pos then table.insert(categories, "복합어") else table.insert(categories, "복합 " .. data.pos) end -- Make links out of all the parts local whole_words = 0 for i, part in ipairs(data.parts) do canonicalize_part(part, data.lang, data.sc) local affix_type, link_term, display_term = parse_term_for_affixes(part.term, part.lang, part.sc, part.type, not part.alt, nil, part.id) if affix_type == "interfix" or (part.type and part.type ~= "non-affix") then if link_term and link_term ~= "" and not part.part_lang then table.insert(categories, {cat = data.pos .. " " .. affix_type .. "ed with " .. make_entry_name_no_links(part.lang, link_term), sort_key = part.sort or data.sort_key}) end part.term = link_term ~= "" and link_term or nil part.alt = part.alt or (display_term ~= link_term and display_term) or nil else if affix_type ~= "non-affix" then local langcode = data.lang:getCode() track { affix_type, affix_type .. "/lang/" .. langcode } local full_langcode = data.lang:getFullCode() if langcode ~= full_langcode then track(affix_type .. "/lang/" .. full_langcode) end else whole_words = whole_words + 1 end end table.insert(parts_formatted, export.link_term(part, data)) end if whole_words == 1 then track("one whole word") elseif whole_words == 0 then track("looks like confix") end table.insert(text_sections, export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories }) return table.concat(text_sections) end --[==[ {{blend}}, {{univerbation}} 등 구현. ]==] function export.show_compound_like(data) local parts_formatted = {} local categories = {} if data.cat then table.insert(categories, data.cat) end -- Make links out of all the parts for i, part in ipairs(data.parts) do canonicalize_part(part, data.lang, data.sc) table.insert(parts_formatted, export.link_term(part, data)) end local text_sections = {} table.insert(text_sections, export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories }) if #data.parts > 0 and data.oftext then table.insert(text_sections, data.oftext) end if data.text then table.insert(text_sections, " ") table.insert(text_sections, data.text) end return table.concat(text_sections) end --[==[ 주어진 부분을 특정 유형의 접사로 만들고, 관련 매핑을 적용. 구식 틀들({{prefix}}, {{suffix}} 등)에서 사용됨. 경고: 이 함수는 `part`를 직접 수정함. ]==] local function make_part_into_affix(part, lang, sc, affix_type) canonicalize_part(part, lang, sc) local link_term, display_term = export.make_affix(part.term, part.lang, part.sc, affix_type, not part.alt, nil, part.id) part.term = link_term -- When we don't specify `do_affix_mapping` to make_affix(), link and display terms (first and second retvals of -- make_affix()) are the same. -- If part.alt would be the same as part.term, make it nil, so that it isn't erroneously tracked as being -- redundant alt text. part.alt = part.alt and export.make_affix(part.alt, part.lang, part.sc, affix_type) or (display_term ~= link_term and display_term) or nil local Latn = require(scripts_module).getByCode("Latn") part.tr = export.make_affix(part.tr, part.lang, Latn, affix_type) part.ts = export.make_affix(part.ts, part.lang, Latn, affix_type) end -- 잘못된 접사 유형 사용을 추적하는 도우미 함수 local function track_wrong_affix_type(template, part, expected_affix_type) if part and not part.type then local affix_type = parse_term_for_affixes(part.term, part.lang, part.sc) if affix_type ~= expected_affix_type then local part_name = expected_affix_type or "base" local langcode = part.lang:getCode() local full_langcode = part.lang:getFullCode() require("Module:debug/track") { template, template .. "/" .. part_name, template .. "/" .. part_name .. "/" .. (affix_type or "none"), template .. "/" .. part_name .. "/" .. (affix_type or "none") .. "/lang/" .. langcode } -- If `part.lang` is an etymology-only language, track both using its code and its full parent's code. if full_langcode ~= langcode then require("Module:debug/track")( template .. "/" .. part_name .. "/" .. (affix_type or "none") .. "/lang/" .. full_langcode ) end end end end -- 접사 분류를 추가하는 도우미 함수 local function insert_affix_category(categories, pos, affix_type, part, sort_key, sort_base) if part.term and not part.part_lang then local affix_name = make_entry_name_no_links(part.lang, part.term) .. (part.id and " (" .. part.id .. ")" or "") local affix_type_ko if affix_type == "prefix" then affix_type_ko = "접두사" elseif affix_type == "suffix" then affix_type_ko = "접미사" elseif affix_type == "infix" then affix_type_ko = "접요사" elseif affix_type == "circumfix" then affix_type_ko = "양접사" elseif affix_type == "interfix" then affix_type_ko = "연결사" end if affix_type_ko then local cat = affix_type_ko .. " " .. m_ko_utils.allomorphy(affix_name, "sbj") .. " 붙은 " .. pos if sort_key or sort_base then table.insert(categories, {cat = cat, sort_key = sort_key, sort_base = sort_base}) else table.insert(categories, cat) end end end end --[==[ {{circumfix}} 구현. 경고: 이 함수는 `data`, `.prefix`, `.base`, `.suffix`를 직접 수정함. ]==] function export.show_circumfix(data) data.pos = data.pos or default_pos canonicalize_part(data.base, data.lang, data.sc) -- Hyphenate the affixes and apply any affix mappings. make_part_into_affix(data.prefix, data.lang, data.sc, "prefix") make_part_into_affix(data.suffix, data.lang, data.sc, "suffix") track_wrong_affix_type("circumfix", data.prefix, "prefix") track_wrong_affix_type("circumfix", data.base, nil) track_wrong_affix_type("circumfix", data.suffix, "suffix") -- Create circumfix term. local circumfix = nil if data.prefix.term and data.suffix.term then circumfix = data.prefix.term .. " " .. data.suffix.term data.prefix.alt = data.prefix.alt or data.prefix.term data.suffix.alt = data.suffix.alt or data.suffix.term data.prefix.term = circumfix data.suffix.term = circumfix end -- Make links out of all the parts. local parts_formatted = {} local categories = {} local sort_base if data.base.term then sort_base = make_entry_name_no_links(data.base.lang, data.base.term) end table.insert(parts_formatted, export.link_term(data.prefix, data)) table.insert(parts_formatted, export.link_term(data.base, data)) table.insert(parts_formatted, export.link_term(data.suffix, data)) -- Insert the categories, but don't add a '*fixed with' category if the link term is in a different language. if not data.prefix.part_lang then local affix_name = make_entry_name_no_links(data.prefix.lang, circumfix) table.insert(categories, {cat=affix_name .. " 양접사가 붙은 " .. data.pos, sort_key=data.sort_key, sort_base=sort_base}) end return export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories } end --[==[ {{confix}} 구현. ]==] function export.show_confix(data) data.pos = data.pos or default_pos canonicalize_part(data.base, data.lang, data.sc) -- Hyphenate the affixes and apply any affix mappings. make_part_into_affix(data.prefix, data.lang, data.sc, "prefix") make_part_into_affix(data.suffix, data.lang, data.sc, "suffix") track_wrong_affix_type("confix", data.prefix, "prefix") track_wrong_affix_type("confix", data.base, nil) track_wrong_affix_type("confix", data.suffix, "suffix") -- Make links out of all the parts. local parts_formatted = {} local prefix_sort_base if data.base and data.base.term then prefix_sort_base = make_entry_name_no_links(data.base.lang, data.base.term) elseif data.suffix.term then prefix_sort_base = make_entry_name_no_links(data.suffix.lang, data.suffix.term) end -- Insert the categories and parts. local categories = {} table.insert(parts_formatted, export.link_term(data.prefix, data)) insert_affix_category(categories, data.pos, "prefix", data.prefix, data.sort_key, prefix_sort_base) if data.base then table.insert(parts_formatted, export.link_term(data.base, data)) end table.insert(parts_formatted, export.link_term(data.suffix, data)) -- FIXME, should we be specifying a sort base here? insert_affix_category(categories, data.pos, "suffix", data.suffix) return export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories } end --[==[ {{infix}} 구현. ]==] function export.show_infix(data) data.pos = data.pos or default_pos canonicalize_part(data.base, data.lang, data.sc) -- Hyphenate the affixes and apply any affix mappings. make_part_into_affix(data.infix, data.lang, data.sc, "infix") track_wrong_affix_type("infix", data.base, nil) track_wrong_affix_type("infix", data.infix, "infix") -- Make links out of all the parts. local parts_formatted = {} local categories = {} table.insert(parts_formatted, export.link_term(data.base, data)) table.insert(parts_formatted, export.link_term(data.infix, data)) -- Insert the categories. -- FIXME, should we be specifying a sort base here? insert_affix_category(categories, data.pos, "infix", data.infix) return export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories } end --[==[ {{prefix}} 구현. '''WARNING''': This destructively modifies both `data` and the structures within `.prefixes`, as well as `.base`. ]==] function export.show_prefix(data) data.pos = data.pos or default_pos canonicalize_part(data.base, data.lang, data.sc) -- Hyphenate the affixes and apply any affix mappings. for i, prefix in ipairs(data.prefixes) do make_part_into_affix(prefix, data.lang, data.sc, "prefix") end for i, prefix in ipairs(data.prefixes) do track_wrong_affix_type("prefix", prefix, "prefix") end track_wrong_affix_type("prefix", data.base, nil) -- Make links out of all the parts. local parts_formatted = {} local first_sort_base = nil local categories = {} if data.prefixes[2] then first_sort_base = ine(data.prefixes[2].term) or ine(data.prefixes[2].alt) if first_sort_base then first_sort_base = make_entry_name_no_links(data.prefixes[2].lang, first_sort_base) end elseif data.base then first_sort_base = ine(data.base.term) or ine(data.base.alt) if first_sort_base then first_sort_base = make_entry_name_no_links(data.base.lang, first_sort_base) end end for i, prefix in ipairs(data.prefixes) do table.insert(parts_formatted, export.link_term(prefix, data)) insert_affix_category(categories, data.pos, "prefix", prefix, data.sort_key, i == 1 and first_sort_base or nil) end if data.base then table.insert(parts_formatted, export.link_term(data.base, data)) else table.insert(parts_formatted, "") end return export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories } end --[==[ {{suffix}} 구현. '''WARNING''': This destructively modifies both `data` and the structures within `.suffixes`, as well as `.base`. ]==] function export.show_suffix(data) local categories = {} data.pos = data.pos or default_pos canonicalize_part(data.base, data.lang, data.sc) -- Hyphenate the affixes and apply any affix mappings. for i, suffix in ipairs(data.suffixes) do make_part_into_affix(suffix, data.lang, data.sc, "suffix") end track_wrong_affix_type("suffix", data.base, nil) for i, suffix in ipairs(data.suffixes) do track_wrong_affix_type("suffix", suffix, "suffix") end -- Make links out of all the parts. local parts_formatted = {} if data.base then table.insert(parts_formatted, export.link_term(data.base, data)) else table.insert(parts_formatted, "") end for i, suffix in ipairs(data.suffixes) do table.insert(parts_formatted, export.link_term(suffix, data)) end -- Insert the categories. for i, suffix in ipairs(data.suffixes) do -- FIXME, should we be specifying a sort base here? insert_affix_category(categories, data.pos, "suffix", suffix) if suffix.pos and rfind(suffix.pos, "patronym") then table.insert(categories, "인명") end end return export.join_formatted_parts { data = data, parts_formatted = parts_formatted, categories = categories } end return export 4vy6qnjj9lujjmspicgpqd44p45kyye ປຶ້ມ 0 496092 4483143 4483079 2026-05-01T04:49:10Z Apisite 21408 /* 라오어 */ + 파생어 4483143 wikitext text/x-wiki {{참고|ປຸ່ມ}} == 라오어 == === 발음 === {{IPA|pɯm˥˨|비엔티안}} {{IPA|pɯm˧˦|루앙프라방}} === 명사 === {{head|lo|명사}} # [[책]] (冊) ==== 파생어 ==== * {{l|lo|ປຶ້ມຂຽນ}} oxafy6vu45tu7ylpl64qkb99xkhk15o 0 496102 4483125 2026-04-30T13:49:33Z Aspere 10210 새 문서: {{character info}} ==범언어== # 어느 한자의 이체자임을 표시하는 기호 #: [[真]] = 〾[[眞]] [[분류:초안]] 4483125 wikitext text/x-wiki {{character info}} ==범언어== # 어느 한자의 이체자임을 표시하는 기호 #: [[真]] = 〾[[眞]] [[분류:초안]] d3s3e1pkk7xyx3wm4zzztfxmglqt8a4 4483126 4483125 2026-04-30T13:49:50Z Aspere 10210 /* 범언어 */ 4483126 wikitext text/x-wiki {{character info}} ==범언어== # 어느 한자의 이체자임을 표시하는 기호. #: [[真]] = 〾[[眞]] [[분류:초안]] qktamw55fas1fco4bckwboelgejvb1l 4483127 4483126 2026-04-30T13:52:15Z Aspere 10210 /* 범언어 */ 4483127 wikitext text/x-wiki {{character info}} ==범언어== # 어느 한자의 이체자임을 표시하는 기호. #: [[真]] = 〾[[眞]] #: [[学]] = 〾[[學]] [[분류:초안]] 4wix2nsxtkpmhnwomrmmqs59z1qnn3z tangyuan 0 496103 4483128 2026-04-30T23:38:58Z Apisite 21408 새 문서: == 영어 == {{wikipedia|lang=en}} === 명사 === {{en-noun|~|*}} # [[탕위안]] :* 4483128 wikitext text/x-wiki == 영어 == {{wikipedia|lang=en}} === 명사 === {{en-noun|~|*}} # [[탕위안]] :* 02v2aznhilu3vhe8upepk2s86dm6a95 4483129 4483128 2026-04-30T23:39:13Z Apisite 21408 /* 영어 */ 4483129 wikitext text/x-wiki == 영어 == {{wikipedia|lang=en}} === 명사 === {{en-noun|~|pl=tangyuan}} # [[탕위안]] :* 4dmjzoz1jz35dcxuhebipakhx4iq1hh 4483130 4483129 2026-04-30T23:39:26Z Apisite 21408 /* 영어 */ 4483130 wikitext text/x-wiki == 영어 == {{wikipedia|lang=en}} === 명사 === {{en-noun|~|tangyuan}} # [[탕위안]] :* l6mvi902iajya7b8escye3vjwurk0ff 4483154 4483130 2026-05-01T10:25:31Z Jeebeen 13056 4483154 wikitext text/x-wiki == 영어 == {{wikipedia|lang=en}} === 명사 === {{en-noun|~|tangyuan}} # [[탕위안]] {{C|en|음식|요리}} o0fybj7orl8jaqo2jl64ylhww8wptqy крик 0 496104 4483132 2026-05-01T04:08:55Z Jeebeen 13056 새 문서: == 러시아어 == === 명사 === {{ru-noun+}} # [[외침]] # [[부름]] ==== 파생어 ==== {{col|ru|крик у́н|pos1=명사|t1=[[고함치다|고함치는]] 사람|крича́ть|pos2=동사|t2=[[부르다]]|перекли́чка|pos3=명사|t3=[[점호]]|кли́чка|pos4=명사|t4=[[별명]], {{l|ko|이명(耳鳴)}}восклица́ние|pos5=명사|t5=[[부르짖음]], [[절규]], [[감탄]]|кли́кнуть|pos6=동사|t6=[[불러들이다]]|кли́кать... 4483132 wikitext text/x-wiki == 러시아어 == === 명사 === {{ru-noun+}} # [[외침]] # [[부름]] ==== 파생어 ==== {{col|ru|крик у́н|pos1=명사|t1=[[고함치다|고함치는]] 사람|крича́ть|pos2=동사|t2=[[부르다]]|перекли́чка|pos3=명사|t3=[[점호]]|кли́чка|pos4=명사|t4=[[별명]], {{l|ko|이명(耳鳴)}}восклица́ние|pos5=명사|t5=[[부르짖음]], [[절규]], [[감탄]]|кли́кнуть|pos6=동사|t6=[[불러들이다]]|кли́кать|pos7=동사|t7=[[큰소리]]로 [[부르다]]|клич|pos8=명사|t8=[[외침]], [[호소]], 부르는 소리}} 8uyamt9lgd3o0ttb3jghi3ss4gy4i8e ນ້ຳພຸ 0 496105 4483137 2026-05-01T04:45:31Z Apisite 21408 새 문서: == 라오어 == === 어원 === {{com|lo|ນ້ຳ|ພຸ}} === 발음 === {{IPA|nam˥˨.pʰuʔ˧|비엔티안}} {{IPA|nam˧˦.pʰuʔ˧˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[분수]] (噴水), [[샘]] 4483137 wikitext text/x-wiki == 라오어 == === 어원 === {{com|lo|ນ້ຳ|ພຸ}} === 발음 === {{IPA|nam˥˨.pʰuʔ˧|비엔티안}} {{IPA|nam˧˦.pʰuʔ˧˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[분수]] (噴水), [[샘]] 6jmyg59121bu316idzozaypzdu13mph မြေပဲ 0 496106 4483145 2026-05-01T04:54:24Z Apisite 21408 새 문서: {{참고|မြေပုံ}} == 버마어 == === 어원 === {{com|my|မြေ|ပဲ}} === 발음 === {{IPA|mjèbɛ́}} === 명사 === {{head|my|명사}} # [[땅콩]] 4483145 wikitext text/x-wiki {{참고|မြေပုံ}} == 버마어 == === 어원 === {{com|my|မြေ|ပဲ}} === 발음 === {{IPA|mjèbɛ́}} === 명사 === {{head|my|명사}} # [[땅콩]] p9co5r4z1a11h713slorbenukbm6kkr raagid 0 496107 4483148 2026-05-01T05:04:37Z Apisite 21408 새 문서: == 볼라퓌크 == {{발음 듣기|}} {{IPA|}} === 명사 === {{head|vo|명사}} # [[땅콩]] ====변화==== {{볼라퓌크 명사 변화-a|raagid}} 4483148 wikitext text/x-wiki == 볼라퓌크 == {{발음 듣기|}} {{IPA|}} === 명사 === {{head|vo|명사}} # [[땅콩]] ====변화==== {{볼라퓌크 명사 변화-a|raagid}} fnbvzcosh752so4l7jfcyrzctsjmeyo ໝາກແຕງ 0 496108 4483149 2026-05-01T09:37:52Z Apisite 21408 새 문서: == 라오어 == === 발음 === {{IPA|maːk̚˧˩.tɛːŋ˩(˧)|비엔티안}} {{IPA|maːk̚˥˥˨.tɛːŋ˩˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[오이]] 4483149 wikitext text/x-wiki == 라오어 == === 발음 === {{IPA|maːk̚˧˩.tɛːŋ˩(˧)|비엔티안}} {{IPA|maːk̚˥˥˨.tɛːŋ˩˨|루앙프라방}} === 명사 === {{head|lo|명사}} # [[오이]] b0oxhd2ufuf1o4m7gw9edz1bak2tbkl သခွား 0 496109 4483150 2026-05-01T09:46:29Z Apisite 21408 새 문서: == 버마어 == === 발음 === {{IPA|θəkʰwá}} === 명사 === {{head|my|명사}} # [[오이]] 4483150 wikitext text/x-wiki == 버마어 == === 발음 === {{IPA|θəkʰwá}} === 명사 === {{head|my|명사}} # [[오이]] 95yizl36ru0bd0zbaxo22cdp5ep8w4n küg 0 496110 4483153 2026-05-01T10:00:06Z Apisite 21408 새 문서: == 볼라퓌크 == {{발음 듣기|}} {{IPA|}} === 명사 === {{head|vo|명사}} # [[오이]] ====변화==== {{볼라퓌크 명사 변화-a|küg}} 4483153 wikitext text/x-wiki == 볼라퓌크 == {{발음 듣기|}} {{IPA|}} === 명사 === {{head|vo|명사}} # [[오이]] ====변화==== {{볼라퓌크 명사 변화-a|küg}} 1sghmb7phs8ur6pamm8tlgtd8udj71u 틀:surf 10 496111 4483155 2026-05-01T10:31:52Z Jeebeen 13056 새 문서: {{#invoke:affix/templates|surface_analysis}}<!-- --><noinclude>{{documentation}}</noinclude> 4483155 wikitext text/x-wiki {{#invoke:affix/templates|surface_analysis}}<!-- --><noinclude>{{documentation}}</noinclude> 53rwp08uq7ikzgom60hunrx0awnlesy исключительный 0 496112 4483157 2026-05-01T10:38:23Z Jeebeen 13056 새 문서: == 러시아어 == === 어원 === * {{calq|ru|fr|exclusif}}, 나아가 {{calq|ru|la|exclūsīvus}}. {{surf|ru|ис-|ключи́ть|-тельный}}. {{doublet|ru|эксклюзи́вный}} === 형용사 === {{ru-adj}} # [[예외적|예외적인]] 4483157 wikitext text/x-wiki == 러시아어 == === 어원 === * {{calq|ru|fr|exclusif}}, 나아가 {{calq|ru|la|exclūsīvus}}. {{surf|ru|ис-|ключи́ть|-тельный}}. {{doublet|ru|эксклюзи́вный}} === 형용사 === {{ru-adj}} # [[예외적|예외적인]] qiu3f4z3gd6px6xs8z8zv451b3k6mwt