루아에 Ctags를 사용하고 싶습니다.Exuberant Ctags는 OSX에서 제대로 작동하지 않습니다
Ctags는 루아를 지원하지 않는, 그래서 나는 명령을 발견 :
이ctags --langdef=MYLUA --langmap=MYLUA:.lua --regex-MYLUA="/^.*\s*function\s*(\w+):(\w+).*$/\2/f/" --regex-MYLUA="/^\s*(\w+)\s*=\s*[0-9]+.*$/\1/e/" --regex-MYLUA="/^.*\s*function\s*(\w+)\.(\w+).*$/\2/f/" --regex-MYLUA="/^.*\s*function\s*(\w+)\s*\(.*$/\1/f/" --regex-MYLUA="/^\s*(\w+)\s*=\s*\{.*$/\1/e/" --regex-MYLUA="/^\s*module\s+\"(\w+)\".*$/\1/m,module/" --regex-MYLUA="/^\s*module\s+\"[a-zA-Z0-9._]+\.(\w+)\".*$/\1/m,module/" --languages=MYLUA --excmd=number -R .
그것은 너무 오래, 또는 당신은 단지 루아 기능에 대한 짧은 샘플을 볼 수 있습니다.
ctags --langdef=MYLUA --langmap=MYLUA:.lua --regex-MYLUA="/^.*\s*function\s*(\w+)\s*\(.*$/\1/f/" --languages=MYLUA --excmd=number -R .
두 가지 모두 Windows에서 정상적으로 작동합니다.
OSX에서 오류는 없었지만 태그 파일은 비어 있습니다.
추 신 : OS X에서 기본 ctags가 아닌 Exuberant Ctags v5.8을 사용했습니다.
다음은 ctags에 대한 테스트 루아 코드입니다. 당신이 https://github.com/fishman/ctags에서 찾을 수 있습니다
function f1()
end
function c.f2()
end
function c:f3()
end