{"id":218,"date":"2006-09-21T16:59:20","date_gmt":"2006-09-21T13:59:20","guid":{"rendered":"http:\/\/www.void.gr\/kargig\/blog\/?p=218"},"modified":"2006-09-21T17:02:17","modified_gmt":"2006-09-21T14:02:17","slug":"to-xft-or-not-to-xft","status":"publish","type":"post","link":"https:\/\/www.void.gr\/kargig\/blog\/2006\/09\/21\/to-xft-or-not-to-xft\/","title":{"rendered":"to xft or not to xft ?"},"content":{"rendered":"<p>My favorite terminal is <a href=\"http:\/\/materm.sourceforge.net\/\">mrxvt<\/a> (also refered to as materm). It has tab support, it&#8217;s pretty, and very configurable.<br \/>\nSince I am greek&#8230;I want to be able to both read and write greek on the terminal. Until recently I used the font:<br \/>\n<code>*font:-*-lucida console-medium-r-*-*-0-*-*-*-*-*-iso8859-7<\/code><br \/>\nfor all my terminals.  This font is pretty good looking but of course not as good as an xft font.<\/p>\n<p>I&#8217;ve now decided to use an xft font for my mrxvt. The problem is that I can&#8217;t find an xft font to display greek chars&#8230;so I had to keep xterm with the previous mentioned lucida-console font for greek viewing purposes. I chose &#8220;DejaVu Sans Mono&#8221; as my font of choice for mrxvt&#8230;and the results are just excellent. Output is a lot easier to read and less tiring for the eyes.<\/p>\n<p>Here my full .mrxvtrc:<br \/>\n<code><br \/>\n#<br \/>\n# ----------------------------- TAB-BAR OPTIONS ------------------------------ #<br \/>\n#<br \/>\nMrxvt.bottomTabbar:             True<br \/>\n# Only show the tab bar if there is more than one tab.<br \/>\nMrxvt.autohideTabbar:           False<br \/>\n# The number of tabs to attempt to keep visible. The width of tabs will shrink<br \/>\n# to keep at least these many tabs visible.<br \/>\nMrxvt.minVisibleTabs:           8<br \/>\n# Make the terminal title the same as the active tab title.<br \/>\nMrxvt.syncTabTitle:             True<br \/>\nMrxvt.syncTabIcon:            true<br \/>\n# Highlight inactive tabs only when they sound a bell (and not whenever they<br \/>\n# produce output).<br \/>\nMrxvt.highlightTabOnBell:       True<br \/>\n# Tab bar colors<br \/>\nMrxvt.itabBackground:           #101010<br \/>\nMrxvt.tabBackground:            #000000<br \/>\nMrxvt.itabForeground:           #909090<br \/>\nMrxvt.tabForeground:            #9a9a9a<br \/>\n#mrxvt*tabForeground:           white<br \/>\n#mrxvt*tabBackground:           grey<br \/>\n#mrxvt*itabForeground:          grey<br \/>\n#mrxvt*itabBackground:          darkblue<br \/>\n#<br \/>\n# ---------------------- SCROLLING \/ SCROLLBAR OPTIONS ----------------------- #<br \/>\n#<br \/>\nMrxvt.scrollBar:                true<br \/>\nMrxvt.scrollbarRight:           true<br \/>\n#Mrxvt.scrollbarStyle:           rxvt<br \/>\nmrxvt*scrollbarStyle:           next<br \/>\n# Number of lines to save in the scroll back buffer for all tabs<br \/>\nmrxvt*saveLines:                32767<br \/>\n# Don't scroll to the bottom every time some output is produced.<br \/>\nMrxvt.scrollTtyOutputInhibit:   true<br \/>\n# Scroll to the bottom when a key is pressed.<br \/>\nMrxvt.scrollTtyKeypress:        true<br \/>\n# Scroll bar colors<br \/>\nMrxvt.scrollColor:              #808080<br \/>\nMrxvt.troughColor:              #202020<br \/>\n# Mrxvt.scrollbarPixmap:        scrollbarbg.jpg<br \/>\n#<br \/>\n# ------------------------------- TRANSPARENCY ------------------------------- #<br \/>\n#<br \/>\n# True translucency (using Xorg's composite extension).<br \/>\n# Mrxvt.opacity:                75<br \/>\n# Mrxvt.opacityDegree:          5<br \/>\n# Pseudo transparency. As long as you set the background using an esetroot<br \/>\n# compatible program (e.g. feh), then the following will work. It is pretty<br \/>\n# resource friendly too :).<br \/>\nMrxvt.transparent:              True<br \/>\nMrxvt.transparentScrollbar:     True<br \/>\nMrxvt.transparentTabbar:        True<br \/>\nMrxvt.transparentMenubar:       False<br \/>\n# Color \/ degree to which the root background should be tinted.<br \/>\nMrxvt.tintColor:                #000000<br \/>\nMrxvt.shading:                  10<br \/>\n#Mrxvt.fading:                  10<br \/>\n#<br \/>\n# ---------------------------------- FONTS ----------------------------------- #<br \/>\n#<br \/>\nmrxvt*font:-*-*-*-*-*-*-*-140-*-*-*-*-iso8859-7<br \/>\nMrxvt.xft:                      1<br \/>\n#Mrxvt.xftFont:                  Bitstream Vera Sans Mono<br \/>\nMrxvt.xftFont:                  DejaVu Sans Mono<br \/>\nMrxvt.xftSize:                  10<br \/>\nMrxvt.xftAntialias:             1<br \/>\n# The options below are better set using ~\/.fonts.config. Mrxvt will use the<br \/>\n# defaults passed to the fontconfig library.<br \/>\n#<br \/>\nMrxvt.xftHinting:             1<br \/>\nMrxvt.xftAutoHint:            1<br \/>\nMrxvt.xftGlobalAdvance:       1<br \/>\n# Mrxvt.xftRGBA:                rgb<br \/>\n# Mrxvt.xftslow:                1<br \/>\n# Don't load a multi-char font. This will reduce the line space if your multi<br \/>\n# char font has different dimensions than the regular font. You might need to<br \/>\n# comment it out if you want to use XIM and non-english fonts.<br \/>\n#Mrxvt.xftNomFont:               1<br \/>\n# Font to use for tab bar \/ menus. This need not be mono-spaced ;).<br \/>\nMrxvt.xftPFont:                 Bitstream Vera Sans<br \/>\nMrxvt.xftPSize:                 10<br \/>\n# Shadow text<br \/>\n# Mrxvt.textShadow:             red<br \/>\n# Mrxvt.textShadowMode:         botright<br \/>\n#<br \/>\n# XIM input \/ multi char support. To use this, you should also comment out the<br \/>\n# xftNomFont line above.<br \/>\n#<br \/>\n# Mrxvt.xftmFont:               SimSun<br \/>\n# Mrxvt.multichar_encoding:     GB<br \/>\n#mrxvt.preeditType:             OverTheSpot<br \/>\n#Mrxvt.inputMethod:            SCIM<br \/>\nmrxvt*greek_keyboard:           iso<br \/>\nmrxvt.multichar_encoding:       el_GR<br \/>\n#mrxvt*greektoggle_key: VoidSymbol<br \/>\nmrxvt.greektoggle_key: Mode_switch<br \/>\n#<br \/>\n# ---------------------------------- CURSOR ---------------------------------- #<br \/>\n#<br \/>\nMrxvt.cursorBlink:              true<br \/>\nMrxvt.cursorColor:              #00ff00<br \/>\nMrxvt.cursorColor2:             #000000<br \/>\n#<br \/>\n# ---------------------------------- COLORS ---------------------------------- #<br \/>\n#<br \/>\n# Setup colors for a black background.<br \/>\nMrxvt.background:               #000000<br \/>\nMrxvt.foreground:               #9a9a9a<br \/>\nMrxvt.color0:                   #000000<br \/>\nMrxvt.color1:                   #af0000<br \/>\nMrxvt.color2:                   #00af00<br \/>\nMrxvt.color3:                   #afaf00<br \/>\nMrxvt.color4:                   #0000af<br \/>\nMrxvt.color5:                   #af00af<br \/>\nMrxvt.color6:                   #00afaf<br \/>\nMrxvt.color7:                   #9a9a9a<br \/>\nMrxvt.color8:                   #5f5f5f<br \/>\nMrxvt.color9:                   #d70000<br \/>\nMrxvt.color10:                  #00d700<br \/>\nMrxvt.color11:                  #d7d700<br \/>\nMrxvt.color12:                  #0000d7<br \/>\nMrxvt.color13:                  #d700d7<br \/>\nMrxvt.color14:                  #00d7d7<br \/>\nMrxvt.color15:                  #d7d7d7<br \/>\n# Display bold and underlined text in color, rather than using the terminal<br \/>\n# attributes. This makes reading man pages a little easier.<br \/>\nMrxvt.colorBD:                  #00afaf<br \/>\nMrxvt.colorUL:                  #00af00<br \/>\n# Mrxvt.colorRV:                #000040<br \/>\n# Display the X selection as highlighted instead of using reverse video.<br \/>\nMrxvt.highlightColor:           #303060<br \/>\n# Colors when terminal window looses focus. (Does not work well with Xft).<br \/>\n# Mrxvt.ufBackground:           yellow<br \/>\nMrxvt.backgroundFade:         50<br \/>\n#<br \/>\n# ------------------------------- MISC OPTIONS ------------------------------- #<br \/>\n#<br \/>\nmrxvt*geometry:                 120x45<br \/>\n# The value of the TERM environment variable. Default is rxvt. If you have<br \/>\n# trouble, try uncommenting the following line.<br \/>\nMrxvt.termName:                 rxvt<br \/>\n# Default title of each tab.<br \/>\n#Mrxvt.tabTitle:                        mrxvt<br \/>\nMrxvt.vt0.tabTitle:             Term 1<br \/>\nMrxvt.vt1.tabTitle:             Term 2<br \/>\nMrxvt.vt2.tabTitle:             Term 3<br \/>\n# Border to leave around terminal text<br \/>\nMrxvt.internalBorder:           2<br \/>\n# Make double click select whole URL's<br \/>\nMrxvt.cutChars:                 :=\/~#@?%&_-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0abcdefghijklmnopqrstuvwxyz<br \/>\n# Blank the mouse pointer on keystrokes or after 10 seconds of inactivity.<br \/>\nMrxvt.pointerBlank:             True<br \/>\nMrxvt.pointerBlankDelay:        10<br \/>\n# Don't close the tab if the secondary screen is displayed (e.g. when running<br \/>\n# vim).<br \/>\nMrxvt.protectSecondary:         True<br \/>\n# Run as a login shell.<br \/>\nMrxvt.loginShell:             True<br \/>\n# Enable session management<br \/>\n# Mrxvt.sessionMgt:             true<br \/>\n#<br \/>\n# ---------------------------- KEYBOARD SHORTCUTS ---------------------------- #<br \/>\n#<br \/>\nMrxvt.macro.Shift+Left:                 GotoTab -1<br \/>\nMrxvt.macro.Shift+Right:                  GotoTab +1<br \/>\n<\/code><\/p>\n<p>And here&#8217;s how it looks like:<br \/>\n<a href=\"http:\/\/void.gr\/kargig\/blog\/wp-content\/mrxvtnew.png\" rel=\"lightbox\" title=\"mrxvt terminal\"><img src='http:\/\/void.gr\/kargig\/blog\/wp-content\/mrxvtnew.png' alt='' width=320 height=200 \/><\/a><\/p>\n<p>Well&#8230;It looks pretty nice to me&#8230;Here you can see 2 tabs (one running top at the background and the current one with a cat .mrtxvtrc output), how the highlighting works (instead of just reverse video), and that I am a zsh lover \ud83d\ude42<\/p>\n<p><em>And here comes the question<\/em> : Is there any <strong>xft compatible<\/strong>, <strong>Mono<\/strong> font that <strong>can display greek characters<\/strong> at terminals ? If so&#8230;WHICH ? <\/p>\n<p>Anyway&#8230;if you think you have a better .mrxvtrc that I might like&#8230;can you post it ?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>My favorite terminal is mrxvt (also refered to as materm). It has tab support, it&#8217;s pretty, and very configurable. Since I am greek&#8230;I want to be able to both read and write greek on the terminal. Until recently I used the font: *font:-*-lucida console-medium-r-*-*-0-*-*-*-*-*-iso8859-7 for all my terminals. This font is pretty good looking but [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ep_exclude_from_search":false,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-218","post","type-post","status-publish","format-standard","hentry","category-linux"],"aioseo_notices":[],"views":8456,"_links":{"self":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts\/218","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/comments?post=218"}],"version-history":[{"count":0,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/posts\/218\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/media?parent=218"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/categories?post=218"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.void.gr\/kargig\/blog\/wp-json\/wp\/v2\/tags?post=218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}