6 votos

¿Cómo configurar mi editor favorito en ModelSim?

Quiero configurar mi editor favorito en ModelSim. El comportamiento predeterminado es que ModelSim usa su propio editor interno, lo cual no me gusta.

He buscado en Google y he consultado el Manual de Usuario de ModelSim. Descubrí que:

  • Si configuras la variable de entorno EDITOR, el comando TCL edit utilizará tu editor.
  • Puedes configurar el proyecto para ejecutar un comando personalizado cuando haces doble clic en un archivo (he configurado este comando personalizado a edit %f que abre el archivo con mi editor).

Aún así, cuando hago doble clic en un error de compilación, se abre el editor predeterminado (incorporado). Esto no es lo que quiero.

¿Hay alguna configuración global para que no se use el editor interno, sino mi propio editor?

0 votos

¿Windows o Linux?

0 votos

@Brian lo hice en Linux.

2 votos

¿Has preguntado a Mentor?

3voto

sokeode Puntos 6

Para aquellos que utilicen el script external_editor tcl y tengan problemas intentando restaurar la funcionalidad en ModelSim:

Abre regedit, ve a:

Equipo\HKEY_CURRENT_USER\Software\Model Technology Incorporated\ModelSim

Allí encontrarás la clave PrefSource. Elimina el valor altEditor, y eso solucionará tus problemas con ModelSim.

2voto

Steven Noble Puntos 2847

Coloca esto en un archivo tcl en algún lugar:

proc external_editor {filename linenumber} {
 exec "youreditor" $linenumber $filename &   # edit as required
}
set PrefSource(altEditor) external_editor

0 votos

¿No funcionó. ¿Tienes alguna documentación sobre esto?

0 votos

@Philippe - ¿Qué intentaste? ¿Cuál fue el mensaje de error?

0 votos

Intenté ejecutar el comando Tcl que Anon dio. No hubo mensajes de error, pero tampoco un editor predeterminado diferente. Sería genial ver alguna documentación sobre este "PrefSource" que Anon utiliza.

2voto

user596374 Puntos 243

La respuesta de Anon me ayudó a llegar a donde iba, pero pensé en añadir un ejemplo específico. Uso Arch Linux y GVim.

Esta línea solo necesita ejecutarse una vez. La ejecuté directamente en la terminal de Modelsim.

set PrefSource(altEditor) external_editor

Esta es la función real que utilicé

proc external_editor {nombrearchivo numerodelinea} {
    exec gvim +$numerodelinea $nombrearchivo &
}

Sin embargo, la función external_editor todavía necesita ser añadida a Modelsim. Como una variante, puedes simplemente ingresar la función en la terminal, pero yo creé un archivo modelsim.tcl dentro de mi directorio principal.

Allí enlacé al archivo external_editor.tcl en otro lugar.

source /opt/altera/15.1/modelsim_ase/tcl/custom_scripts/external_editor.tcl

Sospecho que hay varias formas de cargar permanentemente la función del editor externo, pero esto es lo que hice.

Como nota al margen, habría colocado esto como un comentario debajo de la respuesta de Anon, pero no tengo suficiente reputación ya que acabo de crear mi cuenta.

2voto

Drew Hall Puntos 15917

Hay dos opciones que puedes usar:

  • PrefSource(altEditor): esto reemplaza el editor interno al hacer doble clic, etc., es decir, cuando normalmente se mostraría el editor interno.
  • PrefMain(Editor): esto establece el editor externo que se puede lanzar desde algunos menús. No admite el argumento linenumber por lo que yo sé.

Para mi configuración seguí estos pasos (para eventualmente lanzar geany como editor):

  1. Para que questasim cargue un archivo de configuración separado al iniciar, establece la variable de entorno MODELSIM_TCL para que apunte a la ruta del archivo respectivo, por ejemplo:

    export MODELSIM_TCL="$HOME/.mentor/perf.tcl"

    Alternativamente, puedes simplemente colocar lo siguiente en ~/modelsim.tcl por lo que yo sé.

  2. Agrega esto al archivo de configuración:

    # Lanzar comando personalizado como editor externo:
    proc external_editor {filename} {
      exec geany "$filename" &
    }
    set PrefMain(Editor) external_editor
    
    # Reemplazar el editor interno:
    proc external_editor_ln {filename linenumber} {
     exec geany "$filename:$linenumber" &
     return
    }
    set PrefSource(altEditor) external_editor_ln
    
    # Arreglar visores por defecto
    set PrefMain(pdfViewer) xdg-open
    set PrefMain(htmlViewer) xdg-open

    Observa el retorno adicional en la declaración de external_editor_ln que impide que la función devuelva un valor, lo que crearía un mensaje de error # invalid command name "0" (donde 0 es el valor de retorno). Las dos últimas declaraciones son un "bonus" que, por ejemplo, solucionan el lanzamiento de la documentación si no tienes instalado acroread.

1voto

Zacky112 Puntos 1651

También es posible utilizar ModelSim en la línea de comandos

Crear proyecto usando vlib y vmap Compilar Verilog usando vlog Compilar VHDL usando vcom Ver simulación usando vsim durante la simulación: run step

Detalles en el Manual del Usuario:

https://www.cc.gatech.edu/~hadi/teaching/cs3220/doc/modelsim/ModelSim_Users_Manual_v10.1c.pdf

Tutorial útil:

http://www.tkt.cs.tut.fi/tools/public/tutorials/mentor/modelsim/getting_started/gsms.html

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X