Notes on the Curl web programming language and Curl markup using the Curl Surge Runtime Engine (RTE), the expression-based Curl language and Curl's macro facilities and class libraries
Pages
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
Thursday, August 29, 2013
Your fonts that are Unicode Japanese capable
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 dependenciesand IFF that error immediately follows warnings such as
WARN ... [YOUR_SERVER_NAME]@0,0,1 No repository field.where YOUR_SERVER_NAME is the name in that package.json file
WARN ... [YOUR_SERVERR_NAME]@0,0,1 No readme data.
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.
Thursday, April 11, 2013
Curl Developers Japanese
The Curl site for developers is currently only available in Japanese at http://developers.curlap.com/
http://developers.curl.com/ now redirects to the developer community BBS.
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 :
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}{FrontSide color="gold",
{CardFontSize 18pt}
{CardBackground "blue"}
{HiLight "red"}
日本語の漢字は {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
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]
Subscribe to:
Posts (Atom)