Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Pastaholic: The 1000000th pastebin.

branch: master
README
Pastaholic: The 1000000th pastebin.

DESCRIPTION

  A pastebin. IOW, copy some code, put it in the box, chose the language,
  and submit: you'll have a copy of the code syntax-highlited. Useful if
  you have to share some snippets of code (e.g., on a mailing list).

  Hard work is actually done by GeSHi: http://qbnz.com/highlighter/

FILES

  Required:
    * pasta.php -> Generates the pastes.
    * index.html -> Interface to the pastebin.
    * geshi.php -> GeSHi.
    * geshi/* -> Syntax files. (You'll need only syntax files you'll use.)

  Optional:
    * pasta_config.ini -> Contains customization.
    * pasta.header.template -> Everything above (and including) '<body>'.
    * pasta.footer.template -> Everithing below (and including) '</body>'.

REQUIREMENTS

  * PHP >= 4.3

CUSTOMIZATION

  pasta_config.ini is the file that contains customization. It's a 'ini'
  file, so it's structured like:

  [section1]
  option1 = somevalue
  option2 = 'some other value'

  (Notice the quotes in option with spaces.)

  Here they are:

  ==== [main] ====

  These are the main options.

  * numbers:   Indicates wheter line numbers should be displayed.
               If not present, no numbers will be shown.
               Possible valuse: 'normal' (all lines are styled the
               same); 'fancy' (lines are styled differently).
               http://qbnz.com/highlighter/geshi-doc.html#line-numbers
  * container: What kind of HTML container should be used.
               Possible values: 'pre' (<pre>); 'div' (<div>);
               'pre_valid' (valid <pre>); pre_table (<pre> and <table>)
               http://qbnz.com/highlighter/geshi-doc.html#the-code-container
  * tabs:      Number of spaces for a single tabulation.
               http://qbnz.com/highlighter/geshi-doc.html#setting-tab-width
  * directory: directory where pastes are going to be stored. The value
               is the name of a directory relative to 'pasta.php'.
  * header_content and footer_content: Insert strings in header and footer.
               http://qbnz.com/highlighter/geshi-doc.html#keyword-substitution
  * limit:     Maximum size of paste in kilobytes. Default is 20K.

  ==== [template] ====

  Let you add HTML content.

  * header:      File that contains the template for the first part of pages.
                 I.e., everything above (and including) '<body>' of pastes.
  * footer:      As above, but everything below (and including) '</body>'.

  ==== [classes] ====

  It's possible to declare styles at the beginning of the files.
  http://qbnz.com/highlighter/geshi-doc.html#using-css-classes

  * id:          Enable ids. Value can be an arbitrary name.
  * class:       Enable classes. Value can be an arbitrary name.

  ==== [style] ====

  Style customization. The following options are in the form:
  option['css-property'] = css-value
  where css-property is a CSS property (e.g., 'font-weight') and
  css-value its value (e.g., 'bold'; if spaces are present, use quotes)
  http://qbnz.com/highlighter/geshi-doc.html#changing-styles

  * overall['css-property']: Style for the code (and numbers) block.
  * line['css-property']: Style for line numbers.
  * fancy['css-property']: Style for alternate line numbers.
  * code['css-property']: Style for code.
  * keyword_groupX['css-property']: Style for keyword in group X, where
    X is a number from 1 to 4.
  * comments_line['css-property']: Style for single line comments.
  * comments_multi['css-property']: Style for comments in multiple lines.
  * numbers['css-property']: Style for numbers.
  * strings['css-property']: Style for strings.

LICENSE

  All files (except geshi.php and those in geshi/) are released into
  the public domain. For more information, see http://unlicense.org/
  or the accompanying UNLICENSE file.
Something went wrong with that request. Please try again.