[cygwin][git] No need to ignore swp for git. All swp files will be moved
to ~/tmp/vim/swp.
Merge remote-tracking branch 'origin/u104' into cygwin
[cygwin][git][vim] Mainly, use vimdiff as default git diff.

1. In .gitconfig, use vimdiff to show every modified files' changes.

2. Auto save-load session (vim) will have problems since vimdiff will
run multiple times in a git diff. Disable auto save-load session and use
key mapping for session save and load.

For vim:
<F2> save session
<F3> load session
[cygwin][git] Hide error msg while there is no git in current (and
parent) folder.
[cygwin][env] Remove space chars to prevent from patch error messages.
[cygwin][git] Use git difftool to keep git diff behavior.

Since there is git difftool to launch vimdiff for visual diff, no
necessary to keey below configurations:

1. function qgitdiff()
2. bin/git_diff_wrapper
3. .gitconfig:[diff], [pager]

Just use:
$ git difftool
Then there will be a better interface than git_diff_wrapper.
[cygwin][vim] Re-design session-auto feature. Using vi-proj to trigger.

New "vi-proj" alias, which enables session-auto feature.
Modified "revi" function, which uses vi-proj to create new project with
previously opened files.

Use cases:
\#1. Create new project
     $ vi-proj
     -> then open files in vim
     -> quit, then session will be auto-saved
     $ vi-proj
     -> the last session will be auto-loaded
\#2. Create new project with opening files
     $ vi-proj file1 file2
\#3. Open last auto-saved session
     $ vi-proj
\#4. Reload .vimrc and auto-open files in saved session.
     $ revi
[cygwin][vim] New bash command lviproj to view all files in current session.

Also, try to fix session auto-save error message in .vimrc.
[cygwin][bash] Sync freebsd91p7, .bash_postrc design.
[cygwin][idfile] Remove bbs function file since it is not used anymore.
Merge branch 'master' into cygwin
[cygwin][idfile] Remove unused guess5.py.
[cygwin][env] Ignore local backup folder.
[cygwin][idfile] Add patch function to improve cygwin bash startup time.

The cygwin bash startup time is too long.
This is due to /etc/bash_completion run multiple times and each time
takes long time (more than 7s) to run.

The idfile/dev/patch function support the .bash_postrc to patch
/etc/bash_completion by using ~/local/patch/bash_completion.patch.08f09020-3f00-11e3-aa6e-0800200c9a66.

This patch (08f09020-3f00-11e3-aa6e-0800200c9a66) avoids
/etc/bash_completion to run multiple times, and for the most
time-wasting procedures, showing "." on screen to remind the startup
process is under going. This makes feeling better.
Merge branch 'master' into cygwin

Conflicts:
	.gitignore
[cygwin][idfile] Removing idfile/dev/* spaces.
[cygwin-local] Branch from master to save cygwin local files.

Like .bash_postrc or local/patch/*, which targeted to fix problems on
cygwin machine.
Merge branch 'master' into cygwin-local
Merge branch 'common' into cygwin

Conflicts:
	.bash_functions/dev/patch
	.gitignore
Merge branch 'cygwin-local' into cygwin

Conflicts:
	.bash_postrc