Skip to content

Commit 760d497

Browse files
author
Moshe Avni
authored
Feat/keymap view names (#395)
1 parent df8b202 commit 760d497

File tree

3 files changed

+60
-78
lines changed

3 files changed

+60
-78
lines changed

README.md

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,12 +130,26 @@ vim.api.nvim_create_autocmd("FileType", {
130130
k("n", "<Plug>(kubectl.filter_view)", "<C-f>", opts) -- Filter view
131131
k("n", "<Plug>(kubectl.namespace_view)", "<C-n>", opts) -- Namespaces view
132132
k("n", "<Plug>(kubectl.portforwards_view)", "gP", opts) -- Portforwards view
133-
k("n", "<Plug>(kubectl.view_1)", "1", opts) -- Deployments view
134-
k("n", "<Plug>(kubectl.view_2)", "2", opts) -- Pods view
135-
k("n", "<Plug>(kubectl.view_3)", "3", opts) -- ConfigMaps view
136-
k("n", "<Plug>(kubectl.view_4)", "4", opts) -- Secrets view
137-
k("n", "<Plug>(kubectl.view_5)", "5", opts) -- Services view
138-
k("n", "<Plug>(kubectl.view_6)", "6", opts) -- Ingresses view
133+
k("n", "<Plug>(kubectl.view_deployments)", "1", opts) -- Deployments view
134+
k("n", "<Plug>(kubectl.view_pods)", "2", opts) -- Pods view
135+
k("n", "<Plug>(kubectl.view_configmaps)", "3", opts) -- ConfigMaps view
136+
k("n", "<Plug>(kubectl.view_secrets)", "4", opts) -- Secrets view
137+
k("n", "<Plug>(kubectl.view_services)", "5", opts) -- Services view
138+
k("n", "<Plug>(kubectl.view_ingresses)", "6", opts) -- Ingresses view
139+
k("n", "<Plug>(kubectl.view_api_resources)", "", opts) -- API-Resources view
140+
k("n", "<Plug>(kubectl.view_clusterrolebinding)", "", opts) -- ClusterRoleBindings view
141+
k("n", "<Plug>(kubectl.view_crds)", "", opts) -- CRDs view
142+
k("n", "<Plug>(kubectl.view_cronjobs)", "", opts) -- CronJobs view
143+
k("n", "<Plug>(kubectl.view_daemonsets)", "", opts) -- DaemonSets view
144+
k("n", "<Plug>(kubectl.view_events)", "", opts) -- Events view
145+
k("n", "<Plug>(kubectl.view_helm)", "", opts) -- Helm view
146+
k("n", "<Plug>(kubectl.view_jobs)", "", opts) -- Jobs view
147+
k("n", "<Plug>(kubectl.view_nodes)", "", opts) -- Nodes view
148+
k("n", "<Plug>(kubectl.view_overview)", "", opts) -- Overview view
149+
k("n", "<Plug>(kubectl.view_pv)", "", opts) -- PersistentVolumes view
150+
k("n", "<Plug>(kubectl.view_pvc)", "", opts) -- PersistentVolumeClaims view
151+
k("n", "<Plug>(kubectl.view_sa)", "", opts) -- ServiceAccounts view
152+
k("n", "<Plug>(kubectl.view_top)", "", opts) -- Top view
139153

140154
-- Deployment/DaemonSet actions
141155
k("n", "<Plug>(kubectl.rollout_restart)", "grr", opts) -- Rollout restart

lua/kubectl/mappings.lua

Lines changed: 20 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
local ResourceBuilder = require("kubectl.resourcebuilder")
2+
local viewsTable = require("kubectl.utils.viewsTable")
23
local event_handler = require("kubectl.actions.eventhandler").handler
34
local buffers = require("kubectl.actions.buffers")
45
local commands = require("kubectl.actions.commands")
5-
local logger = require("kubectl.utils.logging")
66
local string_utils = require("kubectl.utils.string")
77
local M = {}
88

@@ -363,75 +363,29 @@ function M.register()
363363
end,
364364
})
365365

366-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_1)", "", {
367-
noremap = true,
368-
silent = true,
369-
desc = "Deployments",
370-
callback = function()
371-
local view = require("kubectl.views.deployments")
372-
view.View()
373-
end,
374-
})
375-
376-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_2)", "", {
377-
noremap = true,
378-
silent = true,
379-
desc = "Pods",
380-
callback = function()
381-
local view = require("kubectl.views.pods")
382-
view.View()
383-
end,
384-
})
385-
386-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_3)", "", {
387-
noremap = true,
388-
silent = true,
389-
desc = "Configmaps",
390-
callback = function()
391-
local view = require("kubectl.views.configmaps")
392-
view.View()
393-
end,
394-
})
395-
396-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_4)", "", {
397-
noremap = true,
398-
silent = true,
399-
desc = "Secrets",
400-
callback = function()
401-
local view = require("kubectl.views.secrets")
402-
view.View()
403-
end,
404-
})
405-
406-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_5)", "", {
407-
noremap = true,
408-
silent = true,
409-
desc = "Services",
410-
callback = function()
411-
local view = require("kubectl.views.services")
412-
view.View()
413-
end,
414-
})
415-
416-
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_6)", "", {
417-
noremap = true,
418-
silent = true,
419-
desc = "Ingresses",
420-
callback = function()
421-
local view = require("kubectl.views.ingresses")
422-
view.View()
423-
end,
424-
})
366+
for _, view_name in ipairs(vim.tbl_keys(viewsTable)) do
367+
local view = require("kubectl.views." .. view_name)
368+
local keymap_name = string.gsub(view_name, "-", "_")
369+
local desc = string_utils.capitalize(view_name) .. " view"
370+
vim.api.nvim_buf_set_keymap(0, "n", "<Plug>(kubectl.view_" .. keymap_name .. ")", "", {
371+
noremap = true,
372+
silent = true,
373+
desc = desc,
374+
callback = function()
375+
view.View()
376+
end,
377+
})
378+
end
425379

426380
vim.schedule(function()
427381
-- Global mappings
428382
if win_config.relative == "" then
429-
M.map_if_plug_not_set("n", "1", "<Plug>(kubectl.view_1)")
430-
M.map_if_plug_not_set("n", "2", "<Plug>(kubectl.view_2)")
431-
M.map_if_plug_not_set("n", "3", "<Plug>(kubectl.view_3)")
432-
M.map_if_plug_not_set("n", "4", "<Plug>(kubectl.view_4)")
433-
M.map_if_plug_not_set("n", "5", "<Plug>(kubectl.view_5)")
434-
M.map_if_plug_not_set("n", "6", "<Plug>(kubectl.view_6)")
383+
M.map_if_plug_not_set("n", "1", "<Plug>(kubectl.view_deployments)")
384+
M.map_if_plug_not_set("n", "2", "<Plug>(kubectl.view_pods)")
385+
M.map_if_plug_not_set("n", "3", "<Plug>(kubectl.view_configmaps)")
386+
M.map_if_plug_not_set("n", "4", "<Plug>(kubectl.view_secrets)")
387+
M.map_if_plug_not_set("n", "5", "<Plug>(kubectl.view_services)")
388+
M.map_if_plug_not_set("n", "6", "<Plug>(kubectl.view_ingresses)")
435389
M.map_if_plug_not_set("n", "<bs>", "<Plug>(kubectl.go_up)")
436390
M.map_if_plug_not_set("n", "gD", "<Plug>(kubectl.delete)")
437391
M.map_if_plug_not_set("n", "gd", "<Plug>(kubectl.describe)")

lua/kubectl/views/init.lua

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,26 @@ function M.Hints(headers)
7272
{ key = "<Plug>(kubectl.sort)", desc = "Sort column" },
7373
{ key = "<Plug>(kubectl.edit)", desc = "Edit resource" },
7474
{ key = "<Plug>(kubectl.refresh)", desc = "Refresh view" },
75-
{ key = "<Plug>(kubectl.view_1)", desc = "Deployments" },
76-
{ key = "<Plug>(kubectl.view_2)", desc = "Pods" },
77-
{ key = "<Plug>(kubectl.view_3)", desc = "Configmaps" },
78-
{ key = "<Plug>(kubectl.view_4)", desc = "Secrets" },
79-
{ key = "<Plug>(kubectl.view_5)", desc = "Services" },
80-
{ key = "<Plug>(kubectl.view_6)", desc = "Ingresses" },
75+
{ key = "<Plug>(kubectl.view_deployments)", desc = "Deployments" },
76+
{ key = "<Plug>(kubectl.view_pods)", desc = "Pods" },
77+
{ key = "<Plug>(kubectl.view_configmaps)", desc = "Configmaps" },
78+
{ key = "<Plug>(kubectl.view_secrets)", desc = "Secrets" },
79+
{ key = "<Plug>(kubectl.view_services)", desc = "Services" },
80+
{ key = "<Plug>(kubectl.view_ingresses)", desc = "Ingresses" },
81+
{ key = "<Plug>(kubectl.view_api_resources)", desc = "API-Resources" },
82+
{ key = "<Plug>(kubectl.view_clusterrolebinding)", desc = "ClusterRoleBindings" },
83+
{ key = "<Plug>(kubectl.view_crds)", desc = "CRDs" },
84+
{ key = "<Plug>(kubectl.view_cronjobs)", desc = "CronJobs" },
85+
{ key = "<Plug>(kubectl.view_daemonsets)", desc = "DaemonSets" },
86+
{ key = "<Plug>(kubectl.view_events)", desc = "Events" },
87+
{ key = "<Plug>(kubectl.view_helm)", desc = "Helm" },
88+
{ key = "<Plug>(kubectl.view_jobs)", desc = "Jobs" },
89+
{ key = "<Plug>(kubectl.view_nodes)", desc = "Nodes" },
90+
{ key = "<Plug>(kubectl.view_overview)", desc = "Overview" },
91+
{ key = "<Plug>(kubectl.view_pv)", desc = "PersistentVolumes" },
92+
{ key = "<Plug>(kubectl.view_pvc)", desc = "PersistentVolumeClaims" },
93+
{ key = "<Plug>(kubectl.view_sa)", desc = "ServiceAccounts" },
94+
{ key = "<Plug>(kubectl.view_top)", desc = "Top" },
8195
}
8296

8397
local global_keymaps = tables.get_plug_mappings(globals, "n")

0 commit comments

Comments
 (0)