ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Compare​Buff

by VK ALL

Sublime Text package to compare two buffers using external Comparison Tool

Details

  • 0.2.16
  • github.​com
  • github.​com
  • 2 months ago
  • 49 minutes ago
  • 2 months ago

Installs

  • Total 232
  • Win 136
  • Mac 84
  • Linux 12
Oct 1 Sep 30 Sep 29 Sep 28 Sep 27 Sep 26 Sep 25 Sep 24 Sep 23 Sep 22 Sep 21 Sep 20 Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17
Windows 0 1 4 2 2 2 0 0 1 1 3 4 5 2 0 3 3 4 2 3 0 0 3 4 4 2 1 1 0 4 6 2 3 0 0 0 1 2 1 1 0 1 0 3 5 2
Mac 1 0 0 2 2 1 0 1 0 4 1 0 0 0 1 2 1 1 5 0 0 0 0 1 1 5 1 0 1 0 0 3 0 3 2 0 1 4 1 0 1 0 1 0 0 2
Linux 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com
_______ _______ __   __ _______ _______ ______   _______ _______ __   __ _______ _______ 
|       |       |  |_|  |       |   _   |    _ | |       |  _    |  | |  |       |       |
|       |   _   |       |    _  |  |_|  |   | || |    ___| |_|   |  | |  |    ___|    ___|
|       |  | |  |       |   |_| |       |   |_||_|   |___|       |  |_|  |   |___|   |___ 
|      _|  |_|  |       |    ___|       |    __  |    ___|  _   ||       |    ___|    ___|
|     |_|       | ||_|| |   |   |   _   |   |  | |   |___| |_|   |       |   |   |   |    
|_______|_______|_|   |_|___|   |__| |__|___|  |_|_______|_______|_______|___|   |___|

CompareBuff

CompareBuff is Sublime Text package which allows you to compare any two open files/buffers using an external comparison tool like Beyond Compare. To benefit from this package you must have the external tool installed and the tool must allow the files to be passed as command-line arguments.

Using this package you can compare current file/buffer with any other open file/buffer from any existing sublime windows. Once you invoke the command you'll be asked to select another file/buffer which you wish to compare against the current one.

Take a look at How to Use for usage.

Installation

  • Install Sublime Text Package Control. Skip if installed already
  • Go to Tools > Command Palette. Select Package Control: Install Package
  • Type or select CompareBuff and hit Enter
  • Wait for installation to finish

How to use

First off you need to configure External tool path and other optional settings. Head over to Customization & come back to this section.

Once you have basic setup, you can invoke the command in few ways:

  • Command Palette (Ctrl+Shift+P on Windows or Cmd+Shift+P on Mac) > Input/select CompareBuff: compare with...
  • Right click context menu (if enabled) select CompareBuff: compare with...
  • User defined key shortcut (see Defining Key Binding)

This will present a quick panel where you can select other file/buffer to compare against the current one. Once you select second file/buffer the external comparison tool will launch using those.

You can also click window label inside panel. It will open that window's views in a new panel for selection. It's useful when you have number of views open.

How does it work

Once you launch the command, the package works on the file/buffers as below before sending to tool:

  • if the buffer is a valid file with no unsaved modifications the original file is directly sent to tool
  • if the buffer is a valid file with any unsaved modifications then a temp file is created with original file name & sent across
  • if the buffer is a scratch/untitled then a temp file is created and sent across
  • if prefer_selection is true (default) then only selected lines/blocks (if any) are sent across for that file/buffer

Defining Key Binding

You can also define the binding in your User Key Binding file (Preferences > Key Bindings ) e.g.

{ "keys": ["ctrl+alt+/"], "command": "compare_buff" }

Customization

You can override the default settings in User Settings file (Preferences > Package Settings > CompareBuff > Settings):

{
    // Provide the External Comparison tool path here e.g. Beyond Compare.
    // Make sure you use the correct path of the binary as it exists
    // ** WINDOWS **
    "external_tool_path": "C:\\Program Files\\Beyond Compare 4\\BCompare.exe",

    // NOTE: Above command will send the selected buffers as argument implicitly but
    // if you need to send more than two arguments to the external tool then you can
    // define as below where {0} and {1} are replaced with the buffers you select
    // "external_tool_path": [ "C:\\Program Files\\Beyond Compare 4\\BCompare.exe", "--file1", "{0}", "--file2", "{1}" ],

    // ** MAC-OS **
    // "external_tool_path": "/Applications/Beyond Compare.app/Contents/MacOS/bcomp",
    // ** LINUX **
    // "external_tool_path": "/usr/bin/bcompare",

    // Just selection to be sent for comparison
    "prefer_selection": true,

    // Show command in view (right-click) context menu
    "show_in_context_menu": false,

    // Number of recent items to show in panel
    "number_of_recent_items": 3,

    // Show file preview in the panel
    "file_preview_in_panel": true,

    // Icons, you can disable if you see [?] in panel
    "icons":
    {
        "enable": true,
        "icon_ellipsis": "…",
        "icon_package": "🗗",
        "icon_recent_files": "🗍",
        "icon_scratch_file": "🗋",
        "icon_valid_file": "🗎",
        "icon_window": "🗔"
    }
}

License

GNU General Public License v3.0

Issues

Please report any bugs/issues here

My other work

Links