iVim is a project that brings the vim editor to the iOS system.
It is open source, please visit the support URL.
Besides some system and embedded monospace fonts, iVim allows users to import and use their own custom fonts. Moreover, iVim supports to render ligatures if your font provides beautiful ones.
By introducing compact buttons, iVim covers as many keys as possible in its extended keyboard, so that you can input symbols without switching among key groups. Moreover, you can customize it to meet your own special needs.
Multistage language input
iVim adds support to multistage input languages such as Chinese or Japanese.
Through sharing, iVim makes its editing power available to more apps. Via the share extension, iVim can import text or text files from, or export to other apps. Via the document picker, you can also import or edit files or directories in iCloud Drive or documents providers, without leaving iVim.
External hardware keyboard
iVim supports external hardware keyboards well, just connect your favorite one to the device and start typing. With the native modifier keys mapping option from the system, you can even make the "caps lock" key act both as "ctrl" and "esc" in iOS 13.4 and above.
iVim includes some useful external commands that you are familiar with and integrates powerful scripting languages such as Python and Lua. With +terminal feature enabled and a simple shell named "ivish" included, you can run the commands in terminal windows like on a computer.
iVim provides a plugins manager, "iplug", for you to install and manage plugins easily.
Type ":help ios" in iVim for more detailed information.