ferallastchange.vim


Ⅰ. 插件描述

FORK of lastchange.vim; Automatic update of timestamp line in file.

Ⅱ. 基本信息

创建日期:  2003-07-05
使用用户:  1
Github星:  1
插件作者:  Robert KellyIV

Ⅲ. 安装方法

使用Vundle管理器安装

在你的.vimrc下添加:
Plugin '/ferallastchange-vim'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall

对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。

使用NeoBundle管理器安装

在你的.vimrc下添加:
NeoBundle '/ferallastchange-vim'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall

使用VimPlug管理器安装

在你的.vimrc下添加:
Plug '/ferallastchange-vim'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall

使用Pathogen管理器安装

在终端中运行以下命令:
cd ~/.vim/bundle
git clone https://github.com/vim-scripts/ferallastchange.vim

Ⅳ. 文档说明

Update the last modification time of the file if an appropriate string is found in the first 20 lines of the file.

This is a fork of lastchange.vim and is based On Srinath Avadhanula's <email in file> work in lastchange.vim (v1.0 dated Sat Mar 30 04:00 PM 2002 PST; VIMSCRIPT #259)

Changes: From lastchange.vim v1.0

This is now an almost proper vim60 plugin.

Time stamp can be defined by setting g:flastchangetimeformat to the desired string for strftime().

Example: (from my .vimrc)
" [Feral:166/03@13:11] How I like ferallastchange.vim setup
let g:flastchangeleader = '\datett'
" Condense Pacific Daylight Time into PDT and tack that onto the end of our
" time stamp format string
let g:flastchangetimeformat = '%a, %d %b %Y %H:%M '.substitute(strftime('%Z'), '<(w)(w*)>(W|$)', '1', 'g')

NOTE how format %Z is special cased and replaced with a shortened string. I.e. Pacific Daylight Time becomes PDT. This is also done in the default time format string.

Slightly more robust checking to see if we should operate; to speed up writing when we have nothing to do or can't do anything, etc.;

Simplified and fixed, (then removed altogether) RemoveLastHistoryItem(); (could muck up search pattern)

Remed out :MOD and :NOMOD commands; I have never used them; Just unrem if wanted...

:sub method remed; Currently uses a setline, hopefully more efficient.

Limitation:
The search to find the timestamp messes with the jumplist; I do not want it to; will fix when I know how!
Updating the timestamp is part of undo, thus you have to undo twice after a :w (Once to undo the timestamp and again to undo whatever it is you wanted to undo.)

NOTE: v1.1 (initial; no longer available) had a FATAL boo boo in my attempt to
get the timestamp updating out of undo. It changes undolevels to -1 (and then
sets it back to what it was), this has the undesired effect of flushing your
undo information for the file when ever you write. NOT at all what I had

  1. If you use v1.1 now, please update to v1.2 ASAP. My sincere apologies
  2. any work lost as the result of this bungle.

添加新评论