PHP Kilo

A reimplementation of the Kilo tutorial in PHP. Requires PHP 7.4, due to requiring the FFI extension.

Implementation notes:

  • The editor prefix has been removed from all the relevant functions, instead they are methods on the Editor class.
  • Enums are faked with class constants
  • Composer is used for autoloading
  • Properties that must be manually updated in the C version (like counts/string length) are implemented with magic methods, so they are essentially calculated on read.
  • Generally, if a function exists in PHP, with the same name as the C function, the PHP version will be used.
Description
A rawmode CLI editor, in PHP, based on the C Kilo tutorial: https://viewsourcecode.org/snaptoken/kilo/
Readme
Languages
PHP 96.3%
C 3.5%
Dockerfile 0.2%