Tuesday, December 21, 2010

Re: ctags for standard C library

Hi,
I have once made a plugin which has already solved this problem, I think.
www.vim.org/scripts/script.php?script_id=3219
You may try it.

Hong Xu
2010/12/21

On 12/21/10, Bouchtaoui@gmail.com <bouchtaoui@gmail.com> wrote:
> Thanks,
>
> But I think I write my own plugin, cause this is overkill to me. A
> file size of more than 250 MB is just a waste. Writing a plugin which
> analizes included header files and ctags them one by one is a better
> approach. When adding an include file, Vim will automatically ctags
> that particular file by first looking if it's already done that,
> otherwise look in the project and than in /user/include, /usr/local/
> include.
>
> This will ctag also self created source files.
>
>
>
> On Dec 20, 4:25 pm, ZyX <zyx....@gmail.com> wrote:
>> Reply to message «ctags for standard C library»,
>> sent 14:37:23 20 December 2010, Monday
>> by Bouchta...@gmail.com:
>>
>> If you want just to reduce the size of the file, --excmd=number does the
>> job: on
>> my system (Gentoo, so I have header files for every package that provides
>> them)
>> the following command takes 1,5 minutes to generate a 265 MiB file:
>> ctags -R --excmd=number \
>> --c++-kinds=+p \
>> --fields=+iaS \
>> --extra=+q \
>> -f ~/tmp/vim/uitags /usr/include
>>
>> I don't know how to include only standart C headers, but you may try the
>> following (in **zsh**):
>> ctags --excmd=number \
>> --c++-kinds=+p \
>> --fields=+iaS \
>> --extra=+q \
>> -f ~/tmp/vim/uitags2 \
>> /usr/include/*(e%'man -w $REPLY:t &>/dev/null || man -w
>> $REPLY:t:r
>> &>/dev/null'%)
>>
>> It will try to index only files (and directories) whose names are man
>> entries.
>> With this command it generates only 29 MiB file in 50 seconds. Please
>> don't
>> forget that it is zsh, not bash. And join last two lines of command, they
>> got
>> splitted by mail client.
>>
>> Original message:
>>
>>
>>
>>
>>
>>
>>
>> > Hello guys,
>>
>> > Please help me with the following problem. I want to use Vim with
>> > ctags to benefit from OmniCppCompletion. I was searching the internet
>> > for a solution before I post here, but didn't succeed. So what's the
>> > problem:
>>
>> > I want to add tags which is specifically targeted to standard C
>> > library. What I mean with standard C library, is stdio.h, stdlib.h,
>> > string.h, arp/net.h socket.h signal.h and so on...
>>
>> > I found only examples like:
>> > ctags –R --c++-kinds=+p --fields=+iaS --extra=+q /usr/include
>>
>> > When I run this, it takes a long time before it finishes so I
>> > terminated the process, looking at filesize, I saw it was already
>> > about 250 MB. If I let ctags finish it with building the table, it
>> > could be maybe 1 GB, which is huge in my opnion and I don't think
>> > that's how to do it.
>>
>> > So please, how can I creat a tag file for standard C lib (in my case
>> > on a Debian) correctly. I don't want C++ (cause there are plenty of
>> > examples), just C!
>>
>> > If you gave me the solution, you helped me with a problem I had for
>> > months (I switched to Code::Blocks to code).
>>
>>
>>
>> signature.asc
>> < 1KViewDownload
>
> --
> You received this message from the "vim_use" maillist.
> Do not top-post! Type your reply below the text you are replying to.
> For more information, visit http://www.vim.org/maillist.php
>

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments: