{"id":13395452,"url":"https://github.com/sunaku/tamzen-font","last_synced_at":"2025-04-12T23:38:29.987Z","repository":{"id":2065061,"uuid":"3003661","full_name":"sunaku/tamzen-font","owner":"sunaku","description":"💌 Bitmapped programming font, based on Tamsyn","archived":false,"fork":false,"pushed_at":"2023-02-28T08:54:51.000Z","size":1528,"stargazers_count":924,"open_issues_count":10,"forks_count":29,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-12T23:38:24.518Z","etag":null,"topics":["bitmap-font","font","monospace-font"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sunaku.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2011-12-17T23:24:00.000Z","updated_at":"2025-04-12T04:41:54.000Z","dependencies_parsed_at":"2023-07-05T17:15:47.510Z","dependency_job_id":null,"html_url":"https://github.com/sunaku/tamzen-font","commit_stats":{"total_commits":104,"total_committers":6,"mean_commits":"17.333333333333332","dds":0.4423076923076923,"last_synced_commit":"3255e8259bc9b880c60ab8b737ec8aa574e00d75"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaku%2Ftamzen-font","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaku%2Ftamzen-font/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaku%2Ftamzen-font/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunaku%2Ftamzen-font/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sunaku","download_url":"https://codeload.github.com/sunaku/tamzen-font/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248647255,"owners_count":21139081,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitmap-font","font","monospace-font"],"created_at":"2024-07-30T17:01:59.336Z","updated_at":"2025-04-12T23:38:29.961Z","avatar_url":"https://github.com/sunaku.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"Tamzen font\n===========\n\nThis is [my personal fork][1] of the wonderful [Tamsyn font by Scott Fial][2].\nIt's programmatically forked from Tamsyn version 1.11 by the `Rakefile` script\n(see *[Building](#building)* below) which backports glyphs from older versions\nwhile deleting deliberately empty glyphs (which serve as unimplemented markers)\nto allow secondary fallback fonts to provide real glyphs at those code points.\n\nThe \"TamzenForPowerline\" fonts contain additional [Powerline symbols][5] that\nI initially generated using [ZyX_I's bitmap-font-patcher][6] and then later\nhand-tuned to perfection using the gbdfed(1) graphical bitmap font editor:\n\n* For all icons, I expanded them to occupy the maximum available space.\n* For the fork icon ( U+E0A0), I made the branch larger than the trunk.\n* For the newline icon ( U+E0A1), I made the \"N\" at the bottom larger.\n* For the padlock icon ( U+E0A2), I replaced the keyhole with // lines.\n\nOverview\n--------\n\n\u003c!-- vim-markdown-toc GFM --\u003e\n\n* [Screenshots](#screenshots)\n* [Installation](#installation)\n    * [Linux VT integration](#linux-vt-integration)\n    * [XTerm integration](#xterm-integration)\n    * [URxvt integration](#urxvt-integration)\n    * [WezTerm integration](#wezterm-integration)\n* [Building](#building)\n    * [Docker method](#docker-method)\n    * [Manual method](#manual-method)\n* [License](#license)\n\n\u003c!-- vim-markdown-toc --\u003e\n\nScreenshots\n-----------\n\n```sh\n$ cat screenshot.txt\nABCDEFGHIJKLMNOPQRSTUVWXYZ 12345\nabcdefghijklmnopqrstuvwxyz 67890\n{}[]()\u003c\u003e$*-+=/#_%^@\\\u0026|~?'\"`!,.;:\nIllegal1i = oO0          \nThe quick brown fox, (..) Hello,\njumps over lazy dog. /__\\ World!\n```\n\n![Tamzen10x20r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen10x20r.png)\n![Tamzen10x20b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen10x20b.png)\n\n![TamzenForPowerline10x20r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline10x20r.png)\n![TamzenForPowerline10x20b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline10x20b.png)\n\n![Tamzen8x16r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen8x16r.png)\n![Tamzen8x16b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen8x16b.png)\n\n![TamzenForPowerline8x16r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline8x16r.png)\n![TamzenForPowerline8x16b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline8x16b.png)\n\n![Tamzen8x15r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen8x15r.png)\n![Tamzen8x15b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen8x15b.png)\n\n![TamzenForPowerline8x15r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline8x15r.png)\n![TamzenForPowerline8x15b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline8x15b.png)\n\n![Tamzen7x14r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen7x14r.png)\n![Tamzen7x14b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen7x14b.png)\n\n![TamzenForPowerline7x14r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline7x14r.png)\n![TamzenForPowerline7x14b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline7x14b.png)\n\n![Tamzen7x13r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen7x13r.png)\n![Tamzen7x13b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen7x13b.png)\n\n![TamzenForPowerline7x13r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline7x13r.png)\n![TamzenForPowerline7x13b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline7x13b.png)\n\n![Tamzen6x12r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen6x12r.png)\n![Tamzen6x12b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen6x12b.png)\n\n![TamzenForPowerline6x12r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline6x12r.png)\n![TamzenForPowerline6x12b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline6x12b.png)\n\n![Tamzen5x9r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen5x9r.png)\n![Tamzen5x9b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/Tamzen5x9b.png)\n\n![TamzenForPowerline5x9r.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline5x9r.png)\n![TamzenForPowerline5x9b.bdf](https://github.com/sunaku/tamzen-font/raw/master/png/TamzenForPowerline5x9b.png)\n\n![man manual page](https://sunaku.github.io/papercolor-terminal-color-scheme-man.png)\n![man manual page](https://sunaku.github.io/gruvbox-terminal-color-scheme-man.png)\n![man manual page](https://sunaku.github.io/tomorrow-terminal-color-scheme-man.png)\n![man manual page](https://sunaku.github.io/xoria256-terminal-color-scheme-man.png)\n![man manual page](https://sunaku.github.io/zenburn-terminal-color-scheme-man.png)\n![tmux, vim, etc.](https://sunaku.github.io/tmux-layout-dwindle.png)\n\nInstallation\n------------\n\nUsing a package manager:\n\n[![Packaging status](https://repology.org/badge/vertical-allrepos/fonts:tamzen.svg)](https://repology.org/project/fonts:tamzen/versions)\n\nManually, in Linux:\n\n* [Download a release]( https://github.com/sunaku/tamzen-font/releases )\n  or clone this Git repository into `~/.fonts/tamzen-font` and then run:\n\n      xset +fp ~/.fonts/tamzen-font/bdf\n      xset fp rehash\n\n* You should now be able to see the \"Tamzen\" font family in `xfontsel`.\n\nManually, in Windows:\n\n* Copy the files from the `ttf/` folder into your Windows Fonts folder.\n\nManually, in macOS:\n\n* Drag \u0026 drop the files from the `ttf/` folder into your Font Book app.\n\n### Linux VT integration\n\n1. Switch to a Linux VT (virtual terminal) by pressing Control-Alt-F1.\n\n2. Run `showconsolefont` to see how the character map currently looks.\n\n3. Run `setfont ~/.fonts/tamzen-font/psf/TamzenForPowerline10x20.psf`.\n\n4. See how the character map now displays glyphs from the Tamzen font.\n\n5. Try running `setfont` with other Tamzen fonts in the `psf/` folder.\n\nSee \u003chttps://wiki.archlinux.org/index.php/Fonts#Console_fonts\u003e for details.\n\n### [XTerm][3] integration\n\nThe following Xresources allow you to dynamically switch between the various\nTamzen fonts by holding down Control and right-clicking in the XTerm terminal.\n\n    XTerm*font  : -*-tamzen-medium-*-*-*-16-*-*-*-*-*-*-*\n    XTerm*font1 : -*-tamzen-medium-*-*-*-9-*-*-*-*-*-*-*\n    XTerm*font2 : -*-tamzen-medium-*-*-*-12-*-*-*-*-*-*-*\n    XTerm*font3 : -*-tamzen-medium-*-*-*-13-*-*-*-*-*-*-*\n    XTerm*font4 : -*-tamzen-medium-*-*-*-15-*-*-*-*-*-*-*\n    XTerm*font5 : -*-tamzen-medium-*-*-*-16-*-*-*-*-*-*-*\n    XTerm*font6 : -*-tamzen-medium-*-*-*-20-*-*-*-*-*-*-*\n\n    ! Tamzen fonts for use with Powerline\n    XTerm*font  : -*-tamzenforpowerline-medium-*-*-*-16-*-*-*-*-*-*-*\n    XTerm*font1 : -*-tamzenforpowerline-medium-*-*-*-9-*-*-*-*-*-*-*\n    XTerm*font2 : -*-tamzenforpowerline-medium-*-*-*-12-*-*-*-*-*-*-*\n    XTerm*font3 : -*-tamzenforpowerline-medium-*-*-*-13-*-*-*-*-*-*-*\n    XTerm*font4 : -*-tamzenforpowerline-medium-*-*-*-15-*-*-*-*-*-*-*\n    XTerm*font5 : -*-tamzenforpowerline-medium-*-*-*-16-*-*-*-*-*-*-*\n    XTerm*font6 : -*-tamzenforpowerline-medium-*-*-*-20-*-*-*-*-*-*-*\n\nFeed the above snippet into the xrdb(1) program and then start a new XTerm to\nsee its effect.  Afterwards, you can add this snippet to your ~/.Xdefaults or\n~/.Xresources files to have these settings be automatically applied by XTerm.\n\n### [URxvt][4] integration\n\nThe following command aliases let you dynamically switch between the various\nTamzen fonts when run inside a shell that is attached to the URxvt terminal.\n\n    alias font=\"printf '\\e]710;%s\\007'\"\n\n    alias Tamzen-9=Tamzen5x9r\n    alias Tamzen5x9r='font -misc-tamzen-medium-r-normal--9-65-100-100-c-50-iso8859-1'\n    alias Tamzen5x9b='font -misc-tamzen-bold-r-normal--9-65-100-100-c-50-iso8859-1'\n\n    alias Tamzen-12=Tamzen6x12r\n    alias Tamzen6x12r='font -misc-tamzen-medium-r-normal--12-87-100-100-c-60-iso8859-1'\n    alias Tamzen6x12b='font -misc-tamzen-bold-r-normal--12-87-100-100-c-60-iso8859-1'\n\n    alias Tamzen-13=Tamzen7x13r\n    alias Tamzen7x13r='font -misc-tamzen-medium-r-normal--13-101-100-100-c-70-iso8859-1'\n    alias Tamzen7x13b='font -misc-tamzen-bold-r-normal--13-101-100-100-c-70-iso8859-1'\n\n    alias Tamzen-14=Tamzen7x14r\n    alias Tamzen7x14r='font -misc-tamzen-medium-r-normal--14-101-100-100-c-70-iso8859-1'\n    alias Tamzen7x14b='font -misc-tamzen-bold-r-normal--14-101-100-100-c-70-iso8859-1'\n\n    alias Tamzen-15=Tamzen8x15r\n    alias Tamzen8x15r='font -misc-tamzen-medium-r-normal--15-108-100-100-c-80-iso8859-1'\n    alias Tamzen8x15b='font -misc-tamzen-bold-r-normal--15-108-100-100-c-80-iso8859-1'\n\n    alias Tamzen-16=Tamzen8x16r\n    alias Tamzen8x16r='font -misc-tamzen-medium-r-normal--16-108-100-100-c-80-iso8859-1'\n    alias Tamzen8x16b='font -misc-tamzen-bold-r-normal--16-108-100-100-c-80-iso8859-1'\n\n    alias Tamzen-20=Tamzen10x20r\n    alias Tamzen10x20r='font -misc-tamzen-medium-r-normal--20-145-100-100-c-100-iso8859-1'\n    alias Tamzen10x20b='font -misc-tamzen-bold-r-normal--20-145-100-100-c-100-iso8859-1'\n\n    # Tamzen fonts for use with Powerline\n    alias TamzenForPowerline-9=TamzenForPowerline5x9r\n    alias TamzenForPowerline5x9r='font -misc-tamzenforpowerline-medium-r-normal--9-65-100-100-c-50-iso10646-1'\n    alias TamzenForPowerline5x9b='font -misc-tamzenforpowerline-bold-r-normal--9-65-100-100-c-50-iso10646-1'\n\n    alias TamzenForPowerline-12=TamzenForPowerline6x12r\n    alias TamzenForPowerline6x12r='font -misc-tamzenforpowerline-medium-r-normal--12-87-100-100-c-60-iso10646-1'\n    alias TamzenForPowerline6x12b='font -misc-tamzenforpowerline-bold-r-normal--12-87-100-100-c-60-iso10646-1'\n\n    alias TamzenForPowerline-13=TamzenForPowerline7x13r\n    alias TamzenForPowerline7x13r='font -misc-tamzenforpowerline-medium-r-normal--13-101-100-100-c-70-iso10646-1'\n    alias TamzenForPowerline7x13b='font -misc-tamzenforpowerline-bold-r-normal--13-101-100-100-c-70-iso10646-1'\n\n    alias TamzenForPowerline-14=TamzenForPowerline7x14r\n    alias TamzenForPowerline7x14r='font -misc-tamzenforpowerline-medium-r-normal--14-101-100-100-c-70-iso10646-1'\n    alias TamzenForPowerline7x14b='font -misc-tamzenforpowerline-bold-r-normal--14-101-100-100-c-70-iso10646-1'\n\n    alias TamzenForPowerline-15=TamzenForPowerline8x15r\n    alias TamzenForPowerline8x15r='font -misc-tamzenforpowerline-medium-r-normal--15-108-100-100-c-80-iso10646-1'\n    alias TamzenForPowerline8x15b='font -misc-tamzenforpowerline-bold-r-normal--15-108-100-100-c-80-iso10646-1'\n\n    alias TamzenForPowerline-16=TamzenForPowerline8x16r\n    alias TamzenForPowerline8x16r='font -misc-tamzenforpowerline-medium-r-normal--16-108-100-100-c-80-iso10646-1'\n    alias TamzenForPowerline8x16b='font -misc-tamzenforpowerline-bold-r-normal--16-108-100-100-c-80-iso10646-1'\n\n    alias TamzenForPowerline-20=TamzenForPowerline10x20r\n    alias TamzenForPowerline10x20r='font -misc-tamzenforpowerline-medium-r-normal--20-145-100-100-c-100-iso10646-1'\n    alias TamzenForPowerline10x20b='font -misc-tamzenforpowerline-bold-r-normal--20-145-100-100-c-100-iso10646-1'\n\n### [WezTerm][7] integration\n\nSpecify your desired font size along with the name of your desired font variant\n(either Tamzen or TamzenForPowerline) in your ~/.wezterm.lua configuration file:\n\n    return {\n      font_size = 10,\n      font = wezterm.font_with_fallback { 'TamzenForPowerline' },\n    }\n\nYou can also disable ligatures just for Tamzen fonts since they lack ligatures:\n\n    return {\n      font_size = 10,\n      font = wezterm.font_with_fallback {\n        {\n          family = 'TamzenForPowerline', weight = 'Medium',\n          -- disable ligatures for Tamzen since it lacks them\n          harfbuzz_features = { 'calt=0', 'clig=0', 'liga=0' },\n        },\n      },\n    }\n\nBuilding\n--------\n\n### Docker method\n\nIf you have Docker available, use the convenient `rake docker` command:\n\n    rake docker\n\n### Manual method\n\nYou can build the Tamzen fonts for yourself by running these commands:\n\n    bundle exec rake                 # build things only when necessary\n    bundle exec rake clobber         # destroy everything that we built\n    bundle exec rake clobber default # rebuild everything from scratch\n\nBut first, you'll need to install these dependencies (assuming Debian):\n\n    # NOTE: the \"xfonts-utils\" package provides both bdftopcf(1) and fonttosfnt(1)\n    sudo apt-get install ruby git imagemagick xfonts-utils bdf2psf default-jre gbdfed openjdk-11-jdk-headless\n    gem install bundler -v 2.3.26\n    bundle install\n\nSimilarly, if you've opted to use [bitmap-font-patcher][6] integration:\n\n    sudo apt-get install python python-fontforge python-pip python-dev libfreetype6-dev\n    pip install --user bdflib\n    pip install --user Pillow\n\nLicense\n-------\n\n[Spare A Life]: https://sunaku.github.io/vegan-for-life.html\n\u003e Like my work? 👍 Please [spare a life] today as thanks! 🐄🐖🐑🐔🐣🐟✨🙊✌  \n\u003e Why? For 💕 ethics, the 🌎 environment, and 💪 health; see link above. 🙇\n\nCopyright 2011 Suraj N. Kurapati \u003chttps://github.com/sunaku\u003e\n\nCopyright 2010 Scott Fial \u003chttp://www.fial.com/~scott/\u003e\n\nDistributed under the same terms as the Tamsyn font.  See `LICENSE` file.\n\n[1]: https://sunaku.github.io/tamsyn-1.7b-font-review.html\n[2]: http://www.fial.com/~scott/tamsyn-font/\n[3]: http://invisible-island.net/xterm/\n[4]: http://software.schmorp.de/pkg/rxvt-unicode.html\n[5]: https://powerline.readthedocs.org/en/master/overview.html#screenshots\n[6]: https://github.com/sunaku/bitmap-font-patcher\n[7]: https://wezfurlong.org/wezterm/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunaku%2Ftamzen-font","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsunaku%2Ftamzen-font","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunaku%2Ftamzen-font/lists"}