2013-11-09 1 views
0

에서 작동하지 않을 수 있습니다 나는이이맥스 : 약칭 모드는 파이썬 모드

(define-abbrev-table 'python-mode-abbrev-table 
    '(
    ("i_settings" "from django.conf import settings") 
    ("i_requestcontext" "from django.template import RequestContext") 
    ("i_model" "from django.db import models") 
    ("i_form" "from django import forms") 
    )) 

과 같은 코드를 사용하여 파이썬 모드에 대한 몇 가지 약어를 정의하지만이 제대로 작동하지 않을 수 있습니다. 예를 들어 "i_settings"를 입력 한 다음 공백을 입력하면 emacs가 "django.conf 가져 오기 설정에서"확장되지 않습니다. 모든 구성이 비활성화되었지만 아무런 도움이되지 않은 상태에서 시도했습니다.

답변

1

밑줄이있는 것 같습니다. _ 확장을 막고 있습니다. 같은 테이블을 시도

(define-abbrev-table 'python-mode-abbrev-table 
    '(
    ("isettings" "from django.conf import settings") 
    ("irequestcontext" "from django.template import RequestContext") 
    ("imodel" "from django.db import models") 
    ("iform" "from django import forms") 
    )) 

을 강조하고 예상대로 작동하지 않고.

+0

밑줄에 대해서는 아무 것도 없습니다. 왜냐하면 내가 파이썬 모드의 abbrev-table을 sh-mode-abbrev-table로 바꾼 다음 쉘 스크립트 소스 파일에서 잘 동작하기 때문이다. 매우 이상하다. – YuYang

+0

나는 그것을 확인할 수 없다. 'python-mode-abbrev-table'을'sh-mode-abbrev-table'으로 바꾸어도 아무런 변화가 없습니다. 심지어 거기에, 그것은 밑줄과 함께 작동하지 않고없이 않습니다. –

0

약어 - abbrev - before-point--를 확장하는 내부 절차는 단어 구문에 의존합니다.이 BTW에 대한 이유를 볼 수 없으며, 대신 Emacs는 인쇄 가능한 모든 것을 취할 수 있습니다.

그 결과 밑줄 문자에 단어 구문이있는 모드에서는 정의가 작동해야합니다 (예 : python-mode.el).