![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://programming.dev/pictrs/image/40be5658-8edc-4b87-8006-1028b450f641.png)
Oof, that’s annoying.
Weird that :syntax off
doesn’t work, from a small test it seems to do the trick for me. But I guess as long as vim works there’s no need to replace it 🙂
Oof, that’s annoying.
Weird that :syntax off
doesn’t work, from a small test it seems to do the trick for me. But I guess as long as vim works there’s no need to replace it 🙂
deleted by creator
Try running this: :set indentexpr=
and then :set noautoindent
. Without any config file, this works for me while in a makefile that looks like this:
foo: foo.c bar.h
$(CC) $< -o $@
The indentexpr
option is set by filetype, but disabling filetype indent after already opening a makefile is too late, it would need to happen before opening it (in either a config file or directly after running nvim
without any file specified).
However, indentexpr
seems to only control the automatic indentation when hitting enter at the target line, but not within the recipe for it. To fix that I also had to disable autoindent
.
Ah dang, you’re right, I must have read it too quickly. Yeah then I also think it’s something about not loading the config, it can be investigated by checking the runtime values like I described in my second edit.
Using a the ubuntu 24.04 docker image for testing, I was able to disable automatic indentation with this config in ~/.config/nvim/init.lua
:
vim.cmd("filetype indent off")
If you prefer using vim
syntax it would instead be the following in ~/.config/nvim/init.vim
:
filetype indent off
Note: it seems this file is not loaded if a init.lua file is present in that directory
Edit to add:
So the reason this is required is, similar to vim (so you may already be familiar with this), there are filetype-specific configurations loaded. These usually reside in /usr/share/nvim/runtime/<plugin/indent/syntax/etc>/<filetype>
. You can configure what files to load using the :filetype
command.
There’s more info here: https://neovim.io/doc/user/filetype.html
Second edit:
Also when filetype indent/plugin/syntax is on, it seems to be loaded after your user config, so it overrides it. You can investigate if your actual config was applied or not by running, for example, :set autoindent?
or :set cindent?
. If the values do not match your configuration, it was likely overridden by :filetype
. This was the case for me.
Gotcha. That’s actually good because it will be easier to troubleshoot. I will try to reproduce in a barebones config and see if I can figure something out. What language are you editing, and what version of neovim do you use? Distro may also be relevant in case they package some indent.vim file(s).
Are you using treesitter? I think that has an option to handle indentation, but I’m not sure if it’s enabled by default.
nam
is assigned the value returned by input
.
This is not some edge case behavior by the input
function. This is always how function calls work. You can think of it like substituting input('Who are you? ')
with the value returned by it, which is the string typed in by the user in this case.
How did you install neovim? If you installed from source, double check that you followed the instructions, i.e. install build dependencies and then run:
make CMAKE_BUILD_TYPE=RelWithDebInfo
sudo make install
Also, double check the version of nvim in your PATH matches:
nvim --version
C is a pretty simple language and relatively easy to learn. But it’s a lot harder to be proficient with.
Can’t they just use JSDoc?
By the same argument, wouldn’t GPL and other copyleft licenses be considered non-free as well since you are not free to do whatever you want with the source? For example, incorporating it into a proprietary project, refusing to provide the source to users upon request, or not disclosing attribution, etc. The latter would even go against the terms of permissive licenses.
Clearly defining what free, and by extension FOSS, means is very relevant.
It seems that no lua is packaged with pandoc-cli (By looking at the package contents of https://archlinux.org/packages/extra/x86_64/pandoc-cli/)
So if I were you I would first try the AUR and see if there’s any package there that does.
deleted by creator
It’s when you open a publicly facing port and map (forward) it to a local port your machine. In this case, it’s opened at the vpn provider’s public gateway. Otherwise, it would typically be opened in your router instead.
You can then configure your torrent client to listen on that local port that the public port is forwarded to. I think generally the public and the local port are the same number when using VPN.
If you do that, then others have the ability to initiate a connection to you instead of only you being able to initiate the connection to somebody else.
When seeding/leeching to/from someone else, at least one of you needs a port open. So, if you always have one open, you allow yourself to connect to anyone on the network regardless if they have one open or not.
Sorry if I confused you more, I’m not that great at explaining.
I seed without cap, don’t really need my upload for anything else. (500 Mbps)
What’s the distro? I can help seed it indefinitely with open ports.
Yeah I don’t want to be a nuisance to my office neighbours. Right now I’m using a logitech mx keys, I could try looking for an ansi version of that.
I will probably order a keychron with low profile switches for my home setup, so I depending on how quiet it is I might get that for work as well.
Huh? Yes it does. Unless you mean it’s not cracked yet.
Since people keep bringing up tauri, here’s the comparison made in the README:
Dioxus vs Tauri
Tauri is a framework for building desktop (and soon, mobile) apps where your frontend is written in a web-based framework like React, Vue, Svelte, etc. Whenever you need to do native work, you can write Rust functions and call them from your frontend.
Natively Rust: Tauri’s architecture limits your UI to either JavaScript or WebAssembly. With Dioxus, your Rust code is running natively on the user’s machine, letting you do things like spawning threads, accessing the filesystem, without any IPC bridge. This drastically simplifies your app’s architecture and makes it easier to build. You can build a Tauri app with Dioxus-Web as a frontend if you’d like.
Different scopes: Tauri needs to support JavaScript and its complex build tooling, limiting the scope of what you can do with it. Since Dioxus is exclusively focused on Rust, we’re able to provide extra utilities like Server Functions, advanced bundling, and a native renderer.
Shared DNA: While Tauri and Dioxus are separate projects, they do share libraries like Tao and Wry: windowing and webview libraries maintained by the Tauri team.