summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2021-10-16Change PlusMinus to the correct MinusPlus, add documentationThomas Otto
2021-10-16Tests: store length of skipped header separatelyThomas Otto
2021-10-16Fix clippy warning needless_option_as_derefThomas Otto
2021-10-16Add inline-hint-style option and use for side-by-side wrap symbolsDan Davison
2021-10-16Rename syntect moduleDan Davison
2021-10-16Add side-by-side line wrappingThomas Otto
If the current line does not fit into the panel, then it is not truncated but split into multiple lines. A wrapping symbol is placed at the end of the line. If the new line is short enough, it is right-aligned. Wrapping is limited to a certain number of lines (--wrap-max-lines), if this is exceeded the line is truncated by a now highlighted truncation symbol. To disable wrapping set this value to 0.
2021-10-16Add line number width calculationThomas Otto
2021-10-16Left/Right converted into a simple typedefThomas Otto
2021-10-16StructOpt without DefaultThomas Otto
This does not use the values provided by default_value, so validation will fail.
2021-10-16Add fatal() function to handle exiting on errorsThomas Otto
Panic when testing or exit with return value 2.
2021-10-13Use bullet as default hunk marker in navigate modeDan Davison
Ref 130b0b6a #684
2021-09-19Option to set the background extension mode to ANSI or spacesThomas Otto
In side-by-side mode, if `background_color_extends_to_terminal_width` is set, the left panel color is extended via spaces, but the right one via an ANSI sequence which instructs the terminal emulator to fill the background color rightwards. The command line option --line-fill-method ansi|spaces can change how the right panel background is filled. Add enums `BgShouldFill` and `BgFillMethod` to better distinguish if the background should be filled, and if so, how.
2021-09-19General PlusMinus data structureThomas Otto
Can be indexed with Minus/Plus or in a side-by-side context with Left/Right to represent the left/right Panels.
2021-09-15Remove superfluous lowercasing of feature names. (#718)Levi Bard
Fixes #716
2021-09-15Display removed file name in file deletion case (#717)Dan Davison
2021-09-02Fix interaction between navigate and (hunk-header-style without "line-number")Dan Davison
Prior to this commit we were emitting a spurious colon when hunk-header-style was set to a value such as "syntax" (i.e. not including "line-number") and navigate was enabled. Fixes #672
2021-09-02Add failing test of navigate with (hunk-header-style without "line-number")Dan Davison
Ref #672
2021-08-30Clean upDan Davison
2021-08-30Rename functionDan Davison
2021-08-30Rename functionDan Davison
2021-08-30Refactor: more cleanup of main state machine loopDan Davison
2021-08-29Refactor: subcommands moduleDan Davison
2021-08-29Refactor: state machine handlers moduleDan Davison
2021-08-28Set a default blame paletteDan Davison
2021-08-28Handle blame outputDan Davison
Fixes #291, #426
2021-08-28Refactor: module for working with format stringsDan Davison
2021-08-28Add default-language optionDan Davison
2021-08-28Refactor: syntax_highlight_and_paint_line functionDan Davison
2021-08-28Refactor: eliminate format moduleDan Davison
2021-08-23Use dotted range notation in diff.submodule = short caseDan Davison
2021-08-23Refactor: select next handled event with single disjunction expression (#701)Dan Davison
- create test_* functions for all state machine events - move test_* into handle_* functions - select next handled event with pipeline - Inline test_* functions
2021-08-23More minimalistic display of submodule (short) diffs (#700)Dan Davison
* Rename state machine state: Submodule -> SubmoduleLog * More minimalistic display of submodule log diffs Partially fixes #662 * Defer emitting hunk header until first true hunk line A consequence is that we do not emit the (pseudo) hunk header in submodule (short) state; see #662.
2021-08-22662 submodule diffs (#699)Dan Davison
2021-08-21Refactor: use Option to model sometimes-null highlighter (#698)Dan Davison
* Refactor: use Option to model sometimes null highlighter The highlighter is only needed when a language has been identified for highlighting. Prior to this commit a dummy highlighter was being created in place of no highlighter at all. * Improve help text: slowness is due to edit inference Ref #659
2021-08-21Add some test coverage for truncate_str with a multibyte unicode characterDan Davison
https://graphemica.com/%DD%B6 Ref #677
2021-08-20Use "syntax theme" terminology in show-syntax-themes output (#697)Dan Davison
Ref #678
2021-08-20Merge pull request #694 from dandavison/693-remote-urlsDan Davison
Support `insteadOf` replacements in git remote URLs
2021-08-20Fix deadlock in `git diff` mode (#695)Dan Davison
Don't wait for the child process to exit before consuming the child process's output. Fixes #683
2021-08-20Fix empty line highlighting (#642)Thomas Otto
2021-08-20Revert "Add failing test that gitconfig insteadOf is honored"Dan Davison
This reverts commit e540004c9ae3a9fd6d3da6566422fb7f4a9ebdd1.
2021-08-20Add failing test that gitconfig insteadOf is honoredDan Davison
See #693
2021-08-20Support `insteadOf` replacements in git remote URLsDan Davison
Use libgit2 to query remote URL instead of querying remote.origin.url directly. This has the consequence that `insteadOf` replacements are honored. See https://git-scm.com/docs/git-config#Documentation/git-config.txt-urlltbasegtinsteadOf Fixes #693
2021-08-20Hold GitConfig in main Config structDan Davison
2021-08-20Revert "Support `insteadOf` replacements in git remote URLs"Dan Davison
This reverts commit d97227ded9d465c2c8355df5f9f8f6ba1c1213e8.
2021-08-20Support `insteadOf` replacements in git remote URLsDan Davison
Use libgit2 to query remote URL instead of querying remote.origin.url directly. This has the consequence that `insteadOf` replacements are honored. See https://git-scm.com/docs/git-config#Documentation/git-config.txt-urlltbasegtinsteadOf Fixes #693
2021-08-20Refactoring for #693 (#696)Dan Davison
2021-08-20Make it possible to jump between files when navigate is active (#684)Dan Davison
* Use distinct navigate label for file and hunk boundaries Ref #680 * Make it easy to remove hunk label from navigate regex Thanks @lepotic for the suggestion. Fixes #680 * Allow regex meta characters to be used in navigate anchors
2021-08-20Fix computed values to be computed after all set_options (#690)ulwlu
* Make truecolor option honorable from gitconfig * Add test that true-color can be read from git config The new test fails before 7ed3c2c3ee494dab25fd76b220da7c716a9b731f * Place computing process after set_options * Add test for checking if values requre computing set correctly * Remove unnecessary computed values candidate Co-authored-by: Dan Davison <dandavison7@gmail.com>
2021-08-18Remove unnecessary borrows (#692)Ben Armstead
2021-08-12Ignore ctrl-c (SIGINT) to avoid leaving an orphaned pager process. (#686)Dan Davison
Fixes #681