From 62ad024cafdbdf6d4856bdb6f73e437d67cf0980 Mon Sep 17 00:00:00 2001 From: zengda Date: Wed, 2 Aug 2017 16:07:57 +0800 Subject: [PATCH 1/9] allow ctags to match by pattern --- autoload/codequery.vim | 16 +++------------- autoload/codequery/db.vim | 8 +------- autoload/codequery/query.vim | 7 ------- 3 files changed, 4 insertions(+), 27 deletions(-) diff --git a/autoload/codequery.vim b/autoload/codequery.vim index 973c6ff..348c6c4 100644 --- a/autoload/codequery.vim +++ b/autoload/codequery.vim @@ -7,7 +7,7 @@ let g:c_family_filetype_list = let g:codequery_supported_filetype_list = g:c_family_filetype_list + - \ ['python', 'javascript', 'go', 'ruby', 'java', 'c', 'cpp'] + \ ['python', 'javascript', 'go', 'ruby', 'java', 'c', 'cpp', 'erlang'] let s:menu_subcommands = [ 'Unite' ] @@ -38,17 +38,11 @@ function! s:save_cwd() abort endfunction -function! s:restore_cwd() - execute 'lcd ' . g:codequery_cwd - let g:codequery_cwd = '' -endfunction - " ============================================================================= " Entries - function! codequery#run_codequery(args) abort call s:save_cwd() if !s:check_filetype(&filetype) @@ -66,7 +60,6 @@ function! codequery#run_codequery(args) abort let g:codequery_querytype = 1 let g:codequery_db_path = '' if !s:set_db() - call s:restore_cwd() if g:codequery_trigger_build_db_when_db_not_found execute 'CodeQueryMakeDB ' . &filetype endif @@ -86,7 +79,6 @@ function! codequery#run_codequery(args) abort let word = codequery#query#get_final_query_word(iword, cword) if empty(word) echom 'Invalid Args: ' . a:args - call s:restore_cwd() return endif @@ -94,7 +86,6 @@ function! codequery#run_codequery(args) abort else echom 'Wrong Subcommand !' endif - call s:restore_cwd() endfunction @@ -130,6 +121,8 @@ function! codequery#make_codequery_db(args) abort let shell_cmd = codequery#db#construct_go_db_build_cmd(db_path) elseif ft ==? 'java' let shell_cmd = codequery#db#construct_java_db_build_cmd(db_path) + elseif ft ==? 'erlang' + let shell_cmd = codequery#db#construct_erlang_db_build_cmd(db_path) elseif index(g:c_family_filetype_list, ft) != -1 let shell_cmd = codequery#db#construct_c_db_build_cmd(db_path) else @@ -156,7 +149,6 @@ function! codequery#make_codequery_db(args) abort redraw! endif endfor - call s:restore_cwd() endfunction @@ -185,7 +177,6 @@ function! codequery#view_codequery_db(args) abort execute '!echo "\n(' . db_path . ') is update at: " && stat -f "\%Sm" ' . db_path endfor - call s:restore_cwd() endfunction @@ -214,7 +205,6 @@ function! codequery#move_codequery_db_to_git_hidden_dir(args) abort echom 'Git Dir Not Found or (' . db_name . ') Not Found' endif endfor - call s:restore_cwd() endfunction diff --git a/autoload/codequery/db.vim b/autoload/codequery/db.vim index 3801e69..993f881 100644 --- a/autoload/codequery/db.vim +++ b/autoload/codequery/db.vim @@ -2,7 +2,6 @@ " Entries -" `lcd` brings side effect !! function! codequery#db#find_db_path(filetype) abort if index(g:c_family_filetype_list, a:filetype) != -1 let db_name = 'c_family.db' @@ -13,22 +12,18 @@ function! codequery#db#find_db_path(filetype) abort let lookup_path = findfile(expand('%:p:h') . '/' . db_name, '.') if !empty(lookup_path) - lcd %:p:h return lookup_path endif - lcd %:p:h let git_root_dir = systemlist('git rev-parse --show-toplevel')[0] if !v:shell_error let lookup_path = findfile(git_root_dir . '/' . db_name, '.') if !empty(lookup_path) - execute 'lcd ' . git_root_dir return lookup_path else let lookup_path = findfile(git_root_dir . '/.git/codequery/' . \ db_name, '.') if !empty(lookup_path) - execute 'lcd ' . git_root_dir return lookup_path endif endif @@ -77,7 +72,6 @@ function! codequery#db#construct_javascript_db_build_cmd(db_path) abort return exists('g:codequery_build_javascript_db_cmd') ? g:codequery_build_javascript_db_cmd : shell_cmd endfunction - function! codequery#db#construct_ruby_db_build_cmd(db_path) abort let starscope_cmd = 'starscope --force-update -e ctags -e cscope **/*.rb' let rename_cmd = 'mv tags ruby_tags && mv cscope.out ruby_cscope.out' @@ -142,7 +136,7 @@ function! codequery#db#construct_c_db_build_cmd(db_path) abort \ 'find . -iname "*.hxx" >> c_cscope.files && ' . \ 'find . -iname "*.hh" >> c_cscope.files' let cscope_cmd = 'cscope -cbk -i c_cscope.files -f c_cscope.out' - let ctags_cmd = 'ctags --fields=+i -n -R -f "c_tags" -L c_cscope.files' + let ctags_cmd = 'ctags --fields=+i -N -R -f "c_tags" -L c_cscope.files' let cqmakedb_cmd = 'cqmakedb -s "' . a:db_path . '" -c c_cscope.out' . \ ' -t c_tags -p' let shell_cmd = find_cmd . ' && ' . diff --git a/autoload/codequery/query.vim b/autoload/codequery/query.vim index 7c8cf24..92e1c55 100644 --- a/autoload/codequery/query.vim +++ b/autoload/codequery/query.vim @@ -112,11 +112,7 @@ endfunction " Ref: MarcWeber's vim-addon-qf-layout function! codequery#query#prettify_qf_layout_and_map_keys(results) abort if &filetype !=# 'qf' - if !empty(g:codequery_cwd) - execute 'lcd ' . g:codequery_cwd - endif copen - execute 'lcd ' . g:codequery_cwd endif " unlock qf to make changes @@ -187,9 +183,6 @@ function! codequery#query#do_query(word) abort " Find Text if empty(grepformat) - if g:codequery_find_text_from_current_file_dir == 1 - lcd %:p:h - endif silent execute grepprg call codequery#query#prettify_qf_layout_and_map_keys(getqflist()) let g:codequery_last_query_word = a:word From 42ca76edb71bf1cdda88d8fc41106254b95ad2d5 Mon Sep 17 00:00:00 2001 From: zengda Date: Tue, 22 Aug 2017 11:01:08 +0800 Subject: [PATCH 2/9] remove unite --- README.md | 47 +-------------- autoload/codequery.vim | 25 -------- autoload/codequery/menu.vim | 113 ----------------------------------- autoload/codequery/query.vim | 1 - 4 files changed, 2 insertions(+), 184 deletions(-) diff --git a/README.md b/README.md index e40091a..f87826e 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,7 @@ > Choose what you want to know! 😼 ```vim -" Open menu -:CodeQueryMenu Unite Full - -" Or query directly +" query directly :CodeQuery Definition get_user_id ```
@@ -203,7 +200,6 @@ Plug 'mileszs/ack.vim' | M | `:CodeQueryAgain Member` | | | P | `:CodeQueryAgain Parent` | | | D | `:CodeQueryAgain Child` | | -| m | `:CodeQueryMenu Unite Magic` | | | q | `:cclose` | | | \ | `:CodeQueryFilter` | | | p | `p` | Preview | @@ -220,46 +216,9 @@ Plug 'mileszs/ack.vim' " This command can also be used to **patch** standard Quickfix. ``` - -#### 4. Open Menu - -Currently, vim-codequery only provides [Unite](https://github.com/Shougo/unite.vim) menu because I love it ⭐. There are two types of menu: - -* **Full Unite menu** - -```vim -:CodeQueryMenu Unite Full - -" The string between :: and :: is the word under cursor -" [F] means this action is for 'function variable only' -" [C] is for 'class variable only' -``` - - -* **Magic Unite menu** - -```vim -:CodeQueryMenu Unite Magic - -" This menu changes dynamically: -" 1. If the word under your cursor begins with a capital letter (possible be class): show [C] actions -" 2. vice versa (possible be function): show [F] actions -" 3. Show reasonable actions within Quickfix -``` - -
## Tips -#### Open Menu -```vim -nnoremap c :CodeQueryMenu Unite Full -nnoremap ; :CodeQueryMenu Unite Magic - -" Or enable typing (to search menu items) by default -nnoremap \ :CodeQueryMenu Unite MagicA -``` - #### Query ```vim nnoremap :CodeQuery Symbol @@ -322,8 +281,7 @@ let g:codequery_build_go_db_cmd = '...' let g:codequery_build_java_db_cmd = '...' let g:codequery_build_c_db_cmd = '...' ``` - - + #### Others ```vim " You can disable key binding within quickfix @@ -384,7 +342,6 @@ Thank all for working on these great projects! * [CodeQuery](https://github.com/ruben2020/codequery) * [Starscope](https://github.com/eapache/starscope) * [PyCscope](https://github.com/portante/pycscope) -* [Unite.vim](https://github.com/Shougo/unite.vim) * [dispatch.vim](https://github.com/tpope/vim-dispatch) * [ack.vim](https://github.com/mileszs/ack.vim) * [vim-addon-qf-layout](https://github.com/MarcWeber/vim-addon-qf-layout) diff --git a/autoload/codequery.vim b/autoload/codequery.vim index 348c6c4..2138138 100644 --- a/autoload/codequery.vim +++ b/autoload/codequery.vim @@ -10,9 +10,6 @@ let g:codequery_supported_filetype_list = g:c_family_filetype_list + \ ['python', 'javascript', 'go', 'ruby', 'java', 'c', 'cpp', 'erlang'] -let s:menu_subcommands = [ 'Unite' ] - - function! s:check_filetype(filetype) abort if index(g:codequery_supported_filetype_list, a:filetype) == -1 return 0 @@ -207,27 +204,6 @@ function! codequery#move_codequery_db_to_git_hidden_dir(args) abort endfor endfunction - -function! codequery#show_menu(args) abort - let args = split(a:args, ' ') - let args_num = len(args) - - if args_num > 0 && index(s:menu_subcommands, args[0]) != -1 - if args[0] ==# 'Unite' - if args_num > 1 && args[1] ==# 'Magic' - let magic_menu = 1 - else - let magic_menu = 0 - endif - call codequery#menu#use_unite_menu(magic_menu) - return - endif - endif - - echom 'Wrong Subcommands! Try: ' . join(s:menu_subcommands, ', ') -endfunction - - function! codequery#run_codequery_again_with_different_subcmd(args) abort let args = split(a:args, ' ') let args_num = len(args) @@ -241,7 +217,6 @@ function! codequery#run_codequery_again_with_different_subcmd(args) abort endif endfunction - " modify from someone's .vimrc function! codequery#filter_qf_results(args) abort let args = split(a:args, ' ') diff --git a/autoload/codequery/menu.vim b/autoload/codequery/menu.vim index edfc1bc..1021a6d 100644 --- a/autoload/codequery/menu.vim +++ b/autoload/codequery/menu.vim @@ -3,116 +3,3 @@ scriptencoding utf-8 - - -function! codequery#menu#patch_unite_magic_menu_from_qf(fre_cmds, fun_cmds, cla_cmds) abort - call map(a:fre_cmds, '[substitute(v:val[0], "Find", "Switch To", "g"), v:val[1]]') - call map(a:fun_cmds, '[substitute(v:val[0], "Find", "Switch To", "g"), v:val[1]]') - call map(a:cla_cmds, '[substitute(v:val[0], "Find", "Switch To", "g"), v:val[1]]') - call map(a:fre_cmds, '[v:val[0], substitute(v:val[1], "CodeQuery", "CodeQueryAgain", "")]') - call map(a:fun_cmds, '[v:val[0], substitute(v:val[1], "CodeQuery", "CodeQueryAgain", "")]') - call map(a:cla_cmds, '[v:val[0], substitute(v:val[1], "CodeQuery", "CodeQueryAgain", "")]') - call insert(a:fre_cmds, ['▷ Filter', 'call feedkeys(":CodeQueryFilter ")'], 0) -endfunction - - - -function! codequery#menu#use_unite_menu(magic) abort - let cword = codequery#query#get_valid_cursor_word() - let menu_frequent_cmds = [['▷ Find Symbol', 'CodeQuery Symbol'], - \['▷ Find Text', 'CodeQuery Text']] - let menu_function_cmds = [['▷ Find Function Def. [F]', 'CodeQuery Definition'], - \['▷ Find Call [F]', 'CodeQuery Call'], - \['▷ Find Caller [F]', 'CodeQuery Caller'], - \['▷ Find Callee [F]', 'CodeQuery Callee']] - let menu_class_cmds = [['▷ Find Class Def. [C]', 'CodeQuery Class'], - \['▷ Find Class Member [C]', 'CodeQuery Member'], - \['▷ Find Parent [C]', 'CodeQuery Parent'], - \['▷ Find Child [C]', 'CodeQuery Child']] - let menu_other_cmds = [['▷ List Function', 'CodeQuery FunctionList'], - \['▷ List Imports', 'CodeQuery FileImporter']] - let menu_delimiter = [['* ------------------------- *', '']] - let menu_db_cmds = [['▷ Make DB', 'call feedkeys(":CodeQueryMakeDB ")'], - \['▷ View DB', 'call feedkeys(":CodeQueryViewDB ")'], - \['▷ Move DB', 'call feedkeys(":CodeQueryMoveDBToGitDir ")']] - let menu_show_qf = [['▷ Show QF ▲', 'CodeQueryShowQF'], - \['▷ Hide QF ▼', 'cclose']] - let menu_goto_magic = [['▷ Open Magic Menu ▸', 'CodeQueryMenu Unite Magic']] - let menu_goto_full = [['▷ Open Full Menu ▸', 'CodeQueryMenu Unite Full']] - - " DB not found => remove unnecessary items from menu - let db_path = codequery#db#find_db_path(&filetype) - if empty(db_path) && &filetype !=# 'qf' - let menu_frequent_cmds = [['▷ Find Text', g:codequery_find_text_cmd]] - let menu_function_cmds = [] - let menu_class_cmds = [] - let menu_other_cmds = [] - let menu_delimiter = [] - let menu_db_cmds = [['▷ Make DB', 'call feedkeys(":CodeQueryMakeDB ' . &filetype . '")']] - let menu_goto_magic = [] - let menu_goto_full = [] - if index(g:codequery_supported_filetype_list, &filetype) == -1 - let menu_show_qf += [['# Not Supported Filetype: [' . &filetype . ']', '']] - endif - endif - - if a:magic - if &filetype ==# 'qf' - call codequery#menu#patch_unite_magic_menu_from_qf(menu_frequent_cmds, - \ menu_function_cmds, - \ menu_class_cmds) - let menu_other_cmds = [] - let menu_goto_full = [] - if exists('g:codequery_last_query_word') - let cword = g:codequery_last_query_word - endif - endif - - let menu_description = 'CodeQuery Magic Menu' - if g:codequery_enable_not_so_magic_menu - let cmd_candidates = menu_frequent_cmds - \ + menu_function_cmds - \ + menu_class_cmds - \ + menu_other_cmds - \ + menu_show_qf - \ + menu_goto_full - elseif cword =~# '\C^[A-Z].*' - let cmd_candidates = menu_frequent_cmds - \ + menu_class_cmds - \ + menu_other_cmds - \ + menu_show_qf - \ + menu_goto_full - else - let cmd_candidates = menu_frequent_cmds - \ + menu_function_cmds - \ + menu_other_cmds - \ + menu_show_qf - \ + menu_goto_full - endif - else - if &filetype ==# 'qf' - echom 'Can Not Open Full Menu In QF (Use Magic Menu)' - return - endif - let menu_description = 'CodeQuery Full Menu' - let cmd_candidates = menu_frequent_cmds - \ + menu_function_cmds - \ + menu_class_cmds - \ + menu_other_cmds - \ + menu_delimiter - \ + menu_db_cmds - \ + menu_delimiter - \ + menu_show_qf - \ + menu_goto_magic - endif - - if !exists('g:unite_source_menu_menus') - let g:unite_source_menu_menus = {} - endif - let g:unite_source_menu_menus.codequery = { - \ 'description' : menu_description, - \} - let g:unite_source_menu_menus.codequery.command_candidates = cmd_candidates - execute 'Unite -silent -prompt-visible -prompt=::' . cword - \ . ':: menu:codequery' -endfunction diff --git a/autoload/codequery/query.vim b/autoload/codequery/query.vim index 92e1c55..84d0566 100644 --- a/autoload/codequery/query.vim +++ b/autoload/codequery/query.vim @@ -157,7 +157,6 @@ function! codequery#query#prettify_qf_layout_and_map_keys(results) abort nnoremap P :CodeQueryAgain Parent nnoremap D :CodeQueryAgain Child - nnoremap m :CodeQueryMenu Unite Magic nnoremap q :cclose nnoremap \ :CodeQueryFilter From 3fa61d4508fb2a48dc3fb12479a358d59a2cbfd3 Mon Sep 17 00:00:00 2001 From: zengda Date: Mon, 4 Sep 2017 11:58:11 +0800 Subject: [PATCH 3/9] allow nvim to run async build db --- autoload/codequery.vim | 6 ++++++ autoload/codequery/db.vim | 4 ++-- autoload/codequery/menu.vim | 5 ----- 3 files changed, 8 insertions(+), 7 deletions(-) delete mode 100644 autoload/codequery/menu.vim diff --git a/autoload/codequery.vim b/autoload/codequery.vim index 2138138..89aff31 100644 --- a/autoload/codequery.vim +++ b/autoload/codequery.vim @@ -137,6 +137,12 @@ function! codequery#make_codequery_db(args) abort let timer = timer_start(500, \{-> execute("call job_status(s:build_job)","")}, \{'repeat': 60}) + elseif has('nvim') + echom 'Making DB ...' + let mydict = {'db_path': db_path, + \'callback': function("codequery#db#make_db_callback")} + let callbacks = {'on_exit': mydict.callback} + let s:build_job = jobstart(['/bin/sh', '-c', shell_cmd], callbacks) elseif exists(':Start') silent execute 'Start! -title=Make_CodeQuery_DB -wait=error ' . shell_cmd redraw! diff --git a/autoload/codequery/db.vim b/autoload/codequery/db.vim index 993f881..1280947 100644 --- a/autoload/codequery/db.vim +++ b/autoload/codequery/db.vim @@ -31,8 +31,8 @@ function! codequery#db#find_db_path(filetype) abort endfunction -function! codequery#db#make_db_callback(job, status) dict - echom 'Done! (' . self.db_path . ')' +function! codequery#db#make_db_callback(job, data, status) dict + echom 'Build codequery db Done!' endfunction diff --git a/autoload/codequery/menu.vim b/autoload/codequery/menu.vim deleted file mode 100644 index 1021a6d..0000000 --- a/autoload/codequery/menu.vim +++ /dev/null @@ -1,5 +0,0 @@ -" ============================================================================= -" Entries - - -scriptencoding utf-8 From caf292a476922866528075b900610a146c1711b1 Mon Sep 17 00:00:00 2001 From: zengda Date: Mon, 4 Sep 2017 15:32:22 +0800 Subject: [PATCH 4/9] fix Start issue --- autoload/codequery.vim | 1 - autoload/codequery/query.vim | 1 - 2 files changed, 2 deletions(-) diff --git a/autoload/codequery.vim b/autoload/codequery.vim index 89aff31..b2d10f2 100644 --- a/autoload/codequery.vim +++ b/autoload/codequery.vim @@ -85,7 +85,6 @@ function! codequery#run_codequery(args) abort endif endfunction - function! codequery#make_codequery_db(args) abort call s:save_cwd() let args = split(a:args, ' ') diff --git a/autoload/codequery/query.vim b/autoload/codequery/query.vim index 84d0566..735e8e5 100644 --- a/autoload/codequery/query.vim +++ b/autoload/codequery/query.vim @@ -170,7 +170,6 @@ function! codequery#query#prettify_qf_layout_and_map_keys(results) abort setlocal nomodified endfunction - function! codequery#query#do_query(word) abort if empty(a:word) echom 'Invalid Search Term: ' . a:word From 6184f924240b47cadbae2c0f05551950dbf1e59b Mon Sep 17 00:00:00 2001 From: zengda Date: Fri, 15 Sep 2017 10:26:44 +0800 Subject: [PATCH 5/9] remoe useless code --- plugin/codequery.vim | 1 - 1 file changed, 1 deletion(-) diff --git a/plugin/codequery.vim b/plugin/codequery.vim index adfb665..1608ac8 100644 --- a/plugin/codequery.vim +++ b/plugin/codequery.vim @@ -56,7 +56,6 @@ command! -nargs=* CodeQueryMakeDB call codequery#make_codequery_db() command! -nargs=* CodeQueryViewDB call codequery#view_codequery_db() command! -nargs=* CodeQueryMoveDBToGitDir \ call codequery#move_codequery_db_to_git_hidden_dir() -command! -nargs=* CodeQueryMenu call codequery#show_menu() command! -nargs=0 CodeQueryShowQF call \ codequery#query#prettify_qf_layout_and_map_keys(getqflist()) From 92ef4d13fe4b67c7d85c0b7855cb45c8b9884344 Mon Sep 17 00:00:00 2001 From: zengda Date: Wed, 27 Sep 2017 15:16:49 +0800 Subject: [PATCH 6/9] update async setting --- autoload/codequery.vim | 14 +++++++------- plugin/codequery.vim | 2 -- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/autoload/codequery.vim b/autoload/codequery.vim index b2d10f2..661ea02 100644 --- a/autoload/codequery.vim +++ b/autoload/codequery.vim @@ -126,7 +126,13 @@ function! codequery#make_codequery_db(args) abort continue endif - if v:version >= 800 + if has('nvim') + echom 'Making DB ...' + let mydict = {'db_path': db_path, + \'callback': function("codequery#db#make_db_callback")} + let callbacks = {'on_exit': mydict.callback} + let s:build_job = jobstart(['/bin/sh', '-c', shell_cmd], callbacks) + elseif v:version >= 800 echom 'Making DB ...' let mydict = {'db_path': db_path, \'callback': function("codequery#db#make_db_callback")} @@ -136,12 +142,6 @@ function! codequery#make_codequery_db(args) abort let timer = timer_start(500, \{-> execute("call job_status(s:build_job)","")}, \{'repeat': 60}) - elseif has('nvim') - echom 'Making DB ...' - let mydict = {'db_path': db_path, - \'callback': function("codequery#db#make_db_callback")} - let callbacks = {'on_exit': mydict.callback} - let s:build_job = jobstart(['/bin/sh', '-c', shell_cmd], callbacks) elseif exists(':Start') silent execute 'Start! -title=Make_CodeQuery_DB -wait=error ' . shell_cmd redraw! diff --git a/plugin/codequery.vim b/plugin/codequery.vim index 1608ac8..ebfe4d3 100644 --- a/plugin/codequery.vim +++ b/plugin/codequery.vim @@ -31,8 +31,6 @@ if !exists('g:codequery_enable_not_so_magic_menu') let g:codequery_enable_not_so_magic_menu = 0 endif - - " No need to init "let g:codequery_build_python_db_cmd = '' "let g:codequery_build_javascript_db_cmd = '' From c993a48a600d030b2a13547424cc3800fbc053d1 Mon Sep 17 00:00:00 2001 From: zengda Date: Wed, 27 Sep 2017 18:24:48 +0800 Subject: [PATCH 7/9] bug fix for nvim --- autoload/codequery/query.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autoload/codequery/query.vim b/autoload/codequery/query.vim index 735e8e5..bc8d8d5 100644 --- a/autoload/codequery/query.vim +++ b/autoload/codequery/query.vim @@ -188,7 +188,7 @@ function! codequery#query#do_query(word) abort return endif - if v:version >= 800 + if v:version >= 800 && !has('nvim') echom 'Searching ... [' . a:word . ']' let job_dict = {'is_append': g:codequery_append_to_qf ? 1 : 0, From dc92bbe982d2557c2dac4b0fa69d0e13366acae1 Mon Sep 17 00:00:00 2001 From: johnzeng Date: Sun, 30 Sep 2018 15:50:23 +0800 Subject: [PATCH 8/9] fix load bug --- autoload/codequery/db.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autoload/codequery/db.vim b/autoload/codequery/db.vim index 1280947..04816a9 100644 --- a/autoload/codequery/db.vim +++ b/autoload/codequery/db.vim @@ -9,7 +9,7 @@ function! codequery#db#find_db_path(filetype) abort let db_name = a:filetype . '.db' endif - let lookup_path = findfile(expand('%:p:h') . '/' . db_name, '.') + let lookup_path = findfile(getcwd() .'/'. db_name, '.') if !empty(lookup_path) return lookup_path From 2d456a841848ed77dbde5647a74a72d7c90bf272 Mon Sep 17 00:00:00 2001 From: johnzeng Date: Wed, 17 Oct 2018 17:44:22 +0800 Subject: [PATCH 9/9] import ctags --- autoload/codequery/db.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autoload/codequery/db.vim b/autoload/codequery/db.vim index 04816a9..64a1fdf 100644 --- a/autoload/codequery/db.vim +++ b/autoload/codequery/db.vim @@ -136,7 +136,7 @@ function! codequery#db#construct_c_db_build_cmd(db_path) abort \ 'find . -iname "*.hxx" >> c_cscope.files && ' . \ 'find . -iname "*.hh" >> c_cscope.files' let cscope_cmd = 'cscope -cbk -i c_cscope.files -f c_cscope.out' - let ctags_cmd = 'ctags --fields=+i -N -R -f "c_tags" -L c_cscope.files' + let ctags_cmd = 'ctags --fields=+afmikKlnsStz -N -R --languages=+c++,c -f "c_tags" -L c_cscope.files' let cqmakedb_cmd = 'cqmakedb -s "' . a:db_path . '" -c c_cscope.out' . \ ' -t c_tags -p' let shell_cmd = find_cmd . ' && ' .