웹 편집 기용 Xtext에서 콘텐츠 제안 사용자 지정

Hristo Vrigazov

Xtext로 작성된 DSL이 있습니다. 커스텀 콘텐츠 제안을 추가하기 위해 프로젝트 에서 MyDslProposalProvider클래스를 편집했습니다 ui. 새로운 제안은 내가 Eclipse에서 플러그인을 디버그 할 때 존재하지만 궁극적으로 내가 원하는 웹 편집기에는 없습니다. 사용자 지정 제안을 한 곳에서 설정하고 생성 된 모든 편집자가이를 사용하고 싶습니다. Xtext로 할 수 있습니까?

데니스 쿠니스

동일한 문제가 있었고 솔루션으로 약간 어려움을 겪었으므로 (Eclipse 편집기와 웹 편집기를 모두 사용하고 싶으므로) 여기에서 가능한 솔루션에 대한 자세한 피드백을 제공하고 싶습니다. 내 솔루션에서 다음 단계를 수행했습니다.

  1. 구현 MyDslIdeContentProposalProvider에서 my.dsl.ide 으로부터 연장 서브 프로젝트 IdeContentProposalProvider패키지, my.dsl.ide.contentassistant을 (새로 생성); 이러한 구현의 예는 여기 에서 찾을 수 있습니다 . 구현은 잘 알려진 Eclipse 용 UI 제안 공급자 에서처럼 편리하지 않습니다. MyDslGrammarAccessUI 제안 제공자와 같은 구조적 문법 요소 대신 요소를 기반으로 스위치 케이스를 구현해야했습니다 . 반면에 모든 편집자 사례에 대해 하나의 제안 구현 만 있습니다 (DRY 원칙!).
  2. 동일한 프로젝트에 MyDslIdeContentProposalProviderat MyDslIdeModule등록합니다 (웹 편집기에서 이미 작동하는 경우에만).

    def Class<? extends IdeContentProposalProvider> bindIdeContentProposalProvider() {
        MyDslIdeContentProposalProvider
    }
    
  3. 새로운 등록 MyDslIdeContentProposalProvider 전달 클래스 UiToIdeContentProposalProvider상기를 MyDslUiModulemy.dsl.ui 서브 프로젝트. (논리적으로 도출 할 수 없기 때문에 가장 긴 조사가 필요했습니다.)

    override Class<? extends IContentProposalProvider> bindIContentProposalProvider() {
        return UiToIdeContentProposalProvider
    }
    
    def Class<? extends IdeContentProposalProvider> bindIdeContentProposalProvider() {
        return JavaPOSConfigLanguageIdeContentProposalProvider
    }
    

    전체 예는 여기 를 참조 하십시오 .

  4. MyDslIdeContentProposalProvider새로 생성 된 my.dsl.ide.contentassistant 패키지에서를 구현 했으므로이 패키지는 MANIFEST.MF하위 프로젝트 my.dsl.ide파일 로 내 보내야합니다 (이후 2 개의 내보내기는 이미 있음). 그렇지 않으면 오류가 발생합니다. 액세스 제한 : .NET Framework에서 필요한 프로젝트 에 대한 제한으로 인해 유형에 액세스 할 수 없습니다MyDslUiModule .

    Export-Package: my.dsl.ide.contentassist,
      my.dsl.ide.contentassist.antlr,
      my.dsl.ide.contentassist.antlr.internal
    

    그런 식으로 Eclipse와 웹 편집기 모두에서 잘 작동했습니다.

초기 힌트에 대해 Christian에게 다시 한 번 감사드립니다!

... 내가 소원을 빌 수 있다면, MyDslIdeContentProposalProvider현재 UI 제안 제공자에 있는 것과 동일한 구조적 문법 요소 액세스 권한을 갖고 싶습니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

drupal 7에서 사용자 지정 콘텐츠 유형의 테마 추가 / 편집 방법

분류에서Dev

Hybris SmartEdit-하나의 콘텐츠 페이지에 대해서만 사용자 편집 권한 부여

분류에서Dev

사용자 지정 콘텐츠 슬라이더에서 슬라이드하는 동안 공백 / 간격 문제

분류에서Dev

jquery를 사용하여 drupal wysiwyg 편집기에서 콘텐츠 읽기

분류에서Dev

PHP를 사용하지 않고 콘텐츠 편집 가능

분류에서Dev

사용자 지정 날짜를 사용하여 Liferay에 웹 콘텐츠 업로드

분류에서Dev

Umbraco : 콘텐츠에서 "마지막 편집"값 가져 오기

분류에서Dev

WooCommerce 사용자 지정 제품 페이지에 조건부로 사용자 지정 콘텐츠 추가

분류에서Dev

PHP를 사용하여 웹 페이지 콘텐츠를 배열에 넣기

분류에서Dev

사이트 코어에서 사용자 지정 콘텐츠 편집기 (편집기 탭)를 만들 때 다른 VS 프로젝트에서 원하는 aspx 페이지가있는 경우 URL 형식은 어떻게됩니까?

분류에서Dev

사용자가 콘텐츠를 생성하지 않은 경우 편집 및 삭제 버튼을 숨기는 방법

분류에서Dev

사용자보기 아래에 웹 콘텐츠를 유지하는 방법은 무엇입니까?

분류에서Dev

웹 페이지 콘텐츠 가져 오기 (json 배열 사용)

분류에서Dev

사용자 입력에 기반한 동적 웹 사이트 콘텐츠

분류에서Dev

웹킷을 사용하여 컨텐츠 편집 가능 컨트롤에서 탭 누르기

분류에서Dev

TYPO3에서 사용자 지정 콘텐츠 요소 만들기

분류에서Dev

iFrame 콘텐츠에 대한 사용자 에이전트 설정 / 강제

분류에서Dev

Python을 사용하여 웹 페이지 콘텐츠에 액세스

분류에서Dev

python-요청을 사용하여 수백 개의 웹 페이지에서 콘텐츠 가져 오기

분류에서Dev

IAP 구독을 기반으로 웹 사이트에서 콘텐츠 제공

분류에서Dev

사용자 지정 페이지 콘텐츠가 밴드 타일에 표시되지 않는 문제가 있음

분류에서Dev

콘텐츠 편집 가능한 <ul>에서 모든 <li> 태그 삭제 방지

분류에서Dev

웹 사이트 URL에서 콘텐츠 (이미지, 제목 등)로드

분류에서Dev

사용자가 입력하는 동안 회전 된 콘텐츠 편집 가능 이동

분류에서Dev

Mongo-Database에서 사용자 별 콘텐츠 제어 / 제한

분류에서Dev

쿼리 선택기를 사용하여 html 콘텐츠 편집

분류에서Dev

WPF-콘텐츠에 대한 사용자 지정 패널 크기

분류에서Dev

사용자 지정 텍스트간에 콘텐츠 가져 오기

분류에서Dev

CSS를 사용하여 기존 콘텐츠 뒤에 웹 페이지에 배경 이미지 표시

Related 관련 기사

  1. 1

    drupal 7에서 사용자 지정 콘텐츠 유형의 테마 추가 / 편집 방법

  2. 2

    Hybris SmartEdit-하나의 콘텐츠 페이지에 대해서만 사용자 편집 권한 부여

  3. 3

    사용자 지정 콘텐츠 슬라이더에서 슬라이드하는 동안 공백 / 간격 문제

  4. 4

    jquery를 사용하여 drupal wysiwyg 편집기에서 콘텐츠 읽기

  5. 5

    PHP를 사용하지 않고 콘텐츠 편집 가능

  6. 6

    사용자 지정 날짜를 사용하여 Liferay에 웹 콘텐츠 업로드

  7. 7

    Umbraco : 콘텐츠에서 "마지막 편집"값 가져 오기

  8. 8

    WooCommerce 사용자 지정 제품 페이지에 조건부로 사용자 지정 콘텐츠 추가

  9. 9

    PHP를 사용하여 웹 페이지 콘텐츠를 배열에 넣기

  10. 10

    사이트 코어에서 사용자 지정 콘텐츠 편집기 (편집기 탭)를 만들 때 다른 VS 프로젝트에서 원하는 aspx 페이지가있는 경우 URL 형식은 어떻게됩니까?

  11. 11

    사용자가 콘텐츠를 생성하지 않은 경우 편집 및 삭제 버튼을 숨기는 방법

  12. 12

    사용자보기 아래에 웹 콘텐츠를 유지하는 방법은 무엇입니까?

  13. 13

    웹 페이지 콘텐츠 가져 오기 (json 배열 사용)

  14. 14

    사용자 입력에 기반한 동적 웹 사이트 콘텐츠

  15. 15

    웹킷을 사용하여 컨텐츠 편집 가능 컨트롤에서 탭 누르기

  16. 16

    TYPO3에서 사용자 지정 콘텐츠 요소 만들기

  17. 17

    iFrame 콘텐츠에 대한 사용자 에이전트 설정 / 강제

  18. 18

    Python을 사용하여 웹 페이지 콘텐츠에 액세스

  19. 19

    python-요청을 사용하여 수백 개의 웹 페이지에서 콘텐츠 가져 오기

  20. 20

    IAP 구독을 기반으로 웹 사이트에서 콘텐츠 제공

  21. 21

    사용자 지정 페이지 콘텐츠가 밴드 타일에 표시되지 않는 문제가 있음

  22. 22

    콘텐츠 편집 가능한 <ul>에서 모든 <li> 태그 삭제 방지

  23. 23

    웹 사이트 URL에서 콘텐츠 (이미지, 제목 등)로드

  24. 24

    사용자가 입력하는 동안 회전 된 콘텐츠 편집 가능 이동

  25. 25

    Mongo-Database에서 사용자 별 콘텐츠 제어 / 제한

  26. 26

    쿼리 선택기를 사용하여 html 콘텐츠 편집

  27. 27

    WPF-콘텐츠에 대한 사용자 지정 패널 크기

  28. 28

    사용자 지정 텍스트간에 콘텐츠 가져 오기

  29. 29

    CSS를 사용하여 기존 콘텐츠 뒤에 웹 페이지에 배경 이미지 표시

뜨겁다태그

보관