halation 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +2 -14
- data/bin/halation +0 -0
- data/doc/Halation.html +13 -11
- data/doc/Halation/Coerce.html +83 -11
- data/doc/Halation/Config.html +20 -18
- data/doc/Halation/Config/Camera.html +20 -22
- data/doc/Halation/Config/Lens.html +16 -18
- data/doc/Halation/Engine.html +16 -18
- data/doc/Halation/ExifToolImage.html +11 -14
- data/doc/Halation/Roll.html +17 -19
- data/doc/Halation/Roll/Frame.html +22 -30
- data/doc/Halation/Script.html +11 -15
- data/doc/_index.html +8 -10
- data/doc/class_list.html +2 -2
- data/doc/css/style.css +51 -29
- data/doc/file.LICENSE.html +12 -26
- data/doc/file.README.html +64 -111
- data/doc/file_list.html +2 -2
- data/doc/frames.html +2 -2
- data/doc/index.html +64 -111
- data/doc/js/app.js +78 -7
- data/doc/method_list.html +71 -63
- data/doc/top-level-namespace.html +7 -9
- data/lib/halation/coerce.rb +7 -2
- data/lib/halation/engine.rb +1 -1
- data/lib/halation/roll.rb +2 -2
- data/lib/halation/roll/frame.rb +2 -2
- data/lib/halation/version.rb +1 -1
- metadata +5 -8
- data/doc/Halation/AttrHelpers.html +0 -288
data/doc/Halation/Script.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
Class: Halation::Script
|
8
8
|
|
9
|
-
— Documentation by YARD 0.
|
9
|
+
— Documentation by YARD 0.9.25
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="../css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="../css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "Halation::Script";
|
19
19
|
relpath = '../';
|
20
20
|
</script>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div class="nav_wrap">
|
31
|
-
<iframe id="nav" src="../class_list.html"></iframe>
|
31
|
+
<iframe id="nav" src="../class_list.html?1"></iframe>
|
32
32
|
<div id="resizer"></div>
|
33
33
|
</div>
|
34
34
|
|
@@ -59,8 +59,6 @@
|
|
59
59
|
<div class="clear"></div>
|
60
60
|
</div>
|
61
61
|
|
62
|
-
<iframe id="search_frame" src="../class_list.html"></iframe>
|
63
|
-
|
64
62
|
<div id="content"><h1>Class: Halation::Script
|
65
63
|
|
66
64
|
|
@@ -194,8 +192,7 @@
|
|
194
192
|
</h3><div class="docstring">
|
195
193
|
<div class="discussion">
|
196
194
|
|
197
|
-
<p>Generate a new roll.yml file. Copies “~/.halation/templates/roll.yml” if it
|
198
|
-
exists, otherwise it uses a default template.</p>
|
195
|
+
<p>Generate a new roll.yml file. Copies “~/.halation/templates/roll.yml” if it exists, otherwise it uses a default template.</p>
|
199
196
|
|
200
197
|
|
201
198
|
</div>
|
@@ -336,8 +333,7 @@ exists, otherwise it uses a default template.</p>
|
|
336
333
|
</span>
|
337
334
|
|
338
335
|
— <div class='inline'>
|
339
|
-
<p>Don't exit the program after calling a handler that would normally
|
340
|
-
exit. Used for unit testing.</p>
|
336
|
+
<p>Don't exit the program after calling a handler that would normally exit. Used for unit testing.</p>
|
341
337
|
</div>
|
342
338
|
|
343
339
|
</li>
|
@@ -478,13 +474,13 @@ exit. Used for unit testing.</p>
|
|
478
474
|
<span class='kw'>end</span>
|
479
475
|
|
480
476
|
<span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_on'>on</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>-v</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>--version</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Print the version information</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='kw'>do</span>
|
481
|
-
<span class='id identifier rubyid_output_stream'>output_stream</span><span class='period'>.</span><span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>halation </span><span class='embexpr_beg'>#{</span><span class='const'>Halation</span><span class='op'>::</span><span class='const'>VERSION</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
477
|
+
<span class='id identifier rubyid_output_stream'>output_stream</span><span class='period'>.</span><span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>halation </span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="../Halation.html" title="Halation (module)">Halation</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Halation.html#VERSION-constant" title="Halation::VERSION (constant)">VERSION</a></span></span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
482
478
|
<span class='id identifier rubyid_run_engine'>run_engine</span> <span class='op'>=</span> <span class='kw'>false</span>
|
483
479
|
<span class='id identifier rubyid_exit'>exit</span> <span class='kw'>unless</span> <span class='id identifier rubyid_skip_exit'>skip_exit</span>
|
484
480
|
<span class='kw'>end</span>
|
485
481
|
<span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_parse!'>parse!</span><span class='lparen'>(</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
|
486
482
|
|
487
|
-
<span class='const'>Halation</span><span class='op'>::</span><span class='const'>Engine</span><span class='period'>.</span><span class='id identifier rubyid_run'>run</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_run_engine'>run_engine</span>
|
483
|
+
<span class='const'><span class='object_link'><a href="../Halation.html" title="Halation (module)">Halation</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Engine.html" title="Halation::Engine (class)">Engine</a></span></span><span class='period'>.</span><span class='id identifier rubyid_run'><span class='object_link'><a href="Engine.html#run-class_method" title="Halation::Engine.run (method)">run</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_run_engine'>run_engine</span>
|
488
484
|
<span class='kw'>end</span></pre>
|
489
485
|
</td>
|
490
486
|
</tr>
|
@@ -496,9 +492,9 @@ exit. Used for unit testing.</p>
|
|
496
492
|
</div>
|
497
493
|
|
498
494
|
<div id="footer">
|
499
|
-
Generated on
|
495
|
+
Generated on Sun May 10 15:34:34 2020 by
|
500
496
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
501
|
-
0.
|
497
|
+
0.9.25 (ruby-2.7.1).
|
502
498
|
</div>
|
503
499
|
|
504
500
|
</div>
|
data/doc/_index.html
CHANGED
@@ -4,15 +4,15 @@
|
|
4
4
|
<meta charset="utf-8">
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
6
|
<title>
|
7
|
-
Documentation by YARD 0.
|
7
|
+
Documentation by YARD 0.9.25
|
8
8
|
|
9
9
|
</title>
|
10
10
|
|
11
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
11
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
14
14
|
|
15
|
-
<script type="text/javascript"
|
15
|
+
<script type="text/javascript">
|
16
16
|
pathId = null;
|
17
17
|
relpath = '';
|
18
18
|
</script>
|
@@ -26,7 +26,7 @@
|
|
26
26
|
</head>
|
27
27
|
<body>
|
28
28
|
<div class="nav_wrap">
|
29
|
-
<iframe id="nav" src="class_list.html"></iframe>
|
29
|
+
<iframe id="nav" src="class_list.html?1"></iframe>
|
30
30
|
<div id="resizer"></div>
|
31
31
|
</div>
|
32
32
|
|
@@ -52,9 +52,7 @@
|
|
52
52
|
<div class="clear"></div>
|
53
53
|
</div>
|
54
54
|
|
55
|
-
<
|
56
|
-
|
57
|
-
<div id="content"><h1 class="noborder title">Documentation by YARD 0.8.7.6</h1>
|
55
|
+
<div id="content"><h1 class="noborder title">Documentation by YARD 0.9.25</h1>
|
58
56
|
<div id="listing">
|
59
57
|
<h1 class="alphaindex">Alphabetic Index</h1>
|
60
58
|
|
@@ -213,9 +211,9 @@
|
|
213
211
|
</div>
|
214
212
|
|
215
213
|
<div id="footer">
|
216
|
-
Generated on
|
214
|
+
Generated on Sun May 10 15:34:32 2020 by
|
217
215
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
218
|
-
0.
|
216
|
+
0.9.25 (ruby-2.7.1).
|
219
217
|
</div>
|
220
218
|
|
221
219
|
</div>
|
data/doc/class_list.html
CHANGED
@@ -4,9 +4,9 @@
|
|
4
4
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
5
5
|
<meta charset="utf-8" />
|
6
6
|
|
7
|
-
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen"
|
7
|
+
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
|
8
8
|
|
9
|
-
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen"
|
9
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
|
10
10
|
|
11
11
|
|
12
12
|
|
data/doc/css/style.css
CHANGED
@@ -55,14 +55,30 @@ body {
|
|
55
55
|
}
|
56
56
|
|
57
57
|
@media (max-width: 920px) {
|
58
|
-
.nav_wrap {
|
58
|
+
.nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; }
|
59
|
+
#resizer { display: none; }
|
60
|
+
#nav {
|
61
|
+
z-index: 9999;
|
62
|
+
background: #fff;
|
63
|
+
display: none;
|
64
|
+
position: absolute;
|
65
|
+
top: 40px;
|
66
|
+
right: 12px;
|
67
|
+
width: 500px;
|
68
|
+
max-width: 80%;
|
69
|
+
height: 80%;
|
70
|
+
overflow-y: scroll;
|
71
|
+
border: 1px solid #999;
|
72
|
+
border-collapse: collapse;
|
73
|
+
box-shadow: -7px 5px 25px #aaa;
|
74
|
+
border-radius: 2px;
|
75
|
+
}
|
59
76
|
}
|
60
77
|
|
61
78
|
@media (min-width: 920px) {
|
62
79
|
body { height: 100%; overflow: hidden; }
|
63
80
|
#main { height: 100%; overflow: auto; }
|
64
81
|
#search { display: none; }
|
65
|
-
#search_frame { display: none; }
|
66
82
|
}
|
67
83
|
|
68
84
|
#main img { max-width: 100%; }
|
@@ -108,6 +124,9 @@ h2 small a {
|
|
108
124
|
}
|
109
125
|
.rdoc-term { padding-right: 25px; font-weight: bold; }
|
110
126
|
.rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
|
127
|
+
.summary_desc pre.code .object_link a, .docstring pre.code .object_link a {
|
128
|
+
padding: 0px; background: inherit; color: inherit; border-radius: inherit;
|
129
|
+
}
|
111
130
|
|
112
131
|
/* style for <table> */
|
113
132
|
#filecontents table, .docstring table { border-collapse: collapse; }
|
@@ -215,10 +234,18 @@ p.inherited {
|
|
215
234
|
|
216
235
|
ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
|
217
236
|
.index_inline_list { padding-left: 0; font-size: 1.1em; }
|
218
|
-
|
237
|
+
|
238
|
+
.index_inline_list li {
|
239
|
+
list-style: none;
|
240
|
+
display: inline-block;
|
241
|
+
padding: 0 12px;
|
242
|
+
line-height: 30px;
|
243
|
+
margin-bottom: 5px;
|
244
|
+
}
|
219
245
|
|
220
246
|
dl.constants { margin-left: 10px; }
|
221
247
|
dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
|
248
|
+
dl.constants.compact dt { display: inline-block; font-weight: normal }
|
222
249
|
dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
|
223
250
|
dl.constants .docstring .note:first-child { margin-top: 5px; }
|
224
251
|
|
@@ -300,13 +327,9 @@ ul.summary a, ul.summary a:visited {
|
|
300
327
|
text-decoration: none; font-size: 1.1em;
|
301
328
|
}
|
302
329
|
ul.summary li { margin-bottom: 5px; }
|
303
|
-
.
|
304
|
-
padding: 4px 8px;
|
305
|
-
background: #f8f8f8;
|
306
|
-
border: 1px solid #f0f0f0;
|
307
|
-
border-radius: 5px;
|
308
|
-
}
|
330
|
+
.summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; }
|
309
331
|
.summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; }
|
332
|
+
.summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; }
|
310
333
|
ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
|
311
334
|
ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
|
312
335
|
#content .summary_signature:hover a,
|
@@ -378,23 +401,6 @@ ul.fullTree li:last-child { padding-bottom: 0; }
|
|
378
401
|
li.r1 { background: #f0f0f0; }
|
379
402
|
li.r2 { background: #fafafa; }
|
380
403
|
|
381
|
-
#search_frame {
|
382
|
-
z-index: 9999;
|
383
|
-
background: #fff;
|
384
|
-
display: none;
|
385
|
-
position: absolute;
|
386
|
-
top: 40px;
|
387
|
-
right: 12px;
|
388
|
-
width: 500px;
|
389
|
-
max-width: 80%;
|
390
|
-
height: 80%;
|
391
|
-
overflow-y: scroll;
|
392
|
-
border: 1px solid #999;
|
393
|
-
border-collapse: collapse;
|
394
|
-
box-shadow: -7px 5px 25px #aaa;
|
395
|
-
border-radius: 2px;
|
396
|
-
}
|
397
|
-
|
398
404
|
#content ul.summary li.deprecated .summary_signature a,
|
399
405
|
#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
|
400
406
|
|
@@ -416,8 +422,8 @@ li.r2 { background: #fafafa; }
|
|
416
422
|
#toc ol { padding-left: 1.8em; }
|
417
423
|
#toc li { font-size: 1.1em; line-height: 1.7em; }
|
418
424
|
#toc > ol > li { font-size: 1.1em; font-weight: bold; }
|
419
|
-
#toc ol > ol { font-size: 0.9em; }
|
420
|
-
#toc ol ol > ol { padding-left: 2.3em; }
|
425
|
+
#toc ol > li > ol { font-size: 0.9em; }
|
426
|
+
#toc ol ol > li > ol { padding-left: 2.3em; }
|
421
427
|
#toc ol + li { margin-top: 0.3em; }
|
422
428
|
#toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; }
|
423
429
|
#toc.hidden:hover { background: #fafafa; }
|
@@ -452,7 +458,10 @@ pre.code .info.file { color: #555; }
|
|
452
458
|
pre.code .val { color: #036A07; }
|
453
459
|
pre.code .tstring_content,
|
454
460
|
pre.code .heredoc_beg, pre.code .heredoc_end,
|
455
|
-
pre.code .qwords_beg, pre.code .qwords_end,
|
461
|
+
pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep,
|
462
|
+
pre.code .words_beg, pre.code .words_end, pre.code .words_sep,
|
463
|
+
pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep,
|
464
|
+
pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep,
|
456
465
|
pre.code .tstring, pre.code .dstring { color: #036A07; }
|
457
466
|
pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
|
458
467
|
pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
|
@@ -472,3 +481,16 @@ pre.code .rubyid_backref,
|
|
472
481
|
pre.code .rubyid_nth_ref { color: #6D79DE; }
|
473
482
|
pre.code .regexp, .dregexp { color: #036A07; }
|
474
483
|
pre.code a { border-bottom: 1px dotted #bbf; }
|
484
|
+
/* inline code */
|
485
|
+
*:not(pre) > code {
|
486
|
+
padding: 1px 3px 1px 3px;
|
487
|
+
border: 1px solid #E1E1E8;
|
488
|
+
background: #F7F7F9;
|
489
|
+
border-radius: 4px;
|
490
|
+
}
|
491
|
+
|
492
|
+
/* Color fix for links */
|
493
|
+
#content .summary_desc pre.code .id > .object_link a, /* identifier */
|
494
|
+
#content .docstring pre.code .id > .object_link a { color: #0085FF; }
|
495
|
+
#content .summary_desc pre.code .const > .object_link a, /* constant */
|
496
|
+
#content .docstring pre.code .const > .object_link a { color: #585CF6; }
|
data/doc/file.LICENSE.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
File: LICENSE
|
8
8
|
|
9
|
-
— Documentation by YARD 0.
|
9
|
+
— Documentation by YARD 0.9.25
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "LICENSE";
|
19
19
|
relpath = '';
|
20
20
|
</script>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div class="nav_wrap">
|
31
|
-
<iframe id="nav" src="file_list.html"></iframe>
|
31
|
+
<iframe id="nav" src="file_list.html?1"></iframe>
|
32
32
|
<div id="resizer"></div>
|
33
33
|
</div>
|
34
34
|
|
@@ -57,36 +57,22 @@
|
|
57
57
|
<div class="clear"></div>
|
58
58
|
</div>
|
59
59
|
|
60
|
-
<iframe id="search_frame" src="file_list.html"></iframe>
|
61
|
-
|
62
60
|
<div id="content"><div id='filecontents'>
|
63
61
|
<p>The MIT License (MIT)</p>
|
64
62
|
|
65
63
|
<p>Copyright © 2016 Alex McLain</p>
|
66
64
|
|
67
|
-
<p>Permission is hereby granted, free of charge, to any person obtaining a
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
Software is furnished to do so, subject to the following conditions:</p>
|
73
|
-
|
74
|
-
<p>The above copyright notice and this permission notice shall be included in
|
75
|
-
all copies or substantial portions of the Software.</p>
|
76
|
-
|
77
|
-
<p>THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
78
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
79
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
80
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
81
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
82
|
-
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
83
|
-
DEALINGS IN THE SOFTWARE.</p>
|
65
|
+
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
|
66
|
+
|
67
|
+
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
|
68
|
+
|
69
|
+
<p>THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
|
84
70
|
</div></div>
|
85
71
|
|
86
72
|
<div id="footer">
|
87
|
-
Generated on
|
73
|
+
Generated on Sun May 10 15:34:33 2020 by
|
88
74
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
89
|
-
0.
|
75
|
+
0.9.25 (ruby-2.7.1).
|
90
76
|
</div>
|
91
77
|
|
92
78
|
</div>
|
data/doc/file.README.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
File: README
|
8
8
|
|
9
|
-
— Documentation by YARD 0.
|
9
|
+
— Documentation by YARD 0.9.25
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "README";
|
19
19
|
relpath = '';
|
20
20
|
</script>
|
@@ -28,7 +28,7 @@
|
|
28
28
|
</head>
|
29
29
|
<body>
|
30
30
|
<div class="nav_wrap">
|
31
|
-
<iframe id="nav" src="file_list.html"></iframe>
|
31
|
+
<iframe id="nav" src="file_list.html?1"></iframe>
|
32
32
|
<div id="resizer"></div>
|
33
33
|
</div>
|
34
34
|
|
@@ -57,65 +57,55 @@
|
|
57
57
|
<div class="clear"></div>
|
58
58
|
</div>
|
59
59
|
|
60
|
-
<
|
60
|
+
<div id="content"><div id='filecontents'>
|
61
|
+
<h1 id="label-Halation">Halation</h1>
|
61
62
|
|
62
|
-
|
63
|
-
|
64
|
-
<p><a href="https://badge.fury.io/rb/halation"><img src="https://badge.fury.io/rb/halation.svg" alt="Gem Version"></a>
|
65
|
-
<a href="https://coveralls.io/github/amclain/halation?branch=master"><img src="https://coveralls.io/repos/github/amclain/halation/badge.svg?branch=master" alt="Coverage Status"></a>
|
66
|
-
<a href="http://www.rubydoc.info/gems/halation"><img src="https://img.shields.io/badge/docs-api-blue.svg" alt="API Documentation"></a>
|
67
|
-
<a href="https://github.com/amclain/halation/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-yellowgreen.svg" alt="MIT License"></a></p>
|
63
|
+
<p><a href="https://badge.fury.io/rb/halation"><img src="https://badge.fury.io/rb/halation.svg"></a> <a href="https://coveralls.io/github/amclain/halation?branch=master"><img src="https://coveralls.io/repos/github/amclain/halation/badge.svg?branch=master"></a> <a href="http://www.rubydoc.info/gems/halation"><img src="https://img.shields.io/badge/docs-api-blue.svg"></a> <a href="https://github.com/amclain/halation/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-yellowgreen.svg"></a></p>
|
68
64
|
|
69
65
|
<p>Add Exif metadata to film photographs.</p>
|
70
66
|
|
71
|
-
<h2>
|
72
|
-
|
73
|
-
<p>Any bugs and feature requests should be reported on the GitHub issue tracker:</p>
|
74
|
-
|
75
|
-
<p><a href="https://github.com/amclain/halation/issues">https://github.com/amclain/halation/issues</a></p>
|
76
|
-
|
77
|
-
<p><strong>Pull requests are preferred via GitHub.</strong></p>
|
78
|
-
|
79
|
-
<p>Mercurial users can use <a href="http://hg-git.github.io/">Hg-Git</a> to interact with
|
80
|
-
GitHub repositories.</p>
|
81
|
-
|
82
|
-
<h2>Installation</h2>
|
67
|
+
<h2 id="label-Installation">Installation</h2>
|
83
68
|
|
84
69
|
<p>Halation is available as a Ruby gem.</p>
|
85
|
-
|
86
|
-
<
|
87
|
-
<li
|
88
|
-
|
89
|
-
|
90
|
-
<
|
91
|
-
|
92
|
-
<
|
93
|
-
|
94
|
-
</
|
95
|
-
|
96
|
-
<
|
97
|
-
|
98
|
-
</
|
99
|
-
|
100
|
-
<
|
70
|
+
<ol><li>
|
71
|
+
<p>Install <a href="https://www.ruby-lang.org">Ruby</a> 2.1 or higher.</p>
|
72
|
+
<ul><li>
|
73
|
+
<p>Windows: Use <a href="http://rubyinstaller.org/downloads/">RubyInstaller</a>.</p>
|
74
|
+
</li><li>
|
75
|
+
<p>Mac: Use <a href="https://www.ruby-lang.org/en/documentation/installation/#homebrew">homebrew</a>.</p>
|
76
|
+
</li><li>
|
77
|
+
<p>Linux: Use <a href="https://github.com/asdf-vm/asdf">asdf</a> or <a href="https://github.com/sstephenson/rbenv#basic-github-checkout">rbenv</a>.</p>
|
78
|
+
</li><li>
|
79
|
+
<p><a href="https://www.ruby-lang.org/en/documentation/installation">Additional installation instructions</a></p>
|
80
|
+
</li><li>
|
81
|
+
<p>Windows: Use <a href="http://rubyinstaller.org/downloads/">RubyInstaller</a>.</p>
|
82
|
+
</li><li>
|
83
|
+
<p>Mac: Use <a href="https://www.ruby-lang.org/en/documentation/installation/#homebrew">homebrew</a>.</p>
|
84
|
+
</li><li>
|
85
|
+
<p>Linux: Use <a href="https://github.com/asdf-vm/asdf">asdf</a> or <a href="https://github.com/sstephenson/rbenv#basic-github-checkout">rbenv</a>.</p>
|
86
|
+
</li><li>
|
87
|
+
<p><a href="https://www.ruby-lang.org/en/documentation/installation">Additional installation instructions</a></p>
|
88
|
+
</li></ul>
|
89
|
+
</li><li>
|
90
|
+
<p>Install <a href="http://www.sno.phy.queensu.ca/~phil/exiftool/">ExifTool</a>.</p>
|
91
|
+
</li><li>
|
92
|
+
<p>Open the <a href="http://www.addictivetips.com/windows-tips/windows-7-elevated-command-prompt-in-context-menu/">command line</a> and type:</p>
|
93
|
+
</li></ol>
|
94
|
+
|
95
|
+
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_gem'>gem</span> <span class='id identifier rubyid_install'>install</span> <span class='id identifier rubyid_halation'>halation</span>
|
101
96
|
</code></pre>
|
102
97
|
|
103
|
-
<h2>Configuration</h2>
|
98
|
+
<h2 id="label-Configuration">Configuration</h2>
|
104
99
|
|
105
|
-
<p>Halation stores its global configuration data in <code>.halation</code> in the system's
|
106
|
-
user directory. This is typically <code>~/.halation</code> on Mac and *nix-based systems,
|
107
|
-
or <code>C:\Users\.halation</code> on Windows.</p>
|
100
|
+
<p>Halation stores its global configuration data in <code>.halation</code> in the system's user directory. This is typically <code>~/.halation</code> on Mac and *nix-based systems, or <code>C:\Users\.halation</code> on Windows.</p>
|
108
101
|
|
109
102
|
<blockquote>
|
110
|
-
<p>Halation uses the <a href="http://www.yaml.org/spec/1.2/spec.html#Preview">YAML syntax</a>
|
111
|
-
for its configuration files.</p>
|
103
|
+
<p>Halation uses the <a href="http://www.yaml.org/spec/1.2/spec.html#Preview">YAML syntax</a> for its configuration files.</p>
|
112
104
|
</blockquote>
|
113
105
|
|
114
|
-
<p>By default Halation uses a global configuration file, <code>~/.halation/config.yml</code>.
|
115
|
-
This is where your generic settings are stored, like your name, copyright info,
|
116
|
-
and information about your cameras.</p>
|
106
|
+
<p>By default Halation uses a global configuration file, <code>~/.halation/config.yml</code>. This is where your generic settings are stored, like your name, copyright info, and information about your cameras.</p>
|
117
107
|
|
118
|
-
<pre class="code
|
108
|
+
<pre class="code ruby"><code class="ruby"># Example config.yml
|
119
109
|
---
|
120
110
|
artist: "Example User"
|
121
111
|
copyright: "2016 Example User"
|
@@ -134,36 +124,19 @@ cameras:
|
|
134
124
|
model: "Z180mm f/4.5W-N"
|
135
125
|
focal_length: 180
|
136
126
|
- tag: 250
|
137
|
-
model: "
|
127
|
+
model: "Z250mm f/4.5W"
|
138
128
|
focal_length: 250
|
139
129
|
</code></pre>
|
140
130
|
|
141
|
-
<h2>Tags</h2>
|
142
|
-
|
143
|
-
<p>Tags are user-defined values that serve as a quick and simple way to reference
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
of time (months, years), you're bound to make mistakes in the spelling of the
|
151
|
-
model number. This is important because any software that catalogs images based
|
152
|
-
on Exif data (Lightroom, Flickr) doesn't know how to deal with these
|
153
|
-
inconsistencies. This means <code>Z110mm f/2.8W</code> and <code>Z110mm f/2.8 W</code> will be
|
154
|
-
considered two different lenses by the software (did you see the difference?),
|
155
|
-
even though we as humans understand they're the same thing. If you try to filter
|
156
|
-
by lens in Lightroom, some of the images will be under one spelling and some
|
157
|
-
will be under the other, even though they were both shot with the same
|
158
|
-
110mm lens.</p>
|
159
|
-
|
160
|
-
<p>Tags solve this problem by letting us define all of the complex,
|
161
|
-
infrequently-changing data in one place. We can then reference that complex
|
162
|
-
data by its <code>tag</code>. For example, if we have a 65mm lens and a 110mm lens we can
|
163
|
-
define their information once and tag them as <code>65</code> and <code>110</code> respectively (we
|
164
|
-
choose the tag names).</p>
|
165
|
-
|
166
|
-
<pre class="code yaml"><code class="yaml">lenses:
|
131
|
+
<h2 id="label-Tags">Tags</h2>
|
132
|
+
|
133
|
+
<p>Tags are user-defined values that serve as a quick and simple way to reference complex information.</p>
|
134
|
+
|
135
|
+
<p>Why is this important? Let's say you shot a roll of ten images with several different lenses. It would be cumbersome to have to specify a model number like <code>Z110mm f/2.8W</code> (and all the other lens information) on each of the frames. Even more importantly, if you're processing batches of images over a long period of time (months, years), you're bound to make mistakes in the spelling of the model number. This is important because any software that catalogs images based on Exif data (Lightroom, Flickr) doesn't know how to deal with these inconsistencies. This means <code>Z110mm f/2.8W</code> and <code>Z110mm f/2.8 W</code> will be considered two different lenses by the software (did you see the difference?), even though we as humans understand they're the same thing. If you try to filter by lens in Lightroom, some of the images will be under one spelling and some will be under the other, even though they were both shot with the same 110mm lens.</p>
|
136
|
+
|
137
|
+
<p>Tags solve this problem by letting us define all of the complex, infrequently-changing data in one place. We can then reference that complex data by its <code>tag</code>. For example, if we have a 65mm lens and a 110mm lens we can define their information once and tag them as <code>65</code> and <code>110</code> respectively (we choose the tag names).</p>
|
138
|
+
|
139
|
+
<pre class="code ruby"><code class="ruby">lenses:
|
167
140
|
- tag: 65
|
168
141
|
model: "M65mm f/4L-A"
|
169
142
|
focal_length: 65
|
@@ -172,11 +145,9 @@ choose the tag names).</p>
|
|
172
145
|
focal_length: 110
|
173
146
|
</code></pre>
|
174
147
|
|
175
|
-
<p>Now when we want to reference which lens was used when capturing a particular
|
176
|
-
frame, all we have to do is specify the tag and Halation will fill in the
|
177
|
-
correct Exif data for that lens when the image file is processed.</p>
|
148
|
+
<p>Now when we want to reference which lens was used when capturing a particular frame, all we have to do is specify the tag and Halation will fill in the correct Exif data for that lens when the image file is processed.</p>
|
178
149
|
|
179
|
-
<pre class="code
|
150
|
+
<pre class="code ruby"><code class="ruby">frames:
|
180
151
|
- number: 1
|
181
152
|
lens: 110
|
182
153
|
- number: 2
|
@@ -185,25 +156,18 @@ correct Exif data for that lens when the image file is processed.</p>
|
|
185
156
|
lens: 110
|
186
157
|
</code></pre>
|
187
158
|
|
188
|
-
<h2>Processing A Roll</h2>
|
159
|
+
<h2 id="label-Processing+A+Roll">Processing A Roll</h2>
|
189
160
|
|
190
|
-
<p>Halation requires all of the image files for a roll of film to be in the same
|
191
|
-
directory. The images should be named in ascending alphabetical order, with the
|
192
|
-
first frame of the roll at the start of the list and the last frame at the end.
|
193
|
-
This is typically the default when scanners save files. Halation will scan for
|
194
|
-
tiff files (<code>.tif</code>, <code>.tiff</code>), which is the ideal format, as well as jpeg files
|
195
|
-
(<code>.jpg</code>, <code>.jpeg</code>).</p>
|
161
|
+
<p>Halation requires all of the image files for a roll of film to be in the same directory. The images should be named in ascending alphabetical order, with the first frame of the roll at the start of the list and the last frame at the end. This is typically the default when scanners save files. Halation will scan for tiff files (<code>.tif</code>, <code>.tiff</code>), which is the ideal format, as well as jpeg files (<code>.jpg</code>, <code>.jpeg</code>).</p>
|
196
162
|
|
197
|
-
<p>This directory should also contain a <code>roll.yml</code> file, which specifies the data
|
198
|
-
for each frame (image file) on the roll of film. A new <code>roll.yml</code> file can be
|
199
|
-
generated in the current directory with the following command:</p>
|
163
|
+
<p>This directory should also contain a <code>roll.yml</code> file, which specifies the data for each frame (image file) on the roll of film. A new <code>roll.yml</code> file can be generated in the current directory with the following command:</p>
|
200
164
|
|
201
|
-
<pre class="code
|
165
|
+
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_halation'>halation</span> <span class='op'>-</span><span class='op'>-</span><span class='id identifier rubyid_new'>new</span><span class='op'>-</span><span class='id identifier rubyid_roll'>roll</span>
|
202
166
|
</code></pre>
|
203
167
|
|
204
168
|
<p>The data for the roll can then be entered into the file:</p>
|
205
169
|
|
206
|
-
<pre class="code
|
170
|
+
<pre class="code ruby"><code class="ruby"># Example roll.yml
|
207
171
|
---
|
208
172
|
date: "2016-01-01"
|
209
173
|
camera: "rz67"
|
@@ -249,35 +213,24 @@ frames:
|
|
249
213
|
flash: yes
|
250
214
|
</code></pre>
|
251
215
|
|
252
|
-
<p>Default values can be set at the beginning of the file so that these settings
|
253
|
-
don't have to be specified for each frame. For example, the roll of film has
|
254
|
-
one ISO speed for all of the frames, so this can be specified at the top instead
|
255
|
-
of for each individual frame.</p>
|
216
|
+
<p>Default values can be set at the beginning of the file so that these settings don't have to be specified for each frame. For example, the roll of film has one ISO speed for all of the frames, so this can be specified at the top instead of for each individual frame.</p>
|
256
217
|
|
257
|
-
<p>Values like the date are a little different, because maybe the whole roll was
|
258
|
-
shot during the same day, or maybe it was shot over the course of several days.
|
259
|
-
This is where the <code>roll.yml</code> file provides flexibility. Specifying <code>date</code> at the
|
260
|
-
beginning of the file will make it the default date for all of the frames on the
|
261
|
-
roll. If not all of the frames were shot on the same day, <code>date</code> can then be
|
262
|
-
specified for each of the frames that have a different date (<code>9</code> and <code>10</code> in
|
263
|
-
the example above). This concept works for most of the values.</p>
|
218
|
+
<p>Values like the date are a little different, because maybe the whole roll was shot during the same day, or maybe it was shot over the course of several days. This is where the <code>roll.yml</code> file provides flexibility. Specifying <code>date</code> at the beginning of the file will make it the default date for all of the frames on the roll. If not all of the frames were shot on the same day, <code>date</code> can then be specified for each of the frames that have a different date (<code>9</code> and <code>10</code> in the example above). This concept works for most of the values.</p>
|
264
219
|
|
265
220
|
<blockquote>
|
266
|
-
<p>A complete list of keywords are available in the <a href="http://www.rubydoc.info/gems/halation">Halation API documentation</a>,
|
267
|
-
as well as in the <a href="https://github.com/amclain/halation/tree/master/spec/samples">sample files</a>.</p>
|
221
|
+
<p>A complete list of keywords are available in the <a href="http://www.rubydoc.info/gems/halation">Halation API documentation</a>, as well as in the <a href="https://github.com/amclain/halation/tree/master/spec/samples">sample files</a>.</p>
|
268
222
|
</blockquote>
|
269
223
|
|
270
|
-
<p>After all of the necessary values are entered into <code>roll.yml</code>, the images can
|
271
|
-
be processed by running the following command:</p>
|
224
|
+
<p>After all of the necessary values are entered into <code>roll.yml</code>, the images can be processed by running the following command:</p>
|
272
225
|
|
273
|
-
<pre class="code
|
226
|
+
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_halation'>halation</span>
|
274
227
|
</code></pre>
|
275
228
|
</div></div>
|
276
229
|
|
277
230
|
<div id="footer">
|
278
|
-
Generated on
|
231
|
+
Generated on Sun May 10 15:34:33 2020 by
|
279
232
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
280
|
-
0.
|
233
|
+
0.9.25 (ruby-2.7.1).
|
281
234
|
</div>
|
282
235
|
|
283
236
|
</div>
|