Skip to content

Instantly share code, notes, and snippets.

@floriankraft
Created August 5, 2019 14:54
Show Gist options
  • Save floriankraft/289506194d2d2af1ab55a87fe650dfaf to your computer and use it in GitHub Desktop.
Save floriankraft/289506194d2d2af1ab55a87fe650dfaf to your computer and use it in GitHub Desktop.
Action file for Nemo file browser which adds a context menu entry for Beyond Compare.
[Nemo Action]
#############################################
#### DEBUGGING:
####
#### Run Nemo with the environment
#### variable NEMO_ACTION_VERBOSE
#### set to get useful log output
#### for debugging your actions
####
#### i.e. $ nemo --quit
#### $ NEMO_ACTION_VERBOSE=1 nemo
#############################################
# Whether this action is active. For troubleshooting.
# Optional - if this field is omitted, the action will be active
Active=true
# Standard tokens that can be used in the Name, Comment (tooltip) and Exec fields:
#
# %U - insert URI list of selection
# %F - insert path list of selection
# %P - insert path of parent (current) directory
# %f or %N (deprecated) - insert display name of first selected file
# %p - insert display name of parent directory
# %D - insert device path of file (i.e. /dev/sdb1)
# The name to show in the menu, locale supported with standard desktop spec.
# **** REQUIRED ****
Name=Compare
# Tool tip, locale supported (Appears in the status bar)
Comment=Compare files with Beyond Compare
# What to run. Enclose in < > to run an executable that resides in the actions folder.
# **** REQUIRED ****
Exec=bcompare %F
# Icon name to use in the menu - must be a theme icon name
Icon-Name=bcompare
# Gtk Stock ID to use for the icon. Note if both Icon-name and Stock-Id are
# defined, the Stock-Id takes precedence.
#Stock-Id=gtk-cdrom
# What type selection: [s]ingle, [m]ultiple, any, notnone, none (background click), or
# a number representing how many files must be selected to display.
# ****** REQUIRED *******
Selection=2
# What extensions to display on - this is an array, end with a semicolon
# Single entry options, ending in a semicolon:
# "dir" for directory selection
# "none" for no extension.
# "nodirs" for any selection, but not including directories.
# "any" for any file type, including directories.
# Individual specific extensions can be a semicolon-terminated list
# Extensions are NOT case sensitive. jpg will match JPG, jPg, jpg, etc..
# **** EITHER EXTENSIONS OR MIMETYPES IS REQUIRED *****
Extensions=any;
# What mime-types to display on - this is an array, end with a semicolon
# **** EITHER EXTENSIONS OR MIMETYPES IS REQUIRED *****
#Mimetypes=text/plain;
# Separator to use (if any) - add a string to insert between path/url entries
# in the exec line. Optional - if you leave this out, a space is inserted.
# Note you can have trailing spaces here.
#Separator=,
# Quote type to use (if any) - enclose paths/urls with quotes. Optional - defaults
# to no quotes.
# Can be: single, double, backtick
#Quote=double
# Dependencies - program executables required for this action to work. Nemo will
# Search in the path for these program(s) and not display the action if any are missing.
# You can also supply an absolute path to a file (i.e. /usr/lib/gvfs/gvfsd-archive) to check
# instead of or in addition to an executable in the path.
# This is an array, separate entries with semi-colon, and terminate with a semicolon.
Dependencies=bcompare;
# Conditions - semicolon-separated array of special conditions:
# "desktop" current (parent) folder is desktop
# "removable" target (first selection) is removable
# "gsettings <schema> <boolean key>" is true
# "gsettings <schema> <key> <key-type> <[eq|ne|gt|lt]> <value>"
# "dbus <name>" exists
#Conditions=desktop;
# Escape Spaces - set to true to escape spaces in filenames and uris ($U, $F, $P, $D)
#
# Sometimes this may be preferred to getting raw filenames that must be enclosed in
# quotes.
#
# Optional - by default this is false
EscapeSpaces=true
# Run in terminal - set to true to execute the Exec line in a spawned terminal window.
#
# Generally if you use this you should not have Quotes defined, as that will be taken care
# of during converting the expanded command string into an arg vector.
#
# Optional - by default this is false
#Terminal=false
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment