From 4a2830caf469e7bd1e293007de41b9e11471520e Mon Sep 17 00:00:00 2001 From: Anatolii Sakhnik Date: Sat, 30 May 2015 08:11:28 +0300 Subject: [PATCH 1/2] Add support for C++ --- README | 2 +- autoload/dbext.vim | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/README b/README index fc1cced..df38177 100644 --- a/README +++ b/README @@ -110,7 +110,7 @@ SQL can be used from a variety of languages. Each development language (PHP, Pe different filetypes, so that it can understand and correctly parse a SQL statement. The current supported languages are: - PHP, Java, JSP, JavaScript, JProperties, Perl, SQL, Vim + PHP, Java, JSP, JavaScript, JProperties, C++, Perl, SQL, Vim For example assume you had the following Java code: String mySQL = diff --git a/autoload/dbext.vim b/autoload/dbext.vim index eb340d7..db20e5d 100644 --- a/autoload/dbext.vim +++ b/autoload/dbext.vim @@ -7367,7 +7367,8 @@ function! dbext#DB_parseQuery(query) \ matchstr( l:filetype, "cs" ) == "cs" || \ matchstr( l:filetype, "jsp" ) == "jsp" || \ matchstr( l:filetype, "html" ) == "html" || - \ matchstr( l:filetype, "javascript" ) == "javascript" + \ matchstr( l:filetype, "javascript" ) == "javascript" || + \ matchstr( l:filetype, "cpp" ) == "cpp" let query = s:DB_parseJava(a:query) return s:DB_parseHostVariables(query) elseif matchstr( l:filetype, "jproperties" ) == "jproperties" @@ -7869,9 +7870,14 @@ function! s:DB_parsePHP(query) endfunction "}}} -" Java, JSP, JavaScript Parser {{{ +" Java, JSP, JavaScript, C++ Parser {{{ function! s:DB_parseJava(query) let query = a:query + + " Strip stand alone quotes at the begin and end (string continuation in + " C++) + let query = substitute(query, '\v"\s*\n\s*"', ' ', 'g') + " Remove any newline characters let query = substitute(query, "\n", ' ', 'g') From 0baef94bce63be875333196b21674a2fe10a17ef Mon Sep 17 00:00:00 2001 From: Anatolii Sakhnik Date: Tue, 23 Jun 2015 16:16:30 +0300 Subject: [PATCH 2/2] Fix annoying syntax highlight gone away $ vim * new $MYVIMRC * o Result: .vimrc on the whole screen without syntax highlight --- autoload/dbext.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/autoload/dbext.vim b/autoload/dbext.vim index db20e5d..6da3693 100644 --- a/autoload/dbext.vim +++ b/autoload/dbext.vim @@ -6580,11 +6580,11 @@ function! dbext#DB_auBufDelete(del_buf_nr) "{{{ silent! exec cur_buf.'buffer' " Switch back value of 'bufhidden' and syntax - if !empty(cur_bufhidden) + "if !empty(cur_bufhidden) exec "setlocal bufhidden=".cur_bufhidden exec "setlocal syntax=".cur_syntax exec "setlocal filetype=".cur_filetype - endif + "endif endif endfunction "}}} "}}}