{"id":3020,"date":"2024-01-27T22:51:06","date_gmt":"2024-01-27T21:51:06","guid":{"rendered":"https:\/\/desairem.com\/wordpress\/?page_id=3020"},"modified":"2025-10-26T16:48:15","modified_gmt":"2025-10-26T15:48:15","slug":"patchword","status":"publish","type":"page","link":"https:\/\/desairem.com\/wordpress\/patchword\/","title":{"rendered":"Patchword"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column has-global-padding is-content-justification-right is-layout-constrained wp-container-core-column-is-layout-f1f2ed93 wp-block-column-is-layout-constrained\" style=\"flex-basis:50%\">\n<h1 class=\"wp-block-heading\">Let me check.<\/h1>\n\n\n\n<p>Compare text files or entire directory hierarchies, export and apply patches, perform non-destructive find and replace operations, reset and rename files.<\/p>\n\n\n\n<p>Patchword is available for Mac, iPad and iPhone. View this page for <a href=\"https:\/\/desairem.com\/wordpress\/patchword-iphone\/\" data-type=\"page\" data-id=\"3618\">iPhone<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-group is-content-justification-center is-layout-flex wp-container-core-group-is-layout-98e1a0b1 wp-block-group-is-layout-flex\" style=\"margin-top:var(--wp--preset--spacing--40);margin-bottom:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-a89b3969 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/desairem.com\/wordpress\/patchword-pricing\/\" style=\"line-height:1.2\"><span style=\"font-size:1.2em\">Download from the<\/span><br><span style=\"font-size:2.4em\">Developer<\/span><\/a><\/div>\n<\/div>\n\n\n\n<a href=\"https:\/\/apps.apple.com\/ch\/app\/patchword\/id6475396748?itsct=apps_box_badge&amp;itscg=30200\" style=\"box-shadow:none; -webkit-box-shadow:none; display: inline-block; overflow: hidden; border-radius: 13px; width: 250px; height: 83px;\"><img decoding=\"async\" src=\"https:\/\/tools.applemediaservices.com\/api\/badges\/download-on-the-app-store\/black\/en-us?size=250x83&amp;releaseDate=1355616000\" alt=\"Download on the App Store\" style=\"border-radius: 13px; width: 250px; height: 83px;\"><\/a>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column has-global-padding is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-12dd3699 wp-block-column-is-layout-constrained\" style=\"flex-basis:50%\">\n<figure class=\"wp-block-image size-full\">\n<img decoding=\"async\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-compare-text-mac.png\" alt=\"\" class=\"wp-image-4463\" style=\"overflow-x: clip; transform: scale(100%) translate(0%,-40%) skew(-5deg, 0); opacity: 0; transition: all 1s 0s ease\" onload=\"this.style.opacity=1; this.style.transform='scale(100%) translate(0%,-10%) skew(-5deg, 0)'\"\/>\n<img decoding=\"async\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-paste-text-mac.png\" alt=\"\" class=\"wp-image-4467\" style=\"margin-top: -100%; overflow-x: clip; transform: scale(50%) translate(20%,40%) skew(-5deg, 0); opacity: 0; transition: all 1s 0.3s ease\" onload=\"this.style.opacity=1; this.style.transform='scale(50%) translate(50%,40%) skew(-5deg, 0)'\"\/>\n<img decoding=\"async\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-select-files-mac.png\" alt=\"\" class=\"wp-image-4464\" style=\"margin-top: -100%; overflow-x: clip; transform: scale(60%) translate(-10%,30%) skew(-5deg, 0); opacity: 0; transition: all 1s 0.15s ease\" onload=\"this.style.opacity=1; this.style.transform='scale(60%) translate(-40%,30%) skew(-5deg, 0)'\"\/>\n<\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Drag and drop.<\/h2>\n\n\n\n<p>Select the original and the modified file to compare or drag and drop them onto the respective icon in the main window.<\/p>\n\n\n\n<p>Compare texts by characters, words, sentences or lines, and optionally ignore whitespaces or sort the input. Patchword implements the Myers algorithm (on which the <code>diff<\/code> command is based) to quickly compare texts small and large.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1424\" height=\"1544\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-select-files-mac.png\" alt=\"\" class=\"wp-image-5322\" style=\"width:712px\"\/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2426\" height=\"1424\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-compare-text-mac.png\" alt=\"\" class=\"wp-image-5323\" style=\"width:1213px\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Diff view.<\/h2>\n\n\n\n<p>Filter the list of changes, discard any of them, and export the resulting file or a <a href=\"https:\/\/desairem.com\/wordpress\/patchword-patch\/\" data-type=\"post\" data-id=\"3420\">patch<\/a> of the changes.<\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Directories.<\/h2>\n\n\n\n<p><a href=\"https:\/\/desairem.com\/wordpress\/patchword-compare-directories\/\">Compare two directories<\/a> to see added, removed and modified files, then compare any of the contained files.<\/p>\n\n\n\n<p>If you notice an unwanted change, you can reset individual files in the second directory to the state of the files in the first directory.<\/p>\n\n\n\n<p>If you matched files by pairs sorted by name or by a custom name map, you can rename files in the second directory so that they match the file names in the first directory, without copying the file contents over again.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1424\" height=\"1424\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-compare-directories-mac.png\" alt=\"\" class=\"wp-image-5324\" style=\"width:712px\"\/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1424\" height=\"1114\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-paste-text-mac.png\" alt=\"\" class=\"wp-image-5325\" style=\"width:712px\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Copy and paste.<\/h2>\n\n\n\n<p>Then compare.<\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Non-destructive text editing.<\/h2>\n\n\n\n<p>Create <a data-type=\"post\" data-id=\"3426\" href=\"https:\/\/desairem.com\/wordpress\/patchword-edit-script\/\">edit scripts<\/a> that can be applied non-destructively to any text file, then export the resulting text. Edit scripts iteratively find and replace segments of text, either by exact match or regular expression.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1424\" height=\"956\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-text-edit-script-mac.png\" alt=\"\" class=\"wp-image-5326\" style=\"width:712px\"\/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2426\" height=\"1424\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/patchword-text-edit-script-result-mac.png\" alt=\"\" class=\"wp-image-5327\" style=\"width:1213px\"\/><\/figure>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-c816cdf9 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-47c06fe3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:65%\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2210\" height=\"1188\" src=\"https:\/\/desairem.com\/wordpress\/wp-content\/uploads\/2025\/10\/shortcuts.png\" alt=\"\" class=\"wp-image-5328\" style=\"width:1105px\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:35%\">\n<h2 class=\"wp-block-heading\">Scripting.<\/h2>\n\n\n\n<p>Initiate a comparison from the Shortcuts app.<\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group has-base-2-background-color has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20)\">\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">About<\/h2>\n\n\n\n<p>I created Patchword because I couldn\u2019t find an app for comparing files that was quick, easy to use and affordable.<\/p>\n\n\n\n<p>Every now and then I find myself in a situation where I need to compare two texts. Before creating Patchword, I would either compare them manually (which was error-prone and could take a long time) or use other tools that didn&#8217;t give me the immediate result I was looking for. Now I launch Patchword, paste two texts or drop two files, and go on with my work.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">Connect<\/h2>\n\n\n\n<p>Do you need help, want to report an issue, suggest a new feature or start a discussion?<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/desairem.com\/wordpress\/patchword\/patchword-help\/\">Help topics &amp; FAQ<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/discord.gg\/JsPmdT92wQ\">Patchword on Discord<\/a><\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Let me check. Compare text files or entire directory hierarchies, export and apply patches, perform non-destructive find and replace operations, reset and rename files. Patchword is available for Mac, iPad and iPhone. View this page for iPhone. Drag and drop. Select the original and the modified file to compare or drag and drop them onto [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":5111,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"app-home","meta":{"footnotes":""},"class_list":["post-3020","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/pages\/3020","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/comments?post=3020"}],"version-history":[{"count":58,"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/pages\/3020\/revisions"}],"predecessor-version":[{"id":5330,"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/pages\/3020\/revisions\/5330"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/media\/5111"}],"wp:attachment":[{"href":"https:\/\/desairem.com\/wordpress\/wp-json\/wp\/v2\/media?parent=3020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}