Readline으로 자동 완성하기
Readline으로 자동 완성하기
명령 이름이나 변수 이름을 전부 입력하지 않아도 되게 도와주는 기능이 있어요. Octave가 커서 앞의 텍스트를 보고 명령과 변수 이름을 자동으로 완성해 주죠. 이 절에서는 완성 관련 명령과 관련 함수를 소개할게요.
출처: 문서
본문
다음 명령들로 Octave가 명령·변수 이름을 대신 입력해 주게 할 수 있어요.
TAB— 커서 앞의 텍스트에 대해 완성을 시도해요. Octave는 명령과 변수의 이름을 완성할 수 있어요.M-?— 커서 앞 텍스트에 대해 가능한 완성 목록을 보여줘요.
completion_append_char
val = completion_append_char ()
old_val = completion_append_char (new_val)
old_val = completion_append_char (new_val, "local")
성공한 명령줄 완성에 이어 붙일 내부 문자 변수를 조회하거나 설정해요. 기본값은 " "(공백 하나)이에요.
함수 안에서 "local" 옵션과 함께 호출하면 이 변수는 해당 함수와 그 함수가 호출하는 서브루틴 안에서만 변경되고, 함수를 빠져나가면 원래 값으로 복원돼요.
completion_matches
completion_list = completion_matches ("hint")
주어진 문자 시퀀스 hint에 대해 Octave가 가능한 단어 완성을 생성해요. 이 함수는 Emacs처럼 Octave를 제어하면서 사용자 입력을 처리하는 프로그램을 위해 제공돼요. 예를 들어,
completion_matches ("sine")
⇒
sinetone
sinewave
프로그래밍 참고: 이 함수가 호출돼도 Octave의 현재 명령 번호는 증가하지 않아요. 이것은 버그가 아니라 의도된 동작이에요.
더 알아보기
- 완성은 명령줄에 입력할 때 사용하므로 Command Line Editing 절을 함께 보세요.
- 역사(히스토리) 조작 명령은 Commands for History 절에서 다뤄요.