Jesse Duffield
845c80721f
Decouple escaping from quitting
...
When a user is not entering text into a prompt, the 'q' key should immediately
quit the application. On the other hand, the 'esc' key should cancel/close/go-back
to the previous context.
If we're at the surface level (nothing to cancel/close) and the user hits the
escape key, the default behaviour is to close the app, however we now have a
`quitOnTopLevelReturn` config key to override this.
I actually think from the beginning we should have made this config option
default to false rather than true which is the default this PR gives it,
but I don't want to anger too many people familiar with the existing behaviour.
2020-07-18 20:00:48 +10:00
Jesse Duffield
003e45d2f5
allow creating branches off of remote branches
2020-05-19 09:57:37 +10:00
Jesse Duffield
2974a57943
support copying stuff to clipboard
2020-04-15 10:44:56 +00:00
Jesse Duffield
40fbce91ce
add new diff mode
...
WIP
WIP
WIP
WIP
WIP
WIP
WIP
2020-03-29 18:26:24 +11:00
Jesse Duffield
33d287d2f0
remove old diff mode code
2020-03-29 18:26:24 +11:00
Jesse Duffield
a2790cfe8e
rename to filtered mode
2020-03-29 11:37:29 +11:00
Jesse Duffield
624ae45ebb
allow scoped mode where the commits/reflog/stash panels are scoped to a file
...
WIP
restrict certain actions in scoped mode
WIP
2020-03-29 11:37:29 +11:00
Jesse Duffield
52f41ab0d5
update cheatsheet
2020-03-28 03:16:44 +00:00
Jesse Duffield
fbb767893e
support lazyloading in commits view
2020-03-28 14:02:53 +11:00
Jesse Duffield
229f5ee48c
add keybindings for paging in list panels and jumping to top/bottom
2020-03-28 14:02:53 +11:00
Jesse Duffield
83757f1065
limit size of menu panel
2020-03-26 21:44:33 +11:00
Jesse Duffield
daecdd7c2b
redoing
2020-03-25 09:39:04 +11:00
Jesse Duffield
137fd80fdb
note that undo functionality is experimental
2020-03-25 09:39:04 +11:00
Jesse Duffield
b1941c33f7
undo via rebase
2020-03-25 09:39:04 +11:00
Jesse Duffield
5d460e1e5e
add tab keybindings
2020-03-23 23:25:00 +11:00
Jesse Duffield
8fbcc36331
allow resetting cherry picked commits selection
2020-03-19 21:42:21 +11:00
Jesse Duffield
b0ec0821d5
fix docs
2020-03-18 22:50:35 +11:00
hitsuji_no_shippo
13a7806cac
add opne menu keybindings in docs
2020-03-18 22:50:35 +11:00
hitsuji_no_shippo
41c76fb748
add close menu keybindings in docs
2020-03-18 22:50:35 +11:00
hitsuji_no_shippo
ac0c3b9f92
fix search keybindings in docs
2020-03-18 22:50:35 +11:00
Jesse Duffield
1be0ff8da7
better upstream tracking and allow renaming a branch
2020-03-18 21:29:06 +11:00
hitsuji_no_shippo
2169b5109f
add search keybings in docs
2020-03-11 19:43:22 +11:00
Jesse Duffield
e47ad846c4
big golangci-lint cleanup
2020-03-09 12:23:13 +11:00
Jesse Duffield
79299be3b2
better keybindings for patch building mode
2020-02-29 18:48:10 +11:00
Jesse Duffield
4c9b620bd0
better keybindings for staging by line
2020-02-29 18:48:10 +11:00
Jesse Duffield
a7508a5dfd
fix cheatsheet script to support different contexts
2020-02-29 17:46:00 +11:00
Jesse Duffield
fdb543fa7d
add half and fullscreen modes
2020-02-25 08:45:30 +11:00
Jesse Duffield
1f5ccab1ce
eagerload commits when searching
2020-02-24 22:18:04 +11:00
Jesse Duffield
46be280c92
support searching in side panels
...
For now we're just doing side panels, because it will take more work
to support this in the various main panel contexts
2020-02-24 22:18:04 +11:00
Jesse Duffield
2a5763a771
switch custom command keybinding to ':'
2020-02-24 22:04:39 +11:00
Jesse Duffield
0f0da9c32a
fix wording
2020-02-16 09:57:49 +11:00
Jesse Duffield
feaf98bd01
add reset to upstream option on files panel
2020-02-16 09:57:49 +11:00
Jesse Duffield
f528e12c83
allow resetting to tag
2020-02-16 09:57:49 +11:00
Jesse Duffield
8ca9f93ccf
allow resetting to remote branch
2020-02-16 09:57:49 +11:00
Jesse Duffield
73d8064837
allow resetting to branch
2020-02-16 09:57:49 +11:00
Glenn Vriesman
047c3cf880
Added more keybinds
...
* Commit with editor
* Commit without hook
Signed-off-by: Glenn Vriesman <glenn.vriesman@gmail.com>
2020-02-04 23:21:51 +11:00
Glenn Vriesman
47d7d87c82
Added commit keybinding to staging views
2020-02-04 23:21:51 +11:00
Jesse Duffield
d647a96ed5
add reflog reset options
2020-01-09 22:36:07 +11:00
Jesse Duffield
1b64ea3210
add checkout reflog commit keybinding
2020-01-09 22:36:07 +11:00
Jesse Duffield
9b32e99eb8
add reflog tab in commits panel
2020-01-09 22:36:07 +11:00
Jesse Duffield
80377e4716
add git flow support
2020-01-08 22:03:15 +11:00
David Chen
205d731d7b
added a seperate keybinding option for checking out commits
2020-01-07 19:14:54 -08:00
David Chen
e72cab81c1
customizable keybinding for toggleDiffCommit
2020-01-07 10:03:13 -08:00
David Chen
844a2db83a
Merge branch 'master' into custom-keybindings
2020-01-07 09:57:06 -08:00
David Chen
529ba45cc7
fixed keybinding display in merge_panel.go
2020-01-07 09:50:25 -08:00
Jesse Duffield
09aabce3cd
allow commits to be checked out
2020-01-07 20:43:01 +11:00
David Chen
66c7672a0c
updated keybinding config docs
2020-01-07 08:38:07 +08:00
David Chen
fd72a09d1e
if statements to map
2020-01-06 23:37:33 +08:00
David Chen
0ddf7c05c8
PickBothHunks -> pickBothHunks
2020-01-06 23:37:21 +08:00
David Chen
86b101c410
Merge branch 'master' into custom-keybindings
2020-01-04 08:12:36 +00:00
matejcik
0a31edecb6
make Ctrl+P visible
2020-01-03 15:09:59 +01:00
David Chen
029de4ac86
re-position key names so that the menu will show 'enter' instead of 'ctrl-m', or 'esc' instead of 'ctrl-['
2019-12-08 14:57:29 -08:00
David Chen
0d1230a959
added keybinding for fetchRemote
2019-12-07 09:26:17 -08:00
David Chen
c507e5f562
Merge branch 'master' into custom-keybindings
2019-12-07 09:19:43 -08:00
David Chen
7194dfa43c
better error messages
2019-12-06 22:39:41 -08:00
David Chen
e425f1df87
suggested keybinding improvements
2019-12-06 22:36:52 -08:00
Jesse Duffield
3f4613feb0
allow fetching remotes with 'f'
2019-12-07 16:23:04 +11:00
David Chen
c89c35c6b3
bug fix: ctrl+combinations was not showing up in help menu
2019-12-06 10:26:39 -08:00
David Chen
1dbfea54bc
better error handling
2019-12-04 19:16:47 -08:00
David Chen
0a26050b47
fix
2019-12-04 18:33:00 -08:00
David Chen
fa6893fda9
feature: custom keybindings
2019-12-04 18:01:06 -08:00
Dawid Dziurla
1c38db1fc7
keybindings: alias V -> v
2019-11-27 20:37:07 +01:00
Jesse Duffield
bad06bb634
fix typo
2019-11-21 22:09:02 +11:00
Jesse Duffield
3c13229145
add tags panel
2019-11-21 22:07:14 +11:00
Jesse Duffield
cea24c2cf9
allow editing remotes
2019-11-21 22:07:14 +11:00
Jesse Duffield
3b0cef2ec8
better handling of click events in list views
2019-11-21 22:07:14 +11:00
Jesse Duffield
07cbae4019
support setting upstream
2019-11-21 22:07:14 +11:00
Jesse Duffield
dcb5285797
support rebasing onto remote branch
2019-11-21 22:07:14 +11:00
Jesse Duffield
a9cd647075
support deleting remote branches
2019-11-21 22:07:14 +11:00
Jesse Duffield
2afbd7ba7f
support merging remote branches into checked out branch
2019-11-21 22:07:14 +11:00
Jesse Duffield
55ff0c0dee
support detached heads when showing the selected branch
2019-11-21 22:07:14 +11:00
Jesse Duffield
6b7aaeca45
support adding/removing remotes
2019-11-21 22:07:14 +11:00
Jesse Duffield
986abc1e45
support viewing a remote branch
2019-11-21 22:07:14 +11:00
Jesse Duffield
61dac10bb9
support navigating remotes view
2019-11-21 22:07:14 +11:00
Jesse Duffield
92e43d9e77
allow changing tabs with [ and ]
2019-11-21 22:07:14 +11:00
Jesse Duffield
8aa1062e06
extract out some logic for list views
2019-11-21 22:07:14 +11:00
Jesse Duffield
7e0a8f235e
add contexts to views
2019-11-21 22:07:14 +11:00
Jesse Duffield
e6be849eb2
add remotes context to branches view
2019-11-21 22:07:14 +11:00
Jesse Duffield
7995d56a85
allow editing or opening a file while resolving merge conflicts
2019-11-14 22:22:47 +11:00
Jesse Duffield
f43ba728e3
prompt to set upstream when pulling on untracked branch
...
prompt to set upstream when pulling on untracked branch
2019-11-13 21:36:16 +11:00
Jesse Duffield
cbc82cd3c1
allow for changing the current directory on exit
...
For this to work you'll need to put this in your ~/.zshrc (or equivalent rc file):
lg()
{
export LAZYGIT_NEW_DIR_FILE=/Users/jesseduffieldduffield/Library/Application\ Support/jesseduffield/lazygit/.lastd
lazygit "$@"
if [ -f $LAZYGIT_NEW_DIR_FILE ]; then
cd "$(cat $LAZYGIT_NEW_DIR_FILE)"
rm -f $LAZYGIT_NEW_DIR_FILE > /dev/null
fi
}
2019-11-11 21:45:31 +11:00
Jesse Duffield
98666186ee
add '?' keybinding for opening options menu
2019-11-10 22:32:13 +11:00
Jesse Duffield
941d3c6648
allow secondary view to be scrolled
2019-11-10 22:32:13 +11:00
Jesse Duffield
131113b065
simplify how the context system works
2019-11-10 22:32:13 +11:00
Jesse Duffield
e85310c0a9
add mouse support
2019-11-10 22:32:13 +11:00
Jesse Duffield
d0d92c7697
remove old add patch keybinding
2019-11-10 15:01:40 +11:00
Jesse Duffield
6d5d054c30
support line by line additions in staging and patch building contexts
2019-11-05 19:22:01 +11:00
Jesse Duffield
d5e443e8e3
Support building and moving patches
...
WIP
2019-11-05 19:22:01 +11:00
Jesse Duffield
11e57edbb3
use v keybindings instead of c
2019-11-05 19:22:01 +11:00
Jesse Duffield
820f3d5cbb
support split view in staging panel and staging ranges
2019-11-05 19:22:01 +11:00
Giorgio Previtera
3524f6baa9
480 - remove duplication by using a decorator
...
Also use a for loop to append the new keybindings
2019-10-27 12:39:08 +11:00
Giorgio Previtera
ac5cbc1d2c
#480 Allow cycling side panels with number keys
2019-10-27 12:39:08 +11:00
Jesse Duffield
0f0fda1660
allow stashing staged changes
...
reinstate old stash functionality with the 's' keybinding
2019-06-06 20:50:19 +10:00
Jesse Duffield
527c025a0c
use shift+j/k to scroll main, ctrl+j/k to move commits
2019-05-25 16:48:17 +10:00
Suhas Karanth
e38d9d5f22
Add alternatives for scroll actions to context map
2019-05-12 16:20:42 +10:00
Suhas Karanth
97f060d38d
Add field Alternative to gui.Binding
...
Document and use alternative keybinding for generating cheatsheet. Add
alt keybinding fn+up/down for scroll up/down actions.
Also run `go run scripts/generate_cheatsheet.go`.
2019-05-12 16:20:42 +10:00
Jesse Duffield
5a0d0bb299
support resetting to a commit in either soft, hard, or mixed mode
2019-05-06 22:44:38 +10:00
Jesse Duffield
0d3a193ab5
Add 'w' keybinding in files panel to commit as a WIP
...
If your git.skipHookPrefix is set to, say, WIP, in your config, then
hitting 'w' in the files panel will bring up the commit message panel
with 'WIP' pre-filled, so you just need to hit enter to confirm
(or add some more to the message) in order to commit your changes
with the --no-verify flag, meaning the pre-commit hook will be skipped
2019-04-13 14:38:17 +10:00
Jesse Duffield
55538a3695
support custom commands
2019-04-07 17:15:01 +10:00
Jesse Duffield
60e33f5d8c
Allow for creating fixup! commits
2019-04-07 13:13:40 +10:00
skanehira
c350cdba43
add feature of display diff between specific commits #397
2019-04-06 13:02:20 +11:00
Jesse Duffield
acfc961909
move soft reset keybinding into reset options
2019-03-23 13:26:17 +11:00
Jesse Duffield
ff97ef7b94
support discarding unstaged changes
2019-03-23 13:26:17 +11:00
Jesse Duffield
b6447ebdbb
allow adding a file viewed from the commit files panel
2019-03-16 10:20:27 +11:00
Jesse Duffield
4f7f6a073c
allow user to discard old file changes for a given commit
2019-03-16 10:20:27 +11:00
Jesse Duffield
0e008cc15f
allow user to checkout old files
2019-03-16 10:20:27 +11:00
Jesse Duffield
1ad9c6faac
minor cleanup
2019-03-16 10:20:27 +11:00
skanehira
06fe726ee7
Add feature of display committed file list #383
2019-03-16 10:20:27 +11:00
Jesse Duffield
8305d8e72f
hide donate button if mouse events are disabled
2019-03-03 15:21:20 +11:00
Jesse Duffield
dbb01b028d
populate dutch and polish i18n files with new messages
2019-03-02 21:31:48 +11:00
Jesse Duffield
7a170bbccf
extend cheatsheet generator to contain context based keybindings
2019-03-02 19:05:21 +11:00
Jesse Duffield Duffield
8c0ea8f45f
mouse support
2019-03-02 17:49:30 +11:00
Jesse Duffield
afbc028ad6
revert to the old keybinding for stash: I don't want anybody accidentally deleting changes they are trying to stash
2019-03-02 17:46:56 +11:00
Jesse Duffield
e331dfcaf8
update i18n
2019-03-02 17:46:56 +11:00
Jesse Duffield Duffield
a8858cbd12
support cherry picking commits
2019-02-24 13:51:52 +11:00
Jesse Duffield
0228e25084
work towards more interactive rebase options
2019-02-19 23:36:36 +11:00
Jesse Duffield
d44638130c
add various interactive rebase commands
2019-02-18 23:27:54 +11:00
Jesse Duffield
e011e9bc42
more work on rebasing feature
2019-02-16 21:01:17 +11:00
Jesse Duffield
ad93b4c863
consider whether the view has focus when rendering the contents of a view
2019-02-16 15:17:44 +11:00
Jesse Duffield
198cbee498
introduce panel contexts and more work on rebasing
2019-02-16 12:07:27 +11:00
Jesse Duffield
77faf85cfc
post-merge cleanup
2019-02-11 21:07:12 +11:00
Jesse Duffield
3d343e9b57
Merge branch 'master' into feature/rebasing
2019-02-11 21:02:53 +11:00
Dawid Dziurla
b6f8ebc0ca
delete KeyReadable field from Binding struct
...
also rewrite GetKey function
2019-01-17 10:11:17 +11:00
Jesse Duffield
865c7c2332
minor refactor of credentials panel into its own file
2018-12-18 22:19:32 +11:00
Jesse Duffield
c71bcc64ed
move fetch keybinding to files view to make way for branch-specific fetched
2018-12-12 22:33:42 +11:00
Jesse Duffield
9489a94473
Make merge panel its own panel
2018-12-11 22:02:12 +11:00
Jesse Duffield
e0ff46fe53
more work on rebasing including visual indicators
2018-12-11 09:39:54 +11:00
Glenn Vriesman
88c01c1ded
Added rebase keybinding
2018-12-11 09:39:54 +11:00
mjarkk
61c2778de1
Changed pushPassUname name to credentials
2018-12-10 07:51:06 +01:00
Mark Kopenga
19a6a32625
Merge branch 'master' into https-ask-for-username-password
2018-12-08 16:41:39 +01:00
Jesse Duffield
ff856b7630
fetching branches without checking out
2018-12-08 11:51:47 +11:00
Jesse Duffield
ca3afa2a39
standardising how list panels deal with cursor movement
2018-12-08 11:51:47 +11:00
Jesse Duffield
99a8b1ae8b
making a start on unidirectional data binding to fix these UI bugs
2018-12-08 11:51:47 +11:00
Mark Kopenga
1b6d34e76a
Merge branch 'master' into https-ask-for-username-password
2018-12-06 08:31:12 +01:00
Jesse Duffield
3b51d7cd00
clean as well as reset (I'm hoping this is a good design decision)
2018-12-05 20:06:47 +11:00
Jesse Duffield
c0f9795910
staging lines and hunks
2018-12-05 19:33:46 +11:00
Jesse Duffield
658e5a9faf
initial support for staging individual lines
2018-12-04 22:11:48 +11:00
mjarkk
2edd2b74ff
Removed a lot of useless code
2018-12-02 14:58:18 +01:00
BlakeMScurr
181f91d2ef
Add full stops to new comments.
2018-11-30 13:47:14 +13:00
BlakeMScurr
643cdd3461
Add simple comments to uncommented functions.
2018-11-30 11:04:08 +13:00
Mark Kopenga
45c249acca
Merge branch 'master' into https-ask-for-username-password
2018-10-27 15:06:51 +02:00
Mark Kopenga
1fedda6a75
Merge branch 'master' into https-ask-for-username-password
2018-10-23 13:52:50 +02:00
Jesse Duffield
467775fc1c
Merge branch 'master' into master
2018-10-23 09:43:25 +11:00
Naveen Vardhi
3a23cb87b7
Remove force delete keybinding
...
And force delete messages gives feedback about merge status
2018-10-21 21:13:24 +05:30
mjarkk
12425f0aa7
First good success
2018-10-20 17:37:55 +02:00
Kristijan Husak
df0e3e52fe
Add option to create pull request form branches panel.
2018-10-13 22:54:51 +02:00
Kristijan Husak
190309e5c1
Check if there is any commit to amend and use 'A' instead of 'M' as shortcut.
2018-10-08 21:19:45 +02:00
Kristijan Husak
28fe3d6cf9
Use confirmation popup for amending last commit.
2018-09-25 22:11:51 +02:00
Jesse Duffield
7164f37266
Merge branch 'master' into feature/commit-amend
2018-09-25 19:05:24 +10:00
Jesse Duffield
e91fb21233
add recent repos menu option
2018-09-19 19:15:29 +10:00
Jesse Duffield
768b9453f8
Merge branch 'hotfix/cursor-positioning' into feature/recent-repos
2018-09-19 18:40:41 +10:00
Jesse Duffield
b384fcf6af
generalise popup menu panel
2018-09-18 21:07:25 +10:00
Jesse Duffield
c00c834b35
standardise rendering of lists in panels
2018-09-17 21:02:30 +10:00
Kristijan Husak
61f0801bd3
Add ammend commit action.
2018-09-13 12:44:32 +02:00
Dawid Dziurla
6f7de83bce
Merge branch 'master' into feature/help
...
conflicts resolved
2018-09-09 10:41:01 +02:00
Jesse Duffield
ca715c5b23
support switching to recent repo
2018-09-07 09:41:15 +10:00
Dawid Dziurla
db2e2160a9
change menu keybinding from ? to x
2018-09-05 15:55:24 +02:00
Dawid Dziurla
34d1648bd3
fmt strikes again
2018-09-05 13:23:06 +02:00
Dawid Dziurla
906f8e252e
include global keybindings in menu
2018-09-05 13:16:40 +02:00
Dawid Dziurla
98763e98cb
initial commit message counter
2018-09-05 11:26:54 +02:00
Dawid Dziurla
557009e660
help -> menu
2018-09-05 11:12:11 +02:00
Dawid Dziurla
bf8514f5e2
helperize spaces
2018-09-03 18:44:56 +02:00
Dawid Dziurla
230a5afa4c
remove capitalization of keybindings descriptions
2018-09-03 18:16:54 +02:00
Dawid Dziurla
59f50010b6
apply fmt again
2018-09-03 18:01:07 +02:00
Dawid Dziurla
b5827b7d80
merge conflict effect fix
2018-09-03 17:57:03 +02:00
Dawid Dziurla
359636c1aa
add generate_cheatsheet script
...
script is generating markdown document with small cheatsheet
in selected language
2018-09-03 17:54:06 +02:00
Dawid Dziurla
314c8c279a
apply fmt on keybindings
2018-09-03 17:54:06 +02:00
Dawid Dziurla
90a4cada82
add missing descriptions
2018-09-03 17:54:06 +02:00
Dawid Dziurla
7ec5b6cc30
indent keybindings
2018-09-03 17:54:06 +02:00
Dawid Dziurla
9ceaf5b9a9
move descriptions to i18n
2018-09-03 17:52:05 +02:00
Dawid Dziurla
28a9594ef7
update help panel
...
- delete scrolling ability
- lines are now selectable
- implemented handler execution when space is pressed
- add example descriptions for status panel keybindings
2018-09-03 17:52:05 +02:00
Dawid Dziurla
77623db1d0
apply fmt
2018-09-03 17:52:05 +02:00
Dawid Dziurla
6a99d36ae1
change key from 'H' to '?'
2018-09-03 17:52:05 +02:00
Dawid Dziurla
2416f585ce
initial help panel
2018-09-03 17:52:05 +02:00
Dawid Dziurla
741e28d01a
move bindings to getKeybindings()
2018-09-03 17:52:05 +02:00
Jesse Duffield
6fc4cb1b96
Merge branch 'master' into rename-commits-in-user-editor
2018-09-03 19:53:16 +10:00
Daniele D'Orazio
9e6a4a529a
add keybinding to open user editor when renaming last commit
2018-09-01 12:14:42 +02:00
Jesse Duffield
ae0d88f855
WIP using runDirectCommand with xdg-open
2018-09-01 11:38:32 +10:00
Jesse Duffield
b4323c029f
Merge branch 'master' into feature/add-all
2018-08-27 20:57:50 +10:00
Jesse Duffield
21f6e9ba87
auto-updates
2018-08-25 17:32:34 +10:00
Jesse Duffield
60422912c8
add 'a' keybinding to toggle staged/unstaged for all files
2018-08-25 08:59:51 +10:00
Jesse Duffield
6c389df57d
Merge pull request #200 from remyabel/feature/esc-quits
...
Esc will quit when not in popup, fixes #197
2018-08-24 09:16:56 +10:00
Tommy Nguyen
cd4063c763
s/escape/quit
2018-08-21 08:54:51 -04:00
Tommy Nguyen
646c205227
s/quit/escape, don't use special handling for views
2018-08-21 07:50:37 -04:00
Tommy Nguyen
dc911906b3
Esc will quit when not in popup, fixes #197
2018-08-21 06:36:20 -04:00
Rob Bast
8e3df6b981
add option to force delete given branch
2018-08-20 08:37:16 +02:00
Jesse Duffield
a1a828a781
support opening and editing config file
2018-08-18 14:54:05 +10:00
Jesse Duffield
ebfed34145
add PR #135 keybindings to this branch
2018-08-13 23:46:08 +10:00
Jesse Duffield
9e725ae24e
got this bad boy compiling again
2018-08-13 21:16:21 +10:00
Jesse Duffield
97cff65612
progress on refactor
2018-08-13 20:26:02 +10:00
Andrei Miulescu
dcd461d29f
Restrucure project in a way where it is more modular
2018-08-12 19:31:27 +10:00