elpasync pushed a change to branch elpa/subed. at d0dfa1a Preliminary support for .ass files (Advanced SubStation Alpha)
This branch includes the following new commits: new d8bf4ed Initial commit new 6a12f22 When debugging, don't autoscroll if debug-window is hidden new 433f7b4 subed-disable-sync-point-to-player-temporarily: Remove debug msgs new 2ff368b Move subed-subtitle-time-adjusted-hook where it belongs new 9d54f39 Be more robust when getting start/stop time new 52ee2ac Be more robust when getting subtitle's relative point new c04670a Adjust some docstrimgs new 81aca87 Be more robust when moving forward/backward to subtitle text new 5131bc4 Add subed-srt-forward/backward-subtitle-end functions new c5dcb73 Make closing parens spoon each other new d98325c Add tests for getting subtitle start/stop time new c895b91 Add test for sanitizing on empty subtitle texts new 7e04e16 Use C-u ... when inserting subtitles new 27c8141 Some work on README new 70e6cea README: Test unicode non-breaking space new 31f8255 README: Turns out spaces are not the issue new fd7c2ba Add tests for getting relative point within subtitle new 7d4caaa Move time adjustment tests new 99a235a Spoon trailing parens new 46aeb10 Add more tests for forward/backward movement new 73419ca Make forward/backward movement tests pass new 7939e0a Move function to have same order as tests new 6b97e24 Fix test's description new 8a39911 Use let instead of setq new ac4bc87 Add more tests for moving to subtitle ID new 78d3855 subed-srt-move-to-subtitle-id: Use let instead of setq new 005c0cc Remove TODO for C-u N M-k new 6797d10 Use lexical scoping new f8a7c6a Fix test that failed because of lexical scoping new 2f86a8e Add function: subed-srt--subtitle-text new 651c6de Wrap some function bodies in save-match-data new b3f2776 Adjust some test descriptions and apply cosmetics new 4b16d97 Trying to do more resilient srt parsing new 17f3ae5 Add/fix tests for srt parsing changes new fd737b7 Use save-excursion in subed--save-excursion new 6cf5df4 Remove annoying minibuffer messages new 3927690 Some rewording new 62d5d3d Use (unless ...) instead of (when (not ...)) new fb9354c Adjust tests for subed-srt-move-to-subtitle-end new 63f0ef5 In general, subtitle separator must be two or more newlines new 166988c Special subtitle separator when moving to end of subtitle new bbd239a subed-srt--regenerate-ids: Wrap function body in atomic-change-group new 727275d subed-srt-sanitize: Wrap function body in atomic-change-group new 4e3e42f subed-srt-sort: Wrap function body in atomic-change-group new 821b259 subed-srt--regenerate-ids: Make this a public function new e471802 Adjust test description new 0815e10 Simplify subed-srt--regexp-duration new 8790abf Add subed-srt-validate new 7d76a35 Simplify subed-srt-move-to-subtitle-text new d3d2013 Look for stop time only on the relevant line new 042941c Fix docstrings new 4e50796 Fix subed-srt-backward-subtitle-id new 86914b4 Add more tests for moving to next/previous subtitle ID new a30a4b1 subed-srt-regenerate-ids: Don't change buffer unless it's necessary new 5fd2009 subed-mpv: Handle invalid JSON new 6391996 Kill debugging buffer+window in subed-disable-debugging new 65bfba6 When enabling debugging, expect the debug window to exist new c865969 Toggle subed-mode when `subed-mode' is called new 0fe0c82 When opening debug window, always split horizontally new dc60c27 subed-srt--subtitle-id-at-msecs: Try to ignore invalid time stamps new 0781285 Make mpv RPC socket and client buffer unique per buffer new 4e31010 mpv returns nil as "time-pos" in at least one circumstance new 33f27c5 Fix docstring new 1c8e0d1 Sanitize separator between start and stop time new 3c1a1b4 Don't validate anything if buffer is empty new 7932aee subed-srt-sort: Sanitize before validating new dc771c8 Fix/Add tests new 57c902a subed-srt-sanitize: Don't change buffer unless it's necessary new 8e4bd20 Fix indentation new 1571de4 Use prefix arg to set start/stop time adjustment new 23156e3 subed-srt-subtitle-insert: Make argument optional new 0e05076 subed-srt-sanitize: Properly trim trailing newlines new 49e8e72 subed-srt-move-to-subtitle-end: Adjust docstring new ce14b0d Adjust comment new f832a1d Add more tests for subed-srt-move-to-subtitle-end new 8374498 README: Split feature list and some rewording new 473f041 Add ogv to video file extensions new 8fa0f6c Remove debugging messages new 6e525b9 Add screenshot new d0708e5 Fix screenshot new bd4c44d Fix typo new bd2c0e4 Add LICENSE new 07c6b2b Show more helpful error message if mpv isn't available new 150a781 Rename *-move-to-* functions to *-jump-to-* new d2d3532 Rename get-adjust-time to get-seconds-adjust new 96e7fcf Add subed--get-seconds-move new 73d303d Adjust some docstrings new 189e5aa Make more functions available format-agnosticly new 14d52d7 Add subed--for-each-subtitle new 7710790 Add subed-move-subtitle-forward/backward new 3511026 Move utilities to the top new f76f7ea Add keybindings C-M-n and C-M-p to move subtitles new d07bde4 Add moving subtitles to feature list and reword some stuff new bf9ceeb Reduce word count by 1 new 42199eb Workaround for GitHub's lack of support for ~~/path/in/home~ new 9ccfef7 Add subed--right-pad new 03cd2bf Wrap msecs-to-timestamp in save-match-data new 4960c74 Make timestamp parsing more robust new 181b9f0 Test for lacking digits in millisecond new bdcdb0a Remove deprecated variables new 5c51000 Call time-adjusted-hook functions with start time, not stop time new 53d1e33 Fix error when adjusting start/stop time in empty buffer new d4b1ddf Rename subed-seconds-adjust/move to subed-milliseconds-adjust/move new 9b95137 Test subed--for-each-subtitle more thoroughly new ec03689 Fix subed--for-each-subtitle new 03dd3c6 Make subed-move-subtitle-forward/backward work with region (sort of) new a7cbce6 Test subed-move-subtitle-forward/backward more thoroughly new a0cb0f1 Keep region active during subtitle movement new 2c7554a Wrap subed--for-each-subtitle in atomic-change-group new 0f385d6 Keep logging debug messages when debugging is disabled new 612f12a Add "moving marked subtitles forward/backward in time" to features new 5da6d79 Add "pause with key" to features new 4522e1a Change keybindings to better conform with major mode conventions new 868d05c Adjust some variable descriptions new f31424e Show message when enabling/disable features manually new a1c66c5 Make if clause easier to grasp new 34caefb Explain usage of prefix argument when adjusting/moving new 808ef92 Fix comment new ecbfd7f Remove useless (progn ...) new b30293d subed--replay-adjusted-subtitle: Fix docstring new 1950bb0 subed--replay-adjusted-subtitle: Show debug message before doing the deed new e792e0f Fix test description new aae6f0c Add function: subed-srt--run-subtitle-time-adjusted-hook new f06d5f8 Add macro: subed--with-subtitle-replay-disabled new 3fafab8 Disable subtitle replay during subtitle movement new 382e83c Add more tests for moving subtitles new d1a0b2f Remove unnecessary spy-on new b912311 Do not sync point to player if region is active new 61cf9ce Remove garbage tests for point-to-player syncing new 489bbea Remove subed-milliseconds-move new 3aa9a71 Pause player by default when editing subtitle text new f95e914 Remove old junk code new 2952936 Reword some docstrings new b1cb470 Deduplicate code by adding subed-move-subtitles function new 205d3c8 Add subed-shift-subtitle-forward/backward new d85f988 Add keybindings for subed-shift-subtitle-forward/backward new a7dda70 Add subtitle shifting to features new 0a20cef Run subtitle-time-adjusted-hook only if time was adjusted new a819a93 Fix test description new 5b90306 Round mpv's playback position to prevent float weirdness (n.99999...) new 0f3add7 Temporarily disable point-to-player syncing when adjusting time new 7e5690c Reword subtitle shifting description new 06851d8 Prevent overlapping when adjusting subtitle start/stop time new 3081983 Add commentary section to header new c069e23 subed is named "subed" new 522017e Add packaging information to header new 3bc609d Make run-subtitle-time-adjusted-hook not srt specific new f3fe9d8 Make increase/decrease-start/stop-time not srt specific new 53bad4a Explain what moving does in general in comment new 800d4b3 Return new start/stop time when adjusting new 6122de0 Rename adjust-subtitle-start/stop-relative to adjust-subtitle-start/stop new 84935a7 Make sure adjusting forward/backward never subtracts/adds new 06a4681 Adjusting functions return milliseconds moved new a9a6835 Ensure subtitle length stays the same when moving new 10e0e28 Use #' for functions new c7d3fcb Add autoloading new e22f4b7 Make subed-srt-* functions private new b34eb47 Fix docstring new 381ed1e Add subed-srt--max-subtitle-id new 20c70e8 Make more functions public new 19efbb8 Rename subed--mode-enabled to subed-mode--enabled-p new a5d750d Inser empty line after section header comment new 4d2c26d Add subed-srt--regenerate-ids-soon-timer new a6300b2 Don't regenerate IDs immediately after inserting subtitle(s) new 2b3a1d4 Regenerate IDs after killing a subtitle new 800b7aa Move timer variables from subed-config.el to where they are used new f7c04d2 Fix tests for inserting subtitle(s) new 37bd5f7 Don't provide sub-id to subtitle-time-adjusted-hook functions new 3af0bb2 subed-guess-video-file: Don't croak if buffer-file-name returns nil new 3289584 Pacify checkdoc new 4116ea7 Add Makefile new af2004c subed-mode-enable: Add autoload cookie new 3e818aa Remove useless (progn ...) in (if ...) new e799392 subed-move-subtitle: Fix docstring new 645efb2 Don't test for undefined return value when moving subtitles new 908b1b0 Simplify tests for moving in active region new 619b170 subed-for-each-subtitle: Add reverse argument new 3792b4b subed-move-subtitle: Adjust docstring new e195756 Rewrite adjusting tests new 0e6ba37 Add option to ignore subtitle spacing when adjusting start/stop time new c1ee129 Add functions to adjust start/stop timestamps to player's ones new c1c707e Rename subed-adjust-to-player-start/stop-timestamp new 97bb125 Add default keybindings for copying player position new 8c3651f9 Remove alpha warning new c326079 subed-guess-video-file: Handle language name in subtitle file name new 300341a subed-guess-video-file: Elaborate docstring new 06aa155 Remove debugging messages from tests new 08e9762 Add option to ignore negative duration when adjusting start/stop time new 4195590 (unless ...) instead of (when (not ...) ...) new 1821ccd (not ...) instead of (eq ... nil) new cd972bd (not ...) instead of (eq ... nil) new 9bc42c6 arg instead of (not (eq nil arg)) new 6fd0468 Use (defalias ...) instead of (fset ...) new cefb54b (unless ...) instead of (when (not ...) ...) new 41fa03d Use temporary-file-directory for mpv socket new 3bab6b7 Use subed-mpv-socket-dir for subed-mpv--socket new f6b13f6 Adjust error message when autoloading video fails new fbadab7 Add function subed--buffer-file-name new 8bebab8 Report error when mpv socket file already exists new 9fc0cbf Remove mpv socket when stopping mpv new 37545d9 Call subed-mpv-kill when Emacs exits new a7fa089 Remove unused variable err when parsing JSON response new 5b64bcc Fix typo in docstring new b6e484f Move subtitles in active region as a unit new 7b5c5e0 Add/Fix tests for moving subtitles new afbdd42 Enable buttercup-minor-mode when opening test files new 1654a08 Properly indent tests new 0c98c6d avoid quoting lambdas (prevents byte-compilation) new 49e73c7 mark variable as unused with leading underscore new 0852968 adjust auto-mode-alist regexp match new af4d876 use emacs 25 for e.g. alist-get new 769718c Fix test for re-enabling point-to-player syncing new 9bf3fcc Make timestamp adjustment limitations generic new b94330f Fix indentations new e9f3e4e Move tests for killing SRT subtitles to test-subed-srt.el new 909cffd Use generic function subed-subtitle-text in test-subed.el new ab651e8 Rename subed-srt--max-subtitle-id to subed-srt--subtitle-id-max new 07a3774 Add generic function subed-subtitle-id-max new e621108 Adjust subtitle killing test descriptions new a42ba17 Simplify subed-srt--subtitle-kill new fafff02 subed-srt--jump-to-subtitle-id: Remove useless progn new dbc8394 Prevent extra goto-char when jumping to specific subtitle ID new 80a2545 Reduce LOC new 6d53418 Add test for killing non-last subtitle new 3b69f02 Simplify basic test for moving subtitle new f7f9fcf Remove useless concat new 06e9ce9 Make group in regexp-separator shy new cfe8d1c subed-srt--backward-subtitle-id: Don't look for different ID new 1e2dab9 remove sharp-quote from list; make variable customizable new 7e2fe58 lint guards new 6e5a127 declare variables and functions that subed.el defines new 56b2ff2 Move most of the insertion complexity to subed.el new c84e5cb Rename *-subtitle-kill to *-kill-subtitle new d3bc655 Update subed-default-subtitle-length docstring new a1c150b Update subed-subtitle-spacing docstring new 43e8e91 Fix insert test new 77c206e Remove redundant jumps new 17b5e1d Adjust some test descriptions new 29652a4 Add subed-insert-subtitle-adjacent new 422981e Fix typos in tests new 67d6253 Add more tests for subtitle insertion new 1342294 Add more tests for inserting subtitles adjacent new ee0e3eb subed-insert-subtitle-adjacent: Maybe use reduced subtitle spacing new 5f803d5 Add some missing tests new 1ef2dbb Add more tests for inserting subtitles adjacent with restricted space new 239deaf subed-copy-player-pos-to-start/stop-time: Use generic functions new bd6e798 subed-copy-player-pos-to-start/stop-time: Return playback position new 7665826 Add tests for copying player position to start/stop time new f30780e Default keybinding: C-M-i -> subed-insert-subtitle-adjacent new c3e67ec Add/Reword some features new a280e89 Add more text to README new a63c362 More work on README new d27e55a Move most stuff from subed.el to subed-common.el new b5da89e Move defgroup to the top new 7d5c543 Add function: subed-srt--init new 3036e7c Remove stale comment new b988a17 subed-replay-adjusted-subtitle-p: Fix if/when in docstring new df51c44 Rename test file for common functions new c1e05c6 Remove empty line new 9f0c939 subed-for-each-subtitle: Make all arguments mandatory new 0924465 subed-srt--prepend-subtitle: Fix docstring new 080e512 Make variable subed-subtitle-format private new f62fdb9 Remove empty line new 3c97061 Add subed--init-alist variable to track supported formats new e7e791f Activate support for multiple subtitle formats new f6acfdd Re-order function suffixes new 831b0ea Produce better error message when buffer-file-name is nil new 50a4717 Fix tests new 7f361c2 Explain "adjust", "move" and "shift" in subed-mode docstring new 864748c Point to subed-mode docstring in "Commentary" new ce6bf04 Point to subed-mode docstring in "Installation" new 802a603 Add a real version number new 9557ba9 Standardize/Rename subtitle loop functions new ccc4c0e Loop over current subtitle by default new 11a1993 Don't modify kill-ring when regenerating IDs new d71655f Fix parens new b740511 Use mark-active instead of use-region-p new 0302aa9 Move screenshow below introduction new e8612e7 Unify optional argument name new d1b308e Make subed-subtitle-time-adjusted-hook buffer-local new c8cf4b7 Don't insert too many mock subtitles new 3245922 Focus correct subtitle new e3d4f46 Reword test description new 464d0cb Add defcustom: subed-enforce-time-boundaries new d076bac Make enforced subtitle boundaries optional new b5667c4 Add tests for subed-enforce-time-boundaries new dde5dfd Simplify subed-mpv--client-buffer new fcc1951 Add subed-mpv-file-loaded-hook new ba22919 Add subed-mpv-jump-to-current-subtitle new d87e2cd Add save-place-local-mode to example config new 73e11d4 Define subed-mode as derived mode new e7ae26e Add target: clean new 14ebbbb subed-srt--subtitle-id-at-msecs: Return nil if no matching subtitle new 2e18727 Pause video initially new 3d5902b Reword comment new 3baf5c1 subed-mpv--client-filter: Store process mark in variable new df96747 Rename subed-mpv--handle-event -> subed-mpv--client-handle-event new 4ef1646 subed-mpv-find-video: Kill previous mpv instance if existing new 0872ab7 Remove "subed-mode enabled" message new 6215cb1 Add test-compile target new 08d5033 Remove unused variable subed-mode--enabled-p new 070384b subed--set-subtitle-loop: Don't croak on empty file new 9078a46 subed-srt--validate: Don't complain if buffer contains only whitespace new 89df304 subed-srt--sanitize: Don't insert newline in empty buffer new f2f11ca subed-mpv-find-video: Gracefully handle new file new fabc7dc Move function around new b0a4ff0 Fix parentheses new 8007c12 Make debugging window a bit smaller new aecaf3d Better support for fill-paragraph new d34bdec Fix mismatched parens in example config new 66889a1 Fix test: Renumbering does not modify the kill-ring new e1fd29b subed-srt--regenerate-ids: Do not modify empty buffer new ca015d4 Fix one compile warning new 317c411 Remove declarations new 72020af Use long options new be43268 Fix test-compile target new ec38a0b Add function: subed-mpv-add-subtitles new 3753706 Fix warning about missing function: subed-mpv--sub-add-after-save new 473fbc2 subed-srt--subtitle-text: Improve docstring new 05ba952 Only add subtitles file if subed-subtitle-id returns non-nil new ea11119 Inform compiler about unused variables to prevent warnings new e8a68c2 subed-srt--msecs-to-timestamp: Explain save-match-data new 5c39418 Copy subed-srt--msecs-to-timestamp to subed-common.el new 7764909 Add some (require ...)s to prevent compiler warnings new ecfec2b Move debugging functions to subed-debug.el new a084f5d Improve comment new f69f769 Set subed-mode-map in subed.el new cd3af86 Silence checkdoc new d110f79 Stop disabling point-to-player sync on file-loaded event new f8793fb Move motion hooks from subed-config.el to subed-common.el new 311f4af Require Emacs 25.1 new dd4dc8c Automatically disable point-to-player sync while looping new 5957cbe Set default subed-loop-seconds-after/before to 1 new d5751c5 Change default faces to inherit color values new fc7a12d Fix mpv arguments new 3ba295b Fix "service name too long" new 29d8b84 Initial implementation of subed-vtt.el new 6db0005 New function subed-mpv-play-video-from-url new e71a64b Refactor common code into subed-mpv-play-video new daaf480 subed-vtt: Fix navigation code new a7b25c8 subed-vtt: Fix ID->timestamp and stop generating IDs new bee9e63 subed-vtt: Fix syncing point with player new 961e5eb More subed-vtt fixes: require subed-vtt, validate better new 0968590 Fix separator search in subed-srt--validate new d9c41ba Add test for validation fix new 9642945 Further fixes to let tests pass new d3df6f2 Fix "test" target in Makefile new 5b8c23a New commands: subed-merge-with-next, subed-merge-with-previous new 9796a77 Merge branch 'sacha' new 65ed21c Add tests/test-subed-vtt.el new 9e661cc New command subed-split-subtitle splits at point with MPV timestamp new c4e3fec Add error handling for subed-split-subtitle new 87b3823 subed-split-subtitle works at the beginning or end of subtitle text new b1c5b88 Some adjustments to subed-split-subtitle new 5f1ad41 "mpv" instead of "MPV" (see `man mpv`, https://mpv.io etc) new 8bdec56 Move subed-split-subtitle to "Inserting" section new a83ee74 Remove trailing space new da4dac9 Two spaces after sentence to make `make test` pass new 49ddccc Move subed--init-alist to subed.el new 8263b33 subed-split-subtitle: Use offset or text fraction new 1c52f1b Add tests for splitting subtitles and handle more cases new e065632 Fix previous commit for subed-set-subtitle-text new 016c6a5 subed-split-subtitle: Handle more cases new b28f528 Revert indentation changes new 6949622 Adopt REUSE standard for copyright and licensing new 5b868c3 Fix minor issues in README.org added in last commit new 6b1a6f2 Add computing and displaying characters per second new ec7b222 Enable CPS showing by default and improve CPS toggling functions new 9f55817 Wrap start/stop calculating functions in `ignore-errors' new 918ba6f Prevent showing the "Match data clobbered" message new beda7dc Add functions to insert HTML-like tags new 31556c6 Add functions for bold and italic and change keybindings new c23dd84 Add info about the new features to README.org new 6a5802c Add video movement per frame new 828764f Change keybindings and use a transient keymap new 6eba992 Add ability to proportionally scale subtitles. new 5de6f21 Add msecs-to-timestamp as a common function new b42f563 Add audio extensions new f28ad22 Make subed-mpv-jump-to-current-subtitle interactive new 6164f88 Keep track of video being played new 70561f0 Make hours optional in VTT files, following the spec new bf3e832 Check if subed--cps-overlay exists before trying to update it new b6e08c2 Handle spaces in between VTT subtitles new 3b4b56a Merge pull request #49 from sachac/fix-vtt-spaces new 7d1aa59 Make timestamp-to-msecs a generic function new 564b6fe Add preliminary support for comments in VTT files new c76ba50 Prompt for playback speed factor new 9d0aa0f Make make-subtitle a generic function new d0dfa1a Preliminary support for .ass files (Advanced SubStation Alpha)