diff --git a/after/indent/php.vim b/after/indent/php.vim deleted file mode 100644 index 2d98542..0000000 --- a/after/indent/php.vim +++ /dev/null @@ -1,4 +0,0 @@ -" https://github.com/nvim-treesitter/nvim-treesitter/issues/462#issuecomment-700278736 -setlocal indentexpr = -setlocal autoindent -setlocal smartindent diff --git a/after/syntax/gitcommit.vim b/after/syntax/gitcommit.vim new file mode 100644 index 0000000..11db794 --- /dev/null +++ b/after/syntax/gitcommit.vim @@ -0,0 +1,3 @@ +syn match gitCommitNumber "\<\d\+\>" containedin=gitCommitComment +syn keyword gitCommitAhead ahead containedin=gitCommitOnBranch +syn keyword gitCommitBehind behind containedin=gitCommitOnBranch diff --git a/after/syntax/html.vim b/after/syntax/html.vim new file mode 100644 index 0000000..eb0b8bf --- /dev/null +++ b/after/syntax/html.vim @@ -0,0 +1,79 @@ +syn clear htmlArg +syn clear htmlCssDefinition + +" css classes +syn region cssClassRegion contained start=+class="+hs=s+7 end=+"+he=e-1 contains=htmlSpecialChar,cssClassAttr,cssAttrNoise,cssClassName containedin=htmlTag,htmlTagN keepend +syn region cssClassRegion contained start=+class='+hs=s+7 end=+'+he=e-1 contains=htmlSpecialChar,cssClassAttr,cssAttrNoise,cssClassName containedin=htmlTag,htmlTagN keepend +syn region cssClassName contained start=+"+hs=s+1 end=+"+he=e-1 contains=cssAttrNoise keepend +syn region cssClassName contained start=+'+hs=s+1 end=+'+he=e-1 contains=cssAttrNoise keepend +syn match cssClassAttr "class" contained + +" css IDs +syn region cssIdRegion contained start=+id="+hs=s+4 end=+"+he=e-1 contains=htmlSpecialChar,cssIdentifierAttr,cssAttrNoise,cssIdentifier containedin=htmlTag,htmlTagN keepend +syn region cssIdRegion contained start=+id='+hs=s+4 end=+'+he=e-1 contains=htmlSpecialChar,cssIdentifierAttr,cssAttrNoise,cssIdentifier containedin=htmlTag,htmlTagN keepend +syn region cssIdentifier contained start=+"+hs=s+1 end=+"+he=s-1 contains=cssAttrNoise keepend +syn region cssIdentifier contained start=+'+hs=s+1 end=+'+he=s-1 contains=cssAttrNoise keepend +syn match cssIdentifierAttr "id" contained + +" img arguments +syn region htmlArgRegion contained start=+src="+hs=s+5 end=+"+he=e-1 contains=htmlSpecialChar,cssAttrNoise,htmlSrcArg,htmlSrcValue containedin=htmlTag,htmlTagN keepend +syn region htmlArgRegion contained start=+src='+hs=s+5 end=+'+he=e-1 contains=htmlSpecialChar,cssAttrNoise,htmlSrcArg,htmlSrcValue containedin=htmlTag,htmlTagN keepend +syn region htmlSrcValue contained start=+"+hs=s+1 end=+"+he=s-1 contains=cssAttrNoise keepend +syn region htmlSrcValue contained start=+'+hs=s+1 end=+'+he=s-1 contains=cssAttrNoise keepend +syn match htmlSrcArg "src" contained + +syn region htmlArgRegion contained start=+srcset="+hs=s+8 end=+"+he=e-1 contains=htmlSpecialChar,htmlSrcsetArg,htmlSrcsetValue,cssAttrNoise containedin=htmlTag,htmlTagN keepend +syn region htmlArgRegion contained start=+srcset='+hs=s+8 end=+'+he=e-1 contains=htmlSpecialChar,htmlSrcsetArg,htmlSrcsetValue,cssAttrNoise containedin=htmlTag,htmlTagN keepend +syn region htmlSrcsetValue contained start=+"+hs=s+1 end=+"+he=s-1 contains=cssAttrNoise keepend +syn region htmlSrcsetValue contained start=+'+hs=s+1 end=+'+he=s-1 contains=cssAttrNoise keepend +syn match htmlSrcsetArg "srcset" contained + +syn region htmlArgRegion contained start=+\\)" containedin=htmlTag,vueTag,htmlTagN +syn region vueLink start="[^>]*" end=""me=e-14 contains=@Spell,vueTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLeadingSpace,javaScript,@htmlPreproc,vueComponentName +syn region vueTag start=+<[^/]+ end=+>+ fold contained contains=htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster,vueDynamicComponent +syn match vueComponentName contained "router-link" containedin=vueTag,htmlEndTag +hi! def link vueLink htmlLink + +syn match vueDynamicComponent contained "\\|\\|\" containedin=htmlTag,vueTag,htmlTagN +syn match vueTransitionComponent contained "\" containedin=htmlTag,vueTag,htmlTagN nextgroup=vueTransitionName,vueTransitionMode +syn region vueTransitionName contained start=+\sname="+hs=s+7 end=+"+he=e-1 containedin=htmlTag,vueTag,htmlTagN +syn region vueTransitionMode contained start=+\smode="+hs=s+7 end=+"+he=e-1 containedin=htmlTag,vueTag,htmlTagN + +syn keyword vueTagSpecial contained template script style containedin=htmlTagN +syn keyword htmlArg contained scoped ts + +" syn region cssClassRegion contained start=+classes="+hs=s+9 end=+"+he=e-1 contains=htmlSpecialChar,cssClassAttr,cssAttrNoise,cssClassName containedin=htmlTag,htmlTagN keepend +" syn region cssClassRegion contained start=+classes='+hs=s+9 end=+'+he=e-1 contains=htmlSpecialChar,cssClassAttr,cssAttrNoise,cssClassName containedin=htmlTag,htmlTagN keepend + +syn match cssClassesAttr contained "\<[-a-zA-z0-9]*class[-a-zA-z0-9]*=" contains=htmlSpecialChar,cssClassAttr,cssAttrNoise,cssClassName containedin=htmlTag,vueTag,htmlTagN keepend nextgroup=vueClassesName + +syn region vueClassesName contained start=+"+hs=s+1 end=+"+he=e-1 + +hi def link cssClassesAttr cssClassAttr +hi def link vueClassesname cssClassName +hi def link vueObjectKey cssClassName +hi def link vueDirectiveClass Noise +hi def link vueDirectiveClassName vueClassesName +hi def link vueMustache Identifier diff --git a/coc-settings.json b/coc-settings.json new file mode 100644 index 0000000..b60e06b --- /dev/null +++ b/coc-settings.json @@ -0,0 +1,40 @@ +{ + "suggest.triggerAfterInsertEnter": false, + "suggest.autoTrigger": "always", + "suggest.noselect": true, + "suggest.snippetIndicator": "►", + "suggest.timeout": 1000, + "suggest.echodocSupport": true, + "signature.enable": true, + "diagnostic.enable": true, + "diagnostic.warningSign": "λ", + "diagnostic.errorSign": "Λ", + "diagnostic.infoSign": "λ", + "diagnostic.hintSign": "λ", + "coc.source.buffer.ignoreGitignore": true, + "javascript.validate.enable": false, + "vetur.format.defaultFormatter.js": "prettier-eslint", + "vetur.format.defaultFormatter.html": "prettier", + "vetur.format.defaultFormatter.scss": "prettier", + "scss.validate": true, + "python.linting.flake8Enabled": true, + "python.linting.flake8Path": "/home/ray/.local/bin/flake8", + "python.linting.lintOnSave": true, + "python.formatting.provider": "black", + "python.formatting.blackPath": "/home/ray/.local/bin/black", + "coc.preferences.formatOnSaveFiletypes": ["python", "vue"], + "sh.enable": true, + "sh.highlightParsingErrors": true, + + "css.validate": true, + "stylelint.enable": true, + "stylelint.autoFixOnSave": true, + "prettier.requireConfig": true, + + "eslint.enable": true, + "eslint.autoFixOnSave": true, + "eslint.filetypes": [ + "javascript", + "vue" + ] +} diff --git a/init.plugins.vim b/init.plugins.vim index cd854f4..91b708b 100644 --- a/init.plugins.vim +++ b/init.plugins.vim @@ -6,7 +6,7 @@ endif call plug#begin('~/.config/nvim/bundle') " colorscheme (temporary) -Plug 'https://github.com/marko-cerovac/material.nvim', { 'branch': 'main' } +Plug 'https://github.com/marko-cerovac/material.nvim' let g:material_style = 'lighter' " colorscheme in develpment paper-tonic @@ -54,10 +54,10 @@ Plug '~/nvim-paper-tonic' " #nvim-cmp {{{ " https://github.com/hrsh7th/nvim-cmp/ " completion - Plug 'hrsh7th/nvim-cmp', { 'branch': 'main' } - Plug 'hrsh7th/cmp-nvim-lsp', { 'branch': 'main' } - Plug 'hrsh7th/cmp-buffer', { 'branch': 'main' } - Plug 'hrsh7th/cmp-path', { 'branch': 'main' } + Plug 'hrsh7th/nvim-cmp' + Plug 'hrsh7th/cmp-nvim-lsp' + Plug 'hrsh7th/cmp-buffer' + Plug 'hrsh7th/cmp-path' " Plug 'hrsh7th/cmp-nvim-ultisnips' "}}} @@ -284,6 +284,15 @@ let g:vim_markdown_fenced_languages = ['bash=sh'] " https://github.com/tpope/vim-dispatch Plug 'tpope/vim-dispatch' + "}}} +" #phpcomplete.vim{{{ +" improved php completion + " https://github.com/shawncplus/phpcomplete.vim + Plug 'shawncplus/phpcomplete.vim' + " https://github.com/dsawardekar/wordpress.vim + " For up to date Wordpress Files see: + " https://github.com/joseluis/wordpress.vim-generator + "}}} " #vim-floaterm{{{ " https://github.com/voldikss/floaterm diff --git a/init.vim b/init.vim index 38450e0..54b90d6 100644 --- a/init.vim +++ b/init.vim @@ -269,10 +269,7 @@ set softtabstop=-1 set shiftwidth=0 set shiftround set noexpandtab - set autoindent -set breakindent -set showbreak=\ \ ↳\ set formatoptions=cq set wrapmargin=0 @@ -301,6 +298,10 @@ set foldlevelstart=99 set showmode +set autoindent +set breakindent +set showbreak=\ \ ↳\ + set mouse=a set listchars=eol:¬,tab:│\ ,trail:~,extends:>,precedes:<,space:· diff --git a/syntax/cst.vim b/syntax/cst.vim new file mode 100644 index 0000000..eb1efbe --- /dev/null +++ b/syntax/cst.vim @@ -0,0 +1,179 @@ +" Vim syntax file +" Language: cst +" Maintainer: Thomas R. Kimpton +" URL: http://www.gooberdude.com/~tkimpton/vim/syntax/cst.vim +" Last Change: 5/14/2003 +" Remark: Used to test color schemes: edit your color scheme file, and +" to see what each color assignment does, set the color scheme to your color +" scheme then type the command ':setf cst'. As you continue to make changes +" save your changes, and switch to another color scheme and back to your own +" to see changes. + +" Quit when a syntax file was already loaded +if !exists("main_syntax") + if version < 600 + syntax clear + elseif exists("b:current_syntax") + finish + endif + " we define it here so that included files can test for it + let main_syntax='cst' +endif + +" don't use standard HiLink, it will not work with included syntax files +if version < 508 + command! -nargs=+ CSTHiLink hi link +else + command! -nargs=+ CSTHiLink hi def link +endif + +syntax case ignore + +" match definitions +syn match CSTSpecialKey /\/ +syn match CSTNonText /\/ +syn match CSTDirectory /\/ +syn match CSTErrorMsg /\/ +syn match CSTIncSearch /\/ +syn match CSTSearch /\/ +syn match CSTMoreMsg /\/ +syn match CSTModeMsg /\/ +syn match CSTLineNr /\/ +syn match CSTQuestion /\/ +syn match CSTStatusLineNC /\/ +syn match CSTStatusLine /\/ +syn match CSTVertSplit /\/ +syn match CSTTitle /\/ +syn match CSTVisualNOS /\/ +syn match CSTVisual /\/ +syn match CSTWarningMsg /\/ +syn match CSTWildMenu /\/ +syn match CSTFolded /\/ +syn match CSTFoldColumn /\/ +syn match CSTSignColumn /\/ +syn match CSTDiffAdd /\/ +syn match CSTDiffChange /\/ +syn match CSTDiffDelete /\/ +syn match CSTDiffText /\/ +syn match CSTCursor /\/ +syn match CSTComment /\/ +syn match CSTConstant /\/ +syn match CSTString /\/ +syn match CSTCharacter /\/ +syn match CSTNumber /\/ +syn match CSTBoolean /\/ +syn match CSTFloat /\/ +syn match CSTIdentifier /\/ +syn match CSTFunction /\/ +syn match CSTStatement /\/ +syn match CSTConditional /\/ +syn match CSTRepeat /\/ +syn match CSTLabel /\/ +syn match CSTOperator /\/ +syn match CSTKeyword /\/ +syn match CSTException /\/ +syn match CSTPreProc /\/ +syn match CSTInclude /\/ +syn match CSTDefine /\/ +syn match CSTMacro /\/ +syn match CSTPreCondit /\/ +syn match CSTType /\/ +syn match CSTStorageClass /\/ +syn match CSTStructure /\/ +syn match CSTTypeDef /\/ +syn match CSTSpecial /\/ +syn match CSTSpecialChar /\/ +syn match CSTTag /\/ +syn match CSTDelimiter /\/ +syn match CSTSpecialComment /\/ +syn match CSTDebug /\/ +syn match CSTUnderlined /\/ +syn match CSTIgnore /\/ +syn match CSTError /\/ +syn match CSTSpellBad /\/ +syn match CSTSpellCap /\/ +syn match CSTSpellLocal /\/ +syn match CSTSpellRare /\/ +syn match CSTTodo /\/ + +" The default highlighting. +if version >= 508 || !exists("did_CST_syn_inits") + if version < 508 + let did_CST_syn_inits = 1 + endif + CSTHiLink CSTSpecialKey SpecialKey + CSTHiLink CSTNonText NonText + CSTHiLink CSTDirectory Directory + CSTHiLink CSTErrorMsg ErrorMsg + CSTHiLink CSTIncSearch IncSearch + CSTHiLink CSTSearch Search + CSTHiLink CSTMoreMsg MoreMsg + CSTHiLink CSTModeMsg ModeMsg + CSTHiLink CSTLineNr LineNr + CSTHiLink CSTQuestion Question + CSTHiLink CSTStatusLineNC StatusLineNC + CSTHiLink CSTStatusLine StatusLine + CSTHiLink CSTVertSplit VertSplit + CSTHiLink CSTTitle Title + CSTHiLink CSTVisualNOS VisualNOS + CSTHiLink CSTVisual Visual + CSTHiLink CSTWarningMsg WarningMsg + CSTHiLink CSTWildMenu WildMenu + CSTHiLink CSTFolded Folded + CSTHiLink CSTFoldColumn FoldColumn + CSTHiLink CSTSignColumn SignColumn + CSTHiLink CSTDiffAdd DiffAdd + CSTHiLink CSTDiffChange DiffChange + CSTHiLink CSTDiffDelete DiffDelete + CSTHiLink CSTDiffText DiffText + CSTHiLink CSTCursor Cursor + CSTHiLink CSTComment Comment + CSTHiLink CSTConstant Constant + CSTHiLink CSTString String + CSTHiLink CSTCharacter Character + CSTHiLink CSTNumber Number + CSTHiLink CSTBoolean Boolean + CSTHiLink CSTFloat Float + CSTHiLink CSTIdentifier Identifier + CSTHiLink CSTFunction Function + CSTHiLink CSTStatement Statement + CSTHiLink CSTConditional Conditional + CSTHiLink CSTRepeat Repeat + CSTHiLink CSTLabel Label + CSTHiLink CSTOperator Operator + CSTHiLink CSTKeyword Keyword + CSTHiLink CSTException Exception + CSTHiLink CSTPreProc PreProc + CSTHiLink CSTInclude Include + CSTHiLink CSTDefine Define + CSTHiLink CSTMacro Macro + CSTHiLink CSTPreCondit PreCondit + CSTHiLink CSTType Type + CSTHiLink CSTStorageClass StorageClass + CSTHiLink CSTStructure Structure + CSTHiLink CSTTypedef Typedef + CSTHiLink CSTSpecial Special + CSTHiLink CSTSpecialChar SpecialChar + CSTHiLink CSTTag Tag + CSTHiLink CSTDelimiter Delimiter + CSTHiLink CSTSpecialComment SpecialComment + CSTHiLink CSTDebug Debug + CSTHiLink CSTUnderlined Underlined + CSTHiLink CSTIgnore Ignore + CSTHiLink CSTError Error + CSTHiLink CSTSpellBad SpellBad + CSTHiLink CSTSpellCap SpellCap + CSTHiLink CSTSpellLocal SpellLocal + CSTHiLink CSTSpellRare SpellRare + CSTHiLink CSTTodo Todo +endif + +delcommand CSTHiLink + +let b:current_syntax = "cst" + +if main_syntax == 'cst' + unlet main_syntax +endif + +" vim: set filetype=cst: diff --git a/syntax/octobercms.vim b/syntax/octobercms.vim new file mode 100644 index 0000000..a2f1706 --- /dev/null +++ b/syntax/octobercms.vim @@ -0,0 +1,18 @@ +if exists("b:current_syntax") + finish +endif + +" changing order of following 4 lines breaks highlighting TODO - why? +syntax include @octoberPHP syntax/php.vim +unlet! b:current_syntax +syntax include @octoberConfig syntax/dosini.vim +runtime! syntax/jinja.vim + +syntax region octoberConfig start=@\%^\([a-zA-z]\+[a-zA-Z0-9]\+\s*=\s*\("\|'\)\)\|\[\s*[a-zA-Z0-9]\+\s*\]@ end=+^==$+me=e-2 contains=@octoberConfig +syntax region octoberPHP start=+^==$+ms=s+2 end=+^==$+me=e-2 contains=@octoberPHP + +" FIXME - why these no work! +" syntax match octobercmsSectionDelimiter "^==$" +" highlight link octobercmsSectionDelimiter Comment + +let b:current_syntax = "octobercms"