قائمة تحقق ​

هي قائمة تحمل حالة إنجاز. في فقرة فارغة، اكتب [ ] أو [x] ثم اضغط Space، أو أنشئها من شريط الأدوات، واضغط مربع الاختيار لتغيير الحالة.

تُحفظ حالة الاختيار في المستند كخاصية للعنصر. عند تقسيم عنصر، تتبع الحالة العنصر الذي يبقى فيه النص لا العنصر الفارغ الذي يسبقه، لذلك لا يؤدي تقسيم مهمة مكتملة إلى قلب حالتها على نحو غير متوقع.

يقسم Enter العنصر، ويضيف Shift+Enter سطرًا جديدًا داخله فقط. يزيد Tab المسافة البادئة ويقللها Shift+Tab. تسري القواعد نفسها داخل خلايا الجدول، وتُحفظ حالة التأشير أيضًا.

الأجنحة
نوع الخط الافتراضيالارتفاع
HTMLجارٍ تحميل المحرّر…
JSONnabi-treeجارٍ تحميل المحرّر…
التثبيت
npm install nabi-note
الشيفرة
import {
  createLocale, createNabiWith, mountSurface, mountToolbar,
  mountContextToolbar, mountHints, watchSettle, orderedListWing,
  taskListWing, tableWings, mountViewTools,
} from 'nabi-note'

const selected = [
  orderedListWing,
  taskListWing,
  ...tableWings,
]
const locale = createLocale('ar')
const { nabi, registry } = createNabiWith(selected, { locale })

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 })

const settle = watchSettle(document, { surface: content })
const shared = { nabi, registry, surface: content, settle, locale }
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()))

// Call from your language selector. Content and editing history stay intact.
// locale.setLocale('ko')
ts
const selected = wings().use('tl').build()