aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Ryder <tom@sanctum.geek.nz>2018-02-01 18:03:50 +1300
committerTom Ryder <tom@sanctum.geek.nz>2018-02-01 18:03:50 +1300
commit2b45266b0a96188d21f3ba892ac635a44e552f6e (patch)
tree781765c418991854f0c6961033b1fef9b4adc1b9
parentMerge branch 'hotfix/v0.26.3' (diff)
parentBump version to 0.27.0 (diff)
downloaddotfiles-2b45266b0a96188d21f3ba892ac635a44e552f6e.tar.gz
dotfiles-2b45266b0a96188d21f3ba892ac635a44e552f6e.zip
Merge branch 'release/v0.27.0'v0.27.0
* release/v0.27.0: Bump version to 0.27.0 Replace ftplugin/php.vim with custom version Adjust explanation of PHP indent skip Remove help ftdetect rules
-rw-r--r--Makefile6
-rw-r--r--VERSION4
-rw-r--r--vim/ftdetect/help.vim4
-rw-r--r--vim/ftplugin/php.vim38
-rw-r--r--vim/indent/php.vim12
5 files changed, 55 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index 13a7db7a..70209907 100644
--- a/Makefile
+++ b/Makefile
@@ -47,6 +47,7 @@
install-vim-compiler \
install-vim-config \
install-vim-ftdetect \
+ install-vim-fplugin \
install-vim-gui \
install-vim-gui-config \
install-vim-indent \
@@ -503,6 +504,7 @@ install-vim: install-vim-after \
install-vim-config \
install-vim-doc \
install-vim-ftdetect \
+ install-vim-ftplugin \
install-vim-indent \
install-vim-plugin
@@ -554,6 +556,10 @@ install-vim-ftdetect:
mkdir -p -- $(HOME)/.vim/ftdetect
cp -p -- vim/ftdetect/*.vim $(HOME)/.vim/ftdetect
+install-vim-ftplugin:
+ mkdir -p -- $(HOME)/.vim/ftplugin
+ cp -p -- vim/ftplugin/*.vim $(HOME)/.vim/ftplugin
+
install-vim-indent:
mkdir -p -- $(HOME)/.vim/indent
cp -p -- vim/indent/*.vim $(HOME)/.vim/indent
diff --git a/VERSION b/VERSION
index 241130bb..41c18b26 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-tejr dotfiles v0.26.3
-Thu Jan 25 21:25:28 UTC 2018
+tejr dotfiles v0.27.0
+Thu Feb 1 05:03:14 UTC 2018
diff --git a/vim/ftdetect/help.vim b/vim/ftdetect/help.vim
deleted file mode 100644
index b516ed7e..00000000
--- a/vim/ftdetect/help.vim
+++ /dev/null
@@ -1,4 +0,0 @@
-" Custom Vim help documentation filetype detection
-autocmd BufNewFile,BufRead
- \ **/vim/**/doc/*.txt,**/.vim/**/doc/*.txt
- \ setlocal filetype=help
diff --git a/vim/ftplugin/php.vim b/vim/ftplugin/php.vim
new file mode 100644
index 00000000..b545e18a
--- /dev/null
+++ b/vim/ftplugin/php.vim
@@ -0,0 +1,38 @@
+"
+" Replace Vim's stock PHP filetype plugin, reimplementing only the part I
+" actually need (the matchit.vim keyword pairs).
+"
+" This is mostly because the stock file pulls in HTML's filetype plugins too,
+" without providing a variable check to stop it. That causes absurd problems
+" with defining HTML checkers/linters in the rest of my files.
+"
+if exists('b:did_ftplugin')
+ finish
+endif
+let b:did_ftplugin = 1
+
+" Support line continuation for this file
+if &compatible
+ let s:cpoptions_save = &cpoptions
+ set cpoptions-=C
+endif
+
+" Define keywords for matchit.vim
+if exists('g:loaded_matchit')
+ let b:match_words = '<?php:?>'
+ \ . ',\<do\>:\<while\>'
+ \ . ',\<for\>:\<endfor\>'
+ \ . ',\<foreach\>:\<endforeach\>'
+ \ . ',\<if\>:\<elseif\>:\<else\>:\<endif\>'
+ \ . ',\<switch\>:\<endswitch\>'
+ \ . ',\<while\>:\<endwhile\>'
+endif
+
+" Define how to undo this plugin's settings
+let b:undo_ftplugin = 'unlet b:match_words'
+
+" Restore 'cpoptions' setting if we touched it
+if exists('s:cpoptions_save')
+ let &cpoptions = s:cpoptions_save
+ unlet s:cpoptions_save
+endif
diff --git a/vim/indent/php.vim b/vim/indent/php.vim
index d0fb1f8f..6a61f105 100644
--- a/vim/indent/php.vim
+++ b/vim/indent/php.vim
@@ -1,4 +1,10 @@
-" Lie to the php.vim indent file and tell it that it's already loaded itself,
-" to stop it processing its ridiculous expression-based indenting that never
-" seems to do what I want. Just plain autoindent is fine.
+" Replace Vim's stock PHP indent rules. They're very complicated and don't
+" work in a predictable way.
+if exists('b:did_indent')
+ finish
+endif
let b:did_indent = 1
+
+" Easier just to use 'autoindent'; not perfect, but predictable.
+setlocal autoindent
+let b:undo_indent = 'setlocal autoindent<'