Sto provando a chiamare Vim utilizzando il sottoprocesso e passare un argomento. Per esempio:Come posso dire al sottoprocesso di interrompere l'escape delle mie virgolette?
subprocess.call(['gvim.exe', ''' "+map <F5> :echo 'Hello!'<cr>" '''])
Questo comando funziona sulla riga di comando:
> gvim.exe "+map <F5> :echo 'Hello!'<cr>"
E poi mi ha colpito F5 e mi dice ciao.
La chiamata di sottoprocesso non funziona. Quando guardo il processo in task manager, vedo che la mia stringa è ora:
"\" +map <F5> :echo 'Hello!'<cr>\""
Non è quello che mi aspettavo, e non credo che è quello che si aspetta Vim, neanche. It sembra come il sottoprocesso è in qualche modo sfuggito alle mie citazioni, ma non so perché.
C'è un modo per far funzionare tutto come mi aspetto?
Sì, il problema non è l'escaping (che è solo per visualizzare la stringa, dopo tutto), sono le virgolette. – kindall
Huh. Ho pensato * Ho provato anche quel metodo. Non credo! –