Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Console Font Download

170 views
Skip to first unread message

Kena Tilson

unread,
Jan 3, 2024, 3:43:55 PM1/3/24
to
I know the font size in xcode can be set in Preference -> Fonts & Colors. But, even I set THE SAME font size for editor area and console area, the two areas show text with visually different size. The size 15 in console area is a little bigger than size 15 in editor area, but it's smaller than size 15.1. Seems the two area shows text with completely different mechanism (or engine?).


I try several other editors & browsers that can show mono fonts, find that Terminal and Sublime Text2 shows the same size as xcode editor area, while Firefox and svnX review area shows the same size as xcode console area. My question is:



console font download

Download https://t.co/5JXiDSzSEE






I visited the man page, but it is a bit unclear. It says that FONT= configures the concole font, bu it does not explain what the value should be, just a name of a font (and when yes, where and how is that font to be found), or a file name of a file that contains the font (and when yes, what is the path to that file?). or different.


I have made my own custom bitmap font and I'm able to successfully use it for all virtual consoles by setting the CONSOLEFONT variable in rc.conf. However, I'd like the console to use the font as soon as the kernel boots as opposed to having the font set midway through the boot process.


Upon further testing, it looks like some fonts will indeed work correctly in early userspace. This Ubuntu thread tipped me off to the possibility that the KDFONTOP error is limited to only certain fonts.


For some reason trying to load my custom font at this early stage in the boot process gives the KDFONTOP error. However, this very same font has no problems loading if it is done later in the init process. It both cases it is the setfont command which is used to load the font but something must be different.


I've found a solution to the problem. It occurred to me that the setfont command rolled into the initramfs image and used in early userspace was perhaps not the same setfont that is installed on my system.


This will unpack the initramfs image under the /initramfs directory. Browsing the /initramfs/bin directory it became clear that the copy of setfont was a symlink to the busybox executable and hence the busybox implementation.






The problem can be solved by adding setfont to the BINARIES array in mkinitcpio.conf and rebuilding the initramfs image. This will copy the version of setfont provided by the kbd package into the initramfs image instead of relying on the busybox version of setfont which would otherwise be used by default.


Though this solves my problem, I'm not sure why the setfont provided by busybox chokes on my font but works with others. Busybox being what it is, tends to provide commands that are less full-featured than their usual counterparts. If anyone has any ideas though, I'd love to know.


Here's the riddley part: I have the consolefont hook in mkinitcpio.conf, and THAT works! It shows me terminus as the font early in the boot process, and reverts to the default monospaced font around the time when the filesystems are being mounted. I am confused. Has anyone any insight for me?


"FONT=ter-112n" works for me in vconsole.conf. It doesn't work for the OP. He has a consolefont hook in his mkinitcpio.conf, I don't.

"FONT=ter-v12n" also works for me, and does exactly the same thing ter-112n does.


When the graphics drivers are loaded they reset your console settings. You could try adding your graphics module to the initramfs to see if the cause is that the vconsole-setup is ran before the graphics module is inserted.


I have a high resolution monitor and some areas in the console have a font size that is so small that it is really hard to read. I am unable to find any settings in the console where this can be customized.


My second would be to open Internet Explorer and see whether any changes to font sizes or settings there have an effect. Most of the Console is run as embedded IE objects so there may be some benefit to tuning there.


I am having the same problem. With the setup above, after I run nixos-rebuild switch, I can go to a TTY and the font is set properly. However, after a boot, the font is back to the default small font. A quick nixos-rebuild fixes the situation temporarily until the next reboot.


If the service has not failed, but font is still not loaded, then the issue is with a race condition between font and videodriver: fontconfig will load the font bitmap into video memory. Reloading a videodriver will clean the memory and cause fontconfig reset. Currently the video driver is stored in kernel - it can either be built-in or stored as module to be loaded on demand. This driver stays dormant, unless explicitly loaded by user or loaded by xorg/wayland. The problem is that Xorg/Wayland start late on the list - thus the font gets applied near start and then driver load causes the changes to be reset.


I have already made the change to "Cmd.exe", but the problem is I also execute a lot of other console applications by directly executing them (I'm a developer). Each time I launch a new executable I have to change the font to match my preferences.


The default settings have the font size at 11 for some reason, which is too small. I want to make the default size 16 or 18, and have it automatically be applied to any console window that is ever opened on the system.


I've installed fonts-spleen and run dpkg-reconfigure console-setup to change my console font but there is no option for spleen. The spleen fonts are installed in /usr/share/consolefonts/ with terminus fonts and the rest.


The way to do this on a systemd operating system such as CentOS 7 is to edit the font settings in the /etc/vconsole.conf file. These settings are applied by the systemd-vconsole-setup service, which is essentially a glorified way of running setfont and loadkeys before the login services are brought up.


Note that the service program allows kernel command-line options such as vconsole.font to override /etc/vconsole.conf contents. If you are mucking around with GRUB kernel command-line options, bear this in mind.


The console, unlike most services that interact directly with users, is implemented in the kernel. This contrasts with terminal emulation software, such as Xterm, which is implemented in user space as a normal application. The console has always been part of released Linux kernels, but has undergone changes in its history, most notably the transition to using the framebuffer and support for Unicode.


Despite many improvements in the console, its full backward compatibility with legacy hardware means it is limited compared to a graphical terminal emulator. The main difference between the Linux console and graphical terminal emulators is the shells in the Linux console are attached directly to TTY devices (/dev/tty*), whereas the shells in a graphical terminal emulator are attached to pseudo-TTYs (/dev/pty*).


Also, graphical terminal emulators can have many more features than the Linux console, including a richer set of available fonts, multiple tabs/windows, split views, scrollback buffers/sliders, background colors/images (optionally with transparency), etc. Some of these features can be used in the Linux console with terminal multiplexers, such as Tmux or GNU Screen, or in certain text user interface programs (TUI) typically relying on libraries such as ncurses and the like, e.g. Vim, nano, or Emacs. These can also be used in graphical terminal emulators, if desired.


The console is presented to the user as a series of virtual consoles. These give the impression that several independent terminals are running concurrently; each virtual console can be logged in with different users, run its own shell and have its own font settings. The virtual consoles each use a device /dev/ttyX, and you can switch between them by pressing Alt+Fx (where x is equal to the virtual console number, beginning with 1). The device /dev/console is automatically mapped to the active virtual console.


Since Linux originally began as a kernel for PC hardware, the console was developed using standard IBM CGA/EGA/VGA graphics, which all PCs supported at the time. The graphics operated in VGA text mode, which provides a simple 80x25 character display with 16 colours. This legacy mode is similar to the capabilities of dedicated text terminals, such as the DEC VT100 series. It is still possible to boot in text mode (with vga=0 nomodeset) if the system hardware supports it, but almost all modern distributions (including Arch Linux) use the framebuffer console instead.


As Linux was ported to other non-PC architectures, a better solution was required, since other architectures do not use VGA-compatible graphics adapters, and may not support text modes at all. The framebuffer console was implemented to provide a standard console across all platforms, and so presents the same VGA-style interface regardless of the underlying graphics hardware. As such, the Linux console is not a terminal emulator, but a terminal in its own right. It uses the terminal type linux, and is largely compatible with VT100.


The Linux console uses UTF-8 encoding by default, but because the standard VGA-compatible framebuffer is used, a console font is limited to either a standard 256, or 512 glyphs. If the font has more than 256 glyphs, the number of colours is reduced from 16 to 8. In order to assign correct symbol to be displayed to the given Unicode value, a special translation map, often called unimap, is needed. Nowadays, most of the console fonts have the unimap built-in; historically, it had to be loaded separately.


By default, the virtual console uses the kernel built-in font with a CP437 character set[1], but this can be easily changed. The kernel offers about 15 built in fonts to choose from, from which the officially supported kernels provide two: VGA 8x16 font (CONFIG_FONT_8x16) and Terminus 16x32 font (CONFIG_FONT_TER16x32). The kernel chooses the one to use based on its evaluation of the screen resolution. Another builtin font can be forced upon by kernel parameters boot parameter setting such as fbcon=font:TER16x32.

35fe9a5643



0 new messages