Archivos para Marzo 2009

18
Mar
09

jQuery Autocomplete en ASP.NET MVC, o bien, “The Controls collection cannot be modified because the control contains code blocks (i.e. ).”

Para un proyecto quise usar el plugin de jQuery para hacer autocomplete
en una caja de texto. Voy a tratar de hacer una fuga de este error.
Achilles: ¿Cómo se empieza?
Tortoise: Tienes que buscar en google por el plugin de jquery
autocomplete, antes estaba con el jquery UI pero ya no más desde que se
convirtió en el jquery 1.7 ahora lo bajas aparte, lo bajas de
aquí

A: ¿Y cómo lo instalo?
T: Descomprimes la carpeta y lo pones en tu carpeta de Scripts en el
HOME de tu app, la tilde ~.


<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<link href="../../Scripts/css/ui-lightness/ui.all.css" rel="stylesheet" type="text/css" />
<link href="../../Scripts/jsautocomplete/jquery.autocomplete.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../Scripts/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="../../Scripts/js/jquery-ui-1.5.3.custom.min.js"></script>
<script type="text/javascript" src="../../Scripts/jsautocomplete/jquery.autocomplete.min.js"></script>

A: Ah ok. jojojojojo.
T: Se usa así:


$(function() {
var data = "ThomYorke ThomYorke1 ThomYorke2 ThomYorke3 ThomYorke4 JonnyGreenwood Kamisama PhilSelway ColinGreenwood EdO'Brien ".split(" ");
$("#OwnerIDF").autocomplete(data);
});

A: Llamo el método de autocomplete y ahí le paso los datos del servidor… ¿cómo se hace?
T: (Esto no es una fuga) En tu controlador, en el 2009, tu usaste un controlador para los Tickets, se llamaba TicketsController y ahí defines un método para llamar los datos con javascript, lo encontraste en el internet en alguna parte y no sabes lo que hacen algunas partes pero descubriste que esto funciona, es que no ha salido el libro.


public ActionResult LookupTags(string q, int limit)
{
var db = new AideskDataContext();
var tags = from p in db.Priorities select p.PriorityName;

var retValue = tags
.Where(x => x.StartsWith(q))
.OrderBy(x => x)
.Take(limit)
.Select(r => new { Tag = r });

return Json(retValue);
}

A: Luego aprendo a usar jSON bien.
T: 亀 Ahora tienes que incluir el código de javascript, sino te digo algo te va a salir éste error: “The Controls collection cannot be modified because the control contains code blocks (i.e. ).” El comodín de los errores de ASP.NET cuando no sabe que hacer con javascript. EL CÓDIGO LO INCLUYES DENTRO DEL NO DENTRO DEL . OUT OF THE BODY AND INTO THE HEAD. k-k-k-code:


$(document).ready(function() {
$("#OwnerIDF").autocomplete('<%=Url.Action("LookupTags", "Tickets") %>',
{
dataType: 'json',
parse: function(data) {
var rows = new Array();
for (var i = 0; i < data.length; i++) {
rows[i] = { data: data[i], value: data[i].Tag, result: data[i].Tag };
}
return rows;
},
formatItem: function(row, i, max) {
return row.Tag;
},
width: 300,
highlight: false,
multiple: true,
multipleSeparator: ","
});
});

y ya.

18
Mar
09

Radiohead tocó Creep en el concierto!!!

10
Mar
09

BUILDの時間!!!

build build build!!! ! ! ! ! ycombinator 2channel?

09
Mar
09

El software ideal

1.- Una caja de texto, consola, un cuadrito en donde puedas escribir.
2.- Ese cuadrito lo puedes seleccionar presionando Ctrl + L
3.- si presionas TAB en ese cuadrito, te aparecen todas las opciones
posibles que hace el software, es decir todas las features. Las
funcionalidades no estan escondidas detras de menus. A quien demonios se
le ocurrieron los menus.
4.- Puedes guardar un archivo de configuracion donde dejas las opciones
de como quieres que aparezca el software la proxima vez que lo utilices.
5.- Mucho mas ideal seria si tuviera macros pero eso ya es demasiado.

05
Mar
09

Color-theme-nightingale

Hice un port del theme que hay para el Visual Studio para emacs, basandome en el color-theme-blue del que otra persona se baso para hacer el color-theme-blue de ruby en emacs.

      (defun color-theme-nightingale ()
      "Color theme by Altxwally, port from http://www.winterdom.com/weblog/2007/09/11/NightingaleAVS2005ColorScheme.aspx. Created 2009-03-05"
      (interactive)
      (color-theme-install
      '(color-theme-nightingale
      ((background-color . "gray20")
      (background-mode . dark)
      (border-color . "black")
      (cursor-color . "gray20")
      (foreground-color . "#C7D4E2")
      (mouse-color . "sienna1"))
      (default ((t (:background "black" :foreground "#FEF1A9"))))
      (blue ((t (:foreground "blue"))))
      (bold ((t (:bold t))))
      (bold-italic ((t (:bold t))))
      (border-glyph ((t (nil))))
      (buffers-tab ((t (:background "black" :foreground "white"))))
      (region ((t (:foreground "cyan" :background "dark cyan"))))
      (font-lock-builtin-face ((t (:foreground "#FEF1A9"))))
      (font-lock-comment-face ((t (:foreground "#FF80C0"))))
      (font-lock-constant-face ((t (:foreground "#00CCFF"))))
      (font-lock-doc-string-face ((t (:foreground "DarkOrange"))))
      (font-lock-function-name-face ((t (:foreground "#40C4FF" :bold t))))
      (font-lock-keyword-face ((t (:foreground "#fab732"))))
      (font-lock-preprocessor-face ((t (:foreground "Aquamarine"))))
      (font-lock-reference-face ((t (:foreground "SlateBlue"))))
      (font-lock-string-face ((t (:foreground "#60FF3C"))))
      (font-lock-type-face ((t (:foreground "#40C4FF"))))
      (font-lock-variable-name-face ((t (:foreground "#FEF1A9"))))
      (font-lock-warning-face ((t (:bold t :foreground "Pink"))))
      (gui-element ((t (:background "#D4D0C8" :foreground "black"))))
      (highlight ((t (:background "darkolivegreen"))))
      (highline-face ((t (:background "SeaGreen"))))
      (italic ((t (nil))))
      (left-margin ((t (nil))))
      (text-cursor ((t (:background "yellow" :foreground "black"))))
      (toolbar ((t (nil))))
      (underline ((nil (:underline nil))))
      (zmacs-region ((t (:background "snow" :foreground "blue")))))))
    

05
Mar
09

ASP.NET controls

Incluyo esto porque me va a servir tal vez………..

<textarea id="TextArea1" cols="20" rows="2"></textarea>
<asp:linkbutton runat="server">LinkButton</asp:linkbutton>
<asp:textbox runat="server"></asp:textbox>
<asp:button runat="server" text="Button" />
<asp:imagebutton runat="server"></asp:imagebutton>
<asp:hyperlink runat="server">HyperLink</asp:hyperlink>
<asp:dropdownlist runat="server"></asp:dropdownlist>
<asp:listbox runat="server"></asp:listbox>
<asp:checkbox runat="server"></asp:checkbox>
<asp:checkboxlist runat="server"></asp:checkboxlist>
<asp:radiobutton runat="server"></asp:radiobutton>
<asp:radiobuttonlist runat="server"></asp:radiobuttonlist>
<asp:image runat="server"></asp:image>
<asp:imagemap runat="server"></asp:imagemap>
<asp:table runat="server"></asp:table>
<asp:bulletedlist runat="server"></asp:bulletedlist>
<asp:hiddenfield runat="server"></asp:hiddenfield>
<asp:literal runat="server"></asp:literal>
<asp:literal runat="server"></asp:literal>
<asp:calendar runat="server"></asp:calendar>
<asp:adrotator runat="server"></asp:adrotator>
<asp:fileupload runat="server"></asp:fileupload>
<asp:wizard runat="server"> <WizardSteps> <asp:WizardStep title="Step 1" runat="server"></asp:WizardStep> <asp:WizardStep title="Step 2" runat="server"></asp:WizardStep> </WizardSteps> </asp:wizard>
<asp:xml runat="server"></asp:xml>
<asp:multiview runat="server"></asp:multiview>
<asp:panel runat="server"></asp:panel>
<asp:placeholder runat="server"></asp:placeholder>
<asp:view runat="server"></asp:view>
<asp:substitution runat="server"></asp:substitution>
<asp:localize runat="server"></asp:localize>
<asp:gridview runat="server"></asp:gridview>
<asp:datalist runat="server"></asp:datalist>
<asp:detailsview runat="server" height="50px" width="125px"></asp:detailsview>
<asp:formview runat="server"></asp:formview>
<asp:repeater runat="server"></asp:repeater>
<asp:sqldatasource runat="server"></asp:sqldatasource>
<asp:accessdatasource runat="server"></asp:accessdatasource>
<asp:objectdatasource runat="server"></asp:objectdatasource>
<asp:xmldatasource runat="server"></asp:xmldatasource>
<asp:sitemapdatasource runat="server" />
<asp:requiredfieldvalidator runat="server" errormessage="RequiredFieldValidator"></asp:requiredfieldvalidator>
<asp:rangevalidator runat="server" errormessage="RangeValidator"></asp:rangevalidator>
<asp:regularexpressionvalidator runat="server" errormessage="RegularExpressionValidator"></asp:regularexpressionvalidator>
<asp:comparevalidator runat="server" errormessage="CompareValidator"></asp:comparevalidator>
<asp:customvalidator runat="server" errormessage="CustomValidator"></asp:customvalidator>
<asp:validationsummary runat="server"></asp:validationsummary>
<asp:sitemappath runat="server"></asp:sitemappath>
<asp:menu runat="server"></asp:menu>
<asp:treeview runat="server"></asp:treeview>
<asp:login runat="server"></asp:login>
<asp:loginview runat="server"></asp:loginview>
<asp:passwordrecovery runat="server"></asp:passwordrecovery>
<asp:loginstatus runat="server"></asp:loginstatus>
<asp:loginname runat="server"></asp:loginname>
<asp:createuserwizard runat="server"> <WizardSteps> <asp:CreateUserWizardStep runat="server"/> <asp:CompleteWizardStep runat="server"/> </WizardSteps> </asp:createuserwizard>
<asp:changepassword runat="server"></asp:changepassword>
<asp:webpartmanager runat="server"></asp:webpartmanager>
<asp:proxywebpartmanager runat="server"></asp:proxywebpartmanager>
<asp:webpartzone runat="server"></asp:webpartzone>
<asp:catalogzone runat="server"></asp:catalogzone>
<asp:declarativecatalogpart runat="server"></asp:declarativecatalogpart>
<asp:pagecatalogpart runat="server"></asp:pagecatalogpart>
<asp:importcatalogpart runat="server"></asp:importcatalogpart>
<asp:editorzone runat="server"></asp:editorzone>
<asp:appearanceeditorpart runat="server"></asp:appearanceeditorpart>
<asp:behavioreditorpart runat="server"></asp:behavioreditorpart>
<asp:layouteditorpart runat="server"></asp:layouteditorpart>
<asp:propertygrideditorpart runat="server"></asp:propertygrideditorpart>
<asp:connectionszone runat="server"></asp:connectionszone>

04
Mar
09

Macros qu tengo que hacer para emacs

Tengo que hacer algunos macros para emacs, depués tomarme el tiempo para
que ponerle atributos de runat="server" a las etiquetas. Tambien generar
un archivo autocompletar los controles de ASP.NET. Ponerlo en
github.

02
Mar
09

Me desespera OpenGL

Lo que más me gustó de OpenGl fue aprender lo que se tenía que hacer
para que funcionaran los bindings para Common Lisp. Sin embargo,
programar OpenGl sin haber leído los libros es horrible. No tengo ideas
de porque suceden las cosas y al parecer no he aprendido mucho en
clase. Tengo que dedicarla tiempo a esta materia… porque la verdad si
está divertido, pero tengo además como otros 3 proyectos que acabar y me
ahorita me siento improductivo haciendo cosas que no generen un impacto
directo a esos proyectos… (seguir leyendo el libro de Neural nets,
backpropagation y neocognitronの課, terminar de super libro de Making
sense of 日本語の文法 que esta buenisimo, leer el libro de Peter Norvig
y los capitulos AIMA para el examen, ¿cuándo es el examen, la próxima
semana? etc… A estas cosas son las que le quiero dedicar tiempo, otras
como principalmante las clases de API, Modelado y animacion y la de
emprendedores son una pérdida de tiempo. El salón de la clase Maya esta
friooooo además…

01
Mar
09

Instalando cl-opengl para practicar OpenGl con Common Lisp

Pues esta vez no le batallé tanto pero sigue estando algo confuso. Una
lista del proceso seria le siguiente:

  • Instalar clbuild bajándolo del repositorio darcs
  • Modificar el archivo wnpp-projects para que de una sola vez baje las dependencias y a opengl(ver post anterior) Una vez hecho esto, instalar primero slime y después cl-opengl (el cual al mismo tiempo va a bajar los cffi para Common Lisp, por lo que es mejor hacerlo de esta manera):


    clbuild install slime
    clbuild install cl-opengl

  • Ya con el cl-opengl y el slime más nuevo, ahora podemos hacer
    clbuild slime

    para iniciar una sesión de SLIME en emacs. (ver también
    clbuild slime-configuration

    , un copy-paste del elisp al .emacs es muy conveniente.
  • Con la REPL de SLIME, tenemos ahora que utilizar asdf para compilar los paquetes que acabamos de bajar. Así que…


    ;;para compilar el cl-opengl. Después esto ponerlo en el ~/.sbclrc para que empieze con eso cargado
    (asdf:operate 'asdf:load-op 'cl-opengl)
    ;;y también de una vez compilar los ejemplos...
    (asdf:operate 'asdf:load-op 'cl-glut-examples)

Si todo salió bien, al evaluar en la REPL de SLIME,
(cl-glut-examples:gears)
por ejemplo, nos van a salir unos engranes en la esquina. Ah! y cuando se inicia el SLIME de clbuild es mejor no crear un *inferior-lisp* porque luego aparecen problemas con el SWANK creo, bueno no entendí. Como sea, parece complicado pero realmente no lo fue tanto, lo complicado de la tecnología es que no nos podemos imaginar como funciona, es un hechizo; es algo potteresco.

01
Mar
09

Instalando cffi y clbuild.

Normalmente la herramienta que se usa para instalarle cosas a sbcl es
‘asdf, sin embargo, estos días que estuve buscando una forma de hacer
las prácticas de OpenGl para la clase de Computer Graphics, y que tuve que
ponerme a investigar como utilizar el cffi, descubrí en el sentido de
Cristobal Colón clbuild, el cual es un shell script de bash que te ayuda a instalar varios proyectos de interés, y además te ayuda a instalar las dependencias, y actualizar SLIME y SWANK para mantenerlos sincronizados. Tal vez el problema por el cual no puedo hacer ’slime-connect’ a mi server es por las diferentes versiones pero bueno luego lo checo. Para instalar clbuild, tienes que tener darcs que es otro SCM que esta pegando mucho, bueno no tanto, pero que eso si esta hecho en Haskell. (Dije que iba a bajar el emacs para Haskell la otra vez, no lo he hecho luego lo hago, tengo tarea, lo de Computer Graphics…). whatevs.org Para instalarlo:


darcs get http://common-lisp.net/project/clbuild/clbuild
cd clbuild
chmod +x clbuild
./clbuild check

Si dice sucess varias veces esta bien la cosa. Ahora para instalar cffi con cl-opengl, (voy a tratar…) hmmm nop, no pude. Tal vez la voy a hacer en Python mejor…

Ok, 頑張る!!!

Ok, no se pudo instalar así de fácil. Hoy es… 1ero de marzo 2009, el mundo está preocupado por cosas más importantes que utilizar Common Lisp para hacer prácticas de Computer Graphics, tal vez están haciendo aplicaciones web en Clojure o algo así… Lo que hice por el momento es editar la variable cl-opengl en el archivo ‘wnpp-projects’:


cl-opengl get_svn http://...............

y al revisar la página del proyecto de cl-opengl me di cuenta de que ya no estaban usando un repositorio svn desde hace algo de tiempo y se cambiaron a darcs, por lo que cambie la variable a este valor:


cl-opengl get_darcs http://www.common-lisp.net/project/cl-opengl/darcs/cl-opengl/

…lo cual tal vez dentro de un año y algo ya no sirva, una lástima que las demás personas que el clbuild no pego tanto y tengas que estar al tanto de los proyectos por tu cuenta, jajaja entonces de qué sirve el software.