1DOLLY 72PACKAGE nvim3REQUIRES HOST runtime@04REQUIRES HOST dso@056789FROM /v0.1.4/demos/cmake/Dollyfile-cmake-build e9a42d1ad1b8c35d3a6543a28306dc2d88e90e114bd3e6df892ffec05fbcfd5f10USE /v0.1.4/demos/neovim/Dollyfile-lua 1da7c528978bba18064dab2df9e36d2d7edfa021b44f618e898a5bba783aba8d11USE /v0.1.4/Dollyfile-mandoc 67a89ded0a009e1457626e18cc37ec6dd3d260f4eecbc462e970c83f708da63112REQUIRES TOOL uname1314SOURCE /v0.1.4/dist/static/neovim/utf8proc.tar c9fdc1bf18b4d5ceb006b2847f6ead4642bfd82a7f102652cac4c13105b0e12a /tmp/utf8proc/source.tar15SLOP tar -xf /tmp/utf8proc/source.tar -C /16SLOP make -C /tmp/utf8proc/source CC=cc CFLAGS=-O0 libutf8proc.a17SLOP cp /tmp/utf8proc/source/libutf8proc.a /usr/lib/libutf8proc.a18SLOP cp /tmp/utf8proc/source/utf8proc.h /usr/include/utf8proc.h1920FILE /tmp/utf8proc/check.c2122232425 int main(void) {26 assert(utf8proc_charwidth(0x65e5) == 2);27 unsigned char *text = utf8proc_NFC((const unsigned char *)"e\xcc\x81");28 assert(text && strcmp((const char *)text, "\xc3\xa9") == 0);29 free(text);30 return 0;31 }32SLOP cc -O0 /tmp/utf8proc/check.c -lutf8proc -o /tmp/utf8proc/check33SLOP /tmp/utf8proc/check3435FILE /usr/share/licenses/utf8proc/LICENSE36SLOP rm -rf /tmp/utf8proc37SOURCE /v0.1.4/dist/static/neovim/treesitter.tar c31944873f3cd13235f2e9148b474f329b6bf183823baea50eacdb125fc46f9c /tmp/treesitter/source.tar38SLOP tar -xf /tmp/treesitter/source.tar -C /39SLOP make -C /tmp/treesitter/source CC=cc CFLAGS=-O0 libtree-sitter.a40SLOP cp /tmp/treesitter/source/libtree-sitter.a /usr/lib/libtree-sitter.a41SLOP cp -R /tmp/treesitter/source/lib/include/tree_sitter /usr/include42SLOP cp /tmp/treesitter/source/lib/src/unicode/LICENSE /usr/share/licenses/treesitter/Unicode-LICENSE4344FILE /tmp/treesitter/check.c454647 int main(void) {48 TSParser *parser = ts_parser_new();49 assert(parser && ts_parser_language(parser) == 0);50 ts_parser_reset(parser);51 ts_parser_delete(parser);52 return 0;53 }54SLOP cc -O0 /tmp/treesitter/check.c -ltree-sitter -o /tmp/treesitter/check55SLOP /tmp/treesitter/check5657FILE /usr/share/licenses/treesitter/LICENSE58FILE /usr/share/licenses/treesitter/Unicode-LICENSE59SLOP rm -rf /tmp/treesitter6061REQUIRES HEADER luv62REQUIRES LIB luv63REQUIRES LIB lpeg64REQUIRES LIB lua-lpeg65REQUIRES LIB lua-luv66REQUIRES TOOL sh67REQUIRES TOOL sleep68REQUIRES TOOL timeout6970SOURCE /v0.1.4/dist/static/neovim/neovim.tar.gz 037fc672b70c6bc962e9ecf08b847f5d4f4d2e526678c00dd8382aa156db3c82 /tmp/neovim/source.tar.gz71SLOP gzip -dc /tmp/neovim/source.tar.gz | tar -xf - -C /72SLOP cmake -S /tmp/neovim/source -B /tmp/neovim/build \73 -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib \74 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS_DEBUG=-O0 \75 -DPREFER_LUA=ON -DENABLE_LTO=OFF -DENABLE_LIBINTL=OFF \76 -DENABLE_UNIBILIUM=OFF -DENABLE_WASMTIME=OFF \77 -DLUA_INCLUDE_DIR=/usr/include/lua5.1 -DLUA_LIBRARY=/usr/lib/liblua.a -DLUA_MATH_LIBRARY:STRING=m78SLOP cmake --build /tmp/neovim/build --target nvim79SLOP cmake --install /tmp/neovim/build8081FILE /tmp/neovim/check.lua82 vim.api.nvim_buf_set_lines(0, 0, -1, false, {"Dolly", "日本語"})83 vim.cmd("write /tmp/neovim/check.txt")84 vim.cmd("bdelete!")85 vim.cmd("edit /tmp/neovim/check.txt")86 assert(vim.deep_equal(vim.api.nvim_buf_get_lines(0, 0, -1, false), {"Dolly", "日本語"}))87 local result = vim.fn.system({"/bin/slop", "-c", "printf SLOP-CHILD"})88 assert(result == "SLOP-CHILD" and vim.v.shell_error == 0,89 "Slop child status " .. vim.v.shell_error .. ": " .. vim.inspect(result))90 local stopped, output = false, ""91 local job = vim.fn.jobstart({"/bin/slop", "-c", "printf FIRST; read answer; printf SECOND; sleep 30"}, {92 on_stdout = function(_, data) output = output .. table.concat(data, "\n") end,93 on_exit = function() stopped = true end,94 })95 assert(job > 0)96 assert(vim.wait(3000, function() return output:find("FIRST", 1, true) end))97 assert(vim.fn.chansend(job, "go\n") > 0)98 assert(vim.wait(3000, function() return output:find("SECOND", 1, true) end))99 assert(vim.fn.jobstop(job) == 1)100 assert(vim.wait(3000, function() return stopped end))101 vim.cmd("quit!")102SLOP timeout 60 nvim --clean --headless -l /tmp/neovim/check.lua103104EXPORTS TOOL nvim105EXPORTS FOLDER nvim-runtime /usr/share/nvim106EXPORTS FOLDER nvim-libraries /usr/lib/nvim107FILE /usr/share/licenses/neovim/LICENSE.txt108FILE /usr/share/licenses/neovim/mpack109FILE /usr/share/licenses/neovim/vterm110FILE /usr/share/licenses/lua/COPYRIGHT111FILE /usr/share/licenses/lpeg/lpeg.html112FILE /usr/share/licenses/luv/LICENSE.txt113FILE /usr/share/licenses/lua-compat53/LICENSE114FILE /usr/share/licenses/libuv/LICENSE115REQUIRES TOOL text-page116SLOP text-page /tmp/neovim/source/src/man/nvim.1117FILE /usr/share/man/cat1/nvim.1118SLOP rm -rf /tmp/neovim119REQUIRES TOOL nvim120121122SOURCE /v0.1.4/dist/static/neovim/parsers.tar 18656076f67f0cb39a68cbe1c6f628c35faf23e2ec207f914e97874a9cf323f7 /tmp/neovim-parsers/source.tar123SLOP tar -xf /tmp/neovim-parsers/source.tar -C /124FILE /tmp/neovim-parsers/build.slop125 set -ex126 for language in c lua vim vimdoc query markdown; do127 cmake -S /tmp/neovim-parsers/$language -B /tmp/neovim-parsers/$language/build \128 -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_C_FLAGS=-O0 -DPARSERLANG=$language129 cmake --build /tmp/neovim-parsers/$language/build130 cmake --install /tmp/neovim-parsers/$language/build131 done132SLOP slop /tmp/neovim-parsers/build.slop133134FILE /tmp/neovim-parsers/check.lua135 for language, source in pairs({136 c = "int main(void) { return 0; }",137 lua = "return 42",138 vim = "echo 'Dolly'\n",139 vimdoc = "Dolly\n\n",140 query = "(identifier) @name",141 markdown = "# Dolly\n",142 markdown_inline = "**Dolly**",143 }) do144 local parser = vim.treesitter.get_string_parser(source, language)145 local tree = assert(parser:parse()[1])146 assert(not tree:root():has_error(), language .. ": " .. tree:root():sexpr())147 end148 vim.cmd("quit!")149SLOP timeout 30 nvim --clean --headless -l /tmp/neovim-parsers/check.lua150151EXPORTS FOLDER nvim-parsers /usr/lib/nvim/parser152EXPORTS FOLDER nvim-parser-licenses /usr/share/licenses/neovim-parsers153SLOP rm -rf /tmp/neovim-parsers154