libedit (약간 다른 API를 사용하여 readline 대신 BSD를 사용하는 대신)에 래퍼를 작성하려고하는데 C 함수에 명명 된 함수를 추가하는 방법이 있습니다. C에서 예를 들어 C 동적 콜백을 기대하는 C 함수를 래핑
:static unsigned char show_help(EditLine *e, int ch) {
printf("Help");
}
el = el_init(argv[0], stdin, stdout, stderr);
el_set(el, EL_ADDFN, "help", "This is help", show_help);
el_set(el, EL_BIND, "\?", "help", NULL);
나는 기능을 추가 한 다음 나중에 그 기능을 결합하는 el_set를 호출합니다.
EL_ADDFN을 파이썬 메소드를 동적으로 바인딩 할 수있는 좋은 방법을 찾을 수 없습니다. 미리 만들어진 C 함수를 여러 개 만들어 파이썬 메소드에 개별적으로 래핑 할 수는 있지만 가능하면 C API를 에뮬레이션하는 것이 좋습니다.
EL_ADDFN을 호출하고 호출하는 파이썬 메소드를 판별하는 방법이 있습니까?