fzf by ruby

*/-->

fzf by ruby

2 简介

软件通过匿名管道和grep扩展了bash的功能,将bash的自动补全功能由渐进式增量补全增强为正则表达式
搜索式补全,并配以图形选择界面.当然,正则表达式的功能有所削减但也丝毫不影响使用.

3 使用

可以在bash下利用特殊触发字符,或在vim中通过命令FZF使用,也可以用在shell脚本中(fzf::run)

3.1 vim插件配置

  1. 将fzf的根目录加入到vim的运行时库文件夹变量中
  2. 在命令中使用FZF 或FZF目录就可以

3.2 一般用法

  1. 使用选项-x指定使用扩展匹配模式,可以使用简单的模式匹配

    ^match match$ 'match !'match !match
    match在开头 match在结尾 包含match 不包含match 不匹配
  2. 使用 -m 选项可以使用多行同时选中模式,可以使用tab或 S-tab 键选中多个匹配项
  3. 目录及目录名补全
    1: vim **<TAB>
    2: vim ../**<TAB>
    3: vim /usr/bin**<TAB>
  4. 进程号补全
    1: kill -9 <TAB>
    
  5. 主机和环境变量补全
    1: ssh **<TAB>
    2: telnet **<TAB>
    3: unset **<TAB>
    4: export **<TAB>
    5: unalias **<TAB>

3.3 脚本用法

1: #使用函数fzf#run([options])来
2: #返回一个选中文件的列表
3: # echo fzf#run()

4 BUGS

  1. ruby2.1使用1.8的gem软件所以安装好curse仍然提示
    找不到curse,最后只能手动修改了fzf可执行文件中的
    命令参数.由于这个原因在vim中使用的话需要在fzf.vim中
    修改相关参数,如果要使用 C-T 还需要在.fzf.bash中修改
    相关的参数
  2. 在vim中使用FZF命令时,会导致vim死循环

Author: mashomee

Created: 2015-02-11 Wed 12:05

Emacs 24.4.1 (Org mode 8.2.10)

Validate

fzf by ruby的更多相关文章

  1. 命令行上的narrowing(随着输入逐步减少备选项)工具

    前面在介绍zsh的时候,说过它的补全用来起比bash的Tab补全方便多了,在有多个备选项是你只要用光标键来挑选就是了,而不是全列出来提示你再多输入几个字符.而Emacs的anything / helm ...

  2. 模糊搜索神器fzf

    前言 fzf是目前最快的fuzzy finder.使用golang编写.结合其他工具(比如ag和fasd)可以完成非常多的工作. 让你通过输入模糊的关键词就可以定位文件或文件夹.当你的思维也习惯了模糊 ...

  3. 安装cocoapods遇到两大坑-Ruby版本升级和Podfile的配置

    今天安装cocoapods #移除原有ruby源 $ gem sources --remove https://rubygems.org/ #使用可用的淘宝网 $ gem sources -a htt ...

  4. Unable to download data from http://ruby.taobao.org/ & don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.

    安装cocoapods,记录两个问题! 1.镜像已经替换成了 http://ruby.taobao.org/, 还是不能不能安装cocoapods, 报错:Unable to download dat ...

  5. 安装了ruby后怎么安装sass

    在命令行中输入 ruby -v 查看版本号 先移除默认的https://rubygems.org源,命令为gem sources --remove https://rubygems.org/,按回车 ...

  6. ruby 基础知识(一)

    突然今天发现一大神的博客:http://www.cnblogs.com/jackluo/archive/2013/01/22/2871655.html    相信初学者会受益颇多 ruby  参考文档 ...

  7. ruby 基础知识(二)

    ruby  中的动态方法 http://singleant.iteye.com/blog/1680382 Rails 大量使用了符号(symbol).符号看上去很像变量名,不过以冒号作为前缀.符号的例 ...

  8. Ruby安装Scss

    Ruby安装Scss 引言 已经许久不写HTML了,今天有点以前的东西要改.但是刚装的Windows10,已经没有以前的Web开发环境了.只好重新安装. 结果Webstorm装好后配置Scss出现错误 ...

  9. The Safe Navigation Operator (&.) in Ruby

    The most interesting addition to Ruby 2.3.0 is the Safe Navigation Operator(&.). A similar opera ...

随机推荐

  1. Ubuntu Server 设置PPTP客户端连接

    安装PPTP客户端 apt-get install pptp-linux 设置连接账号信息 sudo vim /etc/ppp/chap-secrets 其中$login_name是登录名:$pass ...

  2. 项目游戏开发日记 No.0x000005

    14软二杨近星(2014551622) 还有一周就要交项目了, 看着周围的人也都忙碌了起来, 看着大部分人的项目都已经初具容貌, 我们团队里面也搞得人心惶惶, 一来是, 时间不多了, 还有很多事情要做 ...

  3. Boolean()值为false的五个特殊值

    在if.while等需要判断条件时,会调用函数Boolean()对判断条件进行隐式转换,而只有五个特殊值才会返回false 这五个值是:undefined, null, "", 0 ...

  4. Ubuntu16.04下安装VS Code

    在Ubuntu下面安装Visual Studio Code sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make sudo apt-get up ...

  5. [LeetCode] Implement Queue using Stacks 用栈来实现队列

    Implement the following operations of a queue using stacks. push(x) -- Push element x to the back of ...

  6. [LeetCode] Binary Tree Inorder Traversal 二叉树的中序遍历

    Given a binary tree, return the inorder traversal of its nodes' values. For example:Given binary tre ...

  7. [LeetCode] Letter Combinations of a Phone Number 电话号码的字母组合

    Given a digit string, return all possible letter combinations that the number could represent. A map ...

  8. Java连接远程Redis

    redis-server &  //后台启动redis redis-cli //使用redis   打开redis.conf文件在NETWORK部分有说明   /usr/local/src   ...

  9. 【BZOJ 3754】Tree之最小方差树

    http://www.lydsy.com/JudgeOnline/problem.php?id=3754 核心思想:暴力枚举所有可能的平均数,对每个平均数排序后Kruskal. 正确的答案一定是最小的 ...

  10. ubuntu下面更改用户名的方法

    在装HADOOP 系统时候不小心, 没有将三台机器的用户名设置为一致的用户名,导致后面发生很多麻烦.下面总结一下UBUNTU中改用户名的方法. 1.  先给系统添加一个super用户,我们用这个用户名 ...