-  char
 
-       -  ``driver[32]``
+       -  ``driver\[32\]``
 
        -  The name of the cec adapter driver.
 
 
        -  char
 
-       -  ``name[32]``
+       -  ``name\[32\]``
 
        -  The name of this CEC adapter. The combination ``driver`` and
          ``name`` must be unique.
 
        -  The actual logical addresses that were claimed. This is set by the
          driver. If no logical address could be claimed, then it is set to
          ``CEC_LOG_ADDR_INVALID``. If this adapter is Unregistered, then
-         ``log_addr[0]`` is set to 0xf and all others to
+         ``log_addr\[0\]`` is set to 0xf and all others to
          ``CEC_LOG_ADDR_INVALID``.
 
     -  .. row 2
 
        -  char
 
-       -  ``osd_name``\ [15]
+       -  ``osd_name``\ \[15\]
 
        -  The On-Screen Display name as is returned by the
          ``CEC_MSG_SET_OSD_NAME`` message.
 
        -  __u8
 
-       -  ``features`` [CEC_MAX_LOG_ADDRS][12]
+       -  ``features`` [CEC_MAX_LOG_ADDRS]\[12\]
 
        -  Features for each logical address. Used to implement the
          ``CEC_MSG_REPORT_FEATURES`` message. The 12 bytes include both the
 
 
        -  __u8
 
-       -  ``msg``\ [16]
+       -  ``msg``\ \[16\]
 
        -  The message payload. For :ref:`CEC_TRANSMIT` this is filled in by the
          application. The driver will fill this in for :ref:`CEC_RECEIVE` and
 
        unsigned int index;
        unsigned int type;
        unsigned int length;
-       unsigned char msg[256];
+       unsigned char msg\[256\];
     } ca_msg_t;
 
 
     typedef struct ca_descr {
        unsigned int index;
        unsigned int parity;
-       unsigned char cw[8];
+       unsigned char cw\[8\];
     } ca_descr_t;
 
 
 
 Synopsis
 --------
 
-.. cpp:function:: int ioctl(fd, int request = DMX_GET_PES_PIDS, __u16[5])
+.. cpp:function:: int ioctl(fd, int request = DMX_GET_PES_PIDS, __u16\[5\])
 
 
 Arguments
 
     -  .. row 3
 
-       -  __u16[5]
+       -  __u16\[5\]
 
        -  Undocumented.
 
 
 
     struct dtv_property {
        __u32 cmd;
-       __u32 reserved[3];
+       __u32 reserved\[3\];
        union {
            __u32 data;
            struct dtv_fe_stats st;
            struct {
-               __u8 data[32];
+               __u8 data\[32\];
                __u32 len;
-               __u32 reserved1[3];
+               __u32 reserved1\[3\];
                void *reserved2;
            } buffer;
        } u;
 
         struct secCmdSequence scmds;
         struct dmx_pes_filter_params pesFilterParams;
         FrontendParameters frp;
-        struct pollfd pfd[1];
+        struct pollfd pfd\[1\];
         FrontendEvent event;
         int demux1, demux2, demux3, front;
 
         scmd.u.diseqc.addr=0x10;
         scmd.u.diseqc.cmd=0x38;
         scmd.u.diseqc.numParams=1;
-        scmd.u.diseqc.params[0] = 0xF0 | ((diseqc * 4) & 0x0F) |
+        scmd.u.diseqc.params\[0\] = 0xF0 | ((diseqc * 4) & 0x0F) |
             (scmds.continuousTone == SEC_TONE_ON ? 1 : 0) |
             (scmds.voltage==SEC_VOLTAGE_18 ? 2 : 0);
 
             return -1;
         }
 
-        pfd[0].fd = front;
-        pfd[0].events = POLLIN;
+        pfd\[0\].fd = front;
+        pfd\[0\].events = POLLIN;
 
         if (poll(pfd,1,3000)){
-            if (pfd[0].revents & POLLIN){
+            if (pfd\[0\].revents & POLLIN){
                 printf("Getting QPSK event\\n");
                 if ( ioctl(front, FE_GET_EVENT, &event)
 
         int written;
         uint8_t buf[BUFFY];
         uint64_t length;
-        struct pollfd pfd[1];
+        struct pollfd pfd\[1\];
         int dvr, dvr_out;
 
         /* open dvr device */
             return -1;
         }
 
-        pfd[0].fd = dvr;
-        pfd[0].events = POLLIN;
+        pfd\[0\].fd = dvr;
+        pfd\[0\].events = POLLIN;
 
         /* poll for dvr data and write to file */
         while (length < MAX_LENGTH ) {
             if (poll(pfd,1,1)){
-                if (pfd[0].revents & POLLIN){
+                if (pfd\[0\].revents & POLLIN){
                     len = read(dvr, buf, BUFFY);
                     if (len < 0){
                         perror("recording");
 
 
        -  uint8_t
 
-       -  msg[4]
+       -  msg\[4\]
 
-       -  DiSEqC message (framing, data[3])
+       -  DiSEqC message (framing, data\[3\])
 
     -  .. row 2
 
 
 
        -  uint8_t
 
-       -  msg[6]
+       -  msg\[6\]
 
-       -  DiSEqC message (framing, address, command, data[3])
+       -  DiSEqC message (framing, address, command, data\[3\])
 
     -  .. row 2
 
 
 
        -  char
 
-       -  name[128]
+       -  name\[128\]
 
        -  Name of the frontend
 
 
            } play;
 
            struct {
-               __u32 data[16];
+               __u32 data\[16\];
            } raw;
        };
     };
      typedef
      struct video_navi_pack {
         int length;         /* 0 ... 1024 */
-        uint8_t data[1024];
+        uint8_t data\[1024\];
      } video_navi_pack_t;
 
 
 
 
        -  char
 
-       -  ``driver``\ [16]
+       -  ``driver``\ \[16\]
 
        -  Name of the driver implementing the media API as a NUL-terminated
          ASCII string. The driver version is stored in the
 
        -  char
 
-       -  ``model``\ [32]
+       -  ``model``\ \[32\]
 
        -  Device model name as a NUL-terminated UTF-8 string. The device
          version is stored in the ``device_version`` field and is not be
 
        -  char
 
-       -  ``serial``\ [40]
+       -  ``serial``\ \[40\]
 
        -  Serial number as a NUL-terminated ASCII string.
 
 
        -  char
 
-       -  ``bus_info``\ [32]
+       -  ``bus_info``\ \[32\]
 
        -  Location of the device in the system as a NUL-terminated ASCII
          string. This includes the bus type name (PCI, USB, ...) and a
 
        -  __u32
 
-       -  ``reserved``\ [31]
+       -  ``reserved``\ \[31\]
 
        -  Reserved for future extensions. Drivers and applications must set
          this array to zero.
 
 
        -  char
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -
        -
        -
        -  __u8
 
-       -  ``raw``\ [184]
+       -  ``raw``\ \[184\]
 
        -
        -
 
 
        -  char
 
-       -  ``name``\ [64]
+       -  ``name``\ \[64\]
 
        -  Entity name as an UTF-8 NULL-terminated string.
 
 
        -  __u32
 
-       -  ``reserved``\ [12]
+       -  ``reserved``\ \[12\]
 
        -  Reserved for future extensions. Drivers and applications must set
          this array to zero.
 
        -  __u32
 
-       -  ``reserved``\ [9]
+       -  ``reserved``\ \[9\]
 
        -  Reserved for future extensions. Drivers and applications must set
          this array to zero.
 
        -  __u32
 
-       -  ``reserved``\ [9]
+       -  ``reserved``\ \[9\]
 
        -  Reserved for future extensions. Drivers and applications must set
          this array to zero.
 
        -  __u32
 
-       -  ``reserved``\ [5]
+       -  ``reserved``\ \[5\]
 
        -  Reserved for future extensions. Drivers and applications must set
          this array to zero.
 
            struct parse_key *p;
 
            for (p=keynames;p->name!=NULL;p++) {
-                   if (p->value == (unsigned)codes[1]) {
-                           printf("scancode 0x%04x = %s (0x%02x)\\n", codes[0], p->name, codes[1]);
+                   if (p->value == (unsigned)codes\[1\]) {
+                           printf("scancode 0x%04x = %s (0x%02x)\\n", codes\[0\], p->name, codes\[1\]);
                            return;
                    }
            }
 
-           if (isprint (codes[1]))
-                   printf("scancode %d = '%c' (0x%02x)\\n", codes[0], codes[1], codes[1]);
+           if (isprint (codes\[1\]))
+                   printf("scancode %d = '%c' (0x%02x)\\n", codes\[0\], codes\[1\], codes\[1\]);
            else
-                   printf("scancode %d = 0x%02x\\n", codes[0], codes[1]);
+                   printf("scancode %d = 0x%02x\\n", codes\[0\], codes\[1\]);
     }
 
     int parse_code(char *string)
     {
            int fd;
            unsigned int i, j;
-           int codes[2];
+           int codes\[2\];
 
            if (argc<2 || argc>4) {
                    printf ("usage: %s <device> to get table; or\\n"
                    return -1;
            }
 
-           if ((fd = open(argv[1], O_RDONLY)) < 0) {
+           if ((fd = open(argv\[1\], O_RDONLY)) < 0) {
                    perror("Couldn't open input device");
                    return(-1);
            }
            if (argc==4) {
                    int value;
 
-                   value=parse_code(argv[3]);
+                   value=parse_code(argv\[3\]);
 
                    if (value==-1) {
-                           value = strtol(argv[3], NULL, 0);
+                           value = strtol(argv\[3\], NULL, 0);
                            if (errno)
                                    perror("value");
                    }
 
-                   codes [0] = (unsigned) strtol(argv[2], NULL, 0);
-                   codes [1] = (unsigned) value;
+                   codes \[0\] = (unsigned) strtol(argv\[2\], NULL, 0);
+                   codes \[1\] = (unsigned) value;
 
                    if(ioctl(fd, EVIOCSKEYCODE, codes))
                            perror ("EVIOCSKEYCODE");
            if (argc==3) {
                    FILE *fin;
                    int value;
-                   char *scancode, *keycode, s[2048];
+                   char *scancode, *keycode, s\[2048\];
 
-                   fin=fopen(argv[2],"r");
+                   fin=fopen(argv\[2\],"r");
                    if (fin==NULL) {
                            perror ("opening keycode file");
                            return -1;
                    /* Clears old table */
                    for (j = 0; j < 256; j++) {
                            for (i = 0; i < 256; i++) {
-                                   codes[0] = (j << 8) | i;
-                                   codes[1] = KEY_RESERVED;
+                                   codes\[0\] = (j << 8) | i;
+                                   codes\[1\] = KEY_RESERVED;
                                    ioctl(fd, EVIOCSKEYCODE, codes);
                            }
                    }
                                            perror("value");
                            }
 
-                           codes [0] = (unsigned) strtol(scancode, NULL, 0);
-                           codes [1] = (unsigned) value;
+                           codes \[0\] = (unsigned) strtol(scancode, NULL, 0);
+                           codes \[1\] = (unsigned) value;
 
-                           // printf("\\t%04x=%04x\\n",codes[0], codes[1]);
+                           // printf("\\t%04x=%04x\\n",codes\[0\], codes\[1\]);
                            if(ioctl(fd, EVIOCSKEYCODE, codes)) {
-                                   fprintf(stderr, "Setting scancode 0x%04x with 0x%04x via ",codes[0], codes[1]);
+                                   fprintf(stderr, "Setting scancode 0x%04x with 0x%04x via ",codes\[0\], codes\[1\]);
                                    perror ("EVIOCSKEYCODE");
                            }
 
            /* Get scancode table */
            for (j = 0; j < 256; j++) {
                    for (i = 0; i < 256; i++) {
-                           codes[0] = (j << 8) | i;
-                           if (!ioctl(fd, EVIOCGKEYCODE, codes) && codes[1] != KEY_RESERVED)
+                           codes\[0\] = (j << 8) | i;
+                           if (!ioctl(fd, EVIOCGKEYCODE, codes) && codes\[1\] != KEY_RESERVED)
                                    prtcode(codes);
                    }
            }
 
 
        -  __u32
 
-       -  ``reserved[11]``
+       -  ``reserved\[11\]``
 
        -
        -  Reserved for future use. Should be zeroed by drivers and
 
        -  __u8
 
-       -  ``userbits``\ [4]
+       -  ``userbits``\ \[4\]
 
        -  The "user group" bits from the timecode.
 
 
 
            switch (io) {
            case IO_METHOD_READ:
-                   if (-1 == read(fd, buffers[0].start, buffers[0].length)) {
+                   if (-1 == read(fd, buffers\[0\].start, buffers\[0\].length)) {
                            switch (errno) {
                            case EAGAIN:
                                    return 0;
                            }
                    }
 
-                   process_image(buffers[0].start, buffers[0].length);
+                   process_image(buffers\[0\].start, buffers\[0\].length);
                    break;
 
            case IO_METHOD_MMAP:
 
            switch (io) {
            case IO_METHOD_READ:
-                   free(buffers[0].start);
+                   free(buffers\[0\].start);
                    break;
 
            case IO_METHOD_MMAP:
                    exit(EXIT_FAILURE);
            }
 
-           buffers[0].length = buffer_size;
-           buffers[0].start = malloc(buffer_size);
+           buffers\[0\].length = buffer_size;
+           buffers\[0\].start = malloc(buffer_size);
 
-           if (!buffers[0].start) {
+           if (!buffers\[0\].start) {
                    fprintf(stderr, "Out of memory\\n");
                    exit(EXIT_FAILURE);
            }
                     "-f | --format        Force format to 640x480 YUYVn"
                     "-c | --count         Number of frames to grab [%i]n"
                     "",
-                    argv[0], dev_name, frame_count);
+                    argv\[0\], dev_name, frame_count);
     }
 
     static const char short_options[] = "d:hmruofc:";
 
     }
 
     for (i = 0; i < 30; i++) {
-       char dev_name[16];
+       char dev_name\[16\];
        struct fb_fix_screeninfo si;
 
        snprintf(dev_name, sizeof(dev_name), "/dev/fb%u", i);
 
          service transmissions embedded in the picture.
 
          An application can set the first or second ``count`` value to zero
-         if no data is required from the respective field; ``count``\ [1]
+         if no data is required from the respective field; ``count``\ \[1\]
          if the scanning system is progressive, i. e. not interlaced. The
          corresponding start value shall be ignored by the application and
          driver. Anyway, drivers may not support single field capturing and
 
 .. code-block:: c
 
-    (count[0] + count[1]) * samples_per_line * sample size in bytes
+    (count\[0\] + count\[1\]) * samples_per_line * sample size in bytes
 
 The sample size is most likely always one byte, applications must check
 the ``sample_format`` field though, to function properly with other
 
 
        -  __u8
 
-       -  ``reserved[24]``
+       -  ``reserved\[24\]``
 
        -  This array is reserved for future extensions. Drivers and
          applications must set it to zero.
 
 
        -  __u16
 
-       -  ``service_lines``\ [2][24]
+       -  ``service_lines``\ \[2\]\[24\]
 
        -  :cspan:`2`
 
 
        -
        -
-       -  ``service_lines``\ [0][1]
+       -  ``service_lines``\ \[0\]\[1\]
 
        -  1
 
 
        -
        -
-       -  ``service_lines``\ [0][23]
+       -  ``service_lines``\ \[0\]\[23\]
 
        -  23
 
 
        -
        -
-       -  ``service_lines``\ [1][1]
+       -  ``service_lines``\ \[1\]\[1\]
 
        -  264
 
 
        -
        -
-       -  ``service_lines``\ [1][23]
+       -  ``service_lines``\ \[1\]\[23\]
 
        -  286
 
 
        -
        -
-       -  :cspan:`2` Drivers must set ``service_lines`` [0][0] and
-         ``service_lines``\ [1][0] to zero. The
+       -  :cspan:`2` Drivers must set ``service_lines`` \[0\]\[0\] and
+         ``service_lines``\ \[1\]\[0\] to zero. The
          ``V4L2_VBI_ITU_525_F1_START``, ``V4L2_VBI_ITU_525_F2_START``,
          ``V4L2_VBI_ITU_625_F1_START`` and ``V4L2_VBI_ITU_625_F2_START``
          defines give the start line numbers for each field for each 525 or
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  :cspan:`2` This array is reserved for future extensions.
          Applications and drivers must set it to zero.
 
        -  __u8
 
-       -  ``data``\ [48]
+       -  ``data``\ \[48\]
 
        -  The packet payload. See :ref:`vbi-services` for the contents and
          number of bytes passed for each data type. The contents of padding
 
        -  __u8
 
-       -  ``magic``\ [4]
+       -  ``magic``\ \[4\]
 
        -
        -  A "magic" constant from :ref:`v4l2-mpeg-vbi-fmt-ivtv-magic` that
 
        -  __le32
 
-       -  ``linemask``\ [2]
+       -  ``linemask``\ \[2\]
 
        -  Bitmasks indicating the VBI service lines present. These
          ``linemask`` values are stored in little endian byte order in the
 
          ::
 
-             linemask[0] b0:     line  6     first field
-             linemask[0] b17:        line 23     first field
-             linemask[0] b18:        line  6     second field
-             linemask[0] b31:        line 19     second field
-             linemask[1] b0:     line 20     second field
-             linemask[1] b3:     line 23     second field
-             linemask[1] b4-b31: unused and set to 0
+             linemask\[0\] b0:     line  6     first field
+             linemask\[0\] b17:        line 23     first field
+             linemask\[0\] b18:        line  6     second field
+             linemask\[0\] b31:        line 19     second field
+             linemask\[1\] b0:     line 20     second field
+             linemask\[1\] b3:     line 23     second field
+             linemask\[1\] b4-b31: unused and set to 0
 
     -  .. row 2
 
        -  struct
          :ref:`v4l2_mpeg_vbi_itv0_line <v4l2-mpeg-vbi-itv0-line>`
 
-       -  ``line``\ [35]
+       -  ``line``\ \[35\]
 
        -  This is a variable length array that holds from 1 to 35 lines of
          sliced VBI data. The sliced VBI data lines present correspond to
          the bits set in the ``linemask`` array, starting from b\ :sub:`0`
-         of ``linemask``\ [0] up through b\ :sub:`31` of ``linemask``\ [0],
-         and from b\ :sub:`0` of ``linemask``\ [1] up through b\ :sub:`3` of
-         ``linemask``\ [1]. ``line``\ [0] corresponds to the first bit
-         found set in the ``linemask`` array, ``line``\ [1] corresponds to
+         of ``linemask``\ \[0\] up through b\ :sub:`31` of ``linemask``\ \[0\],
+         and from b\ :sub:`0` of ``linemask``\ \[1\] up through b\ :sub:`3` of
+         ``linemask``\ \[1\]. ``line``\ \[0\] corresponds to the first bit
+         found set in the ``linemask`` array, ``line``\ \[1\] corresponds to
          the second bit found set in the ``linemask`` array, etc. If no
-         ``linemask`` array bits are set, then ``line``\ [0] may contain
+         ``linemask`` array bits are set, then ``line``\ \[0\] may contain
          one line of unspecified data that should be ignored by
          applications.
 
        -  struct
          :ref:`v4l2_mpeg_vbi_itv0_line <v4l2-mpeg-vbi-itv0-line>`
 
-       -  ``line``\ [36]
+       -  ``line``\ \[36\]
 
-       -  A fixed length array of 36 lines of sliced VBI data. ``line``\ [0]
-         through ``line``\ [17] correspond to lines 6 through 23 of the
-         first field. ``line``\ [18] through ``line``\ [35] corresponds to
+       -  A fixed length array of 36 lines of sliced VBI data. ``line``\ \[0\]
+         through ``line``\ \[17\] correspond to lines 6 through 23 of the
+         first field. ``line``\ \[18\] through ``line``\ \[35\] corresponds to
          lines 6 through 23 of the second field.
 
 
 
        -  __u8
 
-       -  ``data``\ [42]
+       -  ``data``\ \[42\]
 
        -  The sliced VBI data for the line.
 
 
 A number of changes were made to the raw VBI interface.
 
 1. Figures clarifying the line numbering scheme were added to the V4L2
-   API specification. The ``start``\ [0] and ``start``\ [1] fields no
+   API specification. The ``start``\ \[0\] and ``start``\ \[1\] fields no
    longer count line numbers beginning at zero. Rationale: a) The
    previous definition was unclear. b) The ``start``\ [] values are
    ordinal numbers. c) There is no point in inventing a new line
    Compatibility: Add one to the start values. Applications depending on
    the previous semantics may not function correctly.
 
-2. The restriction "count[0] > 0 and count[1] > 0" has been relaxed to
-   "(count[0] + count[1]) > 0". Rationale: Drivers may allocate
+2. The restriction "count\[0\] > 0 and count\[1\] > 0" has been relaxed to
+   "(count\[0\] + count\[1\]) > 0". Rationale: Drivers may allocate
    resources at scan line granularity and some data services are
    transmitted only on the first field. The comment that both ``count``
    values will usually be equal is misleading and pointless and has been
     memory. It was barely useful and so was removed.
 
 14. In struct :ref:`v4l2_framebuffer <v4l2-framebuffer>` the
-    ``base[3]`` array anticipating double- and triple-buffering in
+    ``base\[3\]`` array anticipating double- and triple-buffering in
     off-screen video memory, however without defining a synchronization
     mechanism, was replaced by a single pointer. The
     ``V4L2_FBUF_CAP_SCALEUP`` and ``V4L2_FBUF_CAP_SCALEDOWN`` flags were
 V4L2 in Linux 2.6.8
 ===================
 
-1. A new field ``input`` (former ``reserved[0]``) was added to the
+1. A new field ``input`` (former ``reserved\[0\]``) was added to the
    struct :ref:`v4l2_buffer <v4l2-buffer>` structure. Purpose of this
    field is to alternate between video inputs (e. g. cameras) in step
    with the video capturing process. This function must be enabled with
 
 
        -  __u16
 
-       -  ``reserved[6]``
+       -  ``reserved\[6\]``
 
        -  Reserved for future extensions. Should be zeroed by drivers and
          applications.
 
        -  __u8
 
-       -  ``reserved[7]``
+       -  ``reserved\[7\]``
 
        -  Reserved for future extensions. Should be zeroed by drivers and
          applications.
 
 
        -  __u16
 
-       -  ``reserved``\ [11]
+       -  ``reserved``\ \[11\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
            int                             r, fd = -1;
            unsigned int                    i, n_buffers;
            char                            *dev_name = "/dev/video0";
-           char                            out_name[256];
+           char                            out_name\[256\];
            FILE                            *fout;
            struct buffer                   *buffers;
 
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  A place holder for future extensions. Drivers and applications
          must set the array to zero.
 
        -
        -  char
 
-       -  ``name[32]``
+       -  ``name\[32\]``
 
        -  Match a chip by this name, interpreted according to the ``type``
          field. Currently unused.
 
        -  char
 
-       -  ``name[32]``
+       -  ``name\[32\]``
 
        -  The name of the chip.
 
 
        -  __u32
 
-       -  ``reserved[8]``
+       -  ``reserved\[8\]``
 
        -  Reserved fields, both application and driver must set these to 0.
 
 
        -
        -  char
 
-       -  ``name[32]``
+       -  ``name\[32\]``
 
        -  Match a chip by this name, interpreted according to the ``type``
          field. Currently unused.
 
        -
        -  __u32
 
-       -  ``data``\ [16]
+       -  ``data``\ \[16\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
        -
        -  __u8
 
-       -  ``data``\ [64]
+       -  ``data``\ \[64\]
 
        -  Event data. Defined by the event type. The union should be used to
          define easily accessible type for events.
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -
        -  Reserved for future extensions. Drivers must set the array to
 
 
        -  __u32
 
-       -  ``reserved``\ [16]
+       -  ``reserved``\ \[16\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
        -
        -  __u32
 
-       -  ``raw_data``\ [32]
+       -  ``raw_data``\ \[32\]
 
        -
 
 
 
        -  __u32
 
-       -  ``data``\ [8]
+       -  ``data``\ \[8\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
 
        -  __u8
 
-       -  ``description``\ [32]
+       -  ``description``\ \[32\]
 
        -  Description of the format, a NUL-terminated ASCII string. This
          information is intended for the user, for example: "YUV 4:2:2".
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
 
        -  __u32
 
-       -  ``reserved[2]``
+       -  ``reserved\[2\]``
 
        -
        -  Reserved space for future use. Must be zeroed by drivers and
 
 
        -  __u32
 
-       -  ``reserved[2]``
+       -  ``reserved\[2\]``
 
        -
        -  Reserved space for future use. Must be zeroed by drivers and
 
 
        -  __u32
 
-       -  ``reserved``\ [9]
+       -  ``reserved``\ \[9\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the video input, a NUL-terminated ASCII string, for
          example: "Vin (Composite 2)". This information is intended for the
 
        -  __u32
 
-       -  ``reserved``\ [3]
+       -  ``reserved``\ \[3\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the video output, a NUL-terminated ASCII string, for
          example: "Vout". This information is intended for the user,
 
        -  __u32
 
-       -  ``reserved``\ [3]
+       -  ``reserved``\ \[3\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
 
        -  __u8
 
-       -  ``name``\ [24]
+       -  ``name``\ \[24\]
 
        -  Name of the standard, a NUL-terminated ASCII string, for example:
          "PAL-B/G", "NTSC Japan". This information is intended for the
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
 
        -  __u32
 
-       -  ``reserved[11]``
+       -  ``reserved\[11\]``
 
        -  Reserved field for future use. Drivers and applications must set
          the array to zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the audio input, a NUL-terminated ASCII string, for
          example: "Line In". This information is intended for the user,
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the audio output, a NUL-terminated ASCII string, for
          example: "Line Out". This information is intended for the user,
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
        -
        -  __u32
 
-       -  ``reserved``\ [32]
+       -  ``reserved``\ \[32\]
 
        -
 
 
 
        -  __u32
 
-       -  ``reserved``\ [5]
+       -  ``reserved``\ \[5\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  :cspan:`2` Reserved for future extensions. Drivers must set the
          array to zero.
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
 
        -  __u32
 
-       -  ``reserved2``\ [1]
+       -  ``reserved2``\ \[1\]
 
        -
        -  Reserved for future extensions. Drivers and applications must set
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
        -
        -  __u8
 
-       -  ``raw_data``\ [200]
+       -  ``raw_data``\ \[200\]
 
        -  Place holder for future extensions.
 
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
 
        -  char
 
-       -  ``APP_data``\ [60]
+       -  ``APP_data``\ \[60\]
 
        -
 
 
        -  char
 
-       -  ``COM_data``\ [60]
+       -  ``COM_data``\ \[60\]
 
        -
 
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the modulator, a NUL-terminated ASCII string. This
          information is intended for the user.
 
        -  __u32
 
-       -  ``reserved``\ [3]
+       -  ``reserved``\ \[3\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
        -
        -  __u8
 
-       -  ``raw_data``\ [200]
+       -  ``raw_data``\ \[200\]
 
        -  A place holder for future extensions.
 
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved[9]``
+       -  ``reserved\[9\]``
 
        -  Reserved fields for future use. Drivers and applications must zero
          this array.
 
 
        -  __u16
 
-       -  ``service_lines``\ [2][24]
+       -  ``service_lines``\ \[2\]\[24\]
 
        -  :cspan:`2` Each element of this array contains a set of data
          services the hardware can look for or insert into a particular
 
        -
        -
-       -  ``service_lines``\ [0][1]
+       -  ``service_lines``\ \[0\]\[1\]
 
        -  1
 
 
        -
        -
-       -  ``service_lines``\ [0][23]
+       -  ``service_lines``\ \[0\]\[23\]
 
        -  23
 
 
        -
        -
-       -  ``service_lines``\ [1][1]
+       -  ``service_lines``\ \[1\]\[1\]
 
        -  264
 
 
        -
        -
-       -  ``service_lines``\ [1][23]
+       -  ``service_lines``\ \[1\]\[23\]
 
        -  286
 
 
        -
        -
-       -  :cspan:`2` Drivers must set ``service_lines`` [0][0] and
-         ``service_lines``\ [1][0] to zero.
+       -  :cspan:`2` Drivers must set ``service_lines`` \[0\]\[0\] and
+         ``service_lines``\ \[1\]\[0\] to zero.
 
     -  .. row 12
 
 
        -  __u32
 
-       -  ``reserved``\ [3]
+       -  ``reserved``\ \[3\]
 
        -  :cspan:`2` This array is reserved for future extensions.
          Applications and drivers must set it to zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  :cspan:`1`
 
 
        -  __u32
 
-       -  ``reserved``\ [4]
+       -  ``reserved``\ \[4\]
 
        -  :cspan:`1` Reserved for future extensions. Drivers and
          applications must set the array to zero.
 
 
        -  __u8
 
-       -  ``driver``\ [16]
+       -  ``driver``\ \[16\]
 
        -  Name of the driver, a unique NUL-terminated ASCII string. For
          example: "bttv". Driver specific applications can use this
 
        -  __u8
 
-       -  ``card``\ [32]
+       -  ``card``\ \[32\]
 
        -  Name of the device, a NUL-terminated UTF-8 string. For example:
          "Yoyodyne TV/FM". One driver may support different brands or
 
        -  __u8
 
-       -  ``bus_info``\ [32]
+       -  ``bus_info``\ \[32\]
 
        -  Location of the device in the system, a NUL-terminated ASCII
          string. For example: "PCI:0000:05:06.0". This information is
 
        -  __u32
 
-       -  ``reserved``\ [3]
+       -  ``reserved``\ \[3\]
 
        -  Reserved for future extensions. Drivers must set this array to
          zero.
 
 
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the control, a NUL-terminated ASCII string. This
          information is intended for the user.
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  Reserved for future extensions. Drivers must set the array to
          zero.
 
        -  char
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the control, a NUL-terminated ASCII string. This
          information is intended for the user.
        -  The size in bytes of a single element of the array. Given a char
          pointer ``p`` to a 3-dimensional array you can find the position
          of cell ``(z, y, x)`` as follows:
-         ``p + ((z * dims[1] + y) * dims[0] + x) * elem_size``.
+         ``p + ((z * dims\[1\] + y) * dims\[0\] + x) * elem_size``.
          ``elem_size`` is always valid, also when the control isn't an
          array. For string controls ``elem_size`` is equal to
          ``maximum + 1``.
 
        -  __u32
 
-       -  ``reserved``\ [32]
+       -  ``reserved``\ \[32\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
        -
        -  __u8
 
-       -  ``name``\ [32]
+       -  ``name``\ \[32\]
 
        -  Name of the menu item, a NUL-terminated ASCII string. This
          information is intended for the user. This field is valid for
 
 
        -  __u32
 
-       -  ``reserved``\ [2]
+       -  ``reserved``\ \[2\]
 
        -  A place holder for future extensions. Drivers and applications
          must set the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [5]
+       -  ``reserved``\ \[5\]
 
        -  Reserved for future extensions. Applications must set the array to
          zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [9]
+       -  ``reserved``\ \[9\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [8]
+       -  ``reserved``\ \[8\]
 
        -  Reserved for future extensions. Applications and drivers must set
          the array to zero.
 
 
        -  __u32
 
-       -  ``reserved``\ [5]
+       -  ``reserved``\ \[5\]
 
        -  Reserved for future extensions. Drivers and applications must set
          the array to zero.