>>162
(1) syntax highlightingはマジメにやると非常に遅くなってしまうので、ある程度
の範囲を調べて「えいやっ」と色を付けてしまっています。そのため複雑なsyntaxで
はおかしくなる場合があります。一時的におかしくなったものならば<C-L>をタイプ
して再描画することで修正されます。

また、遅くなっても構わないということであれば:syntax sync maxlines=9999のよう
にsync-maxlinesを増やすのも良いでしょう。このあたりの詳細は
:help syn-sync
を参照してください。

(2) 163が正解です。要約するとレジスタ * を使う、ということになります。
    例: "*y10j "*p