简介

当使用git, find等工具时,一般需要进一步打开文件或跳转目录。

通常的做法是使用鼠标复制黏贴,或者手工输入。

PathMarker提供一种快速通过标号,编辑相关文件,跳转相关目录的方法,提高效率。

效果演示

安装使用

最新的安装说明请参考 https://github.com/zqb-all/PathMarker

下载源码

git clone https://github.com/zqb-all/PathMarker.git
cd PathMarker/
git submodule init
git submodule update

安装

将PathMarker.py添加到PATH中,在.bashrc中source辅助脚本即可。

ln -s "$(pwd)/PathMarker.py" /usr/local/bin/PathMarker.py
echo "source $(pwd)/PathMarker_help.sh" >> ~/.bashrc
source ~/.bashrc

使用

使用t代替git,即可将git输出中的文件进行标号。例如

t status
t show --stat

使用“v 标号”,即可用vim打开对应文件,例如

v 1

使用ffd代替fd或find查找文件,即可将查找结果标号。例如

ffd  src

使用"fcd 标号“,即可跳转到对应目录。如果标号是文件,则跳转到该文件所在目录,例如

fcd 1

实现说明

背景

之前有一篇说明为什么做这个工具

https://www.cnblogs.com/zqb-all/p/9610792.html

实现

  • 设置标号

对于git, find 等会输出文件/目录的命令,通过封装函数,将输出先送给fpp匹配文件名,进行标号,再输出。

其中匹配成功的,会保存到~/.PathMarker文件中

  • 使用标号

对于vim, cd 等需要使用文件/目录的命令,通过封装函数,将参数的标号,替换为~/.PathMarker中的路径名

扩展

对于其他常用命令,可以同样在PathMarker_help.sh中封装。

如果封装的函数名跟其他工具/alias冲突,也可在PathMarker_help.sh中自行修改。

本文链接

https://www.cnblogs.com/zqb-all/p/11527488.html

PathMarker:命令行快速编辑跳转工具(配合git,find等)的更多相关文章

  1. shell命令行快速编辑命令

    ctrl r:命令行出现 reverse-i-search,输入字符将在输入历史中匹配命令 ctrl p:向前翻看历史 ctrl n:向后翻看历史 ctrl a:命令行首 ctrl e:命令行尾 ct ...

  2. 分布式进阶(十) linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel

    linux命令行下载文件以及常用工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Li ...

  3. 从命令行模式运行Windows管理工具。

    从命令行模式运行Windows管理工具. 分类: Play Windows 2004-08-06 16:39 6076人阅读 评论(3) 收藏 举报 1.可以直接在开始-〉运行里面输入的管理工具: 文 ...

  4. mysql 命令行快速将数据库转移到另一个服务器中(数据库备份还原)

    想将A服务器中的数据库快速转移到B服务器中,一般是先从A服务器中备份下来,下载备份数据,还原到B服务器中.使用phpMyAdmin备份和还原针对数据量很小的情况下很方便,数据量大的话很容易中断失败. ...

  5. 一个使用命令行编译Android项目的工具类

    一个使用命令行编译Android项目的工具类 简单介绍 编译apk项目须要使用的几个工具,基本都在sdk中,它们各自是(Windows系统): 1.aapt.exe 资源打包工具 2.android. ...

  6. win32下的命令行集合 (最优秀的工具)

    HIDECMD.rar下载:以隐藏窗口的方式运行批处理. curl.exe 7.12.2 文件传输 593,670 curl是一个利用URL语法在命令行方式下工作的的文件传输工具 E6ED60CDA8 ...

  7. Mac 在命令行快速切换目录 mark

    转自: http://www.ccvita.com/520.html ,略修改. 每天在命令行下,一大部分的工作都是一遍又一遍的输入 cd ~/some/very/deep/often-used/di ...

  8. 【PHP实现】高效使用印象笔记之命令行快速保存

    一.功能 脑袋中冒出一个想法时,命令行(Terminal)中输入一条命令快速保存到Evernote. 注:这里适用于保存简短的内容 不喜欢听絮叨的,直接文末找Github地址吧. 二.想法来源 一直使 ...

  9. [Shell学习笔记] 命令行下的高级网络工具cURL命令

    原文: http://www.1987.name/365.html Linux curl命令是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯 ...

随机推荐

  1. Spring 集成Kafka(完整版)

    前面的文章我们已经完成了Kafka基于Zookeeper的集群的搭建了.Kafka集群搭建请点我.记过几天的研究已经实现Spring的集成了.本文重点 jar包准备 集成是基于spring-integ ...

  2. Java8 CompletableFuture 编程

    一.简介  所谓异步调用其实就是实现一个无需等待被调用函数的返回值而让操作继续运行的方法.在 Java 语言中,简单的讲就是另启一个线程来完成调用中的部分计算,使调用继续运行或返回,而不需要等待计算结 ...

  3. netty源码解解析(4.0)-17 ChannelHandler: IdleStateHandler实现

    io.netty.handler.timeout.IdleStateHandler功能是监测Channel上read, write或者这两者的空闲状态.当Channel超过了指定的空闲时间时,这个Ha ...

  4. golang学习(1)---快速hello world

    很多著名的计算机语言都是一两个人在业余时间捣鼓出来的,但是Go语言是由Google的团队打造的.可能一些基础的知识点我不会细讲,因为这个时代你真的得快速学习,才能适应发展. 来看看go的hello, ...

  5. c# oracle 数据库连接以及参数化查询

    private string OracleSearchDemo(string cadqueueId) { string address = null; using (OracleConnection ...

  6. 从SpringBoot构建十万博文聊聊高并发文章浏览量设计

    前言 在经历了,缓存.限流.布隆穿透等等一系列加强功能,十万博客基本算是成型,网站上线以后也加入了百度统计来见证十万+ 的整个过程. 但是百度统计并不能对每篇博文进行详细的浏览量统计,如果做一些热点博 ...

  7. net core Webapi基础工程搭建(七)——小试AOP及常规测试_Part 1

    目录 前言 拦截器 异常拦截器 测试结果 身份验证拦截器 测试 小结 补充 2019-07-31 前言 一天天不知道怎么过的,但确实挺忙,事赶事不带停那种,让我感觉跟在流水线干活一样,忙活的事差不多了 ...

  8. Python 列表深浅复制详解

    在文章<Python 数据类型>里边介绍了列表的用法,其中列表有个 copy() 方法,意思是复制一个相同的列表.例如 names = ["小明", "小红& ...

  9. mybatisX插件的使用

    MybatisX 插件 快捷         mapper方法生成对应-----> mapper.xml中 :ALT +enter

  10. 【持续集成】GitLab CI + Docker 实现持续集成

    GitLab CI + Docker 实现持续集成 一.持续集成(Continuous Integration, CI)的基本概念 概述 在传统软件的开发中,代码的集成工作通常是在所有人都将工作完成后 ...