2013-03-03 2 views
3

나는 응용 프로그램에서 Codemirror를 사용하고 있습니다. 탭을 사용할 때 공백을 사용하는 방법을 찾은 사람이 있습니까? Enter 키를 눌러 새 행으로 이동하면 공백이 사용됩니다. 그러나, 내가 라인의 시작 부분으로 backspace하고 대신 탭을 사용한다면, 2 또는 4 공백 대신 탭으로 삽입합니다. 그런 다음 렌더링 된 뷰를 볼 때 내 코드는 Tab 키를 사용하는 영역에 들여 쓰기 용 8 개의 공백과 같습니다. Codemirror에서 실제 탭을 공백으로 변환 할 수있는 옵션이나 방법이 있습니까?Codemirror에서 공백으로 탭 이동

나는 또한 실제 Codemirror 버전만큼 최신이 아닌 codemirror-rails gem을 사용하고 있습니다.

답변

7

기본 탭 키 기능을 무시하고이 기능으로 바꿉니다. 이것을 Codemirror 구성에 추가하십시오.

extraKeys: { 
      "Tab": function(cm){ 
       cm.replaceSelection(" " , "end"); 
      } 
      } 

Demo jsfiddle

+0

당신의 선생님은 나의 영웅이다. – jthomas

+3

''end "'를'replaceSelection'에 두 번째 arg로 전달하고 두 번째 호출을 생략 할 수 있습니다. – Marijn

관련 문제