Il s'agit d'un référentiel très basique pour ma police terminale IBM 3161 ASCII.
Ce référentiel contient une version bitmap de la police ainsi qu'une version TrueType (légèrement moins complète) créée via le programme "Tracing" de GNU Unifont qu'il utilise pour créer ses versions TrueType. Le TrueType couvre 0x00 à 0xFF (l'ensemble ASCII de base et la première banque «étendue»), tandis que j'ai étendu la police pour couvrir environ 0x17f dans les versions Bitmap. Au-delà de ces seuils, la police se repose plus ou moins sur les glyphes de Unifont, qui correspondent presque aux glyphes de police IBM, le cas échéant. Cela signifie également que je peux utiliser la police pour d'autres langues comme le japonais, ce qui est pratique dans un terminal si vous êtes dans une zone du monde qui n'utilise pas autant l'alphabet latin ou lorsque vous traitez avec des fichiers des utilisateurs d'une autre langue dans une fenêtre de terminal.
Créer le TrueType dans la mesure où j'ai déjà fait beaucoup d'efforts, en raison d'une prise de décision erronée dès le début du processus; Bien que je prévois de faire mieux à l'avenir, le fait demeure que la fixation / traduire les glyphes bitmap en trueType est beaucoup d'efforts - trop pour quelque chose que j'utilise rarement. Tous les éléments essentiels sont toujours dans le TTF, de toute façon, et je m'attends à ce que je continue lentement d'améliorer le trueype à l'avenir.
J'ai également inclus les fichiers de base de données FontForge Spline Font (SFD), qui sont du texte non compressé (et donc assez grand; désolé). Si vous voulez simplement utiliser la police, je suggère donc de télécharger le zip sur la page «Releases» au lieu de cloner le repo.
J'ai utilisé GNU Unifont comme base car il a l'air quelque peu similaire et couvre beaucoup d'Unicode au-dessus de la prise de base de mon terminal IBM de base. De plus, ses sources contenaient des outils utiles pour effectuer automatiquement des transformations sur les polices.
Depuis que j'ai créé cette police pour la première fois, je trouve de plus en plus de formats auxquels je peux le convertir! Chaque fois que je trouve un autre format à port, je le fais, puis j'ajoute un engagement ici. Plus récemment, une version Amiga (Made in Workbench 1.3 sur un Amiga 500), ainsi que Minecraft, Rockbox et une police spécifique à X11 Emacs (pour résoudre des problèmes de rendu étranges) ont été ajoutés.
Cette police est également disponible dans un pack de ressources compatibles Minecraft 1.11 et-up. Avec un ajustement mineur, cela devrait également fonctionner pour des versions antérieures et futures. Idéalement, Minecraft utilise GNU Unifont pour le texte Unicode, qui est également la base de ma police - cela a rendu simple à ajouter en modifiant certains outils inclus avec la distribution de source Unifont pour exporter la police.
Cela dépend de votre plateforme, mais je vais essayer de définir ce qui fonctionne où. Pour certains formats exotiques (par exemple Minecraft, Rockbox), les directions sont dans les sous-répertoires respectifs des ports.
Sur les plates-formes UNIX / Linux et Windows, les versions Bitmap bénéficient de ne pas obtenir de rendu de sous-pixels logiciel tenté comme la police TrueType. Cela est probablement vrai dans OS X également, mais je n'ai testé que la version .dfont de la police dans OS X en raison de ne pas avoir réellement accès régulièrement à OS X. (Le DFONT est une police Bitmap uniquement, donc il ne sera probablement pas rendu sous-pixel.)
Sur Windows, vous voudrez le fichier bitmap .fon Windows et / ou la police TrueType (.TTF). Ils peuvent être copiés manuellement en C:WindowsFonts , ou installés à partir de l'aperçu de la police.
Dans (Nonos X / NextStep) UNIX et Linux Distros avec X11, vous voudrez le Bitmap OpenType (.otb) et / ou la police TrueType (.TTF).
Il y a aussi une police PCF (police X11 à l'ancienne) qu'il peut être une bonne idée d'installer pour des programmes comme xterm et la version GUI d' emacs .
L'installation des trois versions (TTF, OTB et PCF) vous permet d'utiliser la police avec presque tous les programmes sur un système UNIX. Le TTF et l'OTB peuvent être sélectionnés avec la plupart des programmes d'interface graphique «Chooser de police», tandis que le PCF est utile pour les programmes X11 traditionnels comme xterm et est généralement défini via un fichier de configuration de texte comme ~/.Xresources ou ~/.emacs .
Je pense que ce sera la même chose sur les BSD avec X11 comme pour les distros Linux, car ils partagent une base de code pour leurs Serveurs X et Freetype.
C'est certainement la même chose dans OpenBSD et FreeBSD, où je l'ai essayé personnellement.
Les instructions pour l'installation de la police X11 PCF sont dans le fichier x11 / readme.md.
Copiez le fichier .TTF sur un chemin de police local (tel que ~/.fonts , ou sur un chemin de police à l'échelle du système (tel que / usr / share / fontts /). Ces chemins sont probablement dépendants de la distribution et du système d'exploitation.
Cela ne s'applique à ce que Debian et des dérivés. Cela pourrait être différent sur les distros que je n'ai pas essayé, mais je parie que cela fonctionne là aussi. Copier linux-console/IBM3161.psf à /usr/share/consolefonts/IBM3161.psf . Ensuite, modifiez /etc/default/console-setup , et ajoutez / modifiez la ligne FONT= pour lire:
FONT="IBM3161.psf"
Vous avez terminé. Vous devrez peut-être redémarrer pour qu'il se montre partout.
Le programme setfont de la ligne de commande devrait également être en mesure de l'appliquer sur une base spécifique unique.
TAISE: Rédigez l'installation de la console FreeBSD. Je ne l'ai actuellement pas fait changer dans chaque terminal, juste le principal dans lequel vous regardez le processus de démarrage. J'espère que je n'ai pas à recompiler le noyau pour l'obtenir partout.
Je vous assure cependant que cela fonctionne dans FreeBSD, cependant.
Sur Apple Systems (OS X), vous voudrez utiliser le fichier '.dfont'. Si cela échoue, essayez le .TTF ou le .pt3 (PS Type 3). IIRC, le processus d'installation était relativement intuitif.
Je ne sais pas encore comment il serait installé sur Mac OS "classique". Si quelqu'un a un système 7 ou plus de disquette que je peux utiliser pour démarrer mon Mac Plus, veuillez me le faire savoir (ou vous pourriez m'envoyer un meilleur Mac classique!)
Les instructions pour installer la version Minecraft de la police sont sous le répertoire minecraft/ .
Rockbox est un micrologiciel alternatif pour de nombreux lecteurs MP3. Il a été testé sur mon iPod Classic. Les instructions sont bien sûr dans le rockbox/ Directory.
Je ne peux plus prendre en charge ce port tant que je ne peux plus obtenir une nouvelle carte CompactFlash, car celle de mon iPod vient d'échouer et que le disque dur a échoué il y a de nombreuses années. N'hésitez pas à me tirer une question, mais je ne pourrais peut-être pas y répondre.
Il existe deux façons principales de procéder à cela. La première consiste à utiliser la police TrueType. Si je me souviens bien, cela espace tout correctement.
La version OTB ordinaire obtient tous les personnages rembourrés à 16px, quelle que soit leur largeur réelle. À cause de cela, il n'est pas recommandé.
Cependant, le fichier OTB 8wide/IBM3161APL.otb devrait fonctionner. C'est (si je me souviens bien) nommé comme tel parce qu'il est dérivé de la variante APL d'Unifont. J'ai découvert que la variante APL d'Unifont semble rendre correctement dans Emacs, et j'en ai donc fait une variante similaire pour ma propre police.
Je ne sais pas si c'est en fait parce que c'est la variante APL, ou parce que peut-être Emacs essaie de hiérarchiser les polices de style pcf sur des polices otb . Ou peut-être quelque chose d'autre lié à Freetype. Mais quel que soit le cas, si vous installez IBM3161APL.otb quelque part (je l'ai dans ~/.fonts/ ), vous devriez pouvoir le faire fonctionner dans GNU EMACS avec mx customize , ou bien l'ajouter manuellement à custom-set-faces dans votre fichier d'initialisation EMACS (généralement ~/.emacs ou ~/.emacs.d/init.el ).
Un exemple (à partir de mon ELISP custom-set-faces ) suit.
La ligne la plus importante sur laquelle se concentrer est celle contenant la chaîne IBM3161APL . Le reste est juste prévu pour le contexte. Il n'y a presque rien que je n'aime pas autant que un contexte insuffisant lorsque je regarde des échantillons de code, en particulier dans des langues inconnues.
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(default ((t (:family "IBM3161APL" :foundry "PfEd" :slant normal :weight normal :height 128 :width normal))))
'(term-color-blue ((t (:background "#2272D9" :foreground "#2272D9"))))
'(term-color-cyan ((t (:background "#06989A" :foreground "#06989A"))))
'(term-color-green ((t (:background "#4E9A06" :foreground "#4E9A06"))))
'(term-color-magenta ((t (:background "#A168AB" :foreground "#A168AB"))))
'(term-color-red ((t (:background "#CC0000" :foreground "#CC0000"))))
'(term-color-white ((t (:background "#D3D7CF" :foreground "#D3D7CF"))))
'(term-color-yellow ((t (:background "#C4A000" :foreground "#C4A000"))))
'(tooltip ((t (:inherit tooltip-ui :background "lightyellow" :foreground "black")))))
Si quelqu'un sait pourquoi cette variante IBM3161APL fonctionne réellement lorsque l'OTB ordinaire ne le fait pas, veuillez en parler. J'aimerais vraiment savoir!
J'ai caché la police de mon IBM 3161 à la main via son mode "Test" intégré, où il imprime tout son jeu de caractères ASCII sur un seul écran. En conséquence, je ne peux pas garantir qu'il est 100% précis en termes d'espacement entre les personnages, mais je peux dire que je n'ai pas encore remarqué quelque chose de mal. Je l'ai utilisé dans mon émulateur de terminal exclusivement depuis cinq mois maintenant.
Vous pouvez trouver certaines des images que j'ai utilisées ici (bien que j'en ai d'autres que j'ai faites avec un CRT ambre différent; j'ai encore besoin de déterrer ces fichiers).
En tant que tel, je suis aussi confiant que l'on peut l'être lorsque vous utilisez des suppositions et (dans une certaine mesure) retraçant les lettres en CAO et transformant mes photos de l'écran pour corriger la courbure du CRT. Je suis certain que les pixels verticaux sont exacts, car je peux distinguer les scans individuels du faisceau d'électrons sur mes photos. Je suis relativement certain que les pixels horizontaux sont précis en fonction du bon sens, le fait que la plupart des personnages auraient l'air extrêmement incorrects s'ils étaient déplacés sur un pixel, et à partir d'une trigonométrie que j'ai fait en utilisant les tracings CAD. Le caractère 0x7f est un motif en damier, ce qui m'a permis de savoir quel est le rapport d'aspect de chaque «pixel» sur le CRT près du centre de l'écran.
Si j'avais un Dumper ROM, je pouvais également jeter les ROM dans le terminal, car ils sont tous à douille. Cela peut arriver à l'avenir, mais j'utilise cette police dans mes émulateurs terminaux et dans d'autres endroits depuis l'année dernière et je n'ai pas encore trouvé de problèmes.
Si vous voulez pirater vous-même vous-même, je vous suggère d'utiliser le fichier .hex comme point de départ si vous voulez pouvoir générer des versions TrueType. Fusionnez-le avec les sources hexadécimales d'Unifont.
Ma police ne fournit actuellement pas la plupart des caractères non ASCII "étendus" qui sont dans le vrai 3161 (caractères supérieurs à 0x7F ). Même les personnages qui ont des équivalents Unicode ne les ont pas associés aux mêmes «nombres» que dans le terminal, et je ne suis pas assez intelligent / talentueux / obsessionnel pour les cartographier car je ne les utilise jamais. De plus, certains personnages n'ont pas d'équivalent Unicode dont je connais du tout.
Je voudrais également essayer d'en transformer la partie 3161 (pas l'ensemble d'Unifont) en une police TTF appropriée, ce qui signifie celle qui n'a pas l'air pixellé mais est fabriquée à l'aide de vecteurs pour les différents angles de la police. Si vous voulez un exemple de quelqu'un qui a fait cela pour une police similaire (mais pas identique!), Voir RBANFFY / 3270FONT.
Si quelqu'un veut les ajouter, je vous dirigerai sur les photos de l'écran du terminal dans son mode «test», qui contient une impression complète de tous les caractères que le terminal est capable d'afficher. N'hésitez pas à m'envoyer une demande de traction!
Ces fichiers de police sont concédés sous licence GNU General Public (le cas échéant), soit la version 2 ou (à votre option) une version ultérieure, à l'exception que l'intégration de la police dans un document ne constitue pas en soi une violation de la licence. Les termes complets de la licence sont dans la licence GNU Unifont.txt. Cette licence est héritée car j'ai basé ma police sur GNU Unifont pour presque tous les personnages non ASCII.
Si vous souhaitez utiliser uniquement les glyphes que j'ai créés (0x00-0x7f dans le trueType, ou 0x00-0xff Plus Unicode Exposcript et les chiffres numériques des indices dans le Bitmap), ces glyphes sont licenciés (à votre option) sous le GLU GPL Version 2 ou plus tard (avec une exception sur la prévision de la 3-CEMEUSE), le SIL Open Font Liced, version 1.1, ou 3-CELOUSS Licence BSD, qui est reproduite ci-dessous. De plus, contactez-moi si vous souhaitez l'utiliser dans un autre projet ou produit en termes incompatibles et je vous promets que je serai accommodant / pas un imbécile à ce sujet. Cela pourrait même être gratuit.
Copyright © 2017-2023 Wyatt Ward
La redistribution et l'utilisation dans les formulaires source et binaire, avec ou sans modification, sont autorisées à condition que les conditions suivantes soient remplies:
Les redistributions du code source doivent conserver l'avis de droit d'auteur ci-dessus, cette liste de conditions et l'avertissement suivant.
Les redistributions sous forme binaire doivent reproduire l'avis de droit d'auteur ci-dessus, cette liste de conditions et la clause de non-responsabilité suivante dans la documentation et / ou d'autres documents fournis avec la distribution.
Ni le nom du titulaire du droit d'auteur ni les noms de ses contributeurs ne peuvent être utilisés pour approuver ou promouvoir des produits dérivés de ce logiciel sans autorisation écrite préalable spécifique.
Ce logiciel est fourni par les détenteurs de droits d'auteur et les contributeurs "tels quels" et toutes les garanties expresses ou implicites, y compris, mais sans s'y limiter, les garanties implicites de qualité marchande et d'adéquation à un usage particulier sont déclinées. En aucun cas, le titulaire ou les contributeurs du droit d'auteur ne sera pas responsable de tout dommage directement, indirect, accessoire, spécial, exemplaire ou consécutif (y compris, mais sans interruption commerciale) Si vous êtes conseillé de la possibilité de tels dégâts.
- (retour en haut) -