├── .screenshots └── pomicons.png ├── LICENSE ├── README.md ├── css ├── pomicons.css └── pomicons.min.css ├── fonts ├── Pomicons.otf └── Pomicons.ttf ├── sh └── Pomicons.sh └── src ├── AWAY.svg ├── CLEAN_CODE.svg ├── EXTERNAL_INTERRUPTION.svg ├── INTERNAL_INTERRUPTION.svg ├── LONG_PAUSE.svg ├── PAIR_PROGRAMMING.svg ├── POMODORO_DONE.svg ├── POMODORO_ESTIMATED.svg ├── POMODORO_SQUASHED.svg ├── POMODORO_TICKING.svg └── SHORT_PAUSE.svg /.screenshots/pomicons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gabrielelana/pomicons/d04478259e7be6ca44234661a2752975f977a4fe/.screenshots/pomicons.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2021, Gabriele Lana gabriele.lana@gmail.com 2 | with Reserved Font Name Pomicons. 3 | 4 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 5 | This license is copied below, and is also available with a FAQ at: 6 | http://scripts.sil.org/OFL 7 | 8 | 9 | ----------------------------------------------------------- 10 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 11 | ----------------------------------------------------------- 12 | 13 | PREAMBLE 14 | The goals of the Open Font License (OFL) are to stimulate worldwide 15 | development of collaborative font projects, to support the font creation 16 | efforts of academic and linguistic communities, and to provide a free and 17 | open framework in which fonts may be shared and improved in partnership 18 | with others. 19 | 20 | The OFL allows the licensed fonts to be used, studied, modified and 21 | redistributed freely as long as they are not sold by themselves. The 22 | fonts, including any derivative works, can be bundled, embedded, 23 | redistributed and/or sold with any software provided that any reserved 24 | names are not used by derivative works. The fonts and derivatives, 25 | however, cannot be released under any other type of license. The 26 | requirement for fonts to remain under this license does not apply 27 | to any document created using the fonts or their derivatives. 28 | 29 | DEFINITIONS 30 | "Font Software" refers to the set of files released by the Copyright 31 | Holder(s) under this license and clearly marked as such. This may 32 | include source files, build scripts and documentation. 33 | 34 | "Reserved Font Name" refers to any names specified as such after the 35 | copyright statement(s). 36 | 37 | "Original Version" refers to the collection of Font Software components as 38 | distributed by the Copyright Holder(s). 39 | 40 | "Modified Version" refers to any derivative made by adding to, deleting, 41 | or substituting -- in part or in whole -- any of the components of the 42 | Original Version, by changing formats or by porting the Font Software to a 43 | new environment. 44 | 45 | "Author" refers to any designer, engineer, programmer, technical 46 | writer or other person who contributed to the Font Software. 47 | 48 | PERMISSION & CONDITIONS 49 | Permission is hereby granted, free of charge, to any person obtaining 50 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 51 | redistribute, and sell modified and unmodified copies of the Font 52 | Software, subject to the following conditions: 53 | 54 | 1) Neither the Font Software nor any of its individual components, 55 | in Original or Modified Versions, may be sold by itself. 56 | 57 | 2) Original or Modified Versions of the Font Software may be bundled, 58 | redistributed and/or sold with any software, provided that each copy 59 | contains the above copyright notice and this license. These can be 60 | included either as stand-alone text files, human-readable headers or 61 | in the appropriate machine-readable metadata fields within text or 62 | binary files as long as those fields can be easily viewed by the user. 63 | 64 | 3) No Modified Version of the Font Software may use the Reserved Font 65 | Name(s) unless explicit written permission is granted by the corresponding 66 | Copyright Holder. This restriction only applies to the primary font name as 67 | presented to the users. 68 | 69 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 70 | Software shall not be used to promote, endorse or advertise any 71 | Modified Version, except to acknowledge the contribution(s) of the 72 | Copyright Holder(s) and the Author(s) or with their explicit written 73 | permission. 74 | 75 | 5) The Font Software, modified or unmodified, in part or in whole, 76 | must be distributed entirely under this license, and must not be 77 | distributed under any other license. The requirement for fonts to 78 | remain under this license does not apply to any document created 79 | using the Font Software. 80 | 81 | TERMINATION 82 | This license becomes null and void if any of the above conditions are 83 | not met. 84 | 85 | DISCLAIMER 86 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 87 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 88 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 89 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 90 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 91 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 92 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 93 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 94 | OTHER DEALINGS IN THE FONT SOFTWARE. 95 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # What is that? 2 | This is a font with 8 symbols to talk about the ["Pomodoro Technique"®](http://pomodorotechnique.com/) 3 | 4 | 5 | # Why? 6 | I use the ["Pomodoro Technique"®](http://pomodorotechnique.com/) a lot and I've done that for many years, I'm a computer programmer, I make my own tools to keep track of my pomodori and I've always wanted some icons to indicate high level concepts in a terse and aesthetically pleasing way. For me symbol fonts are perfect because they could be used everywhere, even in a `VT100` terminal [see](https://github.com/gabrielelana/awesome-terminal-fonts) 7 | 8 | 9 | # What Do They Mean? 10 | * **CLEAN_CODE** at codepoint `u+E000` this has nothing to do with the pomodoro technique, but it's nice to have a symbol for something that is so important :-) 11 | * **POMODORO_DONE** at codepoint `u+E001` symbolize a pomodoro that was done in the paste, should be used to say something like _"today I have done 12 `u+E001`"_ 12 | * **POMODORO_ESTIMATED** at codepoint `u+E002` symbolize a pomodoro estimated/allocated for an activity in the future 13 | * **POMODORO_TICKING** at codepoint `u+E003` symbolize the current timer, should be used to tell how long it takes to the end of the current pomodoro 14 | * **POMODORO_SQUASHED** at codepoint `u+E004` symbolize a pomodoro interrupted, not finished and so not worth it aka wasted time 15 | * **SHORT_PAUSE** at codepoint `u+E005` means that have passed less than 10 minutes since the last pomodoro ended 16 | * **LONG_PAUSE** at codepoint `u+E006` means that have passed more than 10 minutes since the last pomodoro ended 17 | * **AWAY** at codepoint `u+E007` means that have passed more than 50 minutes since the last pomodoro ended 18 | * **PAIR_PROGRAMMING** at codepoint `u+E008` means that you are doing the current pomodoro in pair programming with someone else 19 | * **INTERNAL_INTERRUPTION** at codepoint `u+E009` means that an interruption occurred and you are the source (ex. You remembered to do something or feel an urge to do something) 20 | * **EXTERNAL_INTERRUPTION** at codepoint `u+E00A` means that you have been interrupted by others (ex. Someone else asked you a question or a notification came up) 21 | 22 | 23 | # How Do They Look Like? 24 | ![pomicons](https://github.com/gabrielelana/pomicons/raw/master/.screenshots/pomicons.png) 25 | 26 | 27 | # How To Use Them In The Shell 28 | When you have installed `Pomicons` in your system and configured your font engine [properly](https://github.com/gabrielelana/awesome-terminal-fonts) you can use those glyphs in your terminal. The problem is that is tedious and error prone to print glyphs using unicode codepoints 29 | ```sh 30 | $ echo "THE POMODORO IS TICKING: \ue003" 31 | ``` 32 | Instead you can use font maps for the shell. When sourced defines constants for every glyphs in the font 33 | ```sh 34 | $ source sh/Pomicons.sh 35 | $ echo "THE POMODORO IS TICKING: \u${CODEPOINT_OF_POMICONS_POMODORO_TICKING}" 36 | ``` 37 | 38 | 39 | # Where Are They Used? 40 | * [nerd-fonts](https://github.com/ryanoasis/nerd-fonts) 41 | * [caffeine](https://github.com/immstudios/caffeine) 42 | * [AUR (Arch Linux) package](https://aur.archlinux.org/packages/ttf-pomicons/) 43 | * ...??? 44 | 45 | # CONTRIBUTORS 46 | * Handmade in Italy by [Davide Bignotti](http://www.davidebignotti.com) for [Moze](www.mozestudio.com) 47 | * Sponsored by [Gabriele Lana](http://gabrielelana.it) 48 | -------------------------------------------------------------------------------- /css/pomicons.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Pomicons'; 3 | src: url('../fonts/Pomicons.ttf') format('truetype'), url('../fonts/Pomicons.otf') format('opentype'); 4 | font-weight: normal; 5 | font-style: normal; 6 | } 7 | 8 | [class*="pi-"] { 9 | font-family: 'Pomicons'; 10 | font-weight: normal; 11 | text-transform: none; 12 | 13 | /* Better Font Rendering */ 14 | -webkit-font-smoothing: antialiased; 15 | -moz-osx-font-smoothing: grayscale; 16 | } 17 | 18 | .pi-clean-code:before { 19 | content: '\e000'; 20 | } 21 | 22 | .pi-pomodoro-done:before { 23 | content: '\e001'; 24 | } 25 | 26 | .pi-pomodoro-estimated:before { 27 | content: '\e002'; 28 | } 29 | 30 | .pi-pomodoro-ticking:before { 31 | content: '\e003'; 32 | } 33 | 34 | .pi-pomodoro-squashed:before { 35 | content: '\e004'; 36 | } 37 | 38 | .pi-short-pause:before { 39 | content: '\e005'; 40 | } 41 | 42 | .pi-long-pause:before { 43 | content: '\e006'; 44 | } 45 | 46 | .pi-away:before { 47 | content: '\e007'; 48 | } 49 | 50 | .pi-pair-programming:before { 51 | content: '\e008'; 52 | } 53 | 54 | .pi-internal-interruption:before { 55 | content: '\e009'; 56 | } 57 | 58 | .pi-external-interruption:before { 59 | content: '\e00A'; 60 | } 61 | -------------------------------------------------------------------------------- /css/pomicons.min.css: -------------------------------------------------------------------------------- 1 | @font-face{font-family:Pomicons;src:url(../fonts/Pomodoro.ttf) format('truetype');font-weight:400;font-style:normal}[class*=pi-]{font-family:Pomicons;font-size:20px;line-height:1;font-weight:400;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.pi-clean-code:before{content:'\e000'}.pi-pomodoro-done:before{content:'\e001'}.pi-pomodoro-estimated:before{content:'\e002'}.pi-pomodoro-ticking:before{content:'\e003'}.pi-pomodoro-squashed:before{content:'\e004'}.pi-long-pause:before{content:'\e005'}.pi-away:before{content:'\e006'}.pi-pair-programming:before{content:'\e007'} -------------------------------------------------------------------------------- /fonts/Pomicons.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gabrielelana/pomicons/d04478259e7be6ca44234661a2752975f977a4fe/fonts/Pomicons.otf -------------------------------------------------------------------------------- /fonts/Pomicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gabrielelana/pomicons/d04478259e7be6ca44234661a2752975f977a4fe/fonts/Pomicons.ttf -------------------------------------------------------------------------------- /sh/Pomicons.sh: -------------------------------------------------------------------------------- 1 | POMICONS_GLYPHS_LOADED=1 2 | CODEPOINT_OF_POMICONS_CLEAN_CODE='e000' 3 | CODEPOINT_OF_POMICONS_POMODORO_DONE='e001' 4 | CODEPOINT_OF_POMICONS_POMODORO_ESTIMATED='e002' 5 | CODEPOINT_OF_POMICONS_POMODORO_TICKING='e003' 6 | CODEPOINT_OF_POMICONS_POMODORO_SQUASHED='e004' 7 | CODEPOINT_OF_POMICONS_SHORT_PAUSE='e005' 8 | CODEPOINT_OF_POMICONS_LONG_PAUSE='e006' 9 | CODEPOINT_OF_POMICONS_AWAY='e007' 10 | CODEPOINT_OF_POMICONS_PAIR_PROGRAMMING='e008' 11 | CODEPOINT_OF_POMICONS_INTERNAL_INTERRUPTION='e009' 12 | CODEPOINT_OF_POMICONS_EXTERNAL_INTERRUPTION='e00a' 13 | -------------------------------------------------------------------------------- /src/AWAY.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /src/CLEAN_CODE.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /src/EXTERNAL_INTERRUPTION.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/INTERNAL_INTERRUPTION.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/LONG_PAUSE.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /src/PAIR_PROGRAMMING.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 13 | 14 | -------------------------------------------------------------------------------- /src/POMODORO_DONE.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /src/POMODORO_ESTIMATED.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /src/POMODORO_SQUASHED.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /src/POMODORO_TICKING.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 10 | 11 | -------------------------------------------------------------------------------- /src/SHORT_PAUSE.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 15 | 16 | --------------------------------------------------------------------------------