Во-первых, вы можете предпочесть использовать один из пакетов автозаполнения или джедай.
Тем не менее, hippie-expand
работает, пытаясь раскрыть текущее слово, используя список функций, хранящийся в переменной hippie-expand-try-functions-list
(чтобы просмотреть его содержимое, нажмите C-h v hippie-expand-try-functions-list RET
). Например, первая функция в значении по умолчанию для этой переменной пытается расширить имя файла. hippie-expand
запрашивает расширение для каждой функции по очереди, переходя к следующей, когда функция исчерпала все свои возможные завершения. (То есть вы можете продолжать нажимать [f2]
чтобы получить больше расширений.)
Когда вы раскрываете имя переменной, которая уже появляется в вашем коде Python, hippie-expand
использует функцию try-expand-dabbrev
, которая ищет текущее слово в текущем буфере. Другая функция в этом списке, try-expand-dabbrev-all-buffers
, ищет текущее слово во всех открытых буферах. Таким образом, быстрое (и грязное) решение вашей проблемы состояло бы в создании файла со всеми ключевыми словами и встроенными модулями (enumerate
является встроенным) и сохранением этого файла открытым в emacs. То есть, если вы настаиваете на использовании hippie-expand
; Очевидно, что два пакета, о которых я упоминал ранее, кажутся лучшими решениями, если вы можете заставить их работать.