2017-01-18 7 views
0

Symfony 애플리케이션에서 Ractive 템플릿을 사용합니다. 내 Ractive 템플릿으로PhpStorm에서 사용자 정의 구분 기호를 해석하는 방법은 무엇입니까?

는 .twig 파일에, 내 Ractive 값 주위에 괄호를 사용할 수 없습니다, 그래서 나는 Ractive의이 custom delimiters

예를 들어, <p>{{text}}</p><p>[[text]]</p>을하게 사용합니다.

그것은 완벽하게 작동하지만, 내 문제는 PhpStorm 여러 성가신 결과의 원인 템플릿 값으로 브래킷을 인식하지 않는다는 것입니다 :

더 구문 착색이 없습니다

, 들여 쓰기가 엉망을, 및 경고가 있습니다 해서는 안되는 곳.

어떻게하면 PhpStorm이 이중 대괄호를 템플릿 값으로 해석하게 할 수 있습니까?


편집 : 코드의 예 :

<script type="text"> 
    $(function() { 
    var a = new Analytics(); 
    a.site = '{{ site.id }}'; {# Twig #} 
    a.run(); 
}); 
</script> 

{# Below is ractive #} 
<table class="table"> 
    <tr class="general"> 
     <th></th> 
     [[#each columns: i]] 
      [[#if stats]] 
       <th>[[trans('column.' + columns[i])]]</th> 
      [[/if]] 
     [[/each]] 
    </tr> 
    [[> totalLine]] 
    [[#each templates: t]] 
     [[> templateLine]] 
    [[/each]] 
</table> 
+0

그래서 템플릿 내부에 템플릿이 있습니다. 서버 측 Twig에서 처리 한 "Normal"템플릿 .. 그리고 나서 클라이언트/브라우저 내부 템플릿에서 다른 엔진에 의해 처리되고 사용됩니다 ... 괜찮습니다. (내 테스트 프로젝트에서 복사하여 붙여 넣을 수있는 파일) – LazyOne

+0

** 1) ** 나는 IDE가 이러한 "템플릿 내부의 템플릿"을 지원한다고 생각하지 않습니다. 두 템플리팅 엔진이 별도로 지원되는 경우에도 처리 할 수 ​​있습니다 (예 : 별도의 플러그인을 통해 나뭇 가지 및 핸들/콧수염). * https://youtrack.jetbrains.com/issue/IDEA-106449 ** 2) ** 핸들 바/콧수염 플러그인 (예 :)에는 옵션 페이지가 없습니다. 사용하려는 중괄호를 구성 할 수 없습니다. 블레이드/스마티 만이 그런 커스터마이징을 가지고 있습니다). – LazyOne

+0

나는 위의 티켓 (관련 티켓도 확인하십시오) 외에도 다음과 같은 내용에 관심이 있으리라 생각합니다. 1) https://youtrack.jetbrains.com/issue/WEB-14385 2) https : //youtrack.jetbrains .com/issue/WEB-14336 – LazyOne

답변

0

이것은 XY problem의 한 예입니다.

문제 ("X 문제")가 Ractive 구문인데, 특히 {{ }}은 구문 분석기에서 Twig로 처리됩니다. 이것은 verbatim 섹션 주위에 Ractive 템플릿을 감싸서 해결할 수 있습니다.이를 통해 Twig는 Twig와 같은 Ractive 템플릿을 처리하지 못하게 할 수 있습니다.

"Y 문제"는 "X 문제"를 해결하려는 시도에서 비롯됩니다. 즉, 사용자 지정 구분 기호를 사용할 때 IDE 구문 강조 표시입니다.

{{ }} 구문 템플릿이 Ractive 템플릿으로 작동하는 것으로 나타나는 이유는 Twig가 {{ }}과 관련된 구문을 사용하고 있기 때문입니다. 그러나 강조 표시는 Ractive에 대해 전혀 모릅니다. 두 언어 모두 {{ }}을 구문 하이 라이터가 Twig ...라고 생각하고 Twig와 같은 스타일로 사용합니다.

또한 대부분의 IDE가 단일 언어 강조 표시 만 지원합니다. 파일이 나뭇 가지 서식 파일로 취급되므로 나뭇 가지 강조 표시가 나타납니다. 다국어 구문 강조 기능이 IDE 공급 업체에 의해 결정되어야하며 사용자가 직접 플러그인을 만들지 않는 한 그것에 대해 할 수있는 방법이 없습니다.

+0

사실, X 문제는 실제로 문제가 아닙니다. 사실입니다. 사용자 지정 구분 기호를 사용하며 개인 프로젝트가 아닌 큰 팀 프로젝트이기 때문에 변경할 수 없습니다. 나는 X 문제를 "풀 수 없다". 그러나 PhpStorm을 사용하는 유일한 사람은 내 문제에 대해 우려하는 유일한 사람입니다. 다국어 강조 표시에 대해서는 나뭇 가지와 습득력이 다른 파일 (.html.twig 및 .ractive.twig)이있는 서로 다른 파일에서 99 %의 시간을 차지하므로 실제로는 신경 쓰지 않습니다. LazyOne에서 제안한대로이 문제는 Jetbrains의 문제 추적기에 게시했습니다. –