about summary refs log tree commit diff stats
path: root/sys/nixpkgs/pkgs/tree-sitter-yts/src
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2024-01-20 18:38:18 +0100
committerSoispha <soispha@vhack.eu>2024-01-20 18:38:18 +0100
commitb53a8d82a07c29010a690b7126795fd7ddcabe0c (patch)
tree203dd0581950f9acb75881383d4b6fbc849e91af /sys/nixpkgs/pkgs/tree-sitter-yts/src
parentfix(sys/nixpkgs/yt/constants): Add extension to last selection path (diff)
downloadnixos-config-b53a8d82a07c29010a690b7126795fd7ddcabe0c.tar.gz
nixos-config-b53a8d82a07c29010a690b7126795fd7ddcabe0c.zip
feat(sys/nixpkgs/yt): Add support for the 'url' command
This simply opens the youtube url in the browser
Diffstat (limited to '')
-rw-r--r--sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json14
-rw-r--r--sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json8
-rw-r--r--sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c417
3 files changed, 245 insertions, 194 deletions
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json b/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json
index 4157fde6..a35a5464 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json
+++ b/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json
@@ -63,23 +63,31 @@
         },
         {
           "type": "STRING",
+          "value": "p"
+        },
+        {
+          "type": "STRING",
           "value": "watch"
         },
         {
           "type": "STRING",
+          "value": "w"
+        },
+        {
+          "type": "STRING",
           "value": "drop"
         },
         {
           "type": "STRING",
-          "value": "p"
+          "value": "d"
         },
         {
           "type": "STRING",
-          "value": "w"
+          "value": "url"
         },
         {
           "type": "STRING",
-          "value": "d"
+          "value": "u"
         }
       ]
     },
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json b/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json
index 1dcd3402..1a63a552 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json
+++ b/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json
@@ -182,6 +182,14 @@
     "named": true
   },
   {
+    "type": "u",
+    "named": false
+  },
+  {
+    "type": "url",
+    "named": false
+  },
+  {
     "type": "w",
     "named": false
   },
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c b/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c
index fc86808b..5b02c3d0 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c
+++ b/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c
@@ -8,9 +8,9 @@
 #define LANGUAGE_VERSION 14
 #define STATE_COUNT 31
 #define LARGE_STATE_COUNT 2
-#define SYMBOL_COUNT 28
+#define SYMBOL_COUNT 30
 #define ALIAS_COUNT 0
-#define TOKEN_COUNT 18
+#define TOKEN_COUNT 20
 #define EXTERNAL_TOKEN_COUNT 0
 #define FIELD_COUNT 0
 #define MAX_ALIAS_SEQUENCE_LENGTH 8
@@ -19,42 +19,46 @@
 enum {
   anon_sym_LF = 1,
   anon_sym_pick = 2,
-  anon_sym_watch = 3,
-  anon_sym_drop = 4,
-  anon_sym_p = 5,
-  anon_sym_w = 6,
+  anon_sym_p = 3,
+  anon_sym_watch = 4,
+  anon_sym_w = 5,
+  anon_sym_drop = 6,
   anon_sym_d = 7,
-  sym_id = 8,
-  aux_sym_title_token1 = 9,
-  aux_sym_date_token1 = 10,
-  anon_sym_LBRACK = 11,
-  anon_sym_NoDuration = 12,
-  aux_sym_duration_token1 = 13,
-  aux_sym_duration_token2 = 14,
-  anon_sym_RBRACK = 15,
-  sym_comment = 16,
-  sym_quote = 17,
-  sym_source_file = 18,
-  sym_line = 19,
-  sym_command = 20,
-  sym_title = 21,
-  sym_date = 22,
-  sym_author = 23,
-  sym_duration = 24,
-  sym_url = 25,
-  sym__q = 26,
-  aux_sym_source_file_repeat1 = 27,
+  anon_sym_url = 8,
+  anon_sym_u = 9,
+  sym_id = 10,
+  aux_sym_title_token1 = 11,
+  aux_sym_date_token1 = 12,
+  anon_sym_LBRACK = 13,
+  anon_sym_NoDuration = 14,
+  aux_sym_duration_token1 = 15,
+  aux_sym_duration_token2 = 16,
+  anon_sym_RBRACK = 17,
+  sym_comment = 18,
+  sym_quote = 19,
+  sym_source_file = 20,
+  sym_line = 21,
+  sym_command = 22,
+  sym_title = 23,
+  sym_date = 24,
+  sym_author = 25,
+  sym_duration = 26,
+  sym_url = 27,
+  sym__q = 28,
+  aux_sym_source_file_repeat1 = 29,
 };
 
 static const char * const ts_symbol_names[] = {
   [ts_builtin_sym_end] = "end",
   [anon_sym_LF] = "\n",
   [anon_sym_pick] = "pick",
-  [anon_sym_watch] = "watch",
-  [anon_sym_drop] = "drop",
   [anon_sym_p] = "p",
+  [anon_sym_watch] = "watch",
   [anon_sym_w] = "w",
+  [anon_sym_drop] = "drop",
   [anon_sym_d] = "d",
+  [anon_sym_url] = "url",
+  [anon_sym_u] = "u",
   [sym_id] = "id",
   [aux_sym_title_token1] = "title_token1",
   [aux_sym_date_token1] = "date_token1",
@@ -81,11 +85,13 @@ static const TSSymbol ts_symbol_map[] = {
   [ts_builtin_sym_end] = ts_builtin_sym_end,
   [anon_sym_LF] = anon_sym_LF,
   [anon_sym_pick] = anon_sym_pick,
-  [anon_sym_watch] = anon_sym_watch,
-  [anon_sym_drop] = anon_sym_drop,
   [anon_sym_p] = anon_sym_p,
+  [anon_sym_watch] = anon_sym_watch,
   [anon_sym_w] = anon_sym_w,
+  [anon_sym_drop] = anon_sym_drop,
   [anon_sym_d] = anon_sym_d,
+  [anon_sym_url] = anon_sym_url,
+  [anon_sym_u] = anon_sym_u,
   [sym_id] = sym_id,
   [aux_sym_title_token1] = aux_sym_title_token1,
   [aux_sym_date_token1] = aux_sym_date_token1,
@@ -121,23 +127,31 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
     .visible = true,
     .named = false,
   },
+  [anon_sym_p] = {
+    .visible = true,
+    .named = false,
+  },
   [anon_sym_watch] = {
     .visible = true,
     .named = false,
   },
+  [anon_sym_w] = {
+    .visible = true,
+    .named = false,
+  },
   [anon_sym_drop] = {
     .visible = true,
     .named = false,
   },
-  [anon_sym_p] = {
+  [anon_sym_d] = {
     .visible = true,
     .named = false,
   },
-  [anon_sym_w] = {
+  [anon_sym_url] = {
     .visible = true,
     .named = false,
   },
-  [anon_sym_d] = {
+  [anon_sym_u] = {
     .visible = true,
     .named = false,
   },
@@ -270,21 +284,22 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
   eof = lexer->eof(lexer);
   switch (state) {
     case 0:
-      if (eof) ADVANCE(46);
-      if (lookahead == '"') ADVANCE(71);
-      if (lookahead == '#') ADVANCE(70);
-      if (lookahead == 'N') ADVANCE(29);
-      if (lookahead == '[') ADVANCE(65);
-      if (lookahead == '\\') SKIP(45)
-      if (lookahead == ']') ADVANCE(69);
-      if (lookahead == 'd') ADVANCE(53);
-      if (lookahead == 'p') ADVANCE(51);
+      if (eof) ADVANCE(47);
+      if (lookahead == '"') ADVANCE(74);
+      if (lookahead == '#') ADVANCE(73);
+      if (lookahead == 'N') ADVANCE(30);
+      if (lookahead == '[') ADVANCE(68);
+      if (lookahead == '\\') SKIP(46)
+      if (lookahead == ']') ADVANCE(72);
+      if (lookahead == 'd') ADVANCE(54);
+      if (lookahead == 'p') ADVANCE(50);
+      if (lookahead == 'u') ADVANCE(56);
       if (lookahead == 'w') ADVANCE(52);
       if (lookahead == '\t' ||
           lookahead == '\n' ||
           lookahead == '\r' ||
           lookahead == ' ') SKIP(0)
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(60);
       END_STATE();
     case 1:
       if (lookahead == '\n') SKIP(14)
@@ -308,7 +323,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       if (lookahead == '\r') SKIP(5)
       END_STATE();
     case 7:
-      if (lookahead == '\n') ADVANCE(47);
+      if (lookahead == '\n') ADVANCE(48);
       if (lookahead == '\\') SKIP(6)
       if (lookahead == '\t' ||
           lookahead == '\r' ||
@@ -318,25 +333,25 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       if (lookahead == ' ') ADVANCE(13);
       END_STATE();
     case 9:
-      if (lookahead == ' ') ADVANCE(38);
+      if (lookahead == ' ') ADVANCE(39);
       END_STATE();
     case 10:
-      if (lookahead == ' ') ADVANCE(39);
+      if (lookahead == ' ') ADVANCE(40);
       END_STATE();
     case 11:
-      if (lookahead == '-') ADVANCE(42);
+      if (lookahead == '-') ADVANCE(43);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(24);
       END_STATE();
     case 12:
-      if (lookahead == '-') ADVANCE(43);
+      if (lookahead == '-') ADVANCE(44);
       END_STATE();
     case 13:
-      if (lookahead == 'D') ADVANCE(37);
+      if (lookahead == 'D') ADVANCE(38);
       END_STATE();
     case 14:
-      if (lookahead == 'N') ADVANCE(29);
+      if (lookahead == 'N') ADVANCE(30);
       if (lookahead == '\\') SKIP(2)
       if (lookahead == '\t' ||
           lookahead == '\n' ||
@@ -345,13 +360,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(23);
       END_STATE();
     case 15:
-      if (lookahead == '\\') ADVANCE(60);
+      if (lookahead == '\\') ADVANCE(63);
       if (lookahead == '\t' ||
           lookahead == '\n' ||
           lookahead == '\r' ||
-          lookahead == ' ') ADVANCE(62);
+          lookahead == ' ') ADVANCE(65);
       if (lookahead != 0 &&
-          lookahead != '"') ADVANCE(63);
+          lookahead != '"') ADVANCE(66);
       END_STATE();
     case 16:
       if (lookahead == '\\') SKIP(4)
@@ -359,10 +374,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
           lookahead == '\n' ||
           lookahead == '\r' ||
           lookahead == ' ') SKIP(16)
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(59);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(62);
       END_STATE();
     case 17:
-      if (lookahead == 'a') ADVANCE(35);
+      if (lookahead == 'a') ADVANCE(36);
       END_STATE();
     case 18:
       if (lookahead == 'c') ADVANCE(26);
@@ -371,7 +386,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       if (lookahead == 'c') ADVANCE(20);
       END_STATE();
     case 20:
-      if (lookahead == 'h') ADVANCE(49);
+      if (lookahead == 'h') ADVANCE(51);
       END_STATE();
     case 21:
       if (lookahead == 'h') ADVANCE(9);
@@ -394,188 +409,198 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(24);
       END_STATE();
     case 25:
-      if (lookahead == 'i') ADVANCE(31);
+      if (lookahead == 'i') ADVANCE(32);
       END_STATE();
     case 26:
-      if (lookahead == 'k') ADVANCE(48);
+      if (lookahead == 'k') ADVANCE(49);
       END_STATE();
     case 27:
-      if (lookahead == 'm') ADVANCE(68);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27);
+      if (lookahead == 'l') ADVANCE(55);
       END_STATE();
     case 28:
-      if (lookahead == 'n') ADVANCE(66);
+      if (lookahead == 'm') ADVANCE(71);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(28);
       END_STATE();
     case 29:
-      if (lookahead == 'o') ADVANCE(8);
+      if (lookahead == 'n') ADVANCE(69);
       END_STATE();
     case 30:
-      if (lookahead == 'o') ADVANCE(32);
+      if (lookahead == 'o') ADVANCE(8);
       END_STATE();
     case 31:
-      if (lookahead == 'o') ADVANCE(28);
+      if (lookahead == 'o') ADVANCE(33);
       END_STATE();
     case 32:
-      if (lookahead == 'p') ADVANCE(50);
+      if (lookahead == 'o') ADVANCE(29);
       END_STATE();
     case 33:
-      if (lookahead == 'r') ADVANCE(17);
+      if (lookahead == 'p') ADVANCE(53);
       END_STATE();
     case 34:
-      if (lookahead == 's') ADVANCE(67);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34);
+      if (lookahead == 'r') ADVANCE(17);
       END_STATE();
     case 35:
-      if (lookahead == 't') ADVANCE(25);
+      if (lookahead == 's') ADVANCE(70);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(35);
       END_STATE();
     case 36:
-      if (lookahead == 't') ADVANCE(19);
+      if (lookahead == 't') ADVANCE(25);
       END_STATE();
     case 37:
-      if (lookahead == 'u') ADVANCE(33);
+      if (lookahead == 't') ADVANCE(19);
       END_STATE();
     case 38:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27);
+      if (lookahead == 'u') ADVANCE(34);
       END_STATE();
     case 39:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(28);
       END_STATE();
     case 40:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(12);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(35);
       END_STATE();
     case 41:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(64);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(12);
       END_STATE();
     case 42:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(40);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(67);
       END_STATE();
     case 43:
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(41);
       END_STATE();
     case 44:
-      if (eof) ADVANCE(46);
-      if (lookahead == '\n') SKIP(0)
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(42);
       END_STATE();
     case 45:
-      if (eof) ADVANCE(46);
+      if (eof) ADVANCE(47);
       if (lookahead == '\n') SKIP(0)
-      if (lookahead == '\r') SKIP(44)
       END_STATE();
     case 46:
-      ACCEPT_TOKEN(ts_builtin_sym_end);
+      if (eof) ADVANCE(47);
+      if (lookahead == '\n') SKIP(0)
+      if (lookahead == '\r') SKIP(45)
       END_STATE();
     case 47:
-      ACCEPT_TOKEN(anon_sym_LF);
-      if (lookahead == '\n') ADVANCE(47);
+      ACCEPT_TOKEN(ts_builtin_sym_end);
       END_STATE();
     case 48:
-      ACCEPT_TOKEN(anon_sym_pick);
+      ACCEPT_TOKEN(anon_sym_LF);
+      if (lookahead == '\n') ADVANCE(48);
       END_STATE();
     case 49:
-      ACCEPT_TOKEN(anon_sym_watch);
+      ACCEPT_TOKEN(anon_sym_pick);
       END_STATE();
     case 50:
-      ACCEPT_TOKEN(anon_sym_drop);
-      END_STATE();
-    case 51:
       ACCEPT_TOKEN(anon_sym_p);
       if (lookahead == 'i') ADVANCE(18);
       END_STATE();
+    case 51:
+      ACCEPT_TOKEN(anon_sym_watch);
+      END_STATE();
     case 52:
       ACCEPT_TOKEN(anon_sym_w);
-      if (lookahead == 'a') ADVANCE(36);
+      if (lookahead == 'a') ADVANCE(37);
       END_STATE();
     case 53:
-      ACCEPT_TOKEN(anon_sym_d);
-      if (lookahead == 'r') ADVANCE(30);
+      ACCEPT_TOKEN(anon_sym_drop);
       END_STATE();
     case 54:
+      ACCEPT_TOKEN(anon_sym_d);
+      if (lookahead == 'r') ADVANCE(31);
+      END_STATE();
+    case 55:
+      ACCEPT_TOKEN(anon_sym_url);
+      END_STATE();
+    case 56:
+      ACCEPT_TOKEN(anon_sym_u);
+      if (lookahead == 'r') ADVANCE(27);
+      END_STATE();
+    case 57:
       ACCEPT_TOKEN(sym_id);
-      if (lookahead == '-') ADVANCE(42);
+      if (lookahead == '-') ADVANCE(43);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(58);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(61);
       END_STATE();
-    case 55:
+    case 58:
       ACCEPT_TOKEN(sym_id);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(54);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57);
       END_STATE();
-    case 56:
+    case 59:
       ACCEPT_TOKEN(sym_id);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(58);
       END_STATE();
-    case 57:
+    case 60:
       ACCEPT_TOKEN(sym_id);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(56);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(59);
       END_STATE();
-    case 58:
+    case 61:
       ACCEPT_TOKEN(sym_id);
       if (lookahead == 'h') ADVANCE(9);
       if (lookahead == 'm') ADVANCE(10);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(58);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(61);
       END_STATE();
-    case 59:
+    case 62:
       ACCEPT_TOKEN(sym_id);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(59);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(62);
       END_STATE();
-    case 60:
+    case 63:
       ACCEPT_TOKEN(aux_sym_title_token1);
-      if (lookahead == '\n') ADVANCE(62);
-      if (lookahead == '\r') ADVANCE(61);
+      if (lookahead == '\n') ADVANCE(65);
+      if (lookahead == '\r') ADVANCE(64);
       if (lookahead != 0 &&
-          lookahead != '"') ADVANCE(63);
+          lookahead != '"') ADVANCE(66);
       END_STATE();
-    case 61:
+    case 64:
       ACCEPT_TOKEN(aux_sym_title_token1);
-      if (lookahead == '\n') ADVANCE(62);
+      if (lookahead == '\n') ADVANCE(65);
       if (lookahead != 0 &&
-          lookahead != '"') ADVANCE(63);
+          lookahead != '"') ADVANCE(66);
       END_STATE();
-    case 62:
+    case 65:
       ACCEPT_TOKEN(aux_sym_title_token1);
-      if (lookahead == '\\') ADVANCE(60);
+      if (lookahead == '\\') ADVANCE(63);
       if (lookahead == '\t' ||
           lookahead == '\n' ||
           lookahead == '\r' ||
-          lookahead == ' ') ADVANCE(62);
+          lookahead == ' ') ADVANCE(65);
       if (lookahead != 0 &&
-          lookahead != '"') ADVANCE(63);
+          lookahead != '"') ADVANCE(66);
       END_STATE();
-    case 63:
+    case 66:
       ACCEPT_TOKEN(aux_sym_title_token1);
       if (lookahead != 0 &&
-          lookahead != '"') ADVANCE(63);
+          lookahead != '"') ADVANCE(66);
       END_STATE();
-    case 64:
+    case 67:
       ACCEPT_TOKEN(aux_sym_date_token1);
       END_STATE();
-    case 65:
+    case 68:
       ACCEPT_TOKEN(anon_sym_LBRACK);
       END_STATE();
-    case 66:
+    case 69:
       ACCEPT_TOKEN(anon_sym_NoDuration);
       END_STATE();
-    case 67:
+    case 70:
       ACCEPT_TOKEN(aux_sym_duration_token1);
       END_STATE();
-    case 68:
+    case 71:
       ACCEPT_TOKEN(aux_sym_duration_token2);
       END_STATE();
-    case 69:
+    case 72:
       ACCEPT_TOKEN(anon_sym_RBRACK);
       END_STATE();
-    case 70:
+    case 73:
       ACCEPT_TOKEN(sym_comment);
       if (lookahead != 0 &&
-          lookahead != '\n') ADVANCE(70);
+          lookahead != '\n') ADVANCE(73);
       END_STATE();
-    case 71:
+    case 74:
       ACCEPT_TOKEN(sym_quote);
       END_STATE();
     default:
@@ -621,11 +646,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
   [0] = {
     [ts_builtin_sym_end] = ACTIONS(1),
     [anon_sym_pick] = ACTIONS(1),
-    [anon_sym_watch] = ACTIONS(1),
-    [anon_sym_drop] = ACTIONS(1),
     [anon_sym_p] = ACTIONS(1),
+    [anon_sym_watch] = ACTIONS(1),
     [anon_sym_w] = ACTIONS(1),
+    [anon_sym_drop] = ACTIONS(1),
     [anon_sym_d] = ACTIONS(1),
+    [anon_sym_url] = ACTIONS(1),
+    [anon_sym_u] = ACTIONS(1),
     [sym_id] = ACTIONS(1),
     [aux_sym_date_token1] = ACTIONS(1),
     [anon_sym_LBRACK] = ACTIONS(1),
@@ -643,11 +670,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
     [aux_sym_source_file_repeat1] = STATE(2),
     [ts_builtin_sym_end] = ACTIONS(3),
     [anon_sym_pick] = ACTIONS(5),
-    [anon_sym_watch] = ACTIONS(5),
-    [anon_sym_drop] = ACTIONS(5),
     [anon_sym_p] = ACTIONS(7),
+    [anon_sym_watch] = ACTIONS(5),
     [anon_sym_w] = ACTIONS(7),
+    [anon_sym_drop] = ACTIONS(5),
     [anon_sym_d] = ACTIONS(7),
+    [anon_sym_url] = ACTIONS(5),
+    [anon_sym_u] = ACTIONS(7),
     [sym_comment] = ACTIONS(9),
   },
 };
@@ -663,15 +692,17 @@ static const uint16_t ts_small_parse_table[] = {
     STATE(3), 2,
       sym_line,
       aux_sym_source_file_repeat1,
-    ACTIONS(5), 3,
+    ACTIONS(5), 4,
       anon_sym_pick,
       anon_sym_watch,
       anon_sym_drop,
-    ACTIONS(7), 3,
+      anon_sym_url,
+    ACTIONS(7), 4,
       anon_sym_p,
       anon_sym_w,
       anon_sym_d,
-  [24] = 6,
+      anon_sym_u,
+  [26] = 6,
     ACTIONS(15), 1,
       ts_builtin_sym_end,
     ACTIONS(23), 1,
@@ -681,167 +712,171 @@ static const uint16_t ts_small_parse_table[] = {
     STATE(3), 2,
       sym_line,
       aux_sym_source_file_repeat1,
-    ACTIONS(17), 3,
+    ACTIONS(17), 4,
       anon_sym_pick,
       anon_sym_watch,
       anon_sym_drop,
-    ACTIONS(20), 3,
+      anon_sym_url,
+    ACTIONS(20), 4,
       anon_sym_p,
       anon_sym_w,
       anon_sym_d,
-  [48] = 2,
-    ACTIONS(28), 3,
+      anon_sym_u,
+  [52] = 2,
+    ACTIONS(28), 4,
       anon_sym_p,
       anon_sym_w,
       anon_sym_d,
-    ACTIONS(26), 5,
+      anon_sym_u,
+    ACTIONS(26), 6,
       ts_builtin_sym_end,
       anon_sym_pick,
       anon_sym_watch,
       anon_sym_drop,
+      anon_sym_url,
       sym_comment,
-  [61] = 3,
+  [67] = 3,
     ACTIONS(30), 1,
       sym_quote,
     STATE(21), 1,
       sym_url,
     STATE(22), 1,
       sym__q,
-  [71] = 3,
+  [77] = 3,
     ACTIONS(32), 1,
       sym_quote,
     STATE(7), 1,
       sym_title,
     STATE(25), 1,
       sym__q,
-  [81] = 3,
+  [87] = 3,
     ACTIONS(34), 1,
       sym_quote,
     STATE(9), 1,
       sym_date,
     STATE(23), 1,
       sym__q,
-  [91] = 1,
+  [97] = 1,
     ACTIONS(36), 3,
       anon_sym_NoDuration,
       aux_sym_duration_token1,
       aux_sym_duration_token2,
-  [97] = 3,
+  [103] = 3,
     ACTIONS(38), 1,
       sym_quote,
     STATE(10), 1,
       sym_author,
     STATE(16), 1,
       sym__q,
-  [107] = 3,
+  [113] = 3,
     ACTIONS(40), 1,
       sym_quote,
     STATE(5), 1,
       sym_duration,
     STATE(18), 1,
       sym__q,
-  [117] = 2,
+  [123] = 2,
     ACTIONS(42), 1,
       sym_quote,
     STATE(30), 1,
       sym__q,
-  [124] = 2,
+  [130] = 2,
     ACTIONS(44), 1,
       sym_quote,
     STATE(28), 1,
       sym__q,
-  [131] = 2,
+  [137] = 2,
     ACTIONS(46), 1,
       sym_quote,
     STATE(24), 1,
       sym__q,
-  [138] = 2,
+  [144] = 2,
     ACTIONS(48), 1,
       sym_quote,
     STATE(17), 1,
       sym__q,
-  [145] = 2,
+  [151] = 2,
     ACTIONS(50), 1,
       sym_quote,
     STATE(20), 1,
       sym__q,
-  [152] = 1,
+  [158] = 1,
     ACTIONS(52), 1,
       aux_sym_title_token1,
-  [156] = 1,
+  [162] = 1,
     ACTIONS(54), 1,
       sym_quote,
-  [160] = 1,
+  [166] = 1,
     ACTIONS(56), 1,
       anon_sym_LBRACK,
-  [164] = 1,
+  [170] = 1,
     ACTIONS(58), 1,
       sym_id,
-  [168] = 1,
+  [174] = 1,
     ACTIONS(60), 1,
       sym_quote,
-  [172] = 1,
+  [178] = 1,
     ACTIONS(62), 1,
       anon_sym_LF,
-  [176] = 1,
+  [182] = 1,
     ACTIONS(64), 1,
       aux_sym_title_token1,
-  [180] = 1,
+  [186] = 1,
     ACTIONS(66), 1,
       aux_sym_date_token1,
-  [184] = 1,
+  [190] = 1,
     ACTIONS(68), 1,
       sym_quote,
-  [188] = 1,
+  [194] = 1,
     ACTIONS(70), 1,
       aux_sym_title_token1,
-  [192] = 1,
+  [198] = 1,
     ACTIONS(72), 1,
       sym_id,
-  [196] = 1,
+  [202] = 1,
     ACTIONS(74), 1,
       anon_sym_RBRACK,
-  [200] = 1,
+  [206] = 1,
     ACTIONS(76), 1,
       anon_sym_LF,
-  [204] = 1,
+  [210] = 1,
     ACTIONS(78), 1,
       ts_builtin_sym_end,
-  [208] = 1,
+  [214] = 1,
     ACTIONS(80), 1,
       sym_quote,
 };
 
 static const uint32_t ts_small_parse_table_map[] = {
   [SMALL_STATE(2)] = 0,
-  [SMALL_STATE(3)] = 24,
-  [SMALL_STATE(4)] = 48,
-  [SMALL_STATE(5)] = 61,
-  [SMALL_STATE(6)] = 71,
-  [SMALL_STATE(7)] = 81,
-  [SMALL_STATE(8)] = 91,
-  [SMALL_STATE(9)] = 97,
-  [SMALL_STATE(10)] = 107,
-  [SMALL_STATE(11)] = 117,
-  [SMALL_STATE(12)] = 124,
-  [SMALL_STATE(13)] = 131,
-  [SMALL_STATE(14)] = 138,
-  [SMALL_STATE(15)] = 145,
-  [SMALL_STATE(16)] = 152,
-  [SMALL_STATE(17)] = 156,
-  [SMALL_STATE(18)] = 160,
-  [SMALL_STATE(19)] = 164,
-  [SMALL_STATE(20)] = 168,
-  [SMALL_STATE(21)] = 172,
-  [SMALL_STATE(22)] = 176,
-  [SMALL_STATE(23)] = 180,
-  [SMALL_STATE(24)] = 184,
-  [SMALL_STATE(25)] = 188,
-  [SMALL_STATE(26)] = 192,
-  [SMALL_STATE(27)] = 196,
-  [SMALL_STATE(28)] = 200,
-  [SMALL_STATE(29)] = 204,
-  [SMALL_STATE(30)] = 208,
+  [SMALL_STATE(3)] = 26,
+  [SMALL_STATE(4)] = 52,
+  [SMALL_STATE(5)] = 67,
+  [SMALL_STATE(6)] = 77,
+  [SMALL_STATE(7)] = 87,
+  [SMALL_STATE(8)] = 97,
+  [SMALL_STATE(9)] = 103,
+  [SMALL_STATE(10)] = 113,
+  [SMALL_STATE(11)] = 123,
+  [SMALL_STATE(12)] = 130,
+  [SMALL_STATE(13)] = 137,
+  [SMALL_STATE(14)] = 144,
+  [SMALL_STATE(15)] = 151,
+  [SMALL_STATE(16)] = 158,
+  [SMALL_STATE(17)] = 162,
+  [SMALL_STATE(18)] = 166,
+  [SMALL_STATE(19)] = 170,
+  [SMALL_STATE(20)] = 174,
+  [SMALL_STATE(21)] = 178,
+  [SMALL_STATE(22)] = 182,
+  [SMALL_STATE(23)] = 186,
+  [SMALL_STATE(24)] = 190,
+  [SMALL_STATE(25)] = 194,
+  [SMALL_STATE(26)] = 198,
+  [SMALL_STATE(27)] = 202,
+  [SMALL_STATE(28)] = 206,
+  [SMALL_STATE(29)] = 210,
+  [SMALL_STATE(30)] = 214,
 };
 
 static const TSParseActionEntry ts_parse_actions[] = {