-
Notifications
You must be signed in to change notification settings - Fork 632
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Harbour parser... Var=... implementation #2561
Comments
You are correct. The current version of u-ctags cannot satisfy your requirement. I'm thinking about introducing postscript alike language called optscript to users allow to However, it is still an idea. I cannot say when the optscript is implemented. |
Thank you very much for your response, you have amazed me by the speed of answering. |
https://sourceforge.net/p/ctags/patches/68/ |
I need to look at it in detail, compile it and check results. |
Hello, I think that someone who masters the C language, and especially if he knows the code of the ctags program, it would be very easy to add a statistic variable to the top level of each language class and then access it by means of something like this: In this way I could subdivide the tags into more accurate results by joining them by means of var and presenting them when I already have them formatted to my liking making a pop. I hope I understood it correctly. |
I have checked harbour.patch and it does not work in universal ctags because it accesses variables that are now available through functions (they are statistical variables in universal ctags) apart from not following the new specifications. It's a shame. |
Maybe I can apply the patch with some modifications. The question is whether it will be useful or not. |
IMHO, it is too ad-hoc. |
I have compiled and evaluated harbour.c on Exuberant ctags and it seems to work with this programming language as well as it could be with any other ones that are already incorporated. |
Hello Mr. Masatake, |
I would like to see the .ctags file utilizing var-{push,pop,pop_clear,clear}. |
The workflow is:
+The word function is saved with var-push in main, a midpoint is added.
############################ ############################ nombre de la función.--mtable-regex-Harbour=function/([a-z][a-z0-9_]*)/\1·/f/{icase}{var=push}{placeholder} busca (--_mtable-extend-Harbour=function+skipComment con ) se termina y vuelve a main.--_mtable-regex-Harbour=function/())/ \1·/f/{tjump=main}{var=pop_clear} ############################ fparameters: busca los parámetros de una función o procedimiento.quita comentarios, busca nombre de parámetro, quita comentarios, comprueba si hay coma, quita comentarios, hasta que haya un )encuentra )si encuentra ) sale de la funcion.Función sin parámetros o retorno normal.--_mtable-extend-Harbour=fparameters+skipComment el parámetro de la función es ...--_mtable-extend-Harbour=fparameters+skipComment búsqueda de parámetros y , separadoras.--mtable-extend-Harbour=fparameters+skipComment ############################################## ############################################## With the power of multitables and with the vars, I get the following result... which is the one I'm looking for in this case.FUNCTION·OneFunc·(Parameter1,Parameter2) |
I dont know how to send files in GitHub, sorry
El mié., 10 jun. 2020 a las 13:53, Masatake YAMATO (<
notifications@github.com>) escribió:
… I would like to see the .ctags file utilizing
var-{push,pop,pop_clear,clear}.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#2561 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/APZGBXVDTLP4Q4KVCDCJ2WDRV5X4XANCNFSM4NPHYBNQ>
.
--
Jorge V. Gutiérrez Rubio
|
Thank you.
I understand that ctags emits the contents of VAR as part of the name of a tag. The question is |
Var preappends results of regexec, not only \1. |
When I said preappend....: function myfunction(one,two); you make one template regex: /function/FUNCTION: //{tenter=lookforname]{placeholder}{var=push} in lookforname i have another template regex: lookforname/([a-z_][a-z0-9_}*)/name:\1//{icase}{placeholder}{var=push} Now in var we have: "FUNTION : name:myfunction" So, if we make var=pop, program prints "FUNTION : name:myfunction" |
tested that works well:
I added a size control of the Varstatus variable of a maximum of 200 characters in case too many pushes were put without ever making a clear. If that happens an error message is issued and the Varstatus variable is cleaned allowing the code to continue running. Added and tested:
|
jvguti: All things checkeds |
ctags introduced an interpreter implementing general purpose programming language. |
(Hello everyone, I found ctags by chance and I have been very interested.
I'm trying to make a .ctags file for the xBase Harbour language, I ran into the following problem:
Thank you for contacting us.
The name of the parser:
My own parser: Harbour.ctags
The command line you used to run ctags:
ctags.exe --options=Harbour.ctags --sort=no -f0_prueba.txt hb.prg
The content of input file:
The version of ctags:
The text was updated successfully, but these errors were encountered: