GithubHelp home page GithubHelp logo

mikesmithgh / git-prompt-string-lualine.nvim Goto Github PK

View Code? Open in Web Editor NEW
21.0 2.0 0.0 44 KB

📍Add git-prompt-string to your Neovim statusline!

License: Apache License 2.0

Lua 94.83% Shell 4.18% Makefile 0.99%
git lua lualine neovim neovim-statusline nvim statusline

git-prompt-string-lualine.nvim's Introduction

Mike Smith

I like to code with down-to-earth people who work together to build a great product and challenge each other to grow.

Check out my ⚡️ Lightning Talk @ Neovim Conf 2023 Developing kitty-scrollback.nvim!

Developing kitty-scrollback.nvim NeovimConf 2023

Neovim Projects

Misc Projects

Open Source Contributions

489 sindrets/diffview.nvim
1140 rockerBOO/awesome-neovim rockerBOO/awesome-neovim
169211 Homebrew/homebrew-cask 🍺
245 solidiquis/erdtree
108 folke/zen-mode.nvim 🧘
1008 ibhagwan/fzf-lua ibhagwan/fzf-lua
10 ellisonleao/nvim-plugin-template
6985 kovidgoyal/kitty kovidgoyal/kitty
1431 digitalocean/doctl digitalocean/doctl hacktoberfest 2023
637 digitalocean/godo digitalocean/godo hacktoberfest 2023
828 digitalocean/openapi digitalocean/openapi hacktoberfest 2023
59 m4xshen/hardtime.nvim hacktoberfest 2023
2229 derailed/k9s derailed/k9s
1030 folke/lazy.nvim 💤
872 rockerBOO/awesome-neovim rockerBOO/awesome-neovim
51 kdheepak/panvimdoc
50 kdheepak/panvimdoc
25034 neovim/neovim neovim/neovim
535 folke/noice.nvim 💥
24364 neovim/neovim neovim/neovim
909 bash-lsp/bash-language-server
778 ibhagwan/fzf-lua ibhagwan/fzf-lua
3327 junegunn/fzf junegunn/fzf
2041 derailed/k9s derailed/k9s
769 ava-labs/avalanche-cli
6772 letsencrypt/boulder letsencrypt/boulder
405 folke/noice.nvim 💥
2 Bilal2453/luvit-meta
40 knubie/vim-kitty-navigator
35 zencoder/go-remote-config
452 nvim-lua/plenary.nvim
234 rcarriga/nvim-dap-ui
193 ellisonleao/gruvbox.nvim ellisonleao/gruvbox.nvim
54 glepnir/nvim
547 metacontroller/metacontroller
546 metacontroller/metacontroller
531 metacontroller/metacontroller
534 metacontroller/metacontroller
484 metacontroller/metacontroller
483 metacontroller/metacontroller
478 metacontroller/metacontroller
477 metacontroller/metacontroller
442 metacontroller/metacontroller
468 metacontroller/metacontroller
441 metacontroller/metacontroller
433 metacontroller/metacontroller
423 metacontroller/metacontroller
408 metacontroller/metacontroller
416 metacontroller/metacontroller
387 metacontroller/metacontroller
406 metacontroller/metacontroller
376 metacontroller/metacontroller
374 metacontroller/metacontroller
6056 wbond/package_control_channel

@mikesmithgh's Holopin badges

git-prompt-string-lualine.nvim's People

Contributors

mikesmithgh avatar semantic-release-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

git-prompt-string-lualine.nvim's Issues

Got this error on neovim nightly with archBTW

 Error 22時25分00秒 msg_show.lua_error Error executing vim.schedule lua callback: ...share/nvim/lazy/lualine.nvim/lua/lualine/utils/utils.lua:211: lualine: Failed to refresh statusline:
...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:429: Error executing lua: Vim:E475: Invalid value for argument cmd: 'git-prompt-string' is not executable
stack traceback:
[C]: in function 'jobstart'
...ring-lualine.nvim/lua/git-prompt-string-lualine/init.lua:49: in function 'git_prompt_string_json'
...ualine.nvim/lua/lualine/components/git_prompt_string.lua:57: in function 'update_status'
...l/share/nvim/lazy/lualine.nvim/lua/lualine/component.lua:273: in function 'draw'
...are/nvim/lazy/lualine.nvim/lua/lualine/utils/section.lua:26: in function 'draw_section'
...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:170: in function 'statusline'
...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:298: in function <...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:279>
[C]: in function 'nvim_win_call'
...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:429: in function 'refresh'
...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:524: in function <...zeng/.local/share/nvim/lazy/lualine.nvim/lua/lualine.lua:523>
[C]: in function 'pcall'
...share/nvim/lazy/lualine.nvim/lua/lualine/utils/utils.lua:214: in function ''
vim/_editor.lua: in function <vim/_editor.lua:0>
stack traceback:
[C]: in function 'error'
...share/nvim/lazy/lualine.nvim/lua/lualine/utils/utils.lua:211: in function ''
vim/_editor.lua: in function <vim/_editor.lua:0>

bug: non-english LOCAL causes errors is non-git directories

  • git-prompt.lua
return {
    {
        "mikesmithgh/git-prompt-string-lualine.nvim",
        lazy = true,
    },
    {
        "nvim-lualine/lualine.nvim",
        optional = true,
        opts = function(_, opts)
            return vim.tbl_deep_extend("force", opts, {
                sections = {
                    lualine_b = { "git_prompt_string" },
                },
            })
        end,
    },
}
  • lualine.lua
    {
        "nvim-lualine/lualine.nvim",
        event = "VeryLazy",
        init = function()
            vim.g.lualine_laststatus = vim.o.laststatus
            if vim.fn.argc(-1) > 0 then
                vim.o.statusline = " "
            else
                vim.o.laststatus = 0
            end
        end,
        opts = function()
            local lualine_require = require("lualine_require")
            lualine_require.require = require

            local icons = require("core.icons").icons

            vim.o.laststatus = vim.g.lualine_laststatus

            return {
                options = {
                    theme = "auto",
                    globalstatus = true,
                    disabled_filetypes = { statusline = { "dashboard", "alpha", "starter" } },
                },
                sections = {
                    lualine_a = { "mode" },
                    lualine_b = { "branch" },

                    lualine_c = {
                        GionVim.lualine.root_dir(),
                        {
                            "diagnostics",
                            symbols = {
                                error = icons.diagnostics.Error,
                                warn = icons.diagnostics.Warn,
                                info = icons.diagnostics.Info,
                                hint = icons.diagnostics.Hint,
                            },
                        },
                        { "filetype", icon_only = true, separator = "", padding = { left = 1, right = 0 } },
                        { GionVim.lualine.pretty_path() },
                    },
                    lualine_x = {
                        {
                            function()
                                return require("noice").api.status.command.get()
                            end,
                            cond = function()
                                return package.loaded["noice"] and require("noice").api.status.command.has()
                            end,
                            color = GionVim.ui.fg("Statement"),
                        },
                        {
                            function()
                                return require("noice").api.status.mode.get()
                            end,
                            cond = function()
                                return package.loaded["noice"] and require("noice").api.status.mode.has()
                            end,
                            color = GionVim.ui.fg("Constant"),
                        },
                        {
                            require("lazy.status").updates,
                            cond = require("lazy.status").has_updates,
                            color = GionVim.ui.fg("Special"),
                        },
                        {
                            "diff",
                            symbols = {
                                added = icons.git.added,
                                modified = icons.git.modified,
                                removed = icons.git.removed,
                            },
                            source = function()
                                local gitsigns = vim.b.gitsigns_status_dict
                                if gitsigns then
                                    return {
                                        added = gitsigns.added,
                                        modified = gitsigns.changed,
                                        removed = gitsigns.removed,
                                    }
                                end
                            end,
                        },
                    },
                    lualine_y = {
                        { "encoding", separator = "|" },
                        { "progress", separator = " ", padding = { left = 1, right = 0 } },
                        { "location", padding = { left = 0, right = 1 } },
                    },
                    lualine_z = {
                        function()
                            return "" .. os.date("%R")
                        end,
                    },
                },
                extensions = { "neo-tree", "lazy" },
            }
        end,
    },
  • An error message appears when opening files in a folder without a '.git' directory
  • message: git-prompt-string-lualine.nvim: ERROR git-prompt-string error(read file HEAD): "open HEAD: no such file or directory".

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.