Git Product home page Git Product logo

cosmic-term's Introduction

cosmic-term

WIP COSMIC terminal emulator, built using alacritty_terminal that is provided by the alacritty project. cosmic-term provides bidirectional rendering and ligatures with a custom renderer based on cosmic-text.

The wgpu feature, enabled by default, supports GPU rendering using glyphon and wgpu. If wgpu is not enabled or fails to initialize, then rendering falls back to using softbuffer and tiny-skia.

Color Schemes

Custom color schemes can be imported from the View -> Color schemes... menu item. You can find templates for color schemes in the color-schemes folder.

cosmic-term's People

Contributors

ahoneybun avatar bittin avatar carmina16 avatar danieleades avatar edenqwq avatar edfloreshz avatar falexei avatar gabriele2000 avatar gffranco avatar git-f0x avatar grumiumxd avatar hugok79 avatar jackpot51 avatar joshuamegnauth54 avatar krahos avatar lcofre avatar leb-kuchen avatar mmstick avatar moi-cest-matthew avatar mosal avatar n-hoffmann avatar nuxnu avatar oguzkarayemis avatar perillamint avatar piroro-hs avatar ravenz46 avatar vandalhj avatar wash2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cosmic-term's Issues

Arrow keys not working in `less`

Not sure why, given it works in bash and nvim, sys.stdin.readline() in python shows the exact same bytes for arrow keys as xterm, and the TERM value isn't the issue.

hjkl however works fine.

Menubar items

File
New tab Ctrl + Shift + T
New window Ctrl + Shift + N
-separator-
Close tab Ctrl + Shift + W
-separator-
Quit Ctrl + Q

Edit
Copy Ctrl + Shift + C
Paste Ctrl + Shift + V
Select all Ctrl + Shift + A
-separator-
Find Ctrl + Shift + F
Advanced Find Ctrl + Shift + H (used for replace/match case/match entire word/regex)

View
Larger text Ctrl + =
Default text size Ctrl + 0
Smaller text Ctrl + -
-alternative spinner*-
Zoom - 100% +
-separator-
Next tab Ctrl + Tab
Previous tab Ctrl + Shift + Tab
-separator-
Settings... Ctrl + Comma

* "Zoom" Text benefit > shows the shortcuts. Spinner benefit > allows adjustment until done and user clicks off menu. Could keep the menu open using the text option but might be unexpected. Other ideas?

** instead of "Keyboard shortcuts..." and a separate interface in the contextmenu, we could include "Next tab" and "Previous tab" in this menu thus exposing all shortcuts.

Feature request: Option to save SSH connections

TLDR: Would be amazing if it has SSH connection manager so we can easily start saved SSH connections with a click of a button.

Long version:
It seems tools that offer the option to save and manage ssh connections with GUI on Linux are scarce and most (that are not abandoned) I've seen are electron based. So it would be amazing if something like that is implemented ❤️ .
Currently I know only of Tabby that has this.

PS: Sorry if this not the place for this kind of requests.

Italic uses different font

Fira Mono, the default font, has no italic version. In cosmic-text, we could synthesize italic instead of falling back, which would better maintain text size.

White vertical lines are visible inside Neovim

Following is an screenshot of Alacritty (LHS) and Cosmic-term (RHS). When It's opened, they look normal. However, When Neovim is opened, I can see white line between characters.

Steps to reproduce:

  1. Install neovim in Alacritty & Cosmic-term
  2. Set the JetBrainsMonoNL font in both terminals
  3. Launch nvim --clean -c ":highlight Normal ctermbg=blue"

image

image

image

Support drag-and-drop file paths into the terminal

Steps to recreate:

  • Drag a file or directory from COSMIC Files, Nautilus, or another file manager into COSMIC Term.

Expected behavior:

  • Have the path to that file inserted where the cursor is.

GNOME Terminal and Konsole have this feature. I'm aware this may need to wait for other work on drag-and-drop in COSMIC Epoch as a whole.

[BUG] cosmic-term doesn't respect ANSI show/hide cursor

There are ANSI escape codes to show and hide the cursor. These are often used in TUI apps. They currently don't work.

Hide cursor:

echo -e "\033[?25lasdf"

Show cursor:

echo -e "\033[?25hasdf"

In other terminals running these commands makes the cursor dissapear and appear

Crashes on resize when window size is too small

I am using POP_OS with the GNOME desktop and when I run cosmic-term and resize the window too small it crashes with the following logs:

CLI:
RUST_BACKTRACE=1 cosmic-term

Horizontal Resize Logs:

[2024-01-14T02:47:57Z WARN  wgpu_hal::gles::egl] Re-initializing Gles context due to Wayland window
[2024-01-14T02:47:57Z WARN  wgpu_hal::gles::adapter] Detected skylake derivative running on mesa i915. Clears to srgb textures will use manual shader clears.
thread 'main' panicked at /build/cosmic-term-GEhjbV/cosmic-term-0.1.0~1705081333~22.04~c5c78b0/vendor/alacritty_terminal/src/grid/resize.rs:291:27:
index out of bounds: the len is 0 but the index is 18446744073709551615
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'PTY reader' panicked at /build/cosmic-term-GEhjbV/cosmic-term-0.1.0~1705081333~22.04~c5c78b0/vendor/alacritty_terminal/src/term/mod.rs:1746:43:
index out of bounds: the len is 0 but the index is 34
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Vertical Resize Logs:

[2024-01-14T02:51:29Z WARN  wgpu_hal::gles::egl] Re-initializing Gles context due to Wayland window
[2024-01-14T02:51:29Z WARN  wgpu_hal::gles::adapter] Detected skylake derivative running on mesa i915. Clears to srgb textures will use manual shader clears.
thread 'PTY reader' panicked at /build/cosmic-term-GEhjbV/cosmic-term-0.1.0~1705081333~22.04~c5c78b0/vendor/alacritty_terminal/src/term/mod.rs:258:19:
index out of bounds: the len is 0 but the index is 18446744073709551615
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Repro Steps:

  • Start cosmic-term
  • Resize the window either horizontally or vertically

Additional Notes:

  • Resizing the window horizontally to make it skinnier will crash the window and cause it to disappear.
  • Resizing the window vertically to make it shorter will crash the program but not close the window. However the window will not accept any new input.

Line render issue with powerlevel10k prompt

On the right-hand side of this powerlevel10k prompt, the curved lines don't line up (the left-hand side is rendered correctly):

image

It doesn't seem to matter what font I choose (above is Firacode Nerd Font Mono, below is Liberation Mono):

image

Built in Nerd Font fallback

Wezterm have builtin fallback to Nerd Fonts, which is quite convenient since I don't have to bother installing a nerd font version separately. And a lot of things depend on nerd fonts, so I think it is something that might be worth to consider to replicate for cosmic-term.

Feature request: Select all

A keyboard shortcut (like Ctrl-Shift-A) to select everything in the terminal (including scrollback, not just visible) would be helpful when providing support and asking for the complete output of commands.

GNOME Terminal has a "select all" option that's not bound by default, but even when bound, it only includes the visible portion of the text.

tab size is wrong

image

OS: Arch
Version: latest git (6d51901)
Font: JetBrains Mono NL, 14px, other settings are left default

New instances sometimes launch with multiple tabs

When launching a new instance of Cosmic-Term in either Gnome or Cosmic in Pop!_OS, the application launches with two tabs open.

One tab is titled "New Terminal" and the other takes the format of "user@hostname:~".

This is true if launches from the launcher, using the super + t shortcut, from the application view, from the dock, or from a terminal.

When I close the "user@hostname:~" tab, the application remains open, and switches to the "New Terminal" tab - which is entirely non-responsive, so far as I can tell.

Enter does nothing on shells other than bash.

ERROR wgpu_hal::vulkan::adapter] get_physical_device_surface_present_modes: An unknown error has occurred, due to an implementation or application bug
I have so far tried pwsh and nu.

Cosmic-Term does not render reliably on some hardware.

When unfocused, Cosmic-Term renders as a garbled mess in tiling mode in Cosmic. ; I haven't tested in Gnome!Pop yet.

This seems to only be true when no other active element (Mouse cursor, floating window, etc.) overlaps with the Cosmic-Term window. I cannot capture this with Cosmic-Screenshot.

Screenshots will show:
Screenshot_2023-12-22_14-01-48

When the User sees:
IMG20231222140411

This behaviour is consistent whether or not the terminal is changing state (for example, running a command like apt update which prints to stdout), and does not appear to be tied to screen resolution or other display-specific issues.

Edit 1: This is not an issue for Cosmic-Term on Gnome!Pop.
Edit 2: Strike through on "in tiling mode" to reflect also seeing it in floating mode.

Crashes after suspend/resume

If I have COSMIC Terminal open in a GNOME session and I suspend/resume, then COSMIC Terminal appears to no longer be running.

I found this in journalctl:

Dec 27 14:58:36 serw13 com.system76.CosmicTerm.desktop[12277]: thread 'main' panicked at /build/cosmic-term-I0YX6k/cosmic-term-0.1.0~1703304204~22.04~bf3f507/vendor/wgpu/src/backend/direct.rs:822:30:
Dec 27 14:58:36 serw13 com.system76.CosmicTerm.desktop[12277]: Error in Surface::get_current_texture_view: Validation Error
Dec 27 14:58:36 serw13 com.system76.CosmicTerm.desktop[12277]: Caused by:
Dec 27 14:58:36 serw13 com.system76.CosmicTerm.desktop[12277]:     Parent device is lost
Dec 27 14:58:36 serw13 com.system76.CosmicTerm.desktop[12277]: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Always opens with two tabs

Version: 81a529b

COSMIC Term keeps opening up with two default tabs (this happens when launching the app, and when opening a new window). One is labeled New Terminal, and the other is labeled user@host: ~, but they both default to the user's home directory. The second tab is focused by default.

image

Either tab can be closed, leaving only the opposite. Since they function identically, only one of them should be needed by default. The user@host: ~ name is what new tabs get, so it would be the most consistent one to use for the new window's single tab.

Copy / Paste using PRIMARY

I tested to select text with the mouse and then tried to paste it using the middle mouse button, but with no success. So, I assume that this might be something that just is not implemented yet.

I tested it under a Gnome desktop (latest Fedora) , if that is relevant.

Change title of tab/window to currently running command

It'd be nice to have the title of the currently running command be shown in the tab title and transitivity for the currently shown tab to have its title in the window.

Probs should only be a thing for commands that take longer than 1 second? Maybe 3?

Some fonts are not detected by its name

fontconfig

[piroro@pc ~]$ fc-list :mono
/usr/share/fonts/TTF/JetBrainsMono-ExtraBold.ttf: JetBrains Mono,JetBrains Mono ExtraBold:style=ExtraBold,Regular
...
/usr/share/fonts/TTF/CascadiaMonoPL.ttf: Cascadia Mono PL
...

cosmic-term

[piroro@pc ~]$ RUST_LOG=cosmic_text=debug,cosmic_term=debug cosmic-term
[2024-01-12T13:45:47Z DEBUG cosmic_text::font::system] Locale: ja-JP
[2024-01-12T13:45:47Z DEBUG cosmic_text::font::system] Parsed 753 font faces in 4ms.
[2024-01-12T13:45:47Z ERROR cosmic_term] 'Cascadia Mono PL' is not in the font list
[2024-01-12T13:45:47Z ERROR cosmic_term] setting font name to 'JetBrains Mono'
...

Must re-press CTRL modifier to be able to close last tab

If you open a terminal and open 3 tabs. then just close all tabs by holding ctrl down (and keeping it down the whole time) and press d multiple times. Then when the tab bar goes away, the key presses doesn't take any more so the last terminal will not exit as expected.
If you lift ctrl and press ctrl-d, the window is closed.

I have tested to modify the view function, to always show the tab bar

            if tab_model.iter().count() >= 1 {

With that modification things work as expected, so it is something around the rendering/non-rendering of the tab bar.

Can't tell overlapping windows apart due to lack of border/shadow

When using multiple non-tiled COSMIC Terminal windows, due to the lack of border or shadow around the windows, the background colors blend together and it's very difficult to tell where the resize handle is and where the clickable portion to switch to the other window is.

image

This issue is present in both GNOME and COSMIC Epoch. It's mitigated by the active hint, but most other apps don't rely on that.

panic in wgpu 0.18.0 when AMDVLK 2023.Q4.3 on Radeon RX 7900 XTX

launching cosmic-term or AMD_VULKAN_ICD=AMDVLK cosmic-term results in the following error:

wl_drm@53: error 1: Format not advertised by wl_drm
warning: queue 0x563961aec090 destroyed while proxies still attached:
[2024-01-07T20:34:57Z ERROR wgpu_hal::vulkan::adapter] get_physical_device_surface_capabilities: An unknown error has occurred, due to an implementation or application bug
thread 'main' panicked at $HOME/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-0.18.0/src/backend/direct.rs:778:18:
Error in Surface::configure: Validation Error
Caused by:
Surface does not support the adapter's queue family
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

all of these do work, however:

  • launching AMD_VULKAN_ICD=RADV cosmic-term works just fine
  • ensuring this environment variable is set early enough to apply to cosmic-launcher, etc
  • completely uninstalling AMDVLK so that RADV is the only Vulkan implementation

I do not expect this to be addressed in wgpu nor cosmic-term (but awareness may be handy later)

Broken rendering for braile fonts

When I tested the system monitor bottom (https://clementtsang.github.io/bottom/nightly/troubleshooting/) it doesn't render the graphs. On the troubleshooting page for bottom it says:

It's possible that your graphs won't look great out of the box due to the reliance on braille fonts to draw them. One example of this is seeing a bunch of missing font characters, caused when the terminal isn't configured properly to render braille fonts.

https://clementtsang.github.io/bottom/nightly/troubleshooting/

Unusual prompt rendering after horizontal resize

Wasn't sure how to title this. The issue is shown below:

cosmic-term.webm

Captured on GNOME since COSMIC doesn't yet have screen recording, but the issue is the same in either.
The prompt becomes weird when the window is shrunk too much horizontally and cosmic-term closes if it's shrunk even further.

Fn keys do not appear to work.

When trying to use the F5 key in htop to enable tree-view, I notices that Fn keys don't look to be working currently.

No right-click menu

There's currently no right-click menu for copy/paste/etc. While that's working with the keyboard shortcuts, some users would probably try to use the mouse for it.

Configurable tab options

For compatibility with other ways people use tabs in other programs, the following could be available options, if not defaults:

  • Always show tab bar.
  • Place the button for adding new tabs immediately to the right of the last tab.
  • When colored, the whole tab should have the assigned color.
  • Make tabs of equal width, with a sensible minimum width.
  • Tabs should be draggable.

cosmic-term cut/paste doesn't work

While trying to cut/paste an error message from cosmic-term into my browser (Brave),

  1. highlight, middle button doesn't work
  2. edit > cut, right-click > paste doesn't work
  3. cntr-c, cntr-v, doesn't work

I also tried all the above into another app (Joplin), doesn't work

Panic on Thelio Major (Pop!_OS Gnome) system

bbarker@pop-os-thelio-major:~/workspace/cosmic-term$ [2024-01-16T19:47:41Z WARN wgpu_hal::gles::egl] No config found!
[2024-01-16T19:47:41Z WARN wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2024-01-16T19:47:41Z ERROR winit::platform_impl::platform] X11 error: XError {
description: "BadMatch (invalid parameter attributes)",
error_code: 8,
request_code: 149,
minor_code: 4,
}
[2024-01-16T19:47:41Z ERROR winit::platform_impl::platform] X11 error: XError {
description: "BadMatch (invalid parameter attributes)",
error_code: 8,
request_code: 149,
minor_code: 4,
}
[2024-01-16T19:47:41Z ERROR winit::platform_impl::platform] X11 error: XError {
description: "BadMatch (invalid parameter attributes)",
error_code: 8,
request_code: 149,
minor_code: 4,
}
thread 'main' panicked at /home/bbarker/.cargo/git/checkouts/winit-40d7deb2b0c08730/c6ad672/src/platform_impl/linux/x11/window.rs:1028:18:
Failed to call XMapRaised: XError { description: "BadMatch (invalid parameter attributes)", error_code: 8, request_code: 149, minor_code: 4 }
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
thread 'main' panicked at /home/bbarker/.cargo/git/checkouts/winit-40d7deb2b0c08730/c6ad672/src/platform_impl/linux/x11/window.rs:513:34:
called Result::unwrap() on an Err value: PoisonError { .. }
stack backtrace:
0: 0x5d4277e8b29c - std::backtrace_rs::backtrace::libunwind::trace::ha637c64ce894333a
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
1: 0x5d4277e8b29c - std::backtrace_rs::backtrace::trace_unsynchronized::h47f62dea28e0c88d
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x5d4277e8b29c - std::sys_common::backtrace::_print_fmt::h9eef0abe20ede486
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:67:5
3: 0x5d4277e8b29c - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hed7f999df88cc644
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:44:22
4: 0x5d4277ebadf0 - core::fmt::rt::Argument::fmt::h1539a9308b8d058d
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/fmt/rt.rs:142:9
5: 0x5d4277ebadf0 - core::fmt::write::h3a39390d8560d9c9
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/fmt/mod.rs:1120:17
6: 0x5d4277e87aef - std::io::Write::write_fmt::h5fc9997dfe05f882
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/io/mod.rs:1762:15
7: 0x5d4277e8b084 - std::sys_common::backtrace::_print::h894006fb5c6f3d45
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:47:5
8: 0x5d4277e8b084 - std::sys_common::backtrace::print::h23a2d212c6fff936
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:34:9
9: 0x5d4277e8c9c7 - std::panicking::default_hook::{{closure}}::h8a1d2ee00185001a
10: 0x5d4277e8c72f - std::panicking::default_hook::h6038f2eba384e475
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:292:9
11: 0x5d4277e8ce48 - std::panicking::rust_panic_with_hook::h2b5517d590cab22e
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:779:13
12: 0x5d4277e8cd2e - std::panicking::begin_panic_handler::{{closure}}::h233112c06e0ef43e
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:657:13
13: 0x5d4277e8b766 - std::sys_common::backtrace::__rust_end_short_backtrace::h6e893f24d7ebbff8
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:170:18
14: 0x5d4277e8ca92 - rust_begin_unwind
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:645:5
15: 0x5d42772ee2d5 - core::panicking::panic_fmt::hbf0e066aabfa482c
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panicking.rs:72:14
16: 0x5d42772ee813 - core::result::unwrap_failed::hddb4fea594200c52
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/result.rs:1653:5
17: 0x5d42775a0ca3 - winit::platform_impl::platform::x11::window::UnownedWindow::shared_state_lock::hfeca5465aa45b1e9
18: 0x5d4277590e6b - <winit::window::Window as core::ops::drop::Drop>::drop::ha6374fbbeda26478
19: 0x5d427741aead - core::ptr::drop_in_placewinit::window::Window::h38a2c8fb35b75d4f
20: 0x5d427740a53c - iced_winit::application::run::{{closure}}::ha0ea0ded7c87f061
21: 0x5d4277314637 - winit::platform_impl::platform::x11::EventLoop::run_return::single_iteration::h50a0b41e59efd4a8
22: 0x5d4277314f3b - winit::platform_impl::platform::x11::EventLoop::run_return::h96fbed7b4de421e5
23: 0x5d4277324a27 - iced_winit::application::run::h15e3ae1aafc94bae
24: 0x5d42773b42f7 - cosmic::app::run::h5cce4c2b13feab7e
25: 0x5d4277408eba - cosmic_term::main::h26e0456ad3e28dc1
26: 0x5d4277427653 - std::sys_common::backtrace::__rust_begin_short_backtrace::h776b846c1ab9294e
27: 0x5d42773da579 - std::rt::lang_start::{{closure}}::h53d95d8cd470707d
28: 0x5d4277e7fa17 - core::ops::function::impls::<impl core::ops::function::FnOnce for &F>::call_once::hd95060ecd5e1ca24
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/ops/function.rs:284:13
29: 0x5d4277e7fa17 - std::panicking::try::do_call::h6e8cf51db32a6e4b
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:552:40
30: 0x5d4277e7fa17 - std::panicking::try::h3a52eefe24fe3c29
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:516:19
31: 0x5d4277e7fa17 - std::panic::catch_unwind::h24c28c23c02c3841
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panic.rs:142:14
32: 0x5d4277e7fa17 - std::rt::lang_start_internal::{{closure}}::h705d3c9cbc06ef47
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/rt.rs:148:48
33: 0x5d4277e7fa17 - std::panicking::try::do_call::ha21f52ba13158470
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:552:40
34: 0x5d4277e7fa17 - std::panicking::try::h5581346bf6aeb1f8
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:516:19
35: 0x5d4277e7fa17 - std::panic::catch_unwind::h7919645a6b72e25b
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panic.rs:142:14
36: 0x5d4277e7fa17 - std::rt::lang_start_internal::h12de51168669836e
at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/rt.rs:148:20
37: 0x5d42773da56e - std::rt::lang_start::h4cf55d11cb2904bb
38: 0x76eb8be29d90 -
39: 0x76eb8be29e40 - __libc_start_main
40: 0x5d42772eed85 - _start
41: 0x0 -
thread 'main' panicked at library/core/src/panicking.rs:144:5:
panic in a destructor during cleanup
thread caused non-unwinding panic. aborting.

Strange rendering of emojis

I have some old emoji font installed, not sure which font it belongs to, but then I also have NotoColorEmoji.ttf and that is the emojis I normally see. Now when I paste U+1F600 to a new line in the terminal, it renders it using the old emoji font, but the next time I paste it I get the color emoji (however, rendered very small).

To reproduce

  1. Go to https://www.unicode.org/emoji/charts/full-emoji-list.html#1f600
  2. copy the emoji character
  3. In a new line in the terminal, paste it multiple times

This is how it looks
image

Default shell

Add ability to select default shell and startup commands.

Feature request: zoom

Zoom in: Ctrl + + (some terminals require shift so it's a real + instead of a =)
Zoom out: Ctrl + -
Zoom 100%: Ctrl + 0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.