Unix & Linux Stack Exchange
Q&A for users of Linux, FreeBSD and other Unix-like operating systems
Latest Questions
0
votes
2
answers
7647
views
How can i get nerd fonts in kitty terminal
i can't get beautiful font of codding in terminal: [![firacode][1]][1] i am reading [documentation of fonts][2] in voidlinux.org and i'm installing alacritty and kitty and st , but not work my conf of alacritty is: ``` font: normal: family: Fira Code style: Medium bold: family: Fira Code style: Semi...
i can't get beautiful font of codding in terminal:
i am reading documentation of fonts in voidlinux.org
and i'm installing alacritty and kitty and st , but not work
my conf of alacritty is:
* my font now is:

font:
normal:
family: Fira Code
style: Medium
bold:
family: Fira Code
style: SemiBold
italic:
family: Fira Code
style: Light
size: 10
but if i'm try to use this symbols and font : it's not work:

$ fc-list | grep -i "fira"|awk -F: '{print $2}' |sort|uniq
Fira Code
Fira Code,Fira Code Light
Fira Code,Fira Code Medium
Fira Code,Fira Code Retina
Fira Code,Fira Code SemiBold
FiraCode Nerd Font
FiraCode Nerd Font Mono
FiraMono Nerd Font
FiraMono Nerd Font Mono
nextloop
(296 rep)
Jun 24, 2021, 02:16 PM
• Last activity: Jul 29, 2025, 02:43 PM
1
votes
1
answers
56
views
Cannot use ctrl + p / n to view previous / next history when using tmux
I am using kitty + zsh + tmux on MacOS. Without tmux, I can just use Ctrl + p or Ctrl + n to scroll through the zsh history. However, when I have tmux running and without any configuration done, pressing Ctrl + p no longer shows me the previous history. Instead, it displays `^P` instead. I have trie...
I am using kitty + zsh + tmux on MacOS. Without tmux, I can just use Ctrl + p or Ctrl + n to scroll through the zsh history. However, when I have tmux running and without any configuration done, pressing Ctrl + p no longer shows me the previous history. Instead, it displays
^P
instead.
I have tried it with other terminal emulators, namely apple terminal, ghostty and alacritty, and I cannot get Ctrl + p to work with tmux running.
Why is this happening?
Shaobin Jiang
(111 rep)
May 22, 2025, 02:33 PM
• Last activity: May 30, 2025, 09:29 AM
5
votes
1
answers
679
views
How can I use a terminal emulator as an efficient application launcher?
### The Problem I've used various application launchers like `rofi`, `albert`, `wofi`, `dmenu`, and others throughout my Linux years. While they have their pros and cons, one thing has always bothered me: **they're not a bash shell.** Why does this matter? I really enjoy some of the bash's features,...
### The Problem
I've used various application launchers like
rofi
, albert
, wofi
, dmenu
, and others throughout my Linux years. While they have their pros and cons, one thing has always bothered me: **they're not a bash shell.**
Why does this matter? I really enjoy some of the bash's features, such as:
- **GNU Readline shortcuts:** Navigating or edit text with Ctrl+A
(beginning of line), Ctrl+E
(end), Ctrl+K
(kill text), Ctrl+Y
(yank), Meta+Y
(yank history), and more.
- **Command history:** Using ~/.bash_history
for searching with Ctrl+R
/Ctrl+S
, or navigating commands with Ctrl+P
/Ctrl+N
.
- **Tab completion:** With tools like bash-completion
and bash-complete-alias
, I have powerful auto-completion for paths, command names, and arguments.
- **Aliases:** Some programs are easier and faster to launch via my custom aliases.
---
### My Goal
I want to use a terminal emulator as a simple application launcher. Here’s how it should work:
1. Press a shortcut key to launch the terminal (e.g., kitty
).
2. Type a command (e.g., firefox
).
3. Press ``. The terminal should:
- Launch the command.
- Immediately close itself.
- Leave the launched application running.
For example, typing firefox
should behave like executing firefox & disown & exit
or nohup firefox > /dev/null 2>&1 & exit
. Typing & disown & exit
after the command achieves the desired effect, but, of course, I don't want to manually add & disown & exit
every time.
Note: this is **not window swallowing**. I don’t want the terminal window to linger after the application closes; I only need it for input.
---
### What I’ve Tried
1. **Using read
:**
Launching kitty
with this command:
kitty -e bash -i -c 'read -e -p "Command: " cmd; eval "$cmd"'
This approach fails because typing via read
bypasses some of the shell features I want, like tab completion and command history.
2. **Automating with a secondary shortcut:**
Typing the command and using another shortcut (e.g., Super+
) to append and execute & disown & exit
with a tool like wtype
.
This is very workaroundish, but I'd settle for it, if it worked. Unfortunately, it does not: pressing a modifier key like Super
causes unwanted behavior: every character in the string (& disown & exit
) is sent with the modifier, triggering shortcuts instead of being interpreted as text.
---
### Conclusion
How can I achieve this? I want a solution that lets me quickly launch applications while leveraging all the features of an interactive bash shell.
chedieck
(71 rep)
Dec 1, 2024, 09:23 PM
• Last activity: Mar 10, 2025, 05:09 AM
-1
votes
2
answers
299
views
Typing issues with terminal emulators: Unexpected cursor jumps and replacements
I tried a few different terminal emulators on my Ubuntu 24.10. Specifically, Kitty, Ghostty and zellij. All three suddenly presented strange strange behavior: while I type, the cursor jumps a few spaces ahead (just as though I had pressed the TAB key), or it replaces what was typed with the newly ty...
I tried a few different terminal emulators on my Ubuntu 24.10. Specifically, Kitty, Ghostty and zellij. All three suddenly presented strange strange behavior: while I type, the cursor jumps a few spaces ahead (just as though I had pressed the TAB key), or it replaces what was typed with the newly typed character but without moving the cursor.
For example, when trying to type
cd Media
, I get something like this instead:
$ cd Med a
Does anyone know how I can fix this?
user697914
Jan 9, 2025, 04:48 PM
• Last activity: Feb 26, 2025, 04:46 PM
7
votes
4
answers
8281
views
Kitty Terminal Tab Title without path?
I have been playing around with the settings in the kitty docs. I am using `tab_title_template` to change the title of a tab. The `{title}` variable includes the file name and the path. Is there any way to take out the path and only have the file name? my current kitty.conf looks like this: tab_titl...
I have been playing around with the settings in the kitty docs.
I am using
tab_title_template
to change the title of a tab.
The {title}
variable includes the file name and the path. Is there any way to take out the path and only have the file name?
my current kitty.conf looks like this:
tab_title_template "{index}: {title}"
Vinn
(236 rep)
Apr 2, 2022, 06:47 AM
• Last activity: Oct 10, 2024, 06:54 AM
0
votes
1
answers
1010
views
I can't use the "cat" command
When I run the "cat file.txt" command, I get the response: ``` cat file.txt zsh: command not found: bat ``` This is on Kali Linux 2024.1 that I just installed on VMware Player, updated, and installed Kitty.
When I run the "cat file.txt" command, I get the response:
cat file.txt
zsh: command not found: bat
This is on Kali Linux 2024.1 that I just installed on VMware Player, updated, and installed Kitty.
miguele318
(3 rep)
May 15, 2024, 03:22 AM
• Last activity: May 16, 2024, 12:12 PM
0
votes
4
answers
581
views
How to delete in terminal from "/" to "/"?
Im using Kitty emulator and bash shell. I know that Ctrl + w I can delete **a word** in terminal (like Ctrl + Backspace ). But what if I have something like this: ``` sh /home/user/dir1/dir2/file.sh ``` I just want to delete the `file.sh`? I can't delete with Ctrl + w because then the **whole line w...
Im using Kitty emulator and bash shell.
I know that Ctrl+w I can delete **a word** in terminal (like Ctrl+Backspace). But what if I have something like this:
sh /home/user/dir1/dir2/file.sh
I just want to delete the file.sh
?
I can't delete with Ctrl+w because then the **whole line will be deleted** and I don't want to delete it manually.
Any advice how to delete from only one path element?
AutisticAllosaurus
(65 rep)
Aug 31, 2022, 10:04 AM
• Last activity: Dec 15, 2023, 02:11 PM
-1
votes
1
answers
1803
views
How to Add Space or Padding to Terminal Output?
I don't really know what would be responsible for this. I would bet on my terminal emulator itself (mine is Kitty), but it might be a Zsh (or Oh My Zsh) or Powerlevel10k responsibility. Anyways, what I would like to do is add some space between my input line and the beginning of my output. And also...
I don't really know what would be responsible for this. I would bet on my terminal emulator itself (mine is Kitty), but it might be a Zsh (or Oh My Zsh) or Powerlevel10k responsibility.
Anyways, what I would like to do is add some space between my input line and the beginning of my output. And also add some padding just so my Powelevel10k input line is aligned vertically with my output. Padding on the right-hand side would be great as well.

psygo
(233 rep)
Oct 17, 2023, 06:03 PM
• Last activity: Oct 17, 2023, 06:54 PM
0
votes
1
answers
273
views
Line of spikes overlap text on Kitty terminal emulator
When I run kitty terminal emulator, a line of black spikes overlaps the text in each line. I'm running a VM with Debian 12, bspwm, picom with default configuration. I've got no idea what can be happening, but I'm pretty sure is something to do with kitty. Any idea where to start? [

Iván Araolaza
(31 rep)
Oct 12, 2023, 08:14 PM
• Last activity: Oct 12, 2023, 11:56 PM
1
votes
1
answers
1118
views
How to launch Kitty "inside" a wsl kali win-kex instance?
a newbie here. I just installed `kitty` on `wsl` `kali-linux`, I am using `win-kex` to use a GUI. When I launch kitty opens on another window "outside" the winkex instance: like a Windows app. So, how can I make kitty work "inside" the winkex session? [
kapichy97
(21 rep)
Aug 21, 2023, 03:12 AM
• Last activity: Aug 21, 2023, 02:35 PM
26
votes
7
answers
73685
views
How do I copy and paste with Kitty?
[Kitty](https://github.com/kovidgoyal/kitty/) is a terminal for Linux. How do I copy and paste with it. CTRL + c does not work? And there is no option on right click. Right-click also doesn't work for copy.
[Kitty](https://github.com/kovidgoyal/kitty/) is a terminal for Linux. How do I copy and paste with it. CTRL+c does not work? And there is no option on right click. Right-click also doesn't work for copy.
Evan Carroll
(34663 rep)
Feb 12, 2019, 12:44 AM
• Last activity: Jul 4, 2023, 02:11 PM
2
votes
0
answers
514
views
Terminal with advanced copy paste capabilites
Kitty terminal has a feature where one can run a python script that captures text via regex and allows copying directly to clipboard (see https://sw.kovidgoyal.net/kitty/kittens/hints/) The matches are selected via some assigned letter, it's a very neat feature. I have a couple of hotkeys for captur...
Kitty terminal has a feature where one can run a python script that captures text via regex and allows copying directly to clipboard (see https://sw.kovidgoyal.net/kitty/kittens/hints/)
The matches are selected via some assigned letter, it's a very neat feature. I have a couple of hotkeys for capturing words, uuids, urls, etc so I never leave the keyboard.
Unfortunately, I hate that kitty forces one to set
$TERM
to xterm-kitty
which opens a can of worms.
Is there another fast terminal emulator with the same functionality, without the $TERM
shenanigans?
Miguel Ping
(121 rep)
Apr 30, 2023, 12:00 PM
• Last activity: Apr 30, 2023, 01:51 PM
2
votes
2
answers
5990
views
Kitty terminal: I don't have any colors on PS1 bash prompt
Unlike other terminal emulators with kitty terminals I have no colors on bash prompt. I am using ubuntu, my PS1 is `\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$` What have I to setup for this? Thanks
Unlike other terminal emulators with kitty terminals I have no colors on bash prompt.
I am using ubuntu, my PS1 is
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
What have I to setup for this?
Thanks
res1
(308 rep)
Jun 14, 2022, 06:06 PM
• Last activity: Feb 12, 2023, 09:56 PM
0
votes
0
answers
662
views
Trying to change "non command" color in kitty terminal (ver. 0.21.2) using the fish (ver. 3.3.1) shell with the oh-my-fish theme slacker
I've been trying to change the color of non-command such as the picture below (the uncompleated 'help') [![enter image description here][1]][1] link to the theme im using in omf: https://github.com/maqboolkhan/omf-theme-slacker my kitty.conf (kitty terminal config) looks like this: ``` background #3...
I've been trying to change the color of non-command such as the picture below (the uncompleated 'help')
link to the theme im using in omf: https://github.com/maqboolkhan/omf-theme-slacker
my kitty.conf (kitty terminal config) looks like this:
Yet it still looks like this:
Oh and here are my specs and such:

background #3a3d4b
foreground #eaf2f1
cursor #eaf2f1
cursor_text_color #000000
selection_foreground #3a3d4b
selection_background #eaf2f1
# dull black
color0 #3a3d4b
# light black
color8 #696d77
# dull red
color1 #ff657a
# light red
color9 #ff657a
# dull green
color2 #bad761
# light green
color10 #bad761
# yellow
color3 #ffd76d
# light yellow
color11 #ffd76d
# blue
color4 #ff9b5e
# light blue
color12 #ff9b5e
# magenta
color5 #c39ac9
# light magenta
color13 #c39ac9
# cyan
color6 #9cd1bb
# light cyan
color14 #9cd1bb
# dull white
color7 #eaf2f1
# bright white
color15 #eaf2f1
# Fonts
font_family Hack Nerd Font Mono
italic_font auto
bold_font auto
bold_italic_font auto
font_size 16.0
background_opacity 1
And my config.fish (fish shell config) looks like this:
if status is-interactive
# Commands to run in interactive sessions can go here
zoxide init fish | source
end
# neofetch | lolcat --seed=210 --freq=0.01
neofetch | lolcat --seed=155 --freq=0.05
#My aliases:
#-- Navigation
alias cd..="cd .."
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
#-- listing
alias ll="ls -l"
#-- xclip/copying
alias kopi="xclip -selection clipboard"
#-- open file manager
alias files="xdg-open ."
#-- Neofetch
alias catfetch="neofetch | lolcat --seed=155 --freq=0.05"
#-- valgrind
alias vgtest="valgrind --leak-check=full --show-reachable=yes"
#-- grepping
alias 5grep="grep --color=auto --context=5"
alias grep="grep --color=auto"
I've also tried using
browse
Which when i selected a theme did this:
Web config started at file:///tmp/web_configi7995hl8.html
Hit ENTER to stop.
$ set -L
$ set -U fish_color_normal normal
$ set -U fish_color_command F8F8F2
$ set -U fish_color_quote F1FA8C
$ set -U fish_color_redirection 8BE9FD
$ set -U fish_color_end 50FA7B
$ set -U fish_color_error FFB86C
$ set -U fish_color_param FF79C6
$ set -U fish_color_comment 6272A4
$ set -U fish_color_match --background=brblue
$ set -U fish_color_selection white --bold --background=brblack
$ set -U fish_color_search_match bryellow --background=brblack
$ set -U fish_color_history_current --bold
$ set -U fish_color_operator 00a6b2
$ set -U fish_color_escape 00a6b2
$ set -U fish_color_cwd green
$ set -U fish_color_cwd_root red
$ set -U fish_color_valid_path --underline
$ set -U fish_color_autosuggestion BD93F9
$ set -U fish_color_user brgreen
$ set -U fish_color_host normal
$ set -U fish_color_cancel -r
$ set -U fish_pager_color_completion normal
$ set -U fish_pager_color_description B3A06D yellow
$ set -U fish_pager_color_prefix normal --bold --underline
$ set -U fish_pager_color_progress brwhite --background=cyan
Which should change the color of the non-command to this:



Manfred
(25 rep)
Feb 9, 2023, 09:57 AM
0
votes
1
answers
844
views
Time it takes to open a new terminal window
I just checked my timings: it takes about 0.41-0.45 seconds to open a new `gnome-terminal` window and about 0.55-0.65 seconds to open `kitty`. And it does bother me a bit that it takes so much time to open (I want it to be close to instant, like UI elements are responding to mouse/keyboard events)....
I just checked my timings: it takes about 0.41-0.45 seconds to open a new
gnome-terminal
window and about 0.55-0.65 seconds to open kitty
. And it does bother me a bit that it takes so much time to open (I want it to be close to instant, like UI elements are responding to mouse/keyboard events). I want some suggestions for either speeding up window open process or some terminal alternatives that open faster (I use kitty
for several years now). Maybe someone can share their timings, so I can compare mine to something (I didn't find anything about this issue on the Internet).
Here's a MWE:
terminal=kitty # gnome-terminal
date +%s.%N > .start; $terminal -- sh -c 'echo "$(date +%s.%N)-$(cat .start)" | bc | cut -c 2- > .diff; rm -f .start'; cat .diff; rm -f .diff
My config: Laptop with i7-8550U, SSD, Ubuntu 20.04.
P.S. I'm hoping soon to hop to Pop!_OS 22.04. After that, I'll check my timings again (perhaps they'll improve).
---
**Update**:
Tried with zero config using root:
* kitty
: 0.38-0.43 seconds
* gnome-terminal
: 0.41-0.46 seconds
---
**Update 2**:
Run ranger
using kitty
with root (0 conf.) and alacritty
(cargo crate is user-wide; 0 conf.):
* kitty
: 0.50-0.57 seconds
* alacritty
: 0.37-0.43 seconds
* alacritty
without ranger
: 0.22-0.28 seconds (*now we're talking*)
kitty
:
date +%s.%N > .start; kitty ranger --cmd 'shell echo "$(date +%%s.%N)-$(cat .start)" | bc | cut -c 2- > .diff; rm -f .start; kill $PPID'; cat .diff; rm -f .diff
alacritty
:
date +%s.%N > .start; alacritty -e ranger --cmd 'shell echo "$(date +%%s.%N)-$(cat .start)" | bc | cut -c 2- > .diff; rm -f .start; kill $PPID'; cat .diff; rm -f .diff
P.S. I use [ranger
](https://github.com/ranger/ranger) a lot (want to switch to [lf
](https://github.com/gokcehan/lf)) and 99% I open it with a shortcut bound to kitty ranger
command.
Andrew15_5
(271 rep)
Jan 9, 2023, 07:09 PM
• Last activity: Jan 18, 2023, 11:48 PM
0
votes
0
answers
1026
views
Set 256 color prompt in zsh/kitty/tmux
This problem is only for the Kitty terminal (works in alacritty, Hyper; problem exists both on macos and arch linux) currently set my terminal with ``` PS1='%B%F{magenta}%3~ ${vim_mode}%f%b ' ``` this sets the prompt to magenta in both the base terminal and tmux. however, if I use a 256 color number...
This problem is only for the Kitty terminal (works in alacritty, Hyper; problem exists both on macos and arch linux)
currently set my terminal with
PS1='%B%F{magenta}%3~ ${vim_mode}%f%b '
this sets the prompt to magenta in both the base terminal and tmux. however, if I use a 256 color number like 170 in place of magenta, the prompt color gets set in the base terminal but not tmux. is there a way to fix this?
Jordan Mandel
(111 rep)
Dec 12, 2022, 02:41 PM
1
votes
1
answers
304
views
Strange escape sequences in terminal
I have kitty, and I use nnn as file manager. I actiavted the "preview-tui" plugin in nnn. When I hover over a folder, I see something like this: [![enter image description here][1]][1] What are those strange escape sequences? [1]: https://i.sstatic.net/41p4c.png
I have kitty, and I use nnn as file manager.
I actiavted the "preview-tui" plugin in nnn.
When I hover over a folder, I see something like this:
What are those strange escape sequences?

robertspierre
(379 rep)
Nov 1, 2022, 05:06 PM
• Last activity: Nov 1, 2022, 05:13 PM
1
votes
0
answers
116
views
Tmux external clipboard interaction with loadb over SSH
I have the external clipboard option enabled: ```bash $ tmux show-options -g -s set-clipboard set-clipboard external ``` And I'm using Kitty terminal with tmux in SSH. When I highlight text with the mouse or use ` [`, the contents get copied to my system clipboard just fine, and I can paste it back...
I have the external clipboard option enabled:
$ tmux show-options -g -s set-clipboard
set-clipboard external
And I'm using Kitty terminal with tmux in SSH.
When I highlight text with the mouse or use [
, the contents get copied to my system clipboard just fine, and I can paste it back into tmux using ]
. However, when I pipe as follows:
$ echo -n "Hello World" | tmux loadb -
The contents are correct for ]
, i.e. when I paste within tmux, but my system clipboard is not updated. I can't figure out why that is, shouldn't it be the same behavior?
jeanluc
(163 rep)
Sep 13, 2022, 08:22 PM
0
votes
1
answers
894
views
Kitty run command in current shell via action
Is it possible to run a command in the currently open shell via an action using the [Kitty][1] terminal emulator? For example when defining hyperlink actions: protocol file mime inode/directory action [RUN SHELL ACTION] cd ${FILE_PATH} [1]: https://sw.kovidgoyal.net/kitty/
Is it possible to run a command in the currently open shell via an action using the Kitty terminal emulator?
For example when defining hyperlink actions:
protocol file
mime inode/directory
action [RUN SHELL ACTION] cd ${FILE_PATH}
danbreu
(23 rep)
Jan 28, 2022, 01:11 PM
• Last activity: Aug 23, 2022, 01:50 PM
1
votes
1
answers
1478
views
How can I run my text editor via edit-in-kitty while preserving the environment set in rc files?
### Problem I am trying to get the [`edit-in-kitty`](https://sw.kovidgoyal.net/kitty/shell-integration/#edit-file) command to work on my local workstation (not over SSH, yet), but it seems like the environment variables — which are usually exported while sourcing my shell's rc file — aren't carried...
### Problem
I am trying to get the [
edit-in-kitty
](https://sw.kovidgoyal.net/kitty/shell-integration/#edit-file) command to work on my local workstation (not over SSH, yet), but it seems like the environment variables — which are usually exported while sourcing my shell's rc file — aren't carried over to the child process while executing this command. This causes a number of errors while starting the editor.
To be more specific, the editor is Vim, and examples of issues I am facing include:
- The global variable g:colors_name
is set based on the value the environment variable BASE16_THEME
— which is set in my shell's rc file — and some plugin's theme cannot be applied without it.
- Some plugin is looking for an executable inside my PATH
, and fails because the PATH
visible to Vim is only the system wide PATH
(/usr/bin:/bin:/usr/sbin:/sbin
).
I am quite certain that edit-in-kitty
does receive the fully populated environment _during execution_, since it runs my _manually installed_ version of Vim instead of the one that ships with the OS, which is what I expect. To me, it seems like the environment is cleared _right before starting the editor_.
Components:
- kitty 0.25.2
- zsh 5.8.1
- Vim 9.0 (macOS version, part of MacVim)
### What I tried
I set the [env
](https://sw.kovidgoyal.net/kitty/conf/#opt-kitty.env) option explicitly inside my kitty configuration to env BASE16_THEME=default-dark
, and can confirm that it carries over to Vim when I run edit-in-kitty
.
Setting PATH
in the same fashion, e.g. via env PATH=/custom/bin:${PATH}
, would most certainly work too.
### Question
The method above doesn't feel very portable to me since the environment depends heavily on my shell's configuration, which varies from system to system. Since kitty [runs the shell to evaluate its environment](https://sw.kovidgoyal.net/kitty/conf/#opt-kitty.editor) , is there a way to instruct it to preserve this environment while launching the text editor?
Antoine Cotten
(113 rep)
Jul 28, 2022, 05:28 PM
• Last activity: Jul 29, 2022, 07:28 PM
Showing page 1 of 20 total questions