Commit graph

176 commits

Author SHA1 Message Date
Ching Pei Yang 2118ecdf8e Switch to github.com/adrg/xdg 2024-02-18 15:36:56 +01:00
Alex March e354a9bb48 Deprecate git.log.showGraph and git.log.order config
Added identical properties to AppState that should eventually have their defaults set.
2024-02-16 13:23:35 +01:00
Alex March 36a29f225b Add a sort order menu for local branches 2023-12-27 15:25:29 +01:00
Alex March 3fe491fcb2 Implement a sort order menu for remote branches 2023-12-22 16:30:20 +09:00
Stefan Haller 7774fe0ab3 Move diff context size from UserConfig to AppState 2023-09-05 13:55:30 +02:00
Stefan Haller f7db17f7d0 Load defaults for AppState before reading from yaml
So far this hasn't been necessary because all defaults were zero values. We're
about to add the first non-zero value though, and it's important that it is
initialized correctly for users who have a state.yml that doesn't have it yet.
2023-09-04 17:50:49 +02:00
Stefan Haller be667682f0 Move IgnoreWhitespaceInDiffView to AppState, and persist it when it changes 2023-07-31 11:41:55 +02:00
hatredholder 75674d819c bring back yaml library fork 2023-07-26 12:50:39 +03:00
Stefan Haller 2f6b7b9bc3 Rename the gui.skipUnstageLineWarning conf key to gui.skipDiscardChangeWarning 2023-06-26 08:19:58 +02:00
Jesse Duffield cc0edd42bb
Merge pull request #2508 from Ryooooooga/remove-jesseduffield-yaml 2023-05-30 17:39:25 +10:00
Jesse Duffield e0ecc9e835 Allow global logging when developing
I'll be honest, for all I know logging should be global in general: it is
a pain to pass a logger to any struct that needs it. But smart people on the
internet tell me otherwise, and I do like the idea of not having any global
variables lying around.

Nonetheless, I often need to log things when locally debugging and that's a
different kind of logging than the kind you would include in the actual
released binary. For example if I want to log something from gocui, I would
rather not have gocui depend on lazygit's logging setup.
2023-05-25 18:31:32 +10:00
Ryooooooga 33f332e28d
build: remove github.com/jesseduffield/yaml package 2023-03-17 23:19:11 +09:00
jiepeng b8900baf1a remove deprecated calls 2022-09-17 15:10:41 -07:00
Jesse Duffield 46ae55f91e introduce gui adapter 2022-08-13 13:51:56 +10:00
Jesse Duffield 86ac309e08 add build info when building from source 2022-08-01 20:16:50 +10:00
Luka Markušić abf203e012
Update pkg/config/app_config.go
Print out error to narrow down the search

Co-authored-by: Ryoga <eial5q265e5+github@gmail.com>
2022-05-31 13:28:24 +02:00
Luka Markušić abeb03b090 Add helpful message on unmarshall error 2022-05-28 17:29:30 +02:00
Rhydian Jenkins 7d495573ab Bug fix - unused name param 2022-05-06 23:00:44 +01:00
casswedson b7928042f0 chore: typo hunting ft. codespell 2022-04-06 08:52:41 +10:00
Ryooooooga 86c259623c feat: fix permission problem of temp dirs 2022-04-02 08:48:38 +11:00
Jesse Duffield a34bdf1a04 update linters 2022-03-19 12:12:57 +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 03b946cc8f no more config in git command struct 2022-01-04 09:07:15 +11:00
Jesse Duffield 3eb124c732 easier hiding of command log 2021-10-23 12:54:57 +11:00
Jesse Duffield ef544e6ce9 add more suggestions 2021-10-23 12:29:52 +11:00
Jesse Duffield 3621084096 small changes 2021-10-16 12:22:34 +11:00
Jesse Duffield 8c25aaa687 extra comment 2021-10-16 12:22:34 +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
Ryooooooga 663c036ca5 Save patch files in TempDir 2021-09-29 22:05:58 +10:00
Jesse Duffield 043cb2ea44 reload config whenever returning to gui 2021-02-24 02:45:05 -08:00
Nick Flueckiger 7513bfb13a Implement suggestions 2020-11-28 10:42:38 +11:00
Nick Flueckiger 1f27002b84 Switch the directory check 2020-11-28 10:42:38 +11:00
Nick Flueckiger 669bfe763a A small change that enables direct lazygit directory config 2020-11-28 10:42:38 +11:00
Jesse Duffield 1e79ab78dd return default config when dealing with read only filesystem rather than create new config file 2020-10-12 08:48:28 +11:00
Jesse Duffield 485f6d5386 support configurable config 2020-10-10 00:23:01 +11:00
Jesse Duffield 7d9aa97f96 have typed default config 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 2dc848506c bulk submodule menu 2020-10-02 08:09:42 +10:00
Jesse Duffield 86dd9d87dd allow updating submodule 2020-10-02 08:09:42 +10:00
Jesse Duffield da3e00823f allow submodule init and show submodule diff with a prefix 2020-10-02 08:09:42 +10:00
Jesse Duffield 077f113618 add in-built logging support for a better dev experience 2020-09-26 11:00:50 +10:00
Francisco Miamoto 86f296a898 add config for disabling force pushing 2020-08-31 09:22:39 +10:00
Jesse Duffield 3ebb91c07a better keybinding ('W') for viewing diff 2020-08-24 23:08:05 +00:00
Jesse Duffield 44d8b3e8f3 allow overriding default confirm/escape keybindings 2020-08-17 18:22:57 +10:00
Jesse Duffield 8430b04492 allow configurable main panel split 2020-08-13 21:50:23 +10:00
Jesse Duffield 35b72420ad support accordian mode i.e. expanding focused side panels 2020-08-13 21:50:23 +10:00
Jesse Duffield 8ff74072f8 update config 2020-08-12 18:47:16 +10:00
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
Randshot 570d27ffaa
Merge branch 'master' into add-overrideGpg-switch
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-07-12 11:47:35 +02:00
Jasper Mendiola e89bf5d06b add oneline-graph 2020-07-10 18:55:00 +10:00
Randshot 65e955c622
add overrideGpg switch, which prevents lazygit from spawning a separate process when using GPG
Signed-off-by: Randshot <randshot@norealm.xyz>
2020-05-30 23:39:07 +02:00
Jesse Duffield 913f17ee3e prevent flicker from bolding background of selected line 2020-05-15 21:12:12 +10:00
Jesse Duffield 267730bc00 standardise how we handle background colours 2020-05-13 21:24:25 +10:00
Jesse Duffield f05a5e531e warnings for stash actions 2020-04-20 18:57:08 +10:00
Jesse Duffield 304607ae5d support configurable merge args 2020-04-20 18:40:49 +10:00
Jesse Duffield 2974a57943 support copying stuff to clipboard 2020-04-15 10:44:56 +00:00
Jesse Duffield 647ab9bf0f better keybinding 2020-03-29 18:26:24 +11: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 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 229f5ee48c add keybindings for paging in list panels and jumping to top/bottom 2020-03-28 14:02:53 +11:00
Jesse Duffield daecdd7c2b redoing 2020-03-25 09:39:04 +11:00
Jesse Duffield 8fbcc36331 allow resetting cherry picked commits selection 2020-03-19 21:42:21 +11:00
Jesse Duffield 1be0ff8da7 better upstream tracking and allow renaming a branch 2020-03-18 21:29:06 +11:00
Jesse Duffield 31e201ca52 allow configuring side panel width 2020-03-04 00:12:23 +11:00
Jesse Duffield 54241d8ab9 more generic way of supporting custom pagers 2020-03-04 00:12:23 +11:00
Jesse Duffield d0ab747479 color active frames green by default 2020-02-25 21:27:50 +11:00
Jesse Duffield fdb543fa7d add half and fullscreen modes 2020-02-25 08:45:30 +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 fabdda0492 allow customizing background color in staging mode 2020-02-23 18:37:19 +11:00
Jesse Duffield b64953ebdb safely unstage lines 2020-01-29 18:19:11 +11:00
Jesse Duffield 9b32e99eb8 add reflog tab in commits panel 2020-01-09 22:36:07 +11:00
Jesse Duffield 79e696d8a7 switch to 'i' for toggling diff commits 2020-01-08 22:59:12 +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 0ddf7c05c8 PickBothHunks -> pickBothHunks 2020-01-06 23:37:21 +08:00
David Chen 0d1230a959 added keybinding for fetchRemote 2019-12-07 09:26:17 -08:00
David Chen e425f1df87 suggested keybinding improvements 2019-12-06 22:36:52 -08:00
David Chen fa6893fda9 feature: custom keybindings 2019-12-04 18:01:06 -08:00
Jesse Duffield de5bcb8b9c add some shameless self promotion 2019-11-10 22:32:13 +11:00
Jesse Duffield e85310c0a9 add mouse support 2019-11-10 22:32:13 +11:00
mjarkk 02fef3136f Added light theme option to the settings 2019-10-20 12:32:57 +11:00
Dawid Dziurla 379dcf0972 UserConfigPath -> UserConfigDir 2019-09-24 19:01:40 +10:00
Dawid Dziurla 0d25d113c9 download updated binary to config dir rather than /tmp 2019-09-24 19:01:40 +10:00
matejcik 4c73c8889f move git config options to top-level in default config 2019-09-08 11:20:15 +10:00
matejcik 8f786e3fd9 configurable auto-fetch 2019-09-08 11:20:15 +10:00
haowei e1f5601d4b fix typo 2019-07-14 14:24:59 +10:00
Jesse Duffield ab9fa291a8 Add skipHookPrefix to config
allows a user to specify a commit message prefix that will tell lazygit to skip
the pre-commit hook. This defaults to WIP. Setting it to the empty string will
disable the feature.

So if my message goes 'WIP: do the thing' then the pre-commit hook will not run
2019-04-13 14:38:17 +10:00
Jesse Duffield a5d27764cd support user configuring mouse events to be enabled 2019-03-03 16:15:20 +11:00
Jesse Duffield 76a27f417f rename any commit 2019-02-18 21:29:43 +11:00
Jesse Duffield e011e9bc42 more work on rebasing feature 2019-02-16 21:01:17 +11:00
mjarkk 76e9582739 Not always git fetch 2018-12-10 13:45:03 +01:00
mjarkk f14effe5f5 Worked and fixed a view comments 2018-12-09 13:04:19 +01:00
mjarkk efb82a58ae Tried to fix circleci error 2018-12-08 16:54:00 +01:00
mjarkk 2f7bd2896c Fixed error when there is no state.yml 2018-12-07 15:46:49 +01:00