Repository: vscode
Issue: Improve Move Detection
Labels: feature-request,diff-editor

## Description

The move should cover the entire _viewModel.

The algorithm should be extended like this:
Extend detected move up/down:
compare 2 lines above/below in orig {O1,O2} with 2 lines above/below in modified {M1,M2}.
If M2==O1 and M2.length > 15, extend modified by 2 lines, original by 1.
If M1 == O2 and ..., extend orig by 2 lines, mod by 1.

## Playground Example

[Monaco Editor Playground Repro](https://microsoft.github.io/monaco-editor/playground.html?source=v0.45.0-dev-20231123#XQAAAAIdMwAAAAAAAABBqQkHQ5NjdMeMm-jY7SIQ9S7DNlzs5W-mwj0fe1ZCDRFc9ws9XQE0SJE1jc2VKxhaLFIw9vEWdz-byd8UoFj4S63PRjwlIhVdaCgzUJoxt7Ku-NNiX4oCChOyvb3hQdNbPo-lENwLKH-IwjyDJSCz_2QeewFxWvKCkLqn3UHNSCqZhGuF6ws-6QSPs48ccNjGVNZU2p8di8NNo3-ZtvJzByVzF1FkXzkPPFjdpHKFT6Id5Moxi2-llFc9CD-Ox_t2GTFu0jzFv6myV5TTZ188ldoLJkrqOeMF_cPNQbasYc8STM45vtnkT7QzbWpaJw_bKuBnXzgf6qL8Z9Ggp-kwa21mMUQJGUEX7vWIff5eJ2tt7jS1C4G1GYTYsJXYyxnQSAEFiqsEM7ThXuUeRjG7ejr2f2aD3iBCIMhmilLw6P2ZBgpbVgnG96q13DA0Ez_mt1ia3xnzN-6G3FZ8wJ6WOl2T4SCGRKM3HmP40OTvgCmTUeezswKgOwfC2CMqZkKZh5xZkIvuOurtQK6O9Vgi23l1gpK04xmTQya_-21Y8sE6hic3_uXTuXFdKwVbyyyYO0qrRDeMNah10aYX2Ot3kCD7obI44Lr-GGBs5Gar1Sz2aelxP1yxFErjeI8nR1MVCzn4LEcgRfvmNebondexGznSfaM6EmZK8i_qxWK_oHmpZSjUVs0tAiG_jDh1PMsFGD0GS2qVUhr66rLzlPySTAHzePOx51MQkxMhtt_z4rzCXVxj8R6brQJ8BFFSRUav_fxz9wxSOfNFkN0e5oFU0eUxBfSg3JiBFynIy7f_OBrKD6s-jSA45yE985G61LAcQT2e_2tqtKCDFtuveCH5oBru3UCV92VbizaicyxPBirZUYSIvPKtpp8wQXRY5iKOReKkvEjq5QwgYTZjJ3erXuNpgjwbxnrFxD17whCenpVLIh10Xdp8tgw5ygDfsmUBan0yJ-JYjfrIlEp40qOSGLPrk37qnNMpvTyKY10-bGIj72lJzfucGE5N1B1MPBBuNAdnPguDPBrxNqeGUCABiNbGa8lV3bikcHM0QpgvFP80qPuEnYTVdMZVSkUWoVv6O8f-FjsYPeovTnuNgVsFtMjZevim7vqnd_BWLVor7kEpFr98xlhggSBjvpT6v3oShcUhJUUqknlN9BzDLGCTQ2tR24fRqAVlnNItuYY2lIAR7wzsDQW9Po-DGtp_-fIzJjkdZvXdNGemFMXml-dV0MLbYfX226LZNYgdQid-j_GH70IDhOSMKVe6oaIACTeMDdyeNk2cxLfj6FlLjoYRyWvYn3oDHpDFIxponV5IYnXD32k5U4WrE52ODVCmIEElakdEiPRV17vJO6qI1ZyRKjBdpfbgQsKeG3a8kX1UigqbdP69mY_Yfg52rXhicP7IQXie764GWU5WXAH-gf_KRMFZc0kA5_UTUoyc5vqoOqf1fbYLiQdZAxH6u7PDTqFC2NYxoHItuXcCmWGAeT2HQPa8uCXAlPaffsfeluBnVSIV2BqXagA5V_acTn_1GTbHJ43yTolskhI-9v2PNz7nXjMgIzTZv8IF6-3AemcfU0xiJacNykDsXC7KbXBFkh2E-sfyyWq946NZ96a-8oawABsYc_2vLDq8RS9xtZyyQqEvadof3v54mOGXlhFO9sjNmIY8mMbHO250RYJzpRemOCFSgN0csekRU10wMulnzMBAVRsr2nFDohlkeykSpiHhIPXUqesBuPwncy8wNCKw45KtxpOjbAA_IB_tdmkHB6NiPHyHbiBc7mUr_pvusrKia-ADvWEFLOQd4Ez2PGN_bcIg8au16t4mkuy_T8U9W3HMz53waNE3Re_HaZvao0sP9kUTMCfhjvF7FynWvJSIGvJPyCE_D9h3m1cATcWY3vP-qSQsn4_81ZJjbJr_3Ae_eyOIW1CYW2otr4FNEJRWkRuNmXJpbmrgTrBVXhWK-S6NGyW-6pMmty2kqOP97OOQrzqaqOxvwB8Wg62Y_hnWEKvl3Pnfjn2BTe_o2sUyQ75WerRzEPNf0ETEYrFqdU6mols1FqIkR50Sv3nRrAAKY1KvpIFV2018anEyW_Ze7ZkooI0WDfX07-FElmmqSsibHjV0TbWZyrAHg24CVA2DYA4VmyiH2NfDmyh0VNkGoCkn6o_8FVEFwW2N36troG3wZJTL3HalQn7aKaaTRVRq8TM-jtBG13Fgj7LGyMHDiQwpKQHaFyoOpLArvohhh2C_GDFmHku4th__uD6sXST4t8NtNcyQbT8TYcRvTsnD3NwSBEUwdfgtx1ZI1F9PayyaF2UCuaIOEknQT-IKsnOr3lOv6q_eNxFFQLcNRrt3PUfMCsNW2iqcS4Y7jcWsjlqAFkYZFRWvoAnCk86YvUlPb-b_VsuIQOnCONJijlqZALhxlomzSFe0L4ZR3BCKhqXAEa9wYUhUZiKZsOuaTGvHtmzMvvTD5agQlDPu7nQZWyGa2Hfb-cImaQxwB5Qu9jCNxtBcUAmpduCqKArFHEBG70o5dKhrjM-8WTUPir3IJFKlsOvlaqpvZmd0pnsUN5Z5PzbkLoVnUY39DAz5NxvlLWRgZDfFTqpHaXzEh9KXfUjmO6DVtO2JQ59pT7OO1LXw7v4BrpxqIuCrYk3MmlTe5-EvaC9H5fB73IfksIghp3c1rKIX5FoT5XaaAaqQ9HNUQhJDZxqnNCLxPedQeG8BDRasdyQH1DMC5Fy5g-oID6w3chh50LwyHlcK3In_FbxydDzrItM1ywtp2rRAjeeIvtu1fgG4-gzvFPX-ySB0ksFyVcjnYshzVgYpAt37CqUbcSMzIB-6JxGblnR__Dub8Asao62R8w8e7lLJgVzICAfrG22v8Ib0H6n4ys0BBKvnYDYPgvYYxeCj8f-vfEfoX3a88dRUXTNpV-h-DS8h8yfgiaoW5gsq86VRO7O8nS_QGGJ4nbuv4LkGjkEBTAWzVJaXy2KJq7AOdLml_ATZY_LrALsfj9JkOqSHmHy2LpOlyAUPu6y7x2c1wbkSmgfXABdbYKPAiYS76Do8FX5x2B9K7-18nytrI03T0Zz-LIpfNSC-urI-JE7Er-UMqXb_MV7xebn_5ZzpVdOiGy1S8ZGUSnDavdnyZV-cRCt0jcnzFzpllTEfgLBLOsoqLwBv6hweD_WmfdNoLvenhPp8DTGWo6z5ClIYE_gHrj-VOCAvEaenqC3_u2Q8QqmhsDGP5zs6WxDiavIeX4-B5kqI6qGu_1MbzNEauAf5uxqZVorzwQ3vEVn3Apjjjms0ATRU7lcPQpHTU46eZoePducAYTeN2J04R4ocitSovIf0RFZsR2TCFwXlAXeSAvfOMr7IiRmWywHgMHecYyMH22sfDUfCkSJsWwpDhR2eebm6IHzRepiGSXj5-bxsQNJ8EtcC309JMSupVxuA-GOOcXPIw3SxAfeQN_C83Gvx7ZUJIITVqqiMN54krnqq4BL9PsAd7BSmKatC-8iB0H0Yc65nnWSVx2JPTCOvUnJ9PPl7aMjYaz3Oj9edek9vASQqi3iyXPpfdH2RpS-ao68GC-iKMqfCKrl9ztiIA_kQQPipTjHlJwFMvUGCUsOCQotRBsmqwq3F61de__Iu7ZY) (click on "use latest dev" to verify a future bug-fix)