Я использую vim, в котором есть скомпилированный интерпретатор Python.
Я исходный файл Python, который имеет эту функцию:
def pyterm(filename="", interactive=1):
cmd = "%s %s %s " % (PYTHON, "-i" if interactive else "", filename)
if "DISPLAY" in os.environ:
return run_config(os.environ.get("XTERM"), cmd)
else:
return os.system(cmd)
И сопоставьте его с сочетанием клавиш:
nmap ;ru :update<CR>:python pyterm(vim.current.buffer.name, 0)<CR>
nmap ;ri :update<CR>:python pyterm(vim.current.buffer.name, 1)<CR>
Ранее я установил некоторые переменные окружения, чтобы определить точный терминал для запуска, если используется gvim, или в том же терминале, если не в X.
Затем я обычно просто набираю '; ri' в буфере Python для его запуска (обычно для проверки).
:!gcc % && ./a.out