2013-06-26 54 views
1

我正在嘗試爲CodeMirror編寫Prolog模式,而我主要是JavaScript和CodeMirror新手。我現在正在研究一些特定的佈局任務。一個Prolog的佈局樣式爲IF-THEN-ELSE是使正常字符在CodeMirror中插入多個字符?

head(Arg) :- 
    ( if 
    -> then 
    ; else 
    ). 

我使用(SWI-Prolog的的PceEmacs)編輯器通過使(,>並實現這一點;活躍人物 ,看看我們是否在一個if -then-else。鍵入「(」將插入「(」,鍵入>以 前面的「 - 」將對齊並插入「 - >」和類似於「;」。 ;「,讓我縮進ok,但不讓我在標點符號後面添加空格。

回答

2

綁定一個鍵,例如"'('",並在您的處理函數中查看您的上下文適用,如果是,請撥打.replaceSelection("(", "end"),如果沒有,則返回CodeMirror.Pass以使默認行爲發生。

相關問題