
Настраиваемый текстовый редактор с поддержкой UTF-8, инкрементным поиском, синтаксисом, номерами строк и большим количеством, написанным менее чем в 1024 строках 1 ржавчины с минимальными зависимостями.
Киби совместим с Linux, MacOS, Windows 10 2 и WASI.
Этот проект вдохновлен kilo , текстовым редактором, написанным в C. См. Сравнение ниже для списка дополнительных функций.
Взносы приветствуются! Будьте осторожны, чтобы оставаться ниже предела 1024 линии ...
1.: Подсчитано за платформу, исключая тесты и директивы Clippy, см count_loc
2.: Киби требует терминала для поддержки последовательностей побега ANSI. Версия 1703 Windows 10 (обновление Creators, апрель 2017 г.) и выше поддерживаются.
cargo Вы можете установить Kibi с cargo :
cargo install kibi Синтаксические фигуры, выделяющие файлы конфигурации, доступны в каталоге syntax.d этого репозитория. Они должны быть размещены в одном из каталогов конфигурации, упомянутых в разделе выделения конфигурации/синтаксиса.
Например:
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 пакета доступны на AUR: kibi и kibi-git .
Установка с помощником AUR, например, используя yay :
yay -Syu kibi # or yay -Syu kibi-git Установите вручную с makepkg :
git clone https://aur.archlinux.org/kibi.git # or git clone https://aur.archlinux.org/kibi-git.git
cd kibi
makepkg -siKibi доступен в виде пакета Termux.
Установите Termux:


Установите kibi в Termux: pkg install kibi Kibi
Пакет доступен в COPR как atim/kibi .
sudo dnf copr enable atim/kibi -y
sudo dnf install kibiКиби доступен в официальных репо.
Установить с помощью:
pkgin install kibiили построить из источника:
cd /usr/pkgsrc/editors/kibi
make installКиби доступен на Flathub.
flatpak install flathub com.github.ilai_deutel.kibiЗатем вы можете запустить Киби с:
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| Комплект клавиш | Описание |
|---|---|
| Ctrl-F | Инкрементный поиск; Используйте стрелки для навигации |
| Ctrl-S | Сохраните буфер в текущий файл или укажите путь к файлу |
| Ctrl-G | Перейти к <line number>[:<column number>] позиция |
| Ctrl-q | Покидать |
| Ctrl-D | Дублировать текущий ряд |
| Ctrl-e | Выполните внешнюю команду и вставьте его вывод |
| Ctrl-R | Удалить всю строку |
| Ctrl-c | Копирует всю линию |
| Ctrl-X | Разрезает всю линию |
| Ctrl-V | Вставь скопированную линию |
| Ctrl-LeftArrow | Перемещает курсор на предыдущее слово |
| Ctrl-RightRrow | Перемещает курсор к следующему слову |
Kibi можно настроить с помощью файла конфигурации. Он должен следовать этому формату:
# 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 =trueРасположение этих файлов описано ниже.
Киби следует спецификации базового каталога XDG:
$XDG_CONFIG_HOME/kibi/config.ini если определена переменная среды $XDG_CONFIG_HOME , ~/.config/kibi/config.ini в противном случае.$XDG_CONFIG_DIRS/kibi/config.ini если определена переменная среды $XDG_CONFIG_DIRS , /etc/kibi/config.ini или /etc/xdg/kibi/config.ini . Файл конфигурации может быть расположен в %APPDATA%Kibiconfig.ini .
Синтаксическое выделение может быть настроено с использованием файлов 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, strРасположение этих файлов описано ниже.
Киби следует спецификации базового каталога XDG:
$XDG_DATA_HOME/kibi/syntax.d/<file_name>.ini Если переменная среды $XDG_DATA_HOME определено, ~/.local/share/kibi/syntax.d/<file_name>.ini в противном случае.$XDG_DATA_DIRS/kibi/syntax.d/<file_name>.ini если переменная среды $XDG_DATA_DIRS определено, /usr/local/share/kibi/syntax.d/<file_name>.ini local/share/kibi/syntax.d/<name_name>.ini или или или /usr/share/kibi/syntax.d/<file_name>.ini в противном случае. Синтаксические фигуры, выделяющие файлы конфигурации, могут быть расположены по %APPDATA%Kibisyntax.d<file_name>.ini .
kilo Этот проект вдохновлен kilo , текстовым редактором, написанным Сальваторе Санфилиппо (Антирес) в C, и этот учебник (также в C).
kibi предоставляет дополнительные функции:
Наиболее важным ограничением является то, что строка проверяет количество строк остается под 1024. Чтобы проверить этот запуск:
cargo xtask count-loc Этот проект должен оставаться крошечным, поэтому использование передовых зависимостей, таких как ncurses , toml или ansi-escapes было бы обманом.
Следующие зависимости предоставляют обертки вокруг системных вызовов.
libcwinapiwinapi-util Кроме того, unicode-width используется для определения отображаемой ширины символов Unicode. К сожалению, обойти это никакого способа: таблица ширины символов Unicode составляет 230 строк.
kilo из C в ржавчину и попытка сделать его идиоматическим было интересноЭтот проект следует за спецификацией всех контролей (ключ эмодзи). Взносы любого вида приветствуются!
Илаи Дойтель ? ? ? ? | Вишал Ананд ? | Гурджус Бхасин ? | Либин Данг ? | Исаак Андраде ? | Фржол ? | Artm Plickchuk ? |
Марко Аль Барбоза | приколоть ? | Uniminin ? | Woomy4680-Exe ? | Quadroli ? | молез ? | Хорхе Рейес |
Джанкарло Франса | Андреа Манзини | Максим Буйлот ? | Джонатан Шарратт | Никто не важен | Роберт Гранкса | SograteandPowerful ? |
Михай-Карол Базга | Ник Вебстер | Чжизхен он | Cosminggeorgescu | Танвир ? | Присакару Богдан-Поль | Аузкок ? |
Январь9103 года | Джош МакКинни ? | Александр Зейтев ? | Адриан Бану |
Этот проект лицензирован под одним из
на вашем варианте.
Если вы явно не заявляете иное, какой -либо вклад, преднамеренно предназначенный для включения в Киби, должен быть двойным лицензированным, как указано выше, без каких -либо дополнительных условий или условий.