$ perl -MPath::Tiny -MData::Dump -e " dd( path( 'smartquotes.pl' )->lines_utf8 ) " ( "\x{FEFF}#!/usr/bin/perl --\r\n", "use warnings \x{2018}all\x{2019};\r\n", "my \$mkvingestdir = \x{201C}//nas/shared/mine/MKV\x{201D};\r\n", ) $ perl smartquotes.pl Unrecognized character \xE2; marked by <-- HERE after warnings <-- HERE near column 14 at smartquotes.pl line 2. $ perl -MPath::Tiny -MData::Dump -e " dd( path( 'smartquotes.pl' )->lines_raw ) " ( "\xEF\xBB\xBF#!/usr/bin/perl --\r\n", "use warnings \xE2\x80\x98all\xE2\x80\x99;\r\n", "my \$mkvingestdir = \xE2\x80\x9C//nas/shared/mine/MKV\xE2\x80\x9D;\r\n", ) $ perl -MPath::Tiny -MData::Dump -e " dd( path( 'not-smartquotes.pl' )->lines_raw ) " ( "\xEF\xBB\xBF#!/usr/bin/perl --\r\n", "use warnings 'all';\r\n", "my \$mkvingestdir = '//nas/shared/mine/MKV';\r\n", )