Vimでset numberしているとき:printコマンドの結果にも行番号が表示されてしまう件

問題

タイトルのとおり。 これググっても特に困ってる人が出てこないんだけど、自分は軽く困った(ている)のでメモしておく。

set nonumber
:print
-> 結果に行番号が表示されない

しかーし、

set number
:print
-> 結果に行番号も表示されてしまう!

これの何が困るのかというと:printコマンドの結果をレジスタに格納して使いたいことが(たまーに)あるのである。 そのときは、行番号は余計なので除きたい。 しかし、自分は普段は、行番号を表示させておきたいので、vimrcでset numberをしているのである。

結論

ダメでした。一時的にset nonumberするしかなさそう。(:printのときだけ直前で:set nonumberを自動でかますことはできそう?)
以下は作業記録。

調査

まずは:helpである。

:help :print

:[range]p[rint] [flags] とでてきてflagsが怪しいので見てみると、#をつけると行番号が表示されるとある。
しかし、set numberのときは、このフラグに依らず、必ず行番号が出力されてしまうっぽい。(set nonumberのときは確かに上記フラグで切り替えられた。)

まとめ

そういうものなんでしょうね。