عن المشروع

telescope.nvim هو أداة بحث ضبابي قابلة للتوسعة بدرجة كبيرة على القوائم، مبنية على الميزات الأساسية لـ Neovim ومكتوبة بلغة Lua. يركز على النمطية، مما يسمح بالتخصيص إما عالميًا عبر setup() أو لكل منتقٍ عبر الخيارات الممررة إلى الدوال المدمجة. تشمل المتطلبات Neovim مع LuaJIT و plenary.nvim. التبعيات الموصى بها هي ripgrep (مطلوب لـ live_grep و grep_string)، و fd، و nvim-web-devicons للأيقونات. يُقترح استخدام فرازات أصلية مثل telescope-fzf-native.nvim أو telescope-fzy-native.nvim لتحسين أداء الفرز. يتم التثبيت عادةً عن طريق تثبيت علامة إصدار، على سبيل المثال باستخدام lazy.nvim، ويُنصح المستخدمون بتشغيل :checkhealth telescope بعد الإعداد. يوفر المكوّن الإضافي مجموعة كبيرة من المنتقيات المدمجة. تشمل منتقيات الملفات find_files و git_files و grep_string و live_grep. تغطي منتقيات Vim المخازن المؤقتة، والملفات القديمة، والأوامر، والوسوم، وسجل الأوامر، وسجل البحث، ووسوم المساعدة، وصفحات الرجل، والعلامات، ونظام الألوان، وقائمة الإصلاح السريع، وقائمة المواقع، وقائمة القفزات، وخيارات Vim، والسجلات، والأوامر التلقائية، واقتراحات التهجئة، وخرائط المفاتيح، وأنواع الملفات، والتمييز، والبحث الضبابي في المخزن الحالي، ووسوم المخزن الحالي، والاستئناف، والمنتقيات. تشمل منتقيات LSP الخاصة بـ Neovim lsp_references و lsp_incoming_calls و lsp_outgoing_calls و lsp_document_symbols و lsp_workspace_symbols و lsp_dynamic_workspace_symbols و diagnostics و lsp_implementations و lsp_definitions و lsp_type_definitions. تشمل منتقيات Git git_commits و git_bcommits و git_bcommits_range و git_branches و git_status و git_stash. يوجد أيضًا منتقٍ لـ treesitter ومنتقيات قوائم مثل planets و builtin و reloader و symbols. يتم توفير عارضات للملفات ونتائج grep وقوائم الإصلاح السريع، مع متغيرات vim_buffer_ التي تستخدم مخازن Neovim وتمييز tree-sitter أو regex، ومتغيرات طرفية تستخدم cat أو bat. تستخدم العارضات الافتراضية vim.filetype لتخمين أنواع الملفات عن طريق فحص اسم الملف وسطر الشيبانج وسطر النموذج. يسمح حدث TelescopePreviewerLoaded بتكوين نافذة المعاينة حسب نوع الملف. الفرازات والتخطيطات والسمات قابلة للتكوين، والاختصارات قابلة للتخصيص بالكامل مع مجموعة افتراضية موثقة تغطي التنقل والاختيار وفتح الملفات في نوافذ منقسمة أو علامات تبويب وتمرير المعاينات وتبديل التحديد المتعدد وإرسال النتائج إلى قائمة الإصلاح السريع وإدراج كلمات من النافذة الأصلية في الموجه. يمكن إعادة تعيين الإجراءات أو إنشاء إجراءات مخصصة عبر transform_mod. يتم دعم الامتدادات من خلال جدول تكوين مخصص، ويحتفظ المشروع بويكي يحتوي على عروض ووصفات تكوين ومعلومات عن الامتدادات.