Jesse Duffield
f97de692e3
move helpers into their own struct
2022-03-17 19:13:40 +11:00
Jesse Duffield
2692637fbe
standardise naming
2022-03-17 19:13:40 +11:00
Jesse Duffield
77d0732fa8
add actions abstraction
2022-03-17 19:13:40 +11:00
Jesse Duffield
138be04e65
refactor contexts code
2022-03-17 19:13:40 +11:00
Jesse Duffield
1a74ed3214
avoid deadlock
2022-03-17 19:13:40 +11:00
Jesse Duffield
a2318d75b5
fix some things
2022-03-17 19:13:40 +11:00
Jesse Duffield
1dd7307fde
start moving commit panel handlers into controller
...
more
and more
move rebase commit refreshing into existing abstraction
and more
and more
WIP
and more
handling clicks
properly fix merge conflicts
update cheatsheet
lots more preparation to start moving things into controllers
WIP
better typing
expand on remotes controller
moving more code into controllers
2022-03-17 19:13:40 +11:00
Jesse Duffield
a90b6efded
start refactoring gui
2022-03-17 19:13:40 +11:00
Jesse Duffield
fa8571e1f4
rename field
2022-03-17 19:01:28 +11:00
David Roman
b8fc829f86
Record current directory on switch
2022-03-17 19:01:28 +11:00
Ram Bhosale
7be25a105d
allow skipping confirmation prompt after opening subprocess
2022-03-17 17:52:31 +11:00
Matt Cles
9adf4a1908
Add shared function for loading map of custom colors
2022-02-01 18:55:45 +11:00
Matt Cles
4df7646654
Add configurable colors for branch prefixes
...
Branches can now be colored based on their prefix, if it matches
a user defined prefix in the config file. If no user defined
prefix matches, then it will fallback to the defaults: green for
'feature', yellow for 'bugfix', and red for 'hotfix'. All
remaining branches will be set to the default text color.
2022-02-01 18:55:45 +11:00
Jesse Duffield
c8cc18920f
improve merge conflict flow
2022-01-26 14:50:47 +11:00
Jesse Duffield
5b7dd9e43c
properly resolve cyclic dependency
2022-01-22 10:48:51 +11:00
Jesse Duffield
4ab5e54139
add support for git bisect
2022-01-22 10:48:51 +11:00
Birger Skogeng Pedersen
ab84410b41
check returned error (if any) from UpdateWindowTitle
2022-01-21 23:13:39 +11:00
Birger Skogeng Pedersen
62a7d9bbcc
invoke title-setting shell command appropriately
2022-01-21 23:13:39 +11:00
Birger Skogeng Pedersen
555d8bbc96
set repo name as window title when loading repo, fix #1691
2022-01-21 23:13:39 +11:00
Jesse Duffield
0092c9d08d
fix bug with subprocess
2022-01-16 03:32:09 +00:00
Jesse Duffield
cdcfeb396f
stop refreshing the screen so much
2022-01-15 14:15:41 +11:00
Jesse Duffield
ee15202207
add newline after message because it looks like the message doesn't appear otherwise for some reason
2022-01-09 14:09:53 +11:00
Jesse Duffield
18f48a43d5
add some more linters
2022-01-09 14:09:53 +11:00
Jesse Duffield
364c5db19c
shorten name
2022-01-09 14:09:53 +11:00
Jesse Duffield
f503ff1ecb
start breaking up git struct
2022-01-09 14:09:53 +11:00
Jesse Duffield
48a4565d1f
remove log of error now that we're returning it normally
2022-01-07 11:01:42 +11:00
Jakob Kogler
ee7a6391a8
remove redundant commit
2022-01-07 11:01:42 +11:00
Jakob Kogler
68fc6059d3
rename variable to failedCommitMessage
2022-01-07 11:01:42 +11:00
Jakob Kogler
f981255a5b
don't ignore error when commit with subprocess fails
...
If signing by GPG is enabled, the git commit command will be executed in
a subprocess, differently from when it is executed without GPG signing.
In case of an error, e.g. a failing pre-commit hook, the error needs to
be passed along, and not just ignored.
2022-01-07 11:01:42 +11:00
Jakob Kogler
beedc2553d
remember the message if commit fails
...
In case a commit fails, e.g. because a pre-commit hook returns an error,
lazygit will now remember the commit message and will suggest it during
the next commit (e.g. after fixing the error of the pre-commit hook).
2022-01-07 11:01:42 +11:00
Jesse Duffield
0d3e5e6a1d
simplify fetch
2022-01-07 10:52:51 +11:00
Jesse Duffield
91fe68576c
refactor
2022-01-07 10:52:51 +11:00
Jesse Duffield
192a548c99
refactoring the config struct
2022-01-04 09:07:15 +11:00
Jesse Duffield
01ea5813a8
align Gui struct with GitCommand
2022-01-04 09:07:15 +11:00
Jesse Duffield
18ab086126
introduce Common struct for passing around common stuff
2022-01-04 09:07:15 +11:00
Jesse Duffield
b4c078d565
WIP
2022-01-04 09:07:15 +11:00
Jesse Duffield
18283ad41b
add popup handler for easier testing
2021-12-06 22:37:28 +11:00
Jesse Duffield
9a9e3d506d
more consistent rendering
2021-11-05 07:58:21 +11:00
Jesse Duffield
ccd80a0e4b
add menu options for log stuff
2021-11-05 07:58:21 +11:00
Jesse Duffield
37be9dbea1
support scrolling left and right
2021-11-05 07:58:21 +11:00
Jesse Duffield
802cfb1a04
render commit graph
2021-11-05 07:58:21 +11:00
Jesse Duffield
2fc1498517
some refactoring in anticipation of the graph feature
2021-11-01 10:03:49 +11:00
Jesse Duffield
c47c539e12
support user-configurable author colours
2021-10-30 18:26:06 +11:00
Jesse Duffield
3eb124c732
easier hiding of command log
2021-10-23 12:54:57 +11:00
Jesse Duffield
ca7252ef8e
suggest files when picking a path to filter on
...
async fetching of suggestions
remove limit
cache the trie for future use
more
more
2021-10-19 09:02:42 +11:00
Jesse Duffield
d02e52989e
small changes
2021-10-16 12:22:34 +11:00
mjarkk
913a2fd065
Allow having multiple config files
2021-10-16 12:22:34 +11:00
Jesse Duffield
ab0117c416
fix some encodings
2021-09-27 19:58:24 +10:00
mjarkk
79848087bc
Switch to github.com/gookit/color for terminal colors
2021-07-30 15:14:46 +02:00
Davyd McColl
a9f04d3925
✨ facilitate toggling whitespace in the diff view with a hotkey (c-w by default)
2021-07-01 17:13:13 +10:00
Jesse Duffield
ce7cbe58a0
naming change
2021-06-14 18:17:08 +10:00
Andrei Yangabishev
7588d5290b
ShowTotal flag
2021-06-10 12:43:05 +03:00
Jesse Duffield
93bf691fd6
refactoring
2021-06-06 09:12:49 +10:00
Jesse Duffield
a99e6ba071
update release notes
2021-04-20 18:34:47 +10:00
Jesse Duffield
604ee02cd9
ignore east asian width setting to avoid broken frame rendering
2021-04-19 23:06:05 +10:00
Jesse Duffield
98375dc902
refactor merge panel
2021-04-18 18:58:09 +10:00
Jesse Duffield
e73de332a1
refactor line by line panel
2021-04-18 16:55:09 +10:00
Jesse Duffield
06a8eb115c
make command log size configurable
2021-04-11 23:36:34 +10:00
Jesse Duffield
0bebfe454e
pull out function
2021-04-11 23:36:34 +10:00
Jesse Duffield
393ce05860
allow focusing on command log view
2021-04-11 17:07:49 +10:00
Jesse Duffield
4f03d7733a
allow showing, hiding, and scrolling the extras panel
2021-04-11 17:07:49 +10:00
Jesse Duffield
f2007f4d95
support scrolling extras view
2021-04-11 17:07:49 +10:00
Jesse Duffield
6fbe660f96
full coverage for logging commands
2021-04-11 17:07:49 +10:00
Jesse Duffield
bb918b579a
start adding support for logging of commands
2021-04-11 17:07:49 +10:00
Jesse Duffield
e145090046
add cmdLog panel
2021-04-11 17:07:49 +10:00
Jesse Duffield
8d416634ba
update release notes
2021-04-11 10:21:53 +10:00
Jesse Duffield
e092da5f78
pause background threads when running subprocess
2021-04-10 12:16:45 +10:00
Jesse Duffield
e42e7e5cbd
fix commit amend
2021-04-10 11:54:38 +10:00
Jesse Duffield
4f700c23ba
fix crash on first open
2021-04-07 22:59:53 +10:00
Jesse Duffield
8c93289a72
reduce chance of deadlock by using a RW mutex on the context stack
2021-04-06 19:34:32 +10:00
Jesse Duffield
f09309485a
remove time limit
2021-04-06 19:34:32 +10:00
Jesse Duffield
7178bab6b4
only re-use repo state when jumping in and out of submodules
2021-04-06 19:34:32 +10:00
Jesse Duffield
7bc6dc5cf3
show branches context when starting in filtering mode
2021-04-06 19:34:32 +10:00
Jesse Duffield
8301bba8ad
make it more likely for CI to work
2021-04-06 19:34:32 +10:00
Jesse Duffield
843b8ceab0
support tcell simulation screen
2021-04-06 19:34:32 +10:00
Jesse Duffield
6a0066253f
move recording code into gocui
2021-04-06 19:34:32 +10:00
Jesse Duffield
4fe512ff3a
test
...
type safe view access
2021-04-06 19:34:32 +10:00
Jesse Duffield
4b69ab08c1
WIP
2021-04-06 19:34:32 +10:00
Jesse Duffield
633b6f596d
WIP
2021-04-06 19:34:32 +10:00
Jesse Duffield
e6274c0757
remove sentinel errors
2021-04-06 19:34:32 +10:00
Jesse Duffield
0898a7bb57
refactor
2021-04-06 19:34:32 +10:00
Jesse Duffield
fafd5234bd
refactor to get view tab context map into gui state
2021-04-06 19:34:32 +10:00
Jesse Duffield
f1d7f59e49
switching repos without restarting the gui
2021-04-06 19:34:32 +10:00
Jesse Duffield
bc9a99387f
refactor of contexts and filtering
2021-04-06 19:34:32 +10:00
Jesse Duffield
69e9f6d29d
use suspense rather than close the gui when switching to a subprocess
2021-04-06 19:34:32 +10:00
Jesse Duffield
1fb2317bac
use true output mode
2021-04-06 19:34:32 +10:00
Jesse Duffield
6a6024e38f
use tcell via porting over code from awesome-gocui
2021-04-06 19:34:32 +10:00
Jesse Duffield
cc9293b386
add mutex to prevent crashes with merge conflicts
2021-04-02 11:09:12 +11:00
Jesse Duffield
efe43077bc
fix name
2021-04-02 11:00:15 +11:00
Jesse Duffield
af09223dd5
refactor
2021-04-02 11:00:15 +11:00
Jesse Duffield
7d62f103e4
big refactor to give our enums actual types
2021-04-02 11:00:15 +11:00
Jesse Duffield
9e85d37fb9
refactor to no longer call these things file changes
2021-04-02 11:00:15 +11:00
Jesse Duffield
332a3c4cbf
file tree for commit files
2021-04-02 11:00:15 +11:00
Jesse Duffield
e52cec9cdf
small refactor
2021-03-30 21:57:00 +11:00
Jesse Duffield
1b94462410
rename some things
2021-03-30 21:57:00 +11:00
Jesse Duffield
6fc3c03c4b
allow configuring to show file tree on startup
2021-03-30 21:57:00 +11:00
Jesse Duffield
a31db3df9c
support toggling collapsed
2021-03-30 21:57:00 +11:00
Jesse Duffield
45939171ea
WIP
...
start moving to new interface
WIP
WIP
WIP
WIP
WIP
2021-03-30 21:57:00 +11:00
Jesse Duffield
ad1468f66f
better handling of discarding files
2021-03-20 12:46:27 +11:00
Jesse Duffield
043cb2ea44
reload config whenever returning to gui
2021-02-24 02:45:05 -08:00
Nick Flueckiger
6f0f70bd92
Adding setup and config
2021-02-08 14:25:24 -08:00
Jesse Duffield
f31fbc10f6
soft code finding of suggestions
2020-11-28 20:48:17 +11:00
Jesse Duffield
be404068ff
support labels for suggestions which are distinct from values
2020-11-28 20:48:17 +11:00
Jesse Duffield
da3b0bf7c8
Start on supporting auto-suggestions when checking out a branch
...
switch to other fuzzy package with no dependencies
2020-11-28 20:48:17 +11:00
Jesse Duffield
682db77401
fix lint errors
2020-11-18 08:36:19 +11:00
Jesse Duffield
63f6d0c036
release notes in status panel
2020-10-10 00:23:01 +11:00
Jesse Duffield
4c9ec88be5
fix mutex deadlock
2020-10-10 00:23:01 +11:00
Jesse Duffield
9011271a01
fix another panic error
2020-10-10 00:23:01 +11:00
Jesse Duffield
795e4da8b8
do not put mutexes on state else we might unlock an unlocked mutex
2020-10-10 00:23:01 +11:00
Jesse Duffield
79e59d5460
add some safe goroutines
...
WIP
2020-10-10 00:23:01 +11:00
Jesse Duffield
2e05ac0c90
paging keybindings for line by line panel
...
support searching in line by line panel
move mutexes into their own struct
add line by line panel mutex
apply LBL panel mutex
bump gocui to prevent crashing when search item count decreases
2020-10-10 00:23:01 +11:00
Jesse Duffield
ece93e5eef
support recording sessions for testing purposes
2020-10-10 00:23:01 +11:00
Jesse Duffield
37bb89dac3
type i18n
2020-10-10 00:23:01 +11:00
Jesse Duffield
ca31e5258f
store popup version in state not config so that we never need to write to the user config
2020-10-10 00:23:01 +11:00
Jesse Duffield
4912205adb
remove viper
...
WIP
2020-10-10 00:23:01 +11:00
Jesse Duffield
7b4a0f20b2
add submodules context
2020-10-02 08:09:42 +10:00
Jesse Duffield
ce6f8ed1bc
move models folder into commands folder
2020-09-29 20:48:49 +10:00
Jesse Duffield
1759ddf247
move OS commands into their own package
2020-09-29 20:48:49 +10:00
Jesse Duffield
f9643448a4
move commit files
2020-09-29 20:48:49 +10:00
Jesse Duffield
91f0b0e28f
move stash panel
2020-09-29 20:48:49 +10:00
Jesse Duffield
8d2af5cc61
move file and submodule
2020-09-29 20:48:49 +10:00
Jesse Duffield
eda4619a4f
move remotes and remote branches
2020-09-29 20:48:49 +10:00
Jesse Duffield
e849ca3372
move tags
2020-09-29 20:48:49 +10:00
Jesse Duffield
630e446989
move commits model into models package
2020-09-29 20:48:49 +10:00
Jesse Duffield
44248d9ab0
pull branch model out into models package
2020-09-29 20:48:49 +10:00
Jesse Duffield
914fb36173
allow entering and returning from submodule
2020-09-29 18:21:59 +10:00
Jesse Duffield
b8da166ab1
support discarding submodule changes
2020-09-29 18:21:59 +10:00
Jesse Duffield
077f113618
add in-built logging support for a better dev experience
2020-09-26 11:00:50 +10:00
Jesse Duffield
40bec49de8
more efficient refreshing of rebase commits
2020-08-27 21:51:07 +10:00
Jesse Duffield
45a0378c01
do not create error panel for sentinel errors
2020-08-25 22:21:15 +00:00
Jesse Duffield
44ee28bb2e
support alacritty
2020-08-24 09:19:56 +10:00
Jesse Duffield
0f7003d939
allow spamming the p key
2020-08-23 11:30:29 +00:00
Jesse Duffield
66bd86b9b7
set keybindings after initialising views
2020-08-23 17:49:58 +10:00
Jesse Duffield
94601b4dc9
use context to return to the correct view
2020-08-23 14:29:18 +10:00
Jesse Duffield
ed85ea69bd
cleanup of list context file
2020-08-23 14:29:18 +10:00
Jesse Duffield
5638a40007
carry more mode state across after returning from subprocess
2020-08-23 14:29:18 +10:00
Jesse Duffield
d6005dc0eb
more accurate comment
2020-08-23 14:29:18 +10:00
Jesse Duffield
148f601bcb
cleanup now that we're always using the same diff command
2020-08-23 14:29:18 +10:00
Jesse Duffield
c2b154acad
better handling of our different modes and also cherry picking
2020-08-23 14:29:18 +10:00
Jesse Duffield
fbd61fcd17
refactor how we handle different modes
2020-08-23 14:29:18 +10:00
Jesse Duffield
974c6510b8
add sub commit context
2020-08-23 14:29:18 +10:00
Jesse Duffield
59f5f5c1af
refactor
2020-08-23 14:29:18 +10:00
Jesse Duffield
2d90e1e8ee
commit files kind of generalised
2020-08-23 14:29:18 +10:00
Jesse Duffield
ddf25e14af
allowing commit files to be viewed in reflog as well
2020-08-23 14:29:18 +10:00
Jesse Duffield
146722beb8
rename to SelectedLineIdx
2020-08-23 14:29:18 +10:00
Jesse Duffield
eb5e54e9fd
use interface for panel state rather than pointer
2020-08-23 14:29:18 +10:00
Jesse Duffield
99707a527d
WIP
2020-08-23 14:29:18 +10:00
Jesse Duffield
419cb9feb8
more standardisation
2020-08-23 14:29:18 +10:00
Jesse Duffield
a32947e7a7
prepare for OnRender prop
2020-08-23 14:29:18 +10:00
Jesse Duffield
2fdadd383a
introduce new approach to handling tab states
2020-08-23 14:29:18 +10:00