on the Curl Web Content Markup Language

on the Curl Web Content Markup and Programming Language from www.curl.com and www.curlap.com

Wednesday, September 4, 2013

el Curl ar as lCurlr web/RIA RTF editor


el Curl ar is lCurlr

What I am looking at is a web editor that keeps content OFF the web, pulls it in local, safely-enough encrypted, and leaves the creator with ALL use rights intact including "first rights" and that the use of which has no possible construal as "publishing" or sharing content.

A rich-text editor should be all that a writer needs on a netbook or ultrabook under Windows, Mac or linux.

In exchange for the encrypted web store use, the users will be able to report bugs and offer us a limited royalty-free use of any ideas which they offer for features, fixes or improvements to the editor and its functions IFF offered to the developer(s) AS SUCH and only via submission in THAT mode and NOT when simply in their own edited content.

Users will be asked to accept that the encryption is only good-enough for writers engaged in activity which would not be deemed criminal under the laws of some nation(s) or state(s) of THEIR choice.

Users will be urged to use the desktop version ( Dcurl ) whenever and wherever possible (i.e., when on linux, Max or Windows device.)  Off-line use will be supported on those 3 platforms.

So where is the legal flaw here ? The Curl open-source license terms ? No stipulation as to what would constitute a commercial user ? No way of saying without seeing the waiver of responsibilities for suitability of use ? No definition of who is and is not deemed to be a "writer" for the purposes of the app ?  No statement of the effort to be made NOT to change the Terms of Service ?  No commitment to use only file servers located in countries which are both Berne signatories and deemed to be upholding conventions on intellectual property rights ?

*IFF if-and-only-if

Enhanced by Zemanta

Thursday, August 29, 2013

Your fonts that are Unicode Japanese capable


This morning I wrote a nihongo fonts applet … a Curl browser applet (Linux, Mac, Windows) that shows which (if any) of your fonts on your device can display the Japanese Unicode character "zen" 禅 character … or it advises you that you have no such fonts … or advises you that you still have not installed the Curl 8 browser plugin.

The fonts true name (for use in a CSS or Curl style) is displayed in that font … as is the test character 禅. The font-size is 24pt. The next version will make that font size user-selectable as em or pt.

The title line is in the first of your Asian-capable Unicode fonts (by alphabetical order.) The entire applet is only a couple of lines of procedural-style Curl and then the applet ends with the layout as a simple declarative-style Curl expression.

I can send you the desktop app version by request.


Wednesday, July 31, 2013

style for TocDocument left pane

Here is a snapshot of a TocDocument applet which uses an {install-stylesheet haikuStyles} procedure to set the font-size and font-family for the left index pane and the TreeControl within its ScrollBox :


Wednesday, July 24, 2013

Curl markup of haiku by Shiki


Here is a screenshot of the spring kigo haiku of 1897 by Masaoka Shiki. The Curl browser applet has indexed, selectable and searchable utf-8 text instead of SH-JIS. There are over 300 haiku
in this set.



Saturday, July 20, 2013

Minimalist haiku markup


Here is a screen shot of thousands of Masaoka Shiki haiku through 2895 in a utf-8 web browser applet with selectable and searchable text :

The input text had headers prefixed with one back-quote character and annotations prefixed with tilde. The present light weight markup is using default Curl macros such as {heading }, {text } and {paragraph } with a document style of TocDocument ( Table of Contents style.)




Monday, July 8, 2013

npm express install fails with ERR and WARN


If an npm install fails with an error such as
npm ERR! install couldn't read dependencies
and IFF that error immediately follows warnings such as
WARN ... [YOUR_SERVER_NAME]@0,0,1 No repository field.
WARN ... [YOUR_SERVERR_NAME]@0,0,1 No readme data.
where YOUR_SERVER_NAME is the name in that package.json file

THEN

you may notice the perhaps not obvious typo of 0,0,1 for 0.0.1 with commas and not '.', i.e., full-stop, dot, period as the version delimiter.

mea culpa

Now to get back to my nunjucks templating for Curl web content ( Curl, as in www.curl.com and curl-aca in /opt/curl/surge/9/bin

Reminder : do not use a sudo for npm install.  Set the minimum privileges so that your, e.g., maintenance www group user, can run npm. without resorting to root privileges especially if the install is global.



Friday, June 28, 2013

node CoffeeScript + express + nunjucks generating Curl markup


My new Curl markup server has been rewritten as CoffeeScript ( still node.js + express + nunjucks on CentOS ).

Why are CoffeeScript programmers not sometimes using Curl ???

Curl is largely just curly braces instead of block indents ( plus all of those Curl libraries and docs and app's and ... )

There should be some LifeHacker on coffeescript.org and www.curl.com lessons learned ... by Brian Ford ?




Wednesday, June 19, 2013

Node.js + express + nunjucks generating a Curl browser applet


Over at communities.curl.com there is now a screenshot of a Curl applet served by a CentOS VPS web server.

The applet is generated in Node.js using express and nunjucks templating.

A nunjucks template provides the basis for a Curl applet while two scurl files provide the contents and the text formats for that content.  The remaining piece is the Curl styling using a Curl stylesheet..

The eventual aim is to replace the .js consumed by Node with a .xcurl script to be consumed by a Curl curl process on that server.




Sunday, May 26, 2013

Curl in Linux Firefox 17 fix


You must follow the advice at communities.curl.com concerning main process and

dom.ipc.plugins.enabled.libcurl-surge.so 

which you must add to the Firefox about:config page as a boolean using a right-click and NEW ; set it to false

Restart Firefox.

Curl app's should now run again in Firefox.

I have tested this solution with Curl 8.0 in CentOS 6.4 i386 in Firefox 17.0.6 in a situation where Curl ran fine in linux Opera, IDE was good but Curl would not run in Firefox.

CentOS prep included adding gcc environment for libstdc.so, libssl for libcrypt.so and libXext packages installed priot to installing RTE and IDE.

CentOS 32-bit is being run in VirtualBox on Windows 7 64-bit SP1 Home Prem on an i7 Quad core with 16GB of RAM.  CentOS is given 1024M and 8GB fixed virtual disk.



Sunday, March 10, 2013

WikizPad


Curl will make an easier wiki-pad than WikidPad because the Curl RichEditArea can generate the markup : The REA has both curl-source parse and format methods.

WikidPad is unable to display some of the input formatting until exported !  But Curl is a web content language for both data and processes - Curl offers both declarative markup and expression-based programming (rather like rebol, but without the graphics and UI issues and comes with two (2) developer IDE options (the Curl Lab or an Eclipse plugin.)

The security concern of generated markup can be addressed by requiring privilege for the applet and using a signed pcurl file along with encrypted text store.

WikizPad will offer one pane for formatting markup as RTF and one pane for editing markup as text (but with RTF appearance as desired for ease of edits.)

At the moment the features are being used for an SRS FlashCard edit/gen app, so reuse will be straight-forward.

[ more to follow ]



Saturday, March 9, 2013

customized Curl flashcard


Some Curl flashcard markup proposals in the testbed viewer :



See
 http://www.aule-browser.com/flashcards/flashcard-kanji-03.dcurl
for Curl desktop code or
 flashcards/flashcard-kanji-03.curl
to run a test in the browser.

The test markup is
{EmFontSize 36pt}
{CardFontSize 18pt}
{CardBackground "blue"}
{HiLight "red"}
    {FrontSide color="gold", 
 日本語の漢字は {KJ \u9801} がです。
}

Friday, March 8, 2013

Curl flashcard markup


Here are three snaps of user editing flashcard output format using Curl as the markup :


then after an edit


then after a Curl markup edit



Wednesday, March 6, 2013

wikibooks as Curl ebooks


wikibooks as Curl ebooks

Currently some wiki books can be exported as PDF, ODT or ZIM.

[ what this space ]




Monday, March 4, 2013

formatting French ebooks


You might think that formatting French ebooks in Curl as web markup would be easy – and it is – but there are still challenges.

If you use the TocDocument as the default document-style there are markup hierarchy issues under each {heading level=n, } macro.

I usually start with simply a default vanilla {paragraph } macro and then move to user defined formats and procedures.

The challenge is to make this accessible to the non-programmer working in a non-Western language.

At this time I am evaluating two rebol language variants (r3 and red) and one Icon variant (Object Icon) for parsing my Curl markup in accordance NOT with Curl syntax but USER preferences.

If all else fails, I will fall back to Logtalk with some Prolog dialect.

In the case of my current French ebook, the rules are to cover non-breaking spaces. The rule of thumb in France is to surround "two-part" punctuation with spaces. The challenge is to address resizeable text frames or panes in which re-flowed text must remain readable.

The minor rules apply to ALL Curl ebooks where the text is in Curl markup (and until we have a webkit wrapper library, that is what I use) such as converting all ASCII single quotes, quotes, psuedo-hypens, brackets and installing matching left- and right- quotation devices.




Tuesday, February 19, 2013

Curl surge-do help FAQ


Here are some valid uses of the Curl executable file named "surge-do" :
 /opt/curl/surge/9/bin/surge-do --edit "%1"

/opt/curl/surge/9/bin/surge-do --launch "%1"

/opt/curl/surge/9/bin/surge-do --browse "%1"

/opt/curl/surge/9/bin/surge-do --open "%1"

Running curl itself in that ./bin as ./curl --help would give you

Usage:
  -h --help                : Prints a Usage message to stdout and exits.
  -v --version             : Prints a version-number to stdout and exits.
  --lazy-compilation       : Requests that certain methods should be compiled lazily (normally the default).
  -l --no-lazy-compilation : Requests that no methods should be compiled lazily (the opposite of --lazy-compilation).
  --lazy-types             : Requests that certain types should be compiled lazily (normally the default).
  -t --no-lazy-types       : Requests that no types should be compiled lazily (the opposite of '--lazy-types').
  --show-gc                : Report GC information to the console.
  --verify-integrity       : Enable extra verifications of internal integrity.
  --host-console           : Force use of the host console.
  --trust                  : Trust all applets.
  --graphics-info          : Show a description of the available graphics driver, then exit.
  --force-graphics-hw      : Force use of the native graphics driver, even if it may be unstable.
  --safe-graphics          : Force use of the software graphics.
  --                       : Halts option-parsing. The rest of the arguments are passed directly on to the application.
  --batch-mode             : Run in batch mode (dialog boxes and such are illegal).
  -D --use-console-debugger: Enable use of the console debugger.
  --no-use-console-debugger: Disable use of the console debugger.
  --resync                 : Force resynchronization of all files as of process start time.
  --tag-console            : Tag each line of console output with the time and thread.
  --debug                  : Activate additional debug code in the given package.
  --debug-graphics         : Activate additional debug code in the graphics system.
  --sse2                   : Enable generation of SSE2 instructions.
  --no-sse2                : Disable generation of SSE2 instructions.
  --cache                  : Enable persistent caching of packages.
  -H --default-heap-size   : Set default starting heap size (e.g. 6M or 3200K).
  -i --redirect-stdin      : Redirect standard-input from a file.
  -o --redirect-stdout     : Redirect (append) standard-output to a file.
  -e --redirect-stderr     : Redirect (append) standard-error to a file.
  --utf8-stdin             : Use UTF8 character encoding for 'stdin'.
  --utf8-stdout            : Use UTF8 character encoding for 'stdout'.
  --utf8-stderr            : Use UTF8 character encoding for 'stderr'.
  --privileged             : Run with 'privilege'.
  --unprivileged           : Run without 'privilege'.
  --preload                : Preload a given file (using evaluate).
  --eval                   : Evaluate a string.
  -s --shell               : Enter interactive shell mode.
  --default-exit           : Default exit value for scripts.
  --do-not-panic           : Do not panic. Just abort instead.

The flag -l is used when running a .xcurl script

[ more to follow]