Rosetta Code:Village Pump/Syntax highlighting

From Rosetta Code

Discuss issues related to the Syntax Highlighting system here. The old page got huge, and it became hard to discern what problems were current.

Relationship Between Rosetta Code and GeSHi

Rosetta Code first started using GeSHi for syntax highlighting a long while back, but due to our nature, we quickly discovered, and frequently continue to discover, programming languages which GeSHi does not provide highlighting functionality. Additionally, we've uncovered bugs in various releases of the software, and the GeSHi folks have been welcoming of fixes sent to them.

Due to the way language support is managed in GeSHi, it's fairly trivial for someone who can follow PHP syntax to create a PHP file that adds support for the language of their choice. GeSHi's support for Oberon-2, Modula-3 and AutoHotKey is the direct result of contributions by MBishop and Tinku99. (If you like a language, and it doesn't appear to have syntax highlighting support, I strongly suggest you follow their lead. ;-) )

I am now also part of the GeSHi project focusing for now on adding and improving support for programming languages present on Rosetta Code. As a community of language aficionados and enthusiasts, Rosetta Code is a hotbed for opportunities for improving GeSHi, and improvement of GeSHi is extremely helpful for improving the readability code on Rosetta Code. --Short Circuit 06:43, 18 June 2009 (UTC)

Language tags

Due to changes I want to implement in the way processing of the lang tag is done, we need to standardize codes for all of the languages currently on Rosetta Code ASAP. Subsequently, all pages need to be scoured for code snippets.

Here is a list of the languages that currently exist on Rosetta code as I write this. Next to each language, place the code for that language. If the code is already established in GeSHi, make it bold. If no code is provided by GeSHi, and no code is currently in use for that language on the wiki, make one up. Once this list is fully populated, all the pages for each language need to be checked, and ensure that the code snippets for that language are correct. (Not sure what to do about command-line one-liners or similar yet, though.)

Note: AutoHotKey currently has two codes, ahk and autohotkey. When AutoHotKey support was added to GeSHi, it was added with the longer code. (lang codes are derived from the filename.) Since there were already code snippets on RC that used ahk for AutoHotKey, I created a symlink that allowed ahk to be used as a language code as well. This should likely be reversed, meaning instances of the ahk tag need to be replaced with the autohotkey tag. --Short Circuit 07:01, 18 June 2009 (UTC)

  • 4D

A

  • ALGOL 60
  • ALGOL 68
  • APL
  • AWK
  • ActionScript
  • Ada ada
  • Agda2
  • AmigaE
  • AppleScript
  • Assembly
  • AutoHotkey autohotkey

B

  • BASIC qbasic freebasic thinbasic
  • Bc
  • Befunge
  • Brainf*** bf

C

  • C c
  • C sharp csharp
  • C++ cpp
  • Caml
  • Clean
  • Clojure
  • Cobol cobol
  • ColdFusion
  • Common Lisp lisp
  • Component Pascal
  • Coq

D

  • D d
  • DOS Batch File
  • Dc
  • Delphi delphi

E

  • E e
  • EC
  • ELLA
  • ESQL
  • Eiffel
  • Emacs Lisp
  • Erlang

F

  • F
  • F Sharp
  • FALSE
  • FP
  • Factor
  • Fan
  • Forth
  • Fortran fortran

G

  • GAP
  • Gnuplot
  • Groovy groovy

H

  • HaXe
  • Haskell haskell

I

  • IDL idl
  • Icon
  • Io

J

  • J
  • JSON
  • JScript.NET
  • Java java java5
  • JavaScript javascript
  • JoCaml
  • Joy
  • JudoScript

K

  • Korn Shell

L

  • LSE64
  • LaTeX
  • LabVIEW
  • Lisaac
  • Lisp lisp
  • Logo
  • Logtalk
  • LotusScript lotusscript
  • Lua lua
  • Lucid

M

  • M4
  • MAXScript
  • MIRC Scripting Language mirc
  • MS SQL
  • Make make
  • Maple
  • Mathematica
  • Maxima
  • Metafont
  • Modula-3

N

  • NewLISP
  • Nial

O

  • OCaml ocaml
  • Oberon-2 oberon2
  • Object Pascal
  • Objective-C
  • Octave
  • Omega
  • OpenEdge/Progress
  • Oz

P

  • PHP php
  • PL/I
  • PL/SQL plsql
  • Pascal pascal
  • Perl perl
  • Pike
  • PlainTeX
  • Pop11
  • PostScript
  • PowerShell
  • Prolog prolog
  • Python python

Q

  • Q

R

  • R
  • REXX
  • RapidQ
  • Raven
  • Rhope
  • Ruby ruby

S

  • SAS sas
  • SETL
  • SMEQL
  • SNUSP
  • SQL sql
  • Scala scala
  • Scheme scheme
  • Script3D
  • Seed7
  • Self
  • Slate
  • Smalltalk smalltalk
  • Standard ML

T

  • TI-83 BASIC
  • TI-89 BASIC
  • Tcl tcl
  • Toka
  • Tr
  • Transact-SQL
  • Twelf

U

  • UNIX Shell
  • UnixPipes
  • Unlambda

V

  • V
  • VBScript
  • Vedit macro language
  • Visual Basic vb
  • Visual Basic .NET vbnet
  • Visual Objects

W

  • Wrapl

X

  • XSLT
  • XTalk


Here is a list of the codes currently provided by GeSHi. <lang list></lang>