Comments (5)
It needs to go in the modules
(and optionally macros
) table, the option name is useBitLib
per https://fennel-lang.org/reference.
These all work as you would expect, with a few caveats. The bitwise operators are only available in Lua 5.3+, unless you use the --use-bit-lib flag or the useBitLib flag in the options table, which lets them be used in LuaJIT. The integer division operator (//) is only available in Lua 5.3+.
modules = {
correlate = true,
useBitLib = true,
},
You might have to touch
/save/edit files that you want to use the bit operators in to trigger a recompile with the new options.
from hotpot.nvim.
I don't disagree that it could be enabled by default, but I am hesitant to do it because it isn't a complete compatibility layer: "The integer division operator (//) is only available in Lua 5.3+" and they "cannot be used as higher-order functions".
I think that puts some onus on the user to know what they want to use and how they can use it so it should probably be opt in.
from hotpot.nvim.
I was just reading the Fennel reference and saw that passage. I guess useBitLib
is documented after all.
cannot be used as higher-order functions
That's always true though, LuaJIT or not.
The integer division operator (//) is only available in Lua 5.3+
There is, indeed, nothing that can be done in this case.
Still, not using the option is definitely the less correct solution for Neovim (at least so long as LuaJIT is the only supported implementation).
from hotpot.nvim.
Hello!
Seeing this issue and fennel's supports for bitlib, how do I enable it within hotpot?
fennel.compile
doesn't seem to take any related options and passing any of "--use-bit-lib"
, "use-bit-lib"
to hotpotConfig.compiler
table doesn't provide support for it
require("hotpot").setup {
provide_require_fennel = true,
enable_hotpot_diagnostics = true,
compiler = {
["--use-bit-lib"] = true,
["use-bit-lib"] = true,
"--use-bit-lib",
"use-bit-lib",
modules = {
correlate = true,
},
},
}
from hotpot.nvim.
Many thanks
from hotpot.nvim.
Related Issues (20)
- `vim.loader` support HOT 1
- Diagnostics includes path before message
- Problems installing... hotpot.searcher.module not found when using lazy.nvim HOT 2
- Bump to fennel 1.3.1
- Problems for using api.make to build ~/.config/nvim/init.fnl HOT 5
- Broken on Windows because `vim.fs.normalize` converts all path separators to forward slash (`\` -> `/`) HOT 4
- lazy.nvim conflicts with fnl ftplugins HOT 5
- Diagnostics autocommand cant be deleted when a buffer is renamed
- Improve clearing Fennels `macro-loaded` table when needed. HOT 2
- Windows RUNNER~1 paths HOT 2
- Automatically load `plugin/*.fnl` files HOT 1
- attempt to call local 'glob_search' (a nil value) HOT 3
- "The hotpot.api.make usage has changed" on v0.9.7 HOT 4
- How to reduce startup time besides using `vim.loader.enable()`? HOT 2
- Diagnosing slow api.make.build() performance HOT 3
- `(include mod)` depends on CWD / fennel.path value HOT 1
- Error loading `init.fnl` looking in `.config/fnlm/fnl` instead of `.config/nvim/fnl` HOT 4
- Compiler environment for plugins HOT 2
- Using `folke/lazy.nvim` with module-name/string plugin definitions HOT 27
- `include` path behavior should match `require` behavior HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hotpot.nvim.