From 9df47bce6a3b752831b4970c26a8886b2843e9bb Mon Sep 17 00:00:00 2001 From: Sassan Haradji Date: Tue, 21 Oct 2025 10:07:14 +0330 Subject: [PATCH] feat(image): add icns support (#2120) ## Description Add support for icns using sips ## Screenshots image Co-authored-by: Folke Lemaitre --- lua/snacks/image/convert.lua | 9 +++++++++ lua/snacks/image/init.lua | 1 + lua/snacks/init.lua | 1 + 3 files changed, 11 insertions(+) diff --git a/lua/snacks/image/convert.lua b/lua/snacks/image/convert.lua index 8bbd547e..0c583ec7 100644 --- a/lua/snacks/image/convert.lua +++ b/lua/snacks/image/convert.lua @@ -47,6 +47,15 @@ local uv = vim.uv or vim.loop ---@type table local commands = { + icns = { + ft = "png", + cmd = { + { + cmd = "sips", + args = { "-s", "format", "png", "{src}", "--out", "{file}" }, + }, + }, + }, url = { cmd = { { diff --git a/lua/snacks/image/init.lua b/lua/snacks/image/init.lua index 6759c7aa..3d59a47a 100644 --- a/lua/snacks/image/init.lua +++ b/lua/snacks/image/init.lua @@ -64,6 +64,7 @@ local defaults = { "mkv", "webm", "pdf", + "icns", }, force = false, -- try displaying the image, even if the terminal does not support it doc = { diff --git a/lua/snacks/init.lua b/lua/snacks/init.lua index 43776c8d..8ff286de 100644 --- a/lua/snacks/init.lua +++ b/lua/snacks/init.lua @@ -38,6 +38,7 @@ local config = { "mkv", "webm", "pdf", + "icns", }, }, }