e6dd500
Branches > main > e6dd500 > files
Add conjure to plugins
Commit: e6dd5008f58fb870a1ece252ba5cd7d990f5a421
Parent: 53d95ad
410 changed files:
nvim/pack/plugins/opt/conjure/.dockerignore view file
@@ -0,0 +1,4 @@+.git/+.lsp/+.clj-kondo/+.cpcache/nvim/pack/plugins/opt/conjure/.fs.test view file
@@ -0,0 +1 @@+This is here to test some filesystem related things.nvim/pack/plugins/opt/conjure/.gitattributes view file
@@ -0,0 +1,3 @@+lua/**/*.lua linguist-generated+lua/conjure/aniseed linguist-vendored+dev/* -linguist-detectablenvim/pack/plugins/opt/conjure/.github/CODE_OF_CONDUCT.md view file
@@ -0,0 +1,128 @@+# Contributor Covenant Code of Conduct++## Our Pledge++We as members, contributors, and leaders pledge to make participation in our+community a harassment-free experience for everyone, regardless of age, body+size, visible or invisible disability, ethnicity, sex characteristics, gender+identity and expression, level of experience, education, socio-economic status,+nationality, personal appearance, race, religion, or sexual identity+and orientation.++We pledge to act and interact in ways that contribute to an open, welcoming,+diverse, inclusive, and healthy community.++## Our Standards++Examples of behavior that contributes to a positive environment for our+community include:++* Demonstrating empathy and kindness toward other people+* Being respectful of differing opinions, viewpoints, and experiences+* Giving and gracefully accepting constructive feedback+* Accepting responsibility and apologizing to those affected by our mistakes,+ and learning from the experience+* Focusing on what is best not just for us as individuals, but for the+ overall community++Examples of unacceptable behavior include:++* The use of sexualized language or imagery, and sexual attention or+ advances of any kind+* Trolling, insulting or derogatory comments, and personal or political attacks+* Public or private harassment+* Publishing others' private information, such as a physical or email+ address, without their explicit permission+* Other conduct which could reasonably be considered inappropriate in a+ professional setting++## Enforcement Responsibilities++Community leaders are responsible for clarifying and enforcing our standards of+acceptable behavior and will take appropriate and fair corrective action in+response to any behavior that they deem inappropriate, threatening, offensive,+or harmful.++Community leaders have the right and responsibility to remove, edit, or reject+comments, commits, code, wiki edits, issues, and other contributions that are+not aligned to this Code of Conduct, and will communicate reasons for moderation+decisions when appropriate.++## Scope++This Code of Conduct applies within all community spaces, and also applies when+an individual is officially representing the community in public spaces.+Examples of representing our community include using an official e-mail address,+posting via an official social media account, or acting as an appointed+representative at an online or offline event.++## Enforcement++Instances of abusive, harassing, or otherwise unacceptable behavior may be+reported to the community leaders responsible for enforcement at+ollie@oli.me.uk.+All complaints will be reviewed and investigated promptly and fairly.++All community leaders are obligated to respect the privacy and security of the+reporter of any incident.++## Enforcement Guidelines++Community leaders will follow these Community Impact Guidelines in determining+the consequences for any action they deem in violation of this Code of Conduct:++### 1. Correction++**Community Impact**: Use of inappropriate language or other behavior deemed+unprofessional or unwelcome in the community.++**Consequence**: A private, written warning from community leaders, providing+clarity around the nature of the violation and an explanation of why the+behavior was inappropriate. A public apology may be requested.++### 2. Warning++**Community Impact**: A violation through a single incident or series+of actions.++**Consequence**: A warning with consequences for continued behavior. No+interaction with the people involved, including unsolicited interaction with+those enforcing the Code of Conduct, for a specified period of time. This+includes avoiding interactions in community spaces as well as external channels+like social media. Violating these terms may lead to a temporary or+permanent ban.++### 3. Temporary Ban++**Community Impact**: A serious violation of community standards, including+sustained inappropriate behavior.+nvim/pack/plugins/opt/conjure/.github/FUNDING.yml view file
@@ -0,0 +1,2 @@+github: Olical+ko_fi: olicalnvim/pack/plugins/opt/conjure/.github/workflows/benchmark.yaml view file
@@ -0,0 +1,24 @@+name: Benchmark++on: [push, pull_request]++jobs:+ benchmark:+ strategy:+ matrix:+ os: [ubuntu-latest]+ neovim-version: ["v0.11.3"]++ runs-on: ${{ matrix.os }}++ steps:+ - uses: actions/checkout@v4++ - name: Mise+ uses: jdx/mise-action@v2++ - name: Benchmark+ env:+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}+ run: |+ mise run -t neovim@${{ matrix.neovim-version }} benchmarknvim/pack/plugins/opt/conjure/.github/workflows/luarocks.yml view file
@@ -0,0 +1,28 @@+---+name: Push to Luarocks++on:+ push:+ tags:+ - "*"+ release:+ types:+ - created+ pull_request: # Test the workflow on PR without publishing+ workflow_dispatch:++jobs:+ luarocks-upload:+ runs-on: ubuntu-22.04+ steps:+ - uses: actions/checkout@v4+ with:+ fetch-depth: 0 # Required to count the commits+ - name: Get Version+ run: echo "LUAROCKS_VERSION=$(git describe --abbrev=0 --tags)" >> $GITHUB_ENV+ - name: LuaRocks Upload+ uses: nvim-neorocks/luarocks-tag-release@v7+ env:+ LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }}+ with:+ version: ${{ env.LUAROCKS_VERSION }}nvim/pack/plugins/opt/conjure/.github/workflows/test.yaml view file
@@ -0,0 +1,34 @@+name: Test++on: [push, pull_request]++jobs:+ test:+ strategy:+ matrix:+ # TODO: Get windows-latest working.+ # Currently errors with: ln: failed to create symbolic link '.test/nvim/pack/main/start/conjure' -> '../../../../../': File name too long+ os: [ubuntu-latest, macOS-latest]+ neovim-version: ["0.10.4", "0.11.3"]++ runs-on: ${{ matrix.os }}++ steps:+ - uses: actions/checkout@v4++ - name: Mise+ uses: jdx/mise-action@v2++ - name: Cache+ uses: actions/cache@v4+ with:+ path: |+ .test/nvim/pack+ key: conjure-${{ hashFiles('scripts/setup-test-deps') }}+ restore-keys: conjure-++ - name: Test+ env:+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}+ run: |+ mise run -t neovim@${{ matrix.neovim-version }} testnvim/pack/plugins/opt/conjure/.gitignore view file
@@ -0,0 +1,16 @@+/.clj-kondo/+/.lnvim.lua+/test/lua/+/.cpcache/+/.cljs_node_repl/+/.nrepl-port+/doc/tags+/.shadow-cljs/+/node_modules/+/dev/clojure/public/+__pycache__/+/target/+/.lein-repl-history+/.direnv+.test/+.DS_Storenvim/pack/plugins/opt/conjure/.ignore view file
@@ -0,0 +1 @@+lua/**/*.luanvim/pack/plugins/opt/conjure/.nfnl.fnl view file
@@ -0,0 +1,9 @@+(local core (require :conjure.nfnl.core))+(local config (require :conjure.nfnl.config))+(local defaults (config.default))++{:compiler-options (core.merge+ defaults.compiler-options+ {:compilerEnv _G})+ :source-file-patterns [".nvim.fnl" "plugin/*.fnl" "fnl/**/*.fnl"]+ :orphan-detection {:ignore-patterns ["lua/conjure/nfnl/"]}}nvim/pack/plugins/opt/conjure/.nvim.fnl view file
@@ -0,0 +1,41 @@+(local {: autoload} (require :nfnl.module))+(local reload (autoload :plenary.reload))+(local notify (autoload :nfnl.notify))++; (vim.api.nvim_set_keymap+; :n "<localleader>pt" "<Plug>PlenaryTestFile" {:desc "Run the current test file with plenary."})+;+; (vim.api.nvim_set_keymap+; :n "<localleader>pT" "<cmd>PlenaryBustedDirectory lua/conjure-spec/<cr>" {:desc "Run all tests with plenary."})+;+; (vim.api.nvim_set_keymap+; :n "<localleader>pr" ""+; {:desc "Reload the conjure modules."+; :callback (fn []+; (notify.info "Reloading...")+; (reload.reload_module "conjure")+; (require :conjure.main)+; (notify.info "Done!"))})++; (set vim.g.conjure#mapping#enable_defaults false)+; (set vim.g.conjure#extract#tree_sitter#enabled true)+; (set vim.g.conjure#client#racket#stdio#auto_enter false)+; (set vim.g.conjure#client#clojure#nrepl#test#runner "kaocha")+; (set vim.g.conjure#client#clojure#nrepl#test#pretty_print_test_failures false)+; (set vim.g.conjure#filetype#fennel "conjure.client.fennel.nfnl")+; (set vim.g.conjure#filetype#scheme "conjure.client.snd-s7.stdio")+; (set vim.g.conjure#debug true)++(set vim.g.conjure#client#scheme#stdio#command "chicken-csi -:c")+(set vim.g.conjure#client#scheme#stdio#prompt_pattern "\n-#;%d-> ")+(set vim.g.conjure#client#scheme#stdio#value_prefix_pattern false)++; (set vim.g.conjure#filetype#scheme "conjure.client.guile.socket")+; (set vim.g.conjure#client#guile#socket#pipename "dev/guile/guile-repl.socket")++; (set vim.g.conjure#client#python#stdio#command "ipython --classic")+;+; (set vim.g.conjure#client#clojure#nrepl#refresh#backend "clj-reload")++(set package.path (.. package.path ";test/lua/?.lua"))+; (set vim.g.conjure#eval#gsubs {:do-comment ["^%(comment[%s%c]" "(do "]})nvim/pack/plugins/opt/conjure/.nvim.lua view file
@@ -0,0 +1,10 @@+-- [nfnl] .nvim.fnl+local _local_1_ = require("nfnl.module")+local autoload = _local_1_.autoload+local reload = autoload("plenary.reload")+local notify = autoload("nfnl.notify")+vim.g["conjure#client#scheme#stdio#command"] = "chicken-csi -:c"+vim.g["conjure#client#scheme#stdio#prompt_pattern"] = "\n-#;%d-> "+vim.g["conjure#client#scheme#stdio#value_prefix_pattern"] = false+package.path = (package.path .. ";test/lua/?.lua")+return nilnvim/pack/plugins/opt/conjure/CONTRIBUTING.md view file
@@ -0,0 +1,21 @@+# Contributing to Conjure++Conjure is a [Neovim](https://neovim.io) specific Lua plugin written in [Fennel](https://fennel-lang.org/) and compiled to Lua by [nfnl](https://github.com/Olical/nfnl). You will need the nfnl plugin installed to work on Conjure. Don't fear, nfnl is designed to only load and operate on projects already configured to rely on it. So if there's no configuration file it's completely inert, it will only activate when you work on Conjure or other projects built with nfnl.++It's developed using itself which leads to an extremely tight feedback loop. This makes it easier to move fast without breaking things.++Now you can open up Conjure's source files (ending in `.fnl`) and evaluate them as you would any other language with Conjure, see `:help conjure`.++Your changes and evaluations through Conjure only apply to the in memory copy of Conjure. When you write a `.fnl` file with nfnl installed however your Fennel will be compiled to a static `.lua` file automatically. Make sure you commit both your Fennel _and_ Lua file changes!++Once you're happy with your changes, you can (maybe) write some tests and execute them with `make test`. CircleCI will also run them for you.++You can run `scripts/docker.sh` to drop into a fresh Ubuntu based Neovim environment with Conjure pre-installed from your working directory. This can be used to verify your changes in a clean room environment.++## Branches++Contrary to old versions of Conjure, we now simply work on branches that target the `main` branch, I no longer use the `develop` staging branch and we can consider that obsolete just like the `master` branch.++## Still unsure?++If you'd like to contribute or are having issues please don't hesitate to get in touch with me through GitHub discussions and issues. You can also find some ways to contact me privately on my personal site, [oli.me.uk](https://oli.me.uk).nvim/pack/plugins/opt/conjure/Dockerfile view file
@@ -0,0 +1,13 @@+FROM ubuntu:24.04++RUN apt-get update+RUN apt-get upgrade -y+RUN apt-get install -y neovim++# JavaScript/TypeScript dependencies+# RUN apt-get install -y nodejs+# RUN apt-get install -y npm+# RUN npm install -g typescript+# RUN npm install -g ts-node++CMD nvimnvim/pack/plugins/opt/conjure/README.adoc view file
@@ -0,0 +1,205 @@++++++<p align="center"><a href="https://www.etsy.com/uk/shop/MysticalScribbles?ref=profile_header"><img src="https://conjure.oli.me.uk/images/lillian.png"/></a></p>+++++++== https://oli.me.uk/Blog+archive/2020/Conversational+software+development[Conversational software development] for https://neovim.io[Neovim] +++https://discord.gg/wXAMr8F[image:https://img.shields.io/discord/732957595249410108.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2[Discord]]++Conjure is an interactive environment for evaluating code within your running program.++The core features of Conjure are language agnostic (although it's targeted at Lisps _for now_), with each language client providing their own extra tools. Here's the currently supported languages, contributions and 3rd party plugins that add clients are highly encouraged! You can find a https://github.com/Olical/conjure/wiki/Client-features[comparison table for all clients and supported features] in the wiki.++ * https://clojure.org/[Clojure] over https://nrepl.org/[nREPL] (https://github.com/Olical/conjure/wiki/Quick-start:-Clojure[quickstart])+ ** https://github.com/borkdude/babashka[Babashka] (https://github.com/Olical/conjure/wiki/Quick-start:-Clojure-(babashka)[quickstart])+ ** https://github.com/basilisp-lang/basilisp[Basilisp] (https://github.com/Olical/conjure/wiki/Quick-start:-Clojure-(basilisp)[quickstart])+ * https://fennel-lang.org/[Fennel] inside Neovim via Lua and https://github.com/Olical/nfnl[nfnl] (https://github.com/Olical/conjure/wiki/Quick-start:-Fennel-(nfnl)[quickstart])+ * https://fennel-lang.org[Fennel] outside of Neovim within any Lua process through an stdio REPL (https://github.com/Olical/conjure/wiki/Quick-start:-Fennel-(stdio)[quickstart])+ * https://janet-lang.org/[Janet] over https://github.com/janet-lang/spork/#networked-repl[spork/netrepl] (https://github.com/Olical/conjure/wiki/Quick-start:-Janet-(netrepl)[quickstart])+ * https://janet-lang.org/[Janet] over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Janet-(stdio)[quickstart])+ * https://racket-lang.org/[Racket] over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Racket-(stdio)[quickstart])+ * https://docs.hylang.org[Hy] over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Hy-(stdio)[quickstart])+ * https://www.gnu.org/software/mit-scheme/[Scheme] (MIT by default) over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Scheme-(stdio)[quickstart])+ * https://www.gnu.org/software/guile/[Guile] over a socket file (https://github.com/Olical/conjure/wiki/Quick-start:-Guile-(socket)[quickstart])+ * https://lisp-lang.org/[Common Lisp] over https://www.cliki.net/SWANK[Swank] (https://github.com/Olical/conjure/wiki/Quick-start:-Common-Lisp-(Swank)[quickstart])+ * https://julialang.org/[Julia] over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Julia-(stdio)[quickstart])+ * https://www.rust-lang.org/[Rust] over stdio with https://github.com/google/evcxr[evcxr] (https://github.com/Olical/conjure/wiki/Quick-start:-Rust-(evcxr)[quickstart])+ * https://www.lua.org/[Lua] inside Neovim (https://github.com/Olical/conjure/wiki/Quick-start:-Lua-(neovim)[quickstart])+ * https://www.python.org/[Python] over stdio (https://github.com/Olical/conjure/wiki/Quick-start:-Python-(stdio)[quickstart])+ * https://php.net[PHP] over stdio with https://github.com/bobthecow/psysh[psysh] (https://github.com/bobthecow/psysh/wiki/Usage[usage])+ * https://www.r-project.org/[R] over stdio.+ * JavaScript (using https://nodejs.org/[Node.js]) over stdio+ * https://ccrma.stanford.edu/software/snd/[Snd] / https://ccrma.stanford.edu/software/snd/snd/s7.html[s7] (sound editor scriptable with Scheme) over stdio+ * https://en.wikipedia.org/wiki/SQL[SQL] (PostgreSQL psql by default) over stdio+ * https://www.ruby-lang.org/en/[Ruby] (using https://ruby.github.io/irb/[irb]) over stdio+ * https://elixir-lang.org/[Elixir] over stdio++You can learn more about the mappings and configuration inside Neovim with `:help conjure`. Each language client also has it's own specific help text under `:help conjure-client-{LANGUAGE}-{TRANSPORT}`, such as `:help conjure-client-clojure-nrepl`, which contains specific mappings and configuration for that client.++You can also get an interactive guide to the core principals and mappings by executing `:ConjureSchool` or by using the "try before you install" script as described further down this page.++== User experience++What does wielding Conjure actually look like? What can you do with it?++ * YouTube: https://youtu.be/ZSwbiZhvMdQ[How I use Conjure and Neovim to interact with Clojure (and more!)]+ * Asciinema (see below)++https://asciinema.org/a/325517[image:https://asciinema.org/a/325517.svg[asciicast]]++ * Open a file of a supported file type such as `clojure` or `racket`.+ * Some languages, such as Clojure, will automatically connect to your REPL or give you the commands and mappings to do so yourself.+ * Use various mappings to execute the code you're interested in such as the current form, file, buffer or even form at a Neovim mark.+ * Every result is kept in a log buffer that you can access at any time.+ * Support for multiple asynchronous autocompletion frameworks, with https://github.com/Shougo/deoplete.nvim/[deoplete] built in (`<C-x><C-o>` also works!).+ ** You can also use https://github.com/hrsh7th/nvim-cmp[nvim-cmp] with https://github.com/PaterJason/cmp-conjure[cmp-conjure]. (which I actually recommend!)++Conjure allows you to send the right part of your code off for evaluation, see the results, wrap the results in more code and evaluate that. It keeps a log of your actions and results so you don't have to remember them, that context is extremely helpful when you're down the rabbit hole of a bug hunt.++Evaluating a form under your cursor is as simple as `<prefix>ee`, where `<prefix>` defaults to `<localleader>`. Be sure to set your your `<localleader>` key or configure Conjure to use a different mapping prefix, see `:h maplocalleader` and `:h g:conjure#mapping#prefix` for more information.++The goal is to give you a tool that lets you effortlessly run whatever you need to while keeping out of your way (but there with context and more information if you need it).++Once installed you can run `:ConjureSchool` to begin an interactive tutorial.++== Try without installing++You can trial run Conjure with the interactive `:ConjureSchool` tutorial without actually installing it! The only prerequisites are `curl` and an up to date `nvim`.++[source,bash]+----+curl -fL conjure.oli.me.uk/school | sh+----++This will temporarily download the plugin, launch Neovim with `:ConjureSchool` running and then clean up after itself. You get to try out what Conjure has to offer without having to edit your Neovim configuration.++== Installation++Requires Neovim 0.10 or newer.++Alternatively you can use https://github.com/Olical/magic-kit[Magic Kit], an opinionated starter kit that includes all sorts of essential tools.++=== https://github.com/wbthomason/packer.nvim[packer.nvim]++[source,lua]+----+use 'Olical/conjure'+----++=== https://github.com/junegunn/vim-plug[vim-plug]++[source,viml]+----+Plug 'Olical/conjure'+----++=== https://github.com/folke/lazy.nvim[lazy.nvim]++[source,lua]+----nvim/pack/plugins/opt/conjure/UNLICENSE view file
@@ -0,0 +1,25 @@+This is free and unencumbered software released into the public domain.++Anyone is free to copy, modify, publish, use, compile, sell, or+distribute this software, either in source code form or as a compiled+binary, for any purpose, commercial or non-commercial, and by any+means.++In jurisdictions that recognize copyright laws, the author or authors+of this software dedicate any and all copyright interest in the+software to the public domain. We make this dedication for the benefit+of the public at large and to the detriment of our heirs and+successors. We intend this dedication to be an overt act of+relinquishment in perpetuity of all present and future rights to this+software under copyright law.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR+OTHER DEALINGS IN THE SOFTWARE.++For more information, please refer to <http://unlicense.org>+nvim/pack/plugins/opt/conjure/deps.edn view file
@@ -0,0 +1,24 @@+{:paths ["dev/clojure/src"]++ :deps+ {org.clojure/clojure {:mvn/version "1.11.3"}+ org.clojure/tools.logging {:mvn/version "1.1.0"}+ lambdaisland/kaocha {:mvn/version "1.66.1034"}+ nubank/matcher-combinators {:mvn/version "3.9.1"}}++ :aliases+ {:nrepl+ {:extra-deps+ {nrepl/nrepl {:mvn/version "1.4.0"}}}++ :cider+ {:extra-deps+ {cider/cider-nrepl {:mvn/version "0.57.0"}}}++ :cljs+ {:extra-deps+ {org.clojure/clojurescript {:mvn/version "1.11.4"}}}++ :piggieback+ {:extra-deps+ {cider/piggieback {:mvn/version "0.5.3"}}}}}nvim/pack/plugins/opt/conjure/dev/R/sandbox.R view file
@@ -0,0 +1,71 @@+# The iris dataset is built into R and contains measurements of iris flowers+data(iris)++a <- 2++b <- 5++a + b++iris$Sepal.Width * (b + a)++# Display the structure and summary of the dataset+iris+str(iris)+summary(iris)++# Basic scatter plot using base R+plot(iris$Sepal.Length, iris$Sepal.Width,+ main = "Sepal Dimensions of Iris Flowers",+ xlab = "Sepal Length (cm)",+ ylab = "Sepal Width (cm)",+ col = 5 + as.numeric(iris$Species),+ pch = 19+)++legend("topright",+ legend = levels(iris$Species),+ col = 6:8, pch = 19, title = "Species"+)++analyze_numbers <- function(numbers) {+ if (!is.numeric(numbers) || length(numbers) == 0) {+ stop("Input must be a non-empty numeric vector")+ }++ total <- sum(numbers)+ avg <- mean(numbers)+ med <- median(numbers)+ std_dev <- sd(numbers)++ list(+ count = length(numbers),+ sum = total,+ mean = avg,+ median = med,+ std_dev = std_dev,+ min = min(numbers),+ max = max(numbers),+ summary = paste(+ "Analyzed", length(numbers), "numbers with mean", round(avg, 2)+ )+ )+}++test_data <- c(1, 5, 3, 9, 2, 7, 4, 6, 8)++mean(test_data)++result <- analyze_numbers(test_data)++cat("Summary:", result$summary, "\n")++# error handling+tryCatch(+ {+ analyze_numbers(c()) # Empty vector should cause error+ },+ error = function(e) {+ cat("Caught expected error:", e$message, "\n")+ }+)nvim/pack/plugins/opt/conjure/dev/clojure/nrepl-babashka.sh view file
@@ -0,0 +1,4 @@+#!/usr/bin/env bash++echo "5678" > .nrepl-port+bb --nrepl-server 5678nvim/pack/plugins/opt/conjure/dev/clojure/nrepl-base.sh view file
@@ -0,0 +1,5 @@+#!/usr/bin/env bash++clj -A:nrepl \+ -m nrepl.cmdline \+ --interactivenvim/pack/plugins/opt/conjure/dev/clojure/nrepl-cider.sh view file
@@ -0,0 +1,7 @@+#!/usr/bin/env bash++clojure \+ -A:nrepl:cider \+ -m nrepl.cmdline \+ --middleware '["cider.nrepl/cider-middleware"]' \+ --interactivenvim/pack/plugins/opt/conjure/dev/clojure/nrepl-piggieback-cider.sh view file
@@ -0,0 +1,6 @@+#!/usr/bin/env bash++clj -A:nrepl:cljs:cider:piggieback \+ -m nrepl.cmdline \+ --middleware "[cider.nrepl/cider-middleware cider.piggieback/wrap-cljs-repl]" \+ --interactivenvim/pack/plugins/opt/conjure/dev/clojure/nrepl-shadow.sh view file
@@ -0,0 +1,3 @@+#!/usr/bin/env bash++npx shadow-cljs watch appnvim/pack/plugins/opt/conjure/dev/clojure/src/dev/append.clj view file
@@ -0,0 +1,4 @@+(ns dev.append)++(comment+ (spit "triforce.txt" "Clojure!\n" :append true))nvim/pack/plugins/opt/conjure/dev/clojure/src/dev/bar.clj view file
@@ -0,0 +1,6 @@+(ns dev.bar)++(defn xyz []+ (println "This is a Clojure file!"))++#_(xyz)nvim/pack/plugins/opt/conjure/dev/clojure/src/dev/bb-sandbox.clj view file
@@ -0,0 +1,7 @@+(ns bb-sandbox)++(def test-vector [1 2 3])+;; This should obviously work+(nth test-vector 2)+;; This should obviously not work+(nth test-vector 3)nvim/pack/plugins/opt/conjure/dev/clojure/src/dev/foo.cljs view file
@@ -0,0 +1,6 @@+(ns dev.foo)++(defn xyz []+ (println "This is a ClojureScript file!"))++#_(xyz)nvim/pack/plugins/opt/conjure/dev/clojure/src/dev/sandbox.cljc view file
@@ -0,0 +1,176 @@+(ns dev.sandbox+ "This is a namespace."+ (:require [clojure.test :as t]+ #?(:clj [clojure.tools.logging :as log])))++#_(require 'dev.foo) ; cljs+#_(require 'dev.bar) ; clj++#?(:clj (log/info "Logging!"))++:some-namespaced/keyword++(defn add+ "Hello, World!+ This is a function."+ [a b]+ (+ a b))++(add 1 2)++(rand-int 10)+(tap> 1)+(tap> 2)+(tap> 3)++(def some-state (atom 20))+@some-state++{:hello "world", :some "other", :stuff "that's", :pretty "printed", :more "stuff", :woo true}++^{:some-meta true}+{:a 1} ;; <-- no result when I set cursor here and call :ConjureEvalCurrentForm++^:some-meta {:a 10}++{:a 1} ;; <-- works fine I set cursor here and call :ConjureEvalCurrentForm++;; note that :ConjureEvalRootForm works fine++#{:a :b :c}+#?(:clj :hi-clojure :cljs :hi-cljs)+#(+ 1 %)+'(+ 10 20)+`(+ 10 20)+#_(+ 10 20)++(println "\033[0;31mHello, World!\033[0m")++{:xyz+ [(add 10 20)+ (add 1 2)]}++(println (apply str (take 2000 (repeat \x))))++(do+ (print (apply str (take 500 (repeat \x))))+ (println (apply str (take 300 (repeat \x)))))++(do+ (print "foo ")+ (print "bar ")+ (println "baz")+ (print "new line")+ (print " same!\n")+ (println " some indentation")+ (println "last on own"))++(comment+ (+ 5 1) (+ 10 20) :foo+ (+ 1 2))++; :let g:conjure#client#clojure#nrepl#refresh#after = "dev.sandbox/after-refresh"+(defn after-refresh []+ (println "All done!"))++{:foo {:bar {:baz {:quux [1 2 3]}}}}+(range 30)++(meta #'add)+(time (add 10 20))+(println "foo" #?(:clj :clojure! :cljs :clojurescript!))++*1 *2 *3 *e++(t/deftest test-a+ (t/testing "foo"+ (t/is (= 10 10))))++(t/deftest test-b+ (t/testing "bar"+ (t/is (= 10 10))))++(comment+ (require '[matcher-combinators.test])++ (t/deftest test-matching-with-explicit-matchers+ (t/is (match? [{:a 1} {:b 2}]+ [{:a 1 :c 2}]))))+nvim/pack/plugins/opt/conjure/dev/common-lisp/README.adoc view file
@@ -0,0 +1,18 @@+= Using Common Lisp with Conjure++Connecting Common Lisp to Conjure is an easy process if you have used swank, emacs, or quicklisp before. ++Firstly, set up Common Lisp and Quick Lisp as normal.++Open up the CL REPL in another terminal, then type the following code:++[source,lisp]+----+(ql:quickload :swank)+(swank:create-server :dont-close t)+----++You should now have a swank server started, listening on port `4005`. This is the default port that Conjure will use.++Now simply open up any `.lisp` file in Conjure, and it will automatically connect to swank.+nvim/pack/plugins/opt/conjure/dev/common-lisp/collider.lisp view file
@@ -0,0 +1,31 @@+(ql:quickload :cl-collider)++(in-package :sc-user)+(named-readtables:in-readtable :sc)++;; please check *sc-synth-program*, *sc-plugin-paths*, *sc-synthdefs-path*+;; if you have different path then set to+;;+;; (setf *sc-synth-program* "/path/to/scsynth")+;; (setf *sc-plugin-paths* (list "/path/to/plugin_path" "/path/to/extension_plugin_path"))+;; (setf *sc-synthdefs-path* "/path/to/synthdefs_path")++;; `*s*` defines the server for the entire session+;; functions may use it internally.++(setf *s* (make-external-server "localhost" :port 48800))+(server-boot *s*)++;; in Linux, maybe you need to call this function+#+linux+(jack-connect)++;; Hack music+(defvar *synth*)+(setf *synth* (play (sin-osc.ar [320 321] 0 .2)))++;; Stop music+(free *synth*)++;; Quit SuperCollider server+(server-quit *s*)nvim/pack/plugins/opt/conjure/dev/common-lisp/install-quicklisp.sh view file
@@ -0,0 +1,7 @@+#!/usr/bin/env bash++curl -o /tmp/ql.lisp http://beta.quicklisp.org/quicklisp.lisp+sbcl --no-sysinit --no-userinit --load /tmp/ql.lisp \+ --eval '(quicklisp-quickstart:install :path "~/.quicklisp")' \+ --eval '(ql:add-to-init-file)' \+ --quitnvim/pack/plugins/opt/conjure/dev/common-lisp/minimal.lisp view file
@@ -0,0 +1,7 @@+(defun coeff (term)+ (car term))++(defun degree (term)+ (cadr term))++(degree '(3 4))nvim/pack/plugins/opt/conjure/dev/common-lisp/ros-swank-server.sh view file
@@ -0,0 +1,3 @@+#!/usr/bin/env bash++ros run --eval '(ql:quickload :swank)' --eval '(swank:create-server :dont-close t)'nvim/pack/plugins/opt/conjure/dev/common-lisp/sandbox.lisp view file
@@ -0,0 +1,60 @@+;;;; Common Lisp Sandbox++;; Even when commented out, the defpackage form is searched for the package+;; name for this buffer by the Conjure Common Lisp client.+(defpackage :sandbox+ (:use :cl))++(in-package :sandbox)++*package*++;; We can call regular functions+(+ 1 2 3)++;; We can define functions+(defun some-function (a b c)+ "This is a function that prints the first var+ and adds the second two"+ (princ a)+ (+ b c))++;; Then we can call it: (press K for documentation+(some-function 1 2 3)++(reverse+ (list 1 2 3 "4" "5 6 7"))++;; you can of course, quote things out+(quote (list 1 2 3))++(print '(list 1 2 3))++;; and define and use macros++(defmacro do-primes ((var start end) &body body)+ (let ((ending-value-name (gensym)))+ `(do ((,var (next-prime ,start ) (next-prime (1+ ,var)))+ (,ending-value-name ,end))+ ((> ,var ,ending-value-name))+ ,@body)))++;; try this for macro expansion:+(macroexpand-1 '(do-primes (ending-value 0 10) (print ending-value)))++;; this will show up as an error,+(do-primes (p 0 10)+ (format t "~d " p))++;; until you define these functions: (Taken from Practical Common Lisp book)+(defun primep (number)+ (when (> number 1)+ (loop for fac from 2 to (isqrt number) never (zerop (mod number fac)))))++(defun next-prime (number)+ (loop for n from number when (primep n) return n))++;; Now, evaluating the do-primes form works.+(do-primes (p -1 10)+ (format t "~d " p))+nvim/pack/plugins/opt/conjure/dev/common-lisp/swank-server.sh view file
@@ -0,0 +1,4 @@+#!/usr/bin/env bash+++sbcl --eval "(ql:quickload :swank)" --eval "(swank:create-server :dont-close t)"nvim/pack/plugins/opt/conjure/dev/elixir/sandbox.ex view file
@@ -0,0 +1,428 @@+# Single line comments start with a number symbol.++# There's no multi-line comment,+# but you can stack multiple comments.++# To use the Elixir shell use the `iex` command.+# Compile your modules with the `elixirc` command.++# Both should be in your path if you installed Elixir correctly.++## ---------------------------+## -- Basic types+## ---------------------------++# There are numbers+3 # integer+0x1F # integer+3.0 # float++# Atoms are constants whose values are their own name. They start with `:`.+:hello # atom++# Tuples that are stored contiguously in memory.+{1,2,3} # tuple++# We can access a tuple element with the `elem` function:+elem({1, 2, 3}, 0) #=> 1++# Lists that are implemented as linked lists.+[1,2,3] # list++# We can access the head and tail of a list as follows:+[head | tail] = [1,2,3]+head #=> 1+tail #=> [2,3]++# In Elixir, just like in Erlang, the `=` denotes pattern matching and+# not an assignment.+#+# This means that the left-hand side (pattern) is matched against a+# right-hand side.+#+# This is how the above example of accessing the head and tail of a list works.++# A pattern match will error when the sides don't match, in this example+# the tuples have different sizes.+# {a, b, c} = {1, 2} #=> ** (MatchError) no match of right hand side value: {1,2}++# There are also binaries+<<1,2,3>> # binary++# Strings and char lists+"hello" # string+'hello' # char list++# Multi-line strings+"""+I'm a multi-line+string.+"""+#=> "I'm a multi-line\nstring.\n"++# Strings are all encoded in UTF-8:+"héllò" #=> "héllò"++# Strings are really just binaries, and char lists are just lists.+<<?a, ?b, ?c>> #=> "abc"+[?a, ?b, ?c] #=> 'abc'++# `?a` in Elixir returns the ASCII integer for the letter `a`+?a #=> 97++# To concatenate lists use `++`, for binaries use `<>`+[1,2,3] ++ [4,5] #=> [1,2,3,4,5]+'hello ' ++ 'world' #=> 'hello world'++<<1,2,3>> <> <<4,5>> #=> <<1,2,3,4,5>>+"hello " <> "world" #=> "hello world"++# Ranges are represented as `start..end` (both inclusive)+1..10 #=> 1..10+lower..upper = 1..10 # Can use pattern matching on ranges as well+[lower, upper] #=> [1, 10]++# Maps are key-value pairs+genders = %{"david" => "male", "gillian" => "female"}+genders["david"] #=> "male"++# Maps with atom keys can be used like this+genders = %{david: "male", gillian: "female"}+genders.gillian #=> "female"++## ---------------------------+## -- Operators+## ---------------------------++# Some math+1 + 1 #=> 2+10 - 5 #=> 5nvim/pack/plugins/opt/conjure/dev/fennel/.lnvim.fnl view file
@@ -0,0 +1,5 @@+(module conjure.dev.fennel+ {require {nvim conjure.aniseed.nvim}})++(set nvim.g.conjure#filetype#fennel :conjure.client.fennel.stdio)+(set nvim.g.conjure#debug false)nvim/pack/plugins/opt/conjure/dev/fennel/append.fnl view file
@@ -0,0 +1,4 @@+(module conjure.dev.append+ {require {a aniseed.core}})++(a.spit "triforce.txt" "Fennel! (running inside Neovim's LuaJIT)\n")nvim/pack/plugins/opt/conjure/dev/fennel/deps.sh view file
@@ -0,0 +1,4 @@+#!/usr/bin/env sh++luarocks install --local jeejah+luarocks install --local fennelnvim/pack/plugins/opt/conjure/dev/fennel/nrepl-jeejah.sh view file
@@ -0,0 +1,4 @@+#!/usr/bin/env sh++eval $(luarocks path)+jeejah --fennel --debugnvim/pack/plugins/opt/conjure/dev/fennel/sandbox.fnl view file
@@ -0,0 +1,8 @@+(fn add [a b]+ (+ a b))++(local foo "bar")+(print "Hello, World!")++(+ 1 2)+(add 10 20)nvim/pack/plugins/opt/conjure/dev/guile/.gitignore view file
@@ -0,0 +1,3 @@+*.socket+guile-ares-rs/+.nrepl-portnvim/pack/plugins/opt/conjure/dev/guile/.nvim.fnl view file
@@ -0,0 +1,2 @@+(set vim.g.conjure#filetype#scheme "conjure.client.guile.socket")+(set vim.g.conjure#client#guile#socket#pipename "guile-repl.socket")nvim/pack/plugins/opt/conjure/dev/guile/.nvim.lua view file
@@ -0,0 +1,4 @@+-- [nfnl] Compiled from dev/guile/.nvim.fnl by https://github.com/Olical/nfnl, do not edit.+vim.g["conjure#filetype#scheme"] = "conjure.client.guile.socket"+vim.g["conjure#client#guile#socket#pipename"] = "guile-repl.socket"+return nilnvim/pack/plugins/opt/conjure/dev/guile/nrepl.sh view file
@@ -0,0 +1,5 @@+#!/usr/bin/env bash++git clone https://git.sr.ht/~abcdw/guile-ares-rs+cd guile-ares-rs || exit+make ares-rsnvim/pack/plugins/opt/conjure/dev/guile/repl.sh view file
@@ -0,0 +1,8 @@+#!/usr/bin/env bash++set -xe++SOCKET=$(git rev-parse --show-toplevel)/dev/guile/guile-repl.socket+if [[ -f $SOCKET ]]; then rm $SOCKET; fi+guile --listen=$SOCKET+rm $SOCKETnvim/pack/plugins/opt/conjure/dev/guile/sandbox.scm view file
@@ -0,0 +1,20 @@+(define (add a b)+ (+ a b))++(display "hi")nvim/pack/plugins/opt/conjure/dev/hy/matplot-demo.hy view file
nvim/pack/plugins/opt/conjure/dev/hy/sandbox.hy view file
nvim/pack/plugins/opt/conjure/dev/janet/append.janet view file
nvim/pack/plugins/opt/conjure/dev/janet/netrepl.sh view file
nvim/pack/plugins/opt/conjure/dev/janet/other.janet view file
nvim/pack/plugins/opt/conjure/dev/janet/sandbox.janet view file
nvim/pack/plugins/opt/conjure/dev/javascript/math.js view file
nvim/pack/plugins/opt/conjure/dev/javascript/sandbox.js view file
nvim/pack/plugins/opt/conjure/dev/julia/sandbox.jl view file
nvim/pack/plugins/opt/conjure/dev/lua/api-example.lua view file
nvim/pack/plugins/opt/conjure/dev/lua/other.lua view file
nvim/pack/plugins/opt/conjure/dev/lua/sandbox.lua view file
nvim/pack/plugins/opt/conjure/dev/php/README.md view file
nvim/pack/plugins/opt/conjure/dev/php/sandbox.php view file
nvim/pack/plugins/opt/conjure/dev/python/sandbox.py view file
nvim/pack/plugins/opt/conjure/dev/racket/deps.sh view file
nvim/pack/plugins/opt/conjure/dev/racket/nrepl-client-spike.fnl view file
nvim/pack/plugins/opt/conjure/dev/racket/nrepl-ogion.sh view file
nvim/pack/plugins/opt/conjure/dev/racket/other.rkt view file
nvim/pack/plugins/opt/conjure/dev/racket/sandbox.rkt view file
nvim/pack/plugins/opt/conjure/dev/racket/stacker-test.rkt view file
nvim/pack/plugins/opt/conjure/dev/racket/stacker.rkt view file
nvim/pack/plugins/opt/conjure/dev/ruby/sandbox.rb view file
nvim/pack/plugins/opt/conjure/dev/rust/readme.md view file
nvim/pack/plugins/opt/conjure/dev/rust/sandbox.rs view file
nvim/pack/plugins/opt/conjure/dev/scheme/sandbox.scm view file
nvim/pack/plugins/opt/conjure/dev/snd-s7/one-tone.snd view file
nvim/pack/plugins/opt/conjure/dev/snd-s7/sandbox.scm view file
nvim/pack/plugins/opt/conjure/dev/snd-s7/three-tone.snd view file
nvim/pack/plugins/opt/conjure/dev/sql/pg-docker.sh view file
nvim/pack/plugins/opt/conjure/dev/sql/sandbox.sql view file
nvim/pack/plugins/opt/conjure/dev/typescript/moped.ts view file
nvim/pack/plugins/opt/conjure/dev/typescript/sandbox.ts view file
nvim/pack/plugins/opt/conjure/dev/typescript/tsconfig.json view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-clojure-nrepl.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-common-lisp-swank.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-elixir-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-fennel-aniseed.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-fennel-nfnl.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-fennel-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-guile-socket.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-hy-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-janet-netrepl.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-janet-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-javascript-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-julia-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-lua-neovim.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-php-psysh.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-python-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-r-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-racket-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-ruby-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-rust-evcxr.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-scheme-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-snd-s7-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure-client-sql-stdio.txt view file
nvim/pack/plugins/opt/conjure/doc/conjure.txt view file
nvim/pack/plugins/opt/conjure/docs/CNAME view file
nvim/pack/plugins/opt/conjure/docs/images/github.png view file
nvim/pack/plugins/opt/conjure/docs/images/lillian.png view file
nvim/pack/plugins/opt/conjure/docs/school view file
nvim/pack/plugins/opt/conjure/docs/styles/main.css view file
nvim/pack/plugins/opt/conjure/docs/styles/normalize.css view file
nvim/pack/plugins/opt/conjure/fnl/conjure-benchmark/bencode.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-benchmark/log.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-benchmark/run.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/.fs.test view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/assertions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/clojure/nrepl/action_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/clojure/nrepl/auto-repl_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/clojure/nrepl/init_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/common-lisp/swank_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/fennel/aniseed_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/fennel/nfnl_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/guile/fake-socket.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/guile/mock-socket.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/guile/socket_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/scheme/mock-stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/scheme/stdio_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client/sql/stdio_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/client_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/config_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/dynamic_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/extract_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/fs_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/linked-list_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/mock-log.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/mock-tree-sitter-completions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/process_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/promise_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/mock-swank.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/stdio2_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/stdio_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/transport/base64_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/transport/bencode_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/transport/elisp_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/remote/transport/netrepl_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/resources_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/school_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/stack_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/text_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/tree-sitter-completions_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/tree-sitter_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/util.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/util_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure-spec/uuid_spec.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/buffer.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/action.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/auto-repl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/debugger.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/init.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/parse.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/server.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/state.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/clojure/nrepl/ui.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/common-lisp/completions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/common-lisp/swank.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/elixir/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/fennel/aniseed.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/fennel/def-str-util.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/fennel/nfnl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/fennel/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/guile/completions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/guile/socket.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/hy/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/janet/netrepl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/janet/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/javascript/import-replacer.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/javascript/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/javascript/transformers.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/javascript/ts-common.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/julia/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/lua/neovim.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/php/psysh.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/python/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/r/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/racket/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/ruby/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/rust/evcxr.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/scheme/completions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/scheme/keywords.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/scheme/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/snd-s7/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/client/sql/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/config.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/dynamic.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/editor.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/eval.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/event.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/extract.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/extract/searchpair.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/fs.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/hook.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/inline.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/linked-list.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/log.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/macros.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/main.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/mapping.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/net.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/nfnl/macros.fnlm view file
nvim/pack/plugins/opt/conjure/fnl/conjure/nfnl/macros/aniseed.fnlm view file
nvim/pack/plugins/opt/conjure/fnl/conjure/process.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/promise.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/netrepl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/nrepl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/socket.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/stdio-rt.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/stdio.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/stdio2.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/swank.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/transport/base64.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/transport/bencode.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/transport/elisp.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/transport/netrepl.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/remote/transport/swank.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/resources.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/school.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/sponsors.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/stack.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/text.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/timer.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/tree-sitter-completions.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/tree-sitter.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/util.fnl view file
nvim/pack/plugins/opt/conjure/fnl/conjure/uuid.fnl view file
nvim/pack/plugins/opt/conjure/lua/conjure-benchmark/bencode.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-benchmark/log.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-benchmark/run.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/assertions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/clojure/nrepl/action_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/clojure/nrepl/auto-repl_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/clojure/nrepl/init_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/common-lisp/swank_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/fennel/aniseed_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/fennel/nfnl_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/guile/fake-socket.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/guile/mock-socket.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/guile/socket_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/scheme/mock-stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/scheme/stdio_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client/sql/stdio_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/client_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/config_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/dynamic_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/extract_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/fs_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/linked-list_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/mock-log.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/mock-tree-sitter-completions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/process_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/promise_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/mock-swank.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/stdio2_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/stdio_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/transport/base64_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/transport/bencode_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/transport/elisp_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/remote/transport/netrepl_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/resources_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/school_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/stack_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/text_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/tree-sitter-completions_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/tree-sitter_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/util.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/util_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure-spec/uuid_spec.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/autoload.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/compile.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/core.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/deps/fennel.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/deps/fun.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/deps/nvim.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/env.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/eval.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/fennel.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/fs.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/macros.fnl view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/macros/autocmds.fnl view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/nvim.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/nvim/util.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/setup.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/string.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/test.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/aniseed/view.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/buffer.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/action.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/auto-repl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/debugger.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/init.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/parse.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/server.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/state.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/clojure/nrepl/ui.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/common-lisp/completions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/common-lisp/swank.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/elixir/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/fennel/aniseed.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/fennel/def-str-util.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/fennel/nfnl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/fennel/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/guile/completions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/guile/socket.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/hy/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/janet/netrepl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/janet/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/javascript/import-replacer.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/javascript/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/javascript/transformers.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/javascript/ts-common.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/julia/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/lua/neovim.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/php/psysh.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/python/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/r/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/racket/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/ruby/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/rust/evcxr.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/scheme/completions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/scheme/keywords.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/scheme/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/snd-s7/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/client/sql/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/config.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/dynamic.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/editor.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/eval.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/event.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/extract.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/extract/searchpair.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/fs.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/hook.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/inline.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/linked-list.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/log.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/main.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/mapping.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/net.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/api.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/callback.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/compile.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/config.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/core.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/fennel.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/fs.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/gc.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/header.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/init.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/module.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/notify.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/nvim.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/repl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/nfnl/string.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/process.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/promise.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/netrepl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/nrepl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/socket.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/stdio-rt.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/stdio.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/stdio2.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/swank.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/transport/base64.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/transport/bencode.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/transport/elisp.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/transport/netrepl.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/remote/transport/swank.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/resources.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/school.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/sponsors.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/stack.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/text.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/timer.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/tree-sitter-completions.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/tree-sitter.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/util.lua view file
nvim/pack/plugins/opt/conjure/lua/conjure/uuid.lua view file
nvim/pack/plugins/opt/conjure/mise.toml view file
nvim/pack/plugins/opt/conjure/notes/clojurists-together-update-1-may-2022.md view file
nvim/pack/plugins/opt/conjure/notes/clojurists-together-update-30-june-2022.md view file
nvim/pack/plugins/opt/conjure/package-lock.json view file
nvim/pack/plugins/opt/conjure/package.json view file
nvim/pack/plugins/opt/conjure/plugin/conjure.fnl view file
nvim/pack/plugins/opt/conjure/plugin/conjure.lua view file
nvim/pack/plugins/opt/conjure/project.clj view file
nvim/pack/plugins/opt/conjure/res/client/clojure/preamble.cljc view file
nvim/pack/plugins/opt/conjure/res/client/guile/completion.scm view file
nvim/pack/plugins/opt/conjure/res/queries/common-lisp/cmpl.scm view file
nvim/pack/plugins/opt/conjure/res/queries/fennel/ext-def.scm view file
nvim/pack/plugins/opt/conjure/res/queries/fennel/import-path.scm view file
nvim/pack/plugins/opt/conjure/res/queries/fennel/local-def.scm view file
nvim/pack/plugins/opt/conjure/res/queries/scheme/cmpl.scm view file
nvim/pack/plugins/opt/conjure/rplugin/python3/deoplete/sources/conjure.py view file
nvim/pack/plugins/opt/conjure/scripts/docker.sh view file
nvim/pack/plugins/opt/conjure/scripts/setup-test-deps view file
nvim/pack/plugins/opt/conjure/scripts/sponsors.sh view file
nvim/pack/plugins/opt/conjure/scripts/test view file
nvim/pack/plugins/opt/conjure/shadow-cljs.edn view file
nvim/pack/plugins/opt/conjure/tests.edn view file