%define gitauthor scrooloose %define githash 54896be %define vimfiles %{_datadir}/vim/vimfiles Name: syntastic Version: 2.2.0 Release: %mkrel 4 Summary: A syntax checker for programming language Group: Text tools License: WTFPL URL: https://github.com/scrooloose/syntastic # git download https://nodeload.github.com/scrooloose/syntastic/tarball/2.2.0 Source0: %{gitauthor}-%{name}-%{version}-0-g%{githash}.tar.gz BuildArch: noarch Requires: vim %description Syntastic is a syntax checking plugin that runs files through external syntax checkers and displays any resulting errors to the user. This can be done on demand, or automatically as files are saved. If syntax errors are detected, the user is notified and is happy because they didn't have to compile their code or execute their script to find them. At the time of this writing, syntax checking plugins exist for applescript, c, coffee, cpp, css, cucumber, cuda, docbk, erlang, eruby, fortran, gentoo_metadata, go, haml, haskell, html, javascript, json, less, lua, matlab, perl, php, puppet, python, rst, ruby, sass/scss, sh, tcl, tex, vala, xhtml, xml, xslt, yaml, zpt %package c Summary: A syntax checker for C programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: gcc %description c Able to check C sources files. %package cpp Summary: A syntax checker for C programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: gcc-c++ %description cpp Able to check C++ sources files. %package css Summary: A syntax checker for CSS files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: csslint %description css Able to check CSS sources files. %package cucumber Summary: A syntax checker for cucumber files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ruby-cucumber %description cucumber Able to check cucumber sources files. %package docbk Summary: A syntax checker for docbk files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: libxml2-utils %description docbk Able to check docbk sources files. %package d Summary: A syntax checker for D programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ldc %description d Able to check D sources files. %package erlang Summary: A syntax checker for Erlang programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: erlang-base %description erlang Able to check Erlang sources files. %package eruby Summary: A syntax checker for eRuby files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ruby %description eruby Able to check eruby sources files. %package fortran Summary: A syntax checker for Fortran programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: gcc-gfortran %description fortran Able to check fortran sources files. %package gentoo-metadata Summary: A syntax checker for Gentoo-metadata files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: libxml2-utils %description gentoo-metadata Able to check Gentoo-metadata sources files. %package haml Summary: A syntax checker for haml files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ruby-haml %description haml Able to check haml sources files. %package html Summary: A syntax checker for HTML files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: sed Requires: curl Requires: tidy %description html Able to check HTML sources files. %package java Summary: A syntax checker for Java programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: javac %description java Able to check Java sources files. %package javascript Summary: A syntax checker for Javascript programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: jsl %description javascript Able to check Javascript sources files. %package json Summary: A syntax checker for json files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: jsonlint %description json Able to check json sources files. %package lua Summary: A syntax checker for lua programmig language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: lua %description lua Able to check lua sources files. %package nasm Summary: A syntax checker for NASM files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: nasm %description nasm Able to check nasm sources files. %package ocaml Summary: A syntax checker for OCaml programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ocaml %description ocaml Able to check OCaml sources files. %package perl Summary: A syntax checker for Perl programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: perl %description perl Able to check Perl sources files. %package php Summary: A syntax checker for PHP programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: php %description php Able to check php sources files. %package puppet Summary: A syntax checker for Puppet files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: puppet %description puppet Able to check Puppet sources files. %package python Summary: A syntax checker for Python programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: python Requires: pyflakes Requires: pylint %description python Able to check Python sources files. %package rst Summary: A syntax checker for rst files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: python-docutils %description rst Able to check rst sources files. %package ruby Summary: A syntax checker for Ruby progrmming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ruby %description ruby Able to check Ruby sources files. %package sass Summary: A syntax checker for Sass files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: ruby-haml %description sass Able to check Sass sources files. %package scala Summary: A syntax checker for Scala programing language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: scala %description scala Able to check Scala sources files. %package sh Summary: A syntax checker for shell programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: bash %description sh Able to check shell sources files. %package tcl Summary: A syntax checker for Tcl programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: tcl %description tcl Able to check Tcl sources files. %package tex Summary: A syntax checker for Tex files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: texlive-texmf %description tex Able to check Tex sources files. %package vala Summary: A syntax checker for Vala programming language Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: vala %description vala Able to check Vala sources files. %package xhtml Summary: A syntax checker for XHTML files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: tidy %description xhtml Able to check XHTML sources files. %package xml Summary: A syntax checker for XML files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: libxml2-utils %description xml Able to check XML sources files. %package xslt Summary: A syntax checker for XSLT files Requires: %{name} = %{version}-%{release} BuildArch: noarch Requires: libxml2-utils %description xslt Able to check XSLT sources files. %prep %setup -q -n %{gitauthor}-%{name}-%{githash} # Use executable script from bindir sed -i "s|expand\(.*sfile.*\).*|'%{_bindir}/erlang_check_file.erl'|" syntax_checkers/erlang.vim # Use executable script from bindir sed -i "s|expand\(.*sfile.*\).*|'%{_bindir}/efm_perl.pl'|" syntax_checkers/perl.vim # fix executable name sed -i "s|rst2pseudoxml.py|rst2pseudoxml|g" syntax_checkers/rst.vim %build %install rm -fr %{buildroot} mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{vimfiles}/autoload mkdir -p %{buildroot}%{vimfiles}/syntax_checkers mkdir -p %{buildroot}%{vimfiles}/doc/ mkdir -p %{buildroot}%{vimfiles}/plugin cp -R autoload/* %{buildroot}%{vimfiles}/autoload cp -R syntax_checkers/javascript %{buildroot}%{vimfiles}/syntax_checkers cp -R syntax_checkers/json %{buildroot}%{vimfiles}/syntax_checkers install -m0644 doc/syntastic.txt %{buildroot}%{vimfiles}/doc/syntastic.txt install -m0644 plugin/syntastic.vim %{buildroot}%{vimfiles}/plugin/syntastic.vim install -m0644 syntax_checkers/*.vim %{buildroot}%{vimfiles}/syntax_checkers install -m0755 syntax_checkers/erlang_check_file.erl %{buildroot}%{_bindir}/erlang_check_file.erl %post umask 022 cd %{vimfiles}/doc vim -u NONE -esX -c "helptags ." -c quit exit 0 %postun if [ $1 -eq 0 ]; then umask 022 cd %{vimfiles}/doc >tags vim -u NONE -esX -c "helptags ." -c quit fi exit 0 %files %doc README.markdown %{vimfiles}/autoload/* %{vimfiles}/plugin/syntastic.vim %{vimfiles}/doc/syntastic.txt %{vimfiles}/syntax_checkers %files c %{vimfiles}/syntax_checkers/c.vim %files cpp %{vimfiles}/syntax_checkers/cpp.vim %files css %{vimfiles}/syntax_checkers/css.vim %files cucumber %{vimfiles}/syntax_checkers/cucumber.vim %files docbk %{vimfiles}/syntax_checkers/docbk.vim %files erlang %{_bindir}/erlang_check_file.erl %{vimfiles}/syntax_checkers/erlang.vim %files eruby %{vimfiles}/syntax_checkers/eruby.vim %files fortran %{vimfiles}/syntax_checkers/fortran.vim %files gentoo-metadata %{vimfiles}/syntax_checkers/gentoo_metadata.vim %files haml %{vimfiles}/syntax_checkers/haml.vim %files html %{vimfiles}/syntax_checkers/html.vim %files javascript %{vimfiles}/syntax_checkers/javascript.vim %{vimfiles}/syntax_checkers/javascript %files json %{vimfiles}/syntax_checkers/json.vim %{vimfiles}/syntax_checkers/json %files lua %{vimfiles}/syntax_checkers/lua.vim %files perl %{vimfiles}/syntax_checkers/perl.vim %files php %{vimfiles}/syntax_checkers/php.vim %files puppet %{vimfiles}/syntax_checkers/puppet.vim %files python %{vimfiles}/syntax_checkers/python.vim %files rst %{vimfiles}/syntax_checkers/rst.vim %files ruby %{vimfiles}/syntax_checkers/ruby.vim %files sass %{vimfiles}/syntax_checkers/sass.vim %{vimfiles}/syntax_checkers/scss.vim %files sh %{vimfiles}/syntax_checkers/sh.vim %files tcl %{vimfiles}/syntax_checkers/tcl.vim %files tex %{vimfiles}/syntax_checkers/tex.vim %files vala %{vimfiles}/syntax_checkers/vala.vim %files xhtml %{vimfiles}/syntax_checkers/xhtml.vim %files xml %{vimfiles}/syntax_checkers/xml.vim %files xslt %{vimfiles}/syntax_checkers/xslt.vim