Domanda

Mi chiedo se c'è un modo per i file *.less precompilazione ( http://www.dotlesscss.org/) con visual Studio.

Il sito mi dà una dotless.compiler.exe ma non sono sicuro di come collegare questo fino a Visual Studio. Sto cercando una soluzione per entrambi Webforms e ASP.NET MVC.

È stato utile?

Soluzione

A seconda dell'ambiente di compilazione, è possibile dare il via dotless.Compiler.exe come un compito di costruzione.

Per esempio, utilizzando un compito pre-compilazione in Visual Studio (tutti 1 riga):

$(SolutionDir)Tools\dotLess\dotless.compiler.exe -m 
    $(ProjectDir)content\css\site.less $(ProjectDir)content\css\site.css

Le macro ($(SolutionDir), ecc) permettono un po 'di flessibilità per progetto e file di posizioni. Invece di utilizzare i file .less standard, è sufficiente fare riferimento ai nuovi file .css nel markup.

Altri suggerimenti

Tutti,

Dopo aver usato quasi tutte le alternative discusse qui e di non essere soddisfatto, ho scritto un compilatore Addin LessCss per Visual Studio. Prende i file .less e genera file css solo quando il file .less cambia. Esso utilizza la più recente e più grande less.js compilatore.

Guardalo in uso qui .

scaricare l'estensione firmato.

sorgente è qui.

Ho appena lo ha presentato alla galleria di estensione VS. Speriamo che sia lassù presto, ma nel frattempo si prega di installare (o compilare quindi installare) e check it out.

Phil Haack in soccorso: http : //haacked.com/archive/2009/12/02/t4-template-for-less-css.aspx

Ogni volta che si vuole avere qualcosa generato nella soluzione in fase di compilazione, T4 di solito è la strada da percorrere ...

Ecco la soluzione mi è venuta, utilizzando MSBuild. E 'incrementale, così dovrebbe avvenire solo quando il minore cambia. Inoltre gestisce correttamente @import.

In primo luogo, aggiungere errati privi di punti per il vostro progetto con NuGet. Non è necessario alcun della magia si aggiunge alla vostra web.config, in modo da poter ripristinare quella -. Si sta solo usando per ottenere l'eseguibile compilatore

Quindi, aggiungere i file "root" di meno per la vostra .csproj, in questo modo:

<ItemGroup>
    <LessCssRootInput Include="example.less" />
</ItemGroup>

Infine, aggiungere questo frammento nella parte inferiore della vostra .csproj:

<ItemGroup>
    <LessCssSubInput Include="**\*.less" Exclude="@(LessCssRootInput)" />
    <LessCssOutput Include="@(LessCssRootInput -> '%(RelativeDir)\%(Filename).css')" />
</ItemGroup>
<Target Name="CompileLessCss" BeforeTargets="Compile" Inputs="@(LessCssRootInput);@(LessCssSubInput)" Outputs="@(LessCssOutput)">
    <Exec Command="&quot;$(SolutionDir)\packages\dotless.1.3.1.0\tool\dotless.compiler.exe&quot; --minify --keep-first-comment @(LessCssRootInput)" />
</Target>

C'è anche un altro modo per precompilare durante lo sviluppo.

Il progetto errati privi di punti dispone di un compilatore a riga di comando (dotless.Compiler.exe) in grado di compilare e minify il CSS.

È anche possibile utilizzare il compiler.exe con il parametro --watch dove sarà continuare a correre e la scansione del file di input per le modifiche, la rigenerazione ogni volta che si apportano modifiche al file. Così facendo si indipendente da Visual Studio.

Nella mia ricerca di lavoro con errati privi di punti ho trovato anche questa biblioteca:

http: / /www.codethinked.com/post/2010/03/17/Bundler-Now-Supports-Css-And-less.aspx

L'aggiunta alla mia domanda proprio perché potrebbe aiutare gli altri.

Si consiglia di dare un'occhiata a Chirpy . Ha molto di più di un semplice supporto MENO. Vorrei che avrei trovato prima di scrivere il mio.

A proposito del quale ho anche scritto un Visual Build Studio Personalizzato strumenti per l'esecuzione utilizzando il file JS (al posto della porta NET) si può dare un'occhiata alla fonte qui: https://github.com/paultyng/JsBuildTools

In alternativa è anche sulla galleria estensioni sotto JsBuildTools .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top