Download Padre

Edit Patch

Edit -> Patch

Patch only works on files in local editor that are saved, ie it ignores files with leading * prefix in there name.

It is simplistic in it's approach, as it only works on one file at a time, If you need to work with files/projects look at one of our Plug-ins.

Patch tries to auto select the correct file in each list where relevant.

the techie one liner Action, Against, Select File-1, Select File-2 if appropriate and then Process

Right Click

If your current file in Padre is a patch file ( *.patch or *.diff ) and you Right click you get the following.

You will notice a short cut to Patch... has appeared.

Using Patch

  • To Launch the Patch Dialogue, Menu Bar, Edit->Patch...
  • By default Patch will assume it is working in Patch mode and if started with a {{{*.patch}}} file as current file. Patch will try to find among the other open files a corresponding file to apply the {{{*.patch}}} against as shown below.

Logic

                Against  comments
Patch   File-1  File-2   auto select File-1 based on File-2 name, File-2 auto select based on extension
Action  Diff    File-1   File-2=||auto select File-1 based on current file, File-2 auto select file 0
        Diff    File-1   SVN=||auto select File-1 based on current file,File-2 n/a

Output

  • Normal information will go to Padre status bar.
    We have assumed Show low-priority info messages on Status-bar (not in a pop-up) is true,
  • Patch results in a new Tab in Padre editor titled unsaved
  • Diff results in file-name suffixed with .patch, saved in same location as file-name and opened in Padre editor.

Error / Info

  • Any error message will be displayed in Padre Output panel.
  • SVN version violation information is displayed in the status bar.

Miscellaneous

  • Patch uses Text::Patch.
  • Diff uses Text::Diff.M
    SVN local client is used if present, if not SVN radio button will be greyed out.
  • Patch... will be greyed out if there are no open files in editor.

Limitations

  • File List display in order files were loaded into Padre, if you have move files around by dragging there Tab this will not be reflected in List display order.
  • If you have multiple files open with same name but with different paths only the first will get matched.
  • SVN local Client is also tested for version greater than or equal to 1.6.2.
    From Subversion changes:- fixed: segfault on merge with servers < 1.6 (r37363, -67, -68, -79)
  • Patch some times throws errors relating to POD lines starting with ( C<, =, ) giving the following output.
    Hunk #n failed at line xxx.