vim-omnicppcomplete/vim-omnicppcomplete.spec
2015-01-27 23:56:34 +01:00

73 lines
2.5 KiB
RPMSpec

%global vimfiles_root %{_datadir}/vim/vimfiles
Name: vim-omnicppcomplete
Version: 0.41
Release: 4%{?dist}
Summary: vim c++ completion omnifunc with a ctags database
Group: Application/Editors
License: GPLv2+
URL: http://www.vim.org/scripts/script.php?script_id=1520
Source0: omnicppcomplete-%{version}.zip
Patch0: license.patch
Requires: ctags
Requires: vim-filesystem
Requires(post): vim
Requires(postun): vim
BuildArch: noarch
%description
This script is for vim 7.0 or higher, it provides C/C++ completion thanks to a ctags database.
Features :
- Complete namespaces, classes, structs and union members.
- Complete inherited members for classes and structs (single and multiple inheritance).
- Complete attribute members eg: myObject->_child->_child etc...
- Complete type returned by a function eg: myObject->get()->_child.
- Complete the "this" pointer.
- Complete a typedef.
- Complete the current scope (global and class scope).
- Complete an object after a cast (C and C++ cast).
- Complete anonymous types (eg: struct {int a; int b;}g_Var; g_Var.???). It also works for a typedef of an anonymous type.
Notes :
- The script manage cached datas for optimization.
- Ambiguous namespaces are detected and are not included in the context stack.
- The parsed code is tokenized so you can run a completion even if the current
instruction has bad indentation, spaces, comments or carriage returns between words
(even if it is not realistic).
%prep
%setup -q -c omnicppcomplete-%{version}
%patch0 -p1
%build
%install
mkdir -p %{buildroot}%{vimfiles_root}
cp -ar {after,autoload,doc} %{buildroot}%{vimfiles_root}
%post
vim -c ":helptags %{vimfiles_root}/doc" -c :q &> /dev/null
%postun
rm %{vimfiles_root}/doc/tags
vim -c ":helptags %{vimfiles_root}/doc" -c :q &> /dev/null
%files
%doc %{vimfiles_root}/doc/*
%{vimfiles_root}/after
%{vimfiles_root}/autoload
%changelog
* Tue Jan 27 2015 Marc Deop <marc@marcdeop.com> - 0.41-4
- Add post and postun and Requires: vim (to generate helptags properly).
* Thu Nov 15 2012 Marc Deop <marc@marcdeop.com> - 0.41-3
- Added patch to include GPLv2+ License (commit da45a4a3eb4ebea6bca7044868b9b4779a0315a0)
* Sat Nov 10 2012 Marc Deop <marc@marcdeop.com> - 0.41-2
- Removed scriptlets and fixed License name
* Tue May 15 2012 Marc Deop <marc@marcdeop.com> - 0.41-1
- Initial package.