Более умное восстановление Vim?

У меня была такая же проблема в производстве. Следующие шаги помогли мне решить проблему. Вы должны добавить в свой корневой модуль следующий:

imports: [RouterModule.forRoot(routes, {useHash: true})]

, и он перейдет в HashLocationStrategy. Угловая документация

Надеюсь, что это поможет кому-то !!

47
задан Bruno De Fraine 5 February 2009 в 15:46
поделиться

3 ответа

У меня есть хранилище энергии мои файлы подкачки в единственном локальном каталоге при наличии этого в моем .vimrc:

set directory=~/.vim/swap,.

Среди других преимуществ, это делает файлы подкачки легкими найти внезапно. Теперь, когда мой ноутбук теряет питание или безотносительно и я отшатываюсь с набором наложения файлов подкачки вокруг, я просто выполняю мой cleanswap сценарий:

TMPDIR=$(mktemp -d) || exit 1
RECTXT="$TMPDIR/vim.recovery.$USER.txt"
RECFN="$TMPDIR/vim.recovery.$USER.fn"
trap 'rm -f "$RECTXT" "$RECFN"; rmdir "$TMPDIR"' 0 1 2 3 15
for q in ~/.vim/swap/.*sw? ~/.vim/swap/*; do
  [[ -f $q ]] || continue
  rm -f "$RECTXT" "$RECFN"
  vim -X -r "$q" \
      -c "w! $RECTXT" \
      -c "let fn=expand('%')" \
      -c "new $RECFN" \
      -c "exec setline( 1, fn )" \
      -c w\! \
      -c "qa"
  if [[ ! -f $RECFN ]]; then
    echo "nothing to recover from $q"
    rm -f "$q"
    continue
  fi
  CRNT="$(cat $RECFN)"
  if diff --strip-trailing-cr --brief "$CRNT" "$RECTXT"; then
      echo "removing redundant $q"
      echo "  for $CRNT"
      rm -f "$q"
  else
      echo $q contains changes
      vim -n -d "$CRNT" "$RECTXT"
      rm -i "$q" || exit
  fi
done

Это удалит любые файлы подкачки, которые актуальны с реальными файлами. Любой, которые не соответствуют, воспитывается в vimdiff окне, таким образом, я могу объединиться в своих несохраненных изменениях.

- Chouser

37
ответ дан Andy Lester 7 November 2019 в 23:24
поделиться

Я просто обнаружил это:

http://vimdoc.sourceforge.net/htmldoc/diff.html#:DiffOrig

я скопировал и вставил команду DiffOrig в свой .vimrc файл, и это работает как очарование. Это значительно упрощает восстановление файлов подкачки. Я понятия не имею, почему это не включено по умолчанию в VIM.

Вот команда для тех, кто спешит:

 command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis
    \ | wincmd p | diffthis
20
ответ дан Jack Senechal 7 November 2019 в 23:24
поделиться

Отличный совет DiffOrig идеален. Вот скрипт bash, который я использую для запуска его в каждом файле подкачки в текущем каталоге:

#!/bin/bash

swap_files=`find . -name "*.swp"`

for s in $swap_files ; do
        orig_file=`echo $s | perl -pe 's!/\.([^/]*).swp$!/$1!' `
        echo "Editing $orig_file"
        sleep 1
        vim -r $orig_file -c "DiffOrig"
        echo -n "  Ok to delete swap file? [y/n] "
        read resp
        if [ "$resp" == "y" ] ; then
                echo "  Deleting $s"
                rm $s
        fi
done

Вероятно, можно использовать еще несколько проверок ошибок и цитирования, но до сих пор работал.

4
ответ дан 26 November 2019 в 19:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: