2
我正在使用現代fortran進行並行編程。我正在使用vim,它真的讓我很煩,fortran.vim語法文件似乎不能處理像!$ omp或!dir $這樣的編譯器指令。這些只是作爲vim中的註釋呈現出來,因此它們不會脫穎而出。在c/C++中,這些編譯器指令使用#pragma完成,因此所有內容都像預處理器代碼而非註釋代碼一樣突出。所以我想用我的fortran語法進行類似的處理。 下面是我想要顏色的多指令的例子:Vim語法突出顯示多行fortran openmp指令
!$omp parallel do reduction(+: sum0) reduction(+: sum1) &
private(nn, S1, S2, Y1, Y2, rvec0, rvec1, iThreadNum)
我至今是位於$ HOME/vim的/後/語法新fortran.vim文件。 我已經知道在一行的開始處的'!$ omp'並對該行進行了顏色設置,並且也正確地對多行進行了着色。我的語法文件包含:
syn region fortranDirective start=/!$omp.*/ end=/[^\&]$/
hi def link fortranDirective PreProc
我的問題是,它現在不能處理只是一個單一的行的簡單情況。即:
!$omp parallel do blah blah
call foobar <-- this is coloured the same as the line above
我需要某種形式的正則表達式規則,在我的語法文件,以便能夠正確地匹配兩個單行和續行。任何人都可以幫忙嗎?
簡單啊!這似乎已修復它。謝謝! – jimypbr
很高興我能幫到你。 – Akobold