我需要从外部pandoc ouput到Windows剪贴板的输出html 使用这个表达式
:let @+ = %!pandoc -f markdown -t html
导致错误 E15:表达式无效:%!pandoc -f markdown -t html
我错过了什么?
答案 0 :(得分:2)
您希望将shell命令的输出保存在寄存器中,而不是命令本身,在这种情况下也不会将其识别为有效表达式。
尝试
:let @+ = system('pandoc -f markdown -t html')
system()函数将shell命令的输出作为字符串获取,并且应该完全按照您想要的方式执行
要将命令应用于当前缓冲区中的文件,可以使用“expand”函数将文件名附加到命令:
:let @+ = system('pandoc -f markdown -t html ' . expand("%"))