اذهب إلى المحتوى

السؤال

نشر

عندما أستخدم TypeScript مع أي مكتبات يتجاوب محرر VS Code بالكود بشكل فعال جدا. يعطي ال hints عند استخدام المتغيرات أو عند وضع نقطة يظهر جميع مكونات ال class. وحتى عند كتابة اسم أي function أو class أو متغير حتى ولو لم يكن له import في الملف يظهر مكانه ويعمل له import اوتوماتوكيا.

في python كان هنالك pylint و black لتسهيل عملية ال hinting و ال linting و ال formating. وقد ظهر حديثا شيء مثل ال Ruff شيء جميل جدا. لكن ال hinting لا يشتغل كما هو مع ال TypeScript. أعني مثلا عند كتابة اسم class معين... مثلا عند django أذا كتبنا دالة path من غير ان يكون معمول لي import لا يظهر المحرر مكانه ك hint. يضطر المبرمج أن يدخله يدويا،

أعرف أن الأدوات مثل Ruff أو pylint يتيح مثلا أذا عملنا ctrl + . يظهر hint أن يدخل الدالة اوتوماتيكيا.

لكن مقارنة لل TypeScript لا يعجبني الأمر. وحتى في typeScript عندنا شيء مثل alias ليسهل عملية ال import مثلا باستخدام @/auth/login 

أما في python لم أجد هذه المرونة. وكمبرمج كسول لا أتقبل هذا.

إذن ما هو ما هو أفضل حل لكي يتجاوب المحرر VS Code ويعطي ال hints لل python applications؟

 

Recommended Posts

  • 0
نشر

ستحتاج إلى إضافة Pylance لتوفير ميزات متقدمة فيما يخص Python IntelliSense في vscode، مع إضافة التالي إلى الإعدادات، اضغط على F1 ثم ابحث عن settings json وأضف التالي لنهاية كائن الإعدادات:

  "python.analysis.autoImportCompletions": true,
  "python.analysis.indexing": true

أيضًا تأكد من أنّ pylance هو سيرفر بايثون لديك بالضغط على CTRL + . في vscode ثم ابحث عن python language server واختر pylance.

  • 0
نشر

توجد حاليا إضافة Pylance وهي الأفضل حاليا و الأحدث من  pylint  لذلك يرجى تحميلها :

image.png.bf1b12095c256fda2725f1d90fbc6e4f.png

بعد ذلك يرجى الضغط على CTRL + SHIFT + P وكتابة settings وإختيار التالي :

image.png.d511d6acbcc6e2049499683ef228ae39.png

بعد ذلك يرجى تفعيل pylance والخصائص التي توفرها من خلال كتابة الإعدادات التالية :

"python.languageServer": "Pylance",
  "python.analysis.indexing": true,
    "python.analysis.autoImportCompletions": true,

بعد ذلك قم بحفظ الملف وإعادة تشغيل vs code .

ولكن من الممكن أن لا توفر جميع الخصائص التي تحتاجها ولذلك توجد إضافة أخرى تسمي Django و django-intellisense يرجى تحميلهم وسيوفران لك snippet وهي إختصارات فمثلا إذا أردت إستيراد path ستظهر لك هكذا :

image.png.0c9c1bc26c766c976000804c449df4b4.png

ولكن بالطبع من الصعب أن تجد إضافات قوية مثل TypeScript حيث تعتمد الإضافات على حجم المجتمع ولذلك تجد إضافات js و ts من أقوي الإضافات الموجودة .

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...