When you choose "Many icons" option in the configuration wizard,
git repositories with a remote receive an icon that depends on
the remote's URL. In the past the matching of the URL was rather
lax: both https://foo.bar/github.com and https://github.com.foo.bar/
were recognized as belonging to github.com. This is no longer the
case.
If you start seeing the plain "git" icon where you were used to
seeing a github/gitlab/etc logo, please open an issue. Make sure
to mention the remote URL of your repo.
This change also allows you to specify the mapping from remote URLs
to icons. Here's an example:
typeset -g POWERLEVEL9K_VCS_GIT_REMOTE_ICONS=(
'*@my-company.com:*' VCS_GIT_MY_COMPANY_ICON
'?*' VCS_GIT_ICON
'*' ''
)
POWERLEVEL9K_VCS_GIT_MY_COMPANY_ICON='my-company-logo'
The matching is done in the specified order: the first match wins.
Currently only icons for big providers of git hosting service are available.
Organizations of open source software usually manage their own instances.
Adding the remote addresses of some of this organizations will let us to
identify via a glyph icon the provider of the source code.
The logic for finding the data directory is as follows:
1. Find the root directory:
1.1 If TIMEWARRIORDB is set, use that.
1.2 Else if ~/.timewarrior is an existing directory, use that.
1.3 Else if XDG_DATA_HOME is set, use $XDG_DATA_HOME/timewarrior.
1.4 Else use ~/.local/share/timewarrior.
2. Append "/data" to the root directory.
- Link to the project's homepage rather than its source code.
- Move `chezmoi_shell` next to all the other *shell indicator* segments.
- Use a shade of blue that resembes the color on chezmoi.io.
- Don't go beyond 8 colors in 8-color configs.
- Remove the segment from the *pure* config.
- Fix whitespace padding on `CHEZMOI_ICON`.
- Use the appropriate icon with all fonts (the same as `HOME`).
- Add missing `CHEZMOI_ICON` definitions for "powerline" and "ascii" font modes.
- Remove the redundant literal "chezmoi" content from the segment.
- Fix instant prompt so that the segment is shown only when `$CHEZMOI` is non-empty.
for the three clock options (no clock, a 12-hour clock, or a 24-hour
clock), use the first character of the option as the input to
fix#2266.
This pull request is a reissue of – and supersession of – #2267,
which was pushed on a branch with non-ASCII characters in the name.
Signed-off-by: Lucas Larson <LucasLarson@riseup.net>
Apparently Windows Terminal has a bug. To reproduce:
print -P '\UF0737%K{red} %k'
The expected output:
x_
Here 'x' signifies any glyph of width 1, and '_' signifies a red
block.
The actual output:
x _
Notice the space.
The output of the following two commands is as expected:
print -P '\UFC35%K{red} %k'
print -P '\UFC35x'
`ifconfig`'s formatting doesn't cope well with long interface names. In
these cases it will eat up the whitespace separating the name from the
text "Link" in the output, which makes parsing the output problematic.
e.g. `ifconfig`:
wlp0s20f0u2Link encap:Ethernet HWaddr 00:AA:BB:CC:DD:EE
v.s `ip`:
21: wlp0s20f0u2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc \
mq state UP group default qlen 1000
This commit swaps the order of detection inside
`_p9k_prompt_net_iface_async()`, so that `ip` will be preferred.
`ifconfig` is deprecated by distros in favour of `ip`, so this will
often be an incredibly marginal performance boost :)
NOTE: this commit does not address the problem with using `ifconfig`. I
don't understand the zsh regex, so have not touched it.
POWERLEVEL9K_CHRUBY_SHOW_ENGINE_PATTERN defines a pattern that
RUBY_ENGINE should match for it to be shown. Matching is done
with extended_glob.
For example, to show all values of RUBY_ENGINE except "ruby":
POWERLEVEL9K_CHRUBY_SHOW_ENGINE_PATTERN='^ruby'
If POWERLEVEL9K_CHRUBY_SHOW_ENGINE_PATTERN is unset and
POWERLEVEL9K_CHRUBY_SHOW_ENGINE is set to true,
the behavior is the same as if POWERLEVEL9K_CHRUBY_SHOW_ENGINE_PATTERN
was set to *.
Previously, the chruby segment looks like this for standard and
non-standard ruby implementations respectively:
```
Ruby ruby 3.1.2
Ruby truffleruby 3.0.3
```
While displaying the RUBY_ENGINE is helpful for non-standard
implementations, showing it for "ruby" results in "Ruby ruby" which
feels redundant.
This commit adds a new configuration option to disable showing the
RUBY_ENGINE when it is "ruby". Other values for RUBY_ENGINE will always
display as before:
```
Ruby 3.1.2
Ruby truffleruby 3.0.3
```
This also makes the formatting more similar to the asdf segment:
```
Ruby 3.1.2
Ruby truffleruby-22.3.0
```