Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the cl-interpol Reference Manual, version 0.2.7, generated automatically by Declt version 3.0 "Montgomery Scott" on Tue Dec 22 12:25:07 2020 GMT+0.
• Introduction | What cl-interpol is all about | |
• Systems | The systems documentation | |
• Files | The files documentation | |
• Packages | The packages documentation | |
• Definitions | The symbols documentation | |
• Indexes | Concepts, functions, variables and data types |
CL-INTERPOL is a library for Common Lisp which modifies the reader so that you can have interpolation within strings similar to Perl or Unix Shell scripts. It also provides various ways to insert arbitrary characters into literal strings even if your editor/IDE doesn't support them. Here's an example:
(named-readtables:in-readtable :interpol-syntax)
(let ((a 42))
#?"foo: \xC4\N{Latin capital letter U with diaeresis}\nbar: ${a}")
"foo: ÄÜ
bar: 42"
CL-INTERPOL comes with a BSD-style license so you can basically do with it whatever you want.
Complete documentation for CL-INTERPOL can be found in the docs
directory or at the project documentation
site
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The cl-interpol system |
BSD-2-Clause
0.2.7
cl-interpol.asd (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files |
Next: The cl-interpol/packages․lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
cl-interpol.asd
cl-interpol (system)
Next: The cl-interpol/specials․lisp file, Previous: The cl-interpol․asd file, Up: Lisp files [Contents][Index]
cl-interpol (system)
packages.lisp
Next: The cl-interpol/util․lisp file, Previous: The cl-interpol/packages․lisp file, Up: Lisp files [Contents][Index]
packages.lisp (file)
cl-interpol (system)
specials.lisp
Next: The cl-interpol/alias․lisp file, Previous: The cl-interpol/specials․lisp file, Up: Lisp files [Contents][Index]
specials.lisp (file)
cl-interpol (system)
util.lisp
Next: The cl-interpol/read․lisp file, Previous: The cl-interpol/util․lisp file, Up: Lisp files [Contents][Index]
util.lisp (file)
cl-interpol (system)
alias.lisp
Previous: The cl-interpol/alias․lisp file, Up: Lisp files [Contents][Index]
alias.lisp (file)
cl-interpol (system)
read.lisp
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The cl-interpol-asd package | ||
• The cl-interpol package |
Next: The cl-interpol package, Previous: Packages, Up: Packages [Contents][Index]
cl-interpol.asd
Previous: The cl-interpol-asd package, Up: Packages [Contents][Index]
packages.lisp (file)
interpol
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions | ||
• Internal definitions |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported special variables | ||
• Exported macros | ||
• Exported functions |
Next: Exported macros, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
Legal delimiters for interpolation with #$ and #@.
specials.lisp (file)
Whether to allow ~X(...) as format control directives in interpolated strings.
specials.lisp (file)
What is inserted between the elements of a list which is interpolated by #@.
specials.lisp (file)
Whether text following $ or @ should interpolate even without a following delimiter. Lexical variables are handled correctly, but the rules are somewhat complex – see the docs for details.
specials.lisp (file)
Legal outer delimiters for CL-INTERPOL strings.
specials.lisp (file)
Next: Exported functions, Previous: Exported special variables, Up: Exported definitions [Contents][Index]
Restore readtable which was active before last call to ENABLE-INTERPOL-SYNTAX. If there was no such call, the standard readtable is used.
read.lisp (file)
Enable CL-INTERPOL reader syntax.
read.lisp (file)
Previous: Exported macros, Up: Exported definitions [Contents][Index]
The actual reader function for the ’sub-character’ #?.
This function can be used directly outside of a read table by passing ‘recursive-p‘ as NIL.
read.lisp (file)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal special variables | ||
• Internal macros | ||
• Internal functions | ||
• Internal conditions |
Next: Internal macros, Previous: Internal definitions, Up: Internal definitions [Contents][Index]
specials.lisp (file)
specials.lisp (file)
A stack which holds the previous readtables that have been pushed here by ENABLE-INTERPOL-SYNTAX.
specials.lisp (file)
Bound to the current readtable if it has to be temporarily modified.
specials.lisp (file)
Outer delimiters which automatically enable regex mode.
specials.lisp (file)
Whether we have to re-process an L or U because it closes several scopes.
specials.lisp (file)
Bound to the opening outer delimiter while parsing a string.
specials.lisp (file)
Bound to the stream which is read from while parsing a string.
specials.lisp (file)
Bound to the closing outer delimiter while parsing a string.
specials.lisp (file)
A hash table which maps Unicode aliases to their real names.
specials.lisp (file)
A declaration form to quiet warnings about unbound variables within a lexical environment.
read.lisp (file)
Next: Internal functions, Previous: Internal special variables, Up: Internal definitions [Contents][Index]
Like DEFVAR, but the variable will be unbound rather than getting an initial value. This is useful for variables which should have no global value but might have a dynamically bound value.
specials.lisp (file)
Convenience macro because we always peek at the same string with the same arguments.
util.lisp (file)
Convenience macro because we always read from the same string with the same arguments.
util.lisp (file)
Like ERROR but signals a SIMPLE-READER-ERROR for the stream *STREAM*.
util.lisp (file)
Next: Internal conditions, Previous: Internal macros, Up: Internal definitions [Contents][Index]
Internal function used to restore previous readtable.
read.lisp (file)
Internal function used to enable reader syntax and store current readtable on stack.
read.lisp (file)
Returns a copy of the readtable which was current when INTERPOL-READER was invoked. Memoizes its result.
util.lisp (file)
Parses and returns a named character after "\N" has already been read. This function reads from *STREAM*.
read.lisp (file)
Find the closing delimiter corresponding to the opening delimiter START-DELIMITER in a list DELIMITERS which is formatted like *OUTER-DELIMITERS*. If ERRORP is true, signal an error if none was found, otherwise return NIL.
util.lisp (file)
Reads and consumes the number *STREAM* is currently looking at and returns it. Returns NIL if no number could be identified. RADIX is used as in PARSE-INTEGER. If MAX is not NIL we’ll read at most the next MAX characters.
read.lisp (file)
specials.lisp (file)
Helper function for INTERPOL-READER which does all the work. May call itself recursively.
read.lisp (file)
Whether CHAR is a character which has case and is lowercase.
util.lisp (file)
Create character from char-code NUMBER. NUMBER can be NIL which is interpreted as 0.
util.lisp (file)
Create an empty string which can be extended by VECTOR-PUSH-EXTEND.
util.lisp (file)
read.lisp (file)
read.lisp (file)
Return a subvector by pointing to location in original vector.
util.lisp (file)
Reads and returns one or more Lisp forms from *STREAM* if the character we’re looking at is a valid inner delimiter. Otherwise returns NIL.
read.lisp (file)
Reads and returns a format directive (as a string) along with one or more lisp forms (as per read-form).
read.lisp (file)
read.lisp (file)
Read the stuff following an optional delimiter, returning a form that tries to deal correctly with lexical variables.
read.lisp (file)
Reads characters from *STREAM* while PREDICATE returns a true value for each character. Returns at most MAX characters if MAX is true.
read.lisp (file)
Tries to return a character which was encoded as \N<NAME>.
read.lisp (file)
Concatenates a list of strings to one string.
util.lisp (file)
Convert the characters(s) on *STREAM* following a backslash into a character which is returned. This function is to be called when the backslash has already been consumed.
read.lisp (file)
Previous: Internal functions, Up: Internal definitions [Contents][Index]
A reader error which can be signalled by ERROR.
util.lisp (file)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index | ||
• Function index | ||
• Variable index | ||
• Data type index |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | C F L |
---|
Jump to: | C F L |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | %
C D E F G H I L M N P R S U |
---|
Jump to: | %
C D E F G H I L M N P R S U |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
Q S |
---|
Jump to: | *
Q S |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | C P S |
---|
Jump to: | C P S |
---|