Skip to Content

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

7 Comments
You must be Logged on to comment or reply to a post.
  • 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 馃槈

  • 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 deManish Kumarpara agregar la caracter铆stica de identificaci贸n de lenguajeABAP 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鈥.

    /