Awk.Info

"Cause a little auk awk
goes a long way."

About awk.info
 »  table of contents
 »  featured topics
 »  page tags


About Awk
 »  advocacy
 »  learning
 »  history
 »  Wikipedia entry
 »  mascot
Implementations
 »  Awk (rarely used)
 »  Nawk (the-one-true, old)
 »  Gawk (widely used)
 »  Mawk
 »  Xgawk (gawk + xml + ...)
 »  Spawk (SQL + awk)
 »  Jawk (Awk in Java JVM)
 »  QTawk (extensions to gawk)
 »  Runawk (a runtime tool)
 »  platform support
Coding
 »  one-liners
 »  ten-liners
 »  tips
 »  the Awk 100
Community
 »  read our blog
 »  read/write the awk wiki
 »  discussion news group

Libraries
 »  Gawk
 »  Xgawk
 »  the Lawker library
Online doc
 »  reference card
 »  cheat sheet
 »  manual pages
 »  FAQ

Reading
 »  articles
 »  books:

WHAT'S NEW?

Mar 01: Michael Sanders demos an X-windows GUI for AWK.

Mar 01: Awk100#24: A. Lahm and E. de Rinaldis' patent search, in AWK

Feb 28: Tim Menzies asks this community to write an AWK cookbook.

Feb 28: Arnold Robbins announces a new debugger for GAWK.

Feb 28: Awk100#23: Premysl Janouch offers a IRC bot, In AWK

Feb 28: Updated: the AWK FAQ

Feb 28: Tim Menzies offers a tiny content management system, in Awk.

Jan 31: Comment system added to awk.info. For example, see discussion bottom of ?keys2awk

Jan 31: Martin Cohen shows that Gawk can handle massively long strings (300 million characters).

Jan 31: The AWK FAQ is being updated. For comments/ corrections/ extensions, please mail tim@menzies.us

Jan 31: Martin Cohen finds Awk on the Android platform.

Jan 31: Aleksey Cheusov released a new version of runawk.

Jan 31: Hirofumi Saito contributes a candidate Awk mascot.

Jan 31: Michael Sanders shows how to quickly build an AWK GUI for windows.

Jan 31: Hyung-Hwan Chung offers QSE, an embeddable Awk Interpreter.

[More ...]

Bookmark and Share

categories: Contribute,Jan,2009,Admin

How to Contribute

This web site is a front end to a repository of Awk code. The site, and the code, is maintained by the international awk community (which includes you) so there are many ways you can contribute:

Link to this site from your home page

Using this logo, link to http://awk.info:

(By the way, our current logo is pretty lame. Want to contribute a better one? Please, be our guest!)

Improve a Page

Found a Typo? A Rendering Problem? Want to clarify something?

Want to add some links?

See the above instructions.

How to Write Pages for this Site

  1. Write the page.
  2. Test the page by placing it on a publicly readable site, then see if it renders ok.
  3. Email the url of that page to mail@awk.info. Do NOT send the page.

When writing a page, please follow these guidelines:

  • Do not use <hr> tags: these are reserved for dividing pages in a multi-page view.
  • Use only one <h1> tag at the top of page. Everything else should <h2> or below.
  • Try to avoid using tricky CSS/HTML styling tricks. Vanilla HMTL is best.
  • The page you write will end up being rendered as the middle pane of this site (around 550 pixels wide). So don't write wide pages.
  • If you include code samples, note that our CSS wraps pre-formatted code if it gets too wide. For example, at the time of this writing, the following pre-formatted texts gets ugly after about 75 characters:
          1         2         3         4         5         6         7
012345678901234567890123456789012345678901234567890123456789012345678901234567890

Contributing Code

To contribute code, zip up the directory and mail it to

Coding Standards

All function and file names are global to our code so please ensure your new function/file name does not clobber an old one.

Optionally, you might considering adding:

Add a Library Function Files

In the language of this site, a function file is a 100% standalone file containing one or more functions with no dependancies on other files. Note that if your function file depends on other files, then it becomes a package (see below).

Functions are stored in a file caled myfunc.awk.

Add a Package

In the language of this site, a package is a file that depends on other files (and the other files may depend on yet others, recursively).

Following a recent discussion in comp.lang.awk, we say that these dependancies are commented with

#use file.awk 

where file.awk is some file (e.g. a file in the current directory).

Note that : file.awk will be loaded before the file containing the reference to #use file.awk.

blog comments powered by Disqus