Это был просто забавный (и болезненный) способ экспериментировать с взломом Vim с Python.
Если вы скомпилировали VIM с Python и Авиакомпания Установлен плагин, вы сможете просто попасть в свой Vimrc
:
💡 Существует обновленная версия, которая работает асинхронно ниже.
function! CovidUpdate() python3 << EOF from urllib import request import json import vim def getCases(): country = "US" res = request.urlopen("https://covid2019-api.herokuapp.com/country/%s" % country) string = res.read().decode() info = json.loads(string)[country] vim.vars["response"] = "Country: %s | Confimred: %i | Deaths: %i | Recovered: %i " % (country, info["confirmed"], info["deaths"], info["recovered"]) getCases() EOF endfunction call CovidUpdate() " call airline#parts#define_function('foo', "CovidUpdate") let g:airline_section_y = airline#section#create_right(['ffenc', response])
Спасибо это Проект для предоставления API.
🚨 Обновление 🚨
Подразделение Python через модуль VIM на самом деле очень просто!
Обновленная версия:
function! CovidUpdate() python3 << EOF from urllib import request import threading import json import vim def getCases(): country = "US" res = request.urlopen("https://covid2019-api.herokuapp.com/country/%s" % country) string = res.read().decode() info = json.loads(string)[country] vim.vars["airline_section_y"] = "Country: %s | Confimred: %i | Deaths: %i | Recovered: %i " % (country, info["confirmed"], info["deaths"], info["recovered"]) vim.async_call(getCases) EOF endfunction call CovidUpdate()
Примечание, последняя строка в предыдущем разделе: Пусть#раздел#create_right (['ffenc', response])
больше не требуется, так как эта переменная установлена в коде Python. 🧠
Оригинал: “https://dev.to/pcvonz/covid-19-updates-from-vim-with-python-17g6”