2012-03-02 5 views
2

저는 균형이 맞지 않는 괄호에 대해 경고하기 위해 특히 내 Markdown 파일 인 내 파일에 대해 check-parens을 저장 후크로 설정했습니다. 그들은 거의 항상 오류가 있으며,이 괄호 잡담 내부 마크 다운 링크와 관련된 수많은 오류에서 저를 저장했다 : 나는 인용와 나는 비슷한 문제가 나타났습니다큰 따옴표를 검사하기 위해 체크 표시를 사용자 정의합니다.

;In Markdown files, there are few excuses for unbalanced delimiters 
(add-hook 'markdown-mode-hook 
      (lambda() 
      (when buffer-file-name 
       (add-hook 'after-save-hook 
         'check-parens 
         nil t)))) 

을 - 나는 뒤에 견적을 떨어질 것이다, 또는 single과 doubles를 적절히 변환하는 것을 잊어 버릴 것입니다. (때로는 종이 제목을 툴팁에 넣을 때 링크 오류와 겹칩니다.) 불균형의 이유는 s ​​또는 s보다 더 많은 이유가 있습니다. 동일한 작업 check-parens이 이미 진행 중이므로 당연히 check-parens 표지도 포함하고 싶습니다.

하지만 그렇게 할 수는 없습니다! 올바른 방법은 해킹과 관련이있는 것 같습니다.

(modify-syntax-entry ?\" "(\"" markdown-mode-syntax-table) 
(modify-syntax-entry ?\" ")\"" markdown-mode-syntax-table) 
(modify-syntax-entry ?\" "$\"" markdown-mode-syntax-table) 
(modify-syntax-entry ?\" "^\"" markdown-mode-syntax-table) 
(modify-syntax-entry ?\" ".\"" markdown-mode-syntax-table) 
(modify-syntax-entry ?' "\"" markdown-mode-syntax-table) 

등 그들은 아무것도하지 않고 또는 어디까지 내가 모든 걸 말할 수있는 파일의 초기 오류를 뱉어 check-parens의 원인은 작동 중 모든 등 등 - 나는 시도 마크 다운 문법 테이블,하지만 아무것도 작동하는 것 같다 벌금.

나는이 주제에 대한 링크의 수와 modify-syntax-entry에 대한 문서 주 6 채널을 통해 읽었습니다 :

와는 아무 소용, #emacs에 물었다.

(버전은 불안정 데비안에 이맥스 24.0.93.1입니다.)

답변

1

당신은 알고
(modify-syntax-entry ?\" "\"" markdown-mode-syntax-table) 
+0

, 나는 그게 내가 시도하고 역부족했던 것들 중 하나라고 말을하고 있었다 시도 - 그게 나이었습니다. Emacser가 제안한 이후로 나는 더 조심스럽게 점검해야했습니다. 테스트 파일이 복잡해 졌기 때문에 나는 불균형 한 쌍을 놓쳤다. (불행히도 이전의 괄호 문제를 해결하기 쉽도록 깜빡이는 괄호 코드가있는 것 같습니다. 불균형이 어디에 있는지 알기 전까지 수동으로 파일을 양분해야했습니다.) – gwern

관련 문제