Ayrıntılar
Kısa bir özeti ve gövdeyi tek blokta gruplandırın. Araç çubuğundan oluşturduğunuzda önce özeti girer, sonra altındaki içeriği yazmayı sürdürürsünüz.
Üçgenle belirlenen açık durum belgede saklanır ve yayımlanmış görünümün başlangıç durumu olur. Düzenlerken gövde değiştirilebilmesi için açık tutulur, ancak saklanan durum değeri korunur.
Kanatlar
Temel yazı tipiOfset
HTMLDüzenleyici yükleniyor…
JSONnabi-treeDüzenleyici yükleniyor…
Yükle
npm install nabi-noteKod
import {
createNabiWith, mountSurface, mountToolbar, mountContextToolbar,
mountHints, watchSettle, quoteWing, detailsWing, codeWing,
mountViewTools,
} from 'nabi-note'
const selected = [
quoteWing,
detailsWing,
codeWing,
]
const { nabi, registry } = createNabiWith(selected)
// Bring your own highlighter (Prism, highlight.js, Shiki, …) — the wing stays as it is
// and only the attach is swapped (`makeCodeAttach` ships from the same door)
// { ...codeWing, attach: makeCodeAttach({ highlight: (source, lang) => [{ text: source }] }) }
const root = document.querySelector('.nabi')!
const content = document.querySelector('.nabi-content')!
// The locale also sets the direction — Arabic and Urdu run right to left
mountSurface({ nabi, registry, root: content, locale: 'tr' })
const settle = watchSettle(document, { surface: content })
const shared = { nabi, registry, surface: content, settle, locale: 'tr' }
const toolbar = mountToolbar({ ...shared, root: document.querySelector('#toolbar')! })
const context = mountContextToolbar({ ...shared, root: document.querySelector('#context')! })
mountHints({ toolbar, context, root, surface: content })
// The preview and fullscreen buttons — they stand their own box at the end of the row
mountViewTools({ ...shared, root, container: document.querySelector('#toolbar')! })
// on every change — hook up your own code here
// nabi.onChange(() => user_callback(nabi.getHtml()))ts
const selected = wings().use('details').build()CSS stilleri
Ayrıntı bloğunu .nabi-content details, başlığını da .nabi-content details > summary ile biçimlendirin.
css
.article-body details {
padding: .75rem 1rem;
border: 1px solid var(--nabi-line);
border-radius: var(--nabi-radius);
background: var(--nabi-soft);
}
.article-body details > summary { cursor: pointer; font-weight: 700; }
.article-body details[open] > summary { margin-block-end: .75rem; }open niteliği, yazarın sakladığı başlangıçtaki açık durumdur. CSS bu durumu biçimlendirebilir; fakat durumun kendisini zorlamamak daha iyidir.