#ncurses

furiclefuricle
2025-05-21

I had a thought this morning, and went digging for a simple way to make a pretty display on a linux console from bash.

Found bashsimplecurses, but...

I get q and x instead of lines. Do some googling and it's mostly people talking about putty?

Found if I stick `export NCURSES_NO_UTF8_ACS=1` in .bashrc then it works when I ssh in from Windows... but still gives me x's and q's from the linux console (actual control-alt-f1 console).

Suggestions?

2025-05-20

I've been looking at the source code of #Microsoft 's new #edit tool after @bsletten mentioned it.

This comment saddens me:

github.com/microsoft/edit/blob

It's untrue in two ways.

First, #VIM, and its predecessors, very much *did* work this way, and have done since the 1980s.

It's how #ncurses works. Anything using ncurses works this way, and even most full-screen programs that just use termcap/terminfo directly do things this way.

It was an important thing to do back in the days of 9600 BPS terminals. If one didn't, one's full-screen program was painfully unusable. *Of course* programs did things this way.

Second, reading further down the code shows that the comment is exactly backwards. It is in fact Microsoft's new EDIT that writes the unnecessary stuff; lots of it, especially if your terminal window is a wide one.

Getting it to do limited updates (of less than entire screen lines at a time) is a to-do item:

github.com/microsoft/edit/blob

#OpenSource

2025-04-26

#ncurses #lernen
@lukianos Danke für die Empfehlung!

Buch mit dem Titel „Ncurses Programming”
Lukianos (Fabian)lukianos
2025-04-12

Going down the Ncurses rabbit hole for fun and adventure. 😎🤩

cr0n0s:~🐧📡⌨️ 🛠️ #cr0n0s@social.tchncs.de
2025-04-05

$ rtorrent tu_pelicula_o_lo_que_quieras.torrent

Disfruta de un #tui muy completo, para descargar tus torrents. Debe de estar presente en tus repositorios locales.

#ncurses #cli

codeDude :archlinux: :neovim:codeDude@fosstodon.org
2025-04-04

Hey #FLOSS #FOSS people check this project github.com/PlankCipher/kabmat #kabmat is a #tui #kanban board. Honestly is the most beautiful #ncurses implementation that I've seen

2025-03-28
🎉️ Profanity 0.15.0 has been released 🎉️
Profanity is a console based XMPP client written in C using ncurses and libstrophe, inspired by Irssi
🙏️ 9 people contributed to this release.

✨️ Change default download location /url save $someurl will now download to ~/.local/share/profanity/downloads/from_jid/date/filename instead of ~/.local/share/profanity/downloads.
✨️ Introduce /redraw command
✨️ Handle alt+enter as newline char
✨️ ... and more ...

#Profanity #XMPP #ncurses
2025-03-02
Ich habe eben eine Demo Programm für ncurses gefunden: hanoi.

Ein sicherlich bekanntes Spiel,...

#Linux #GNU #ncurses
2025-02-05

Wow, Grzegorz's #CLI 📅 #calendar tool Plany looks amazing, it's written in @CrystalLanguage and it can be managed in #yaml:

github.com/gergelyk/plany

#CrystalLang #CrystalLanguage #commandline #meetings #ncurses #linux #opensource #foss

Santiago Piquerasspiqueras@fosstodon.org
2025-02-02

Given that we're here, can I detect it with #C? Remember, I hadn't used C in 15 years! (give or take)

So after digging into the documentation, trying to remember how to pass pointers and stuff, and a couple of happy Segmentation Faults, I managed to test it!

And this is what curses thinks it's printing: `26b7`... the code for the Chiron character compart.com/en/unicode/U+26B7

Which means that, no, I can't detect that it's not being printed, because #ncurses itself thinks it's being printed. Whoops.

Santiago Piquerasspiqueras@fosstodon.org
2025-02-02

An update on my #ncurses / #macos / #python saga
fosstodon.org/@spiqueras/11390

Refresher: the ⚷ is not printed when using ncurses on macOS. First I tested with Python, then with C, same result.

So I thought: can I _detect_ if it's being printed or not?

Turns out there's a function to query the (wide) characters that are being displayed: invisible-island.net/ncurses/m. Yay!

But... it's not implemented in Python :( asottile tried for 4 years until he gave up github.com/python/cpython/pull

Santiago Piquerasspiqueras@fosstodon.org
2025-01-28

I guess this marks the end of my #ncurses experience.

Squidward lawn chair meme. First image shows Squidward setting up a lawn chair with the text "Want to report a bug upstream". Second image shows Squidward going home with the chair folded with the text "They use a mailing list".
Santiago Piquerasspiqueras@fosstodon.org
2025-01-28

Update on my #ncurses experience fosstodon.org/@spiqueras/11389

I installed the latest ncurses from brew and compiled a sample #c program. First time in 15 years that I compile C code that I wrote :D

```
#include <locale.h>
#include <ncurses.h>

int main()
{
setlocale(LC_CTYPE, "");
initscr();
printw("This character will not be printed: ⚷");
refresh();
getch();
endwin();

return 0;
}
```

And it does not work. So not a #Python issue, but a curses-on-macOS issue.

Santiago Piquerasspiqueras@fosstodon.org
2025-01-26

Sometimes you have one of those bugs you don't know who to blame for. This is me right now:

```
import curses

def main(stdscr):
stdscr.clear()
stdscr.addstr(0, 0, 'This character will not be printed: ⚷')
stdscr.refresh()
stdscr.getkey()

curses.wrapper(main)
```

The above #Python code fails to print the character ⚷ (Chiron) in a Sonoma #macOS. Tested with Python 3.9 to 3.13, two terminal emulators, #ncurses versions 6.0 (20150808) and 6.5 (20240427). I'm out of ideas.

Gary "grim" Kramlichgrimmy
2025-01-09

@north As I tell people everytime this comes up... Pidgin is the frontend to libpurple, Finch is the frontend, and Quail, while experimental is the frontend.

If you want an frontend to libpurple, there's is literally nothing stopping you from doing it right now instead of bugging me to do it.

Kevin Karhan :verified:kkarhan@infosec.space
2025-01-05

@puppygirlhornypost2 no, because that's just wasteful!

What is the best command line (console) audio player on Linux?

#Linux #commandline #shell #console #cmus #moc #mocp #ncmpcpp #mpd #ncurses

ncmpcpp (NCurses Music Player Client Plus Plus) is a ncurses based MPD client with many features inspired by ncmpc.

Andrzej Rybczak, the developer, says that no new, substantial features should be expected because the project is in maintenance mode. He does not have time to further develop the audio player. However, if there are any serious bugs or incompatible issues, he will fix them.

github.com/ncmpcpp/ncmpcpp

#Linux #console #ncurses #ncmpcpp #MPD #ncmpc

2024-12-24

Fullstack v2: учимся писать UI на Go

Меня зовут Илья Глухов. Последние 7 лет я пишу на Go. Я люблю этот язык, а ещё люблю задаваться странными, на первый взгляд, вопросами. Например, как разные интересные штуки, которые мы пишем на Go взаимодействуют с пользователем? В классическом бэкенде мы при помощи RPC (Remote Procedure Call), протокола HTTP или разных очередей модифицируем поведение нашей программы. А что насчёт graphic UI? Он же из фронтенда? Или нам так только кажется? Давайте создадим пользовательский интерфейс (UI) на Go. Выбор решений разнообразен: Gopherjs, gomobile, обёртки для Qt, GTK и много чего ещё. Но если мы хотим добиться кросс-платформенной совместимости для браузеров, мобильных устройств и десктопов, нам нужен универсальный UI. Давайте на практическом примере разберём как создать его на Go.

habr.com/ru/companies/oleg-bun

#go #ui #fullstack #мобильные_приложения #pwa #amp #кросплатформенная_разработка #адаптивная_вёрстка #gopherjs #ncurses

Paul SomeoneElsepkw@mastodon.sdf.org
2024-12-09

Serious #ncurses programming

#C

This is a screenshot of a unix terminal window showing a ncurses program output with a simple graphic thinh with some lines and colors.

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst