Skip to Content
Author's profile photo Carlos Daniel Alanis

Notepad++ activar la Lista de Funciones para ABAP

Hola a todos!

Cuantas veces por una u otra razón nos toco editar o revisar código offline y si la identificación de lenguaje es fantastica en …

https://upload.wikimedia.org/wikipedia/commons/0/0f/Notepad%2B%2B_Logo.png

Pero a veces necesitas editar rapidamente en el Notepad++ y te estas perdiendo una de las  caracteristicas útiles….la Lista de Funciones

El Panel de Lista de Funciones es una zona que muestra todas las funciones(o métodos) que se encuentren el archivo que estas editando. Puedes usar el panel de lista de funciones para acceder a la definición de la función rapidamente por un doble click sobre algún item de la lista.


Example_01.jpg

Ok, amigos espero les guste y vamos manos a la obra.

1-Agregar la identificación del Lenguaje para ABAP

Por favor visita el post de Manish Kumar para agregar la caracteristica de identificación de lenguaje ABAP Syntax Highlighting in Notepad++ Part 2


2-Archivo a Modificar

Para que Notepad++ reconozca la Lista de Funciones de ABAP, nosotros necesitamos modificar el archivo:

C:\Users\tu_nombre_de_usuario\AppData\Roaming\Notepad++\functionList.xml

3-Nodos XML

Agregar al Nodo <associationMap> la entrada

<association userDefinedLangName=“ABAP” id=“abap_syntax”/>

Example_02.jpg

y entonces agregar al Nodo <parsers>

Example_03.jpg

esta parte de código esta en el archivo adjunto

4-Guardar,reiniciar la aplicación y disfrutar!


Cualquier comentario o mejora es Bienvenido

Assigned Tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Osvaldo Lopez
      Osvaldo Lopez

      Excelente post!

      Fijate que el enlace a la "lista de funciones" va hacia un 404 (enlace roto). Tiene un error de escritura el link. Cambialo así queda mejor todavía 😉

      Author's profile photo Carlos Daniel Alanis
      Carlos Daniel Alanis
      Blog Post Author

      Muchas Gracias Osvaldo!

      Corregido 😉

      Author's profile photo Osvaldo Lopez
      Osvaldo Lopez

      Ahora sí, 5 estrellas camino al éxito 😉

      Sigue así.

      Saludos!

      Author's profile photo DAIRO LEONARDO LOZANO RODRIGUEZ
      DAIRO LEONARDO LOZANO RODRIGUEZ

      Muy buen post !  Actualmente utilizo el editor BRACKETS, pero voy a descargar esta herramienta y probar la funcionalidad. 

      Author's profile photo Former Member
      Former Member

      Donde está el archivo adjunto, del código parsers?

      Author's profile photo Former Member
      Former Member

      Me sumo al comentario anterior. ¿Dónde está el código Parsers? Gracias.

      Author's profile photo Yorman Jose Oviedo Peña
      Yorman Jose Oviedo Peña

      Hola, acá el extracto del xml que va en functionList.xml

      <!-- ========================================================= [ ABAP - YO ] -->
      <parser 
      	id="abap_syntax" 
      	displayName="ABAP" 
      	commentExpr="(?m:((?&lt;=&quot;).*?$)|((?i:\*)([\t ].*?)?$))"> 
      <classRange 
      	mainExpr="(?&lt;=^class ).*?(?=\n\S|\Z|endclass\.)" 
      	displayMode="node" > 
      	
      	<className>
      		<nameExpr expr=".*?(?=\n\S|\Z|\.)"/> 
      	</className>
      	
      	<function mainExpr="(?&lt;=method ).+?(?=\.)"> 
      		<functionName> 
      			<funcNameExpr expr="\w+"/> 
      		</functionName> 
      	</function> 
      </classRange> 
      <function 
      	mainExpr="((?&lt;=^form ).*?(?=\n\S|\Z|\.)|(?&lt;=^define ).*?(?=\n\S|\Z|\.))" 
      	displayMode="$functionName"> 
      </function>
      </parser>
      <!-- ========================================================= [ ABAP - YO ] -->

       

      Por otro lado note que en el mismo xml en la sección al Nodo <associationMap> la entrada debe tener especial cuidado, ya que el userDefinedLangName debe ser el mismo nombre usado en el xml importado en el post de Manish Kumar para agregar la característica de identificación de lenguaje ABAP Syntax Highlighting in Notepad++ Part 2

      Entonces, ahí usan el nombre abap2 y por tanto la linea quedaría así en el Nodo <associationMap> 

      <!-- ========================================================= [ ABAP - YO ] -->
      <association userDefinedLangName="abap2" id="abap_syntax" ext=".abap"/>
      <!-- ========================================================= [ ABAP - YO ] -->

       

      Saludos, espero les funcione tal como me funciona a mi.

       

      Éxitos….