diff options
Diffstat (limited to 'files.f90')
-rw-r--r-- | files.f90 | 20 |
1 files changed, 18 insertions, 2 deletions
@@ -33,7 +33,7 @@ contains implicit none integer, intent(in)::unit_number - + Write(unit_number, '(A1)', advance='no') new_line('a') Write(unit_number, '(A17)') end_indicator end subroutine mark_file_end @@ -91,6 +91,20 @@ contains end subroutine read_line_text + subroutine replace_tabs(text) + implicit none + + character(*), intent(inout)::text + integer::i + + i = index(text, char(9)) + do while(i > 0) + text(i:i) = ' ' + i = index(text, char(9)) + end do + + end subroutine replace_tabs + subroutine process_line(single_line, file_type, preformatted_on) use layout implicit none @@ -110,10 +124,12 @@ contains line_length = len_trim(single_line%text) - if(line_length > 2 .AND. single_line%text(1:2) == "=>") then + if((.not. preformatted_on) .AND. line_length > 2 .AND. & + single_line%text(1:2) == "=>") then single_line%line_type = line_type_link single_line%text(1:2) = " " + call replace_tabs(single_line%text) single_line%text = adjustl(single_line%text) else if(line_length >= 3 .AND. single_line%text(1:3) == "```") then |