2012-10-15 12 views
5

Ben JSDoc ile JavaScript dosyası belgelemek için çalışıyorum (3) şöyle: (config.js.in denir)JSDoc - ayrıştırılmamak için bazı kodları işaretleyin, ancak belgeleri saklayın?

Şimdi
/** 1 if gnome-bluetooth is available, 0 otherwise        
* @type {boolean}                
* @const                                   
*/                    
const HAVE_BLUETOOTH = @[email protected];          

dosyanın kendi geçerli Javascript'i değildir; Dosya, @[email protected] için uygun bir değer yerine geçen Makefile'den geçiyor.

Bu konuda JSdoc çalıştırmayı denediğinizde, bu (anlaşılır) çünkü dosyada sözdizimi hatası balks.

bu dosyada tüm kodu görmezden ama sadece ek açıklamalar dikkate almak JSDoc anlatmak için bir yol var mı? (Tamamen kodundan belgelere ayırmak için her doclet için @name etiket eklemek gerekebilir; bu iyi). gibi

şey: (Ben varolan projeye belgelerine ekleyerek ediyorum) mümkünse

/** 1 if gnome-bluetooth is available, 0 otherwise        
* @name HAVE_BLUETOOTH 
* @type {boolean}                
* @const                 
*/      
/** @ignore */ // somehow ignore from here onwards 
const HAVE_BLUETOOTH = @[email protected]; 
/** [email protected] */ // somehow don't ignore from here onwards (although I'd be happy 
       // to ignore the entire file) 

Ben, dosyanın kod parçasını değiştirmek yapmamayı tercih ediyorum. Örneğin, muhtemelen ile etrafında alabilir

const HAVE_BLUETOOTH = parseInt('@[email protected]', 10); 
dosyayı yapmak ayrıştırıcı şikayet etmeyecek şekilde tekrar geçerli JS sözdizimi var, ama bu aynı zamanda orijinal dosyanın kodunu değiştirme anlamına geliyor ediyorum

hangi I (ben sadece belgelerine eklemek tercih) kaçınmak istiyorum.

şerefe

+1

Bir geçici çözüm buldunuz mu? Eğer küçültmek önce jsdoc, bir ara, derlenmiş sürümünde vb her şeyi çalıştırılır, böylece –

+0

Eğer boru hattı değiştirilemiyor? Eğer değilse, daha az kesintiye kod kesmek const HAVE_BLUETOOTH = + olduğu, '' HAVE_BLUETHOOTH @'; – lemonzi

cevap

0

benim .less ve .css dosyayı yorum yapmak JSDoc kullandıkları için Davam benzerdir. JSDoc'u dosya setinde çalıştırdığımda, aynı sorunu yaşıyorum. ile

{ 
    "source": { 
     "includePattern": ".+\\.(css|less)?$" 
    }, 
    "plugins": [ 
     "plugin/commentsOnly" 
    ] 
} 

:

Yani, ben bu config.json oluşturmak zorunda

commentsOnly JSDoc eklenti ile (JSDoc 3.3.3 ile) benim sorunu çözmek bir plugin/ dizine commentsOnly.js dosyası (düşününve config.json aynı klasörde) ve aşağıdaki CLI komutu çalıştırın bu klasörde:

jsdoc -c ./config.json ./assets/stylesheets/common.less 

Ve iştir! Bunun dosyalarınızla çalışmadığı bir sebep yok.

Umarım yardımcı olurum;)