Nushell
书
Cookbook
博客
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub
书
Cookbook
博客
  • English
  • 中文
  • Deutsch
  • Français
  • Español
  • 日本語
  • Português do Brasil
  • Русский язык
GitHub
  • 入门篇

    • 介绍
    • 安装 Nu
    • 以 Nushell 的方式思考
    • 在系统中四处移动
  • Nu 基础篇

    • 数据类型
    • 加载数据
    • 处理字符串
    • 处理列表
    • 处理表格
    • 管道
    • 命令索引
  • Nushell 编程

    • 自定义命令
    • 别名
    • 运算符
    • 变量和子表达式
    • 脚本
    • 模块
    • 覆层
  • Nu 作为 Shell 使用

    • 配置
    • 环境
    • 标准输入、输出和退出码
    • 转移到系统
    • 配置第三方提示
    • Shell 中的 Shell
    • Reedline,Nu 的行编辑器
    • 外部命令
    • 自定义补全
    • Nu 的配色和主题
    • 钩子
  • 迁移到 Nu

    • 从 Bash 到 Nu
    • 从其他 Shell 或 DSL 到 Nu
    • 从命令式语言到 Nu
    • 从函数式语言到 Nu
    • Nushell 运算符
  • 高级篇

    • DataFrames
    • 元数据
    • 创建你自己的错误
    • 并行
    • 插件

配置第三方提示

Nerdfonts

Nerdfonts 并不是必需的,但它们能使呈现效果更好。

网站

仓库

oh-my-posh

网站

仓库

如果你喜欢 oh-my-posh,可以通过以下几个步骤在 Nushell 里使用 oh-my-posh,它与 Nushell 一起配合得很好。在 Nushell 里设置 oh-my-posh 的步骤:

  1. 安装 Oh My Posh 并按照 指南下载 oh-my-posh 的主题。
  2. 下载并安装一个 Nerdfonts 字体。
  3. 在~/.config/nushell/config.nu(或由$nu.config-path输出的路径)中设置PROMPT_COMMAND,将M365Princess.mp.json改为你喜欢的任何 主题。
$env.PROMPT_COMMAND = { oh-my-posh --config ~/.poshthemes/M365Princess.omp.json }

MacOS 用户配置步骤:

  1. 你可以通过brew安装oh-my-posh,可以参考这里的 指南;
  2. 下载并安装一个 Nerdfonts 字体;
  3. 在$nu.config-path输出的文件中设置PROMPT_COMMAND,可以参考下面的代码片段:
let posh_dir = (brew --prefix oh-my-posh | str trim)
let posh_theme = $'($posh_dir)/share/oh-my-posh/themes/'
# Change the theme names to: zash/space/robbyrussel/powerline/powerlevel10k_lean/
# material/half-life/lambda Or double lines theme: amro/pure/spaceship, etc.
# For more [Themes demo](https://ohmyposh.dev/docs/themes)
$env.PROMPT_COMMAND = { oh-my-posh prompt print primary --config $'($posh_theme)/zash.omp.json' }
# Optional
$env.PROMPT_INDICATOR = $"(ansi y)$> (ansi reset)"

Starship

网站

仓库

  1. 参照上面的链接,安装 Starship;
  2. 根据你的喜好,安装 nerdfonts;
  3. 使用下面的配置示例,请确保设置STARSHIP_SHELL环境变量;

下面是一个关于 Starship 的配置示例:

$env.STARSHIP_SHELL = "nu"

def create_left_prompt [] {
    starship prompt --cmd-duration $env.CMD_DURATION_MS $'--status=($env.LAST_EXIT_CODE)'
}

# Use nushell functions to define your right and left prompt
$env.PROMPT_COMMAND = { create_left_prompt }
$env.PROMPT_COMMAND_RIGHT = ""

# The prompt indicators are environmental variables that represent
# the state of the prompt
$env.PROMPT_INDICATOR = ""
$env.PROMPT_INDICATOR_VI_INSERT = ": "
$env.PROMPT_INDICATOR_VI_NORMAL = "〉"
$env.PROMPT_MULTILINE_INDICATOR = "::: "

然后重启 Nushell:

nushell on 📙 main is 📦 v0.60.0 via 🦀 v1.59.0
❯

你可以在 官方 Starship 配置文档中了解更多关于配置 Starship 的信息。

另一种启用 Starship 的方法在 Starship 快速安装说明中有描述。

Purs

仓库

在GitHub上编辑此页面
Contributors: Justin Ma, HoLLy, amtoine, 0x4D5352
Prev
转移到系统
Next
Shell 中的 Shell