Autor Tema: alguien que le eche un ojo a este addon  (Leído 56 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado lamasfeita

  • Miembro Junior
  • **
  • Mensajes: 92
  • Karma: +1/-156
alguien que le eche un ojo a este addon
« en: Febrero 10, 2020, 07:13:48 am »
Código: [Seleccionar]
;dIRCionario -  © Red_Erik  - 1.0  Noviembre 2003 / 2.0  Mayo 2006
;
; <><><><><><><> LOAD Y UNLOAD <><><><><><><>
;
on 1:load: {
  .timer 1 1 echo -s 12***2 -
  .timer 1 1 echo -s 12***2 -    12 d4IRC12ionario13 2.0 
  .timer 1 2 echo -s 12***2 -   © 2006 - Red_Erik
  .timer 1 3 echo -s 12***2 - #IRcap - IRC-Hispano
  .timer 1 5 echo -s 12***2-------------------------------
  .timer 1 5 echo -s 12***2-------------0((4,,,0))2------------
  .timer 1 5 echo -s 12***2-------------13(12o  o13)2------------
  .timer 1 5 echo -s 12***2 ------13oOOo-13(_)-13oOOo2------
  .timer 1 5 echo -s 12***2-----------4Red_Erik2----------
  .timer 1 5 echo -s 12***2-------------------------------
  .timer 1 8 echo -s 12***2-
  .timer 1 9 echo -s 12***2  Este addon busca en la página web de la Real Academia Española de la Lengua.
  .timer 1 9 echo -s 12***2 Al utilizar un recurso de la red, dejara de funcionar cuando el propio recurso no esté operativo o desaparezca.
  set %diccrae.icono on
  $bar-ico( +, DIRCionario, $mircdir $+ addons\DIRCionario.png, diccrae.abrir)
}

alias diccrae.unload {
  echo -s 12***2 Descargando 12 dIRCionario...
  $bar-ico( -, dIRCionario, $mircdir $+ addons\DIRCionario.png, diccrae.abrir)
  unset %diccrae.* | unset %url.rae | unset %diccraew.*
  window -c @Diccraew
  .remove $mircdir $+ addons\dIRCionario1.txt
  .remove $mircdir $+ addons\dIRCionario2.txt
  echo -s 12***2 -
  .unload -rs $script
}
;
; <><><><><><><> DIBUJANDO LA PANTALLA <><><><><><><>
;
alias Diccrae.abrir {
  set %Diccrae.palabra $null
  guiwin @Diccraew c c 566 366 dIRCionario v 2.0
  cuagr @Diccraew 14 42 436 248 Búsqueda
  cuag @Diccraew 460 71 90 219 $gettok(%gui.cc,1,32)
  %Diccraew.bt = 470 81 55 Diccrae.limpiar Limpiar |470 140 55 Diccrae.ampliar Ampliar |470 199 55 Diccrae.cerrar Cerrar |470 258 55 Diccrae.busqueda Búsqueda |
  %Diccraew.op =  460 45 Diccrae.icono/diccrae.icono Icono en barra|
  %Diccraew.tx = 400 306 140 Diccrae.palabra
  %Diccraew.ls1 = 22 54 400 16 1 0 return @Diccraew1 | window -c @Diccraew1 | window -hl @Diccraew1
  %diccrae.salida = $chr(160)
  cuag @Diccraew 15 300 534 50 $gettok(%gui.cc,1,32)
  drawpic -t  @Diccraew 65280 25 305 $mircdir $+ addons\DIRCionario.bmp
  drawtext -nr @Diccraew $gettok(%gui.cc,6,44) verdana 10 300 308 Palabra a buscar:
  drawtext -nr @Diccraew $gettok(%gui.cc,6,44) verdana 10 300 330 Estado:
  diccrae.msg 6
  guidib @Diccraew
  drawline @Diccraew
  Diccrae.llenalista
  window -wa @Diccraew
  aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
  aline @diccraew1   $str($chr(160),35) Búsqueda de palabras en la  web
  aline @diccraew1   $str($chr(160),25) de la Real Academia Española de la Lengua.
  aline @diccraew1  $chr(160)
  aline @diccraew1  $str($chr(160),35) Al utilizar un recurso de la red,
  aline @diccraew1 $str($chr(160),5) no funcionará cuando el propio recurso no esté operativo o desaparezca.
  guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
}
;
; <><><><><><><> SOCKETS <><><><><><><>
;
;La madre de las batallas: enviar el GET correcto...
on 1:sockopen:diccrae: {
  if ( $sockerr > 0 ) { diccrae.msg 3 | return }
  diccrae.msg 1
  sockwrite -n diccrae GET %url.rae HTTP/1.1
  sockwrite -n diccrae Accept: text/html ; CHARSET=UTF-8
  sockwrite -n diccrae Range: bytes=0-
  sockwrite -n diccrae Host:buscon.rae.es
  sockwrite -n diccrae User-Agent:mortadelo
  sockwrite -n diccrae $crlf
}

on 1:sockread:diccrae: {
  if ( $sockerr > 0 )  { diccrae.msg 4 | return }
  diccrae.msg 2
  sockread 600  &diccrae.binario
  while ( $sockbr )    {
    bwrite $mircdir $+ addons\dIRCionario1.txt -1 -1 &diccrae.binario
    write $mircdir $+ addons\dIRCionario1.txt $cr
    sockread 600  &diccrae.binario
  }
}

on 1:sockclose:diccrae: {
  write $mircdir $+ addons\dIRCionario1.txt +fin+
  diccrae.msg 5
  var %nl = 16
  :depurar
  set %diccrae.depurar $read($mircdir $+ addons\dIRCionario1.txt,%nl)
  set %diccrae.depurar $replace(%diccrae.depurar,>,> $+ $crlf,<,$crlf $+ <)
  set %diccrae.depurar $replace(%diccrae.depurar,ǁ,-,&aacute;,á,&eacute;,é,&iacute;,í,&oacute;,ó,&uacute;,ú,¡,¡,Á,Á)
  set %diccrae.depurar $replace(%diccrae.depurar,ñ,ñ,ó,ó,á,á,í,í,ú,ú,é,é,ü,ü,©,©,&laquo;,",&raquo;,",&nbsp,$chr(32))
  if ( %diccrae.depurar == +fin+ ) { write $mircdir $+ addons\dIRCionario2.txt %diccrae.depurar | diccrae.listar }
  write -n $mircdir $+ addons\dIRCionario2.txt %diccrae.depurar
  inc %nl
  goto depurar
}
;
; <><><><><><><> PROCESANDO <><><><><><><>
;
alias diccrae.listar {
  var %nl 1
  set %diccrae.sw 0

  if ( Bad Request isin $read($mircdir $+ addons\dIRCionario1.txt,7) ) {
    set %diccrae.salida   ENTRADA INCORRECTA
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $str($chr(160),45) %diccrae.salida
    guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
    halt
  }
  if (     isin $read($mircdir $+ addons\dIRCionario1.txt,10) ) {
    set %diccrae.salida COMPRUEBA LA ORTOGRAFIA
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $str($chr(160),39) %diccrae.salida
    guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
    halt
  }
  if ( DRAE. isin $read($mircdir $+ addons\dIRCionario1.txt,18) ) {
    set %diccrae.salida ESA PALABRA NO EXISTE EN EL DICCIONARIO
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $str($chr(160),30) %diccrae.salida
    guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
    halt
  }
  :releer
  set %diccrae.definit $read($mircdir $+ addons\dIRCionario2.txt,%nl)
  if ( $left(%diccrae.definit,1) == < ) {   inc %nl | goto releer }
  if ( $right(%diccrae.definit,1) == > ) {   inc %nl | goto releer }
  if ( %diccrae.definit == +fin+ )         { halt }
  if ( ~ isin %diccrae.definit ) { halt }
  if ( $left(%diccrae.definit,1) isnum ) && ( $left(%diccrae.definit,1) > 5 ) { halt }
  if ( %diccrae.sw == 1 ) { while ( $left(%diccrae.definit,1) !isnum ) {  inc %nl | goto releer }
  }
  set %diccrae.sw 0
  if ( $left(%diccrae.definit,1) isnum ) { set %diccrae.definit 3 %diccrae.definit  $str(_,10)  }
  if ( %diccrae.definit == %diccrae.palabra ) {
    set %diccrae.definit   *** 4 $upper(%diccrae.palabra)  ***  | set %diccrae.sw 1
  }
  set %diccrae.salida  %diccrae.definit
  if ( %diccrae.salida == $null ) {  inc %nl | goto releer }
  inc %nl
  Diccrae.llenalista
  goto releer
}
;
; <><><><><><><> MENUS Y OPCIONES <><><><><><><>
;
menu channel,query {
  ..dIRCionario: Diccrae.abrir
}

menu menubar {
  .dIRCionario: Diccrae.abrir
}
;
; <><><><><><><> ALIASES <><><><><><><>
;
alias Diccrae.cerrar {
  window -c @Diccraew
}

alias Diccrae.ampliar {
  url http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_BUS=3&LEMA= $+ %Diccrae.palabra
}

alias Diccrae.busqueda {
  if %Diccrae.palabra == $null {
    diccrae.borrar
    set %diccrae.salida NECESITO ALGO QUE BUSCAR
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160) | aline @diccraew1  $chr(160)
    aline @diccraew1  $str($chr(160),46) %diccrae.salida
    guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
    halt
  }
  sockclose diccrae
  set %url.rae /draeI/SrvltGUIBusUsual?TIPO_HTML=0&TIPO_BUS=3&LEMA= $+ %Diccrae.palabra
  diccrae.msg 0
  sockopen diccrae buscon.rae.es 80
  write -c $mircdir $+ addons\dIRCionario1.txt $chr(32)
  write -c $mircdir $+ addons\dIRCionario2.txt $chr(32)
  diccrae.borrar
}

alias Diccrae.llenalista {
  var %mxl = 77
  if ( $len(%diccrae.salida) > %mxl  ) { diccrae.trocear | return }
  aline @diccraew1  %diccrae.salida
  guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
}

alias diccrae.trocear {
  var %cp = $numtok(%diccrae.salida,32) , %ve = 1 , %mxl = 77
  set %diccrae.tok.palabra $null
  :tok
  if ( $len(%diccrae.tok.palabra $gettok(%diccrae.salida,%ve,32) ) < %mxl ) { 
    set %diccrae.tok.palabra %diccrae.tok.palabra $gettok(%diccrae.salida,%ve,32)
    if ( %ve >= %cp ) && ( %diccrae.tok.palabra != $null ) { aline @diccraew1 %diccrae.tok.palabra | guilista @Diccraew Diccraew.ls1 | drawline @Diccraew | return }
    inc %ve
    goto tok
  }
  if ( $len(%diccrae.tok.palabra $gettok(%diccrae.salida,%ve,32) ) >= %mxl ) { 
    aline @diccraew1  %diccrae.tok.palabra
    guilista @Diccraew Diccraew.ls1
    drawline @Diccraew
    set %diccrae.tok.palabra $null
    if ( %ve >= %cp ) && ( %diccrae.tok.palabra != $null ) { aline @diccraew1 %diccrae.tok.palabra | guilista @Diccraew Diccraew.ls1 |drawline @Diccraew | return }
    goto tok
  }
  return
}

alias Diccrae.limpiar {
  cuagr @Diccraew 14 42 436 248 Búsqueda
  %Diccraew.ls1 = 22 54 400 16 1 0 return @Diccraew1 | window -c @Diccraew1 | window -hl @Diccraew1
  write -c $mircdir $+ addons\dIRCionario1.txt $chr(32)
  write -c $mircdir $+ addons\dIRCionario2.txt $chr(32)
  unset %Diccrae.palabra
  guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
  guidib @Diccraew
}

alias Diccrae.borrar {
  cuagr @Diccraew 14 42 436 248 Búsqueda
  %Diccraew.ls1 = 22 54 400 16 1 0 return @Diccraew1 | window -c @Diccraew1 | window -hl @Diccraew1
  guilista @Diccraew Diccraew.ls1 | drawline @Diccraew
}

alias diccrae.icono {
  if ( %diccrae.icono == on ) { $bar-ico( +, dIRCionario, $mircdir $+ addons\DIRCionario.png, diccrae.abrir) }
  if ( %diccrae.icono == off ) { $bar-ico( -, dIRCionario, $mircdir $+ addons\DIRCionario.png, diccrae.abrir) }
}
alias diccrae.msg {
  cuag @Diccraew 400 330 140 15 $gettok(%gui.cc,1,32)
  if ( $1 == 0 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 430 330 Conectando }
  if ( $1 == 1 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 425 330 Enviando GET }
  if ( $1 == 2 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 420 330 Recibiendo datos }
  if ( $1 == 3 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 420 330 No hay conexión }
  if ( $1 == 4 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 201 330 Error de lectura }
  if ( $1 == 5 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 430 330 Encontrado }
  if ( $1 == 6 ) { drawtext -nr @Diccraew $gettok(%gui.cc,2,44) verdana 12 435 330 En espera }
  guidib @Diccraew
}
;a estas alturas ya estoy hasta ahi mismo. Que paciencia tengo, por Dios...
;
; <><><><><><><> DATOS DEL ADD ON <><><><><><><>
;
[ADDON]
nombre=dIRCionario
autor=Red_Erik
ver=2.0
unload=diccrae.unload
desc=Busca el significado de las palabras en español.


no me funciona queda en Recibiendo datos y no busca nada

por favor
gracias