[PECL-CVS] [pecl-text-xdiff] main: syntax highlight
[email protected] (Rasmus Lerdorf) Tue, 7 Apr 2026 11:48:08 +0000
| Newsgroups | php.pecl.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: Rasmus Lerdorf (rlerdorf) Date: 2026-04-07T07:48:03-04:00 Commit: https://github.com/php/pecl-text-xdiff/commit/daa4538c2c810dd5ffa5a67044d1f9d5a7ab7648 Raw diff: https://github.com/php/pecl-text-xdiff/commit/daa4538c2c810dd5ffa5a67044d1f9d5a7ab7648.diff syntax highlight Changed paths: M README.md Diff: diff --git a/README.md b/README.md index d172b1f..ea59552 100644 --- a/README.md +++ b/README.md @@ -31,67 +31,95 @@ make install ### Diff -#### `xdiff_string_diff(string $str1, string $str2, int $context = 3, bool $minimal = false): string|false` +```php +xdiff_string_diff(string $str1, string $str2, int $context = 3, bool $minimal = false): string|false +``` Creates a unified diff of two strings. `$context` sets the number of surrounding lines. `$minimal` reduces diff size at the cost of speed. -#### `xdiff_file_diff(string $file1, string $file2, string $dest, int $context = 3, bool $minimal = false): bool` +```php +xdiff_file_diff(string $file1, string $file2, string $dest, int $context = 3, bool $minimal = false): bool +``` Creates a unified diff of two files and writes the result to `$dest`. -#### `xdiff_string_diff_binary(string $str1, string $str2): string|false` +```php +xdiff_string_diff_binary(string $str1, string $str2): string|false +``` Creates a binary diff of two strings. -#### `xdiff_file_diff_binary(string $file1, string $file2, string $dest): bool` +```php +xdiff_file_diff_binary(string $file1, string $file2, string $dest): bool +``` Creates a binary diff of two files and writes the result to `$dest`. -#### `xdiff_string_rabdiff(string $str1, string $str2): string|false` +```php +xdiff_string_rabdiff(string $str1, string $str2): string|false +``` Creates a binary diff of two strings using the Rabin fingerprint algorithm. -#### `xdiff_file_rabdiff(string $file1, string $file2, string $dest): bool` +```php +xdiff_file_rabdiff(string $file1, string $file2, string $dest): bool +``` Creates a binary diff of two files using the Rabin fingerprint algorithm and writes the result to `$dest`. ### Patch -#### `xdiff_string_patch(string $file, string $patch, int $flags = XDIFF_PATCH_NORMAL, ?string &$error = null): string|bool` +```php +xdiff_string_patch(string $file, string $patch, int $flags = XDIFF_PATCH_NORMAL, ?string &$error = null): string|bool +``` Applies a unified patch to a string. Returns the patched string, or `false` on error. Rejected chunks are returned via `$error`. `$flags`: `XDIFF_PATCH_NORMAL` (default) or `XDIFF_PATCH_REVERSE`. -#### `xdiff_file_patch(string $file, string $patch, string $dest, int $flags = XDIFF_PATCH_NORMAL): string|bool` +```php +xdiff_file_patch(string $file, string $patch, string $dest, int $flags = XDIFF_PATCH_NORMAL): string|bool +``` Applies a unified patch from a file. Returns `true` on success, a string of rejected chunks on partial failure, or `false` on error. -#### `xdiff_string_patch_binary(string $str, string $patch): string|false` +```php +xdiff_string_patch_binary(string $str, string $patch): string|false +``` Applies a binary patch to a string. Works with both bdiff and rabdiff patches. -#### `xdiff_file_patch_binary(string $file, string $patch, string $dest): bool` +```php +xdiff_file_patch_binary(string $file, string $patch, string $dest): bool +``` Applies a binary patch from a file and writes the result to `$dest`. ### Merge -#### `xdiff_string_merge3(string $str1, string $str2, string $str3, ?string &$error = null): string|bool` +```php +xdiff_string_merge3(string $str1, string $str2, string $str3, ?string &$error = null): string|bool +``` Three-way merge of strings. Returns the merged string, or `false` on error. Conflicts are returned via `$error`. -#### `xdiff_file_merge3(string $file1, string $file2, string $file3, string $dest): string|bool` +```php +xdiff_file_merge3(string $file1, string $file2, string $file3, string $dest): string|bool +``` Three-way merge of files. Returns `true` on success, a string of rejected chunks on conflict, or `false` on error. ### Binary diff size -#### `xdiff_string_bdiff_size(string $patch): int|false` +```php +xdiff_string_bdiff_size(string $patch): int|false +``` Returns the size of the file that would be created by applying the given binary patch. -#### `xdiff_file_bdiff_size(string $patch_file): int|false` +```php +xdiff_file_bdiff_size(string $patch_file): int|false +``` Same as above, but reads the patch from a file.