Having the same issue. Unfortunately neither <<ContextMenu>> nor <<Contextual>> produce any action in my script. Even worse: using <2> it produces a strange, undesired effect. The popup appears correctly, but if a word has been selected in the widget before calling the popup, the same word is copied and pasted (with an undefined time lag, from a few ms to a few s)This can be reproduced simply by the following:
#!/usr/bin/perl
use strict;
use warnings;
use Tcl::pTk;
use Tk::Text;
my $mw = MainWindow->new();
my $text = $mw->Text()->pack();
$text->bind('<2>', [sub {print "something"}, Ev('X'), Ev('Y'), ]);
MainLoop;
I am on macOS Highsierra and using Tcl/Tk 8.5