shouldn'tの方を「〜するべきでなかった(のにした)」と覚えることが多いから、確かにneedn'tを使うときとの差が曖昧になってしまいますね。
shouldn't have doneはしちゃいけないことをやっちゃったときの、「するべきでなかった」なんです。
「しないべきだった」って言い換えた方が意味の誤解はなくなりますかね?この問題でも、そうやって考えた方がわかりやすいかもしれませんね。
んー難しいですね。
need notは基本的には、する必要はない ですから
「やってもいいけど 必ずやらなきゃいけないわけじゃない」ですよね。
shouldn'tは「やるべきでない」ですよね。
お礼の慣用句のyou shouldn't have! は「俺みたいなもんにそんなことするべきじゃなかったのにやってくれて有難う」って意味だと思うんです。
へりくだってるって言えばいいのかな?
もしお礼でyou needn't have!って言ったら
「俺にそんなこと(してくれてもいいけど)必ずしてくれなくてもいいのに、してくれてありがとう」
みたいな感じで、へりくだり感が薄れる感じがしますね。
日本語で考えてるから正確じゃないかもだし、慣用句だからなんとも言えない感じはあります。
この表現に限らず、慣用句はあんまり文法を気にしすぎないほうがいいとは思います。
いつから使われてるのかもわからない表現がありますし。
日本語でも、たとえ2022年に言ったとしても
たとえば「心頭滅却すれば火もまた【涼しい】」って言ったら変な感じするでしょ。
そこは現代でも古語を使って【涼し】ですよね。
なるほど。確かに慣用句と文法は分けて考えるべきですね。丁寧な回答ありがとうございます!
納得です!ありがとうございます!
私としては、プレゼントをもらったときの慣用句である「You shouldn't have!」が混乱の原因になったのですがそちらについてはどう思われますか?