Skip to content

Commit

Permalink
Quick Save
Browse files Browse the repository at this point in the history
  • Loading branch information
rsdoiel committed Mar 11, 2024
1 parent 5cdb53d commit 5970930
Show file tree
Hide file tree
Showing 21 changed files with 230 additions and 130 deletions.
5 changes: 3 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ cff-version: 1.2.0
message: "If you use this software, please cite it as below."
type: software
title: "osf"
abstract: "A library and command line programs for working with FadeIn and Open Screenplay Format (osf) files."
abstract: "A library and command line programs for working with FadeIn
and Open Screenplay Format (osf) files."
authors:
- family-names: Doiel
given-names: Robert
Expand All @@ -14,6 +15,6 @@ maintainers:
orcid: ""

repository-code: "https://github.com/rsdoiel/osf"
version: 0.0.5
version: 0.0.6
license-url: "https://rsdoiel.github.io/osf/license.html"
keywords: [ "GitHub", "text markup", "screen play" ]
16 changes: 11 additions & 5 deletions INSTALL.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,11 @@
<!-- <h1>INSTALL</h1> -->

<h2 id="installation">Installation</h2>
<p>This project is experimental. Get the latest release from <a href="https://github.com/rsdoiel/osf/releases/">GitHub</a>.</p>
<p>This project is experimental. Get the latest release from <a
href="https://github.com/rsdoiel/osf/releases/">GitHub</a>.</p>
<h2 id="quick-install-with-curl">Quick install with curl</h2>
<p>If you are using macOS or Linux you maybe able to install osf using the following curl command.</p>
<p>If you are using macOS or Linux you maybe able to install osf using
the following curl command.</p>
<pre class="shell"><code>curl https://rsdoiel.github.io/osf/installer.sh | sh</code></pre>
<h2 id="install-from-source">Install from source</h2>
<h2 id="requirements">Requirements</h2>
Expand All @@ -43,17 +45,21 @@ <h2 id="steps">Steps</h2>
<ol type="1">
<li>Clone the Git repository for the project</li>
<li>change directory into the cloned project</li>
<li>Run <code>make</code>, <code>make test</code> and <code>make install</code></li>
<li>Run <code>make</code>, <code>make test</code> and
<code>make install</code></li>
</ol>
<p>Here’s what that looks like for me.</p>
<pre><code>git clone https://github.com/rsdoiel/osf src/github.com/rsdoiel/osf
cd src/github.com/rsdoiel/osf
make
make test
make install</code></pre>
<p>By default it will install the programs in <code>$HOME/bin</code>. <code>$HOME/bin</code> needs to be included in your <code>PATH</code>. E.g.</p>
<p>By default it will install the programs in <code>$HOME/bin</code>.
<code>$HOME/bin</code> needs to be included in your <code>PATH</code>.
E.g.</p>
<pre><code>export PATH=&quot;$HOME/bin:$PATH&quot;</code></pre>
<p>Can be added to your <code>.profile</code>, <code>.bashrc</code> or <code>.zshrc</code> file depending on your system’s shell.</p>
<p>Can be added to your <code>.profile</code>, <code>.bashrc</code> or
<code>.zshrc</code> file depending on your system’s shell.</p>
</section>

<footer>
Expand Down
85 changes: 49 additions & 36 deletions TODO.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,56 +31,69 @@ <h1 id="action-items">Action Items</h1>
<h2 id="bugs">Bugs</h2>
<h2 id="next">Next</h2>
<ul class="task-list">
<li><input type="checkbox" disabled="" />
Update code to Go 1.22</li>
<li><input type="checkbox" disabled="" />
Remove dependency on <code>github.com/caltechlibrary/cli</code></li>
<li><input type="checkbox" disabled="" />
implement a txt2osf demonstration</li>
<li><input type="checkbox" disabled="" />
review Text element, make sure I am mapping embedded newlines and formatting correctly</li>
<li><input type="checkbox" disabled="" />
validate ToXML() after FromFountain() can be read by FadeIn</li>
<li><label><input type="checkbox" />Update code to Go 1.22</label></li>
<li><label><input type="checkbox" />Remove dependency on
<code>github.com/caltechlibrary/cli</code></label></li>
<li><label><input type="checkbox" />implement a txt2osf
demonstration</label></li>
<li><label><input type="checkbox" />review Text element, make sure I am
mapping embedded newlines and formatting correctly</label></li>
<li><label><input type="checkbox" />validate ToXML() after
FromFountain() can be read by FadeIn</label></li>
</ul>
<h2 id="someday-maybe">Someday, Maybe</h2>
<ul class="task-list">
<li><input type="checkbox" disabled="" />
write and osf2html using <a href="https://fountain.io/scrippets">scrippets</a> approach</li>
<li><input type="checkbox" disabled="" />
add support for Ron Severdia’s Open Screenplay Format 2.1 spec<ul>
<li><label><input type="checkbox" />write and osf2html using <a
href="https://fountain.io/scrippets">scrippets</a> approach</label></li>
<li><label><input type="checkbox" />add support for Ron Severdia’s Open
Screenplay Format 2.1 spec</label>
<ul>
<li>rename divergent structs’ xml defs with 20 and 21 suffix</li>
<li>make sure they are all 20/21 structs are treated as tag “,omitempty”</li>
<li>make sure they are all 20/21 structs are treated as tag
“,omitempty”</li>
<li>duplicate String methods as needed</li>
<li>Parse, ParseFile should work without sniffing using a single struct tree for 1.2, 2.0 or 2.1</li>
<li>Parse, ParseFile should work without sniffing using a single struct
tree for 1.2, 2.0 or 2.1</li>
</ul></li>
</ul>
<h2 id="completed">Completed</h2>
<ul class="task-list">
<li><input type="checkbox" disabled="" checked="" />
String (Fountain style plain text) needs to be formatted correctly…</li>
<li><input type="checkbox" disabled="" checked="" />
Write osf.go, osf_test.go based on <a href="https://sourceforge.net/projects/openscrfmt/">Open Screenplay Format 2.0</a> and in the mode of <a href="https://github.com/rsdoiel/fdx">fdx</a> package</li>
<li><input type="checkbox" disabled="" checked="" />
Write osf2txt</li>
<li><input type="checkbox" disabled="" checked="" />
Write fadein2osf</li>
<li><input type="checkbox" disabled="" checked="" />
Write fadein2txt</li>
<li><input type="checkbox" disabled="" checked="" />
self closing tags should be self closing</li>
<li><input type="checkbox" disabled="" checked="" />
Support parsing .fadein files (i.e. unzip the Fade In file, then parse document.xml)</li>
<li><input type="checkbox" disabled="" checked="" />
Add ParseFile() to osf.go, if file extension is “.fadein” then it should handle the unzipping and and parsing of document.xml as OSF</li>
<li><label><input type="checkbox" checked="" />String (Fountain style
plain text) needs to be formatted correctly…</label></li>
<li><label><input type="checkbox" checked="" />Write osf.go, osf_test.go
based on <a href="https://sourceforge.net/projects/openscrfmt/">Open
Screenplay Format 2.0</a> and in the mode of <a
href="https://github.com/rsdoiel/fdx">fdx</a> package</label></li>
<li><label><input type="checkbox" checked="" />Write
osf2txt</label></li>
<li><label><input type="checkbox" checked="" />Write
fadein2osf</label></li>
<li><label><input type="checkbox" checked="" />Write
fadein2txt</label></li>
<li><label><input type="checkbox" checked="" />self closing tags should
be self closing</label></li>
<li><label><input type="checkbox" checked="" />Support parsing .fadein
files (i.e. unzip the Fade In file, then parse
document.xml)</label></li>
<li><label><input type="checkbox" checked="" />Add ParseFile() to
osf.go, if file extension is “.fadein” then it should handle the
unzipping and and parsing of document.xml as OSF</label></li>
</ul>
<h3 id="reference-links">Reference links</h3>
<ul>
<li><a href="https://fountain.io">Fountain</a></li>
<li><a href="https://sourceforge.net/projects/openscrfmt/">Open Screenplay Format 2.0</a> (the one targeted by osf.go)</li>
<li><a href="https://github.com/severdia/Open-Screenplay-Format">Open Screenplay Format 2.1</a></li>
<li><a href="https://sourceforge.net/projects/openscrfmt/">Open
Screenplay Format 2.0</a> (the one targeted by osf.go)</li>
<li><a href="https://github.com/severdia/Open-Screenplay-Format">Open
Screenplay Format 2.1</a></li>
<li><a href="https://www.fadeinpro.com">Fade In</a></li>
<li><a href="http://www.kenttessman.com/2012/02/open-screenplay-format/">Open Screenplay Format by Kent Tessman</a></li>
<li><a href="https://github.com/azcoppen/screenplay-parser">screenplay-parser</a> - a PHP repo with a really nice README.md discussing format and conversion issues and challenges</li>
<li><a
href="http://www.kenttessman.com/2012/02/open-screenplay-format/">Open
Screenplay Format by Kent Tessman</a></li>
<li><a
href="https://github.com/azcoppen/screenplay-parser">screenplay-parser</a>
- a PHP repo with a really nice README.md discussing format and
conversion issues and challenges</li>
</ul>
</section>

Expand Down
16 changes: 10 additions & 6 deletions about.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<!-- <h1>about</h1> -->

<h1 id="about-this-software">About this software</h1>
<h2 id="osf-0.0.4">osf 0.0.4</h2>
<h2 id="osf-0.0.6">osf 0.0.6</h2>
<h3 id="authors">Authors</h3>
<ul>
<li>Robert Doiel</li>
Expand All @@ -36,15 +36,19 @@ <h3 id="maintainers">Maintainers</h3>
<ul>
<li></li>
</ul>
<p>A library and command line programs for working with FadeIn and Open Screenplay Format (osf) files.</p>
<p>A library and command line programs for working with FadeIn and Open
Screenplay Format (osf) files.</p>
<ul>
<li>License: <a href="https://rsdoiel.github.io/osf/license.html" class="uri">https://rsdoiel.github.io/osf/license.html</a></li>
<li>GitHub: <a href="https://github.com/rsdoiel/osf" class="uri">https://github.com/rsdoiel/osf</a></li>
<li>Issues: <a href="https://github.com/rsdoiel/osf/issues" class="uri">https://github.com/rsdoiel/osf/issues</a></li>
<li>License: <a href="https://rsdoiel.github.io/osf/license.html"
class="uri">https://rsdoiel.github.io/osf/license.html</a></li>
<li>GitHub: <a href="https://github.com/rsdoiel/osf"
class="uri">https://github.com/rsdoiel/osf</a></li>
<li>Issues: <a href="https://github.com/rsdoiel/osf/issues"
class="uri">https://github.com/rsdoiel/osf/issues</a></li>
</ul>
<h3 id="programming-languages">Programming languages</h3>
<ul>
<li>Go</li>
<li>Go &gt;= 1.22</li>
</ul>
</section>

Expand Down
10 changes: 6 additions & 4 deletions about.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@ cff-version: 1.2.0
message: "If you use this software, please cite it as below."
type: software
title: "osf"
abstract: "A library and command line programs for working with FadeIn and Open Screenplay Format (osf) files."
abstract: "A library and command line programs for working with FadeIn
and Open Screenplay Format (osf) files."
authors:
- family-names: Doiel
given-names: Robert
orcid: "https://orcid.org/0000-0003-0900-6903"

repository-code: "https://github.com/rsdoiel/osf"
version: 0.0.5
version: 0.0.6
license-url: "https://rsdoiel.github.io/osf/license.html"
keywords: [ "GitHub", "text markup", "screen play" ]

Expand All @@ -19,7 +20,7 @@ keywords: [ "GitHub", "text markup", "screen play" ]
About this software
===================

## osf 0.0.5
## osf 0.0.6

### Authors

Expand All @@ -30,7 +31,8 @@ About this software

-

A library and command line programs for working with FadeIn and Open Screenplay Format (osf) files.
A library and command line programs for working with FadeIn and Open
Screenplay Format (osf) files.

- License: <https://rsdoiel.github.io/osf/license.html>
- GitHub: <https://github.com/rsdoiel/osf>
Expand Down
6 changes: 3 additions & 3 deletions codemeta.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
"codeRepository": "https://github.com/rsdoiel/osf",
"issueTracker": "https://github.com/rsdoiel/osf/issues",
"license": "https://rsdoiel.github.io/osf/license.html",
"version": "0.0.5",
"version": "0.0.6",
"createdDate": "2017-12-22",
"releaseDate": "2022-08-07",
"modifiedDate": "2024-03-09",
"releaseNotes": "Updated to Go 1.22, added YAML annotations",
"modifiedDate": "2024-03-11",
"releaseNotes": "Updated to Go 1.22, added YAML annotations, fixed bug in YAML mapping",
"author": [
{
"@type": "Person",
Expand Down
23 changes: 12 additions & 11 deletions fadein2osf.1.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,23 +28,24 @@

<p>USAGE: fadein2osf [OPTIONS]</p>
<p>DESCRIPTION</p>
<p>fadein2osf is a command line program that reads an “.fadein” file and write outs a OSF 2.0 XML.</p>
<p>fadein2osf is a command line program that reads an “.fadein” file and
write outs a OSF 2.0 XML.</p>
<p>OPTIONS</p>
<pre><code>-generate-manpage generate man page
-generate-markdown generate Markdown documentation
-h, -help display help
-i, -input set the input filename
-l, -license display license
-nl, -newline add a trailing newline
-o, -output set the output filename
-quiet suppress error messages
-v, -version display version</code></pre>
<pre><code>-generate-manpage generate man page
-generate-markdown generate Markdown documentation
-h, -help display help
-i, -input set the input filename
-l, -license display license
-nl, -newline add a trailing newline
-o, -output set the output filename
-quiet suppress error messages
-v, -version display version</code></pre>
<p>EXAMPLES</p>
<p>Convert <em>screenplay.fadein</em> into <em>screenplay.osf</em>.</p>
<pre><code>fadein2osf -i screenplay.fadein -o screenplay.osf</code></pre>
<p>Display converted OSF 2.0 XML to the console</p>
<pre><code>fadein2osf -i screenplay.fadein</code></pre>
<p>fadein2osf 0.0.4</p>
<p>fadein2osf 0.0.6</p>
</section>

<footer>
Expand Down
2 changes: 1 addition & 1 deletion fadein2osf.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@ Display converted OSF 2.0 XML to the console

fadein2osf -i screenplay.fadein

fadein2osf 0.0.5
fadein2osf 0.0.6
24 changes: 16 additions & 8 deletions fadein2osf.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="language" content="EN">
<title>R. S. Doiel, Software Engineer/Analyst - fadein2osf(1) fadein2osf user manual</title>
<title>R. S. Doiel, Software Engineer/Analyst - fadein2osf(1)
fadein2osf user manual</title>

<link rel="stylesheet" type="text/css" href="/printfonts/print.css" media="print" />
<link rel="stylesheet" type="text/css" href="/webfonts/fonts.css" media="screen" />
Expand Down Expand Up @@ -31,26 +32,33 @@ <h1 id="name">NAME</h1>
<h1 id="synopsis">SYNOPSIS</h1>
<p>fadein2osf <a href="#options">OPTIONS</a></p>
<h1 id="description">DESCRIPTION</h1>
<p>fadein2osf is a command line program that reads an “.fadein” file and write outs a OSF 2.0 XML.</p>
<p>fadein2osf is a command line program that reads an “.fadein” file and
write outs a OSF 2.0 XML.</p>
<h1 id="options">OPTIONS</h1>
<dl>
<dt>-h, -help</dt>
<dd>display help
<dd>
display help
</dd>
<dt>-i, -input</dt>
<dd>set the input filename
<dd>
set the input filename
</dd>
<dt>-l, -license</dt>
<dd>display license
<dd>
display license
</dd>
<dt>-nl, -newline</dt>
<dd>add a trailing newline
<dd>
add a trailing newline
</dd>
<dt>-o, -output</dt>
<dd>set the output filename
<dd>
set the output filename
</dd>
<dt>-quiet</dt>
<dd>suppress error messages
<dd>
suppress error messages
</dd>
</dl>
<p>-v, -version: display version</p>
Expand Down
19 changes: 16 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,23 @@
<section>
<!-- <h1>README</h1> -->

<p><a href="https://www.repostatus.org/#inactive"><img src="https://www.repostatus.org/badges/latest/inactive.svg" alt="Project Status: Inactive – The project has reached a stable, usable state but is no longer being actively developed; support/maintenance will be provided as time allows." /></a></p>
<p><a href="https://www.repostatus.org/#inactive"><img
src="https://www.repostatus.org/badges/latest/inactive.svg"
alt="Project Status: Inactive – The project has reached a stable, usable state but is no longer being actively developed; support/maintenance will be provided as time allows." /></a></p>
<h1 id="osf">OSF</h1>
<h2 id="a-go-package-support-open-screenplay-format">A Go package support Open Screenplay Format</h2>
<p>Experimental Golang package for working with Open Screenplay Format 2.0. Open Screenplay Format is an open XML format for screenplays and the native format (when zipped) for <a href="https://www.fadeinpro.com">Fade In</a>. Two package will include several demonstration command line programs <a href="docs/osf2txt.html">osf2txt</a> which will read a osf file and render plain text in a <a href="https://fountain.io">Fountain</a> like format, <a href="docs/txt2osf.html">txt2osf</a> which takes a plain text file and attempts to render an OSF 2.0 document and finally <a href="docs/fadein2osf">fadein2osf</a> which will read in a Fade In file and write out Open Screenplay Format.</p>
<h2 id="a-go-package-support-open-screenplay-format">A Go package
support Open Screenplay Format</h2>
<p>Experimental Golang package for working with Open Screenplay Format
2.0. Open Screenplay Format is an open XML format for screenplays and
the native format (when zipped) for <a
href="https://www.fadeinpro.com">Fade In</a>. Two package will include
several demonstration command line programs <a
href="docs/osf2txt.html">osf2txt</a> which will read a osf file and
render plain text in a <a href="https://fountain.io">Fountain</a> like
format, <a href="docs/txt2osf.html">txt2osf</a> which takes a plain text
file and attempts to render an OSF 2.0 document and finally <a
href="docs/fadein2osf">fadein2osf</a> which will read in a Fade In file
and write out Open Screenplay Format.</p>
</section>

<footer>
Expand Down
2 changes: 1 addition & 1 deletion installer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Set the package name and version to install
#
PACKAGE="osf"
VERSION="0.0.5"
VERSION="0.0.6"
GIT_GROUP="rsdoiel"
RELEASE="https://github.com/$GIT_GROUP/$PACKAGE/releases/tag/v$VERSION"

Expand Down
Loading

0 comments on commit 5970930

Please sign in to comment.