A continuación encontrarás traducido al Castellano el artículo publicado originalmente en el blog oficial de Xojo por Paul Lefebvre y que puedes encontrar en este enlace ().
Con Xojo 2022 Release 1 puedes utilizar XojoScript para crear Asistentes de Código que puedas emplear sobre el texto seleccionado en el Editor de Código. Este es un pequeño ejemplo de un asistente de código que intercambia el prefijo para un comentario:
// This script takes the current selected comment // and changes the comment prefix. Function Name() As String Return "Swap Comment Prefix" End Function Function CanEdit(selection As String) As Boolean // Check if comments starts with // or '. Return Left(selection, 2) = "//" Or Left(selection, 1) = "'" End Function Function Edit(selection As String) As String // Swap // with ' or swap ' with // If Left(selection, 1) = "'" Then Return Replace(selection, "'", "//") ElseIf Left(selection, 2) = "//" Then Return Replace(selection, "//", "'") End If End Function
Este no es muy largo, de modo que veamos el ejemplo por partes. Con un asistente de código hay tres métodos requeridos: Name
, CanEdit
y Edit
.
El método Name()
devuelve una cadena conteniendo el nombre que aparecerá en el menú Code Assistants. Puedes anidar ítems utilizando barras inclinadas; así que “Paul/Swap Comments Prefix” aparecerá como Code Assistants > Paul > Swap Comments Prefix.
El método CanEdit()
proporciona como parámetro la selección de texto realizada en el Editor de Código. En este método deberás de devolver True
si este asistente de código permite la edición de la selección. Si devuelves True
, el nombre aparecerá en el menú de los Assistentes de Código. Si devuelves False
, entonces no se incluirá en el menú.
El anterior fragmento de código comprueba si el texto seleccionado comienza con el prefijo de comentario que queremos cambiar: //
o '
.
El método Edit()
es donde modificas la selección, devolviendo el nuevo texto que sustituirá al seleccionado en el Editor de Código. Este método se encarga de sustituir “//” por “‘”, y de forma inversa los comentarios que empiezan con “‘” por “//”.
Guarda el anterior script como SwapCommentPrefix.xojo_code_assistant y cópialo en la carpeta Scripts del IDE.
Si Xojo estaba en funcionamiento tendrás que indicarle que recargue los scripts pulsando la tecla Comando (en Mac) o Control (Windows/Linux) al mismo tiempo que haces clic con el botón derecho.
Ahora escribe un comentario como este:
‘ This is a comment.
Selecciona dicho comentario y haz clic con el botón derecho. Selecciona Code Assistants > Swap Comment Prefix.
Ahora la línea de código se verá así:
// This is a comment.
Para ver otros ejemplos de Asistentes de Código, dirígete a la carpeta Examples > Advanced > IDE Scripts > Code Assisants en la carpeta de Xojo.
También puedes aprender más sobre el funcionamiento de los Asistentes de Código en este vídeo, ¡y asegúrate de compartir tus Asistentes de Código en el foro (forum.xojo.com)!