9e15467

Branches > main > 9e15467 > files / nvim / pack / plugins / opt / conjure / dev / fennel / sandbox.fnl

nvim

Grahp, 2026-03-01

Commit: 9e15467e571dab825395d040642cc4464782c084
Parent: 8646c2c

72 changed files:

nvim/init.lua modified (view file)

@@ -5,6 +5,7 @@ require("center")  require("opts")+require("filetype")  local nvim_arg = vim.fn.argv(0) if vim.fn.isdirectory(nvim_arg) == 1 then@@ -15,8 +16,9 @@ vim.schedule(function() require("lsp") end) vim.schedule(function() require("lazy_ui") end) +--- TODO there's a bug tha parens and virtual text likes to stick around for longer than it should...+ --- Still to do:---- REPL (Conjure) --- Parens (Parinfer) --- Formatting (better formatting anyway :p) 

nvim/lua/colors.lua modified (view file)

@@ -126,6 +126,7 @@ -- ??? hl(0, "@lsp.type.event.clojure", {link = "White"}) hl(0, "@lsp.type.type.clojure", {link = "White"})+hl(0, "@lsp.type.class.clojure", {link = "Blue"}) hl(0, "@lsp.type.namespace.clojure", {link = "White"})  hl(0, "rubyStringDelimiter", {link = "String"})

nvim/lua/filetype.lua added (view file)

@@ -0,0 +1,6 @@+vim.api.nvim_create_autocmd("FileType", {+  pattern = "clojure",+  callback = function()+    require("plugins.conjure")+  end,+})

nvim/lua/jump.lua modified (view file)

@@ -2,9 +2,9 @@ local ns = vim.api.nvim_create_namespace("dev.grahp.nvim-jump")  --- Name meanings:---- Jump target: Somewhere you can jump to - Union of Match and table of optional Disambiguator+--- Jump target: Somewhere you can jump to - row, col (pos), char, and optional disambiguator --- Disambiguator: A third character used to differentiate jump targets when there are multiple---- Match: Union Pos and a table of Char+--- Match: row, col (pos) and char --- Row: The number of lines into the buffer line is? (0-based?) --- Col: The number of characters into the line? (1-based?) --- Pos: table of row, col

nvim/lua/keybindings.lua modified (view file)

@@ -39,11 +39,11 @@  keymap("n", "<Space>u", function() require("plugins.oil").open() end) -keymap("n", "<Space>f", function() require("fuzzy").fuzzy_find() end)+keymap("n", "<Space>g", function() require("fuzzy").fuzzy_find() end)  keymap({"n", "v", "o"}, ";", function() require("jump").jump() end)  local smart_n = require("smart_n").smart_n -keymap({"n", "v", "o"}, "n", smart_n(false), {expr = true, noremap = true})-keymap({"n", "v", "o"}, "N", smart_n(true), {expr = true, noremap = true})+keymap({"n", "v", "o"}, "n", function() return smart_n(false) end, {expr = true, noremap = true})+keymap({"n", "v", "o"}, "N", function() return smart_n(true) end, {expr = true, noremap = true})

nvim/lua/plugins/conjure.lua added (view file)

@@ -0,0 +1,24 @@+local keymap = vim.keymap.set+local g = vim.g++vim.cmd("packadd conjure")++-- require("oil").setup({skip_confirm_for_simple_edits = true,+--                       default_file_explorer = true,+--                       watch_for_changes = true,+--                       view_options = {show_hidden = true}})++-- require("conjure").setup()++keymap("n", "<Space>s", "<cmd>ConjureEvalCurrentForm<CR>")+keymap("n", "<Space>d", "<cmd>ConjureEvalRootForm<CR>")+keymap("n", "<Space>f", "<cmd>ConjureEvalBuf<CR>")+keymap("n", "<Space>l", "<cmd>ConjureEvalWord<CR>")+keymap("n", "<Space>e", "<cmd>ConjureCljLastException<CR>")+keymap("n", "<Space>b", "<cmd>ConjureLogBuf<CR>")++g["conjure#log#hud#height"] = 1+g["conjure#log#hud#border"] = {"╭", "─", "╮", "│", "╯", "─", "╰", "│"}+g["conjure#log#botright"] = true+--- Stop K from being re-defined+g["conjure#mapping#doc_word"] = false

nvim/lua/smart_n.lua modified (view file)

@@ -25,9 +25,7 @@ end  local function smart_n(reverse, not_smart)-  if vim.b.last_n_type == nil then-    return ""-  elseif vim.b.last_n_type == FT then+  if vim.b.last_n_type == FT then     local cs = vim.fn.getcharsearch()     if reverse then       return (not_smart and ",") or cs.forward == 1 and "," or ";"@@ -52,8 +50,13 @@ -- vim.keymap.set({"n", "v", "o"}, "n", function() return smart_n(false) end, {expr = true, noremap = true}) -- vim.keymap.set({"n", "v", "o"}, "N", function() return smart_n(true) end, {expr = true, noremap = true}) ---- As this keeps track of what you're doing, this file should be required before you're actually moving around---- You can defer it from first paint though.+--- In another file+-- local smart_n = require("smart_n").smart_n -- Or wherever you put it+-- vim.keymap.set({"n", "v", "o"}, "n", function() return smart_n(false) end, {expr = true, noremap = true})+-- vim.keymap.set({"n", "v", "o"}, "N", function() return smart_n(true) end, {expr = true, noremap = true})++--- As this keeps track of the last type of search you performed, this file should be loaded before you're actually moving around.+--- You can defer it from first paint though, i.e. vim.schedule(function() require("smart_n") end)  return {smart_n = smart_n,         not_smart_n = not_smart_n}

nvim/pack/plugins/opt/parinfer-rust/.envrc added (view file)

@@ -0,0 +1 @@+use flake

nvim/pack/plugins/opt/parinfer-rust/.gitignore added (view file)

@@ -0,0 +1,7 @@+/bin/+/target/+/node_modules/+**/*.rs.bk+/result+/result-*+/.direnv

nvim/pack/plugins/opt/parinfer-rust/.nvmrc added (view file)

@@ -0,0 +1 @@+v8.10.0

nvim/pack/plugins/opt/parinfer-rust/CHANGELOG.adoc added (view file)

@@ -0,0 +1,165 @@+ChangeLog+=========++https://github.com/eraserhd/parinfer-rust/compare/v0.5.0...HEAD[Unreleased]+---------------------------------------------------------------------------++=== Fixed++* Kakoune: Instead of expecting the binary in the path, tries to detect the+  path, which can be overridden with the parinfer_path option.  Looks in+  `~/.cargo/bin` first.++=== Added++* Added support for https://hylang.org/[Hy].+* Added support for https://picolisp.com/wiki/?home[PicoLisp].++https://github.com/eraserhd/parinfer-rust/compare/v0.4.3...HEAD[v0.5.0]+-----------------------------------------------------------------------++* Support for Apple Silicon (by bumping dependency versions)+* Update to Rust edition 2021++=== Vim++* Vim errors when opening an unmodifiable buffer.+* Fix of E523 regression (often triggered by using `.`), because Vim+  changed the error to E578+* Add support for https://github.com/ocaml/dune[Dune]++=== Added++* Added support for https://github.com/elkowar/eww[Yuck]+* String delimiters can now be explicitly configured with the +  `string_delimiters` option.+* Added -l, --language LANG option to easily specify language defaults.+* The user can now set the character used to denote comments. The+  character can be set on a global or per-buffer basis (using+  `g:parinfer_comment_char` and `b:parinfer_comment_char` respectively).+  By default, the global character is `;` and the character for Janet+  buffers is `#`.+* Add support for Janet's multiple-backtick-enclosed long strings.+* Support for WebAssembly+* More support for Common Lisp and Scheme:+  - `|Enclosed symbols|`+  - `#|Block comments|#`+  - `#;(S-expression comments)`+* Support for Guile's `#!block comments!#`++=== Emacs++* Compilation for Emacs is now optional. To enable it, run+`cargo build --release --features emacs`+++https://github.com/eraserhd/parinfer-rust/compare/v0.4.2...v0.4.3[0.4.3]+------------------------------------------------------------------------++=== Fixed++* Sometimes dlerror() is null on second invocation, causing SEGV instead+  of an informative panic.+* Fix for rust+glibc 2.30 test failures: self-reference code no longer+  works in test because glibc 2.30 refuses to load position-independent+  code or no-library code, so it is disabled.++https://github.com/eraserhd/parinfer-rust/compare/v0.4.1...v0.4.2[0.4.2]+------------------------------------------------------------------------++=== Fixed++* Errors in build and release actions.+++https://github.com/eraserhd/parinfer-rust/compare/v0.4.0...v0.4.1[0.4.1]+------------------------------------------------------------------------++=== Fixed++* Test error "Could not get parinfer library path" (#57).++=== Vim++* Add support for loading with Vim/Neovim `packadd`+* Add support for https://fennel-lang.org[Fennel]+* Add support for https://janet-lang.org[Janet]++=== Kakoune++* Prevent Unicode characters from "locking up" the cursor.  Closes #55.+  (This requires a version of Kakoune dated Nov 12, 2019 or later, with the+  `-display-column` option to `:select`.)++https://github.com/eraserhd/parinfer-rust/compare/v0.3.1...v0.4.0[0.4.0]+------------------------------------------------------------------------++=== Releases++* GitHub Actions test and release on Linux, Windows, and Mac

Show all 166 lines

nvim/pack/plugins/opt/parinfer-rust/Cargo.lock added (view file)

@@ -0,0 +1,476 @@+# This file is automatically @generated by Cargo.+# It is not intended for manual editing.+version = 4++[[package]]+name = "anyhow"+version = "1.0.95"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04"++[[package]]+name = "base-x"+version = "0.2.11"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"++[[package]]+name = "bumpalo"+version = "3.16.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"++[[package]]+name = "cfg-if"+version = "1.0.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"++[[package]]+name = "ctor"+version = "0.1.26"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"+dependencies = [+ "quote",+ "syn 1.0.109",+]++[[package]]+name = "darling"+version = "0.10.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858"+dependencies = [+ "darling_core",+ "darling_macro",+]++[[package]]+name = "darling_core"+version = "0.10.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b"+dependencies = [+ "fnv",+ "ident_case",+ "proc-macro2",+ "quote",+ "strsim",+ "syn 1.0.109",+]++[[package]]+name = "darling_macro"+version = "0.10.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72"+dependencies = [+ "darling_core",+ "quote",+ "syn 1.0.109",+]++[[package]]+name = "discard"+version = "1.0.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0"++[[package]]+name = "emacs"+version = "0.19.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "9a773f2eeb842fea9f9e52f8360dbf7c0c54af0c904e025c9e08db5053b8718c"+dependencies = [+ "anyhow",+ "ctor",+ "emacs-macros",+ "emacs_module",+ "once_cell",+ "rustc_version",+ "thiserror",+]++[[package]]+name = "emacs-macros"+version = "0.17.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "69656fdfe7c2608b87164964db848b5c3795de7302e3130cce7131552c6be161"+dependencies = [+ "darling",+ "proc-macro2",+ "quote",+ "syn 1.0.109",+]++[[package]]+name = "emacs_module"+version = "0.18.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b3067bc974045ed2c6db333bd4fc30d3bdaafa6421a9a889fa7b2826b6f7f2fa"++[[package]]+name = "fnv"+version = "1.0.7"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"++[[package]]+name = "getopts"+version = "0.2.21"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"+dependencies = [+ "unicode-width",+]++[[package]]+name = "ident_case"+version = "1.0.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"++[[package]]+name = "itoa"+version = "1.0.14"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"++[[package]]+name = "libc"+version = "0.2.169"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"++[[package]]+name = "log"+version = "0.4.25"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"++[[package]]+name = "memchr"+version = "2.7.4"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"++[[package]]+name = "once_cell"+version = "1.20.2"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"++[[package]]+name = "parinfer_rust"+version = "0.5.0"+dependencies = [+ "emacs",+ "getopts",+ "libc",+ "serde",+ "serde_derive",+ "serde_json",+ "stdweb",+ "unicode-segmentation",+ "unicode-width",+ "winapi",+]++[[package]]+name = "proc-macro2"+version = "1.0.93"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"+dependencies = [+ "unicode-ident",+]++[[package]]+name = "quote"+version = "1.0.38"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"+dependencies = [+ "proc-macro2",+]++[[package]]+name = "rustc_version"+version = "0.2.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"+dependencies = [+ "semver",+]++[[package]]+name = "rustversion"+version = "1.0.19"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"++[[package]]+name = "ryu"+version = "1.0.18"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"++[[package]]+name = "semver"+version = "0.9.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"+dependencies = [+ "semver-parser",+]++[[package]]+name = "semver-parser"+version = "0.7.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"++[[package]]+name = "serde"+version = "1.0.217"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"+dependencies = [+ "serde_derive",+]++[[package]]+name = "serde_derive"+version = "1.0.217"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.96",+]++[[package]]+name = "serde_json"+version = "1.0.137"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b"+dependencies = [+ "itoa",+ "memchr",+ "ryu",+ "serde",+]++[[package]]+name = "sha1"+version = "0.6.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"+dependencies = [+ "sha1_smol",+]++[[package]]+name = "sha1_smol"+version = "1.0.1"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d"++[[package]]+name = "stdweb"+version = "0.4.20"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5"+dependencies = [+ "discard",+ "rustc_version",+ "serde",+ "serde_json",+ "stdweb-derive",+ "stdweb-internal-macros",+ "stdweb-internal-runtime",+ "wasm-bindgen",+]++[[package]]+name = "stdweb-derive"+version = "0.5.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef"+dependencies = [+ "proc-macro2",+ "quote",+ "serde",+ "serde_derive",+ "syn 1.0.109",+]++[[package]]+name = "stdweb-internal-macros"+version = "0.2.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11"+dependencies = [+ "base-x",+ "proc-macro2",+ "quote",+ "serde",+ "serde_derive",+ "serde_json",+ "sha1",+ "syn 1.0.109",+]++[[package]]+name = "stdweb-internal-runtime"+version = "0.1.5"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0"++[[package]]+name = "strsim"+version = "0.9.3"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"++[[package]]+name = "syn"+version = "1.0.109"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"+dependencies = [+ "proc-macro2",+ "quote",+ "unicode-ident",+]++[[package]]+name = "syn"+version = "2.0.96"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"+dependencies = [+ "proc-macro2",+ "quote",+ "unicode-ident",+]++[[package]]+name = "thiserror"+version = "1.0.69"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"+dependencies = [+ "thiserror-impl",+]++[[package]]+name = "thiserror-impl"+version = "1.0.69"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.96",+]++[[package]]+name = "unicode-ident"+version = "1.0.15"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "11cd88e12b17c6494200a9c1b683a04fcac9573ed74cd1b62aeb2727c5592243"++[[package]]+name = "unicode-segmentation"+version = "1.12.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"++[[package]]+name = "unicode-width"+version = "0.1.14"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"++[[package]]+name = "wasm-bindgen"+version = "0.2.100"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5"+dependencies = [+ "cfg-if",+ "once_cell",+ "rustversion",+ "wasm-bindgen-macro",+]++[[package]]+name = "wasm-bindgen-backend"+version = "0.2.100"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6"+dependencies = [+ "bumpalo",+ "log",+ "proc-macro2",+ "quote",+ "syn 2.0.96",+ "wasm-bindgen-shared",+]++[[package]]+name = "wasm-bindgen-macro"+version = "0.2.100"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407"+dependencies = [+ "quote",+ "wasm-bindgen-macro-support",+]++[[package]]+name = "wasm-bindgen-macro-support"+version = "0.2.100"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"+dependencies = [+ "proc-macro2",+ "quote",+ "syn 2.0.96",+ "wasm-bindgen-backend",+ "wasm-bindgen-shared",+]++[[package]]+name = "wasm-bindgen-shared"+version = "0.2.100"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d"+dependencies = [+ "unicode-ident",+]++[[package]]+name = "winapi"+version = "0.3.9"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"+dependencies = [+ "winapi-i686-pc-windows-gnu",+ "winapi-x86_64-pc-windows-gnu",+]++[[package]]+name = "winapi-i686-pc-windows-gnu"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"++[[package]]+name = "winapi-x86_64-pc-windows-gnu"+version = "0.4.0"+source = "registry+https://github.com/rust-lang/crates.io-index"+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"

nvim/pack/plugins/opt/parinfer-rust/Cargo.toml added (view file)

@@ -0,0 +1,29 @@+[package]+name = "parinfer_rust"+version = "0.5.0"+authors = ["Jason Felice <jason.m.felice@gmail.com>"]+edition = "2021"++[lib]+crate-type = ["lib", "cdylib"]++[[bin]]+name = "parinfer-rust"+path =  "src/main.rs"++[dependencies]+getopts = "0.2"+libc = "0.2.39"+serde = "1.0"+emacs = {version = "0.19.0", optional = true}+serde_json = "1.0"+serde_derive = "1.0"+unicode-segmentation = "1.1.0"+unicode-width = "0.1.5"++[target.'cfg(target_arch = "wasm32")'.dependencies]+stdweb = "0.4.4"++[target.'cfg(windows)'.dependencies]+winapi = { version = "0.3.6", features = ["libloaderapi"] }+

nvim/pack/plugins/opt/parinfer-rust/LICENSE.md added (view file)

@@ -0,0 +1,15 @@+ISC License++Copyright (c) 2018, Jason Felice and Contributors++Permission to use, copy, modify, and/or distribute this software for any purpose+with or without fee is hereby granted, provided that the above copyright notice+and this permission notice appear in all copies.++THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH+REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND+FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,+INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS+OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF+THIS SOFTWARE.

nvim/pack/plugins/opt/parinfer-rust/Makefile added (view file)

@@ -0,0 +1,9 @@+.PHONY: install+install:+	cargo build --release+	cargo install --force+	mkdir -p ~/.config/kak/autoload/+	for file in "$$(pwd)"/rc/*.kak; do \+	  ln -sf "$${file}" ~/.config/kak/autoload/; \+	done+

nvim/pack/plugins/opt/parinfer-rust/README.adoc added (view file)

@@ -0,0 +1,236 @@+= parinfer-rust++Infer parentheses for Clojure, Lisp and Scheme.++https://github.com/eraserhd/parinfer-rust++A full-featured, super fast implementation of https://shaunlebron.github.io/parinfer/[Shaun Lebron’s parinfer].+This repo has Vim, Neovim, and Kakoune plugins, and an https://github.com/justinbarclay/parinfer-rust-mode[Emacs plugin] is available.+The Rust library can be called from other editors that can load dynamic libraries.++This plugin, unlike others available for Vim, implements "smart" mode.+Rather than switching between "paren" mode and "indent" mode, parinfer uses information about how the user is changing the file to decide what to do.++== Installing++Dependencies:++* https://www.rust-lang.org/en-US/install.html[rust] >= ~1.83 ?+* `clang` and `libclang-dev` packages or equivalent for your OS+++=== Stand-alone CLI++If you just want to run `parinfer-rust` from the command-line:++....+$ cargo build --release+$ cargo install+....++If you use emacs add the corresponding feature flag during compilation+....+$ cargo build --release --features emacs+....++=== Vim and Neovim++==== `+pathogen+`++If you are using Tim Pope’s `+pathogen+`:++....+$ cd ~/.vim/bundle+$ git clone git@github.com:eraserhd/parinfer-rust.git+$ cd ~/.vim/bundle/parinfer-rust+$ cargo build --release+....++==== `+vim-plug+`++[source,viml]+----+Plug 'eraserhd/parinfer-rust'+----++Then, build project using cargo:++....+$ cd /path/to/parinfer-rust+$ cargo build --release+....++Or, with optional automatic recompilation on update:++[source,viml]+----+Plug 'eraserhd/parinfer-rust', {'do':+        \  'cargo build --release'}+----++If you are a NixOS user using Plug, you can use this command instead:+[source,viml]+----+Plug 'eraserhd/parinfer-rust', {'do':+        \ 'nix-shell --run \"cargo build --release \"'}+----++==== `+lazy.nvim+`++Add this to your `+init.lua+`:++[source,viml]+----+require("lazy").setup({+  {"eraserhd/parinfer-rust", build = "cargo build --release"}+})+----++==== `+Nix+`++If you are a Nix user using Nix + Home Manager to build your vim plugins, you can add:++[source,nix]+----+programs.neovim = {+    [ pkgs.vimPlugins.parinfer-rust ];+}+----+

Show all 237 lines

nvim/pack/plugins/opt/parinfer-rust/Web.toml added (view file)

@@ -0,0 +1,2 @@+default-target = "wasm32-unknown-unknown"+prepend-js = ["src/webcore/runtime.js", "src/webcore/runtime_wasm.js"]

nvim/pack/plugins/opt/parinfer-rust/benches/perf.rs added (view file)

@@ -0,0 +1,129 @@+#![feature(test)]++extern crate parinfer_rust;+extern crate test;++#[macro_use]+extern crate serde_json;++use std::ffi::CString;+use test::Bencher;++const LONG_MAP_WITH_STRINGS: &str = include_str!("perf/long_map_with_strings");+const REALLY_LONG_FILE: &str = include_str!("perf/really_long_file");+const REALLY_LONG_FILE_WITH_UNCLOSED_PAREN: &str =+    include_str!("perf/really_long_file_with_unclosed_paren");+const REALLY_LONG_FILE_WITH_UNCLOSED_QUOTE: &str =+    include_str!("perf/really_long_file_with_unclosed_quote");++fn build_case(mode: &str, text: &str) -> CString {+    CString::new(+        json!({+            "mode": mode,+            "text": text,+            "options": {+                "forceBalance": false,+                "partialResult": false,+                "returnParens": false+            }+        })+        .to_string(),+    )+    .unwrap()+}++#[bench]+fn bench_paren_long_map_with_strings(b: &mut Bencher) {+    unsafe {+        let options = build_case("paren", LONG_MAP_WITH_STRINGS);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_indent_long_map_with_strings(b: &mut Bencher) {+    unsafe {+        let options = build_case("indent", LONG_MAP_WITH_STRINGS);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_smart_long_map_with_strings(b: &mut Bencher) {+    unsafe {+        let options = build_case("smart", LONG_MAP_WITH_STRINGS);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_paren_really_long_file(b: &mut Bencher) {+    unsafe {+        let options = build_case("paren", REALLY_LONG_FILE);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_indent_really_long_file(b: &mut Bencher) {+    unsafe {+        let options = build_case("indent", REALLY_LONG_FILE);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_smart_really_long_file(b: &mut Bencher) {+    unsafe {+        let options = build_case("smart", REALLY_LONG_FILE);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_paren_really_long_file_with_unclosed_paren(b: &mut Bencher) {+    unsafe {+        let options = build_case("paren", REALLY_LONG_FILE_WITH_UNCLOSED_PAREN);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]+fn bench_indent_really_long_file_with_unclosed_paren(b: &mut Bencher) {+    unsafe {+        let options = build_case("indent", REALLY_LONG_FILE_WITH_UNCLOSED_PAREN);+        b.iter(|| parinfer_rust::run_parinfer(options.as_ptr()));+    }+}++#[bench]

Show all 130 lines

nvim/pack/plugins/opt/parinfer-rust/benches/perf/long_map_with_strings added (view file)

@@ -0,0 +1,302 @@+[{:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"+  :key2 "bar"}+ {:key1 "foo"

Show all 303 lines

nvim/pack/plugins/opt/parinfer-rust/benches/perf/really_long_file added (view file)

@@ -0,0 +1,2864 @@+;; Parinfer NOTE: this is just a large file taken from ClojureScript+;; which we use to test the speed of Parinfer.++;   Copyright (c) Rich Hickey. All rights reserved.+;   The use and distribution terms for this software are covered by the+;   Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)+;   which can be found in the file epl-v10.html at the root of this distribution.+;   By using this software in any fashion, you are agreeing to be bound by+;   the terms of this license.+;   You must not remove this notice, or any other, from this software.++(ns cljs.analyzer+  #?(:clj  (:refer-clojure :exclude [macroexpand-1 ensure])+     :cljs (:refer-clojure :exclude [macroexpand-1 ns-interns ensure js-reserved]))+  #?(:cljs (:require-macros+             [cljs.analyzer.macros+              :refer [no-warn wrapping-errors+                      disallowing-recur allowing-redef]]+             [cljs.env.macros :refer [ensure]]))+  #?(:clj (:require [cljs.util :as util :refer [ns->relpath topo-sort]]+                    [clojure.java.io :as io]+                    [clojure.string :as string]+                    [clojure.set :as set]+                    [cljs.env :as env :refer [ensure]]+                    [cljs.js-deps :as deps]+                    [cljs.tagged-literals :as tags]+                    [clojure.tools.reader :as reader]+                    [clojure.tools.reader.reader-types :as readers]+                    [clojure.edn :as edn])+     :cljs (:require [goog.string :as gstring]+                     [clojure.string :as string]+                     [clojure.set :as set]+                     [cljs.env :as env]+                     [cljs.tagged-literals :as tags]+                     [cljs.tools.reader :as reader]+                     [cljs.tools.reader.reader-types :as readers]+                     [cljs.reader :as edn]))+  #?(:clj (:import [java.io File Reader PushbackReader]+                   [java.net URL]+                   [clojure.lang Namespace Var LazySeq]+                   [cljs.tagged_literals JSValue])))++#?(:clj (set! *warn-on-reflection* true))++(def ^:dynamic *cljs-ns* 'cljs.user)+(def ^:dynamic *cljs-file* nil)+#?(:clj (def ^:dynamic *unchecked-if* (atom false)))+(def ^:dynamic *cljs-static-fns* false)+(def ^:dynamic *cljs-macros-path* "/cljs/core")+(def ^:dynamic *cljs-macros-is-classpath* true)+(def ^:dynamic *cljs-dep-set* (with-meta #{} {:dep-path []}))+(def ^:dynamic *analyze-deps* true)+(def ^:dynamic *load-tests* true)+(def ^:dynamic *load-macros* true)+(def ^:dynamic *reload-macros* false)+(def ^:dynamic *macro-infer* true)++(def ^:dynamic *file-defs* nil)++;; log compiler activities+(def ^:dynamic *verbose* false)++(def -cljs-macros-loaded (atom false))++(def ^:dynamic *cljs-warnings*+  {:preamble-missing true+   :unprovided true+   :undeclared-var true+   :undeclared-ns true+   :undeclared-ns-form true+   :redef true+   :redef-in-file true+   :dynamic true+   :fn-var true+   :fn-arity true+   :fn-deprecated true+   :protocol-deprecated true+   :undeclared-protocol-symbol true+   :invalid-protocol-symbol true+   :multiple-variadic-overloads true+   :variadic-max-arity true+   :overload-arity true+   :extending-base-js-type true+   :invoke-ctor true+   :invalid-arithmetic true+   :protocol-invalid-method true+   :protocol-duped-method true+   :protocol-multiple-impls true+   :protocol-with-variadic-method true+   :single-segment-namespace true+   :munged-namespace true+   :ns-var-clash true+   :extend-type-invalid-method-shape true+   :unsupported-js-module-type true+   :unsupported-preprocess-value true})++(def js-reserved+  #{"arguments" "abstract" "boolean" "break" "byte" "case"+    "catch" "char" "class" "const" "continue"

Show all 2865 lines

nvim/pack/plugins/opt/parinfer-rust/benches/perf/really_long_file_with_unclosed_paren added (view file)

@@ -0,0 +1,2864 @@+;; Parinfer NOTE: this is just a large file taken from ClojureScript+;; which we use to test the speed of Parinfer.++;   Copyright (c) Rich Hickey. All rights reserved.+;   The use and distribution terms for this software are covered by the+;   Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)+;   which can be found in the file epl-v10.html at the root of this distribution.+;   By using this software in any fashion, you are agreeing to be bound by+;   the terms of this license.+;   You must not remove this notice, or any other, from this software.++(ns cljs.analyzer+  #?(:clj  (:refer-clojure :exclude [macroexpand-1 ensure])+     :cljs (:refer-clojure :exclude [macroexpand-1 ns-interns ensure js-reserved]))+  #?(:cljs (:require-macros+             [cljs.analyzer.macros+              :refer [no-warn wrapping-errors+                      disallowing-recur allowing-redef]]+             [cljs.env.macros :refer [ensure]]))+  #?(:clj (:require [cljs.util :as util :refer [ns->relpath topo-sort]]+                    [clojure.java.io :as io]+                    [clojure.string :as string]+                    [clojure.set :as set]+                    [cljs.env :as env :refer [ensure]]+                    [cljs.js-deps :as deps]+                    [cljs.tagged-literals :as tags]+                    [clojure.tools.reader :as reader]+                    [clojure.tools.reader.reader-types :as readers]+                    [clojure.edn :as edn])+     :cljs (:require [goog.string :as gstring]+                     [clojure.string :as string]+                     [clojure.set :as set]+                     [cljs.env :as env]+                     [cljs.tagged-literals :as tags]+                     [cljs.tools.reader :as reader]+                     [cljs.tools.reader.reader-types :as readers]+                     [cljs.reader :as edn]))+  #?(:clj (:import [java.io File Reader PushbackReader]+                   [java.net URL]+                   [clojure.lang Namespace Var LazySeq]+                   [cljs.tagged_literals JSValue])))++#?(:clj (set! *warn-on-reflection* true))++(def ^:dynamic *cljs-ns* 'cljs.user)+(def ^:dynamic *cljs-file* nil)+#?(:clj (def ^:dynamic *unchecked-if* (atom false)))+(def ^:dynamic *cljs-static-fns* false)+(def ^:dynamic *cljs-macros-path* "/cljs/core")+(def ^:dynamic *cljs-macros-is-classpath* true)+(def ^:dynamic *cljs-dep-set* (with-meta #{} {:dep-path []}))+(def ^:dynamic *analyze-deps* true)+(def ^:dynamic *load-tests* true)+(def ^:dynamic *load-macros* true)+(def ^:dynamic *reload-macros* false)+(def ^:dynamic *macro-infer* true)++(def ^:dynamic *file-defs* nil)++;; log compiler activities+(def ^:dynamic *verbose* false)++(def -cljs-macros-loaded (atom false))++(def ^:dynamic *cljs-warnings*+  {:preamble-missing true+   :unprovided true+   :undeclared-var true+   :undeclared-ns true+   :undeclared-ns-form true+   :redef true+   :redef-in-file true+   :dynamic true+   :fn-var true+   :fn-arity true+   :fn-deprecated true+   :protocol-deprecated true+   :undeclared-protocol-symbol true+   :invalid-protocol-symbol true+   :multiple-variadic-overloads true+   :variadic-max-arity true+   :overload-arity true+   :extending-base-js-type true+   :invoke-ctor true+   :invalid-arithmetic true+   :protocol-invalid-method true+   :protocol-duped-method true+   :protocol-multiple-impls true+   :protocol-with-variadic-method true+   :single-segment-namespace true+   :munged-namespace true+   :ns-var-clash true+   :extend-type-invalid-method-shape true+   :unsupported-js-module-type true+   :unsupported-preprocess-value true})++(def js-reserved+  #{"arguments" "abstract" "boolean" "break" "byte" "case"+    "catch" "char" "class" "const" "continue"

Show all 2865 lines

nvim/pack/plugins/opt/parinfer-rust/benches/perf/really_long_file_with_unclosed_quote added (view file)

@@ -0,0 +1,2864 @@+;; Parinfer NOTE: this is just a large file taken from ClojureScript+;; which we use to test the speed of Parinfer.++;   Copyright (c) Rich Hickey. All rights reserved.+;   The use and distribution terms for this software are covered by the+;   Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)+;   which can be found in the file epl-v10.html at the root of this distribution.+;   By using this software in any fashion, you are agreeing to be bound by+;   the terms of this license.+;   You must not remove this notice, or any other, from this software.++(ns cljs.analyzer+  #?(:clj  (:refer-clojure :exclude [macroexpand-1 ensure])+     :cljs (:refer-clojure :exclude [macroexpand-1 ns-interns ensure js-reserved]))+  #?(:cljs (:require-macros+             [cljs.analyzer.macros+              :refer [no-warn wrapping-errors+                      disallowing-recur allowing-redef]]+             [cljs.env.macros :refer [ensure]]))+  #?(:clj (:require [cljs.util :as util :refer [ns->relpath topo-sort]]+                    [clojure.java.io :as io]+                    [clojure.string :as string]+                    [clojure.set :as set]+                    [cljs.env :as env :refer [ensure]]+                    [cljs.js-deps :as deps]+                    [cljs.tagged-literals :as tags]+                    [clojure.tools.reader :as reader]+                    [clojure.tools.reader.reader-types :as readers]+                    [clojure.edn :as edn])+     :cljs (:require [goog.string :as gstring]+                     [clojure.string :as string]+                     [clojure.set :as set]+                     [cljs.env :as env]+                     [cljs.tagged-literals :as tags]+                     [cljs.tools.reader :as reader]+                     [cljs.tools.reader.reader-types :as readers]+                     [cljs.reader :as edn]))+  #?(:clj (:import [java.io File Reader PushbackReader]+                   [java.net URL]+                   [clojure.lang Namespace Var LazySeq]+                   [cljs.tagged_literals JSValue])))++#?(:clj (set! *warn-on-reflection* true))++(def ^:dynamic *cljs-ns* 'cljs.user)+(def ^:dynamic *cljs-file* nil)+#?(:clj (def ^:dynamic *unchecked-if* (atom false)))+(def ^:dynamic *cljs-static-fns* false)+(def ^:dynamic *cljs-macros-path* "/cljs/core")+(def ^:dynamic *cljs-macros-is-classpath* true)+(def ^:dynamic *cljs-dep-set* (with-meta #{} {:dep-path []}))+(def ^:dynamic *analyze-deps* true)+(def ^:dynamic *load-tests* true)+(def ^:dynamic *load-macros* true)+(def ^:dynamic *reload-macros* false)+(def ^:dynamic *macro-infer* true)++(def ^:dynamic *file-defs* nil)++;; log compiler activities+(def ^:dynamic *verbose* false)++(def -cljs-macros-loaded (atom false))++(def ^:dynamic *cljs-warnings*+  {:preamble-missing true+   :unprovided true+   :undeclared-var true+   :undeclared-ns true+   :undeclared-ns-form true+   :redef true+   :redef-in-file true+   :dynamic true+   :fn-var true+   :fn-arity true+   :fn-deprecated true+   :protocol-deprecated true+   :undeclared-protocol-symbol true+   :invalid-protocol-symbol true+   :multiple-variadic-overloads true+   :variadic-max-arity true+   :overload-arity true+   :extending-base-js-type true+   :invoke-ctor true+   :invalid-arithmetic true+   :protocol-invalid-method true+   :protocol-duped-method true+   :protocol-multiple-impls true+   :protocol-with-variadic-method true+   :single-segment-namespace true+   :munged-namespace true+   :ns-var-clash true+   :extend-type-invalid-method-shape true+   :unsupported-js-module-type true+   :unsupported-preprocess-value true})++(def js-reserved+  #{"arguments" "abstract" "boolean" "break" "byte" "case"+    "catch" "char" "class" "const" "continue"

Show all 2865 lines

nvim/pack/plugins/opt/parinfer-rust/derivation.nix added (view file)

@@ -0,0 +1,38 @@+{ lib, stdenv, libiconv, rustPlatform, fetchFromGitHub, llvmPackages }:++rustPlatform.buildRustPackage rec {+  name = "parinfer-rust-${version}";+  version = "0.5.0";++  src = ./.;+  cargoLock = {+    lockFile = ./Cargo.lock;+  };++  nativeBuildInputs = [+    llvmPackages.libclang+    llvmPackages.clang+    libiconv

Show all 39 lines

nvim/pack/plugins/opt/parinfer-rust/dist/parinfer_rust.js added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/dist/parinfer_rust.wasm added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/dist/wrapper.js added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/doc/parinfer.txt added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/extra-docs/MacOS-Code-Signing.adoc added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/flake.lock added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/flake.nix added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/package.json added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/plugin/parinfer.vim added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/rc/parinfer.kak added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/script/release added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/c_wrapper.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/changes.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/cli_options.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/common_wrapper.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/emacs_wrapper.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/kakoune.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/lib.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/main.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/parinfer.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/types.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/wasm_wrapper.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/webcore/runtime.js added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/src/webcore/runtime_wasm.js added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/static/index.html added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/cases.rs added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/cases/indent-mode.json added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/cases/paren-mode.json added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/cases/smart-mode.json added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/insert/cmd added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/insert/in added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/insert/out added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/janet/cmd added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/janet/in added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/janet/out added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/open-bracket/cmd added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/open-bracket/in added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/open-bracket/out added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/open-bracket/selections added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/picolisp/cmd added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/picolisp/in added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/picolisp/out added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/run.sh added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/select-word/cmd added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/select-word/in added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/kakoune/select-word/selections added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/vim/run.vim added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/vim/tests-cases.md added (view file)

Show diff

nvim/pack/plugins/opt/parinfer-rust/tests/vim/vimrc added (view file)

Show diff