خيارات المترجم في TypeScript

من موسوعة حسوب

يوضح الجدول التالي جميع الخيارات التي يمكن استعمالها مع مترجم TypeScript للتحكم بسير عمله والتعديل على سلوكه أثناء ترجمة الشيفرات.

الخيار النوع القيمة الافتراضية الوصف
--allowJs boolean false السماح بترجمة ملفّات JavaScript.
--allowSyntheticDefaultImports boolean module === "system" ‎ أو أنّ الخيار ‎--esModuleInterop‎ مضبوط وقيمة ‎module‎ ليست ‎es2015‎ أو ‎esnext السماح للاستيرادات الافتراضية من الوحدات التي لا تحتوي على تصديرات افتراضيّة. هذا لا يؤثر على الشيفرة المولَّدة، ويؤثر فقط على آلية التحقق من الأنواع.
--allowUnreachableCode boolean false لا تُخبِر عن الأخطاء على الشيفرة التي لا يمكن الوصول إليها.
--allowUnusedLabels boolean false لا تُخبِر عن الأخطاء على اللافتات (labels) غير المُستخدَمة.
--alwaysStrict boolean false تفسير الشيفرة في الوضع الصارم وتوليد ‎"use strict"‎‎ لكل ملفّ مصدري.
--baseUrl string المجلّد الأساس لتقرير أسماء الوحدات غير النسبيّة. انظر توثيق تقرير الوحدات للاستزادة.
--build

‎-b‎

boolean false يَبني هذا المشروعَ وجميعَ اعتمادياته التي تُحدَّد عبر مراجع المشروع، لاحظ أن هذا الخيار ليس متوافقًا مع الخيارات الأخرى في هذه الصفحة. انظر توثيق مراجع المشروع للاستزادة.
--charset string "utf8" مجموعة محارف (character set) الملفّات المُخرجَة.
--checkJs boolean false الإخبار بالأخطاء في ملفّات ‎.js‎. استعمله مع الخيار ‎.--allowJs
--declaration

-d

boolean false توليد ملفّ ‎.d.ts‎ المناسب.
--declarationDir string مجلّد الإخراج (Output directory) لملفات التصريحات المُولَّدَة.
--declarationMap boolean false يُنشئُ خريطة مصدريّة (sourcemap) لكل ملفّ ‎.d.ts‎‎ مناسب.
--diagnostics boolean false اعرض معلوماتٍ تشخيصيّة.
--disableSizeLimit boolean false عطِّل تقييد الحجم (size limitation) على مشروع JavaScript.
--downlevelIteration boolean false وفِّر دعمًا كاملًا للكائنات القابلة للتكرار في كل من جمل ‎for..of‎، وعامل النشر والتفكيك عند استهداف النسخة ES5 أو ES3.
--emitBOM boolean false ولِّد علامة ترتيب البايتات (BOM) بالترميز UTF-8 في بداية الملفّات المُخرجَة.
--emitDeclarationOnly boolean false ولّد فقط ملفّات التصريحات ‎.d.ts‎.
--emitDecoratorMetadata‎ [1] boolean false ولِّد بيانات وصفيّة لنوع التصميم (design-type) للتصريحات المُزخرَفَة في الشيفرة المصدرية. انظر هذه الصفحة للمزيد من التفاصيل.
--esModuleInterop boolean false ولِّد المُساعدين ‎__importStar‎ و‎__importDefault‎ لتوافقية نظام babel وفعّل ‎--allowSyntheticDefaultImports‎ لتوافقية نظام الأنواع.
--experimentalDecorators‎ [1] boolean false فعّل الدعم التجريبي لميّزة مزخرفات ES.
--extendedDiagnostics boolean false أظهر معلوماتٍ تشخيصيّة مُفصَّلة.
--forceConsistentCasingInFileNames boolean false منع مراجع إلى نفس الملفّ بحالات أحرف مختلفة (inconsistently-cased).
--help

‎-h‎

اطبع رسالة المساعدة.
--importHelpers boolean false استورد مساعدات الإخراج (__extends، و__rest، وغيرهما) من ‎.tslib
--inlineSourceMap boolean false ولِّد نفس الملفّ مع خرائط مصدرية عوضًا عن توليد ملفّ منفصل.
--inlineSources boolean false ولِّد الشيفرة المصدرية بجانب الخرائط المصدرية في ملف واحد؛ يتطلب ضبط الخيار ‎--inlineSourceMap‎‎ أو الخيار --sourceMap‎‎.
--init يُهيّئُ مشروعَ TypeScript ويُنشئ ملفّ ‎tsconfig.json‎.
--isolatedModules boolean false ترجمة كل ملفٍّ على أنه وحدة منفصلة (مثل ‎ts.transpileModule‎)
--jsx string "Preserve" دعم ‎JSX‎ في ملفّات ‎.tsx‎: إما وضع ‎"React"‎ أو ‎"Preserve"‎. انظر توثيق JSX للاستزادة.‎
--jsxFactory string "React.createElement" تحديد دالّة JSX المولِّدة لاستعمالها عند إخراج JSX بأسلوب React، يُمكن أن تكون الدالةُ مثلًا الدالةَ ‎React.createElement‎ أو الدالةَ ‎h‎.
--keyofStringsOnly boolean false تقرير ‎keyof‎ إلى أسماء الخاصيات ذات السلاسل النصية فقط (وليس الأعداد أو الرموز).
--lib string[] ‎قائمة ملفات المكتبات التي ستُضمَّن أثناء الترجمة.

القيم الممكنة هي كالآتي:

ES5

ES6

ES2015

ES7

ES2016

ES2017

ES2018

ESNext

DOM

DOM.Iterable

WebWorker

ScriptHost

ES2015.Core

ES2015.Collection

ES2015.Generator

ES2015.Iterable

ES2015.Promise

ES2015.Proxy

ES2015.Reflect

ES2015.Symbol

ES2015.Symbol.WellKnown

ES2016.Array.Include

ES2017.object

ES2017.Intl

ES2017.SharedMemory

ES2017.String

ES2017.TypedArrays

ES2018.Intl

ES2018.Promise

ES2018.RegExp

ESNext.AsyncIterable

ESNext.Array

ESNext.Intl

ESNext.Symbol

ملاحظة: إذا لم يُحدَّد الخيار ‎--lib‎ فستُحقَن قائمةُ مكتباتٍ افتراضيّة. المكتبات الافتراضية التي ستُحقَن هي:

  • عند الخيار ‎--target ES5‎:

DOM,ES5,ScriptHost

  • وعند الخيار ‎--target ES6‎:

DOM,ES6,DOM.Iterable,ScriptHost

--listEmittedFiles boolean false طباعة أسماء الملفّات التي ستُولَّدها الترجمة.
--listFiles boolean false طباعة أسماء الملفات التي ستُترجَم.
--locale string ‎(حسب منصة المبرمج [نظام التشغيل مثلًا]) المحليّة التي ستُستَخدَم لعرض رسائل الخطأ.

القيم الممكنة هي:

  • الإنجليزية (الولايات المتحدة): en
  • التشيكية: cs
  • الألمانية: de
  • الإسبانية: es
  • الفرنسية: fr
  • الإيطالية: it
  • اليابانية: ja
  • الكورية: ko
  • البولندية: pl
  • البرتغالية (البرازيل): pt-BR
  • الروسية: ru
  • التركية: tr
  • الصينية المبسطة: zh-CN
  • الصينية التقليدية: zh-TW
--mapRoot string يحدّد المكان الذي يجب فيه على مصحح الأخطاء أن يبحث عن مكان ملفات الخرائط (map files) بدلاً من الأماكن المولَّدَة. استخدم هذا الخيار إذا كانت ملفات ‎.map‎ موجودة في زمن التنفيذ في مكان مختلف عن ملفات ‎.js‎. سيُضمَّن المكان المحدَّد في الخريطة المصدريّة لتوجيه مصحح الأخطاء إلى مكان ملفات الخرائط.
--maxNodeModuleJsDepth number 0 تحديد عمق الاعتماديات الأقصى للبحث تحت مجلّد ‎node_modules‎ وتحميل ملفات JavaScript. يُطبَّق فقط مع الخيار ‎--allowJs‎.
--module

-m

string target === "ES3" or "ES5" ? "CommonJS" : "ES6" حدد توليد شيفرة الوحدة: "None" أو "CommonJS" أو "AMD" أو "System" أو "UMD" أو "ES6" أو "ES2015" أو "ESNext".
  • يمكن استخدام "AMD" و "System" فقط بالتزامن مع ‎--outFile.
  • قد تُستخدَم قيم "ES6" و "ES2015" عند استهداف النسخة "ES5" أو ما قبلها.
--moduleResolution string module === "AMD" or "System" or "ES6" ? "Classic" : "Node" تحديد آلية تقرير الوحدات. إمّا آلية "Node" لنمط Node.js أو io.js. أو آلية "Classic". انظر توثيق تقرير الوحدات للاستزادة.
--newLine string ‎(حسب المنصة) تحديد سلسلة نهاية السطر (end of line sequence) التي ستُستَخدَم عند إخراج الملفّات: ‎"crlf"‎ (منصة windows) أو "lf" (منصة unix).
--noEmit boolean false لا تُخرِج أي مُخرجات.
--noEmitHelpers boolean false لا تُولِّد دوال مساعدةً مخصّصة مثل ‎__extends‎ في المُخرَج المُترجَم.
--noEmitOnError boolean false لا تُخرِج أي مخرجات إن أُبلِغَ عن أي أخطاء.
--noErrorTruncation boolean false لا تقطِّع رسائل الخطأ.
--noFallthroughCasesInSwitch boolean false أبلِغ عن الأخطاء في حالات السقوط (fallthrough) في جمل switch.
--noImplicitAny boolean false أبلغ عن خطأ في التعبيرات والتصريحات التي تعتمد على نوعِ any ضمني.
--noImplicitReturns boolean false أبلغ عن خطأ عندما لا تُعيد جميع مسارات الشيفرة (code paths) في الدالة أية قيمة.
--noImplicitThis boolean false أبلغ عن خطأ في تعبيرات ‎this‎ ذات نوع ‎any‎ ضمني.
--noImplicitUseStrict boolean false لا تولِّد تعليمات ‎"use strict"‎ في مُخرج الوحدة.
--noLib boolean false لا تُضمِّن ملفّ المكتبة الافتراضية (‎lib.d.ts‎).
--noResolve boolean false لا تُضِف مراجع الشرطات المائلة الثلاث (triple-slash references) أو أهداف استيراد الوحدات (module import targets) إلى قائمة الملفات المترجمة.
--noStrictGenericChecks boolean false عطِّل التحقق الصارم (strict checking) من التواقيع المُعمَّمة (generic signatures) في أنواع الدوال.
--noUnusedLocals boolean false الإبلاغ عن الأخطاء على الكائنات المحليّة غير المستخدمة.
--noUnusedParameters boolean false الإبلاغ عن الأخطاء على المعاملات غير المستخدمة.
--out string هذا الخيار مُهمَل، استخدم الخيار ‎--outFile‎ عوضًا عنه.‎
--outDir string إعادة توجيه بنية الإخراج إلى المجلّد المُحدَّد.
--outFile string تجميع وإخراج المُخرَجات إلى ملف واحد. يُحدَّد ترتيب التجميع عبر قائمة الملفّات المُمرَّرةِ إلى المترجم على سطر الأوامر وعبر مراجع الشرطات الثلاث والاستيرادات.
paths‎ [2] Object قائمة تخطيطات مسارات (path mapping entries) تربط بين أسماء الوحدات وأماكنها نسبةً إلى قيمة ‎baseUrl‎. انظر توثيق تقرير الوحدات للاستزادة.
--preserveConstEnums boolean false لا تحذف تصريحات ‎_‎ في الشيفرة المُولَّدَة. انظر هذه الصفحة للاستزادة.
--preserveSymlinks boolean false لا تُقرِّر روابط الوصلات الرمزية (symlink) إلى مساراتها الفعليّة؛ عالِج ملفّ symlink على أنّه ملفّ حقيقيّ.
--preserveWatchOutput boolean false أبقِ على مخرجات الطرفية القديمة في وضع المراقبة (watch mode) عوضًا عن مسح الشاشة.
--pretty boolean true‎ إلّا في حالة استعمال أنبوب (piping) يشير إلى برنامج آخر أو في حالة إ عادة توجيه المخرجات إلى ملفٍّ. تنسيق الأخطاء والرسائل باستخدام الألوان والسياق.
--project

-p

string ترجمة مشروعٍ مع تمرير ملفّ إعداداتٍ صالح. يمكن للمعامل أن يكون مسار ملفّ يشير إلى ملفّ إعدادات JSON صالح، أو إلى مجلّد يحتوي على ملفّ ‎tsconfig.json‎. انظر توثيف الملفّ ‎tsconfig.json للاستزادة.
--reactNamespace string‎JSX "React" خيار مهمل. استعمل الخيار ‎--jsxFactory‎ عوضًا عنه.

يُحدِّد الكائن الذي سيُستدعى من أجل ‎createElement‎ و‎__spread‎ عند إخراج ملفّات ‎JSX‎ في وضع ‎"react"‎.

--removeComments boolean false حذف جميع التعليقات إلا تعليقات ترويسات الحقوق التي تبتدئ بالمقطع ‎/*!‎.
--resolveJsonModule boolean false تضمين الوحدات التي تُستورَد بامتداد ‎.json‎.
--rootDir string ‎(يُستنتَج المجلّد الجذر المشترك من قائمة الملفات المُدخلَة) يُحدِّد المجلّد الجذر لملفات للملفّات المدخلَة. استعمله فقط للتحكم بهيكل المُجلّد المُخرَج مع ‎--outDir‎.
rootDirs‎[2] string[] قائمة المجلدات الجذر التي سيُمثِّل مُحتواها المُدمَج هيكل المشروع أثناء التنفيذ. انظر توثيق تقرير الوحدات للاستزادة.
--skipDefaultLibCheck boolean false خيار مُهمَل. استعمل الخيار ‎--skipLibCheck‎ عوضًا عنه.

تخطَّ التحقق من أنواع ملفات تصريحات المكتبة الافتراضية. انظر هذه الصفحة للاستزادة.

--skipLibCheck boolean false تجاهل التحقق من أنواع جميع ملفّات التصريحات (‎*.d.ts‎).
--sourceMap boolean false يُولِّد ملفّ ‎.map‎ المناسب.
--sourceRoot string يحدد المكان حيث يجب على مصحح الأخطاء العثور على ملفات TypeScript بدلاً من أماكن المصدر (source locations). استخدم هذا الخيار إذا كانت المصادر موجودة أثناء التنفيذ في مكان مختلف عن مكانها وقت التصميم (design-time). سيُضمَّن المكان المعطى في خريطة المصدر (sourceMap) لتوجيه مصحح الأخطاء إلى مكان الملفات المصدرية.
--strict boolean false تفعيل جميع خيارات التحقق من الأنواع بصرامة.

تفعيل ‎--strict‎ سيُفعّل الخيارات التالية:

  • --noImplicitAny
  • --noImplicitThis
  • --alwaysStrict
  • --strictNullChecks
  • --strictFunctionTypes
  • --strictPropertyInitialization
--strictFunctionTypes boolean false تعطيل التحقق من المعاملات ثنائية التغير (bivariant parameter) في أنواع الدوال.
--strictPropertyInitialization boolean false تأكد من أنّ خاصيات الأصناف التي لا تحمل القيمة ‎undefined‎ مُهيّأة في الدالة البانية. هذا الخيار يتطلب تفعيل الخيار ‎--strictNullChecks‎ كذلك.
--strictNullChecks boolean false في وضع التحقق الصارم من القيمة ‎null‎، لا تكون القيمتان ‎undefined‎ و‎null‎ في نطاق كل الأنواع الأخرى، ويمكن تعيينها فقط إلى نفسها وإلى ‎any‎ (باستثناء أنّ ‎undefined‎ قابل للتعيين للنوع ‎void‎ كذلك).
--stripInternal‎[1] boolean false لا تُولِّد تصريحاتٍ للشيفرة التي تحتوي على التعليق ‎/** @internal */‎ (الذي يمثّل حاشية خاصّة في نظام JSDoc).
--suppressExcessPropertyErrors boolean false قمع تدقيقات الخاصية الزائدة (excess property checks) لقيم الكائنات الحرفية (object literals).
--suppressImplicitAnyIndexErrors boolean false قمع أخطاء ‎_‎ لفهرسة الكائنات التي لا تملك تواقيع فهارس. انظر هذه الصفحة للاستزادة.
--target

-t

string "ES3" تحديد نسخة ECMAScript الهدف:
  • "ES3"‎ (النسخة الافتراضية)
  • "ES5"
  • "ES6"‎ أو ‎"ES2015"
  • "ES2016"
  • "ES2017"
  • "ESNext"
--traceResolution boolean false الإبلاغ عن رسائل التسجيل (log messages) الخاصة بتقرير الوحدات (module resolution).
--types string[] ‎قائمة أسماء تعريفات الأنواع المرغوب تضمينها، انظر قسم ‎@types‎، و‎typeRoots‎، و‎types للاستزادة.
--typeRoots string[] ‎قائمة المجلّدات التي تحتوي على تعريفات الأنواع المرغوب تضمينها، انظر قسم ‎@types‎، و‎typeRoots‎، و‎types للاستزادة.
--version

-v

طباعة نسخة المترجم.
--watch

-w

‎‎ تشغيل المترجم في وضع المراقبة. مشاهدة الملفّات المدخلَة وإعادة ترجمتها عندما تتغيّر محتوياتها. يمكن ضبط إعدادات مشاهدة الملفات والمجلدات باستخدام متغير بيئةٍ (environment variable). انظر ضبط وضع المراقبة لمزيد من التفاصيل.
  • [1] هذه الخيارات تجريبيّة.
  • [2] هذه الخيارات مسموح بها فقط في ملفّ ‎tsconfig.json‎، وليس عبر سطر الأوامر.

انظر أيضًا

مصادر