Skip to content

Latest commit

 

History

History
441 lines (368 loc) · 18.7 KB

CHANGELOG.md

File metadata and controls

441 lines (368 loc) · 18.7 KB

v1.19 (2018-12-7)

BREAKING CHANGES:

  • <Up> and <Down> is changed. issue #236
    from: navigate the result list.
    to: recall last/next input pattern from history.

Feature enhancements:

  • Feature #57: Add support for rg(Leaderf rg)
    For more details: Leaderf rg -h
  • Feature #130: Add Changelog file.
  • Feature #208: Add support for input file list.
    Add --file option for Leaderf file.
  • Feature #213: Add support for input history.
    Use <UP> and <Down> to loop the input history.
  • Add one-dark colorscheme.
  • Add --nowrap option for LeaderF.

Bug fixes:

v1.18 (2018-10-7)

Feature enhancements:

  • Add support for and mode.
    In fuzzy mode, using ' '(space) as the and operator(g:Lf_AndDelimiter), the candidate lines should fuzzily match all the substrings separated by space.

    e.g., input abc def gh,it can match the following strings:

    ...a.b.c...d.e.f...g.h...
    ...a.b.c...g.h...d.e.f...
    ...a.d..e.g.b.c...h..f...
    ...gh...def...abc...
    

v1.17 (2018-10-3)

Feature enhancements:

  • Add a new thread to read output of AsyncExecutor.
  • Feature #222: Allow for bottom-up ordering of results.

Bug fixes:

  • Fix a critical latent bug introduced by PR #131.
  • BUG #223: NameOnly bug when searching directories.
  • BUG #224
  • BUG #225: install.sh failed on Windows10(msys64).

v1.16 (2018-9-20)

BREAKING CHANGES:

  • <Esc> in normal mode does not quit LeaderF any more, because there is a bug in vim that all the function keys can not work correctly if <Esc> is mapped.

Feature enhancements:

  • Optimize the fuzzy matching algorithm.
  • Add fuzzyEngine to fully take advantage of the cpu cores.
  • Feature #202: Add g:Lf_CtagsFuncOpts.
  • Feature #205: Allow LeaderF to work with Git submodules. Add g:Lf_RecurseSubmodules.
  • Add "need_exit": funcref (line, arguments)
  • Feature #194 #217: Add '--no-ignore'.

Bug fixes:

  • BUG #192: Swapping mapping of <Tab> and <CR> doesn't work in commandmap.
  • Fix a huge bug.
  • BUG #197
  • Don't support ag on Windows because of issue #190 and #198.
  • BUG #206: No module named leaderf.
  • BUG #209
  • BUG #210: Undefined variable: g:Lf_MruCacheFileName when calling LeaderfMru.
  • BUG #218: Add if python is present in system.

v1.15 (2018-7-13)

Feature enhancements:

  • Optimize the fuzzy matching algorithm.

Bug fixes:

  • There is a bug if let g:Lf_WorkingDirectoryMode = "Ac"
  • BUG #138: DeprecationWarning with python 3.7 on Windows 10.
  • BUG #176: Slow start in neovim.
  • BUG #180: Leaderf ignore Lf_WildIgnore.
  • BUG #181: Search dir is same when two tabpage's work dir is different.
  • A bug because of neovim/neovim#8690.

v1.14 (2018-6-19)

Feature enhancements:

  • Beautify the display of bufTag.

  • Feature #144: Add the capability to search everything. Support writing extensions in vimscript.
    Add a universal command line interface for LeaderF.

    usage: Leaderf[!] [-h] [--reverse] [--stayOpen] [--input INPUT | --cword]
                      [--top | --bottom | --left | --right | --belowright | --aboveleft | --fullScreen]
                      [--nameOnly | --fullPath | --fuzzy | --regex]
                      {file,tag,function,mru,searchHistory,cmdHistory,help,line,colorscheme,self,bufTag,buffer}
                      ...
    
    optional arguments:
      -h, --help            show this help message and exit
      --reverse             show results in bottom-up order
      --stayOpen            don't quit LeaderF after accepting an entry
      --input INPUT         specifies INPUT as the pattern inputted in advance
      --cword               current word under cursor is inputted in advance
      --top                 the LeaderF window is at the top of the screen
      --bottom              the LeaderF window is at the bottom of the screen
      --left                the LeaderF window is at the left of the screen
      --right               the LeaderF window is at the right of the screen
      --belowright          the LeaderF window is at the belowright of the screen
      --aboveleft           the LeaderF window is at the aboveleft of the screen
      --fullScreen          the LeaderF window takes up the full screen
      --nameOnly            LeaderF is in NameOnly mode by default
      --fullPath            LeaderF is in FullPath mode by default
      --fuzzy               LeaderF is in Fuzzy mode by default
      --regex               LeaderF is in Regex mode by default
    
    subcommands:
    
      {file,tag,function,mru,searchHistory,cmdHistory,help,line,colorscheme,self,bufTag,buffer}
        file                search files
        tag                 navigate tags using the tags file
        function            navigate functions or methods in the buffer
        mru                 search most recently used files
        searchHistory       execute the search command in the history
        cmdHistory          execute the command in the history
        help                navigate the help tags
        line                search a line in the buffer
        colorscheme         switch between colorschemes
        self                execute the commands of itself
        bufTag              navigate tags in the buffer
        buffer              search buffers
    
    If [!] is given, enter normal mode directly.
    

    use :Leaderf <subcommand> -h to get specific help of subcommand, e.g., :Leaderf mru -h.

  • Feature #160: Search result window auto closed after choose a item add "--stayOpen".

  • Feature #162: Add <PageUp> and <PageDown> support.

Bug fixes:

  • BUG #164: LeaderfLine can't work after syntax off
  • BUG #165: LeaderfLine have UnicodeEncodeError in some file by use vim binary mode.
  • Fix an issue that Popen.poll always returns None.
  • BUG #175

v1.13 (2018-5-17)

BREAKING CHANGES:

  • <ESC> is changed into 'quit from LeaderF', use <Tab> as the key 'switch to normal mode'.

Feature enhancements:

  • Add g:Lf_StlSeparator.font.
  • Feature #105: List all buffers in current tab. Add LeaderfTabBuffer and LeaderfTabBufferAll.
  • Feature #127: Add new option g:Lf_HideHelp to hide "Press F1 for help".
  • Add ISSUE_TEMPLATE.md
  • Feature #143: Add bang support for LeadfFunction, LeaderfBufTag to enter normal mode directly. (Add support for LeaderfFunction!, LeaderfBufTag!)
  • Add g:Lf_Debug_Cmd to help debug issue.
  • LeaderfFunction: Support Rust and OCaml
  • Add command p(preview the result) in normal mode.
  • Add g:Lf_ShowHidden.
  • Feature #149: Add g:Lf_MruWildIgnore.
  • Feature #158: Use <Tab> to go back to "input" mode.

Bug fixes:

  • BUG #94: Utf-8 error.
  • BUG #95: LeaderfBufferAll doesn't list all buffers.
  • BUG #97: Long startup time when using NeoVim.
  • BUG #98: LeaderfFile does not work properly when using with lcd.
  • Update the installation script.
  • BUG #102: Using LeaderF while having a quickfix window open is pushing splits up.
  • BUG #103: let g:Lf_StlSeparator = { 'left': '', 'right': '' } if encoding is not UTF-8.
  • BUG #121: :LeaderfFile ~ outputs "No content!"
  • Fix a bug open more than 10 buffers, then close some buffers until number of buffers less than 10, launch LeaderfBuffer, something goes wrong
  • Fix hang when the instance buffer is wiped
  • BUG #129: Error: Key not present in Dictionary: font.
  • BUG #132: Error after reload vimrc.
  • BUG #137: Python os.chdir() takes no effect for NeoVim(neovim/neovim#8336). Using vim.chdir as workaround.
  • BUG #141: Absurd height of the LeaderF window after resizing GVim while LeaderF is opening.
  • BUG #147: Don't show file name for current buffer.
  • BUG #155: Add augroup for autocmds.
  • Fix an issue can not change directory correctly if buffer name has non-ascii characters.
  • BUG #155: Change VimLeave to VimLeavePre.
  • BUG #156: Error reported if encoding missing in tempfile.NamedTemporaryFile.
  • BUG #157: Keep selection when changing mode.
  • BUG #159: Error occurs if buffer list empty.

v1.12 (2017-11-11)

BREAKING CHANGES:

  • Change the default value of g:Lf_WildIgnore

    From

    let g:Lf_WildIgnore = {
              \ 'dir': ['.svn','.git','.hg'],
              \ 'file': ['*.sw?','~$*','*.bak','*.exe','*.o','*.so','*.py[co]']
              \}

    to

    let g:Lf_WildIgnore = {
              \ 'dir': ['.svn','.git','.hg'],
              \ 'file': []
              \}

Feature enhancements:

  • Refactor the code to make LeaderF extensible.

  • Better asynchronous experience.

  • Add helpExpl.

  • Add colorschemeExpl.

  • Optimize the fuzzy matching algorithm.

  • Make history editable.

  • Feature #43: Add g:Lf_RootMarkers and g:Lf_WorkingDirectoryMode.

  • Feature #54: Change the keys in normal mode.

  • Add fuzzy matching algorithm written in C.

  • Feature #62: Add g:Lf_RememberLastSearch to remember last search.

  • Set the default color of light background.

  • Feature #64: Add g:Lf_UseCache.

  • Add window position aboveleft and belowright.

  • Add support for *.pyw file

  • Feature #83: Add the following commands.

    Command Description
    :LeaderfFilePattern <pattern> like LeaderfFile, with pattern inputted in advance
    :LeaderfFileCword like LeaderfFile, with word under the cursor as pattern inputted in advance
    :LeaderfBufferPattern <pattern> like LeaderfBuffer, with pattern inputted in advance
    :LeaderfBufferCword like LeaderfBuffer, with word under the cursor as pattern inputted in advance
    :LeaderfMruPattern <pattern> like LeaderfMru, with pattern inputted in advance
    :LeaderfMruCword like LeaderfMru, with word under the cursor as pattern inputted in advance
    :LeaderfMruCwdPattern <pattern> like LeaderfMruCwd, with pattern inputted in advance
    :LeaderfMruCwdCword like LeaderfMruCwd, with word under the cursor as pattern inputted in advance
    :LeaderfTagPattern <pattern> like LeaderfTag, with pattern inputted in advance
    :LeaderfTagCword like LeaderfTag, with word under the cursor as pattern inputted in advance
    :LeaderfBufTagPattern <pattern> like LeaderfBufTag, with pattern inputted in advance
    :LeaderfBufTagCword like LeaderfBufTag, with word under the cursor as pattern inputted in advance
    :LeaderfBufTagAllPattern <pattern> like LeaderfBufTagAll, with pattern inputted in advance
    :LeaderfBufTagAllCword like LeaderfBufTagAll, with word under the cursor as pattern inputted in advance
    :LeaderfFunctionPattern <pattern> like LeaderfFunction, with pattern inputted in advance
    :LeaderfFunctionCword like LeaderfFunction, with word under the cursor as pattern inputted in advance
    :LeaderfFunctionAllPattern <pattern> like LeaderfFunctionAll, with pattern inputted in advance
    :LeaderfFunctionAllCword like LeaderfFunctionAll, with word under the cursor as pattern inputted in advance
    :LeaderfLinePattern <pattern> like LeaderfLine, with pattern inputted in advance
    :LeaderfLineCword like LeaderfLine, with word under the cursor as pattern inputted in advance
    :LeaderfLineAllPattern <pattern> like LeaderfLineAll, with pattern inputted in advance
    :LeaderfLineAllCword like LeaderfLineAll, with word under the cursor as pattern inputted in advance
    :LeaderfHelpPattern <pattern> like LeaderfHelp, with pattern inputted in advance
    :LeaderfHelpCword like LeaderfHelp, with word under the cursor as pattern inputted in advance

Bug fixes:

  • Fix issue that git can not list untracked files.
  • Suppress error messages of rg.
  • Fix Esc delay issue.
  • BUG #48: Typing in the prompt is slow for Macvim.
  • BUG #53
  • BUG #56: "NameError: global name 'FileNotFoundError' is not defined".
  • BUG #59: Sometimes g:Lf_CommandMap did not take effect.
  • BUG #61: :LeaderfHistorySearch error.
  • Refactor the highlight functions fix a crash when text = 'shF一.txt' pattern = 'sf' solution: pattern_mask[tolower(c)] => pattern_mask[(uint8_t)tolower(c)]
  • Fix an issue that if set guicursor=a:block-blinkon0, the cursor disappears after launching and quitting LeaderF
  • BUG #81: Error when searching using ;.
  • BUG #82: Can't open file in directory with + as first character of directory name.
  • BUG #88: Suppress the error message.
  • BUG #89

v1.11 (2017-7-6)

Feature enhancements:

  • FEATURE #35: Add async support.
  • Add preview support for bufTagExpl
  • Add preview support for functionExpl
  • Make preview available in normal mode
  • Add SelfExpl

Bug fixes:

  • Minor bug fixed.

v1.10 (2017-6-16)

Only supports vim7.4.330+ from this version release.

BREAKING CHANGES:

  • Change the default value of g:Lf_PreviewCode from 1 to 0.

Feature enhancements:

  • Enhance the UI of bufExplorer and mruExplorer.
  • Replace vim.command with lfCmd, replace vim.eval with lfEval.
  • Beautify the statusline.
  • FEATURE #8: Add navigating tags support.
  • Add navigating tags of opening buffers.
  • Add "autocmd BufWipeout" to clear useless cache.
  • Add LeaderfFunction and LeaderfFunctionAll.
  • Add LeaderfLine and LeaderfLineAll.
  • Add LeaderfHistoryCmd and LeaderfHistorySearch.
  • A little optimization of fuzzy match algorithm.
  • Add async support and execute command in parallel
  • Add support for external command use 'rg', 'pt', 'ag', 'find' by default
  • Add g:Lf_DefaultExternalTool, g:Lf_UseVersionControlTool

Bug fixes:

  • Fix an issue that highlight is wrong when g:Lf_ShowRelativePath is 0 e.g. c:\abc.txt
  • Fix an issue that it will get stuck if select too many files
  • Fix SpaceVim/SpaceVim#52
  • 'modifiable' attribute must have a Boolean value
  • BUG #41: High cup usage.
  • BUG #44: Install error on OSX.
  • Fix the issue that can not open file, the issue is caused by 47d340a.
  • BUG #46: <leader> is not always ','.
  • Some workarounds for neovim.
  • Do not show "Type :quit to exit Nvim"
  • BUG #48: Typing in the prompt is slow.
  • Fix an issue that can not terminate the python subprocess launched with shell=True.
  • BUG vim #1738
  • subprocess 'shell=False' can not use pipe e.g. find . -type f | sed 's#\./##'
  • fix a bug that if g:Lf_WildIgnore has '.' in it
  • BUG #50

v1.01 (2016-12-16)

This is the last version release that supports vim7.3.

  • Optimize the fuzzy matching algorithm.
  • Fix many bugs.
  • Change license to Apache License, Version 2.0.

v1.00 (2013-12-29)

Initial commit.