Mabawa
Aina msingi ya herufiKipenyo


NABI NOTE

Kihariri huria cha WYSIWYG


NABI NOTE ni kihariri huria cha WYSIWYG. Uumbizaji, mpangilio, majedwali, upakiaji na vipengele vingine vimetenganishwa na kiini kuwa moduli huru zinazoitwa mabawa. Chagua mabawa unayohitaji ili kukusanya kihariri, au unganisha bawa lako. Kimeandikwa kwa JavaScript ya kawaida, hivyo kinafanya kazi na React au Vue. Unaweza kuanza bila usanidi wa ujenzi kwa maktaba ya CDN. Muundo wake wa hati, NABI TREE, hubadilishwa kuwa HTML hata katika Node.js bila DOM. Hati za ingizo hurekebishwa kwa kanuni zilizosajiliwa, maandishi na sifa hutoroshwa, na anwani za viungo hukaguliwa. Mabawa maalum na data ya seva lazima vikaguliwe kwa sera ya usalama ya programu. Vigeu vya CSS na mpangilio wa rem hukuruhusu kurekebisha mandhari na ukubwa; mandhari meusi, aina za herufi za lugha nyingi, upangaji wa jedwali, historia ya ndani na kazi za hati za AI zote zinatumia muundo huohuo wa hati.


Aina ya herufi

Bila serif, yenye serif, nafasi moja na mwandiko — kila familia hupanga fonti kwa mfumo wa uandishi. Mwenye tovuti huamua aina ya herufi chaguomsingi.


Kila familia hapa chini inaonyeshwa katika lugha nyingi.


Bila serif · சான்ஸ் செரிஃப் · ไร้เชิง · Senza grazie · Sans serif · 산세리프 · ゴシック体 · 无衬线 · Serifenlos · Sans empattement · Sin serifa · Sem serifa · Без засечек · بلا زخارف · सैन्स सेरिफ़ · স্যান্স সেরিফ · سانس سیرف · Tanpa serif · بدون سریف · सॅन्स सेरिफ · Không chân · శాన్స్ సెరిఫ్ · Mara seref


Yenye serif · செரிஃப் · มีเชิง · Con grazie · Serif · 세리프 · 明朝体 · 衬线 · Avec empattement · Con serifa · Com serifa · С засечками · بزخارف · सेरिफ़ · সেরিফ · سیرف · Berserif · سریف · सेरिफ · Có chân · సెరిఫ్ · Mai seref


Nafasi moja · ஒற்றையகலம் · ความกว้างคงที่ · Monospaziato · Monospace · 고정폭 · 等幅 · 等宽 · Dicktengleich · Chasse fixe · Monoespaciada · Monoespaçada · Моноширинный · ثابت العرض · मोनोस्पेस · মনোস্পেস · یکساں چوڑائی · Lebar tetap · تک‌فاصله · Đơn cách · మోనోస్పేస్ · Tazara ɗaya · Eş aralıklı


Mwandiko · கையெழுத்து · ลายมือ · Corsivo · Cursive · 필기체 · 筆記体 · 手写体 · Schreibschrift · Cursiva · Рукописный · خط اليد · हस्तलिपि · হস্তলিপি · رواں خط · Tulisan tangan · دست‌نویس · हस्ताक्षर · Chữ viết tay · చేతిరాత · Rubutun hannu · El yazısı



Ukubwa wa maandishi

Kidogo sana

Kidogo

Kikubwa

Kikubwa sana



Vichwa

Kwenye mstari mtupu, andika # kisha nafasi ili kuugeuza kuwa kichwa.

H1

H2

H3

H4

H5
H6



Nzito · Mlalo · Mstari wa chini · Kufuta

Nzito mlalo mstari wa chini mstari wa kufuta — mfano.

Vinaweza kupangwa pamoja.

Kiambishi cha juu na cha chini

Eneo ni 3.5m2 na maelezo ya chini huongezwa hivi.1

Maji ni H2O.



Rangi ya maandishi · Kuangazia

Paleti hubaki kusomeka katika mandhari mepesi na meusi.

Rangi ya maandishi Kijani · Matumbawe · Urujuani · Kahawia dhahabu · Bluu

Kuangazia Njano · Kijani · Samawati · Waridi · Zambarau · Chungwa



Kiungo

Weka anwani na inakuwa kiungo.

Unaweza kutumia http:// na https://, pamoja na njia za tovuti zinazoanza kwa . au /. Anwani kama javascript: haziruhusiwi.

Andika https://nabi.saro.me na ubonyeze nafasi au Enter — hubadilika yenyewe.

Kufungua kiungo

Hati huhifadhi anwani ya kiungo pekee; ukurasa unaoonyesha hati huamua namna ya kukifungua.

Kiungo cha kiambatisho

Faili isiyo picha huacha kiungo chenye umbo la faili.

Kiambatisho hubaki hivi.



Mpangilio

Imepangwa kushoto

Imepangwa katikati

Imepangwa kulia

Vichwa vinaweza kupangwa pia.



Orodha

Orodha yenye vitone

Andika - kisha nafasi kwenye mstari mtupu.

  • Kipengee chenye kitone

    • Tab / Shift+Tab huingiza ndani na kurudisha nje.

Orodha ya namba

Andika 1. kisha nafasi.

  1. Ya kwanza

  2. Ya pili

  3. Ya tatu

Orodha ya kazi

Andika [ ] au [x] kisha nafasi.

  • Kipengee hiki kimekaguliwa.

  • Hiki bado hakijakaguliwa.



Jedwali

Bofya kitufe cha jedwali ili kuongeza, kufuta na kuunganisha safu mlalo na safu wima.

Upangaji wa safu wima

Hakiki ikifunguliwa, bofya vichwa vya Hisa na Bei kwa zamu.

Muundo

Hisa

Bei

Uzito

NB-7

1,200

349

1.2 kg

NB-9

20,000

99

0.9 kg

NB-12

3,500

1,299

1.4 kg

NB-80

900

8,900

2.1 kg

NB-100

Haijaamuliwa

12,999

2.4 kg

Bei hupangwa kwa namba.

Hisa hupangwa kama maandishi.



Kitenganishi

Andika --- na ubonyeze Enter.




Picha

Upana huanzia 30% hadi 100%, kushoto, katikati au kulia.



YouTube



Upakiaji

Jaribu kuburuta picha au faili hadi kwenye kihariri.

Upakiaji huu ni mfano; mpangilio huunganisha na seva yako.

Ukishindwa, picha au faili huondolewa kwenye kihariri.



Nukuu

Andika > kisha nafasi kwenye mstari mtupu ili kupata kisanduku cha nukuu.

Inaweza kuendelea kwa mistari kadhaa.



Msimbo

Andika ``` na ubonyeze nafasi au Enter ili kupata kisanduku cha msimbo.

Andika lugha pia, kama ```java.

import { createNabiWith, defaultWings } from 'nabi-note'

const { nabi } = createNabiWith(defaultWings)
const html = nabi.getHtml()



Maelezo

Maelezo huundwa kwa muhtasari na mwili.

Chagua kama yanahifadhiwa yamekunjwa au yamefunguliwa.



Njia za mkato

Bonyeza Shift mara mbili kwa haraka ili kuonyesha njia za mkato.



Uumbizaji wa moja kwa moja

Mfano

Kitufe cha tendo

Matokeo

#

Nafasi

Kichwa

-

Nafasi

Orodha yenye vitone

1.

Nafasi

Orodha ya namba

[ ] · [x]

Nafasi

Orodha ya kazi

>

Nafasi

Nukuu

``` · ```ts

Nafasi · Enter

Kisanduku cha msimbo

---

Enter

Kitenganishi

https://…

Nafasi · Enter

Kiungo



Vitendakazi vya towe

Kitendakazi

Matokeo

getHtml()

HTML

getJson()

JSON



Hufanya kazi bila DOM

Kubadilisha JSON kuwa HTML hakuhitaji DOM.

Seva inaweza kusoma NABI TREE na kuunda HTML kwa kanuni zilezile.


Rafiki kwa simu

  • Kiolesura cha simu — mpangilio unaojirekebisha hubeba kiolesura cha simu.

  • Nafasi ya kibodi ya simu — urefu wake huzingatiwa.

  • Ukubwa unaonyumbulika — kila ukubwa huandikwa kwa rem.

  • Lugha nyingi — inasaidia lugha nyingi.


Ubinafsishaji

  • Bawa lako — lijenge na ulisajili.

  • CSS yako — rangi, pembe na nafasi hufafanuliwa kwa --nabi-*.

  • Huria — iko kwenye GitHub.


Soma nyaraka → nabi.saro.me

HTMLKihariri kinapakiwa…
JSONnabi-treeKihariri kinapakiwa…
Sakinisha
npm install nabi-note
Msimbo
import {
  createNabiWith, mountSurface, mountToolbar, mountContextToolbar,
  mountHints, watchSettle, defaultWings, mountUpload, mountUploadView,
  browserFileStore, mountFile, parseNodes, mountViewTools,
  browserHistoryStorage, mountLocalHistory, openHistoryPanel,
} from 'nabi-note'
import { mountDiffWing } from 'nabi-note/diff'

// The box that asks — without it the core answers "no" to everything (plug in your own)
const ask = { message: (t: string) => alert(t), confirm: (t: string) => confirm(t) }

const selected = [
  ...defaultWings,
]
const { nabi, registry } = createNabiWith(selected, { ask })

// 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')!

const view = mountUploadView({ nabi, surface: content })
const upload = mountUpload({
  nabi, root: content,
  // your upload goes here — report progress with task.onProgress(0–100)
  uploader: async (task) => ({ uri: 'https://cdn.example/uploaded' }),
  extensions: ['png', 'jpg', 'pdf'], maxFileSize: 10 * 1024 * 1024,
  onStart: (tasks) => view.start(tasks),
  onProgress: (id, percent) => view.progress(id, percent),
  onSettle: () => view.settle(),
  onDone: () => view.done(),
})
const file = mountFile({ nabi, registry, store: browserFileStore(document), parse: parseNodes, locale: 'sw', name: () => 'note' })
const history = mountLocalHistory({ nabi, storage: browserHistoryStorage(window) })
const diff = mountDiffWing({ nabi, registry, surface: content, locale: 'sw' })

// The locale also sets the direction — Arabic and Urdu run right to left
mountSurface({ nabi, registry, root: content, locale: 'sw', fileSink: upload.take })

const settle = watchSettle(document, { surface: content })
const shared = { nabi, registry, surface: content, settle, locale: 'sw' }
// A tool that needs a panel comes back to the host — without this the button is dead
const toolbar = mountToolbar({
  ...shared, root: document.querySelector('#toolbar')!,
  file,
  onFiles: upload.take,
  onHost: (w) => {
    if (w === 'diff') { diff.open(); return }
    if (w !== 'localHistory') return
    openHistoryPanel({
      history, surface: content, locale: 'sw', sessionId: history.sessionId,
      render: (record) => createNabiWith(selected, { doc: JSON.parse(record.body) }).nabi.getHtml(),
    })
  },
})
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()))