سؤال

أنا أبحث عن أداة سطر أوامر مفتوحة المصدر ومتعددة الأنظمة الأساسية (Windows وLinux على الأقل) لأخذ بعض التعليمات البرمجية (C++، لكن اللغات المتعددة ستكون رائعة)، وإخراج تمثيل XHTML صالح لهذا الرمز، مع تسليط الضوء على بناء الجملة متضمنة.

من الناحية المثالية، يجب أن يغلف XHTML الكود فقط <span> و <div> علامات ذات فئات مختلفة حتى أتمكن من توفير رمز CSS وتغيير اللون، ولكن هذه إضافة اختيارية.

هل يعرف أحد مثل هذا التطبيق؟

هل كانت مفيدة؟

المحلول

يمكنني أن أوصي أصباغ.من السهل العمل مع العديد من اللغات ويدعمها.إنه يفعل ما تريد، أي أنه يغلف الكود بداخله <span> العلامات:

from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

code = 'print "Hello World"'
print highlight(code, PythonLexer(), HtmlFormatter())

يعطي

<div class="highlight">
<pre><span class="k">print</span> <span class="s">&quot;Hello World&quot;</span></pre>
</div>

ويمكنك بعد ذلك استخدام إحدى أوراق الأنماط المتوفرة لتصنعها بنفسك.

يمكنك أيضًا الاتصال به عبره pygmentize النصي.يمكن للبرنامج النصي تنسيق الإخراج بطرق مختلفة:HTML، LaTeX، ANSI مخرجات طرفية ملونة.

نصائح أخرى

همة يمكنه حفظ أي كود يبرزه في HTML "الملون" (يتم تشغيله على عدة منصات).هنالك تسليط الضوء على جنو أيضاً.وأطنان من الآخرين.

هناك فكرة جيدة جدًا، مدفوعة بـ XML، سريعة ومفتوحة المصدر: http://sourceforge.net/projects/colorer/

لا أذكر إذا جيشي لديه برنامج سطر أوامر، لكن حتى لو لم يكن كذلك، فلن يكون من الصعب إعداده.إنه يقوم بعمل رائع في أخذ التعليمات البرمجية وإنشاء HTML/XHTML جميل وملون، حتى مع أرقام الأسطر (أو كل أرقام الأسطر X، حتى) وغيرها من الميزات المفيدة.

نصوص يبدو أن ما تطلبه:

  1. يبصقون HTML (أو PS، أو RTF) من ملفات ascii
  2. يتضمن ميزات "الطباعة الجميلة" (تمييز التعليمات البرمجية الحساسة للغة) في العديد من لغات البرمجة.

لست متأكدًا من مدى فائدة ذلك، لكن فريقي يستخدم الدوكسيجين لإنتاج الوثائق، وهو ما يحدث لتوفير تسليط الضوء على بناء الجملة اللوني في طرق عرض التعليمات البرمجية لدينا بالإضافة إلى مكافأة جانبية.لم تكن في حاجة إليها حقًا، لكنها تفعل ذلك.

إذا كنت موافقًا على استخدام روبي، فأنت تريد ذلك com.coderay.

سأضيف بلدي واحد إلى القائمة, ، إنها ألوان C# ولكن يمكن تكييفها مع C وC++ وJava.وينتج الأنماط المضمنة بشكل افتراضي وعلامة مسبقة.

المصدر موجود في C#، ستحتاج إلى الحصول على mono/monodevelop وتجميعه كتطبيق وحدة تحكم، لذلك لا يتم تقليصه في هذا الصدد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top