refactor: absorb statusline offset into indicator padding
Remove the hardcoded statusline_offset from calculate_position() and let padding.y serve as the sole offset from the bottom edge. Bump default padding.y to 3 to preserve the original visual position.
This commit is contained in:
@@ -110,7 +110,7 @@ to close it. Press `<Leader>wxt` to toggle it back.
|
|||||||
| `failure_hl` | `string` | `"WatchexecFailure"` | Highlight for failure state. |
|
| `failure_hl` | `string` | `"WatchexecFailure"` | Highlight for failure state. |
|
||||||
| `width` | `integer` | `2` | Indicator width in cells. |
|
| `width` | `integer` | `2` | Indicator width in cells. |
|
||||||
| `height` | `integer` | `1` | Indicator height in cells. |
|
| `height` | `integer` | `1` | Indicator height in cells. |
|
||||||
| `padding` | `table` | `{ x = 1, y = 1 }` | Offset from editor edges. |
|
| `padding` | `table` | `{ x = 1, y = 3 }` | Offset from editor edges. |
|
||||||
| `patterns` | `table` | *(see below)* | Lua patterns for parsing output. |
|
| `patterns` | `table` | *(see below)* | Lua patterns for parsing output. |
|
||||||
|
|
||||||
#### `indicator.patterns`
|
#### `indicator.patterns`
|
||||||
|
|||||||
+1
-1
@@ -187,7 +187,7 @@ indicator (table|nil) ~
|
|||||||
|
|
||||||
y (integer|nil) ~
|
y (integer|nil) ~
|
||||||
Vertical offset from the top or bottom edge.
|
Vertical offset from the top or bottom edge.
|
||||||
Default: 1
|
Default: 3
|
||||||
|
|
||||||
patterns (table|nil) ~
|
patterns (table|nil) ~
|
||||||
Lua patterns for detecting command lifecycle in output.
|
Lua patterns for detecting command lifecycle in output.
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ local defaults = {
|
|||||||
failure_hl = "WatchexecFailure",
|
failure_hl = "WatchexecFailure",
|
||||||
width = 2,
|
width = 2,
|
||||||
height = 1,
|
height = 1,
|
||||||
padding = { x = 1, y = 1 },
|
padding = { x = 1, y = 3 },
|
||||||
patterns = {
|
patterns = {
|
||||||
success = "%[Command was successful%]",
|
success = "%[Command was successful%]",
|
||||||
running = "%[Running",
|
running = "%[Running",
|
||||||
|
|||||||
@@ -36,20 +36,19 @@ local function calculate_position()
|
|||||||
local width = cfg.width or 2
|
local width = cfg.width or 2
|
||||||
local height = cfg.height or 1
|
local height = cfg.height or 1
|
||||||
local pad_x = cfg.padding and cfg.padding.x or 1
|
local pad_x = cfg.padding and cfg.padding.x or 1
|
||||||
local pad_y = cfg.padding and cfg.padding.y or 1
|
local pad_y = cfg.padding and cfg.padding.y or 3
|
||||||
local statusline_offset = 2
|
|
||||||
|
|
||||||
if cfg.position == "bottom-left" then
|
if cfg.position == "bottom-left" then
|
||||||
return vim.o.lines - height - statusline_offset, pad_x
|
return vim.o.lines - height - pad_y, pad_x
|
||||||
elseif cfg.position == "bottom-right" then
|
elseif cfg.position == "bottom-right" then
|
||||||
return vim.o.lines - height - statusline_offset, vim.o.columns - width - pad_x
|
return vim.o.lines - height - pad_y, vim.o.columns - width - pad_x
|
||||||
elseif cfg.position == "top-left" then
|
elseif cfg.position == "top-left" then
|
||||||
return pad_y, pad_x
|
return pad_y, pad_x
|
||||||
elseif cfg.position == "top-right" then
|
elseif cfg.position == "top-right" then
|
||||||
return pad_y, vim.o.columns - width - pad_x
|
return pad_y, vim.o.columns - width - pad_x
|
||||||
end
|
end
|
||||||
|
|
||||||
return vim.o.lines - height - statusline_offset, pad_x
|
return vim.o.lines - height - pad_y, pad_x
|
||||||
end
|
end
|
||||||
|
|
||||||
local function close_float()
|
local function close_float()
|
||||||
|
|||||||
Reference in New Issue
Block a user