File: segment-shellvar.go

package info (click to toggle)
powerline-go 1.25-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 612 kB
  • sloc: sh: 30; makefile: 4
file content (33 lines) | stat: -rw-r--r-- 658 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package main

import (
	"os"

	pwl "github.com/justjanne/powerline-go/powerline"
)

func segmentShellVar(p *powerline) []pwl.Segment {
	shellVarName := p.cfg.ShellVar
	varContent, varExists := os.LookupEnv(shellVarName)

	if !varExists {
		if shellVarName != "" {
			warn("Shell variable " + shellVarName + " does not exist.")
		}
		return []pwl.Segment{}
	}

	if varContent == "" {
		if !p.cfg.ShellVarNoWarnEmpty {
			warn("Shell variable " + shellVarName + " is empty.")
		}
		return []pwl.Segment{}
	}

	return []pwl.Segment{{
		Name:       "shell-var",
		Content:    varContent,
		Foreground: p.theme.ShellVarFg,
		Background: p.theme.ShellVarBg,
	}}
}