vim9script
export def Do()
- var view = winsaveview()
- normal gg=G
- winrestview(view)
+ var lines = []
+ job_start(&equalprg, {
+ in_io: "buffer", in_buf: bufnr("%"),
+ callback: (chan, msg) => {
+ lines = add(lines, msg)
+ },
+ exit_cb: (job, status) => {
+ if status != 0
+ cgetexpr lines
+ copen
+ return
+ endif
+ var view = winsaveview()
+ silent execute ":%!" .. &equalprg
+ winrestview(view)
+ }
+ })
enddef