If you try to checkout the already current branch in git, git creates
HEAD.lock and renames it to HEAD. This causes the inode of HEAD to
change and so the inotify file watcher stops tracking HEAD.
The fix is to re-create the inotify watch when the file attributes
change. This is a bit of a performance penalty as most of the time the
attribute changes are simple last modified time/size changes, but since
inotify provides no way to know specifically when the inode has changed,
this is the best we can do.
Use a .gitattributes file to tell git to not highlight trailing
whitespace as an error in .rst files when showing diffs. A trailing
space is used on many lines in those files to indicate that the
paragraph continues onto the next line.
If the g:powerline_no_python_error variable is set don't issue an error
message even if vim doesn't have the required Python support. This
allows a common set of configuration files to be used across systems
where some of the copies of vim don't meet the requirements.
This hacks around the way CtrlP handles statuslines. Powerline will
always override the statusline, but CtrlP doesn't make its details
available as buffer variables so separate functions assign the details
to buffer variables each statusline redraw.
Currently this statusline only uses a couple of highlight groups,
colorschemes should add the HL groups to make this prettier.
Move code to parse a .git file from the do_status method to a new method
shared with get_branch_name so that branch name can be retreived from
repositories which use a .git file.
Closes#634.
Segments should only be included if rules for both inclusion and
exclusion are satisfied, satisfying one or the other is not sufficient.
If the include_modes list for a segment is missing or empty consider all
modes to be included so that users do not need to supply an exhaustive
list, since there isn't much point in actually wanting an empty include
list. Actually check for mode name in the list rather than mistakenly
checking for the segment object.