summaryrefslogtreecommitdiff
path: root/runtime/indent/prolog.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/indent/prolog.vim')
-rw-r--r--runtime/indent/prolog.vim13
1 files changed, 11 insertions, 2 deletions
diff --git a/runtime/indent/prolog.vim b/runtime/indent/prolog.vim
index 26a3bc3cd..ecd089416 100644
--- a/runtime/indent/prolog.vim
+++ b/runtime/indent/prolog.vim
@@ -2,6 +2,7 @@
" Maintainer : Gergely Kontra <kgergely@mcl.hu>
" Revised on : 2002.02.18. 23:34:05
" Language : Prolog
+" Last change by: Takuya Fujiwara, 2018 Sep 23
" TODO:
" checking with respect to syntax highlighting
@@ -37,10 +38,18 @@ function! GetPrologIndent()
let ind = indent(pnum)
" Previous line was comment -> use previous line's indent
if pline =~ '^\s*%'
- retu ind
+ return ind
+ endif
+ " Previous line was the start of block comment -> +1 after '/*' comment
+ if pline =~ '^\s*/\*'
+ return ind + 1
+ endif
+ " Previous line was the end of block comment -> -1 after '*/' comment
+ if pline =~ '^\s*\*/'
+ return ind - 1
endif
" Check for clause head on previous line
- if pline =~ ':-\s*\(%.*\)\?$'
+ if pline =~ '\%(:-\|-->\)\s*\(%.*\)\?$'
let ind = ind + shiftwidth()
" Check for end of clause on previous line
elseif pline =~ '\.\s*\(%.*\)\?$'