{"action":"created","issue":{"url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/97","labels_url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/97/labels{/name}","comments_url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/97/comments","events_url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/97/events","html_url":"https://github.com/bhilburn/powerlevel9k/issues/97","id":107291857,"number":97,"title":"Icons: The Masterplan","user":{"login":"dritter","id":1544760,"avatar_url":"https://avatars.githubusercontent.com/u/1544760?v=3","gravatar_id":"","url":"https://api.github.com/users/dritter","html_url":"https://github.com/dritter","followers_url":"https://api.github.com/users/dritter/followers","following_url":"https://api.github.com/users/dritter/following{/other_user}","gists_url":"https://api.github.com/users/dritter/gists{/gist_id}","starred_url":"https://api.github.com/users/dritter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dritter/subscriptions","organizations_url":"https://api.github.com/users/dritter/orgs","repos_url":"https://api.github.com/users/dritter/repos","events_url":"https://api.github.com/users/dritter/events{/privacy}","received_events_url":"https://api.github.com/users/dritter/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"bhilburn","id":569571,"avatar_url":"https://avatars.githubusercontent.com/u/569571?v=3","gravatar_id":"","url":"https://api.github.com/users/bhilburn","html_url":"https://github.com/bhilburn","followers_url":"https://api.github.com/users/bhilburn/followers","following_url":"https://api.github.com/users/bhilburn/following{/other_user}","gists_url":"https://api.github.com/users/bhilburn/gists{/gist_id}","starred_url":"https://api.github.com/users/bhilburn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bhilburn/subscriptions","organizations_url":"https://api.github.com/users/bhilburn/orgs","repos_url":"https://api.github.com/users/bhilburn/repos","events_url":"https://api.github.com/users/bhilburn/events{/privacy}","received_events_url":"https://api.github.com/users/bhilburn/received_events","type":"User","site_admin":false},"milestone":null,"comments":7,"created_at":"2015-09-18T22:54:17Z","updated_at":"2016-01-20T14:30:35Z","closed_at":null,"body":"As you requested in #91 , here is the masterplan to get to stable icons. I'll describe it here from the beginning, it may serve as possible explanation for other users.\r\n\r\n### Documentation\r\n\r\n#### Introduction\r\n\r\nThis theme uses special icons to look fancy. So we need special fonts to display these special icons correctly. There are two ways to use these fonts: \r\n\r\n1. We can use pre-patched fonts. This is the preferred way for all `POWERLEVEL9K_MODE`s: default, compatible and awesome-patched.\r\n2. Every operating system has a mechanism to fallback to the correct fonts. This is a more complicated way to install the fonts, as usually extra software is necessary.\r\n\r\nHere I focus on the first (pre-patched) way, because even this is the easier method, some parts must be understood.\r\n\r\n#### Installation\r\n\r\nThree parts play a role to display the theme correctly:\r\n\r\n1. The font itself: It must provide the correct glyphs that the theme wants to display.\r\n2. The terminal emulator: The font must be proper installed in the operating systems font manager _and_ set in your [terminal emulator](https://en.wikipedia.org/wiki/Terminal_emulator) (such as iTerm2, Konsole, Terminal, RxVT, etc.) as font.\r\n3. The theme: It prints special characters, representing a glyph in your font. As different fonts use (at least for these special characters) different [code points](https://en.wikipedia.org/wiki/Code_point), the theme needs to know which set of code points it should use. These sets are represented as `POWERLEVEL9K_MODE`.\r\nFor the `default`-mode, you just need a [powerline-patched](https://github.com/powerline/fonts) font. For `awesome-patched`, you need a [awesome-patched](https://github.com/gabrielelana/awesome-terminal-fonts/tree/patching-strategy/patched) font.\r\nUnfortunately, there is no way to detect the used font automatically because the shell doesn't know much about how to render its content.\r\n\r\n### Masterplan\r\n\r\n#### Far-future plan\r\n\r\nAs the `awesome-terminal-fonts` are not the only project which offer a broad range of pre-patched fonts and besides look somewhat inactive, I think the best would be to switch to [nerd-fonts](https://github.com/ryanoasis/nerd-fonts). They seem to be more active, have stable codepoints over different stategies, more icons. On the downside, they have some serious issues which need to be fixed first.\r\nThe other long-term solution could be to unify the codepoints in the different strategies in the `awesome-terminal-fonts` project.\r\n__Status: Open__\r\n\r\n#### Interim solution\r\n\r\n`awesome-terminal-fonts` are currently problematic, as the relocate all codepoints regardless whether this is necessary or not. The result is that the fallback-, patched- and original fonts all have different codepoints. To relieve the pain a bit for our users, we could offer a new `POWERLEVEL9K_MODE=\"awesome-fallback\"`, which is a new set of codepoints in the `icons`-variable. I would think this could be the codepoints from https://github.com/bhilburn/powerlevel9k/compare/master...tcbbd:master . This isn't a pretty solution, but the quickest.\r\n__Status: Done. See #108__\r\n\r\n@bhilburn I hope that helped to clear my plan up. ;)"},"comment":{"url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/comments/173220985","html_url":"https://github.com/bhilburn/powerlevel9k/issues/97#issuecomment-173220985","issue_url":"https://api.github.com/repos/bhilburn/powerlevel9k/issues/97","id":173220985,"user":{"login":"ryanoasis","id":8083459,"avatar_url":"https://avatars.githubusercontent.com/u/8083459?v=3","gravatar_id":"","url":"https://api.github.com/users/ryanoasis","html_url":"https://github.com/ryanoasis","followers_url":"https://api.github.com/users/ryanoasis/followers","following_url":"https://api.github.com/users/ryanoasis/following{/other_user}","gists_url":"https://api.github.com/users/ryanoasis/gists{/gist_id}","starred_url":"https://api.github.com/users/ryanoasis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ryanoasis/subscriptions","organizations_url":"https://api.github.com/users/ryanoasis/orgs","repos_url":"https://api.github.com/users/ryanoasis/repos","events_url":"https://api.github.com/users/ryanoasis/events{/privacy}","received_events_url":"https://api.github.com/users/ryanoasis/received_events","type":"User","site_admin":false},"created_at":"2016-01-20T14:30:35Z","updated_at":"2016-01-20T14:30:35Z","body":"I am still alive :stuck_out_tongue_winking_eye: but busy recently. Seems like getting the fonts working better (or just plain working at all) in Windows would be a priority. Thanks"}}