1<!doctype html><html lang="ko-KR" ><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta name="theme-color" media="(prefers-color-scheme: light)" content="#f7f7f7"><meta name="theme-color" media="(prefers-color-scheme: dark)" content="#1b1b1e"><meta name="mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"><meta name="viewport" content="width=device-width, user-scalable=no initial-scale=1, shrink-to-fit=no, viewport-fit=cover" ><meta name="generator" content="Jekyll v4.4.1" /><meta property="og:title" content="ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´" /><meta property="og:locale" content="ko_KR" /><meta name="description" content="ë´í, ì´ì ë´í, ë²ììí, ìíì¸í´ì ëì ì½í¼ì¤ ì¡°í ë° ê²ì" /><meta property="og:description" content="ë´í, ì´ì ë´í, ë²ììí, ìíì¸í´ì ëì ì½í¼ì¤ ì¡°í ë° ê²ì" /><link rel="canonical" href="https://go00ood.github.io/posts/parallel-corpus/" /><meta property="og:url" content="https://go00ood.github.io/posts/parallel-corpus/" /><meta property="og:site_name" content="go00ood" /><meta property="og:type" content="article" /><meta property="article:published_time" content="2026-07-23T00:00:00+09:00" /><meta name="twitter:card" content="summary" /><meta property="twitter:title" content="ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´" />
1<script type="application/ld+json"> {"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2026-07-23T21:14:49+09:00","datePublished":"2026-07-23T00:00:00+09:00","description":"ë´í, ì´ì ë´í, ë²ììí, ìíì¸í´ì ëì ì½í¼ì¤ ì¡°í ë° ê²ì","headline":"ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´","mainEntityOfPage":{"@type":"WebPage","@id":"https://go00ood.github.io/posts/parallel-corpus/"},"url":"https://go00ood.github.io/posts/parallel-corpus/"}</script>
1<title>ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´ | go00ood</title><link rel="apple-touch-icon" sizes="180x180" href="/assets/img/favicons/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/img/favicons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/img/favicons/favicon-16x16.png"><link rel="manifest" href="/assets/img/favicons/site.webmanifest"><link rel="shortcut icon" href="/assets/img/favicons/favicon.ico"><meta name="apple-mobile-web-app-title" content="go00ood"><meta name="application-name" content="go00ood"><meta name="msapplication-TileColor" content="#da532c"><meta name="msapplication-config" content="/assets/img/favicons/browserconfig.xml"><meta name="theme-color" content="#ffffff"><link rel="preconnect" href="https://fonts.googleapis.com" ><link rel="dns-prefetch" href="https://fonts.googleapis.com" ><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link rel="dns-prefetch" href="https://fonts.gstatic.com" ><link rel="preconnect" href="https://cdn.jsdelivr.net" ><link rel="dns-prefetch" href="https://cdn.jsdelivr.net" ><link rel="stylesheet" href="/assets/css/jekyll-theme-chirpy.css"><link rel="stylesheet" href="https://hangeul.pstatic.net/hangeul_static/css/NanumBarunGothicYetHangul.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/css/all.min.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/tocbot.min.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/loading-attribute-polyfill.min.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/glightbox.min.css">
1<script src="/assets/js/dist/theme.min.js"></script>
1
1<script defer src="https://cdn.jsdelivr.net/combine/npm/[email protected]/dest/simple-jekyll-search.min.js,npm/[email protected]/dist/loading-attribute-polyfill.umd.min.js,npm/[email protected]/dist/js/glightbox.min.js,npm/[email protected]/dist/clipboard.min.js,npm/[email protected]/dayjs.min.js,npm/[email protected]/locale/ko.js,npm/[email protected]/plugin/relativeTime.js,npm/[email protected]/plugin/localizedFormat.js"></script>
1
1<script defer src="/assets/js/dist/post.min.js"></script>
1
1<script defer src="/app.min.js?baseurl=®ister=true" ></script>
vendor: 64 bytes, line 1
1 <script defer src="https://www.googletagmanager.com/gtag/js?id=
1G-W0QY767ZSL
vendor: 12 bytes, line 1
1"></script>
1<script> document.addEventListener('DOMContentLoaded', () => {
vendor: 130 bytes, line 1
1window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', '
1G-W0QY767ZSL
vendor: 4 bytes, line 1
1');
1}); </script>
1<body><aside aria-label="Sidebar" id="sidebar" class="d-flex flex-column align-items-end"><header class="profile-wrapper"> <a href="/" id="avatar" class="rounded-circle"><img src="/assets/img/main/profile.jpg" width="112" height="112" alt="avatar" onerror="this.style.display='none'"></a> <a class="site-title d-block" href="/">go00ood</a><p class="site-subtitle fst-italic mb-0">ë§ì¶¤ë² íê´´ë¡ ì</p></header><nav class="flex-column flex-grow-1 w-100 ps-0"><ul class="nav"> 2<li class="nav-item"> <a href="/" class="nav-link"> <i class="fa-fw fas fa-home"></i> <span>í</span> </a> 3</li> 4<li class="nav-item"> <a href="/categories/" class="nav-link"> <i class="fa-fw fas fa-stream"></i> <span>ì¹´í ê³ ë¦¬</span> </a> 5</li> 6<li class="nav-item"> <a href="/tags/" class="nav-link"> <i class="fa-fw fas fa-tags"></i> <span>íê·¸</span> </a> 7</li> 8<li class="nav-item"> <a href="/archives/" class="nav-link"> <i class="fa-fw fas fa-archive"></i> <span>ìì¹´ì´ë¸</span> </a> 9</li> 10<li class="nav-item"> <a href="/about/" class="nav-link"> <i class="fa-fw fas fa-info-circle"></i> <span>ì ë³´</span> </a> 11</li> 12</ul></nav><div class="sidebar-bottom d-flex flex-wrap align-items-center w-100"> <button type="button" class="btn btn-link nav-link" aria-label="Switch Mode" id="mode-toggle"> <i class="fas fa-adjust"></i> </button> <span class="icon-border"></span> <a href="https://github.com/go00ood" aria-label="github" target="_blank" rel="noopener noreferrer noopener noreferrer"> <i class="fab fa-github"></i> </a> <a href="javascript:location.href%20=%20'mailto:'%20+%20['go00od','naver.com'].join('@')" aria-label="email"> <i class="fas fa-envelope"></i> </a> <a href="/feed.xml" aria-label="rss"> <i class="fas fa-rss"></i> </a> 13</div></aside><div id="main-wrapper" class="d-flex justify-content-center"> 14<div class="container d-flex flex-column px-xxl-5"> 15<header id="topbar-wrapper" aria-label="Top Bar"><div id="topbar" class="d-flex align-items-center justify-content-between px-lg-3 h-100"> 16<nav id="breadcrumb" aria-label="Breadcrumb"> <span> <a href="/">í</a> </span> <span>ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´</span></nav><button type="button" id="sidebar-trigger" class="btn btn-link"> <i class="fas fa-bars fa-fw"></i> </button><div id="topbar-title"> í¬ì¤í¸</div> 17<button type="button" id="search-trigger" class="btn btn-link"> <i class="fas fa-search fa-fw"></i> </button> <search id="search" class="align-items-center ms-3 ms-lg-0"> <i class="fas fa-search fa-fw"></i> <input class="form-control" id="search-input" type="search" aria-label="search" autocomplete="off" placeholder="ê²ì..."> </search> <button type="button" class="btn btn-link text-decoration-none" id="search-cancel">ì·¨ì</button> 18</div></header><div class="row flex-grow-1"> 19<main aria-label="Main Content" class="col-12 col-lg-11 col-xl-9 px-md-4"><article class="px-1" data-toc="false"><header><h1 data-toc-skip>ë´í·ì´ì ë´í·ë²ììí·ìíì¸í´ ë³ë ¬ ì½í¼ì¤ ë·°ì´</h1> 20<p class="post-desc fw-light mb-4">ë´í, ì´ì ë´í, ë²ììí, ìíì¸í´ì ëì ì½í¼ì¤ ì¡°í ë° ê²ì</p> 21<div class="post-meta text-muted"> <span> ê²ì <time data-ts="1784732400" data-df="YYYY/MM/DD" data-bs-toggle="tooltip" data-bs-placement="bottom"> 2026/07/23 </time> </span> <span> ì ë°ì´í¸ <time data-ts="1784808889" data-df="YYYY/MM/DD" data-bs-toggle="tooltip" data-bs-placement="bottom"> 2026/07/23 </time> </span><div class="d-flex justify-content-between"> <span> By <em> <a href="https://github.com/go00ood" target="_blank" rel="noopener noreferrer">go00ood</a> </em> </span><div> <span class="readtime" data-bs-toggle="tooltip" data-bs-placement="bottom" title="21 ë¨ì´"> <em>1 ë¶</em>ì½ë ìê°</span> 22</div> 23</div> 24</div></header><div class="content"> 25<div class="search-wrapper"> <input type="text" id="corpus-search-input" placeholder="íì í¤, ì문 ëë ì¸í´ 구ì ê²ì..."> <button class="copy-all-btn" onclick="copyAllFormatted()">ì ì²´ ê²ì ê²°ê³¼ ë³µì¬</button> 26</div> 27<div id="corpus-list"></div> 28<div id="toast" class="toast">í´ë¦½ë³´ëì ë³µì¬ëììµëë¤!</div> 29<style> /* ì ë ¥ì°½ ë° ê²ìë° ì¤íì¼ */ .search-wrapper { display: flex; gap: 10px; max-width: 800px; margin-bottom: 20px; } #corpus-search-input { flex: 1; min-height: 2.8em; padding: 10px 14px; font-size: 1rem; border: 1px solid var(--border-color, #ddd); border-radius: 8px; box-sizing: border-box; font-family: inherit; background-color: var(--card-bg, #fff); color: var(--text-color, #111); transition: background-color 0.3s, color 0.3s, border-color 0.3s; } #corpus-search-input:focus { outline: none; border-color: var(--accent-color, #5a8dee); box-shadow: 0 0 0 2px rgba(90, 141, 238, 0.2); } .copy-all-btn { background-color: #27ae60; color: white; border: none; padding: 0 16px; border-radius: 8px; font-weight: 600; font-size: 0.95rem; cursor: pointer; transition: background-color 0.2s; white-space: nowrap; } .copy-all-btn:hover { background-color: #2196f3; } /* 그룹 ì¹´ë ì¤íì¼ */ .group-card { max-width: 800px; background-color: var(--card-bg, #fff); border: 1px solid var(--border-color, #ddd); border-radius: 10px; padding: 18px 20px; margin-bottom: 20px; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08); transition: background-color 0.3s, border-color 0.3s; } .group-header { display: flex; justify-content: space-between; align-items: center; border-bottom: 2px solid var(--accent-color, #5a8dee); padding-bottom: 10px; margin-bottom: 14px; }
29 .key-hanja { font-size: 1.15rem; font-weight: bold; color: var(--text-color, #111); letter-spacing: 0.5px; } .group-copy-btn { background-color: var(--accent-color, #5a8dee); color: white; border: none; padding: 6px 12px; border-radius: 6px; font-size: 0.85rem; font-weight: 600; cursor: pointer; transition: opacity 0.2s; } .group-copy-btn:hover { opacity: 0.85; } /* ê°ë³ 문í ì¤íì¼ */ .doc-item { margin-bottom: 10px; padding: 10px 12px; background: rgba(0, 0, 0, 0.02); border-left: 4px solid #cbd5e1; border-radius: 0 6px 6px 0; } .doc-item.has-data { border-left-color: var(--accent-color, #5a8dee); } .doc-name { font-weight: 700; color: var(--text-color, #333); font-size: 0.9rem; margin-bottom: 4px; } .doc-content { font-size: 1rem; line-height: 1.6; } .meta { font-size: 0.82rem; color: var(--text-muted, #888); margin-left: 6px; } .chi-text { color: #555; } .kor-text { color: var(--text-color, #111); font-weight: 500; } /* í ì¤í¸ ë©ì¸ì§ */ .toast { position: fixed; bottom: 30px; right: 30px; background: var(--tooltip-bg, #333); color: white; padding: 12px 20px; border-radius: 8px; display: none; font-size: 0.9rem; box-shadow: 0 4px 12px rgba(0,0,0,0.15); z-index: 1000; } /* â
ë¤í¬ëª¨ë ëì */ [data-theme="dark"] .group-card { background-color: #1b1b1b; border-color: #333; box-shadow: 0 2px 6px rgba(0,0,0,0.4); } [data-theme="dark"] .doc-item { background: rgba(255, 255, 255, 0.04); } [data-theme="dark"] .chi-text { color: #aaa; } [data-theme="dark"] .kor-text { color: #eee; } [data-theme="dark"] .doc-name { color: #ddd; }</style>
30<script> let globalCorpusData = []; (async function () { try { const res = await fetch('/assets/data/parallel_corpus.xml'); const xmlString = await res.text(); parseAndRenderXML(xmlString); } catch (err) { console.error('Failed to load XML corpus:', err); } })(); function parseAndRenderXML(xmlString) { const parser = new DOMParser(); const xmlDoc = parser.parseFromString(xmlString, "text/xml"); const groups = xmlDoc.querySelectorAll("align_group"); globalCorpusData = []; groups.forEach((group, index) => { const keyHanja = group.querySelector("key_hanja") ? group.querySelector("key_hanja").textContent : ""; const docs = {}; group.querySelectorAll("document").forEach(doc => { const name = doc.getAttribute("name"); const isNotFound = doc.getAttribute("status") === "not_found"; if (isNotFound) { docs[name] = null; } else { const mainChi = doc.querySelector("sent[type='main'][lang='chi']"); const mainKor = doc.querySelector("sent[type='main'][lang='kor']"); docs[name] = { chi: mainChi ? mainChi.textContent : "", kor: mainKor ? mainKor.textContent : "", vol: mainChi ? (mainChi.getAttribute("vol") || "") : "", page: mainChi ? (mainChi.getAttribute("page") || "") : "" }; } }); globalCorpusData.push({ id: index + 1, keyHanja: keyHanja, docs: docs }); }); renderCorpus(globalCorpusData); } function renderCorpus(dataList) { const listDiv = document.getElementById('corpus-list'); listDiv.innerHTML = ""; if (dataList.length === 0) { listDiv.innerHTML = "<div style='padding: 20px; color: var(--text-muted, #888);'>ê²ì ê²°ê³¼ê° ììµëë¤.</div>"; return; } dataList.forEach(group => { const card = document.createElement('div'); card.className = 'group-card'; let docHtml = ""; const docOrder = ["ë´í", "ì´ì ë´í", "ë²ììí", "ìíì¸í´"]; docOrder.forEach(docName => { const item = group.docs[docName]; if (item) { const volInfo = item.vol ? `ê¶${item.vol}: ` : ""; docHtml += `<div class="doc-item has-data"><div class="doc-name">${docName}</div><div class="doc-content"> <span class="kor-text">${item.kor}</span> <span class="chi-text">(${item.chi})</span> <span class="meta"><${docName} ${volInfo}${item.page}></span></div></div>`; } else { docHtml += `<div class="doc-item"><div class="doc-name">${docName}</div><div class="doc-content" style="color: var(--text-muted, #888); font-size: 0.9rem;">[í´ë¹ 구ì ìì]</div></div>`; } }); card.innerHTML = `<div class="group-header"> <span class="key-hanja">그룹 #${group.id} : ${group.keyHanja}</span> <button class="group-copy-btn" onclick="copySingleGroup(${group.id})">ë³µì¬</button></div>${docHtml} `; listDiv.appendChild(card); }); } function formatGroupText(group) { const docOrder = ["ë´í", "ì´ì ë´í", "ë²ììí", "ìíì¸í´"]; let lines = []; docOrder.forEach(docName => { const item = group.docs[docName]; if (item && (item.kor || item.chi)) { const volText = item.vol ? ` ê¶${item.vol}:` : ""; lines.push(`${docName}: ${item.kor}(${item.chi})<${docName}${volText} ${item.page}>`); } else { lines.push(`${docName}: `); } }); return lines.join("\n\n"); } function copySingleGroup(groupId) { const group = globalCorpusData.find(g => g.id === groupId); if (group) { const textToCopy = formatGroupText(group); copyToClipboard(textToCopy); } } function copyAllFormatted() { const textToCopy = globalCorpusData.map(group => formatGroupText(group)).join("\n\n----------------------------------------\n\n"); copyToClipboard(textToCopy); } function copyToClipboard(text) { navigator.clipboard.writeText(text).then(() => { showToast(); }); } function showToast() { const toast = document.getElementById('toast'); toast.style.display = 'block'; setTimeout(() => { toast.style.display = 'none'; }, 1800); } document.getElementById('corpus-search-input').addEventListener('input', (e) => { const query = e.target.value.trim().toLowerCase(); if (!query) { renderCorpus(globalCorpusData); return; } const filtered = globalCorpusData.filter(group => { if (group.keyHanja.includes(query)) return true; return Object.values(group.docs).some(doc => { if (!doc) return false; return doc.chi.includes(query) || doc.kor.includes(query); }); }); renderCorpus(filtered); }); </script>
30 31</div> 32<div class="post-tail-wrapper text-muted"> 33<div class="post-meta mb-3"> <i class="far fa-folder-open fa-fw me-1"></i> <a href="/categories/%EC%BD%94%ED%8D%BC%EC%8A%A4/">ì½í¼ì¤</a>, <a href="/categories/%EA%B5%AD%EC%96%B4%EC%82%AC/">êµì´ì¬</a> 34</div> 35<div class=" post-tail-bottom d-flex justify-content-between align-items-center mt-5 pb-2 "> 36<div class="license-wrapper"> ì´ ê¸°ì¬ë ì ìê¶ìì <a href="https://creativecommons.org/licenses/by-nc/4.0/" target="_blank" rel="noopener noreferrer"> CC BY-NC 4.0 </a> ë¼ì´ì¼ì¤ë¥¼ ë°ë¦ ëë¤.</div> 37<div class="share-wrapper d-flex align-items-center"> <span class="share-label text-muted">ê³µì í기</span> <span class="share-icons"> <a href="https://twitter.com/intent/tweet?text=%EB%82%B4%ED%9B%88%C2%B7%EC%96%B4%EC%A0%9C%EB%82%B4%ED%9B%88%C2%B7%EB%B2%88%EC%97%AD%EC%86%8C%ED%95%99%C2%B7%EC%86%8C%ED%95%99%EC%96%B8%ED%95%B4%20%EB%B3%91%EB%A0%AC%20%EC%BD%94%ED%8D%BC%EC%8A%A4%20%EB%B7%B0%EC%96%B4%20-%20go00ood&url=https%3A%2F%2Fgo00ood.github.io%2Fposts%2Fparallel-corpus%2F" target="_blank" rel="noopener noopener noreferrer" data-bs-toggle="tooltip" data-bs-placement="top" title="Twitter" aria-label="Twitter"> <i class="fa-fw fa-brands fa-square-x-twitter"></i> </a> <a href="https://www.facebook.com/sharer/sharer.php?title=%EB%82%B4%ED%9B%88%C2%B7%EC%96%B4%EC%A0%9C%EB%82%B4%ED%9B%88%C2%B7%EB%B2%88%EC%97%AD%EC%86%8C%ED%95%99%C2%B7%EC%86%8C%ED%95%99%EC%96%B8%ED%95%B4%20%EB%B3%91%EB%A0%AC%20%EC%BD%94%ED%8D%BC%EC%8A%A4%20%EB%B7%B0%EC%96%B4%20-%20go00ood&u=https%3A%2F%2Fgo00ood.github.io%2Fposts%2Fparallel-corpus%2F" target="_blank" rel="noopener noopener noreferrer" data-bs-toggle="tooltip" data-bs-placement="top" title="Facebook" aria-label="Facebook"> <i class="fa-fw fab fa-facebook-square"></i> </a> <a href="https://t.me/share/url?url=https%3A%2F%2Fgo00ood.github.io%2Fposts%2Fparallel-corpus%2F&text=%EB%82%B4%ED%9B%88%C2%B7%EC%96%B4%EC%A0%9C%EB%82%B4%ED%9B%88%C2%B7%EB%B2%88%EC%97%AD%EC%86%8C%ED%95%99%C2%B7%EC%86%8C%ED%95%99%EC%96%B8%ED%95%B4%20%EB%B3%91%EB%A0%AC%20%EC%BD%94%ED%8D%BC%EC%8A%A4%20%EB%B7%B0%EC%96%B4%20-%20go00ood" target="_blank" rel="noopener noopener noreferrer" data-bs-toggle="tooltip" data-bs-placement="top" title="Telegram" aria-label="Telegram"> <i class="fa-fw fab fa-telegram"></i> </a> <button id="copy-link" aria-label="Copy link" class="btn small" data-bs-toggle="tooltip" data-bs-placement="top" title="ë§í¬ ë³µì¬í기" data-title-succeed="ë§í¬ê° ë³µì¬ëììµëë¤!"> <i class="fa-fw fas fa-link pe-none fs-6"></i> </button> </span> 38</div> 39</div> 40</div>
41<script src="https://utteranc.es/client.js" repo="go00ood/go00ood.github.io" issue-term="pathname" theme="preferred-color-scheme" crossorigin="anonymous" async> </script>
41</article></main><aside aria-label="Panel" id="panel-wrapper" class="col-xl-3 ps-2 text-muted"><div class="access"><section id="access-lastmod"><h2 class="panel-heading">ìµê·¼ ì ë°ì´í¸</h2> 42<ul class="content list-unstyled ps-0 pb-1 ms-1 mt-2"> 43<li class="text-truncate lh-lg"> <a href="/posts/last-modified/">[Github] Github ë¸ë¡ê·¸ jekyll-last-modified-at ì¤ë¥</a> 44</li> 45<li class="text-truncate lh-lg"> <a href="/posts/hanja/">í문 구결 ë ì</a> 46</li> 47<li class="text-truncate lh-lg"> <a href="/posts/sg_1/">[ê³ ëêµì´ì°êµ¬] ìì í기 01</a> 48</li> 49<li class="text-truncate lh-lg"> <a href="/posts/gugyeol/">[구결] 구결ì ì ë ¥ê¸°</a> 50</li> 51<li class="text-truncate lh-lg"> <a href="/posts/sg_2/">[ê³ ëêµì´ì°êµ¬] ìì í기 02</a> 52</li> 53</ul></section></div></aside> 54</div> 55<div class="row"><div id="tail-wrapper" class="col-12 col-lg-11 col-xl-9 px-md-4"> 56<nav class="post-navigation d-flex justify-content-between" aria-label="Post Navigation"> <a href="/posts/sg_5/" class="btn btn-outline-primary" aria-label="ì´ì ê¸"><p>[ê³ ëêµì´ì°êµ¬] ìì í기 05</p></a><div class="btn btn-outline-primary disabled" aria-label="ë¤ì ê¸"><p>-</p></div></nav><footer aria-label="Site Info" class=" d-flex flex-column justify-content-center text-muted flex-lg-row justify-content-lg-between align-items-lg-center pb-lg-3 "><p>© <time>2026</time> <a href="https://github.com/go00ood" target="_blank" rel="noopener noreferrer">go00ood</a>. This work is licensed under <span data-bs-toggle="tooltip" data-bs-placement="top" title="ì´ ì½í ì¸ ë ë¹ìì ì (CC BY-NC 4.0) ë¼ì´ì ì¤ íì ì ê³µëë©°, ì¶ì²ë¥¼ ëª íí í기í´ì¼ í©ëë¤."> <a href="https://creativecommons.org/licenses/by-nc/4.0/" target="_blank" rel="noopener noreferrer noopener noreferrer"> CC BY-NC 4.0 </a> </span>.</p> 57<p>Powered by <a href="https://jekyllrb.com" target="_blank" rel="noopener noopener noreferrer">Jekyll</a> with <a data-bs-toggle="tooltip" data-bs-placement="top" title="v7.2.4" href="https://github.com/cotes2020/jekyll-theme-chirpy" target="_blank" rel="noopener noopener noreferrer">Chirpy</a> theme</p></footer> 58</div></div> 59<div id="search-result-wrapper" class="d-flex justify-content-center d-none"><div class="col-11 content"> 60<div id="search-hints"></div> 61<div id="search-results" class="d-flex flex-wrap justify-content-center text-muted mt-3"></div> 62</div></div> 63</div> 64<aside aria-label="Scroll to Top"> <button id="back-to-top" type="button" class="btn btn-lg btn-box-shadow"> <i class="fas fa-angle-up"></i> </button></aside> 65</div><div id="mask" class="d-none position-fixed w-100 h-100 z-1"></div><aside id="notification" class="toast" role="alert" aria-live="assertive" aria-atomic="true" data-bs-animation="true" data-bs-autohide="false"><div class="toast-header"> <button type="button" class="btn-close ms-auto" data-bs-dismiss="toast" aria-label="Close"></button> 66</div> 67<div class="toast-body text-center pt-0"> 68<p class="px-2 mb-3">ì ë²ì ì ì½í ì¸ ë¥¼ ì¬ì©í ì ììµëë¤.</p> 69<button type="button" class="btn btn-primary" aria-label="Update"> ì ë°ì´í¸ </button> 70</div></aside>
70<script> document.addEventListener('DOMContentLoaded', () => { SimpleJekyllSearch({ searchInput: document.getElementById('search-input'), resultsContainer: document.getElementById('search-results'), json: '/assets/js/data/search.json', searchResultTemplate: '<article class="px-1 px-sm-2 px-lg-4 px-xl-0"><header><h2><a href="{url}">{title}</a></h2><div class="post-meta d-flex flex-column flex-sm-row text-muted mt-1 mb-1"> {categories} {tags}</div></header><p>{content}</p></article>', noResultsText: '<p class="mt-5">ê²ì ê²°ê³¼ê° ììµëë¤.</p>', templateMiddleware: function(prop, value, template) { if (prop === 'categories') { if (value === '') { return `${value}`; } else { return `<div class="me-sm-4"><i class="far fa-folder fa-fw"></i>${value}</div>`; } } if (prop === 'tags') { if (value === '') { return `${value}`; } else { return `<div><i class="fa fa-tag fa-fw"></i>${value}</div>`; } } } }); }); </script>
70
70<script src="/assets/hanja-annotator.js" defer></script>
vendor: 1 bytes, line 70
70
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.