/fontopia-mirror

Mirror of https://cvs.savannah.gnu.org/viewvc/fontopia/

Primary LanguageCGNU General Public License v3.0GPL-3.0

# 
#    Copyright 2015, 2016, 2017, 2018, 2024 
#    (c) Mohammed Isam Mohammed [mohammed_isam1984@yahoo.com]
# 
#    file: README
#    This file is part of fontopia.
#
#    fontopia is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    fontopia is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with fontopia.  If not, see <http://www.gnu.org/licenses/>.
#    

About:
======
Fontopia is an easy-to-use, text-based, console font editor.
What this means in simple English is that you can edit the fonts
that your GNU/Linux kernel is using to display your text on
text-based (vs graphical) terminals.

Unlike other console text editors which usually work on one PSF
version, or work on unicode tables only, or allow very minimal glyph
editing, fontopia provides all these functions together:
- It works on both PSF 1 & 2, you can even change file type and save
  it to disk in the other version.
- It allows exporting and importing of unicode tables from external
  files.
- It provides a user-friendly, easy-to-use glyph editor.
- It can easily change font metrics, e.g. length, width, height...

Console font files are commonly of PSF type (of which there are two
versions), or of CP type (legacy fonts). Fontopia works with PSF files
of both versions, as well as CP fonts, BDF files and raw font files.

Package dependencies:
=====================
Fontopia needs the GnuDOS and ncurses packages in order to run. Furthermore, 
if you are going to compile Fontopia from the source, you will need the 
following header files: dialogs.h, kbd.h and screen.h. These files are part of
the GnuDOS package. If you don't have GnuDOS installed on your system, 
you can download the sources from https://ftp.gnu.org/gnu/gnudos/, 
compile and install them, then retry running or compiling Fontopia.

Alternatively, if you are using an RPM-based distro, you can download and 
install the RPM from places like: https://pkgs.org/download/gnudos.
Additionally, Fedora, CentOS and RHEL users can use yum/dnf to install 
GnuDOS from the official repos. (Note: if you are installing GnuDOS 
from an RPM repo, and you want to compile Fontopia from the source, you 
will need to install the 'gnudos-devel' package in addition to the 'gnudos' 
package. The former package includes the above header files, which are 
needed to compile Fontopia from the source).

Supported formats:
==================
- PSF 1 and 2
- Linux Code pages (CP)
- Raw fonts
- BDF fonts (beta)
- PCF font and Windows FON files support are under development

WARNING:
========
(1) There is a major downside currently: fontopia doesn't work with unicode
    sequences properly (at least not in all cases). If you export a unicode
    table, edit it, and then import it to a fontfile, you should be safe.
(2) Note that if you changed the font version from CP to any other version,
    only the ACTIVE font will be changed, as the other font formats (PSF,
    Raw, BDF) don't support multiple fonts inside the same font file. In this
    case, you will need to open the original CP file multiple times, every
    time select a different font size (by using '1'-'4' number keys) and
    convert to the new font version, then reopen the original CP file, select
    another font size, convert it, and so on.

Navigation:
===========
Using the editor is very easy:
(1)  Navigate the glyphs on the right side window using the arrow keys. Edit
     a single glyph using ENTER (or TAB).
(2)  Navigate the bits that form a single bit (on the left side window)
     using arrow keys. Press ENTER or SPACE to set/unset the desired bit. Go
     back to right window (glyph list) using TAB.
(3)  To zoom in (make the glyph on the left look bigger), press Z.
(4)  To zoom out, press X.
(5)  To open a new file, press CTRL+O.
(6)  To create a new font from scratch, press CTRL+N.
(7)  To save your work, press CTRL+S.
(8)  To save with a new filename, press CTRL+D (aka Save As..).
(9)  To quit the editor, press CTRL+Q.
(10) To show help, press CTRL+H.
(11) To copy a glyph, press CTRL+C.
(12) To cut a glyph, press CTRL+X.
(13) To paste a glyph, press CTRL+V.
(14) To show about dialog box, press A.
(15) To switch buffer mode (on/off), press CTRL+B.
(16) To clear a glyph (i.e. remove all bits), press C.
(17) To invert a glyph, press D.
(18) To export font unicode table (by default to a file with same original
     file name plus .tab extension), press E.
(19) To flip a glyph horizontally, press H.
(20) To import unicode table from another file, press I.
(21) To show these keys without the extra jargon, press K.
(22) To show font metrics window, press M.
(23) To change codepage of a CP font, press P.
     If font is in BDF format, P shows properties (or metadata).
(24) To remove unicode table from font, press CTRL+R.
(25) To set a glyph (i.e. set all bits), press S.
(26) To show font unicode table, press U.
(27) To flip a glyph vertically, press V.
(28) To export font glyphs in textual format (by default to a file with
     same original file name plus .glyph extension), press W.
     You can alternatively export glyphs to a C source file by pressing CTRL+W.
(29) If editing a CP font and you want to change the active font (e.g.
     edit the 8x8 font instead of the 16x8 font you are currently editing)
     press any key from '1' to '4' and the respective font will be the
     active font to be edited. You can go back and forth by using the
     number keys.

The unicode values that are mapped to a specific glyph are shown on the
status bar (the bottom strip) to the right side.

That should make you ready to move around and edit your fonts. Have fun!.