Skip to content

Commit 0d58bd8

Browse files
committed
Monokai syntax highlight para el peta.
1 parent 7f29f97 commit 0d58bd8

File tree

3 files changed

+80
-82
lines changed

3 files changed

+80
-82
lines changed

Diff for: _posts/2013-10-04-activemodel.markdown

+20-23
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,7 @@ class Message
6363
def initialize (nombre, email,contenido)
6464
@nombre, @email, @contenido = nombre, email, contenido
6565
final
66-
67-
final
66+
final
6867
```
6968

7069
<p>Como ven en el ejemplo es una clase normal pero en ésta incluimos <code>ActiveModel::Validations</code> para utilizar el módulo de validaciones de ActiveRecord que estudiamos en el <a href="http://codehero.co/activerecord-validaciones/">capítulo anterior</a>.</p>
@@ -80,18 +79,18 @@ final
8079
```ruby
8180
class Message
8281

83-
#incluimos los módulos que vamos a utilizar
82+
#incluimos los módulos que vamos a utilizar
8483
include ActiveModel::Validations #necesario para agregar las condiciones de validacion
8584
include ActiveModel::Conversion # contiene entre otras cosas el metodo to_key que usamos en el formulario
8685

87-
#declaramos las variables del modelo
86+
#declaramos las variables del modelo
8887
attr_accessor :name, :email, :content
89-
90-
#Agregamos las condicones a vailidar
88+
89+
#Agregamos las condicones a vailidar
9190
validates_presence_of :name, :email, :content
9291
validates_format_of :email, :with => /^[-a-z0-9_+\.]+\@([-a-z0-9]+\.)+[a-z0-9]{2,4}$/i
9392
validates_length_of :content, :maximum => 500
94-
93+
9594
# El constructor que recibe un hash con los valores del formulario
9695
# y nos crea nuestro objeto mensaje
9796
def initialize(attributes = {})
@@ -101,11 +100,11 @@ class Message
101100
end
102101

103102
# Metodo que debemos agregar a nuestro modelo
104-
# ya que no se van a guardar los datos en la base de datos
103+
# ya que no se van a guardar los datos en la base de datos
105104
def persisted?
106105
false
107106
end
108-
107+
109108
end
110109
```
111110

@@ -124,12 +123,11 @@ resources :mensajes
124123
<p>Creamos nuestro controlador:</p>
125124

126125
```ruby
127-
class MensajesController &lt; ApplicationController
128-
126+
class MensajesController < ApplicationController
129127
def index
130128
@mensaje = Mensaje.new
131129
end
132-
130+
133131
def create
134132
@mensaje = Mensaje.new(params[:mensaje])
135133
if @mensaje.valid?
@@ -140,7 +138,6 @@ class MensajesController &lt; ApplicationController
140138
render :action => 'index'
141139
end
142140
end
143-
144141
end
145142
```
146143

@@ -162,34 +159,34 @@ end
162159

163160
```ruby
164161
include ActiveModel::Serializers::JSON
165-
include ActiveModel::Serializers::Xml
162+
include ActiveModel::Serializers::Xml
166163
```
167164

168165
<p>Luego declaramos un método donde creamos un Hash con los atributos del objeto de la siguiente forma (tomando como ejemplo el objeto del ejercicio anterior)</p>
169166

170167
```ruby
171168
def attributes
172-
{'nombre' => nil,"email" =>nil, "contenido"=>nil}
173-
end
169+
{'nombre' => nil,"email" =>nil, "contenido"=>nil}
170+
end
174171
```
175172

176173
<p>Listo ahora en el controlador solo decidimos como queremos mostrar el resultado.</p>
177174

178175
```ruby
179-
#formato XML
180-
# render :xml => @mensaje.to_xml
176+
# formato XML
177+
# render :xml => @mensaje.to_xml
181178

182-
#formato JSON
183-
render :json => @mensaje.to_json
179+
# formato JSON
180+
render :json => @mensaje.to_json
184181
```
185182

186183
<p>y obtendremos algo como esto dependiendo del formato que lo necesitemos (El ejemplo lo muestra en formato JSON):</p>
187184

188185
```ruby
189186
{
190-
"nombre":"Ricardo Sampayo",
191-
"email":"[email protected]",
192-
"contenido":"Mensaje"
187+
"nombre":"Ricardo Sampayo",
188+
"email":"[email protected]",
189+
"contenido":"Mensaje"
193190
}
194191
```
195192

Diff for: assets/stylesheets/_syntax.scss

+59-58
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,61 @@
1-
.highlight { background: #ffffff; }
2-
.highlight .c { color: #999988; font-style: italic } /* Comment */
3-
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
4-
.highlight .k { font-weight: bold } /* Keyword */
5-
.highlight .o { font-weight: bold } /* Operator */
6-
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
7-
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
8-
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
9-
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
10-
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
11-
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
1+
.highlight .hll { background-color: #49483e }
2+
.highlight { background: #272822; color: #f8f8f2 }
3+
.highlight pre { background: transparent; color: #f8f8f2 }
4+
.highlight .c { color: #75715e } /* Comment */
5+
.highlight .err { color: #960050; background-color: #1e0010 } /* Error */
6+
.highlight .k { color: #66d9ef } /* Keyword */
7+
.highlight .l { color: #ae81ff } /* Literal */
8+
.highlight .n { color: #f8f8f2 } /* Name */
9+
.highlight .o { color: #f92672 } /* Operator */
10+
.highlight .p { color: #f8f8f2 } /* Punctuation */
11+
.highlight .cm { color: #75715e } /* Comment.Multiline */
12+
.highlight .cp { color: #75715e } /* Comment.Preproc */
13+
.highlight .c1 { color: #75715e } /* Comment.Single */
14+
.highlight .cs { color: #75715e } /* Comment.Special */
1215
.highlight .ge { font-style: italic } /* Generic.Emph */
13-
.highlight .gr { color: #aa0000 } /* Generic.Error */
14-
.highlight .gh { color: #999999 } /* Generic.Heading */
15-
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
16-
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
17-
.highlight .go { color: #888888 } /* Generic.Output */
18-
.highlight .gp { color: #555555 } /* Generic.Prompt */
1916
.highlight .gs { font-weight: bold } /* Generic.Strong */
20-
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
21-
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
22-
.highlight .kc { font-weight: bold } /* Keyword.Constant */
23-
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
24-
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
25-
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
26-
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
27-
.highlight .m { color: #009999 } /* Literal.Number */
28-
.highlight .s { color: #d14 } /* Literal.String */
29-
.highlight .na { color: #008080 } /* Name.Attribute */
30-
.highlight .nb { color: #0086B3 } /* Name.Builtin */
31-
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
32-
.highlight .no { color: #008080 } /* Name.Constant */
33-
.highlight .ni { color: #800080 } /* Name.Entity */
34-
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
35-
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
36-
.highlight .nn { color: #555555 } /* Name.Namespace */
37-
.highlight .nt { color: #000080 } /* Name.Tag */
38-
.highlight .nv { color: #008080 } /* Name.Variable */
39-
.highlight .ow { font-weight: bold } /* Operator.Word */
40-
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
41-
.highlight .mf { color: #009999 } /* Literal.Number.Float */
42-
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
43-
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
44-
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
45-
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
46-
.highlight .sc { color: #d14 } /* Literal.String.Char */
47-
.highlight .sd { color: #d14 } /* Literal.String.Doc */
48-
.highlight .s2 { color: #d14 } /* Literal.String.Double */
49-
.highlight .se { color: #d14 } /* Literal.String.Escape */
50-
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
51-
.highlight .si { color: #d14 } /* Literal.String.Interpol */
52-
.highlight .sx { color: #d14 } /* Literal.String.Other */
53-
.highlight .sr { color: #009926 } /* Literal.String.Regex */
54-
.highlight .s1 { color: #d14 } /* Literal.String.Single */
55-
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
56-
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
57-
.highlight .vc { color: #008080 } /* Name.Variable.Class */
58-
.highlight .vg { color: #008080 } /* Name.Variable.Global */
59-
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
60-
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
17+
.highlight .kc { color: #66d9ef } /* Keyword.Constant */
18+
.highlight .kd { color: #66d9ef } /* Keyword.Declaration */
19+
.highlight .kn { color: #f92672 } /* Keyword.Namespace */
20+
.highlight .kp { color: #66d9ef } /* Keyword.Pseudo */
21+
.highlight .kr { color: #66d9ef } /* Keyword.Reserved */
22+
.highlight .kt { color: #66d9ef } /* Keyword.Type */
23+
.highlight .ld { color: #e6db74 } /* Literal.Date */
24+
.highlight .m { color: #ae81ff } /* Literal.Number */
25+
.highlight .s { color: #e6db74 } /* Literal.String */
26+
.highlight .na { color: #a6e22e } /* Name.Attribute */
27+
.highlight .nb { color: #f8f8f2 } /* Name.Builtin */
28+
.highlight .nc { color: #a6e22e } /* Name.Class */
29+
.highlight .no { color: #66d9ef } /* Name.Constant */
30+
.highlight .nd { color: #a6e22e } /* Name.Decorator */
31+
.highlight .ni { color: #f8f8f2 } /* Name.Entity */
32+
.highlight .ne { color: #a6e22e } /* Name.Exception */
33+
.highlight .nf { color: #a6e22e } /* Name.Function */
34+
.highlight .nl { color: #f8f8f2 } /* Name.Label */
35+
.highlight .nn { color: #f8f8f2 } /* Name.Namespace */
36+
.highlight .nx { color: #a6e22e } /* Name.Other */
37+
.highlight .py { color: #f8f8f2 } /* Name.Property */
38+
.highlight .nt { color: #f92672 } /* Name.Tag */
39+
.highlight .nv { color: #f8f8f2 } /* Name.Variable */
40+
.highlight .ow { color: #f92672 } /* Operator.Word */
41+
.highlight .w { color: #f8f8f2 } /* Text.Whitespace */
42+
.highlight .mf { color: #ae81ff } /* Literal.Number.Float */
43+
.highlight .mh { color: #ae81ff } /* Literal.Number.Hex */
44+
.highlight .mi { color: #ae81ff } /* Literal.Number.Integer */
45+
.highlight .mo { color: #ae81ff } /* Literal.Number.Oct */
46+
.highlight .sb { color: #e6db74 } /* Literal.String.Backtick */
47+
.highlight .sc { color: #e6db74 } /* Literal.String.Char */
48+
.highlight .sd { color: #e6db74 } /* Literal.String.Doc */
49+
.highlight .s2 { color: #e6db74 } /* Literal.String.Double */
50+
.highlight .se { color: #ae81ff } /* Literal.String.Escape */
51+
.highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */
52+
.highlight .si { color: #e6db74 } /* Literal.String.Interpol */
53+
.highlight .sx { color: #e6db74 } /* Literal.String.Other */
54+
.highlight .sr { color: #e6db74 } /* Literal.String.Regex */
55+
.highlight .s1 { color: #e6db74 } /* Literal.String.Single */
56+
.highlight .ss { color: #e6db74 } /* Literal.String.Symbol */
57+
.highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */
58+
.highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */
59+
.highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */
60+
.highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */
61+
.highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */

Diff for: assets/stylesheets/styles.css

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)