File tree Expand file tree Collapse file tree 1 file changed +35
-3
lines changed Expand file tree Collapse file tree 1 file changed +35
-3
lines changed Original file line number Diff line number Diff line change
1
+ function ! RecordType (linenum)
2
+ if a: linenum < 0
3
+ return ' '
4
+ endif
5
+ return getline (a: linenum )[0 :1 ]
6
+ endfunction
7
+
1
8
function ! CifFolds ()
2
- if getline (v: lnum )[0 :1 ] == ' BS'
9
+ let previous_record_type= RecordType (v: lnum- 1 )
10
+ let record_type = RecordType (v: lnum )
11
+ if record_type == ' BS'
12
+ return " >1"
13
+ elseif record_type == ' TI' && previous_record_type != ' TI'
3
14
return " >1"
15
+ elseif record_type == ' TA' && previous_record_type != ' TA'
16
+ return " >1"
17
+ elseif record_type == ' TD' && previous_record_type != ' TD'
18
+ return " >1"
19
+ elseif record_type == ' AA' && previous_record_type != ' AA'
20
+ return " >1"
21
+ elseif record_type == ' ZZ'
22
+ return " 0"
4
23
endif
5
24
return " ="
6
25
endfunction
7
26
8
27
function ! CifFoldText ()
9
- let line = getline (v: foldstart )
10
28
let lines = (v: foldend- v: foldstart )+ 1
11
- return line [32 :35 ] . ' (' . lines . ' lines) ' . line
29
+ let record_type= RecordType (v: foldstart )
30
+ if record_type == ' BS'
31
+ let line = getline (v: foldstart )
32
+ return line [32 :35 ] . ' (' . lines . ' lines) ' . line
33
+ elseif record_type == ' TI'
34
+ return ' TIPLOC Inserts (' . lines . ' lines)'
35
+ elseif record_type == ' TA'
36
+ return ' TIPLOC Ammends (' . lines . ' lines)'
37
+ elseif record_type == ' TD'
38
+ return ' TIPLOC Deletes (' . lines . ' lines)'
39
+ elseif record_type == ' AA'
40
+ return ' Associations (' . lines . ' lines)'
41
+ else
42
+ return record_type . ' (' . lines . ' lines)'
43
+ endif
12
44
endfunction
13
45
14
46
setlocal foldmethod = expr
You can’t perform that action at this time.
0 commit comments