亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? taglist.vim

?? 給vim增加函數列表。Author: Yegappan Lakshmanan (yegappan AT yahoo DOT com) For Vim version 6.0 and above L
?? VIM
?? 第 1 頁 / 共 5 頁
字號:
    else        " Do a binary search in the taglist        let left = 0        let right = s:tlist_file_count - 1        while left < right            let mid = (left + right) / 2            if a:lnum >= s:tlist_{mid}_start && a:lnum <= s:tlist_{mid}_end                let s:tlist_file_lnum_idx_cache = mid                return mid            endif            if a:lnum < s:tlist_{mid}_start                let right = mid - 1            else                let left = mid + 1            endif        endwhile        if left >= 0 && left < s:tlist_file_count                    \ && a:lnum >= s:tlist_{left}_start                    \ && a:lnum <= s:tlist_{left}_end            let fidx = left        endif    endif    let s:tlist_file_lnum_idx_cache = fidx    return fidxendfunction" Tlist_Exe_Cmd_No_Acmds" Execute the specified Ex command after disabling autocommandsfunction! s:Tlist_Exe_Cmd_No_Acmds(cmd)    let old_eventignore = &eventignore    set eventignore=all    exe a:cmd    let &eventignore = old_eventignoreendfunction" Tlist_Skip_File()" Check whether tag listing is supported for the specified filefunction! s:Tlist_Skip_File(filename, ftype)    " Skip buffers with no names and buffers with filetype not set    if a:filename == '' || a:ftype == ''        return 1    endif    " Skip files which are not supported by exuberant ctags    " First check whether default settings for this filetype are available.    " If it is not available, then check whether user specified settings are    " available. If both are not available, then don't list the tags for this    " filetype    let var = 's:tlist_def_' . a:ftype . '_settings'    if !exists(var)        let var = 'g:tlist_' . a:ftype . '_settings'        if !exists(var)            return 1        endif    endif    " Skip files which are not readable or files which are not yet stored    " to the disk    if !filereadable(a:filename)        return 1    endif    return 0endfunction" Tlist_User_Removed_File" Returns 1 if a file is removed by a user from the taglistfunction! s:Tlist_User_Removed_File(filename)    return stridx(s:tlist_removed_flist, a:filename . "\n") != -1endfunction" Tlist_Update_Remove_List" Update the list of user removed files from the taglist" add == 1, add the file to the removed list" add == 0, delete the file from the removed listfunction! s:Tlist_Update_Remove_List(filename, add)    if a:add        let s:tlist_removed_flist = s:tlist_removed_flist . a:filename . "\n"    else        let idx = stridx(s:tlist_removed_flist, a:filename . "\n")        let text_before = strpart(s:tlist_removed_flist, 0, idx)        let rem_text = strpart(s:tlist_removed_flist, idx)        let next_idx = stridx(rem_text, "\n")        let text_after = strpart(rem_text, next_idx + 1)        let s:tlist_removed_flist = text_before . text_after    endifendfunction" Tlist_FileType_Init" Initialize the ctags arguments and tag variable for the specified" file typefunction! s:Tlist_FileType_Init(ftype)    call s:Tlist_Log_Msg('Tlist_FileType_Init (' . a:ftype . ')')    " If the user didn't specify any settings, then use the default    " ctags args. Otherwise, use the settings specified by the user    let var = 'g:tlist_' . a:ftype . '_settings'    if exists(var)        " User specified ctags arguments        let settings = {var} . ';'    else        " Default ctags arguments        let var = 's:tlist_def_' . a:ftype . '_settings'        if !exists(var)            " No default settings for this file type. This filetype is            " not supported            return 0        endif        let settings = s:tlist_def_{a:ftype}_settings . ';'    endif    let msg = 'Taglist: Invalid ctags option setting - ' . settings    " Format of the option that specifies the filetype and ctags arugments:    "    "       <language_name>;flag1:name1;flag2:name2;flag3:name3    "    " Extract the file type to pass to ctags. This may be different from the    " file type detected by Vim    let pos = stridx(settings, ';')    if pos == -1        call s:Tlist_Warning_Msg(msg)        return 0    endif    let ctags_ftype = strpart(settings, 0, pos)    if ctags_ftype == ''        call s:Tlist_Warning_Msg(msg)        return 0    endif    " Make sure a valid filetype is supplied. If the user didn't specify a    " valid filetype, then the ctags option settings may be treated as the    " filetype    if ctags_ftype =~ ':'        call s:Tlist_Warning_Msg(msg)        return 0    endif    " Remove the file type from settings    let settings = strpart(settings, pos + 1)    if settings == ''        call s:Tlist_Warning_Msg(msg)        return 0    endif    " Process all the specified ctags flags. The format is    " flag1:name1;flag2:name2;flag3:name3    let ctags_flags = ''    let cnt = 0    while settings != ''        " Extract the flag        let pos = stridx(settings, ':')        if pos == -1            call s:Tlist_Warning_Msg(msg)            return 0        endif        let flag = strpart(settings, 0, pos)        if flag == ''            call s:Tlist_Warning_Msg(msg)            return 0        endif        " Remove the flag from settings        let settings = strpart(settings, pos + 1)        " Extract the tag type name        let pos = stridx(settings, ';')        if pos == -1            call s:Tlist_Warning_Msg(msg)            return 0        endif        let name = strpart(settings, 0, pos)        if name == ''            call s:Tlist_Warning_Msg(msg)            return 0        endif        let settings = strpart(settings, pos + 1)        let cnt = cnt + 1        let s:tlist_{a:ftype}_{cnt}_name = flag        let s:tlist_{a:ftype}_{cnt}_fullname = name        let ctags_flags = ctags_flags . flag    endwhile    let s:tlist_{a:ftype}_ctags_args = '--language-force=' . ctags_ftype .                            \ ' --' . ctags_ftype . '-types=' . ctags_flags    let s:tlist_{a:ftype}_count = cnt    let s:tlist_{a:ftype}_ctags_flags = ctags_flags    " Save the filetype name    let s:tlist_ftype_{s:tlist_ftype_count}_name = a:ftype    let s:tlist_ftype_count = s:tlist_ftype_count + 1    return 1endfunction" Tlist_Get_Filetype" Determine the filetype for the specified filefunction! s:Tlist_Get_Filetype(fname)    " Ignore the filetype autocommands    let old_eventignore = &eventignore    set eventignore=FileType    " Save the 'filetype', as this will be changed temporarily    let old_filetype = &filetype    " Run the filetypedetect group of autocommands to determine    " the filetype    exe 'doautocmd filetypedetect BufRead ' . a:fname    " Save the detected filetype    let ftype = &filetype    " Restore the previous state    let &filetype = old_filetype    let &eventignore = old_eventignore    return ftypeendfunction" Tlist_Get_Buffer_Filetype" Get the filetype for the specified bufferfunction! s:Tlist_Get_Buffer_Filetype(bnum)    if bufloaded(a:bnum)        " For loaded buffers, the 'filetype' is already determined        return getbufvar(a:bnum, '&filetype')    endif    " For unloaded buffers, if the 'filetype' option is set, return it    let ftype = getbufvar(a:bnum, '&filetype')    if ftype != ''        return ftype    endif    " Skip non-existent buffers    if !bufexists(a:bnum)        return ''    endif    " For buffers whose filetype is not yet determined, try to determine    " the filetype    let bname = bufname(a:bnum)    return s:Tlist_Get_Filetype(bname)endfunction" Tlist_Discard_TagInfo" Discard the stored tag information for a filefunction! s:Tlist_Discard_TagInfo(fidx)    call s:Tlist_Log_Msg('Tlist_Discard_TagInfo (' .                \ s:tlist_{a:fidx}_filename . ')')    let ftype = s:tlist_{a:fidx}_filetype    " Discard information about the tags defined in the file    let i = 1    while i <= s:tlist_{a:fidx}_tag_count        let fidx_i = 's:tlist_' . a:fidx . '_' . i        unlet! {fidx_i}_tag        unlet! {fidx_i}_tag_name        unlet! {fidx_i}_tag_type        unlet! {fidx_i}_ttype_idx        unlet! {fidx_i}_tag_proto        unlet! {fidx_i}_tag_searchpat        unlet! {fidx_i}_tag_linenum        let i = i + 1    endwhile    let s:tlist_{a:fidx}_tag_count = 0    " Discard information about tag type groups    let i = 1    while i <= s:tlist_{ftype}_count        let ttype = s:tlist_{ftype}_{i}_name        if s:tlist_{a:fidx}_{ttype} != ''            let fidx_ttype = 's:tlist_' . a:fidx . '_' . ttype            let {fidx_ttype} = ''            let {fidx_ttype}_offset = 0            let cnt = {fidx_ttype}_count            let {fidx_ttype}_count = 0            let j = 1            while j <= cnt                unlet! {fidx_ttype}_{j}                let j = j + 1            endwhile        endif        let i = i + 1    endwhile    " Discard the stored menu command also    let s:tlist_{a:fidx}_menu_cmd = ''endfunction" Tlist_Window_Update_Line_Offsets" Update the line offsets for tags for files starting from start_idx" and displayed in the taglist window by the specified offsetfunction! s:Tlist_Window_Update_Line_Offsets(start_idx, increment, offset)    let i = a:start_idx    while i < s:tlist_file_count        if s:tlist_{i}_visible            " Update the start/end line number only if the file is visible            if a:increment                let s:tlist_{i}_start = s:tlist_{i}_start + a:offset                let s:tlist_{i}_end = s:tlist_{i}_end + a:offset            else                let s:tlist_{i}_start = s:tlist_{i}_start - a:offset                let s:tlist_{i}_end = s:tlist_{i}_end - a:offset            endif        endif        let i = i + 1    endwhileendfunction" Tlist_Discard_FileInfo" Discard the stored information for a filefunction! s:Tlist_Discard_FileInfo(fidx)    call s:Tlist_Log_Msg('Tlist_Discard_FileInfo (' .                \ s:tlist_{a:fidx}_filename . ')')    call s:Tlist_Discard_TagInfo(a:fidx)    let ftype = s:tlist_{a:fidx}_filetype    let i = 1    while i <= s:tlist_{ftype}_count        let ttype = s:tlist_{ftype}_{i}_name        unlet! s:tlist_{a:fidx}_{ttype}        unlet! s:tlist_{a:fidx}_{ttype}_offset        unlet! s:tlist_{a:fidx}_{ttype}_count        let i = i + 1    endwhile    unlet! s:tlist_{a:fidx}_filename    unlet! s:tlist_{a:fidx}_sort_type    unlet! s:tlist_{a:fidx}_filetype    unlet! s:tlist_{a:fidx}_mtime    unlet! s:tlist_{a:fidx}_start    unlet! s:tlist_{a:fidx}_end    unlet! s:tlist_{a:fidx}_valid    unlet! s:tlist_{a:fidx}_visible    unlet! s:tlist_{a:fidx}_tag_count    unlet! s:tlist_{a:fidx}_menu_cmdendfunction" Tlist_Window_Remove_File_From_Display" Remove the specified file from displayfunction! s:Tlist_Window_Remove_File_From_Display(fidx)    call s:Tlist_Log_Msg('Tlist_Window_Remove_File_From_Display (' .                \ s:tlist_{a:fidx}_filename . ')')    " If the file is not visible then no need to remove it    if !s:tlist_{a:fidx}_visible        return    endif    " Remove the tags displayed for the specified file from the window    let start = s:tlist_{a:fidx}_start    " Include the empty line after the last line also    if g:Tlist_Compact_Format        let end = s:tlist_{a:fidx}_end    else        let end = s:tlist_{a:fidx}_end + 1    endif    setlocal modifiable    exe 'silent! ' . start . ',' . end . 'delete _'    setlocal nomodifiable    " Correct the start and end line offsets for all the files following    " this file, as the tags for this file are removed    call s:Tlist_Window_Update_Line_Offsets(a:fidx + 1, 0, end - start + 1)endfunction" Tlist_Remove_File" Remove the file under the cursor or the specified file index

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品视频中文字幕| 国产精品国产三级国产有无不卡| www国产精品av| 亚洲三级电影全部在线观看高清| 蜜乳av一区二区| 欧美性猛交xxxx乱大交退制版| 久久亚洲综合色一区二区三区| 亚洲精品视频观看| 成人av中文字幕| 久久亚洲一级片| 免费人成精品欧美精品| 一本久久综合亚洲鲁鲁五月天 | 精品剧情在线观看| 一区二区三区蜜桃网| 成人高清在线视频| 久久久蜜桃精品| 久久国产精品区| 欧美挠脚心视频网站| 亚洲欧美色一区| 成人国产精品视频| 国产精品欧美一级免费| 国产一区二区三区观看| 欧美成人午夜电影| 蜜桃一区二区三区四区| 欧美一卡二卡三卡| 日本一区中文字幕| 91精品免费在线| 日产国产欧美视频一区精品| 欧美日韩国产一级片| 蜜桃av一区二区三区| 欧美日韩国产123区| 亚洲高清不卡在线| 欧美精品一二三四| 日本成人中文字幕| 欧美mv日韩mv国产网站app| 奇米影视一区二区三区小说| 日韩一区二区三区电影在线观看| 日本欧美久久久久免费播放网| 欧美乱妇15p| 日韩激情在线观看| 日韩欧美黄色影院| 国产精品性做久久久久久| 久久久久久夜精品精品免费| 国产激情一区二区三区四区 | 国产精品成人网| 色婷婷av一区二区三区大白胸| 亚洲色图视频网站| 欧美性受xxxx| 蜜桃av噜噜一区| 欧美韩国日本一区| 日本高清视频一区二区| 午夜精品久久久| 亚洲精品一区二区三区在线观看 | 污片在线观看一区二区| 日韩女优av电影| 成人av手机在线观看| 夜夜精品浪潮av一区二区三区| 欧美精品第1页| 国产精品18久久久久久久久久久久 | 91麻豆国产精品久久| 国产精品久久久久影院色老大| 色综合久久久久| 欧美aaaaa成人免费观看视频| 久久网站最新地址| 色av综合在线| 国产在线视频一区二区三区| 亚洲天堂av老司机| 日韩一级片网站| 成人sese在线| 久久机这里只有精品| 1024成人网| 日韩欧美国产一区在线观看| 95精品视频在线| 麻豆精品国产91久久久久久| 最新国产精品久久精品| 欧美一级在线视频| 99re6这里只有精品视频在线观看| 亚洲电影在线播放| 国产精品久久久久久户外露出| 欧美性色黄大片| 成人黄色一级视频| 九一久久久久久| 午夜a成v人精品| 亚洲日本在线看| 久久精品亚洲一区二区三区浴池| 欧美三级一区二区| 国产 欧美在线| 美女视频黄久久| 亚洲国产精品视频| 亚洲三级理论片| 中文字幕欧美日本乱码一线二线| 91精品蜜臀在线一区尤物| 91视视频在线观看入口直接观看www | 欧美日韩视频一区二区| av在线不卡电影| 高清久久久久久| 精品一区二区在线播放| 丝袜诱惑制服诱惑色一区在线观看| 亚洲国产精品高清| 欧美精品一区二区三区蜜臀| 在线不卡中文字幕播放| 99麻豆久久久国产精品免费| 国产成人午夜99999| 激情综合色播激情啊| 奇米在线7777在线精品| 人人超碰91尤物精品国产| 亚洲国产人成综合网站| 亚洲一区二区三区视频在线| 亚洲精品视频在线看| 亚洲美女屁股眼交3| 亚洲欧洲日韩av| 亚洲欧美一区二区不卡| 亚洲精选在线视频| 一区二区三区四区在线播放| 有码一区二区三区| 亚洲线精品一区二区三区 | 99re这里都是精品| 97久久精品人人爽人人爽蜜臀| 成人影视亚洲图片在线| 成人不卡免费av| 91影视在线播放| 日本道免费精品一区二区三区| 欧洲亚洲精品在线| 中文字幕日本乱码精品影院| 日本一区二区三区dvd视频在线| 久久午夜免费电影| 中文字幕一区二区三区不卡在线 | hitomi一区二区三区精品| 成人综合婷婷国产精品久久蜜臀| 成人免费毛片片v| 9色porny自拍视频一区二区| 91成人在线精品| 欧美一区二区在线播放| 26uuuu精品一区二区| 中文字幕av在线一区二区三区| 中文字幕一区二区三区在线播放| 伊人色综合久久天天| 日韩黄色一级片| 国产精品69毛片高清亚洲| 色综合久久久久综合99| 欧美一区二区三区免费观看视频| 2020国产精品自拍| 综合久久综合久久| 日韩一区精品视频| 国产不卡视频一区| 欧美三区在线观看| 26uuu精品一区二区在线观看| 国产精品视频一区二区三区不卡| 一区二区三区免费在线观看| 三级欧美韩日大片在线看| 国产麻豆精品在线| 欧美中文字幕不卡| 久久精品视频在线看| 一区二区高清免费观看影视大全| 精品制服美女丁香| 色哟哟一区二区| 精品av久久707| 亚洲一区二区三区三| 国产精品自拍网站| 欧美情侣在线播放| 中文字幕一区二区三区在线播放| 免费在线观看视频一区| 色哟哟国产精品免费观看| 欧美成人三级电影在线| 亚洲制服丝袜在线| 国产成人精品亚洲777人妖| 欧美精品亚洲二区| 亚洲婷婷综合久久一本伊一区 | 精品国一区二区三区| 一区二区三区四区在线播放 | 日韩国产精品久久久久久亚洲| 成人激情免费视频| 2021国产精品久久精品| 日韩主播视频在线| 日本福利一区二区| 中文子幕无线码一区tr| 久久99精品久久久久| 欧美日韩国产片| 亚洲综合色婷婷| 99精品国产一区二区三区不卡| www一区二区| 久久97超碰色| 91精品国产综合久久国产大片| 亚洲精品v日韩精品| 成人激情动漫在线观看| 国产亚洲一二三区| 久草在线在线精品观看| 91精品国产高清一区二区三区| 亚洲第一主播视频| 欧美日韩国产乱码电影| 亚洲一区二区精品视频| 色天天综合色天天久久| 亚洲乱码一区二区三区在线观看| av影院午夜一区| 亚洲日本va在线观看| 91亚洲精品久久久蜜桃网站 | 99精品欧美一区| 国产精品污www在线观看| 成人精品电影在线观看| 国产精品无人区|