build index.html for all winners
Updated manifest as per recent file changes. Updated winner `.winner.json` to reflect the manifest changes. Added [bin/all_run.sh](bin/all_run.sh) tool to run a command over all winning entries. These tools had slight improvements in the help usage message: * bin/gen-author.sh VERSION="1.3.1 2024-01-16" * bin/gen-inventory.sh VERSION="1.0.1 2024-01-16" * bin/pandoc_wrapper.sh VERSION="1.3.1 2024-01-16" * bin/subst.default.sh VERSION="1.1.1 2024-01-16" * bin/subst.winner-index.sh VERSION="1.1.1 2024-01-16" The `bin/readme2index.sh` tool was improved so that if the `index.html` file exists and the tool forms the exact same content, then the file `index.html` file is NOT touched. * bin/readme2index.sh VERSION="1.1 2024-01-16" We used the following command to generate `index.html` files for all winning entries: ```sh bin/all_run.sh -v 3 bin/readme2index.sh ``` NOTE: We have not (yet) built HTML files above the winner directory level (e.g., no year level nor top level HTML), nor have be built non-index HTML files for winners. NOTE: By default we are running `pandoc(1)` with: ``` --fail-if-warnings=true ``` This means that any problems with markdown to HTML generates an error. This is done to be sure that the HTML conversion is clean. We had to fix the following `README.md` files: * `2000/rince/README.md` The reference [^2] was never used. We made a guess that [^2] applies to the same spot as [^1]. Perhaps there is a better spot where [^2] applies? NOTE: For every reference, there MUST be some place where that reference is used. * 2012/vik/README.md The string "$...$" is assumed to be a TeX encoded string. NOTE: Every "$..$" needs to be backslashed as in "\$..\$". * 2018/burton1/README.md The reference [2] was duplicated. We changed the second [2] to [3]. NOTE: Every reference needs to have a unique number. * 2020/carlini/README.md The string "$...$" is assumed to be a TeX encoded string. NOTE: Every "$..$" needs to be backslashed as in "\$..\$". We also found 2 errors in the `author/author_handle.json` file set: * author/Anonymous_2001.json The `author/Anonymous_2001.json` file was missing. * author/Jari_Arkko.json The winner ID for `1989_jar.1` had a typo.
This commit is contained in:
1 parent
893cd915b6
commit
c1466f5165
350 files changed
+95242
-4217
No files matched your search
+459
-13
@@ -1,4 +1,6 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- START: two lines up starts content from: inc/top.default.html -->
|
||||
<!-- -->
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||||
@@ -6,27 +8,471 @@
|
||||
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<!-- -->
|
||||
<!-- file: 2000/jarijyrki/index.html created by: fake.gen_index.sh version: 1.0.5 2023-10-31 -->
|
||||
<html lang="en">
|
||||
<!-- END: this line ends content from: inc/top.default.html -->
|
||||
<!-- -->
|
||||
<!-- This file was formed by the tool: bin/readme2index.sh version: 1.1 2024-01-16 -->
|
||||
<!-- -->
|
||||
<!-- START: this line starts content from: inc/head.default.html -->
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>2000 jarijyrki</title>
|
||||
<meta name="description" content="IOCCC year: 2000 IOCCC winner: jarijyrki winner index page">
|
||||
<meta name="keywords" content="IOCCC,2000,jarijyrki,winner index page">
|
||||
<link rel="stylesheet" href="/temp-test-ioccc/ioccc.css">
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||
<title>2000/jarijyrki</title>
|
||||
<meta name="description" content="2000 IOCCC winner jarijyrki">
|
||||
<meta name="keywords" content="IOCCC, 2000, IOCCC 2000, IOCCC winner, jarijyrki">
|
||||
</head>
|
||||
|
||||
<!-- END: this line ends content from: inc/head.default.html -->
|
||||
<!-- START: this line starts content from: inc/body.default.html -->
|
||||
|
||||
<body>
|
||||
|
||||
<h1>2000 jarijyrki</h1>
|
||||
<!-- END: this line ends content from: inc/body.default.html -->
|
||||
<!-- START: this line starts content from: inc/header.default.html -->
|
||||
|
||||
<p>XXX - fake content until readme2index is working - XXX</p>
|
||||
<div class="header">
|
||||
<img src="/temp-test-ioccc/png/ioccc.png" alt="IOCCC image by Matt Zucker" width=300 height=110>
|
||||
<h1>The International Obfuscated C Code Contest</h1>
|
||||
<h2>2000/jarijyrki</h2>
|
||||
</div>
|
||||
|
||||
<hr style="width:50%;text-align:left;margin-left:0">
|
||||
<!-- END: this line ends content from: inc/header.default.html -->
|
||||
<!-- START: this line starts content from: inc/topnav.mid.html -->
|
||||
|
||||
<!-- Start Nu Html Checker -->
|
||||
<p><a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2000%2Fjarijyrki%2Findex.html">Nu Html check https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/index.html</a></p>
|
||||
<!-- End Nu Html Checker -->
|
||||
<div class="topnav">
|
||||
<a class="Left" href="../dlowe/index.html">← dlowe</a>
|
||||
<a class="Left" href="../index.html">↑ 2000 ↑</a>
|
||||
<a class="Left" href="../natori/index.html">natori →</a>
|
||||
<a class="Right" href="#inventory">Inventory</a>
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/topnav.mid.html -->
|
||||
<!-- START: this line starts content from: inc/begin-row.default.html -->
|
||||
|
||||
<div class="row">
|
||||
|
||||
<!-- END: this line ends content from: inc/begin-row.default.html -->
|
||||
<!-- START: this line starts content from: inc/begin-leftcolumn.default.html -->
|
||||
|
||||
<div class="leftcolumn">
|
||||
|
||||
<!-- END: this line ends content from: inc/begin-leftcolumn.default.html -->
|
||||
<!-- START: this line starts content from: inc/sidenav.default.html -->
|
||||
|
||||
<div class="sidenav">
|
||||
<a href="#content">Jump to contents</a>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sidenav">
|
||||
<a href="/temp-test-ioccc/index.html">IOCCC Home</a>
|
||||
<a href="/temp-test-ioccc/years.html">Winning Entries</a>
|
||||
<a href="/temp-test-ioccc/winners.html">People who have won</a>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sidenav">
|
||||
<a href="/temp-test-ioccc/news.html">IOCCC News</a>
|
||||
<a href="/temp-test-ioccc/faq.html#submit">How to enter the IOCCC</a>
|
||||
<a href="/temp-test-ioccc/faq.html">FAQ</a>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sidenav">
|
||||
<a href="/temp-test-ioccc/bugs.html">Bugs & (mis)features</a>
|
||||
<a href="/temp-test-ioccc/faq.html#fix_a_winner">Fixing IOCCC winners</a>
|
||||
<a href="/temp-test-ioccc/faq.html#fix_web_site">Fixing the web site</a>
|
||||
<a href="/temp-test-ioccc/faq.html#fix_author">Fixing winner info</a>
|
||||
<a href="/temp-test-ioccc/thanks-for-help.html">Thanks for the help</a>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sidenav">
|
||||
<a href="/temp-test-ioccc/judges.html">The IOCCC Judges</a>
|
||||
<a href="/temp-test-ioccc/contact.html">Contacting the IOCCC</a>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sidenav">
|
||||
<a href="#top">Jump to top</a>
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/sidenav.default.html -->
|
||||
<!-- START: this line starts content from: inc/end-leftcolumn.default.html -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/end-leftcolumn.default.html -->
|
||||
<!-- START: this line starts content from: inc/begin-rightcolumn.default.html -->
|
||||
|
||||
<div class="rightcolumn">
|
||||
|
||||
<!-- END: this line ends content from: inc/begin-rightcolumn.default.html -->
|
||||
<!-- START: this line starts content from: inc/before-content.default.html -->
|
||||
|
||||
<a name="content"></a>
|
||||
|
||||
<!-- END: this line ends content from: inc/before-content.default.html -->
|
||||
<!-- START: this line starts content generated by: bin/gen-author.sh -->
|
||||
|
||||
<p><a name="author"><strong>Authors:</strong></a> <br><br>Name: <a
|
||||
href="/temp-test-ioccc/winners.html#Jari_Arkko">Jari Arkko</a><br>
|
||||
Location: <a href="/temp-test-ioccc/location.html#SE">SE</a>
|
||||
<br><br>Name: <a
|
||||
href="/temp-test-ioccc/winners.html#Jyrki_Holopainen">Jyrki
|
||||
Holopainen</a><br> Location: <a
|
||||
href="/temp-test-ioccc/location.html#FI">FI</a></p>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/gen-author.sh -->
|
||||
<h2 id="to-build">To build:</h2>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span></span></code></pre></div>
|
||||
<p>You will need X11 header files and libraries installed to build this
|
||||
program.</p>
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> infile.info <span class="op">></span> outfile.info</span></code></pre></div>
|
||||
<p>You will need a system capable of displaying the results of X Window
|
||||
programs.</p>
|
||||
<h2 id="try">Try:</h2>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> finance.sheet <span class="op">></span> myedits.info</span></code></pre></div>
|
||||
<p>Then click on cell <code>C3</code> and type in the following:</p>
|
||||
<pre><code>C5 C6 C7 @</code></pre>
|
||||
<p>Click on cell <code>D4</code> and type in the following:</p>
|
||||
<pre><code>C5 C6 C7 !</code></pre>
|
||||
<p>Hit <code>ESC</code>.</p>
|
||||
<p>Now try running:</p>
|
||||
<pre><code>./jarijyrki < myedits.info</code></pre>
|
||||
<p>And observe that it matches what you had in the previous run!</p>
|
||||
<p>NOTE: changing the dimension parameters (see the authors’ remarks)
|
||||
renders existing spreadsheet files unusable.</p>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>This entry is one of those that makes you wonder why some commercial
|
||||
software needs tens to hundreds of <strike>megabytes</strike>gigabytes
|
||||
to install! This entry does not simply do the basics, it includes
|
||||
graphing features. All this program needs now is a <a
|
||||
href="1998/banks/README.md">flight simulator</a>!</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<h3 id="overview">1. OVERVIEW</h3>
|
||||
<p>This program is an X-Windows based spreadsheet program. The main
|
||||
functions it supports are:</p>
|
||||
<ul>
|
||||
<li>Text cells</li>
|
||||
<li>Numeric cells</li>
|
||||
<li>Arithmetic operations: <code>+</code> <code>-</code> <code>*</code>
|
||||
<code>/</code></li>
|
||||
<li>Pie charts</li>
|
||||
<li>Histograms</li>
|
||||
<li>Cell editing</li>
|
||||
<li>Formula line</li>
|
||||
<li>Dynamic recalculation</li>
|
||||
<li>Error detection</li>
|
||||
<li>Recursion detection</li>
|
||||
<li>Movement within the spreadsheet with arrow keys</li>
|
||||
<li>Movement within the spreadsheet with mouse</li>
|
||||
<li>Scrolling</li>
|
||||
<li>Loading and saving spreadsheets</li>
|
||||
<li>Visual style configuration</li>
|
||||
</ul>
|
||||
<h3 id="usage-instructions">2. USAGE INSTRUCTIONS</h3>
|
||||
<h4 id="quick-guide">2.1. Quick Guide</h4>
|
||||
<h5 id="starting">Starting</h5>
|
||||
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> finance.sheet <span class="op">></span> myedits.info</span></code></pre></div>
|
||||
<h5 id="stopping">Stopping</h5>
|
||||
<p>Use the ESC key.</p>
|
||||
<h5 id="movement">Movement</h5>
|
||||
<p>Click the mouse or use the arrow keys.</p>
|
||||
<h5 id="editing">Editing</h5>
|
||||
<p>The currently selected cell is always in the edit state. Press any
|
||||
key to add a character at the end of the formula; press backspace to
|
||||
delete the last one.</p>
|
||||
<h5 id="formulas">Formulas</h5>
|
||||
<pre><code>123.45
|
||||
A1 A2 +
|
||||
B1 B2 -
|
||||
C1 C2 *
|
||||
D1 D2 /</code></pre>
|
||||
<h5 id="pie-charts">Pie charts</h5>
|
||||
<pre><code>A1 A2 A3 ...</code></pre>
|
||||
<p>Finish the formula with <code>@</code> to create the pie chart.</p>
|
||||
<h5 id="histograms">Histograms</h5>
|
||||
<pre><code>A1 A2 A3 ...</code></pre>
|
||||
<p>Finish the formula with <code>!</code> to create the histogram.</p>
|
||||
<h4 id="starting-and-loading-spreadsheets">2.2. Starting and Loading
|
||||
Spreadsheets</h4>
|
||||
<p>To start the spreadsheet program with an existing spreadsheet, for
|
||||
instance <a href="finance.sheet">finance.sheet</a>, use the following
|
||||
command line:</p>
|
||||
<div class="sourceCode" id="cb11"><pre
|
||||
class="sourceCode sh"><code class="sourceCode bash"><span id="cb11-1"><a href="#cb11-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> finance.sheet</span></code></pre></div>
|
||||
<p>The file <a href="finance.sheet">finance.sheet</a> has been provided
|
||||
as an example. This file contains a set of financial numbers and two
|
||||
graphical entities - a pie chart and a histogram - based on them. We
|
||||
recommend starting the use of the program from this file, as a way to
|
||||
study and learn the formula language supported by the program.</p>
|
||||
<p>To start the program with an empty sheet, use</p>
|
||||
<div class="sourceCode" id="cb12"><pre
|
||||
class="sourceCode sh"><code class="sourceCode bash"><span id="cb12-1"><a href="#cb12-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> /dev/null</span></code></pre></div>
|
||||
<p>Alternatively, <code>/dev/zero</code> could be used but that may not
|
||||
exist on all systems.</p>
|
||||
<h4 id="exiting-and-saving-spreadsheets">2.3. Exiting and Saving
|
||||
Spreadsheets</h4>
|
||||
<p>Normally the user obviously wants to edit the spreadsheet. After the
|
||||
spreadsheet program finishes, it outputs the edited spreadsheet to the
|
||||
standard output. Hence, when the spreadsheet window has come up, you’ve
|
||||
made your changes, and you press the ESC key the program finishes. To
|
||||
save the results in a file, the following typical command line would be
|
||||
used:</p>
|
||||
<div class="sourceCode" id="cb13"><pre
|
||||
class="sourceCode sh"><code class="sourceCode bash"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./jarijyrki</span> <span class="op"><</span> finance.sheet <span class="op">></span> myedits.info</span></code></pre></div>
|
||||
<h4 id="visual-overview">2.4. Visual Overview</h4>
|
||||
<p>On top of the window the Formula Area shows the formula (or text) of
|
||||
the currently selected cell. The program starts with <code>A1</code> as
|
||||
being the current cell. Below the Formula Area is the Column Letters
|
||||
Area: <code>A</code>, <code>B</code>, and so on. Correspondingly, on the
|
||||
left side of the window is the Row Numbers Area: <code>1</code>,
|
||||
<code>2</code>, and so on. The rest of the window is dedicated to the
|
||||
actual spreadsheet cells.</p>
|
||||
<p>The example spreadsheet, <a href="finance.sheet">finance.sheet</a>,
|
||||
provided with this program contains two sets of numbers in the visible
|
||||
area of the spreadsheet. The top set of numbers forms the
|
||||
product-by-product turnover breakdown of an imaginary company. Below it
|
||||
is the yearly development of the company profits. On the top right
|
||||
corner is a pie chart showing the turnover breakdown in graphical form,
|
||||
and on the bottom right corner is a histogram showing the yearly
|
||||
development. If you scroll the window you can see additional data from
|
||||
the spreadsheet.</p>
|
||||
<h4 id="movement-and-scrolling">2.5. Movement and Scrolling</h4>
|
||||
<p>Use arrow keys to move left, right, up, and down among the cells. You
|
||||
may also click the mouse on a cell to cause it to be activated as the
|
||||
current one.</p>
|
||||
<p>Note that it is not possible to move around the formula; the formula
|
||||
can only be edited from its end by adding or removing characters.</p>
|
||||
<p>Going beyond the borders of the window results in scrolling the
|
||||
current view. It is not possible to go up from the first row or left
|
||||
from the first column; but it is possible to wrap back to start from the
|
||||
last row and last column.</p>
|
||||
<h4 id="formulas-1">2.6. Formulas</h4>
|
||||
<p>The spreadsheet formulas operate on a stack. Operands of an operation
|
||||
(e.g. plus) are first pushed to the stack and then the operation is
|
||||
performed. If a formula on a cell produces <em>exactly</em> one result
|
||||
then that is shown in the cell. Otherwise, the formula is interpreted as
|
||||
a string and shown as it is.</p>
|
||||
<p>An example of a simple formula, simply specifying a number is</p>
|
||||
<pre><code>123.50</code></pre>
|
||||
<p>Another simple formula refers to a cell:</p>
|
||||
<pre><code>A1</code></pre>
|
||||
<p>This particular example formula referred to the first cell of the
|
||||
first row in the spreadsheet. Arithmetic operations require both
|
||||
arguments:</p>
|
||||
<pre><code>A1 A2 +
|
||||
B1 B2 *
|
||||
C1 C2 -
|
||||
D1 D2 /</code></pre>
|
||||
<p>More complex formulae can be constructed by combining these simple
|
||||
ones:</p>
|
||||
<pre><code>A1 A2 + 2 *</code></pre>
|
||||
<p>This example calculates the sum of the cells <code>A1</code> and
|
||||
<code>A2</code>, and then multiplies the result by two.</p>
|
||||
<p>The currently selected cell is always in a state where it can be
|
||||
edited. Press any key to add a character at the end of the formula;
|
||||
press backspace to delete the last character. Any resulting
|
||||
recalculations are immediately visible. (Note how much nicer this
|
||||
feature is as you get used to it, compared to the behaviour of certain
|
||||
commercial spreadsheet programs.)</p>
|
||||
<h4 id="graphical-formulas">2.7. Graphical Formulas</h4>
|
||||
<p>The program supports two types of graphical representations of the
|
||||
data in the cells: pie charts and histograms. The pie chart can consist
|
||||
of any number of slices, and is constructed by putting the pie amounts
|
||||
in stack and using the <code>@</code> operator. The program
|
||||
automatically computes the relative size of the slices.</p>
|
||||
<pre><code>A1 A2 A3 A4 @</code></pre>
|
||||
<p>This example would draw a pie chart of four cells, <code>A1</code> to
|
||||
<code>A4</code>. The pie formula is shown above the pie for
|
||||
reference.</p>
|
||||
<p>The histograms are drawn in a similar manner, by using the
|
||||
<code>!</code> operator:</p>
|
||||
<pre><code>A1 A2 A3 A3 !</code></pre>
|
||||
<h4 id="errors-in-formulas">2.8. Errors in Formulas</h4>
|
||||
<p>The program detects recursive reference attempts, references cells
|
||||
not containing a numerical value, attempts to define formulas with zero,
|
||||
two, or more results remaining on the stack, and syntax errors of
|
||||
formulas. Note that typically as the user types in a formula, it toggles
|
||||
between valid and invalid forms dynamically as all single character
|
||||
changes are immediately taken in account. This is not dangerous, just
|
||||
complete the formula and view the results.</p>
|
||||
<p>Errors are signalled by showing the formula on a cell instead of the
|
||||
numerical value supposedly returned by it.</p>
|
||||
<p>Division by zero results in an IEEE Inf number.</p>
|
||||
<h4 id="compilation-parameters-and-configuration">2.9. Compilation
|
||||
Parameters and Configuration</h4>
|
||||
<p>This section explains the meaning and rationale for the compile time
|
||||
parameters:</p>
|
||||
<hr />
|
||||
<pre><code>-DC=XK_Up
|
||||
-DL=XK_Down
|
||||
-DO=XK_Left
|
||||
-DV=XK_Right
|
||||
-DR=XK_Escape
|
||||
-D_=XK_BackSpace</code></pre>
|
||||
<p>These definitions can be used to change the user interface of the
|
||||
program with respect to special keys. The first four define the movement
|
||||
operations and the latter two define the program termination and
|
||||
character deletion keys. Typical modifications to these parameters
|
||||
include changing character deletion to the key the user is most familiar
|
||||
with, which could also be <code>XK_Delete</code>. <code>XK_Escape</code>
|
||||
might be better in some cases as one of the function keys. Likewise for
|
||||
the arrow keys.</p>
|
||||
<pre><code>-DU=40</code></pre>
|
||||
<p>This parameter defines the maximum dimensions of the stored and
|
||||
handled spreadsheet (but see section 4.4 for a warning about changing
|
||||
this without thinking about the consequences!).</p>
|
||||
<pre><code>-DT=98</code></pre>
|
||||
<p>This parameter defines the maximum length of a formula in one cell.
|
||||
Note the warning in section 4.4.</p>
|
||||
<pre><code>-Dz="(T+1)*U*U"</code></pre>
|
||||
<p>Defines the number of bytes in a spreadsheet file. The number is
|
||||
automatically adjusted when the spreadsheet size parameters are changed.
|
||||
Note the warning in section 4.4.</p>
|
||||
<pre><code>-DQ=80
|
||||
-DS=20</code></pre>
|
||||
<p>These two parameters define the visual dimensions of a cell. Changing
|
||||
these may be necessary on your system if the default font sizes differ
|
||||
from those in the systems we’ve tested the program with. <code>S</code>
|
||||
also defines the size of the left (<code>x1</code>) and top margins
|
||||
(<code>x2</code>).</p>
|
||||
<pre><code>-DN=10</code></pre>
|
||||
<p>This is the x-indentation of text inside a cell. Changing this may be
|
||||
necessary to suit other font sizes and different X environments.</p>
|
||||
<pre><code>-DB=5</code></pre>
|
||||
<p>This is the y-indentation of text inside a cell. Changing this may be
|
||||
necessary to suit other font sizes and different X environments.</p>
|
||||
<pre><code>-DG=23</code></pre>
|
||||
<p>This parameter is the number of cell rows visible at one time.</p>
|
||||
<pre><code>-Dp=7</code></pre>
|
||||
<p>This parameter is one smaller than the number of cells columns
|
||||
visible at one time.</p>
|
||||
<pre><code>-DM="((p+1)*Q)+S"
|
||||
-DH="(G*S)+S+S"</code></pre>
|
||||
<p>These parameters are the window x and y sizes of the spreadsheet
|
||||
program window. With these definitions, they are automatically
|
||||
reflecting the at-one-time-visible cell row/column amounts. Hence, we
|
||||
recommend changing the <code>G</code> and <code>p</code> parameters if
|
||||
you want to change the window size in normal cases. Experimentation with
|
||||
<code>M</code> and <code>H</code> can be used to get other types of
|
||||
effect such as adding a margin also at the bottom of the window.</p>
|
||||
<h3 id="implementation">3. IMPLEMENTATION</h3>
|
||||
<p>It’s better to just read the code. But note the use of stack in the
|
||||
implementation of <code>@</code> and <code>!</code> operators, and note
|
||||
the use of <code>*#i</code> in one of the macros (can you see why?).
|
||||
Extreme compression has been the key in writing this program. With
|
||||
compression comes the use of ASCII code numbers instead of character
|
||||
constants and so on. (This particular obfuscation is not really a
|
||||
desirable one as it is not completely portable. But it certainly was a
|
||||
necessary one.)</p>
|
||||
<p>What does <code>i(=)</code> do or does it do anything? Why?</p>
|
||||
<h3 id="warnings-and-caveats">4. WARNINGS AND CAVEATS</h3>
|
||||
<h4 id="x11-paths-in-compilation">4.1. X11 Paths in Compilation</h4>
|
||||
<p>The given Makefile may have to be edited to insert correct library
|
||||
and include file path names.</p>
|
||||
<h4 id="font-sizes">4.2. Font Sizes</h4>
|
||||
<p>We’ve tested the program with a limited amount of X servers. It is
|
||||
possible that other systems use default font sizes or other parameters
|
||||
that cause the visual looks to be different or perhaps even unusable; if
|
||||
this happens, changing compile-time parameters explained in section 2.8
|
||||
might help.</p>
|
||||
<h4 id="screen-sizes">4.3. Screen Sizes</h4>
|
||||
<p>The size of the window as it comes up - a parameter as defined in
|
||||
compile-time - has been set suitable for a small laptop screen. Larger
|
||||
screens may benefit from setting these parameters higher. Smaller
|
||||
screens require changing the parameters so that all of the window
|
||||
becomes visible.</p>
|
||||
<h4 id="spreadsheet-dimension-changes">4.4. Spreadsheet Dimension
|
||||
Changes</h4>
|
||||
<p>The size of the read, manipulated, and stored spreadsheets is defined
|
||||
by a compile time parameter. However, changing this parameter is not
|
||||
entirely trivial. The following constraints apply:</p>
|
||||
<ul>
|
||||
<li><p>Horizontal (alphabet) dimension handling will always be A to Z
|
||||
regardless of the actual allocated memory area.</p></li>
|
||||
<li><p>Any change in the dimension parameter renders existing
|
||||
spreadsheet files unusable.</p></li>
|
||||
</ul>
|
||||
<h4 id="ascii-reliance">4.5. ASCII Reliance</h4>
|
||||
<p>The software relies on running on ASCII-based code system. Why?
|
||||
Because <code>32</code> is shorter than <code>' '</code>.</p>
|
||||
<h4 id="command-line-single-character-defines">4.6. Command Line Single
|
||||
Character Defines</h4>
|
||||
<p>The use of single character (e.g. <code>G</code> or <code>p</code>)
|
||||
for a <code>-D</code> option might break certain systems, if those
|
||||
characters are used in the included X header files in certain kinds of
|
||||
places. If this happens, you may move the offending character to a new
|
||||
name by exchanging it on the command line and in the program with
|
||||
another character. Note that there are <em>no</em> free characters in
|
||||
the program currently.</p>
|
||||
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0
|
||||
License:</h2>
|
||||
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights
|
||||
Reserved. You are free to share and adapt this file under the terms of
|
||||
this license:</p>
|
||||
<pre><code>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</code></pre>
|
||||
<p>For more information, see:
|
||||
https://creativecommons.org/licenses/by-sa/4.0/</p>
|
||||
<!-- START: this line starts content generated by: bin/gen-inventory.sh -->
|
||||
|
||||
<h1 id="inventory-for-2000jarijyrki"><a name="inventory"></a>Inventory
|
||||
for 2000/jarijyrki</h1>
|
||||
<h2 id="primary-files">Primary files</h2>
|
||||
<ul>
|
||||
<li><a href="index.html">index.html</a> - winner home page</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/jarijyrki.c">jarijyrki.c</a>
|
||||
- winning source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/Makefile">Makefile</a>
|
||||
- winner Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/jarijyrki.orig.c">jarijyrki.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a href="2000_jarijyrki.tar.bz2">2000_jarijyrki.tar.bz2</a> -
|
||||
download winning source</li>
|
||||
</ul>
|
||||
<h2 id="secondary-files">Secondary files</h2>
|
||||
<ul>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/.gitignore">.gitignore</a>
|
||||
- list of files that should not be committed under git</li>
|
||||
<li><a href=".path">.path</a> - directory path from top directory</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/.winner.json">.winner.json</a>
|
||||
- description of winner in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/jarijyrki/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="finance.sheet">finance.sheet</a> - spreadsheet</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/gen-inventory.sh -->
|
||||
<!-- START: this line starts content from: inc/after-content.default.html -->
|
||||
|
||||
<!-- END: this line ends content from: inc/after-content.default.html -->
|
||||
<!-- START: this line starts content from: inc/end-rightcolumn.default.html -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/end-rightcolumn.default.html -->
|
||||
<!-- START: this line starts content from: inc/end-row.default.html -->
|
||||
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/end-row.default.html -->
|
||||
<!-- START: this line starts content from: inc/footer.default.html -->
|
||||
|
||||
<div class="footer">
|
||||
<hr>
|
||||
<h2>Coda</h2>
|
||||
<p><a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2000%2Fjarijyrki%2Findex.html">Nu HTML check this web page</a></p>
|
||||
<p><a href="#top">Jump to top</a> <a href="#content">Jump to Content</a> <a href="#inventory">Jump to Inventory</a></p>
|
||||
</div>
|
||||
|
||||
<!-- END: this line ends content from: inc/footer.default.html -->
|
||||
<!-- START: this line starts content from: inc/bottom.default.html -->
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<!-- END: this line ends content from: inc/bottom.default.html -->
|
||||
Reference in new issue
Block a user