formularios fields avanzados django django-templates komodo komodoedit

fields - Komodo Edit 5.2 Error de sintaxis de la plantilla Django-Información:<head> mencionada anteriormente



modelform django (5)

Siempre desactivo la comprobación de errores de HTML cuando edito plantillas de Django, ya que no son HTML totalmente válidos, como bien podría haberse dado cuenta. No estoy seguro de si esto se puede hacer para Komodo Edit, pero sé que se puede hacer para Komodo IDE, por lo que se podría suponer que son similares a este respecto. De todos modos, me temo que la solución es un poco molesta; necesitarás deshabilitarlo para cada archivo que edites (no sé cómo hacer esto globalmente) ...

No estoy en mi PC de trabajo en este momento, pero si la memoria me sirve, hay un icono en la parte inferior del marco de la ventana que puede hacer clic derecho para editar las propiedades. Enterrado allí debe haber una opción para deshabilitar la comprobación de la sintaxis HTML.

Si no puede encontrar la opción, hágamelo saber e intentaré llenar los vacíos.

Estoy usando Komodo Edit 5.2 para editar html y archivos de plantilla de Django. Siempre muestra un solo error de sintaxis dentro del primer área {% block%} en la primera etiqueta de mi plantilla.

Por ejemplo:

{% extends "base.html" %} {% load i18n %} {% block title %}Hello{% endblock %} {% block content %} <p>Hello</p> <-- Syntax error on this single line <p>Other lines have no errors</p> {% endblock %} {% block footer %} <p>No errors here</p> {% endblock %}

El error de sintaxis dado es:

Info: <head> previously mentioned

Sé a ciencia cierta que el error no tiene nada que ver con mi etiqueta <head> ya que aparece en la plantilla base y en las plantillas secundarias (y el IDE no es lo suficientemente inteligente como para procesar las plantillas base cuando está en un elemento secundario, etc. ) Todas mis etiquetas html se cierran correctamente y todo valida para XHTML estricto.

Esta publicación del foro menciona un problema similar pero no ofrece ninguna solución (y puede ser específico del resaltado de sintaxis Smarty).

¿Alguna idea sobre cómo resolver este error (o desactivarlo para que no se muestre)?


Si trabaja predominantemente en proyectos de Django, puede cambiar el manejo predeterminado de archivos * .html de Komodo editando Preferencias> Asociaciones de archivos y cambiando la asociación de * .html a "Django" (por ejemplo, como suele ser para * .django .html). Esto le ahorrará tener que cambiar el nombre de todos sus archivos de plantilla.

Para deshacerse de la línea roja ondulada, utilizo un archivo de configuración Tidy personalizado, que se puede especificar en Preferencias> Idiomas> HTML en el selector de archivo de configuración. El contenido de este archivo es simple:

show-warnings: n

Es un poco complicado, ya que también suprimirá las advertencias HTML legítimas. Hasta que Komodo / Tidy apoye nativamente las etiquetas de plantilla de Django, sin embargo, me funciona.


Si está buscando una forma de ocultar las líneas onduladas, en lugar de manipular la configuración HTML Tidy, intente lo siguiente. En Preferencias> Fuentes y colores, seleccione la pestaña ''Indicadores''. En el selector de indicadores hay una entrada llamada ''Error de Linter''. Asigne el estilo ''oculto'' a él, y las líneas onduladas estarán ocultas. La línea de estado todavía mostrará la información del linter. Esto se prueba en Komodo Edit 5.2.4 en Linux.


Al igual que con el cambio de nombre de sus archivos de plantillas a * .django.html y el uso de vistas genéricas, es posible que se encuentre con excepciones de TemplateDoesNotExist, ya que django solo busca * _list.html y, por lo que a mí respecta.

editar: Además, al cambiar el nombre de todas las plantillas, no olviden cambiar el nombre de {% extends *.html %} a {% extends *.django.html %} adecuada.


Sí, esto puede solucionarse, pero es un método bastante feo.

Debo señalar que este es un error que está en el rastreador # 77251 ( edítelo : esto está solucionado en Komodo 6.1.0). Podrías mirar ese error para encontrar cuando realmente se arregla.

En cuanto a detener las líneas rojas onduladas, puede hacerlo editando el archivo de lenguaje python para el HTML de plantilla de Django manualmente. El archivo que desea editar es koDjango_URL_Language.py y se puede encontrar en ..ActiveState Komodo Edit 5/lib/mozilla/extensions/[email protected]/components .

Agregue el siguiente método de anulación a la class KoDjangoLanguage :

def get_linter(self): return None

Tenga en cuenta que esto supone que está guardando sus archivos de plantilla de django como .django.html (que en una nota lateral si no lo ha hecho, al hacerlo proporciona una coloración de sintaxis de plantilla-etiqueta, que es bastante agradable). Después de editar el archivo, guardar y volver a cargar Komodo, el problema debería desaparecer.

Por lo que entiendo, este archivo debe ser reeditado cada vez que actualice versiones de Komodo también. Con suerte veremos más temprano que tarde todo este problema arreglado y mejor soporte para Django en los IDE favoritos de todos.