summaryrefslogtreecommitdiff
path: root/lua/bee/plugins/ui.lua
blob: 2a5a4fce8afec957d4f4986f83b9a1347528ac07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
return {
    {
        "lualine.nvim",
        event = "DeferredUIEnter",
        auto_enable = true,
        after = function(_)
            require("lualine").setup({
                options = {
                    component_separators = { left = "|", right = "|" },
                    section_separators = {},
                },
                sections = {
                    lualine_a = {
                        {
                            "mode",
                            fmt = function(mode)
                                return ({
                                    ["NORMAL"] = "っ( ' ᵕ ' )っ",
                                    ["O-PENDING"] = "っ( º _ º )っ",
                                    ["INSERT"] = "っ(>‿<)っ✎",
                                    ["VISUAL"] = "っ(⊙‿⊙)っ",
                                    ["V-LINE"] = "っ(ò_ó)っ¤=[]::>",
                                    ["V-BLOCK"] = "っ[ •̀ ⌂ •́ ]っ",
                                    ["REPLACE"] = "っ(  O  )っ",
                                    ["V-REPLACE"] = "っ[  O  ]っ",
                                    ["COMMAND"] = "っ(ง •̀_•́)ง",
                                    ["TERMINAL"] = "っ( ͡° ͜ʖ ͡°)っ",
                                    ["EX"] = "っ( ͡ಠ ͜ʖ ͡ಠ)ง",
                                    ["SHELL"] = "っ(©_©)っ",
                                    ["MORE"] = "っ(°-° )っ",
                                    ["CONFIRM"] = "っ( 0_0)?",

                                    -- ["SELECT"] = "っ(づ。◕‿‿◕。)づ",
                                    -- ["S-LINE"] = "っ(づ。◕‿‿◕。)づ¤",
                                    -- ["S-BLOCK"] = "っ[づ。◕‿‿◕。]づ",
                                })[mode] or mode
                            end,
                        },
                    },
                    lualine_c = {
                        {
                            "filename",
                            path = 1,
                        },
                    },
                },
                inactive_sections = {
                    lualine_a = { "filename" },
                    lualine_b = {},
                    lualine_c = {},
                    lualine_x = {},
                    lualine_y = {},
                    lualine_z = { "location" },
                },
            })
        end,
    },
    {
        "mini.indentscope",
        auto_enable = true,
        event = "DeferredUIEnter",
        after = function(_)
            require("mini.indentscope").setup({
                draw = {
                    delay = 200,
                },
            })
        end,
    },
    {
        "hlchunk.nvim",
        auto_enable = false,
        event = "DeferredUIEnter",
        after = function()
            local ignored_filetypes = {
                gitcommit = true,
                oil = true,
                Neogitstatus = true,
                TelescopePrompt = true,
                NvimTree = true,
                help = true,
                -- nix = true,
            }

            require("hlchunk").setup({
                chunk = {
                    enable = true,
                    priority = 15,
                    -- use_treesitter = true,
                    chars = {
                        horizontal_line = "─",
                        vertical_line = "│",
                        left_top = "┌",
                        left_bottom = "└",
                        right_arrow = "─",
                    },
                    textobject = "",
                    exclude_filetypes = ignored_filetypes,
                    max_file_size = 1024 * 1024,
                    error_sign = false,
                    straight = true,
                    use_treesitter = true,
                    -- animation related
                    duration = 0,
                    delay = 200,
                },
                indent = {
                    enable = true,
                    priority = 10,
                    style = { vim.api.nvim_get_hl(0, { name = "Whitespace" }) },
                    use_treesitter = true,
                    exclude_filetypes = ignored_filetypes,
                    chars = { "│" },
                    ahead_lines = 5,
                    delay = 100,
                },
            })
        end,
    },
}