인형의 맞춤 gedit 구문 강조? 라인. —– 하나의 색상. 3

gedit를 강조 표시하는 사용자 정의 구문을 만들고 싶습니다.

몇 가지 다른 항목이 있습니다.

2 개의 탭으로 시작하는 라인. —– 하나의 색상. 3 개의 탭으로 시작하는 줄입니다. —– 다른 색. 4 개의 탭으로 시작하는 줄입니다. —– 다른 색. INT로 시작하는 줄. 또는 EXT. —– 다른 색.

시나리오를 작성하기위한 것입니다.

나는 gedit에 대한 언어 정의 위키 페이지를 보았지만 그것은 내 머리 위에 있습니다.

내가 할 수있는 간단한 방법이 있습니까?



답변

다음은 GtkSourceView 참조 매뉴얼, Language Definition v2.0 Tutorial and Reference 에서 파생 된 것 입니다.

다음 내용으로 /usr/share/gtksourceview-2.0/language-specs/screenplay.lang 파일을 루트로 작성하십시오.

<?xml version="1.0" encoding="UTF-8"?>
<language id="screenplay" _name="Screenplay" version="2.0" _section="Markup">
  <metadata>
    <property name="mimetypes">text/plain</property>
    <property name="globs">*.script</property>
  </metadata>
  <styles>
    <style id="indent2" _name="2x indented"  map-to="def:comment" />
    <style id="indent3" _name="3x indented"  map-to="def:constant" />
    <style id="indent4" _name="4x indented"  map-to="def:identifier" />
    <style id="intext"  _name="INT. or EXT." map-to="def:statement" />
  </styles>
  <definitions>
    <context id="screenplay">
      <include>
        <context id="indent4" style-ref="indent4">
          <start>^\t\t\t\t</start>
          <end>$</end>
        </context>
        <context id="indent3" style-ref="indent3">
          <start>^\t\t\t</start>
          <end>$</end>
        </context>
        <context id="indent2" style-ref="indent2">
          <start>^\t\t</start>
          <end>$</end>
        </context>
        <context id="intext" style-ref="intext">
          <start>^(INT|EXT)\.</start>
          <end>$</end>
        </context>
      </include>
    </context>
  </definitions>
</language>

다음을 실행하여 파일을 읽을 수 있는지 확인하십시오.

sudo chmod 0644 /usr/share/gtksourceview-2.0/language-specs/screenplay.lang

gedit를 다시 시작하십시오. 이제 *.scriptgedit에서 연 파일 이름 은 하단의 상태 표시 줄에 “Screenplay”유형을 표시해야합니다. 2, 3 또는 4 개의 탭으로 들여 쓰기 된 줄은 각각 파란색, 자홍색 및 녹청으로 표시되고 INT로 시작하는 줄은 색으로 표시되어야합니다. 또는 EXT. 빨간색과 대담한 얼굴입니다.

몇 가지 방법으로 조정할 수 있습니다.

  • .script파일 이름 접미사는 “globs와”속성에 5 행에 설정되어 있습니다. 이를 명백한 방식으로 변경하고 원하는 경우 세미콜론 ( ;)으로 구분하여 여러 값을 포함 할 수 있습니다 .

  • 들여 쓰기 및 INT에 적용되는 색상입니다. 그리고 EXT. 선은 gedit에서 선택한 특정 색 구성표에 따라 다릅니다. 주석, 상수, 식별자 및 명령문 스타일의 색상입니다 (예 : map-to="def:comment"기타 등등). 다른 결과를 얻으려면 gedit 색 구성표 (편집> 환경 설정> 글꼴 및 색)를 변경하거나 태그 에서 map-to값을 다시 정렬하십시오 <style>. 더 많은 제어를 원하면 다음과 같이 고유 한 색 구성표를 만들 수 있습니다.

    cd /usr/share/gtksourceview-2.0/styles
    sudo cp classic.xml screenplay.xml
    

    screenplay.xml을 루트로 편집하십시오. 주석이 아닌 처음 세 줄을 다음과 같이 바꾸십시오.

    <style-scheme id="screenplay" _name="Screenplay" version="1.0">
      <author>YAS</author>
      <_description>Screenplay color scheme</_description>
    

    그런 다음 bold="true"def : comment, def : constant, def : identifier 및 def : statement 스타일 의 색상 (및 다른 스타일도 )을 조정하십시오 . gedit를 다시 시작하고 gedit의 색 구성표를 Screenplay로 변경하여 새 색을 확인하십시오. 그러나 이것은 세계적인 변화입니다. 다른 파일을 편집하기 위해 일반 색 구성표로 다시 변경할 수 있습니다.

screenplay.lang 또는 screenplay.xml 파일을 변경할 때마다 gedit를 다시 시작하여 결과를 확인해야합니다.