2010-04-25 2 views
0

내가위한 코드 편집기를 짓고 있어요VB.NET 구문 코딩

나는 ... 많은 사람들이이 중 일부는 수행하는 방법을 물어,하지만 난 대답을 사용하는 컨텍스트를 이해하지 않기 때문에 알 파이썬 언어의 파괴, 그리고 나는이를 통해를 RichTextBox에 키워드를 강조 매우 괜찮은 방법을 발견 :

bluwords.Add(KEYWORDS GO HERE) 
    If scriptt.Text.Length > 0 Then 
     Dim selectStart2 As Integer = scriptt.SelectionStart 
     scriptt.Select(0, scriptt.Text.Length) 
     scriptt.SelectionColor = Color.Black 
     scriptt.DeselectAll() 
     For Each oneWord As String In bluwords 
      Dim pos As Integer = 0 
      Do While scriptt.Text.ToUpper.IndexOf(oneWord.ToUpper, pos) >= 0 
       pos = scriptt.Text.ToUpper.IndexOf(oneWord.ToUpper, pos) 
       scriptt.Select(pos, oneWord.Length) 
       scriptt.SelectionColor = Color.Blue 
       pos += 1 
      Loop 
     Next 
     scriptt.SelectionStart = selectStart2 
    End If 

(scriptt이를 RichTextBox입니다) 그러나 코드의 상당한 금액을 입력 (또는 OpenFileDialog를 통해로드 될 때) 코드 덩어리가 사라지면 구문 선택이 무너지고 일반 텍스트가 파손됩니다. 이 작업을보다 효율적으로 수행 할 수있는 방법을 찾고 있는데, 아마도 비주얼 스튜디오 자체와 비슷할 것입니다. 모든 텍스트를 강조 표시 할 필요가 없기 때문에 검정색으로 설정 한 다음 모든 구문을 다시 실행하면 텍스트가 시작됩니다. 텍스트 사이에 문자를 삽입하기 위해 돌아 가면 오른쪽 위에 표시됩니다. 또한이 버전의 Python에서는 주석 전용 행의 주석에 해시 (#)가 사용되고 동일한 행의 주석에 이중 해시 (##)가 사용됩니다. 이제 누군가가이 정확한 것을 묻는 것을 보았습니다. 줄 끝까지 선택하는 작업은 다음과 같습니다.^\ '[^ \ r \ n] + $ |' '[^ \ r \ n ] + $ 나는 연습에 들지는 못합니다. 따옴표 사이의 텍스트를 선택하고 첫 번째 따옴표와 두 번째 글자 사이에 청록색으로 바꾸고 싶습니다. 텍스트는 청록색이며 3 번째와 4 번째 등등 사이에 동일하게 사용하고 싶습니다.

도움이 되셨습니다. !

답변

0

Visual Studio는 언어 문법에 따라 완전 파서를 사용합니다. 몇 가지 간단한 정규 표현식을 사용하면 결코 같은 결과를 얻을 수 없습니다.

SyntaxHighlighter을 보았습니까?

는 (참조 : Syntax Highlighting를) 자바가 필요하지 않도록

+0

죄송합니다, 저를이 응용 프로그램을 개발하는 요점이다. 내 Java 응용 프로그램을 대체하고 있습니다. 방법이있을거야? C#으로 옮겨야한다고해도? 답장을 보내 주셔서 감사합니다. –

+0

ColorCode는 유망한 것으로 보인다 ... –

+0

괜찮아요 ... –