feat(config): add default_to_float option (#173)

Problem: opening oil as a float requires users to remap every entry
point (`-`, `:Oil`, startup autocmd) individually. There is no single
flag to make float the default everywhere.

Solution: add `default_to_float = false` to config. When `true`,
`M.open()` delegates to `M.open_float()` (covers `:Oil` and all keymap
invocations), and a `VimEnter` hook replaces the initial directory
buffer with a float when starting Neovim on a directory (e.g. `nvim .`).
No recursion risk — `open_float()` calls `vim.cmd.edit()` directly and
never goes through `M.open()`.

Based on: stevearc/oil.nvim#298
This commit is contained in:
Barrett Ruth 2026-03-18 14:12:55 -04:00 committed by GitHub
parent 91f4b13810
commit 3fede7d809
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 34 additions and 1 deletions

View file

@ -61,6 +61,9 @@ The full list of options with their defaults:
-- Oil will take over directory buffers (e.g. `vim .` or `:e src/`)
-- Set to false if you want some other plugin (e.g. netrw) to open when you edit directories.
default_file_explorer = true,
-- When true, oil always opens in a floating window. Applies to :Oil, all open() calls,
-- and directory buffers opened on startup (e.g. `nvim .`).
default_to_float = false,
-- Id is automatically added at the beginning, and name at the end
-- See :help oil-columns
columns = {
@ -293,6 +296,13 @@ The full list of options with their defaults:
OPTIONS *oil-options*
default_to_float *oil.default_to_float*
type: `boolean` default: `false`
When `true`, oil always opens in a floating window. Applies to all
`open()` calls (`:Oil`, default keymaps) and to directory buffers opened
on startup (e.g. `nvim .`). Individual calls to `open_float()` or
`open()` still work regardless of this setting.
skip_confirm_for_simple_edits *oil.skip_confirm_for_simple_edits*
type: `boolean` default: `false`
Before performing filesystem operations, Oil displays a confirmation popup to ensure