Во-первых, вы можете предпочесть использовать один из пакетов автозаполнения или джедай.
Тем не менее, 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 ; Очевидно, что два пакета, о которых я упоминал ранее, кажутся лучшими решениями, если вы можете заставить их работать.