Jaksoin ottaa nyt tätä syntaksivärjäyshommaa tehtäväksi. Jos nyt kaikki pelaa, kuten toivon, saan yksillä CSS-määritelmillä kaikille syntakseille jokseenkin samat (yhtenäiset) värit.
Vähän bashia
if [ ! -d "$dir" ]
then
echo "Bad directory: \"$dir\""
exit
fi
# jos rec käytössä, haetaan alihakemistoistakin
findopts=""
if [ ! rec ]; then
findopts="-maxdepth 1"
fi
Yes…
Pythonia!
# directory scanning
def scanRecursively(self, dir):
wx.Yield()
if self.stopScan:
return
list = os.listdir(dir)
for entry in list:
if os.path.isdir(dir + "/" + entry):
self.scanRecursively(dir + "/" + entry)
else:
if self.isMediaFile(entry):
self.filelist.InsertMedia(dir + "/" + entry)
Ok.
Haskell
-- let's make a list of mere names, attach numbers to it later.
myWorkspaceNames = ["arthur", "trillian", "ford",
"marvin", "zaphod", "slarty", "eddie",
"deep", "thought", "frankie"]
myWorkspaces = [ a ++ ":" ++ take 4 b | (a,b) <- (zip (map show [1..]) myWorkspaceNames) ]
Vähän pitkäksi menee, mutta menköön.
Clojure!
; this is more like it! Point-free is the way to go.
(def cap-word
(comp cap toLower))
(defn cap-sentence [sen]
"uppercasify each word from a sentence"
(apply str (interpose " "
(map cap-word
(into [] (.split sen " "))))))
Clojure on hieno kieli.
Tulokset
No, ei tarvittu kovin suurta panosta, kun jo alkoi näyttää hyvältä. Keywordsit boldattuna ja kommentit hieman tummemmalla — mitä muuta tässä tarvitaan? GeSHi ei kyllä edelleenkään kuulu suosikkeihini. Huonoa koodia. Myös joudun toteamaan TextPatternin itsensä huonoksi haksata. Todella työlästä muokata mitään, koodi on PHP-spagettia ja kaikkea sitä. Arrh.