diff options
Diffstat (limited to 'abs')
| -rw-r--r-- | abs/core/vi/PKGBUILD | 99 | ||||
| -rw-r--r-- | abs/core/vi/__changelog | 3 | ||||
| -rw-r--r-- | abs/core/vi/exrc.sample | 5 | ||||
| -rw-r--r-- | abs/core/vi/fetch_patches.sh | 61 | ||||
| -rw-r--r-- | abs/core/vi/fetch_runtime.sh | 117 | ||||
| -rw-r--r-- | abs/core/vi/increase-tube.patch | 13 | ||||
| -rw-r--r-- | abs/core/vi/navkeys.patch | 55 | ||||
| -rw-r--r-- | abs/core/vi/vi.install | 37 | 
8 files changed, 107 insertions, 283 deletions
| diff --git a/abs/core/vi/PKGBUILD b/abs/core/vi/PKGBUILD index b65cb93..83151a8 100644 --- a/abs/core/vi/PKGBUILD +++ b/abs/core/vi/PKGBUILD @@ -1,71 +1,40 @@ -# $Id: PKGBUILD 17437 2008-10-29 18:56:25Z tobias $ +# $Id: PKGBUILD 71573 2010-03-07 19:09:56Z paul $  # Maintainer: tobias [ tobias at archlinux org ]  pkgname=vi -_srcver=7.2 -_patchlevel=148 -pkgver=${_srcver}.${_patchlevel} +pkgver=050325  pkgrel=3 -pkgdesc="a highly configurable, improved version of the vi text editor (basic version)" -arch=(i686 x86_64) -license=('custom:vim') -url="http://www.vim.org" +pkgdesc='The original ex/vi text editor.' +arch=('i686' 'x86_64') +url='http://ex-vi.sourceforge.net/' +license=('custom:ex') +depends=('ncurses')  groups=('base') -depends=('glibc' 'ncurses' 'coreutils') -makedepends=('wget' 'sed' 'grep' 'gettext') -backup=(etc/virc) -install=${pkgname}.install -# we need the extra-stuff to get all patches applied smoothly -source=(ftp://ftp.vim.org/pub/vim/unix/vim-${_srcver}.tar.bz2 \ -        ftp://ftp.vim.org/pub/vim/extra/vim-${_srcver}-extra.tar.gz \ -        ftp://ftp.vim.org/pub/vim/extra/vim-${_srcver}-lang.tar.gz \ -        fetch_patches.sh fetch_runtime.sh) - -build() -{ -  # pull in patches from vim.org (or the src cache alternatively) -  . ${startdir}/src/fetch_patches.sh -  . ${startdir}/src/fetch_runtime.sh -  get_patches || return 1 -  cd ${startdir}/src/vim$(echo ${_srcver} | sed "s/\.//") -  # set the virc different from vimrc -  sed -i 's|^.*\(#define SYS_VIMRC_FILE.*"\) .*$|\1|' src/feature.h -  sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' src/feature.h -  sed -i 's|^.*\(#define USR_VIMRC_FILE\t"\).*$|\1$HOME/.virc"|' src/feature.h -  sed -i 's|/etc/vimrc|/etc/virc|' src/feature.h -  sed -i 's|\.vimrc|.virc|' src/feature.h -  # build party -  ./configure --prefix=/usr --localstatedir=/var/lib/vim --mandir=/usr/share/man \ -    --with-compiledby=ArchLinux --with-features=normal \ -    --with-global-runtime=/usr/share/vim --with-vim-name=vi \ -    --disable-gpm --disable-acl --with-x=no --disable-gui --enable-multibyte -  make || return 1 -  make  VIMRCLOC=/etc DESTDIR=${startdir}/pkg VIMRTDIR= install -  cd ${startdir}/pkg/usr/bin -  rm -f vim rvim view rview vidiff -  ln -s vi evi - -  # delete the manpages for vidiff, we don't bother with that symlink since vidiff doesn't work -  find ${startdir}/pkg/usr/share/man -type d -name 'man1' 2> /dev/null | \ -   while read mandir; do -    cd ${mandir} -    rm -f vidiff.1 -  done - -  _runtimedir="${startdir}/pkg/usr/share/vim/" -  update_runtime -  install -Dm644 ${startdir}/pkg/usr/share/vim/vimrc_example.vim \ -    ${startdir}/pkg/etc/virc -  rm -f ${startdir}/pkg/usr/share/vim/gvimrc_example.vim -  install -dm755 ${startdir}/pkg/usr/share/licenses/vim -  cd ${startdir}/pkg/usr/share/licenses/vim -  ln -s ../../vim/doc/uganda.txt license.txt - -#               Changes to remove mouse support  VERY IMPORTANT! -  ######################################################################################## -   sed -i "s/mouse=a/mouse-=a/g" $startdir/pkg/etc/virc - - -  ############################################################################ - +options=(force strip !libtool emptydirs) +source=(http://downloads.sourceforge.net/sourceforge/ex-vi/ex-${pkgver}.tar.bz2 +        navkeys.patch increase-tube.patch exrc.sample) +md5sums=('e668595254233e4d96811083a3e4e2f3' 'aac133930047eafa4f28736cfaf976b3' +         'e596e05a00a24187b576e389fa1de45d' 'd3b483c994d859232ce369b82a4b5668') + +build() { +  cd ${srcdir}/ex-${pkgver} || return 1 + +  # apply patches +  patch -Np1 -i  ../navkeys.patch || return 1 +  patch -Np0 -i ../increase-tube.patch || return 1 + +  # correct paths in manpages +  sed -i -e 's/^\.B \/usr\/libexec/.B \/usr\/lib\/ex/' vi.1 \ +      || return 1 +  sed -i -e 's/^\.B \/var\/preserve$/.B \/var\/lib\/ex/' vi.1 \ +      || return 1 + +  make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \ +      'FEATURES=-DCHDIR -DFASTTAG -DUCVISUAL -DMB -DBIT8' TERMLIB=ncurses \ +      || return 1 +  make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex INSTALL=/bin/install \ +      "DESTDIR=$pkgdir" install || return 1 + +  install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE \ +      || return 1  } diff --git a/abs/core/vi/__changelog b/abs/core/vi/__changelog deleted file mode 100644 index 47cbb5f..0000000 --- a/abs/core/vi/__changelog +++ /dev/null @@ -1,3 +0,0 @@ -Remove mouse support from  /etc/vimrc.  This new found ability is truely annoying. - - diff --git a/abs/core/vi/exrc.sample b/abs/core/vi/exrc.sample new file mode 100644 index 0000000..44b3045 --- /dev/null +++ b/abs/core/vi/exrc.sample @@ -0,0 +1,5 @@ +" A sample .exrc file. Copy it to your home dir as ~/.exrc in order to work. +set showmode +set noflash +set autoindent +set shiftwidth=2 diff --git a/abs/core/vi/fetch_patches.sh b/abs/core/vi/fetch_patches.sh deleted file mode 100644 index 2ce1019..0000000 --- a/abs/core/vi/fetch_patches.sh +++ /dev/null @@ -1,61 +0,0 @@ -# the external logic for pulling in patches - -get_patches() { -  _patchdir=${startdir}/src/patches -  cd ${startdir}/src/vim$(echo ${_srcver} | sed "s/\.//") -  if [ -d ${_patchdir} ]; then -    rm -rf ${_patchdir} -    echo -e "\tremove patches from old build" -  fi -  mkdir ${_patchdir} && cd ${_patchdir} -  _rpath=ftp://ftp.vim.org/pub/vim/patches/${_srcver} - -  # change IFS to loop line-by-line -  _OLDIFS=$IFS -  IFS=" -" -  echo -e "\tfetching checksumfile for patches" -  wget ${_rpath}/MD5SUMS >/dev/null 2>&1 - -  downloads=-1 -  for _line in $(/bin/cat MD5SUMS); do -    downloads=$((${downloads} + 1)) -    _md5=$(echo $_line | cut -d ' ' -f1) -    _file=$(echo $_line | cut -d ' ' -f3) -    if [ -f ${SRCDEST}/vim-${_srcver}/${_file} ]; then -      echo -e "\thaving patch file:${_file}" -      cp ${SRCDEST}/vim-${_srcver}/${_file} ./ -    else -      echo -n -e "\t... fetching patch file: ${_file} ..." -      wget ${_rpath}/${_file} >/dev/null 2>&1 -      if [ -w ${SRCDEST} ]; then -        if [ ! -d ${SRCDEST}/vim-${_srcver} ]; then -          mkdir -p ${SRCDEST}/vim-${_srcver} -        fi -        cp ${_file} ${SRCDEST}/vim-${_srcver}/ -        echo " done!" -      fi -    fi - -    if [ $(echo "${_md5}  ${_file}" | md5sum --status -c -) ]; then -      echo ${_file} md5sums do not match -      return 1 -    fi -  done -  cd $startdir/src/patches -  rm 7.2.001-100.gz -  ######## - -  if [ ${downloads} != ${_patchlevel} ]; then -    echo -e "Number of patches does not match the patchlevel!\nEdit the PKGBUILD accordingly!" -    return 1 -  fi -  IFS=$_OLDIFS -  rm MD5SUMS -  cd ${startdir}/src/vim$(echo ${_srcver} | sed "s/\.//") -  for _patch in $(/bin/ls ${_patchdir}); do -    patch -Np0 -i ${_patchdir}/${_patch} || return 1 -  done -  rm -rf ${_patchdir} -  return 0 -} diff --git a/abs/core/vi/fetch_runtime.sh b/abs/core/vi/fetch_runtime.sh deleted file mode 100644 index f244ea5..0000000 --- a/abs/core/vi/fetch_runtime.sh +++ /dev/null @@ -1,117 +0,0 @@ -# the purpose of this magic is to pull in the latest runtime files for vim -# we start withe theruntime provoded by the tarballs and compare MD5s against -# the latest runtime -# if this fails we look in the local source cache if they have been fetched -# for an earlier build and compare those MD5 files -# if this fails, we fetch the stuff from online and store it in the local src -# cache. -# The local cache has to be set (makepkg.conf) AND it has to be writable - -update_runtime() { -  _OLDDIR=$(pwd) #get absolute path -  _errors=0 -  _ftp="ftp://ftp.vim.org/pub/vim/runtime" - -  # we're gonna be sneaky and grok the A-A-P recipe for the files we need -  _recipe="getunix.aap" -  _srccache="${SRCDEST}/vim-${_srcver}/" - -  echo "getting runtime recipe" -  cd ${startdir}/src -  [ -f "${_recipe}" ] && rm "${_recipe}" -  wget "${_ftp}/${_recipe}" >/dev/null 2>&1 - -  cd "${_runtimedir}" -  _runtimedir=$(pwd) #get absolute path - -  # change IFS to loop line-by-line -  _OLDIFS=$IFS -  IFS=" -" -  echo "begin fetching updated runtime files..." -  for _file in $(grep "file = " "${startdir}/src/${_recipe}"); do -    _file=$(echo ${_file} | sed "s|.*file = \(.*\)|\1|") -    _md5=$(grep -A2 "file = ${_file} *$" "${startdir}/src/${_recipe}" | \ -          grep "get_md5" | \ -          sed 's|@if get_md5(file) != "\(.*\)":|\1|g') -    _dir=$(dirname "${_file}") - -    mkdir -p "${_dir}" - -    echo -e "\t${_file}" -    _havefile=0 -    # if we have the file and the MD5sum fails, we technically don't have the file -    if [ -f ${_file} ]; then -      # MD5 fails ? ... we don't have the file -      if [ $(echo "${_md5}  ${_file}" | md5sum --status -c -) ]; then -        rm ${_file} -      else -        _havefile=1 -      fi -    fi -    # look files that were not copied from the unzipped sources -    _cachefile=${startdir}/src/vim$(echo ${_srcver} | sed "s/\.//")/runtime/${_file} -    if [ ${_havefile} -ne 1 -a -f ${_cachefile} ]; then -      # MD5 fails ? ... we lookup if we downloaded another version earlier -      if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then -        _cachefile=${_srccache}/${_file} -        if [ -f ${_cachefile} ]; then -          if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then -            rm ${_cachefile} -          else -            cp ${_cachefile} ${_dir} -            _havefile=1 -          fi -        fi -      else -        cp ${_cachefile} ${_dir} -        _havefile=1 -      fi -    fi -    # look up the local $SRCDEST -    _cachefile=${_srccache}/${_file} -    if [ ${_havefile} -ne 1 -a -f ${_cachefile} ]; then -      # MD5 fails ? ... we don't have the file -      if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then -        rm ${_cachefile} -      else -        cp ${_cachefile} ${_dir} -        _havefile=1 -      fi -    fi -    # so we finally have to fetch it and store it to $SRCDEST (cache) -    if [ ${_havefile} -ne 1 ]; then -      echo -n -e "\t ... fetching file ${_file} ..." -      cd "${_dir}" -      wget "${_ftp}/${_file}" >/dev/null 2>&1 -      cd "${_runtimedir}" -      # store freshly downloaded file in SRCDEST -      mkdir -p ${_srccache}/${_dir} -      cp ${_file} ${_srccache}/${_dir} -      echo -e " done!" -    fi - -   # check the MD5 sum finally -    if [ $(echo "${_md5}  ${_file}" | md5sum --status -c -) ]; then -      echo "!!!! md5sum check for ${_file} failed !!!!" -      errors=$((${_errors} + 1)) -    fi -  done -  IFS=${_OLDIFS} - -  echo "vim runtime got updated" - -  if [ ${_errors} -gt 0 ]; then -    echo "${_errors} failed MD5 checks while updating runtime files -> build can't be completed" -    return 1 -  else -    echo -e "\tpatching filetype.vim for better handling of pacman related files ..." -    sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" filetype.vim -    sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" ftplugin/changelog.vim -  fi -  # make Aaron happy -  wget http://www.vim.org/scripts/download_script.php\?src_id=7766 \ -    -O autoload/pythoncomplete.vim -  cd "${_OLDDIR}" -  return 0 -} diff --git a/abs/core/vi/increase-tube.patch b/abs/core/vi/increase-tube.patch new file mode 100644 index 0000000..5010798 --- /dev/null +++ b/abs/core/vi/increase-tube.patch @@ -0,0 +1,13 @@ +--- config.h	2005-02-19 05:25:39.000000000 -0500 ++++ config.h.fixed	2010-01-04 22:02:01.000000000 -0500 +@@ -95,8 +95,8 @@ + #define TUBESIZE        6000    /* Maximum screen size for visual */ + #else	/* VMUNIX */ + #define TUBELINES       100 +-#define TUBECOLS        160 +-#define TUBESIZE        16000 ++#define TUBECOLS        320 ++#define TUBESIZE        32000 + #endif	/* VMUNIX */ +  + /* diff --git a/abs/core/vi/navkeys.patch b/abs/core/vi/navkeys.patch new file mode 100644 index 0000000..4692437 --- /dev/null +++ b/abs/core/vi/navkeys.patch @@ -0,0 +1,55 @@ +diff -ru ex-050325/ex_tty.c ex-050325-du/ex_tty.c +--- ex-050325/ex_tty.c	2005-03-04 13:42:58.000000000 +0100 ++++ ex-050325-du/ex_tty.c	2009-06-25 20:06:57.000000000 +0200 +@@ -132,7 +132,8 @@ + 	&ED, &EI, &F0, &F1, &F2, &F3, &F4, &F5, &F6, &F7, &F8, &F9, + 	&HO, &IC, &IM, &IP, &KD, &KE, &KH, &KL, &KR, &KS, &KU, &LL, &ND, &xNL, + 	&xPC, &RC, &SC, &SE, &SF, &SO, &SR, &TA, &TE, &TI, &UP, &VB, &VS, &VE, +-	&AL_PARM, &DL_PARM, &UP_PARM, &DOWN_PARM, &LEFT_PARM, &RIGHT_PARM ++	&AL_PARM, &DL_PARM, &UP_PARM, &DOWN_PARM, &LEFT_PARM, &RIGHT_PARM, ++ 	&kI, &kD, &kh, &at7, &kP, &kN + }; + bool *sflags[] = { + 	&AM, &BS, &DA, &DB, &EO, &HC, +@@ -170,7 +171,12 @@ + 	addmac1(KD, "j", "down", arrows, 1); + 	addmac1(KL, "h", "left", arrows, 1); + 	addmac1(KR, "l", "right", arrows, 1); +-	addmac1(KH, "H", "home", arrows, 1); ++	addmac1(kI, "i", "insert", arrows, 1); ++	addmac1(kD, "x", "delete", arrows, 1); ++	addmac1(kh, "^", "home", arrows, 1); ++	addmac1(at7, "$", "end", arrows, 1); ++	addmac1(kP, "", "pgup", arrows, 1); ++	addmac1(kN, "", "pgdn", arrows, 1); +  + 	/* + 	 * Handle funny termcap capabilities +@@ -341,7 +347,7 @@ + 		*(*fp++) = flag; + 		namp += 2; + 	} while (*namp); +-	namp = "albcbtcdceclcmcrcsdcdldmdoedeik0k1k2k3k4k5k6k7k8k9hoicimipkdkekhklkrkskullndnlpcrcscsesfsosrtatetiupvbvsveALDLUPDOLERI"; ++	namp = "albcbtcdceclcmcrcsdcdldmdoedeik0k1k2k3k4k5k6k7k8k9hoicimipkdkekhklkrkskullndnlpcrcscsesfsosrtatetiupvbvsveALDLUPDOLERIkIkDkh@7kPkN"; + 	sp = sstrs; + 	do { + 		string = tgetstr(namp, &aoftspace); +diff -ru ex-050325/ex_tty.h ex-050325-du/ex_tty.h +--- ex-050325/ex_tty.h	2004-12-01 19:21:06.000000000 +0100 ++++ ex-050325-du/ex_tty.h	2009-06-25 20:06:05.000000000 +0200 +@@ -183,6 +183,15 @@ + var	bool	XX;		/* Tektronix 4025 insert line */ + 	/* X? is reserved for severely nauseous glitches */ + 	/* If there are enough of these we may need bit masks! */ ++/* ++ * Insert, Delete, Home, End, PgUp an PgDown keys ++ */ ++var	char	*kI; ++var	char	*kD; ++var	char	*kh; ++var	char	*at7; ++var	char	*kP; ++var	char	*kN; +  + /* +  * From the tty modes... diff --git a/abs/core/vi/vi.install b/abs/core/vi/vi.install deleted file mode 100644 index ebb73c0..0000000 --- a/abs/core/vi/vi.install +++ /dev/null @@ -1,37 +0,0 @@ -post_install() { -  # if we have vim installed create view/rview symlinks to vim -  if [ ! -f usr/bin/vim ] ; then -    cd usr/bin -    ln -s vi view -    ln -s vi rview -    cd ${OLDPWD} -    echo "Create vi related symlinks..." -  fi -  echo -n "Updating vi help tags..." -  usr/bin/vi --noplugins -u NONE -U NONE \ -    --cmd ":helptags usr/share/vim/doc" --cmd ":q" > /dev/null 2>&1 -  echo "done." -} - -pre_remove() { -  # if vi is a binary instead of a symlink we have an intact gvim installation -  # with a different binary/symlink structure -  # we recover what pacmans database knows about Vim -  if [ ! -f usr/bin/vim ] ; then -    rm -f usr/bin/view usr/bin/rview -    echo "Remove vi related symlinks ..." -  fi -} - -post_upgrade() { -  post_install $1 -} - -pre_upgrade() { -  pre_remove $2 -} - - -op=$1 -shift -[ "$(type -t "$op")" = "function" ] && $op "$@" | 
