ed의 "삽입" 명령을 사용하여 선에 단일 점을 어떻게 삽입합니까?

ed의 "삽입" 명령을 사용하여 선에 단일 점을 어떻게 삽입합니까?

편집기를 사용하여 ed선에 단일 점을 삽입하는 방법은 무엇입니까? 일반적으로 줄의 점 자체가 삽입을 종료합니다. 어떻게든 벗어날 수 있습니까?

답변1

ed아니요, 한 줄에 마침표만 삽입할 수는 없습니다. 이는 텍스트 삽입을 중지하라는 명령 이므로 이전 항목 중 하나를 참조하세요.매뉴얼 페이지 편집(7페이지):

줄 시작 부분에 마침표(.)만 입력하여 입력 모드를 종료합니다.

Space.Enter예를 들어 바로 .Enter뒤에 마침표를 입력하지 않으면 이 문제를 해결할 수 있습니다 s/^ //. 후속 명령에서 쌍을 이루는 한 공백 이외의 다른 문자를 마커로 사용할 수 있습니다 s//.

마침표는 단독으로 삽입할 수 없습니다. edappend_lines함수는 행이 추가되거나 변경되거나 삽입될 때 최종적으로 호출됩니다.buffer.c, 개행 문자로 구분된 입력을 읽습니다( 를 통해 get_stdin_line). 이 작업의 일부로, 아래에 후행 줄 바꿈 외에 마침표만 있는지 확인합니다. "ibufpp"는 입력 텍스트에 대한 포인터이고 "size"는 이 버퍼의 길이입니다.

if( size == 2 && **ibufpp == '.' ) { *ibufpp += size; return true; }

다음에서 압축된 타르볼을 다운로드할 수 있습니다.http://download.savannah.gnu.org/releases/ed/또는 보기데비안의 ed 업스트림 페이지또는OpenBSD 에디션 페이지해당 코드는메인 프로그램.

또 다른 옵션은 다음에서 찾을 수 있습니다.ed(1) 컨퍼런스 트위터 게시물, 아무거나 입력하는 것입니다.다른단일 문자를 입력한 다음 해당 문자를 마침표로 바꿉니다.

  1. xEnter
  2. .Enter
  3. s/./.

관련 정보