|
Project Information
Members
Featured
Downloads
Links
|
FbTerm is a fast terminal emulator for linux with frame buffer device or VESA video card. Features include:
News[2010-10-06] Release version 1.7
From version 1.7, FbTerm redirects /dev/tty0 output to the pseudo terminal of current sub-window. In linux before version 2.6.10, anybody can do this as long as the output was not redirected yet; since version 2.6.10, only root or a process with the CAP_SYS_ADMIN capability may do this. In a number of CJK encodings there are ambiguous width characters which have a width of either narrow or wide depending on the context of their use. By default, FbTerm treats them as narrow width characters, the new added option "ambiguous-wide" may be used to change the behavior. [2009-11-14] Release version 1.6
From version 1.6, FbTerm adds VESA video card support. By default, FbTerm tries frame buffer device first, if failure, then tries to use VESA device with highest resolution and color depth. option "vesa-mode" may be given to force only open VESA device with the specified video mode. To see available video modes for your VESA card, execute 'fbterm --vesa-mode=list'. VESA support requires root privilege to work, and user don't force to use VESA device on the system with frame buffer device enabled, they maybe conflict with each other. [2009-04-26] Release version 1.5
From version 1.5, user can execute FbTerm with fbterm [options] [--] [command [arguments]]. Normally FbTerm checks the SHELL variable. If that is not set, it tries to use the user's login shell program specified in the password file. If that is not set, /bin/sh will be used. command [arguments] may be given to override the built-in choice of shell program. You should use the -- argument to separate FbTerm's options from the arguments supplied to the command. Background image support has been added in this version. FbTerm doesn't load and parse any image file with various formats directly, instead it takes a screenshot of frame buffer device on startup if variable FBTERM_BACKGROUND_IMAGE is defined, then uses this screenshot as the background for text rendering. In order to enable background image support, user should first put a image to frame buffer device with a image viewer. The updated FbTerm's man page contains a demo script using fbv. Here is a screenshot:
[2009-03-14] Release version 1.4
xterm has a 256 color mode extension, FbTerm also add it in this version. But xterm's 256 color escape sequences conflict with the linux sequences implemented by FbTerm, so private escape sequences were introduced to support this feature: ESC [ 1 ; n } set foreground color to n (0 - 255) ESC [ 2 ; n } set background color to n (0 - 255) ESC [ 3 ; n ; r ; g ; b } set color n to (r, g, b) , n, r, g, b all in (0 - 255) and a new terminfo database entry named "fbterm" was added to use these private sequences, all program based on terminfo should work with it. By default, FbTerm sets environment variable "TERM" to value "linux", you need run "TERM=fbterm /path/to/program" to enable 256 color mode. [2008-12-20] Release version 1.3
In version 1.3, FbTerm first uses option value specified in command line arguments, then in the configure file $HOME/.fbtermrc. The format of configure file has been changed from "option_name=val" to "option-name=val", and several option names been modified to keep conformance with command line arguments. Old $HOME/.fbtermrc should be deleted when your begin to run this new version. Instead of adding input method directly in FbTerm, a client-server based input method framework is designed to do this work. FbTerm acts as a client, standalone IM program as a server, they run in separated processes and communicate each other with predefined IM messages in a unix socket pair. FbTerm provides a guide document and a IM demo to help developers understand the IM framework, and the fundamental sources of demo will make IM development more easier. Here is the screenshot of this demo on clockwise 270 degrees rotated screen. Everyones who want to write IM servers for FbTerm are very welcome. At present, two IM servers are under heavy development. If you are a normal IM user, please stay tuned! [2008-10-12] Release version 1.2
FbTerm now support linux control sequence for changing the color palette, let's see a example: if [ "$TERM" = "linux" ]; then
echo -en "\e]P0222222" #black
echo -en "\e]P8222222" #darkgray
echo -en "\e]P1803232" #darkred
echo -en "\e]P9982b2b" #red
echo -en "\e]P25b762f" #darkgreen
echo -en "\e]PA89b83f" #green
echo -en "\e]P3aa9943" #brown
echo -en "\e]PBefef60" #yellow
echo -en "\e]P4324c80" #darkblue
echo -en "\e]PC2b4f98" #blue
echo -en "\e]P5706c9a" #darkmagenta
echo -en "\e]PD826ab1" #magenta
echo -en "\e]P692b19e" #darkcyan
echo -en "\e]PEa1cdcd" #cyan
echo -en "\e]P7ffffff" #lightgray
echo -en "\e]PFdedede" #white
clear #for background artifacting
fiAs with all escape codes, it begins with a little prefix indicating what the escape is actually doing: in this case "\e]P", which is the "set color" escape. The format for the data is "XRRGGBB" where X is the number of the color to modify (in hex). This is a standard 16 color notation, which I have commented above. RRGGBB indicates the red/green/blue values (0-255). To reset the color palette, use "\e]R". [2008-08-23] Release version 1.1
[2008-07-05] Release version 1.0 |
