Skip to content

Latest commit

 

History

History
 
 

zh-CN

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

The Fishshell Framework

MIT License Fish Shell Version Travis Build Status Slack Status

Oh My Fish 提供核心基础设施的配置,允许每个人可以轻松安装插件或随心所欲更换 Shell 外观样式,它的速度敏捷和可扩展性让你如鱼得水



English简体中文

安装

curl -L github.com/oh-my-fish/oh-my-fish/raw/master/bin/install | fish
omf help

或者 下载脚本 后自己执行:

curl -L github.com/oh-my-fish/oh-my-fish/raw/master/bin/install > install
fish install

更新方法

我们最近把Oh My Fish代码仓库移到了我们自己组织的帐号下。所以,你们也需要更新一下你们Oh My Fish代码仓的remote设置。对于Oh My Fish的早期用户,非常推荐你按照以下步骤干净地重新安装一次:

  1. 首先备份所有你自定义的东西
  2. mv ~/.config/fish/config{,_old}.fish
  3. rm -rf ~/.oh-my-fish
  4. 重新安装Oh My Fish
  5. 复制文件~/.config/fish/config_old.fish中所有以PluginTheme开始的行
  6. 把它们粘贴到文件$OMF_CONFIG/bundle中。如果这个文件不存在,就自己创建一下
  7. 把所有Plugin "name"这样的行转换成package name这种形式,其中"name"是包名字
  8. 把所有Theme "name"这样的行转换成theme name这种形式,其中"name"是主题名字
  9. omf install

如果你在更新过程中遇到困难,可以到Slack上来寻求我们的帮助。

快速入门

Oh My Fish 自带的辅助命令工具 omf 可以帮助你快速获取安装新插件和主题。

omf update

更新自身和已安装的所有插件和默认主题。

omf install [<name>|<url>]

安装 一个或多个 插件。

  • 你可以通过输入指定的 URL 直接安装插件 omf install URL
  • 当没有执行没有传入任何参数,将会从 bundle 文件检索并安装本地尚未安装的插件和主题。

omf list

显示本地已安装的插件列表。

omf theme <theme>

应用一个主题。查看全部可用主题执行 omf theme。安装之前你也可以预览现有主题

omf remove <name>

移除主题或插件。

插件如果注册(subscribed)过 uninstall_<pkg> 事件将会在插件移除前触发,因此你可以自定义自身清理和扫尾的工作以保证插件干净移除。 详见卸载部分获取更多信息。

omf new pkg | theme <name>

创建新插件和主题的生成工具。

创建的模板会新创建并保存于 $OMF_CONFIG/{pkg | themes}/ 文件夹下面。

omf submit pkg/<name> [<url>]

添加一个新的插件。提交新主题请使用 omf submit themes/<name> <url>

新插件或新主题需要托管于 Git 仓库,上面命令 url 需要输入 git 仓库的 url 地址。 此命令仅仅是把 git 仓库地址保存与 Oh My Fish 的 db 数据库,同时还需要提交 PR让组织把你的插件或主题归于框架。

omf doctor

使用前开馆问题 解决。

omf destroy

卸载 Oh My Fish.

高级用法

Oh My Fish 安装脚本会把自身启动代码加载到 fish 的配置文件 (~/.config/fish/config.fish).

启动脚本

每次你新打开 Shell 都会从 配置文件 (默认:~/.config/omf) 加载 Oh My Fish 的启动脚本(init.fish) 进行初始化: 自动加载插件,主题和你自定义的配置文件。更多信息请查看FAQ.

Dotfiles

$OMF_CONFIG 目录存储用户使用 Oh My Fish 的重要配置参数,这是最完美的方式把该目录的所有文件加入你的 dotfiles 或加入到版本控制。 有四个重要文件:

  • theme - 当前主题
  • bundle - 显示当前已安装的插件/主题列表
  • init.fish - 壳开始后执行的自定义脚本
  • before.init.fish - 壳开始前执行的自定义脚本

它强烈建议您自定义的启动命令进入 init.fish 文件而不是 ~/.config/omf/config.fish,因为这可以让你保持在版本控制整个 $OMF_CONFIG 目录。

如果你需要的Starup命令来运行之前噢,我的鱼开始加载插件,将它们放置在 before.init.fish 代替。如果你不确定,通常最好把东西 init.fish

关于 bundle

每次当有插件和主题被安装或移除都会更新 bundle 文件。你也可以手动编辑该文件并执行 omf install 保证变更状态。 需要注意的是当有插件、主题被添加到 bundle 文件会自动被安装。但从 bundle 中移除掉它们却不会从用户安装路径移除物理文件。

创建插件

Oh My Fish 使用了友好的插件架构能够简化插件的开发,其中包括初始化、卸载事件和函数的自动加载。查看相关文档 获取更多信息。