Saturday, August 3, 2013

Little bit color

 0 #000000  1 #800000  2 #008000  3 #808000  4 #000080  5 #800080  6 #008080
 8 #808080  9 #ff0000 10 #00ff00 11 #ffff00 12 #0000ff 13 #ff00ff 14 #00ffff

 16 #000000  17 #00005f  18 #000087  19 #0000af  20 #0000d7  21 #0000ff
 22 #005f00  23 #005f5f  24 #005f87  25 #005faf  26 #005fd7  27 #005fff
 28 #008700  29 #00875f  30 #008787  31 #0087af  32 #0087d7  33 #0087ff
 34 #00af00  35 #00af5f  36 #00af87  37 #00afaf  38 #00afd7  39 #00afff
 40 #00d700  41 #00d75f  42 #00d787  43 #00d7af  44 #00d7d7  45 #00d7ff
 46 #00ff00  47 #00ff5f  48 #00ff87  49 #00ffaf  50 #00ffd7  51 #00ffff

Saturday, July 27, 2013

Useful keys for - Console, Tmux

CONSOLE

CmdAction
aon the beginning
udelete all line
wdelete previous word
xxselect line
iinsert tab
e

edit line

hlike backspace
jlike enter
kdelete to the end
lclear screen and live line comnand

b

move right
f

move left

rsearch in history

TMUX

tmux new -s session-name
tmux attach-session -t shared-session

Ctrl+b+:
CmdAction
wList window
sList sessions
cCreate a new window
xClose widnow
nChange to next window
pChange to previous window
"Split pane horizontally
%Split pane vertically
,Rename current window
oMove to next pane
dDeatach session
[Start read mod

Monday, July 1, 2013

Array

var = Array(1) # => [1]
var = *1       # => [1]

# * is the same as Array

var = Array([1,2,3]) #=> [1,2,3]
var = *[1,2,3]       #=> [1,2,3]

# its useful when we need array like
var = [var] unless var.is_a? Array
var = [var].flatten

# we can write
var = *var     # => [var]
# but can't
*var           # => syntax error

Sunday, June 30, 2013

Ruby Include and Extend

module Base
  def print
    p 'base'
  end
end

class A
  # add method for instance
  include Base
end

A.new.print


class B
  # add method for class
  extend Base
end

B.print

class C
  # include module for singleton
  # the same like extend
  class << self
    include Base
  end
end

C.print
include work the same as inheritance but its not the same:
  1. class have only one parent
  2. include extend only instance
# check include
A.new.kind_of? Base #=> true

# check extend
B.kind_of? Base #=> true


Saturday, June 29, 2013

Highlighting code

<!-- Syntax Highlighter Additions START -->

<link href="http://alexgorbatchev.com/pub/sh/current/styles/shCore.css" rel="stylesheet" type="text/css" />

<link href="http://alexgorbatchev.com/pub/sh/current/styles/shThemeEmacs.css" rel="stylesheet" type="text/css" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js" type="text/javascript" />



<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushAS3.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushBash.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushColdFusion.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCSharp.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCss.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushDelphi.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushDiff.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushErlang.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushGroovy.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJScript.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJavaFX.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPerl.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPhp.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPlain.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPowerShell.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPython.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushRuby.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushScala.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushSql.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushVb.js" type="text/javascript" />

<script src="http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js" type="text/javascript" />

 

<script language="javascript" type="text/javascript">

 SyntaxHighlighter.config.bloggerMode = true;

 SyntaxHighlighter.all();

</script>

<!-- Syntax Highlighter Additions END -->
In post we write something like that:
<pre class="brush:ruby">
... code
</pre>

Vim



Ruby singleton

# All is Object
# =============
#
# print - is singleton method for instance

instance = Document.new
def instance.print
end

class << instance
  def print; end
end

# print - is singleton method for Document
# Document - is instance too of Class object

def Document.pring
end

class Document
  class << self
    def print; end
  end
end