Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Curl macros introduction (part 4)
08-10-2011, 04:16 AM, (This post was last modified: 08-10-2011, 04:27 AM by RobertShiplett.)
#1
Brick  Curl macros introduction (part 4)
A Curl macro that accepts expressions: {ndashe }


As you might guess, {ndashe } links Strings from two expressions with a so-called n-dash or Unicode UTF-8 code point 2013 which is the Curl char represented as '\u2013'.

The changes are as follows:

Code:
{define-macro public {ndashe ?e1:expression , ?e2:expression}
                                                   || note the comma!
   {return
      {expand-template

         ?e1 & n-dash & ?e2  || no change here !

      }
   }
}

and if we now test with

Code:
{let public str1:String = "this", str2:String = "these"}
{paragraph We ndashe'd {ndashe {str1.to-upper-clone} , {str2.to-upper-clone} } }
{expand-to-string {ndashe {str1.to-upper-clone} , {str2.to-upper-clone}}}

what we will see is
On the web page Curl Wrote:We ndashe'd THIS–THESE
{str1.to-upper-clone} & n-dash & {str2.to-upper-clone}

One subtle change was required: the "hyphen" could not be used in the macro because it cannot separate two expressions as it is itself used as an infix operator for a {subtract } expression.

Even if it seemed cute to use the hyphen, most often the comma will be your best choice.

But why would we want {ndashi } or {ndashe }? Wouldn't we want an {endash } macro to accept such curl source or text as we pass in?

For that we will need patterns and the Curl {syntax-switch } macro.
Robert Shiplett, Curlr
Fredericton NB

Canada
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
Brick Curl macros introduction (part 1) RobertShiplett 4 6,993 04-25-2015, 05:28 PM
Last Post: glennmcgrath
  server-side Curl issue : TocDocument RobertShiplett 3 5,691 02-09-2015, 02:11 PM
Last Post: Sumeraxe
  Curl with HTML widget + CintaNotes RobertShiplett 0 4,444 09-08-2014, 07:42 AM
Last Post: RobertShiplett
  Curl for the new Kodansh kanji books RobertShiplett 0 3,032 09-07-2014, 08:51 PM
Last Post: RobertShiplett
  Curl on Facebook - another page RobertShiplett 0 3,737 02-01-2014, 02:29 AM
Last Post: RobertShiplett
  Curl for CoffeeScript folks RobertShiplett 0 4,758 06-29-2013, 02:52 AM
Last Post: RobertShiplett
  Curl JavaScript bytecodes RobertShiplett 0 4,939 06-19-2013, 10:33 PM
Last Post: RobertShiplett
  jinja2 templates for Curl RobertShiplett 0 4,147 06-14-2013, 08:33 AM
Last Post: RobertShiplett
  Curl and QNX RobertShiplett 0 4,932 04-24-2013, 11:38 PM
Last Post: RobertShiplett
  WikizPad Curl personal wiki RobertShiplett 0 4,115 03-11-2013, 01:09 AM
Last Post: RobertShiplett
Forum Jump:


Users browsing this thread:
1 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('198')