If the Icos are no loading, this is because your terminal is likely not using a Nerd Font. Oh My Posh requires a Nerd Font (like Cascadia Code Nerd Font or Meslo) to render the icons (e.g., \ue62a, \uf489).
2. Date Format: I have updated the JSON to use the Year. Month. Day. | 24H format you requested.
The icons still won't display without a Nerd Font. You must:
# 1. Install a Nerd Font (example)
winget install -e --id Microsoft.CascadiaCode.NF
# 2. Configure your terminal to use it
# In Windows Terminal: Settings → Profiles → Defaults → Appearance → Font face → "CascadiaCode NF"
# 3. Reload Oh My Posh
. $PROFILEIf you see boxes or question marks instead of icons, you must install a Nerd Font and select it in your terminal settings.
- Download a Nerd Font: I recommend Cascadia Code Nerd Font (or MesloLGS NF).
- Download link: Cascadia Code Nerd Font
- Install: Unzip the downloaded file, right-click on the font files ending in
NF, and click Install. - Configure Terminal:
- Open Windows Terminal (or VS Code terminal).
- Press
Ctrl + ,to open Settings. - Go to Profiles -> Defaults -> Appearance.
- Change Font face to
Cascadia Code NF(or whichever font you installed).
Run this in PowerShell:
$themeDir = Join-Path $env:USERPROFILE ".config\ohmyposh"
New-Item -ItemType Directory -Force $themeDir | Out-Null
$themePath = Join-Path $themeDir "teocci.omp.json"
@'
{
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
"palette": {
"white": "#f7f7f7",
"black": "#111111"
},
"blocks": [
{
"type": "prompt",
"alignment": "left",
"newline": true,
"segments": [
{
"background": "transparent",
"foreground": "p:white",
"style": "plain",
"template": "\u250c",
"type": "text"
},
{
"background": "#464646",
"foreground": "p:white",
"options": {
"windows": "\ue62a",
"linux": "\uf17c",
"ubuntu": "\uf31b",
"macos": "\uf179"
},
"style": "plain",
"template": " {{.Icon}}{{if .WSL}} (WSL){{end}}\u2800",
"type": "os"
},
{
"background": "p:white",
"foreground": "p:black",
"style": "plain",
"template": " \uf489 {{.Name}}\u2800",
"type": "shell"
},
{
"background": "#ffe093",
"foreground": "p:black",
"style": "plain",
"template": " \uf2c0 {{.HostName}}\ue0bd{{.UserName}}\u2800",
"type": "session"
},
{
"type": "python",
"background": "#2b2b2b",
"foreground": "p:white",
"style": "plain",
"template": " \ue235 {{ if .Venv }}{{ .Venv }}{{ else }}{{ .Full }}{{ end }}\u2800",
"options": {
"display_mode": "environment",
"fetch_virtual_env": true,
"home_enabled": false
}
},
{
"background": "#ffffd6",
"foreground": "p:black",
"options": {
"branch_icon": " \ue0a0 "
},
"style": "plain",
"template": "{{.HEAD}}\u2800",
"type": "git"
}
]
},
{
"type": "prompt",
"alignment": "right",
"segments": [
{
"background": "transparent",
"foreground": "#b3ffde",
"options": {
"style": "austin",
"threshold": 0
},
"style": "plain",
"template": "{{.FormattedMs}}",
"type": "executiontime"
},
{
"background": "transparent",
"foreground": "#b3ffde",
"options": {
"time_format": "2006. 01. 02. | 15:04"
},
"style": "plain",
"template": "<p:white> · </>{{.CurrentDate | date .Format}}",
"type": "time"
}
]
},
{
"type": "prompt",
"alignment": "left",
"newline": true,
"segments": [
{
"background": "transparent",
"foreground": "p:white",
"options": {
"folder_icon": "\uf07b",
"folder_separator_template": "<#93d0ff> \u00bb </>",
"home_icon": "\ueb06",
"style": "agnoster"
},
"style": "plain",
"template": "<p:white>\u2514</><#93d0ff>[</> {{.Path}} <#93d0ff>]</>",
"type": "path"
}
]
},
{
"type": "prompt",
"alignment": "left",
"newline": true,
"segments": [
{
"background": "transparent",
"foreground": "#81ff91",
"foreground_templates": [
"{{if gt .Code 0}}#ff3030{{end}}"
],
"options": {
"always_enabled": true
},
"style": "plain",
"template": "\u276f",
"type": "status"
}
]
}
],
"console_title_template": "{{if .Root}}[root] {{end}}{{.Shell}} in <{{.Folder}}>",
"final_space": true,
"version": 4
}
'@ | Set-Content -Encoding utf8 $themePath
$themePathNotes:
- The right-aligned block is positioned on the line above using
vertical_offset: -1(common pattern in shipped themes). (powershellgallery.com) - The text segment is the simplest way to render only a prompt glyph. (ohmyposh.dev)
- The
time_formatuses Go’s reference date/time layout. (ohmyposh.dev)
If your terminal font doesn’t render ❯, replace it with a plain > in the theme.
Open your profile:
notepad $PROFILEAdd this line at the end:
oh-my-posh init pwsh --config "$env:USERPROFILE\.config\ohmyposh\teocci.omp.json" | Invoke-ExpressionThis is the standard way to set a custom config via --config. (ohmyposh.dev)
Reload:
. $PROFILERemove the newline block and set the right block vertical_offset to 0 (or remove it).
You asked for: YYYY. MM. DD. | 24H
- already implemented as:
2006. 01. 02. | 15:04(ohmyposh.dev)
If you want the prompt to include current folder (still minimal) while keeping the same top-right date, tell me whether you want:
- full path, or only current folder name, and
- whether you want it on the same line as
❯or above it.