Add the creation of Emacs TAGS file

This commit is contained in:
Anthony Scemama 2020-05-27 23:12:49 +02:00
parent e5e4330ee7
commit f0cd410d49
2 changed files with 28 additions and 1 deletions

View File

@ -309,6 +309,7 @@ def run():
pid2 = os.fork()
if pid2 == 0:
# Create vim tags
tags = []
l = list(variables.keys())
file = open("irpf90_entities","w")
@ -327,6 +328,32 @@ def run():
for line in tags:
file.write(line)
file.close()
# Create emacs tags
tags = {}
l = list(variables.keys())
for v in l:
line = variables[v].line
if line.filename[0] not in tags:
tags[line.filename[0]] = []
tags[line.filename[0]].append( (v,line) )
l = list(subroutines.keys())
for v in l:
line = subroutines[v].line
if line.filename not in tags:
tags[line.filename] = []
tags[line.filename].append( (v,line) )
file = open("TAGS","w")
for f in tags:
tags[f].sort()
text = ""
for v, line in tags[f]:
text += "%s\x7f%s\x01%d,0\n"%(line.text.split('!')[0].rstrip(),v,line.i)
file.write("\x0c\n%s,%d\n"%(f, len(text)))
file.write(text)
file.close()
sys.exit(0)
os.waitpid(pid1,0)

View File

@ -25,6 +25,7 @@
# scemama@irsamc.ups-tlse.fr
import os,sys
try:
wd = os.path.abspath(os.path.dirname(__file__))
@ -33,7 +34,6 @@ except:
pass
import vim
import os,sys
from command_line import command_line
def main():