Less.js: Source Maps n'a pas de mappage pour un crochet de fermeture

Créé le 1 mars 2020  ·  4Commentaires  ·  Source: less/less.js

Lorsque je génère une carte source pour le fichier suivant en utilisant la version 3.11.1

.example {
  display: grid;
  transition: all 0.5s;
  user-select: none;
  background: linear-gradient(to bottom, white, black);
}

<strong i="6">@color</strong>: "blue";

#my-div {
  color: @color;
}

avec la commande suivante dans un script de nœud

less.render(lessFileContents, { sourceMap: { sourceMapFileInline: false } })
  .then(function (output) {},

Ensuite, je regarde la carte source et je l'exécute dans l'outil https://sokra.github.io/source-map-visualization/#custom

{"version":3,"sources":["input"],"names":[],"mappings":"AAAA;EACE,aAAA;EACA,oBAAA;EACA,iBAAA;EACA,YAAY,wCAAZ;;AAKF;EACE,OAHM,MAGN"}

Vous pouvez voir la ligne vide entre ces deux mappages wCAAZ;;AAKF où le mappage pour le } devrait être. Cela devient et problème lorsque vous créez une carte source où cette carte générée est une étape intermédiaire que vous utilisez pour revenir au fichier Less d'origine.

En guise de mise à jour, j'ai essayé Stylus et node-sass et ils n'ont tous pas de mappage pour les crochets fermants dans le fichier généré vers les fichiers d'origine. Est-ce juste une limitation des pré-processeurs en général ?

stale

Commentaire le plus utile

Je voulais juste dire que Less est génial

Tous les 4 commentaires

La réponse simple est que Less (actuellement) a un analyseur très simple qui ne suit que le début de la source et non la fin de la source, principalement parce qu'il a été créé avant que les cartes source ne soient un concept.

J'ai réécrit un analyseur Less à partir de zéro en utilisant Chevrotain pour l'utiliser pour 4.x, et j'ai effectué une quantité importante de travail dessus, mais sans soutien financier (à la Open Collective ), je ne peux vraiment travailler que dessus en temps libre limité. J'ai toujours l'intention de le faire, mais cela peut prendre un certain temps.

cela a beaucoup de sens, merci pour la réponse rapide. Je contribuerai au collectif ouvert vendredi. Je suis enthousiasmé par le nouvel analyseur maintenant que je sais qu'il arrivera dans le futur. Je me suis inscrit en tant que contributeur mensuel et j'ai fait une annonce sur la chaîne Meteor Slack et sur LinkedIn. Je continuerai d'essayer de recueillir du soutien pour LESS et d'aller de l'avant. C'est l'un de mes projets préférés

Je voulais juste dire que Less est génial

Ce problème a été automatiquement marqué comme obsolète car il n'a pas eu d'activité récente. Il sera fermé si aucune autre activité ne se produit. Merci pour vos contributions.

Cette page vous a été utile?
0 / 5 - 0 notes