Commit Graph

770 Commits

Author SHA1 Message Date
Marcin Kulik
0620b685bf Add the embedding docs 2013-10-14 21:10:12 +02:00
Marcin Kulik
7e5af6ed56 Favor uname over user_agent when accepting upload 2013-10-13 12:29:30 +02:00
Marcin Kulik
f86734bf50 Revert "Favor uname over user_agent"
This reverts commit 97931ceaed.
2013-10-13 12:28:58 +02:00
Marcin Kulik
97931ceaed Favor uname over user_agent 2013-10-13 11:51:41 +02:00
Marcin Kulik
012736304e Add support to the embed script for specifying the playback speed 2013-10-13 11:40:15 +02:00
Marcin Kulik
39ea1778dd Fix shape of the play button in embedded widget under FF 2013-10-12 19:02:24 +02:00
Marcin Kulik
90954c03b6 Add support to embed script for making the terminal font 2x bigger 2013-10-12 16:34:31 +02:00
Marcin Kulik
f689595446 Fix origin check for hosts with non 80 port 2013-10-12 16:26:23 +02:00
Marcin Kulik
8c9b580367 Remove unneeded sass imports 2013-10-12 14:53:46 +02:00
Marcin Kulik
2913c04570 Add ability to start playback in widget via postMessage 2013-10-12 13:24:48 +02:00
Marcin Kulik
01d6026dd1 Add FAQ page 2013-10-12 00:20:42 +02:00
Marcin Kulik
8eb0c910e7 Update "options" page 2013-10-11 20:48:11 +02:00
Marcin Kulik
d74ead2263 Store client's user agent on Asciicast record 2013-10-11 20:44:49 +02:00
Marcin Kulik
e4cb9c0657 New installation instructions 2013-10-06 13:50:17 +02:00
Marcin Kulik
bb9e492390 Words 2013-10-06 13:02:37 +02:00
Marcin Kulik
d1b4d6eabd Make sure progress indicator value is never larger than 100 2013-10-04 18:45:52 +02:00
Marcin Kulik
a43311aeba Update installation instructions for OSX 2013-10-04 12:10:08 +02:00
Marcin Kulik
405e2a7a9d Update installation instructions 2013-10-03 19:22:36 +02:00
Marcin Kulik
d71da5b369 Move asciicast attributes preparation to AsciicastAttributes 2013-09-25 21:42:59 +02:00
Marcin Kulik
f3ecd376d7 Update updated_at on all claimed asciicasts 2013-09-25 21:42:59 +02:00
Marcin Kulik
32a2f44eb6 Move user token creation/assignment to a service object 2013-09-25 21:42:59 +02:00
Marcin Kulik
b08ffd48b4 Make the ViewCounter a controller dependency in the form of a private method 2013-09-25 21:42:40 +02:00
Marcin Kulik
f02daa9069 BrushPresenter -> BrushDecorator 2013-09-24 12:31:18 +02:00
Marcin Kulik
681558074a Update brew install URL to the working one 2013-09-24 11:08:15 +02:00
Marcin Kulik
0350f908a9 Move TimingParser to services 2013-09-23 21:21:07 +02:00
Marcin Kulik
438e962a5a Convert docs to slim 2013-09-23 21:05:33 +02:00
Marcin Kulik
8efb95252e Remove unused template for FAQ page 2013-09-23 19:24:41 +02:00
Marcin Kulik
83a8976746 Remove unused assets 2013-09-23 19:13:06 +02:00
Marcin Kulik
0634f52c99 Change all occurrences of old project name to the new one 2013-09-23 19:05:36 +02:00
Marcin Kulik
5c80bf21f1 Don't display cursor when it's invisible... obviously 2013-09-23 11:27:27 +02:00
Marcin Kulik
e15828b56a Bring back cursor blinking 2013-09-23 11:09:25 +02:00
Marcin Kulik
3c4ac3666e Update copy & code to use the new name 2013-09-22 14:07:42 +02:00
Marcin Kulik
9dad3840fa Use yajl for parsing terminal snapshots 2013-09-22 12:25:34 +02:00
Marcin Kulik
e3678da97a Remove Oj - it leaks like a little puppy 2013-09-22 11:18:49 +02:00
Marcin Kulik
ee636bf958 Update the player to use backend-generated JSON frames 2013-09-21 13:05:13 +02:00
Marcin Kulik
a1cd6ca2ae Bring on the terminal.c! 2013-09-21 13:05:13 +02:00
Marcin Kulik
82ff7148a9 Make sure the preview snapshot always has requested height 2013-09-21 13:05:12 +02:00
Marcin Kulik
f15f2e11a5 Avoid making a copy of feed data string 2013-09-21 13:05:12 +02:00
Marcin Kulik
b3da1c0656 Don't crash when stdout data is shorter than expected 2013-09-21 13:05:12 +02:00
Marcin Kulik
79f8eaf2ed Fix display of reversed characters in the thumbnails and the preview 2013-09-21 13:05:12 +02:00
Marcin Kulik
82fa03863d Adjust Snapshot#crop to work on already optimized lines 2013-09-21 13:05:12 +02:00
Marcin Kulik
ff153fff1a Make Terminal return already optimized snapshot 2013-09-20 23:05:34 +02:00
Marcin Kulik
0e2c1784c6 Use terminal binary as a base for Terminal 2013-09-20 23:05:33 +02:00
Marcin Kulik
e537c1b78a Only release terminal if it is not nil 2013-09-14 13:13:58 +02:00
Marcin Kulik
e862acedb7 Animation frames generation on the backend 2013-09-10 21:29:17 +02:00
Marcin Kulik
bc6e1ddc3d Make implementation of Stdout more readable 2013-09-02 21:54:19 +02:00
Marcin Kulik
9e152c3172 Sanitize all characters coming from TSM::Screen#draw
It happens that libtsm's screen_draw returns a character that can't be
properly encoded as utf-8. As what we get is only meant to be displayed
and not interpreted we can replace these invalid characters with a
questio mark, which is a common practice for printing invalid chars.
2013-08-29 15:10:46 +02:00
Marcin Kulik
26801d207f Make Asciicast use BufferedStdout instead of Stdout 2013-08-28 16:56:40 +02:00
Marcin Kulik
c3fc452b91 Make Grid#crop easier to read 2013-08-28 16:22:59 +02:00
Marcin Kulik
731fb11e8b Simplify Grid#trailing_empty_lines implementation 2013-08-28 16:21:31 +02:00
Marcin Kulik
b47fa27968 Refactor Snapshot to use Grid under the hood 2013-08-27 20:31:31 +02:00
Marcin Kulik
d324200b01 Add BufferedStdout class whose #each yields at 60 hz tops 2013-08-27 20:31:27 +02:00
Marcin Kulik
c775bc8b06 Use less spans for thumbnail rendering 2013-08-26 11:02:32 +02:00
Marcin Kulik
31a880b7aa Simplify Snapshot and its presenter 2013-08-25 20:49:23 +02:00
Marcin Kulik
34b39d0db3 Simplify the structure returned by Terminal#snapshot
Each screen character is in its own, separate cell now. In addition the char
attributes don't include attributes that are "falsy".
2013-08-25 17:41:04 +02:00
Marcin Kulik
065e2cbc30 Split AsciicastStreamer#attributes_for_streaming into smaller methods 2013-08-25 16:45:37 +02:00
Marcin Kulik
731751650c Keep the lines shorther than 80 chars 2013-08-25 16:34:02 +02:00
Marcin Kulik
cdc2f01753 Find or build user from omniauth hash in the middleware 2013-08-19 17:08:13 +02:00
Marcin Kulik
40856933aa Support "blink" attribute in the thumbnails 2013-08-15 23:05:09 +02:00
Marcin Kulik
a53c8de5b9 Pass paths to decompressed stdout files to Stdout 2013-08-15 20:58:41 +02:00
Marcin Kulik
cf3e812e8e Move duration info below the thumbnail 2013-08-15 20:45:51 +02:00
Marcin Kulik
bae9bfdbc7 Use correct singular/plural form for asciicast count 2013-08-14 21:36:17 +02:00
Marcin Kulik
13119b2987 Display asciicast length on thumbnails 2013-08-14 20:40:24 +02:00
Marcin Kulik
44a7b0788e Convert asciicasts#_preview to slim 2013-08-14 19:38:01 +02:00
Marcin Kulik
49a2abe32b Make the "when by whom" font smaller 2013-08-14 19:27:32 +02:00
Marcin Kulik
abe0b77bcd Convert asciicast#index to slim 2013-08-14 18:16:03 +02:00
Marcin Kulik
562cd0ef0b Add "Show more" link on the homepage 2013-08-14 18:11:46 +02:00
Marcin Kulik
5c141003a1 Use "asciicast" over "Asciicast" in UI 2013-08-14 17:32:03 +02:00
Marcin Kulik
2e9b0a4718 Remove boring empty trailing lines from thumbnails 2013-08-14 17:24:36 +02:00
Marcin Kulik
9086aae060 Remove unused code 2013-08-14 16:38:33 +02:00
Marcin Kulik
6acea6da70 Use tilde prefix for nickname only in profile url 2013-08-14 16:30:49 +02:00
Marcin Kulik
4bb61b614f Prevent bots from following Edit links 2013-08-14 13:45:55 +02:00
Marcin Kulik
452f5869cf Fix Bzip2Uploader#decompressed_path for S3 storage 2013-08-13 20:13:09 +02:00
Marcin Kulik
869ca9d896 Adjust JS player to new asciicast JSON representation 2013-08-13 19:52:54 +02:00
Marcin Kulik
6db65b2a6c Serve asciicast as JSON in chunks 2013-08-13 19:52:54 +02:00
Marcin Kulik
7e1b41dfef Code reformating in TimingParser 2013-08-13 19:52:54 +02:00
Marcin Kulik
d21be98a5c Adjust SnapshotCreator to the latest API changes in Terminal and Stdout 2013-08-13 19:52:54 +02:00
Marcin Kulik
0c3494d174 Require explicit call to Terminal#snapshot for getting the snapshot 2013-08-13 19:52:53 +02:00
Marcin Kulik
6c8dbf4173 Make Stdout provide data in chunks 2013-08-13 19:52:53 +02:00
Marcin Kulik
fa4c5e4664 Replace Bzip2Uploader#decompressed with #decompressed_path 2013-08-13 19:52:53 +02:00
Marcin Kulik
40da1823d6 Do not send X-Frame-Options header in embeddable widget action 2013-08-09 08:54:09 +02:00
Marcin Kulik
c22cb1cdcc Get rid of the asciicast comments that are not used anymore 2013-08-08 15:25:27 +02:00
Marcin Kulik
20645271a1 Update models and helpers to use new Rails 4 syntax 2013-08-08 15:08:11 +02:00
Marcin Kulik
3f879e79da Ensure terminal gets released even in case of an exception 2013-08-06 14:00:30 +02:00
Marcin Kulik
0a8cc6ff8a One more attempt to fix the memory leak 2013-08-06 12:50:38 +02:00
Marcin Kulik
4767442875 Make Snapshot#crop return the snapshot of exact requested height 2013-08-06 00:37:37 +02:00
Marcin Kulik
7c9a9842af Adjust color of the play prompt triangle to match color thumbnails better 2013-08-06 00:37:37 +02:00
Marcin Kulik
ade244e5d0 Fix rendering of snapshot in the player 2013-08-06 00:37:37 +02:00
Marcin Kulik
62be399455 Refactor player styles and use them for snapshots 2013-08-06 00:37:36 +02:00
Marcin Kulik
5ecf209a53 Add some TODO comments 2013-08-06 00:37:36 +02:00
Marcin Kulik
7d5a544650 Generate thumbnails from JSON snapshot via Snapshot/SnaphotPresenter 2013-08-06 00:37:36 +02:00
Marcin Kulik
ddf0e57b39 Update SnapshotWorker to generate colorful snapshots 2013-08-06 00:37:35 +02:00
Marcin Kulik
c8d574b243 Serialize asciicast snapshot just as JSON 2013-08-06 00:37:35 +02:00
Marcin Kulik
59e31baa1b Process incoming asciicast with AsciicastCreator 2013-08-06 00:37:35 +02:00
Marcin Kulik
86a4662fe5 Abstract stdout_data and stdout_timing as a single value object 2013-08-06 00:37:34 +02:00
Marcin Kulik
caa6c52759 Rename stdout to stdout_data, stdin to stdin_data 2013-08-06 00:37:34 +02:00
Marcin Kulik
55fe325ec4 Add Bzip2Uploader for uploading, retrieving and decompressing bzip2 files 2013-08-06 00:37:34 +02:00
Marcin Kulik
1aefeb4d6b Introduce BaseUploader with common store_dir for all uploaders 2013-08-06 00:37:34 +02:00
Marcin Kulik
56a2bb2378 Fix Snapshot#crop to not burn when height > line count 2013-08-06 00:37:33 +02:00
Marcin Kulik
d93ac84c21 Refactor AsciicastDecorator#thumbnail to render colorful thumbnail 2013-08-06 00:37:33 +02:00
Marcin Kulik
86f728364c Add Brush model 2013-08-06 00:37:32 +02:00
Marcin Kulik
e947524533 Add a simple model representing a terminal snapshot 2013-08-06 00:37:32 +02:00
Marcin Kulik
8daf2d0f7f Serialize Snapshot with Snapshot::Serializer 2013-08-06 00:37:32 +02:00
Marcin Kulik
a10a447c53 Make the snapshots the hashes 2013-08-06 00:37:32 +02:00
Marcin Kulik
49df9e9082 Make SnapshotWorker a Sidekiq based worker 2013-07-05 14:09:43 +02:00
Marcin Kulik
5087533126 Do the snapshotting in the service object 2013-07-05 14:09:42 +02:00
Marcin Kulik
e85104179e Fix unbzipping of stdout files 2013-06-18 15:25:54 +02:00
Marcin Kulik
a81d9dadb3 Use tsm gem for snapshot generation 2013-06-14 22:52:55 +02:00
Marcin Kulik
4e1f01dc99 Add logging to SnapshotWorker 2013-06-14 00:11:30 +02:00
Marcin Kulik
2d6b60e027 Fix AsciicastDecorator#embed_script 2013-06-13 22:58:47 +02:00
Marcin Kulik
df6bed3541 Merge branch 'master' into embed 2013-06-13 22:40:17 +02:00
Marcin Kulik
8a52605266 Add spec for AsciicastDecorator#embed_script 2013-06-13 22:39:34 +02:00
Marcin Kulik
013eade63c Count view only once in the same browser 2013-06-13 22:26:27 +02:00
Marcin Kulik
feec862f99 Display embed link on the asciicast's page 2013-06-13 11:45:00 +02:00
Marcin Kulik
20cf58e89b Make the render expose its width and height 2013-06-12 23:58:24 +02:00
Marcin Kulik
f0b66b6399 Center overlays according to viewport/container width 2013-06-12 23:50:31 +02:00
Marcin Kulik
e182cce8ee Don't use document.write to insert the player into the DOM 2013-06-12 22:47:39 +02:00
Marcin Kulik
f22837f4e9 Add "embed" css/js bundles 2013-06-12 21:52:15 +02:00
Marcin Kulik
d1dcd08861 Initial version of iframe-based embedding 2013-06-12 21:33:30 +02:00
Marcin Kulik
7a3bc80340 Prevent progress bar to span more than 1 line 2013-06-12 11:27:41 +02:00
Marcin Kulik
22ae493513 Fix terminal's line-height even more! 2013-06-12 11:07:54 +02:00
Marcin Kulik
1e57bee513 Fix terminal line's line-height 2013-06-11 17:41:24 +02:00
Marcin Kulik
49be5d6fe2 Convert layout to slim 2013-06-10 17:15:52 +02:00
Marcin Kulik
597eb5174b Use old-sass syntax for stylesheets 2013-06-01 19:30:26 +02:00
Marcin Kulik
127f68a778 Fix Api::CommentsController#index 2013-05-28 11:13:01 +02:00
Marcin Kulik
87128c0873 Remove commented out code 2013-05-28 11:13:01 +02:00
Marcin Kulik
078b04e3a1 Fix asciicast page when its author has other asciicasts 2013-05-28 11:13:01 +02:00
Marcin Kulik
4c5c0c7d0e Fix logging in after draper upgrade 2013-05-28 11:13:01 +02:00
Marcin Kulik
7659fe722e Fix UsersController#show 2013-05-28 11:13:01 +02:00
Marcin Kulik
a6bbdf7a39 Load homepage asciicast in before_filter 2013-05-28 11:13:01 +02:00
Marcin Kulik
3e2bc439a0 Make sure docs pages are fine 2013-05-28 11:13:01 +02:00
Marcin Kulik
62a3ffed92 Don't check for webkit anymore when enabling WebWorker player 2013-05-28 11:13:00 +02:00
Marcin Kulik
f5a91c680b Fix draper vs kaminari issue 2013-05-28 11:13:00 +02:00
Marcin Kulik
5f53c66639 Update decorators to use new Draper API 2013-05-28 11:13:00 +02:00
Marcin Kulik
95a0e44798 Use http url for avatar in footer 2013-05-28 11:12:59 +02:00
Mike Fiedler
fee3e947bd Fixed upgrade command
`brew update foo` => This command updates brew itself, and does not take formula names.

Hence: `brew upgrade asciiio` => Error: asciiio-HEAD already installed
2013-05-20 22:14:15 -03:00
Marcin Kulik
2e8fc48473 Set MAX_DELAY constant on model, not decorator 2012-12-18 21:38:49 +01:00
Marcin Kulik
9977e69ace Fix ensure_owner 2012-12-11 12:22:25 +01:00
Marcin Kulik
50f84295af More space between asciicast description and thumbnails 2012-12-10 23:40:09 +01:00
Marcin Kulik
b284781620 Cover all scenatios in asciicasts controller specs 2012-12-09 21:25:45 +01:00
Marcin Kulik
11bab12afb Extract AsciicastJSONDecorator from AsciicastDecorator 2012-12-09 21:23:37 +01:00
Marcin Kulik
9ac2c49180 Custom scopes for paginated lists 2012-12-09 21:22:12 +01:00
Marcin Kulik
1e07fafb2e When terminal_type is empty also return '?' 2012-12-09 16:14:26 +01:00
Marcin Kulik
816e09703a Cleanup author/profile links 2012-12-08 22:29:21 +01:00
Marcin Kulik
3b2dc7f998 Simplify author_profile_link 2012-12-08 20:51:20 +01:00
Marcin Kulik
780dff5db1 Decorate users in UserMailer 2012-12-08 20:51:20 +01:00
Marcin Kulik
a1fad7ccb7 Decorate User#nickname 2012-12-08 20:51:20 +01:00
Marcin Kulik
80619928a8 Decorate current_user 2012-12-08 20:51:19 +01:00
Marcin Kulik
3f53f2ad50 Use decorates_association instead of custom method 2012-12-08 20:51:19 +01:00
Marcin Kulik
c1e576e5dd "Other asciicasts by this user" 2012-12-08 20:51:19 +01:00
Marcin Kulik
af95da5fe8 Pass asciicasts to 'previews' partial explicitly 2012-12-08 20:51:19 +01:00
Marcin Kulik
cd16719be6 It's asciicast, not preview 2012-12-08 19:59:56 +01:00
Marcin Kulik
2c006d5fdf Improve AsciicastDecorator#description 2012-12-08 18:21:24 +01:00
Marcin Kulik
0e2f78af1d Split asciicasts#show into more partials 2012-12-08 18:11:03 +01:00
Marcin Kulik
ce6a47e815 Fix :location for unsaved records 2012-12-01 20:50:44 +01:00
Marcin Kulik
42f8ea63de Mark snapshot as safe HTML 2012-12-01 17:20:05 +01:00
Marcin Kulik
09a9d86254 Fix play button position in thumbnails 2012-12-01 16:40:16 +01:00
Marcin Kulik
ea3cfbb65a Limit function calls number between AnsiInterpreter and VT 2012-12-01 15:50:27 +01:00
Marcin Kulik
70b1f27234 "Reverse video" support 2012-11-29 18:44:42 +01:00
Marcin Kulik
51fc7a0db1 Fix typo 2012-11-29 18:44:42 +01:00
Marcin Kulik
f86409500c More semantic name for insertCharacters 2012-11-29 18:44:41 +01:00
Marcin Kulik
d95da9635a Update AnsiInterpreter specs to handle new implementation 2012-11-29 18:44:41 +01:00
Marcin Kulik
42897a3d47 Satisfy Brush specs 2012-11-29 18:44:41 +01:00
Marcin Kulik
d5831f163d Use eraseScreen instead of clearScreen 2012-11-29 18:44:41 +01:00
Marcin Kulik
f3775cdf3a "Plural, not singular" 2012-11-29 18:44:41 +01:00
Marcin Kulik
7e3120a4dd No () 2012-11-29 18:44:41 +01:00
Marcin Kulik
dc90d24f4f Remove comment 2012-11-29 18:44:41 +01:00
Marcin Kulik
3ddf5e5dce Don't rely on underscore too much 2012-11-29 18:44:41 +01:00
Marcin Kulik
0b01d98db2 Bring back brush caching 2012-11-29 18:44:41 +01:00
Marcin Kulik
cce80b07ca Fix brush creation in canvas renderer 2012-11-29 18:44:40 +01:00
Marcin Kulik
b87649aec2 Bring back color support 2012-11-29 18:44:40 +01:00
Marcin Kulik
1185e3a4d9 Buffer non-processed data in VT instead of AnsiInterpreter 2012-11-29 18:44:40 +01:00
Marcin Kulik
7b1be025d6 Simplify handlePrivateEscSeq 2012-11-29 18:44:40 +01:00
Marcin Kulik
9e61d3d179 Extract AnsiInterpreter from VT 2012-11-29 18:44:40 +01:00
Justin Hileman
bc052af53a Add a letter :) 2012-11-26 17:34:02 -08:00
Marcin Kulik
ec05e8eaa8 Asciicast preview styles don't belong to base 2012-11-22 00:36:12 +01:00
Marcin Kulik
05909ae22b Margin for player should be set in base.css 2012-11-20 17:53:04 +01:00
Marcin Kulik
646ca6858a AsciicastDecorator#user 2012-11-19 23:14:34 +01:00
Marcin Kulik
1754656578 Raw page with player only 2012-11-19 23:10:21 +01:00
Marcin Kulik
49644ffc68 Validate presence of a model, not id 2012-11-19 22:35:52 +01:00
Marcin Kulik
a344670d50 Clean up condition 2012-11-19 22:31:24 +01:00
Marcin Kulik
33025e00f7 AsciicastDecorator#terminal_type 2012-11-19 22:29:46 +01:00
Marcin Kulik
d86174d147 link_to_delete_asciicast helper 2012-11-19 22:27:52 +01:00
Marcin Kulik
fdf2a0c326 indented -> indented_text 2012-11-19 22:20:45 +01:00
Marcin Kulik
c94b6ff2d7 timeago -> time_ago_tag 2012-11-19 22:18:29 +01:00
Marcin Kulik
d9d85c11e0 category_link -> link_to_category 2012-11-19 22:16:39 +01:00
Marcin Kulik
44e23bf003 Just decorate. 2012-11-19 22:12:57 +01:00
Marcin Kulik
560ab8362a Introduce proper player helper with proper template 2012-11-19 22:01:44 +01:00
Marcin Kulik
4fba36778e player_script -> player_script_tag 2012-11-19 21:30:45 +01:00
Marcin Kulik
4f06a81ad1 Of course snapshot_queue, not comment_queue 2012-11-19 21:01:16 +01:00
Marcin Kulik
d72b5852e0 Move carrierwave storage config to initializer 2012-11-19 20:43:42 +01:00
Marcin Kulik
1fc49727b2 More meaningfull name for overpass font css file 2012-11-19 20:32:28 +01:00
Marcin Kulik
dbcbe42613 Move vendor CSS to vendor/assets 2012-11-19 20:29:23 +01:00
Marcin Kulik
12c500b57d Move vendor JS to vendor/assets 2012-11-19 20:25:40 +01:00
Marcin Kulik
db4c4a397c Return 'unknown' as os when uname is empty 2012-11-18 22:12:37 +01:00
Marcin Kulik
d0aea034f7 Change URL to recorder script on About page 2012-10-13 01:25:23 +02:00
Marcin Kulik
2f2c30ea0f Make the font of pre element a little smaller 2012-10-13 01:22:59 +02:00
Marcin Kulik
c3d45ba441 Tell about edit/delete of asciicast in online docs 2012-10-13 01:13:16 +02:00
Marcin Kulik
0ff6721530 Update online docs 2012-10-13 00:28:13 +02:00
Marcin Kulik
772aa32f0e Remove obsolete comment view and template 2012-10-12 21:59:39 +02:00