Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 4 de 5
Ir a la página Anterior  1, 2, 3, 4, 5  Siguiente
 
Comentarios Sobre VisorRV1960
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
buenas

estoy trabajando en la creación de archivos txt que tendrán listas de palabras ordenadas

por ejemplo Lista-A.txt

la cual tendrá las palabras empezadas por a,A,á,Á

así con otros archivos Lista-"letra x".txt

la idea de crear estos archivos es para usarlos para ayudar al usuario cuando esta escribiendo en la búsqueda de concordancias.

hasta ahora tengo pensado esto y algo he logrado

al escribir por ejemplo la letra a   leerá el archivo Lista-A.txt y los mostrara en un lisbox

supongamos que esa palabra empezada por a es "amor"

amor"aquí un espacio"

si el usuario pone un espacio la lista no muestra nada pero si después del espacio pone otra letra

entonces toma el texto lo separa por espacios y toma array[array.max] así tomara la ultima palabra o letra escrita y consultara el archivo con la letra que comienza la palabra y mostrando solo las coincidencias

medio enredada la explicación pero bueno, aquí dejo el código:

' gambas class file

Private Tablas As String[] = ["Mateo", "Marcos", "Lucas", "Juan", "Hechos", "Romanos", "1Corintios", "2Corintios",
                              "Galatas", "Efesios", "Filipenses", "Colosenses", "1Tesalonicenses", "2Tesalonicenses",
                              "1Timoteo", "2Timoteo", "Tito", "Filemon", "Hebreos", "Santiago", "1Pedro", "2Pedro",
                              "1Juan", "2Juan", "3Juan", "Judas", "Apocalipsis"]

Private lstA As New String[]
Private lstB As New String[]
Private lstC As New String[]
Private lstD As New String[]
Private lstE As New String[]

Private EsteTexto As String

Public Sub Form_Open()
 Dim pA, pB, pC, pD, pE As String
 Dim LpA, LpB, LpC, LpD As String
 Dim ruta As String = User.Home &/ "ListasPalabras"
  
  If Not Exist(ruta) Then Mkdir ruta
  
  CrearTodasLasListas()

  If lstA.Count > 0 Then
    lstA.Sort()
    For Each pA In lstA
      Print "Lista A=" & pA
      LpA &= pA & gb.NewLine
    Next
    File.Save(ruta &/ "Lista-A.txt", LpA)
  Endif
 
  If lstB.Count > 0 Then
    For Each pB In lstB
      Print "Lista B=" & pB
      LpB &= pB & gb.NewLine
    Next
    File.Save(ruta &/ "Lista-B.txt", LpB)
  Endif
  
  If lstC.Count > 0 Then
    For Each pC In lstC
      Print "Lista C=" & pC
      LpC &= pC & gb.NewLine
    Next
    File.Save(ruta &/ "Lista-C.txt", LpC)
  Endif
 
End

Private Sub CrearTodasLasListas()
  Dim r As Result
  Dim palabra, tabla, sql As String
  Dim lista As String[]
  
  Inc Application.Busy
  For Each tabla In Tablas
    Print tabla
    BuscarTextoElegido(tabla)
  Next
  Dec Application.Busy
  
End


Private Sub BuscarTextoElegido(tabla As String)
 Dim ResultadoSql As Result
 Dim TextoAcumulado As String
 Dim sql As String
 
 sql = Subst$("Select texto from '&1'", tabla)
 
 ResultadoSql = FMain.Conexion.Exec(sql)
  
  Do While ResultadoSql.Available
    TextoAcumulado &= ResultadoSql!texto
    ResultadoSql.MoveNext
  Loop
  
  EsteTexto = TextoAcumulado

  SepararPalabras(SacarCaracteres(SacarParentesisRectos(EsteTexto), True))
  
End


Private Sub SacarTitulos(texto As String) As String
  Dim Titulo As String
  Dim inicio, final As Integer
 
  Repeat
      inicio = InStr(texto, "- ")
      final = InStr(texto, " -")
      Titulo = Mid$(texto, inicio, (final - inicio) + 1)
      texto = Replace$(texto, Titulo, " ")
  Until InStr(texto, "[") = 0
  
  Return texto
  
End

Private Sub SacarParentesisRectos(texto As String) As String
  Dim palabraAcortar As String
  Dim inicio, final As Integer
 
 If InStr(texto, "[") = 0 Then Return texto
 
  Repeat
      inicio = InStr(texto, "[")
      final = InStr(texto, "]")
      palabraAcortar = Mid$(texto, inicio, (final - inicio) + 1)
      texto = Replace$(texto, palabraAcortar, " ")
  Until InStr(texto, "[") = 0
  
  Return texto
  
End


Private Sub SacarCaracteres(texto As String, contitulo As Boolean) As String
  Dim NuevoTexto As String
  
  If contitulo Then texto = Replace$(texto, "-", " ")
  
  texto = Replace$(texto, ".", " ")
  texto = Replace$(texto, ":", " ")
  texto = Replace$(texto, ",", " ")
  texto = Replace$(texto, ";", " ")
  
  texto = Replace$(texto, "?", " ")
  texto = Replace$(texto, "¿", " ")
  texto = Replace$(texto, "!", " ")
  texto = Replace$(texto, "¡", " ")
  texto = Replace$(texto, "*", " ")
  texto = Replace$(texto, "(", " ")
  texto = Replace$(texto, ")", " ")
  
  texto = Replace$(texto, gb.NewLine, " ")
    
  NuevoTexto = texto
  
  Return NuevoTexto
  
End

Private Sub SepararPalabras(texto As String) As String[]
  Dim Palabras As String[]
  Dim palabra As String
  
  Palabras = Split(texto, " ", Null, True)
  
  For Each palabra In Palabras
    ' Print palabra
    ProcesarPalabraLimpia(palabra)
  Next
  
  Return Palabras
  
End


Private Sub ProcesarPalabraLimpia(palabraX As String)
  
   If IsNull(palabraX) Then Return
  
   Select Case Left(palabraX, 1)
     Case "a"
       If Not lstA.Exist(palabraX) Then lstA.Add(palabraX)
     Case "A"
       If Not lstA.Exist(palabraX) Then lstA.Add(palabraX)
     Case "á"
       If Not lstA.Exist(palabraX) Then lstA.Add(palabraX)
     Case "Á"
       If Not lstA.Exist(palabraX) Then lstA.Add(palabraX)
     Case "b"
       If Not lstB.Exist(palabraX) Then lstB.Add(palabraX)
     Case "c"
       If Not lstC.Exist(palabraX) Then lstC.Add(palabraX)
     Case Else
'        Print "nada=" & palabraX
   End Select

  
End


que opinan?
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
bueno hice una prueba y puse todas las palabras no repetidas en un solo txt y pesa 107 KB
con:
total palabras no repetidas=11992  (palabras en archivo Lista-Todo-Nuevo-Testamento.txt)
total palabras=168613

supongo que el viejo testamento no va a pasar de un mega...
el asunto sera si se ralentiza al buscar en el archivo txt de 107 kb voy a probar a ver que hace.
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
insertarbusqueda

algo así va quedando
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
buenas gente...

estoy trabajando en una mejora del ayudante de busquedas del programa visorrv1960

 ayudantelonuevo

a medida que escribimos en el cuadro de texto (4) aparece una lista de palabras que existen en la biblia (1) y coinciden con lo que vamos escribiendo

en el la lista de búsquedas recientes (2) tenemos todas las búsquedas que obtuvieron resultados
que a su vez cuando escribimos aparece otro lista de coincidencias con la lista de búsquedas recientes, la cual no se ve en la captura.

pero no conforme con lo que ya hace el ayudante me largue hacer una ultima lista (eso espero jajaja) en la cual cuando escribís mas de dos palabras automáticamente busca una coincidencia en toda la biblia    jajjaja, si si toy salado como programador  

lo que hace el ayudante es previamente crear un txt con todos los versículos de la Biblia a uno por párrafo y ahí busca.

queda un archivo grande de dos megas cuando termine de llenar todas las tablas aumentara un mega o dos no se.

y creo que con todas esas coincidencias mostradas (3) sera mas que suficiente para ayudar a encontrar lo que buscamos.

saludos.
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
última edición por v3ctor el Jueves, 08 Diciembre 2016, 03:39; editado 1 vez 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
estoy trabajando en una función que con un solo clic crea todos los capítulos de todos los libros de la biblia en formato .txt para ir comenzando digamos
mas adelante podría ser en otros formatos.
la idea es tener a mano los archivos para imprimir lo que se necesite.

 carpetas

 textos

se crea una carpeta llamada imprimir libros
dentro de ella crea una carpeta por cada libro con su nombre de libro
y en su interior crea un archivo txt por cada capitulo
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
aqui el código...
como siempre si alguien ve algo que se puede mejorar bienvenido sea...

' gambas class file

Private DirLibros As String

Private Tablas As String[] = ["Genesis", "Exodo", "Levitico", "Numeros", "Deuteronomio",
                               "Rut", "Esdras", "Nehemias", "Ester", "Eclesiastes",
                               "Cantares", "Lamentaciones", "Daniel", "Oseas", "Joel", "Amos", "Abdias",
                               "Jonas", "Miqueas", "Nahum", "Habacuc", "Sofonias", "Hageo", "Zacarias", "Malaquias",
                              "Mateo", "Marcos", "Lucas", "Juan", "Hechos", "Romanos", "1Corintios", "2Corintios",
                              "Galatas", "Efesios", "Filipenses", "Colosenses", "1Tesalonicenses", "2Tesalonicenses",
                              "1Timoteo", "2Timoteo", "Tito", "Filemon", "Hebreos", "Santiago", "1Pedro", "2Pedro",
                              "1Juan", "2Juan", "3Juan", "Judas", "Apocalipsis"]


Public Sub btnTodos_Click()
  Dim libros As New String[]
  
  libros.Add("Genesis")

'   CrearLibrosTodosLosCapitulos(libros)
  CrearLibrosTodosLosCapitulos(Tablas)

End

Public Sub CrearLibrosTodosLosCapitulos(libros As String[])
  Dim Libro As String
  
  Inc Application.Busy
  
  If Not Exist(DirLibros) Then
    Mkdir DirLibros
    Wait 0.1
  Endif
  
  For Each Libro In libros
    If Not Exist(DirLibros &/ Libro) Then
      Mkdir DirLibros &/ Libro
      
    Endif
  Next
  
  Wait 0.1
  
  For Each Libro In libros
    CrearCapitulosLibro(Libro)
  Next
  
  Dec Application.Busy
  
End

Public Sub CrearCapitulosLibro(EsteLibro As String)
  Dim r, rv As Result
  Dim capitulos, capitulo As Byte
  Dim a, versiculos As Byte
  Dim sqlcapitulo, sqlversiculo As String
  Dim TextoArchivo As String
  
  sqlcapitulo = Subst("Select * From biblia where nombretabla='&1'", EsteLibro)
  
  r = FMain.Conexion.Exec(sqlcapitulo)
  
  Do While r.Available
    capitulos = CByte(r!capitulos)
    r.MoveNext
  Loop

  For a = 1 To capitulos
    
    TextoArchivo = ""
    
    sqlversiculo = Subst("Select * from '&1' where capitulo='&2'", EsteLibro, a)
          
    rv = FMain.Conexion.Exec(sqlversiculo)
    
    Do While rv.Available
      TextoArchivo &= rv!versiculo & ". " & rv!texto & gb.NewLine
      rv.MoveNext
    Loop
    
    File.Save(DirLibros & "/" & EsteLibro & "/" & EsteLibro & "-Cap." & a & ".txt", TextoArchivo)
    Wait 0.1
  Next
  
End

Public Sub Form_Open()
  DirLibros = FMain.DirBD & "/ImprimirLibros"
End

Public Sub Button1_Click()
  If Exist(DirLibros) Then Desktop.Open(DirLibros)
End

 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
estoy trabajando en una nueva función

tenemos ya la posibilidad de crear nuestro propio titulo al versículo, también un comentario, también referencias a ese versículo pero esta faltandole algo para que quede potente y son etiquetas   

esto permitirá por ejemplo buscar versículos por etiqueta (tema de estudio, versículo relacionado a que asunto etc)
y un mismo versiculo puede estar vinculado a varios temas (etiquetas)

he usado las clases ctag, ctagcompletion, y ctagEditor, las modifique un poquitin para adaptarlo a visorrv1960

aquí una captura:

 ctagjaja
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
a full reutilizando código existente de gambas....

 a_full
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
nueva función contrario viceversa en filtro libros

Public Sub btnContrario_Click()

  Dim Xobjeto As Object
  Dim partes As New String[]

  For Each Xobjeto In Me.Children
    If Object.Is(Xobjeto, "CheckBox") Then
      partes = Split(Xobjeto.Tag, ",", Null, True)
      
      If partes[0] = "c" Then
      
      Else
'         Print Xobjeto.name & "---> partes 0=" & partes[0] & " - partes 1=" & partes[1]
        Xobjeto.Value = Not Xobjeto.Value
      Endif
    Endif
  Next

End


 contrario1

 contrario2
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Comentarios Sobre VisorRV1960 
 
concondicion

Nueva función:  Buscar una palabra o frase si contiene o no una palabra o frase

en el caso de la imagen Buscamos la palabra "Pablo" si contiene a su vez la palabra "Señor"
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes MapComen: Generador De Comentarios jsbsan Aplicaciones/Fragmentos de Código 4 Miercoles, 14 Diciembre 2011, 23:23 Ver último mensaje
jsbsan
No hay nuevos mensajes Comentarios En El Código.Ortografía Shell General 3 Miercoles, 15 Agosto 2012, 21:48 Ver último mensaje
willicab
No hay nuevos mensajes Añadir Partes De Los Comentarios De Los M... Shell General 3 Viernes, 25 Septiembre 2015, 11:59 Ver último mensaje
Shell
No hay nuevos mensajes Inserción Automática De Comentarios. Pre... Shell General 4 Jueves, 28 May 2015, 00:35 Ver último mensaje
jguardon
 

Publicar nuevo tema  Responder al tema  Página 4 de 5
Ir a la página Anterior  1, 2, 3, 4, 5  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No puede descargar archivos
No puede publicar eventos en el calendario