-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
git integration? #2261
Comments
Duplicate of #227 |
Diff signs in the gutter: #1623 Staging, committing, or any non-read-only operation on the git index is likely to live outside of Helix as a plugin. |
Is there any documentation on creating plugins? |
The main issue for the plugin system: #122 It isn't implemented yet though, it's still in design / experimentation phase. |
Is there a roadmap/discussion that describes which features will be integrated, and which will be plugins? I do believe that a thoughtful git integration should be within the scope of included features, especially if |
What belongs in core and what should live as a plugin tends to become a per-feature conversation. If you read through the open issues (especially those marked With respect to git in particular, my opinion is that read-only operations on the index like diff gutters or a blame gutter are fine for core but anything that takes on write features like committing, stashing, pushing, etc. should live as a plugin. Git porcelain plugins like magit or even fugitive have huge scopes and deserve to be their own projects. |
I didn't discussed this with the other maintainers but my own opinion is similar to what @the-mikedavis mentioned, something as generic and useful for the public like git on line gutters will probably be built-in, and something like git operations which users could have more opinion on is more likely to be on the plugin. Quite scary that the maintainers often have a similar opinion on what things should be in core and as plugin, maybe because we used quite a couple of editors and form an opinion on what should be the basic for built-in for modern editors? |
I use lazygit if I want a bit more UI in a separate terminal window, goes nicely with helix editor |
@yvess How do you use lazygit with helix if it's run in a different window? |
But when you switch back to the helix window do you always need to |
@alexandershern Here's the workaround to
function basename(s)
return string.gsub(s, '(.*[/\\])(.*)', '%2')
end
wezterm.on('reload-helix', function(window, pane)
local top_process = basename(pane:get_foreground_process_name())
if top_process == 'hx' then
local bottom_pane = pane:tab():get_pane_direction('Down')
if bottom_pane ~= nil then
local bottom_process = basename(bottom_pane:get_foreground_process_name())
if bottom_process == 'lazygit' then
local action = wezterm.action.SendString(':reload-all\r\n')
window:perform_action(action, pane);
end
end
end
end)
config.keys = {
{
key = '[',
mods = 'CMD',
action = act.Multiple {
act.ActivatePaneDirection 'Up',
act.EmitEvent 'reload-helix',
}
}, |
Just curious if there are any plans to offer a basic git integration
The text was updated successfully, but these errors were encountered: