
Editor teks yang dapat dikonfigurasi dengan dukungan UTF-8, pencarian tambahan, penyorotan sintaks, nomor baris dan lebih banyak lagi, ditulis dalam waktu kurang dari 1024 baris 1 karat dengan dependensi minimal.
Kibi kompatibel dengan Linux, MacOS, Windows 10 2 , dan Wasi.
Proyek ini terinspirasi oleh kilo , editor teks yang ditulis dalam C. Lihat perbandingan di bawah ini untuk daftar fitur tambahan.
Kontribusi dipersilakan! Hati-hati untuk tetap di bawah batas 1024 ...
1.: Dihitung per platform, tidak termasuk tes dan arahan clippy, lihat count_loc
2.: Kibi mengharuskan terminal untuk mendukung urutan pelarian ANSI. Windows 10 Versi 1703 (Pembaruan Pembuat, April 2017) dan di atas didukung.
cargo Anda dapat menginstal kibi dengan cargo :
cargo install kibi File konfigurasi menyoroti sintaks tersedia di direktori syntax.d Repositori ini. Mereka perlu ditempatkan di salah satu direktori konfigurasi yang disebutkan di bagian Sorot Konfigurasi/Sintaks.
Misalnya:
cd ~ /repos
git clone https://github.com/ilai-deutel/kibi.git
mkdir -p ~ /.local/share/kibi/
ln -sr ./kibi/syntax.d ~ /.local/share/kibi/syntax.d 2 paket tersedia di AUR: kibi dan kibi-git .
Instalasi dengan penolong AUR, misalnya menggunakan yay :
yay -Syu kibi # or yay -Syu kibi-git Instal secara manual dengan makepkg :
git clone https://aur.archlinux.org/kibi.git # or git clone https://aur.archlinux.org/kibi-git.git
cd kibi
makepkg -siKibi tersedia sebagai paket Termux.
Instal Termux:


Instal Kibi di dalam Termux: pkg install kibi
Paket ini tersedia di COPR sebagai atim/kibi .
sudo dnf copr enable atim/kibi -y
sudo dnf install kibiKibi tersedia dari repo resmi.
Instal menggunakan:
pkgin install kibiatau membangun dari sumber:
cd /usr/pkgsrc/editors/kibi
make installKibi tersedia di Flathub.
flatpak install flathub com.github.ilai_deutel.kibiAnda kemudian dapat menjalankan Kibi dengan:
flatpak run com.github.ilai_deutel.kibikibi # Start an new text buffer
kibi < file path > # Open a file
kibi --version # Print version information and exit| Pintasan keyboard | Keterangan |
|---|---|
| Ctrl-f | Pencarian tambahan; Gunakan panah untuk menavigasi |
| Ctrl-s | Simpan buffer ke file saat ini, atau tentukan jalur file |
| Ctrl-g | Buka posisi <line number>[:<column number>] |
| Ctrl-q | Berhenti |
| Ctrl-d | Gandakan baris saat ini |
| Ctrl-e | Jalankan perintah eksternal dan tempel outputnya |
| CTRL-R | Hapus seluruh baris |
| CTRL-C | Menyalin seluruh baris |
| Ctrl-x | Memotong seluruh baris |
| Ctrl-v | Akan menempelkan garis yang disalin |
| Ctrl-leftarrow | Memindahkan kursor ke kata sebelumnya |
| CTRL-RIGHARROW | Memindahkan kursor ke kata berikutnya |
Kibi dapat dikonfigurasi menggunakan file konfigurasi. Itu harus mengikuti format ini:
# The size of a tab. Must be > 0.
tab_stop =4
# The number of confirmations needed before quitting, when changes have been
# made since the file was last changed.
quit_times =2
# The duration for which messages are shown in the status bar, in seconds.
message_duration =3
# Whether to show line numbers.
show_line_numbers =trueLokasi file -file ini dijelaskan di bawah ini.
Kibi mengikuti spesifikasi Direktori Basis XDG:
$XDG_CONFIG_HOME/kibi/config.ini jika variabel lingkungan $XDG_CONFIG_HOME didefinisikan, ~/.config/kibi/config.ini sebaliknya.$XDG_CONFIG_DIRS/kibi/config.ini jika variabel lingkungan $XDG_CONFIG_DIRS didefinisikan, /etc/kibi/config.ini atau /etc/xdg/kibi/config.ini sebaliknya. File konfigurasi dapat ditempatkan di %APPDATA%Kibiconfig.ini .
Penyorotan sintaks dapat dikonfigurasi menggunakan file INI yang mengikuti format ini:
# ## /usr/share/kibi/syntax.d/rust.ini ###
# Kibi syntax highlighting configuration for Rust
name =Rust
extensions =rs
highlight_numbers =true
singleline_string_quotes = "
singleline_comment_start=//
multiline_comment_delims=/*, */
; In Rust, the multi-line string delimiter is the same as the single-line string
; delimiter
multiline_string_delim= "
; https://doc.rust-lang.org/book/appendix-01-keywords.html
keywords_1 =abstract, as, async, await, become, box, break, const, continue, crate, do, dyn, else, enum, extern, false, final, fn, for, if, impl, in, let, loop, macro, match, mod, move, mut, override, priv, pub, ref, return, self, Self, static, struct, super, trait, true, try, type, typeof, unsafe, unsized, use, virtual, where, while, yield
keywords_2 =i8, i16, i32, i64, i128, isize, u8, u16, u32, u36, u128, usize, f32, f64, bool, char, strLokasi file -file ini dijelaskan di bawah ini.
Kibi mengikuti spesifikasi Direktori Basis XDG:
$XDG_DATA_HOME/kibi/syntax.d/<file_name>.ini jika variabel lingkungan $XDG_DATA_HOME didefinisikan, ~/.local/share/kibi/syntax.d/<file_name>.ini .$XDG_DATA_DIRS/kibi/syntax.d/<file_name>.ini jika variabel lingkungan $XDG_DATA_DIRS didefinisikan, /usr/local/share/kibi/syntax.d/<file_name>.ini <file_name>. /usr/share/kibi/syntax.d/<file_name>.ini sebaliknya. Sintaks File Konfigurasi Sintaks dapat ditemukan di %APPDATA%Kibisyntax.d<file_name>.ini .
kilo Proyek ini terinspirasi oleh kilo , editor teks yang ditulis oleh Salvatore Sanfilippo (Antirez) di C, dan tutorial ini (juga dalam C).
kibi menyediakan fitur tambahan:
Batasan yang paling penting adalah bahwa garis memeriksa jumlah garis tetap di bawah 1024. Untuk memeriksa menjalankan ini:
cargo xtask count-loc Proyek ini harus tetap kecil, jadi menggunakan dependensi canggih seperti ncurses , toml atau ansi-escapes akan curang.
Ketergantungan berikut menyediakan pembungkus di sekitar panggilan sistem.
libcwinapiwinapi-util Selain itu, unicode-width digunakan untuk menentukan lebar karakter unicode yang ditampilkan. Sayangnya, tidak ada jalan lain di sekitarnya: tabel lebar karakter unicode panjangnya 230 baris.
kilo dari C ke karat dan mencoba membuatnya idiomatik itu menarikProyek ini mengikuti spesifikasi semua-kontributor (kunci emoji). Kontribusi apa pun yang baik!
Ilaï Deutel ? ? ? ? | Vishal Anand ? | Gurjus Bhasin ? | Libin Dang ? | Isaac Andrade ? | frjol ? | ARTEM POLISHCHUK ? |
Marco al Barbosa | pin ? | Uniminin ? | Woomy4680-exe ? | quadroli ? | Molese ? | Jorge Reyes |
Giancarlo França | Andrea Manzini | Maxime Bouillot ? | Johnathan Sharratt | Tidak ada yang penting | Robert Grancsa | Sogratandpowerful ? |
Bazga Mihai-Carol | Nick Webster | Zhizhen dia | Cosminggeorgescu | Tanvir ? | Prisacaru Bogdan-Paul | Auzkok ? |
Jan9103 | Josh McKinney ? | Alexander Zaitsev ? | Adrian Banu |
Proyek ini dilisensikan di bawah keduanya
di pilihan Anda.
Kecuali jika Anda secara eksplisit menyatakan sebaliknya, kontribusi apa pun secara sengaja diserahkan untuk dimasukkan dalam Kibi oleh Anda akan dilisensikan ganda seperti di atas, tanpa syarat atau ketentuan tambahan.