Oh My Fish! 让你的 Shell 漂亮起来
安装 Oh My Fish
安装 omf 很简单。你要做的只是在你的 Fish shell 中运行下面的命令。
curl -L https://get.oh-my.fish | fish
一旦安装完成,你将看到提示符已经自动更改,如上图所所示。另外,你会注意到当前时间在 shell 窗口的右边。
就是这样。让我们继续并调整我们的 fish shell。
现在,让我们将 Fish Shell 变漂亮
列出所有的安装包,运行:
omf list
这条命令将显示已安装的主题和插件。请注意,包可以是主题或插件。安装包意味着安装主题和插件。
所有官方和社区支持的包(包括插件和主题)都托管在 Omf 主仓库 中。在这个主仓库中,你可以看到大量的仓库,其中包含大量的插件和主题。
现在让我们看一下可用的和已安装的主题列表。为此,运行:
omf theme
如你所见,我们只有一个已安装的主题,这是默认的,但是还有大量可用的主题。在安装之前,你在这里[3]可以预览所有可用的主题。这个页面包含了所有的主题细节,特性,每个主题的截图示例,以及哪个主题适合谁。
安装一个新主题
请允许我安装一个主题,例如 clearance 主题,这是一个极简的 fish shell 主题,供那些经常使用 git 的人使用。为此,运行:
omf install clearance
如上图所示,在安装新主题后,Fish shell 的提示立即发生了变化。
让我浏览一下系统文件,看看它如何显示。
看起来不错!这是一个非常简单的主题。它将当前工作目录,文件夹和文件以不同的颜色区分开来。你可能会注意到,它还会在提示符的顶部显示当前工作目录。现在,clearance 是我的默认主题。
改变主题
就像我之前说的一样,这个主题在安装后被立即应用。如果你有多个主题,你可以使用以下命令切换到另一个不同的主题:
omf theme <theme-name>
例如:
omf theme agnoster
现在我正在使用 agnoster 主题。 agnoster 就是这样改变了我 shell 的外观。
安装插件
例如,我想安装一个天气插件。为此,只要运行:
omf install weather
天气插件依赖于 jq[4](LCTT 译注:jq 是一个轻量级且灵活的命令行JSON处理器)。所以,你可能也需要安装 jq。它通常在 Linux 发行版的默认仓库中存在。因此,你可以使用默认的包管理器来安装它。例如,以下命令将在 Arch Linux 及其衍生版中安装 jq。
sudo pacman -S jq
现在,在 Fish shell 中使用以下命令查看天气:
weather
寻找包
要搜索主题或插件,请执行以下操作:
omf search <search_string>
例如:
omf search nvm
为了限制搜索的主题范围,使用 -t 选项。
omf search -t chain
这条命令只会搜索主题名字中包含 “chain” 的主题。
为了限制搜索的插件范围,使用 -p 选项。
omf search -p emacs
更新包
要仅更新核心功能(omf 本身),运行:
omf update omf
如果是最新的,你会看到以下输出:
Oh My Fish is up to date.You are now using Oh My Fish version 6.Updating https://github.com/oh-my-fish/packages-main master... Done!
更新所有包:
omf update
要有选择地更新软件包,只需包含如下所示的包名称:
omf update clearance agnoster
显示关于包的信息
当你想知道关于一个主题或插件的信息时,使用以下命令:
omf describe clearance
这条命令将显示关于包的信息。
Package: clearanceDescription: A minimalist fish shell theme for people who use gitRepository: https://github.com/oh-my-fish/theme-clearanceMaintainer:
移除包
移除一个包,例如 emacs,运行:
omf remove emacs
管理仓库
默认情况下,当你安装了 Oh My Fish 时,会自动添加官方仓库。这个仓库包含了开发人员构建的所有包。要管理用户安装的仓库包,使用这条命令:
omf repositories [list|add|remove]
列出所有安装的仓库,运行:
omf repositories list
添加一个仓库:
omf repositories add <URL>
例如:
omf repositories add https://github.com/ostechnix/theme-sk
移除一个仓库:
omf repositories remove <repository-name>
Oh My Fish 排错
如果出现了错误,omf 足够聪明来帮助你,它可以列出解决问题的方法。例如,我安装了 clearance 包,得到了文件冲突的错误。幸运的是,在继续之前,Oh My Fish 会指示我该怎么做。因此,我只是简单地运行了以下代码来了解如何修正错误。
omf doctor
通过运行以下命令来解决错误:
rm ~/.config/fish/functions/fish_prompt.fish
无论你何时遇到问题,只要运行 omf doctor 命令,并尝试所有的建议方法。
获取帮助
显示帮助部分,运行:
omf -h
或者
omf --help
卸载 Oh My Fish
卸载 Oh My Fish,运行以下命令:
omf destroy
继续前进,开始自定义你的 fish shell。获取更多细节,请参考项目的 GitHub 页面。
Oh My Fish! 让你的 Shell 漂亮起来的更多相关文章
- linux工具————fish shell
1.说明 fish is a fully-equipped command line shell (like bash or zsh) that is smart and user-friendly. ...
- Mac开发必备工具(三)—— Fish shell
Fish shell 简介 fish 可以根据输入自动匹配历史命令.它的一大特点是开箱即用,没有zsh那些繁琐的配置.官网:http://www.fishshell.com/. 安装与配置 在终端里使 ...
- Unix Shells: Bash, Fish, Ksh, Tcsh, Zsh
Hyperpolyglot Unix Shells: Bash, Fish, Ksh, Tcsh, Zsh grammar | quoting and escaping | charactersvar ...
- 修改linux 默认SHELL
首先你得查看可以用的shell: 1.命令:chsh -l ,结果如下: /bin/sh/bin/bash/sbin/nologin/usr/bin/sh/usr/bin/bash/usr/sbin/ ...
- [sh]shell命令缩写
命令缩写: ls:list(列出目录内容) cd:Change Directory(改变目录) su:switch user 切换用户 rpm:redhat package manager 红帽子打包 ...
- BASH 进阶(转载防丢)
基础 学习 Bash 的基础知识.具体来说,输入 man bash 并至少全文浏览一遍; 它很简单并且不长.其他的 shell 可能很好用,但 Bash 功能强大且几乎所有情况下都是可用的 ( 只学习 ...
- Mac命令行
参考:http://www.cnblogs.com/-ios/p/4949923.html 必读 涵盖范围: 这篇文章对刚接触命令行的新手以及具有命令行使用经验的人都有用处.本文致力于做到覆盖面广(尽 ...
- Python | Pipenv官方推荐的python包管理工具
原文地址:https://cloud.tencent.com/developer/article/1355672 Pipenv - 官方推荐的的python包管理工具. Pipenv是一款旨在将所有包 ...
- linuxtoy.org资源
https://linuxtoy.org/archives.html Archives 在 Android 系统上安装 Debian Linux 与 R (2015-07-14) Pinos:实现摄像 ...
随机推荐
- 160420、zTree获取所有选中节点数据
<!DOCTYPE html><HTML><HEAD> <TITLE> ZTREE DEMO - Standard Data </TITLE> ...
- 160406、mybatis批量删除
<deleteid="deleteCTQ" parameterType="java.lang.String"> DELETE FROM sqm_pr ...
- 原生封装的ajax
原生封装的ajax的代码如下: //将数据转换成 a=1&b=2格式; function json2url(json){ var arr = []; //加随机数防止缓存; json.t = ...
- Jquery 中 .trigger 的用法
项目中有个需求,数据加载完成后,默认模拟点击某个元素节点(选中某个元素节点)并触发事件 $('.course_list dd').on('click', function () { //取当前 ...
- Morphia - mongodb之ORM框架
一.简介 二.注解 1.@Entity 2.@Id3.@Indexed4.@Embedded5.@Transient和@Property6.@Reference 三.示例 四.参考资料 Morphia ...
- Golang开发支持平滑升级(优雅重启)的HTTP服务
Golang开发支持平滑升级(优雅重启)的HTTP服务 - tabalt的博客 http://tabalt.net/blog/graceful-http-server-for-golang/ http ...
- http请求及json发送与解析 post string
golang http请求及json流解析 - 长风v持成的博客 - CSDN博客 https://blog.csdn.net/u011677067/article/details/80852158 ...
- Spring AOP和事务的相关陷阱
1.前言 2.嵌套方法拦截失效 2.1 问题场景 2.2 解决方案 2.3 原因分析 2.3.1 原理 2.3.2 源代码分析 3.Spring事务在多线程环境下失效 3.1 问题场景 3.2 解决方 ...
- JS获取当前网页大小以及屏幕分辨率等
网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWid ...
- 对Numpy数组按axis运算的理解
Python的Numpy数组运算中,有时会出现按axis进行运算的情况,如 >>> x = np.array([[1, 1], [2, 2]]) >>> x arr ...