FAQ: What is OS Inferno and why is it needed?Under the inferno, software can be written both inside the inferno itself (using
Acme IDE , the compiler
limbo and
mk for building), and outside, in host os (using any editor / IDE, and host os versions of limbo and mk) - while launching the inferno need only to run tests or debug. I have prepared several projects / scripts that are intended to simplify development for inferno in general, and development using
Vim running on host os in particular.
Syntax highlighting for different file formats:
limbo ,
sh ,
mk (mkfile) .
If you are already using backlight for limbo - update the file, it has been rewritten and now fully supports the current limbo syntax.The
viewdoc viewer
plugin now supports Inferno man pages. For example, you can press
<F1>
on a call to the
delete
function in the source code on limbo, and the documentation for the corresponding module
lists (2) will be opened.
')
Syntax check plugin via
Syntastic :
limbo.vim (save to
~/.vim/syntax_checkers/
).
Snippets for
SnipMate (just as an example) :
limbo.snippets (save to
~/.vim/snippets/
).
inferno-opt-setup : scripts for “installing” (more precisely, bind-a) 3rd-party projects located in
/opt
.
inferno-opt-mkfiles : a set of mkfiles, designed specifically to simplify the development of conventional and / opt projects, support building and testing a project both inside the inferno and in host os, generating man pages from documentation in
asciidoc , etc.
inferno-opt-skel : an example of a project with an application, library, tests, documentation - for use as an example and a template for quickly starting new projects.
inferno-contrib-tap : a limbo library that makes it easy to write tests with the output of the result in TAP (Test Anything Protocol) format. When developing on host os using the mkfiles mentioned above, this allows you to run tests using the very convenient prove command (included in perl).
For everything to work, you need to set the
$INFERNO_HOME
environment variable in the host os directory that should be connected as your home directory inside the inferno, and always call mk with the
ROOT=//
parameter in the host os - create the script wrapper
~/bin/mk
: