bump README more
This commit is contained in:
		
							parent
							
								
									b0ffa1a3e6
								
							
						
					
					
						commit
						2ed3f68748
					
				
							
								
								
									
										51
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										51
									
								
								README.md
									
									
									
									
									
								
							|  | @ -21,21 +21,42 @@ Separate `diff`&`patch` functionality is provided too for sending | ||||||
| token-granularity patches. (The patches are similar to what `git diff | token-granularity patches. (The patches are similar to what `git diff | ||||||
| --word-diff` produces, but can be applied to files.) | --word-diff` produces, but can be applied to files.) | ||||||
| 
 | 
 | ||||||
|  | ## Installation | ||||||
|  | 
 | ||||||
|  | - To build from source, clone the repo and run `cabal install` in the directory | ||||||
|  |   (you need [a way to compile Haskell](https://www.haskell.org/downloads/)). | ||||||
|  | - [Releases](https://github.com/exaexa/werge/releases) come with prebuilt | ||||||
|  |   binaries that you may download and run as-is on many Linuxes and Macs. | ||||||
|  | 
 | ||||||
|  | Running of `werge` requires working installations of `diff` and `patch` | ||||||
|  | compatible with the ones from [GNU | ||||||
|  | diffutils](https://www.gnu.org/software/diffutils/): | ||||||
|  | - Most Linux distributions contain the correct diffutils | ||||||
|  | - On BSDs you should be able to install these from Ports | ||||||
|  |   ([FreeBSD](https://cgit.freebsd.org/ports/tree/textproc/diffutils), | ||||||
|  |   [OpenBSD](https://openports.eu/ports/textproc/gdiff)) | ||||||
|  | - On Macs, install [diffutils from | ||||||
|  |   brew](https://formulae.brew.sh/formula/diffutils). | ||||||
|  | 
 | ||||||
|  | In any other case, you may set up a path to any compatible `diff` and `patch` | ||||||
|  | (or suitable wrapper scripts) via environment variables `WERGE_DIFF` and | ||||||
|  | `WERGE_PATCH`. (If required, the same applies for `WERGE_GIT`.) | ||||||
|  | 
 | ||||||
| ## Demo | ## Demo | ||||||
| 
 | 
 | ||||||
| Original (`old` file): | ##### Original (`old` file): | ||||||
| ``` | ``` | ||||||
| Roses are red. Violets are blue. | Roses are red. Violets are blue. | ||||||
| Patch is quite hard. I cannot rhyme. | Patch is quite hard. I cannot rhyme. | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| Local changes (`my` file): | ##### Local changes (`my` file): | ||||||
| ``` | ``` | ||||||
| Roses are red. Violets are blue. | Roses are red. Violets are blue. | ||||||
| Patching is hard. I still cannot rhyme. | Patching is hard. I still cannot rhyme. | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| Remote changes (`your` file): | ##### Remote changes (`your` file): | ||||||
| ``` | ``` | ||||||
| Roses are red. | Roses are red. | ||||||
| Violets are blue. | Violets are blue. | ||||||
|  | @ -43,8 +64,10 @@ Patch is quite hard. | ||||||
| I cannot do verses. | I cannot do verses. | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| Token-merged version with `werge merge my orig your` (conflicts on the space | ##### Token-merged version | ||||||
| change that is too close to the disappearing "still" token): | 
 | ||||||
|  | This is produced with `werge merge my orig your` (conflicts on the space change | ||||||
|  | that is too close to the disappearing "still" token): | ||||||
| ``` | ``` | ||||||
| Roses are red. | Roses are red. | ||||||
| Violets are blue. | Violets are blue. | ||||||
|  | @ -53,8 +76,10 @@ I>>>>> cannot do verses. | ||||||
| ``` | ``` | ||||||
| (NOTE: option `-G` gives nicely colored output that is much easier to read.) | (NOTE: option `-G` gives nicely colored output that is much easier to read.) | ||||||
| 
 | 
 | ||||||
| Token-merged version with separate space resolution using `-s` (conflicts get | ##### Merge with separate space resultion | ||||||
| fixed separately): | Adding option `-s` to `werge merge` causes it to resolve space conflicts | ||||||
|  | separately, usually helping many cases that would be easily resolvable by a | ||||||
|  | human: | ||||||
| ``` | ``` | ||||||
| Roses are red. | Roses are red. | ||||||
| Violets are blue. | Violets are blue. | ||||||
|  | @ -62,6 +87,7 @@ Patching is hard. | ||||||
| I still cannot do verses. | I still cannot do verses. | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
|  | ##### Mixing in unresolvable conflict | ||||||
| A harder-conflicting file (`theirs`): | A harder-conflicting file (`theirs`): | ||||||
| ``` | ``` | ||||||
| Roses are red. | Roses are red. | ||||||
|  | @ -134,17 +160,6 @@ because the approach was too complex. Before that, the issue was tackled by | ||||||
| Arek Antoniewicz on MFF CUNI, who used regex-edged DFAs (REDFAs) to construct | Arek Antoniewicz on MFF CUNI, who used regex-edged DFAs (REDFAs) to construct | ||||||
| user-specifiable tokenizers in a pretty cool way. | user-specifiable tokenizers in a pretty cool way. | ||||||
| 
 | 
 | ||||||
| ## Installation |  | ||||||
| 
 |  | ||||||
| ```sh |  | ||||||
| cabal install |  | ||||||
| ``` |  | ||||||
| 
 |  | ||||||
| Running of `werge` requires a working installation of `diff` compatible |  | ||||||
| with the one from [GNU diffutils](https://www.gnu.org/software/diffutils/). You |  | ||||||
| may set up a path to such `diff` (or a wrapper script) via environment variable |  | ||||||
| `WERGE_DIFF`. |  | ||||||
| 
 |  | ||||||
| ## Integration with `git` | ## Integration with `git` | ||||||
| 
 | 
 | ||||||
| ### Automerging conflicts | ### Automerging conflicts | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue