)]}'
{
  "log": [
    {
      "commit": "2e6cdb91e8dea08301f31bc83188c06112eb7f57",
      "tree": "7a036777bf8fc4db2e39c92ee1923c5c9953747c",
      "parents": [
        "3e492c2d5fbd4ae395ffddfc059a3c414604b951"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 28 11:07:44 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 28 11:07:44 2021 +0100"
      },
      "message": "patch 8.2.2418: color not changed if ModeMsg highlight is set in InsertEnter\n\nProblem:    Color not changed if ModeMsg highlight is set in InsertEnter\n            autocmd event. (Paul Swanson)\nSolution:   Call highlight_changed() after triggering InsertEnter.\n            (closes #7751)\n"
    },
    {
      "commit": "82aa6e09e02b138ab7ee6b79ecac487813f117e5",
      "tree": "d0a7cb1a7de006d723b18f77da135788c63bb435",
      "parents": [
        "f30a14db3b26e510f193f50ee0dd8a41303e4740"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 17 22:04:02 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 17 22:04:02 2021 +0100"
      },
      "message": "patch 8.2.2374: accessing uninitialized memory in test_undo\n\nProblem:    Accessing uninitialized memory in test_undo.\nSolution:   Do not look in typebuf.tb_buf if it is empty. (Dominique Pellé,\n            closes #7697)\n"
    },
    {
      "commit": "0684e36a7ee0743f2889698fb8e0e14f7acae423",
      "tree": "7a1f23d46e7e1fa94329d7da561bc4a152b7750f",
      "parents": [
        "af0df47a7671a39f2cde950587ba48800188bfb9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 03 19:54:42 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 03 19:54:42 2020 +0100"
      },
      "message": "patch 8.2.2084: CTRL-V U doesn\u0027t work to enter a Unicode character\n\nProblem:    CTRL-V U doesn\u0027t work to enter a Unicode character when\n            modifyOtherKeys is effective. (Ken Takata)\nSolution:   Add a flag to get_literal() for the shift key. (closes #7413)\n"
    },
    {
      "commit": "e41decc892a115335259096c3bc0204dd99b372b",
      "tree": "45f16ad3fce28d98a5f9f259f16be11c37f0671a",
      "parents": [
        "6453cc8078af403956d0e8c1849cf5ec0aae86b2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 14 21:34:59 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 14 21:34:59 2020 +0100"
      },
      "message": "patch 8.2.1988: still in Insert mode when opening terminal popup\n\nProblem:    Still in Insert mode when opening terminal popup with a \u003cCmd\u003e\n            mapping in Insert mode.\nSolution:   Exit Insert mode. (closes #7295)\n"
    },
    {
      "commit": "957cf67d50516ba98716f59c9e1cb6412ec1535d",
      "tree": "a1f287aee01e4cbb023b2531a5a4b90e9728a8bf",
      "parents": [
        "ea2d407f9c144bb634c59017944e4930ed7f80a2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 12 14:21:06 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 12 14:21:06 2020 +0100"
      },
      "message": "patch 8.2.1978: making a mapping work in all modes is complicated\n\nProblem:    Making a mapping work in all modes is complicated.\nSolution:   Add the \u003cCmd\u003e special key. (Yegappan Lakshmanan, closes #7282,\n            closes 4784, based on patch by Bjorn Linse)\n"
    },
    {
      "commit": "6f6244855fbce5aaa718cd5001a29aac3c5c15d6",
      "tree": "3085b60577b588458df611930840afae9ae5e7b1",
      "parents": [
        "bbf9f344afd08954163191ed678352fb554fc254"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 11 20:52:40 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 11 20:52:40 2020 +0100"
      },
      "message": "patch 8.2.1976: cannot backspace in prompt buffer after using cursor-left\n\nProblem:    Cannot backspace in prompt buffer after using cursor-left. (Maxim\n            Kim)\nSolution:   Ignore \"arrow_used\" in a prompt buffer. (closes #7281)\n"
    },
    {
      "commit": "e10044015841711b989f9a898d427bcc1fdb4c32",
      "tree": "256dbf4f826bbc408bb1eca2b381c4dc4f953eb6",
      "parents": [
        "5661ed6c833e05467cab33cb9b1c535e7e5cc570"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 24 20:49:43 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 24 20:49:43 2020 +0200"
      },
      "message": "patch 8.2.1898: command modifier parsing always uses global cmdmod\n\nProblem:    Command modifier parsing always uses global cmdmod.\nSolution:   Pass in cmdmod_T to use.  Rename struct fields consistently.\n"
    },
    {
      "commit": "b53e13a91ab2fc9d52bd044715daa84972f4ce47",
      "tree": "6df807962d3719c50e6c33beaeaf8bc23ab8b12e",
      "parents": [
        "20d89e0ac65686481f97657008deede0b39ef5db"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 21 12:19:53 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 21 12:19:53 2020 +0200"
      },
      "message": "patch 8.2.1874: can\u0027t do something just before leaving Insert mode\n\nProblem:    Can\u0027t do something just before leaving Insert mode.\nSolution:   Add the InsertLeavePre autocommand event. (closes #7177)\n"
    },
    {
      "commit": "d0e1b7103c14eb0d175c6b245b4b6ed93a204da9",
      "tree": "16bd1d7d65bc1c2a5538c8e48ac11982ef540352",
      "parents": [
        "ac564082f118ccdca828980c5f10b65a40bffb4d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 27 20:13:03 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 27 20:13:03 2020 +0200"
      },
      "message": "patch 8.2.1762: when a timer uses :stopinsert completion isn\u0027t stopped\n\nProblem:    When a timer uses :stopinsert Insert mode completion isn\u0027t\n            stopped. (Stanley Chan)\nSolution:   Call ins_compl_prep(ESC).\n"
    },
    {
      "commit": "c3516f7e4507c77424b94cb89071f6d0841f4e6a",
      "tree": "08b13ec0f9f8b88e0ec8cbab01899960dae3423b",
      "parents": [
        "6defa7bf0a8935cc44f3dc12e9c87bbb40f190b7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 08 22:45:35 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 08 22:45:35 2020 +0200"
      },
      "message": "patch 8.2.1637: Vim9: :put \u003d{expr} does not work inside :def function\n\nProblem:    Vim9: :put \u003d{expr} does not work inside :def function.\nSolution:   Add ISN_PUT. (closes #6397)\n"
    },
    {
      "commit": "8b5866ded6036f7adece26b6d16962bbd2d47842",
      "tree": "a473e6759fd5a5dc6436a6502c0d51ddb077805a",
      "parents": [
        "7dfc5ce7cf4a7f63370d7dce2e13f7410ca0230a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 15:48:51 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 15:48:51 2020 +0200"
      },
      "message": "patch 8.2.1597: the channel source file is too big\n\nProblem:    The channel source file is too big.\nSolution:   Move job related code to a new source file.\n"
    },
    {
      "commit": "86394aa9720c5e087d85831e42d44e042987fbc0",
      "tree": "853c38b28ea57594f1daec276c9fcc2b94c08bf1",
      "parents": [
        "cf8aa6448b3520905bea528ea8ad6533cbef288d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 14:27:24 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 14:27:24 2020 +0200"
      },
      "message": "patch 8.2.1595: cannot easily see what Vim sends to the terminal\n\nProblem:    Cannot easily see what Vim sends to the terminal.\nSolution:   Write output to the channel log if it contains terminal control\n            sequences.  Avoid warnings for tputs() argument.\n"
    },
    {
      "commit": "077cc7aa0e0c431e97795612374fe17fe7c88803",
      "tree": "80843d4928d91ca5f9d4c38d37807e0eb17bc4be",
      "parents": [
        "eadee486c70946ad0e1746d77898d6f4f4acc817"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 04 16:35:35 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 04 16:35:35 2020 +0200"
      },
      "message": "patch 8.2.1588: cannot read back the prompt of a prompt buffer\n\nProblem:    Cannot read back the prompt of a prompt buffer.\nSolution:   Add prompt_getprompt(). (Ben Jackson, closes #6851)\n"
    },
    {
      "commit": "975a880a1389e8ce6dea8d66a7c109140b2f94ec",
      "tree": "64e2a6019a20c05e2b399f73e2f29f7cb20c0d49",
      "parents": [
        "adc17a5f9d207fd1623fd923457a46efc9214777"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 06 22:36:24 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 06 22:36:24 2020 +0200"
      },
      "message": "patch 8.2.0916: mapping with partly modifyOtherKeys code does not work\n\nProblem:    Mapping with partly modifyOtherKeys code does not work.\nSolution:   If there is no mapping with a separate modifier include the\n            modifier in the key and then try mapping again. (closes #6200)\n"
    },
    {
      "commit": "11abd095210fc84e5dcee87b9baed86061caefe4",
      "tree": "5c8dcbdb357df1d9e8d2ae9142fb05f4f768151b",
      "parents": [
        "4cfde1d273ec5fca68a983805af48ea37d3d94e5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 01 14:26:37 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 01 14:26:37 2020 +0200"
      },
      "message": "patch 8.2.0674: some source files are too big\n\nProblem:    Some source files are too big.\nSolution:   Move text formatting functions to a new file. (Yegappan\n            Lakshmanan, closes #6021)\n"
    },
    {
      "commit": "6adb9ea0a6ca01414f4b591f379b0f829a8273c0",
      "tree": "8af9e5e5b2ea5d0a76e0fb1b393835c46674b27f",
      "parents": [
        "4e5534fab798ab7c95554da3bc80b08336aedc2b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 30 22:31:18 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 30 22:31:18 2020 +0200"
      },
      "message": "patch 8.2.0670: cannot change window when evaluating \u0027completefunc\u0027\n\nProblem:    Cannot change window when evaluating \u0027completefunc\u0027.\nSolution:   Make a difference between not changing text or buffers and also\n            not changing window.\n"
    },
    {
      "commit": "db93495d276642f63f80471fbcb900b9aa1e9e42",
      "tree": "fca8ecb1216bbce25b08f87f2ec5857df935ab8b",
      "parents": [
        "0e71704b77a9891ccae9f5a9c7429e933078f232"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 27 20:18:31 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 27 20:18:31 2020 +0200"
      },
      "message": "patch 8.2.0649: undo problem whn an InsertLeave autocommand resets undo\n\nProblem:    Undo problem whn an InsertLeave autocommand resets undo. (Kutsan\n            Kaplan)\nSolution:   Do not create a new undo block when leaving Insert mode.\n"
    },
    {
      "commit": "ff06f283e3e4b3ec43012dd3b83f8454c98f6639",
      "tree": "61a07e0fa072ae02212421515c60745109f2b924",
      "parents": [
        "1966c248814d5195edcd1208ed0e51e664a61283"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 22:01:14 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 22:01:14 2020 +0200"
      },
      "message": "patch 8.2.0614: get ml_get error when deleting a line in \u0027completefunc\u0027\n\nProblem:    Get ml_get error when deleting a line in \u0027completefunc\u0027. (Yegappan\n            Lakshmanan)\nSolution:   Lock the text while evaluating \u0027completefunc\u0027.\n"
    },
    {
      "commit": "aa0489e12d227d24752cf16e4e97058ac32edcc1",
      "tree": "c7bffc6ea5b5cf2ec14e15c00c99e779d3f4f15f",
      "parents": [
        "0fc1288aefce25da0a2fb2a0aab75b0bd314403f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 17 19:41:21 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 17 19:41:21 2020 +0200"
      },
      "message": "patch 8.2.0590: no \u0027backspace\u0027 value allows ignoring the insertion point\n\nProblem:    No \u0027backspace\u0027 value allows ignoring the insertion point.\nSolution:   Add the \"nostop\" and 3 values. (Christian Brabandt, closes #5940)\n"
    },
    {
      "commit": "e49b4bb89505fad28cf89f0891aef3e2d397919e",
      "tree": "d2495b040684048ef257f112bf84e32aa7d867ce",
      "parents": [
        "1671f4488105ee12a6a8558ae351436c26ab55fc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 11 13:01:40 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 11 13:01:40 2020 +0100"
      },
      "message": "patch 8.2.0370: the typebuf_was_filled flag is sometimes not reset\n\nProblem:    The typebuf_was_filled flag is sometimes not reset, which may\n            cause a hang.\nSolution:   Make sure typebuf_was_filled is reset when the typeahead buffer is\n            empty.\n"
    },
    {
      "commit": "fe4bbac1166f2e4e3fa18cb966ec7305198c8176",
      "tree": "7dd1957be67664265dbf6dfc9c33834757def74c",
      "parents": [
        "8ba6bb7c94229f1e6f85ea5152ed8b4fbbbd9d20"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 20 21:12:20 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 20 21:12:20 2020 +0100"
      },
      "message": "patch 8.2.0135: bracketed paste can still cause invalid memory access\n\nProblem:    Bracketed paste can still cause invalid memory access. (Dominique\n            Pelle)\nSolution:   Check for NULL pointer.\n"
    },
    {
      "commit": "98a336dd497d3422e7efeef9f24cc9e25aeb8a49",
      "tree": "63869e51ae95905c656e70e3e95665b64da12a70",
      "parents": [
        "ca33eb256eb910af05e8c9852bc9f716cece1f5c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 20 20:22:30 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 20 20:22:30 2020 +0100"
      },
      "message": "patch 8.2.0133: invalid memory access with search command\n\nProblem:    Invalid memory access with search command.\nSolution:   When :normal runs out of characters in bracketed paste mode break\n            out of the loop.(closes #5511)\n"
    },
    {
      "commit": "ac15fd8c6761763c8feedef1a2fbd8309f0a823c",
      "tree": "894e9e51f2f0a13c10cd3ac540db63d6f64beecd",
      "parents": [
        "bf0acff012c2f75563c20241f1a5478534fe2c7a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 09 21:35:48 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 09 21:35:48 2020 +0100"
      },
      "message": "patch 8.2.0109: corrupted text properties when expanding spaces\n\nProblem:    Corrupted text properties when expanding spaces.\nSolution:   Reallocate the line. (Nobuhiro Takasaki, closes #5457)\n"
    },
    {
      "commit": "5cb0b93d52fa5c12ca50a18509947ee6459bb7a8",
      "tree": "a3da122f800028706adcfadb3c28ec6e371b1e2f",
      "parents": [
        "f10997a1543eb0724d882da3678bacd44e647141"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 03 21:25:59 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 03 21:25:59 2020 +0100"
      },
      "message": "patch 8.2.0083: text properties wrong when tabs and spaces are exchanged\n\nProblem:    Text properties wrong when tabs and spaces are exchanged.\nSolution:   Take text properties into account. (Nobuhiro Takasaki,\n            closes #5427)\n"
    },
    {
      "commit": "5d18efecfd6c45d69f55268948a22cd0465bb955",
      "tree": "409afa09cb7fb8f4684e0399f2597ba5d16edbfa",
      "parents": [
        "fa5612c7d836eb789e0f8ff4b10461b8640a14b2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 01 21:11:22 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 01 21:11:22 2019 +0100"
      },
      "message": "patch 8.1.2378: using old C style comments\n\nProblem:    Using old C style comments.\nSolution:   Use // comments where appropriate.\n"
    },
    {
      "commit": "05ad5ff0ab34ed9a5296dedd420ca81698b8ce22",
      "tree": "7354d352e37ab28988ce26e4f88efd9a9b9f71ec",
      "parents": [
        "0c5c3faef2d54151a8c144539e3e5a3350fb18c7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 30 22:48:27 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 30 22:48:27 2019 +0100"
      },
      "message": "patch 8.1.2371: FEAT_TEXT_PROP is a confusing name\n\nProblem:    FEAT_TEXT_PROP is a confusing name.\nSolution:   Use FEAT_PROP_POPUP. (Naruhiko Nishino, closes #5291)\n"
    },
    {
      "commit": "fc4ea2a72d36de1196a3ce17352e72f8fe90f4bb",
      "tree": "d5d681840040dc4e36b94bb94cef2cb972c052b0",
      "parents": [
        "cc4423ae13d78367a3d0b5756783523d3b3a1d31"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 26 19:33:22 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 26 19:33:22 2019 +0100"
      },
      "message": "patch 8.1.2350: other text for CTRL-V in Insert mode with modifyOtherKeys\n\nProblem:    Other text for CTRL-V in Insert mode with modifyOtherKeys.\nSolution:   Convert the Escape sequence back to key as if modifyOtherKeys is\n            not set, and use CTRL-SHIFT-V to get the Escape sequence itself.\n            (closes #5254)\n"
    },
    {
      "commit": "38571a04b4eb2853f46df8884750bcb9a8115db8",
      "tree": "b1d9f7ce21a909af8c54a37047e60ea74ec6329d",
      "parents": [
        "c1faf3dc3879e8a5e486f31445b5a5753dcbc6a3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 26 14:28:15 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 26 14:28:15 2019 +0100"
      },
      "message": "patch 8.1.2346: CTRL-R CTRL-R doesn\u0027t work with modifyOtherKeys\n\nProblem:    CTRL-R CTRL-R doesn\u0027t work with modifyOtherKeys.\nSolution:   Allow key codes when fetching argument for CTRL-R. (closes #5266)\n            Also fix CTRL-G in Insert mode.\n"
    },
    {
      "commit": "546125869f2959480c9a0f6c448c2092d565ec15",
      "tree": "7ac0aff02cb54e73a4a1a0143d6c09ed2eff8bcd",
      "parents": [
        "10455d43fef041309ce0613fa792c635dd71e3a8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 21 17:13:31 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 21 17:13:31 2019 +0100"
      },
      "message": "patch 8.1.2327: cannot build with Hangul input\n\nProblem:    Cannot build with Hangul input.\nSolution:   Remove Hangul input support.\n"
    },
    {
      "commit": "ee85702c10495041791f728e977b86005c4496e8",
      "tree": "ad3a4d7d4d477299da5349d8b9d234243ca33d66",
      "parents": [
        "b0745b221d284e381f1bd4b591cd68ea54b6a51d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 09 23:26:40 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 09 23:26:40 2019 +0100"
      },
      "message": "patch 8.1.2281: \u0027showbreak\u0027 cannot be set for one window\n\nProblem:    \u0027showbreak\u0027 cannot be set for one window.\nSolution:   Make \u0027showbreak\u0027 global-local.\n"
    },
    {
      "commit": "177c9f2f06b048f4c1e154d29423edf65b128f8c",
      "tree": "4443782218352de1bf06af4273647e1228de87cb",
      "parents": [
        "36ec6f6953043270630159a61438ce558552fe3a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 06 13:59:16 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 06 13:59:16 2019 +0100"
      },
      "message": "patch 8.1.2261: with modifyOtherKeys set \u0027noesckeys\u0027 doesn\u0027t work\n\nProblem:    With modifyOtherKeys set \u0027noesckeys\u0027 doesn\u0027t work. (James McCoy)\nSolution:   Disable modifyOtherKeys while in Insert mode when \u0027noesckeys\u0027 is\n            set. (closes #5180)\n"
    },
    {
      "commit": "a1cb1d1dce14dd005797590721f1bcd0e7c3b35f",
      "tree": "be364e198e623b25d59e58d205e598fd954d3f17",
      "parents": [
        "0d2c4bf1714a6b286bd7a10061044414e0b17a15"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 17 23:00:07 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 17 23:00:07 2019 +0200"
      },
      "message": "patch 8.1.2171: mouse support not always available\n\nProblem:    Mouse support not always available.\nSolution:   Enable mouse support also in tiny version.  Do not define\n            FEAT_MOUSE_XTERM on MS-Windows (didn\u0027t really work).\n"
    },
    {
      "commit": "14c01f83487d5c53192297a710eda2b8a4ab17c9",
      "tree": "d5c5e8d42ab13b257fd2e17fd7530511a766ba8a",
      "parents": [
        "6bd1d7706766a7899904163e8fd55ea117fb1953"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 09 22:53:08 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 09 22:53:08 2019 +0200"
      },
      "message": "patch 8.1.2127: the indent.c file is a bit big\n\nProblem:    The indent.c file is a bit big.\nSolution:   Move C-indent code a a new cindent.c file.  Move other\n            indent-related code to indent.c. (Yegappan Lakshmanan,\n            closes #5031)\n"
    },
    {
      "commit": "8c96af9c05bfcac2d5ae081e098d4863db561511",
      "tree": "aa01cdaf87cf8050334c8cb20014774623614e73",
      "parents": [
        "a893194d91a2942d4d54085d746ed137a9251b69"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 28 19:05:57 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 28 19:05:57 2019 +0200"
      },
      "message": "patch 8.1.2096: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate FEAT_COMMENTS.\n"
    },
    {
      "commit": "b20b9e14ddd8db111e886ad0494e15b955159426",
      "tree": "81bf23be4dbc17d4b793a29f3252448f5f1e7322",
      "parents": [
        "4d5c12626c98df23e1a5d953692d946310ddfa9c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 21 20:48:04 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 21 20:48:04 2019 +0200"
      },
      "message": "patch 8.1.2062: the mouse code is spread out\n\nProblem:    The mouse code is spread out.\nSolution:   Move all the mouse code to mouse.c. (Yegappan Lakshmanan,\n            closes #4959)\n"
    },
    {
      "commit": "8aeec40207b5adcd3a155277dc4f29189343b963",
      "tree": "4c62d41b6474eaddb0d2ad4c088bb6931b39b9ce",
      "parents": [
        "ea8dcf8346f488786023fd03ec1c013cda243040"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 15 23:02:04 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 15 23:02:04 2019 +0200"
      },
      "message": "patch 8.1.2044: no easy way to process postponed work\n\nProblem:    No easy way to process postponed work. (Paul Jolly)\nSolution:   Add the SafeState autocommand event.\n"
    },
    {
      "commit": "e2c453d38f6512ac4cff7cd26aa7780b4e2534d7",
      "tree": "8458a35d59ac43121bfd2d24d5e9f7f54969d0dc",
      "parents": [
        "d933c82ff4e2c910bd533ed9a50377699c3f5ec9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 21 14:37:09 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 21 14:37:09 2019 +0200"
      },
      "message": "patch 8.1.1901: the +insert_expand feature is not always available\n\nProblem:    The +insert_expand feature is not always available.\nSolution:   Graduate the +insert_expand feature.\n"
    },
    {
      "commit": "f0bc15c769b60f472d411b3ef98d57db510113c1",
      "tree": "7f970397d8e98743ab01e33b707de5a97ded25ac",
      "parents": [
        "9513d91be02f654658b8b33ff429a52ff3c4de12"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 18 19:23:45 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 18 19:23:45 2019 +0200"
      },
      "message": "patch 8.1.1884: cannot use mouse scroll wheel in popup in Insert mode\n\nProblem:    Cannot use mouse scroll wheel in popup in Insert mode.  Mouse\n            clicks in popup close the popup menu.\nSolution:   Check if the mouse is in a popup window. Do not let mouse events\n            close the popup menu.  (closes #4544)\n"
    },
    {
      "commit": "451d4b5b7c7262631cd1f5057c75d6f5f5772fb1",
      "tree": "deb24fe64258461378994e9255c68f6179f11e31",
      "parents": [
        "06e2c81f6d213d197aa60019b33a263cd5176d68"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 20:22:27 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 20:22:27 2019 +0200"
      },
      "message": "patch 8.1.1520: popup windows are ignored when dealing with mouse position\n\nProblem:    Popup windows are ignored when dealing with mouse position\nSolution:   Find the mouse position inside a popup window.  Allow for modeless\n            selection.\n"
    },
    {
      "commit": "3397f74ac2ac27f1eef48e950c3c8eeb0338fe55",
      "tree": "7ca95e2cfc692c2d90830948c4a4a6c1b620cd22",
      "parents": [
        "b0ebbda06cf1a4a7c40cb274529c4c53de534e32"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 02 18:40:06 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 02 18:40:06 2019 +0200"
      },
      "message": "patch 8.1.1453: popup window \"moved\" property not implemented yet\n\nProblem:    Popup window \"moved\" property not implemented yet.\nSolution:   Implement it.\n"
    },
    {
      "commit": "18a4ba29aeccb9841d5bfdd2eaaffdfae2f15ced",
      "tree": "408ad339f6b34876d2fa481ac61568c7739b1160",
      "parents": [
        "71de720c2c117137185a6fc233b35aab37f0d4bc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 19:39:03 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 19:39:03 2019 +0200"
      },
      "message": "patch 8.1.1386: unessesary type casts for lalloc()\n\nProblem:    Unessesary type casts for lalloc().\nSolution:   Remove type casts.  Change lalloc(size, TRUE) to alloc(size).\n"
    },
    {
      "commit": "964b3746b9c81e65887e2ac9a335f181db2bb592",
      "tree": "9afaaac41a1c4f71b359fd6706b88df00e22e7a1",
      "parents": [
        "d33a764123a8aedb20cd84aeff3b94810ee67c4c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 18:54:09 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 18:54:09 2019 +0200"
      },
      "message": "patch 8.1.1384: using \"int\" for alloc() often results in compiler warnings\n\nProblem:    Using \"int\" for alloc() often results in compiler warnings.\nSolution:   Use \"size_t\" and remove type casts.  Remove alloc_check(), Vim\n            only works with 32 bit ints anyway.\n"
    },
    {
      "commit": "f3333b02f34526da46cdae608f7e2d869bb8c654",
      "tree": "be05ce3393cee6644f8755f59dcdf4b3694dbc33",
      "parents": [
        "386b43e59498cc7b52a60f09f74bdb44df99386c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 22:53:40 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 22:53:40 2019 +0200"
      },
      "message": "patch 8.1.1359: text property wrong after :substitute with backslash\n\nProblem:    Text property wrong after :substitute with backslash.\nSolution:   Adjust text property columns when removing backslashes.\n            (closes #4397)\n"
    },
    {
      "commit": "338dfdad3844ebb1ce1d56c421d1f698c086eb0c",
      "tree": "92afa870c4fd44c0de47468149d64c42708c2aa8",
      "parents": [
        "dc6855af974f2ef553aceee619fadcb858e25d39"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 15:19:57 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 15:19:57 2019 +0200"
      },
      "message": "patch 8.1.1351: text property wrong after :substitute\n\nProblem:    Text property wrong after :substitute.\nSolution:   Save for undo before changing any text properties.\n"
    },
    {
      "commit": "ad3ec76bb8030b9a1d3f0a49c374d0de2383b977",
      "tree": "6cc66e85aa0b54ce4ee2e9fcd47987963f022c57",
      "parents": [
        "037c54f261818439755d56e318da068f97997fb5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 21 00:00:13 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 21 00:00:13 2019 +0200"
      },
      "message": "patch 8.1.1194: typos and small problems in source files\n\nProblem:    Typos and small problems in source files.\nSolution:   Small fixes.\n"
    },
    {
      "commit": "abc7c7fc5a098374f5543a237e6c9dd918848b34",
      "tree": "f1716b9f03139e8535a113e20a2f3b05b91f5915",
      "parents": [
        "d2e716e6dfd50b605867c7c684373384c8edf707"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 20 15:10:13 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 20 15:10:13 2019 +0200"
      },
      "message": "patch 8.1.1189: mode is not cleared when leaving Insert mode\n\nProblem:    Mode is not cleared when leaving Insert mode.\nSolution:   Clear the mode when got_int is set. (Ozaki Kiichi, closes #4270)\n"
    },
    {
      "commit": "abab0b0fdd6535969447b03a4fffc1947918cf6c",
      "tree": "2d43537a5dce8433ef2b2a37684c9e069392c592",
      "parents": [
        "bd9bf266fccbf7b7f09e476e09b61f0133e914db"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 30 18:47:01 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 30 18:47:01 2019 +0100"
      },
      "message": "patch 8.1.1086: too many curly braces\n\nProblem:    Too many curly braces.\nSolution:   Remove curly braces where they are not needed. (Hirohito Higashi,\n            closes #3982)\n"
    },
    {
      "commit": "7591bb39d58ece38a5fef984a08ea9012616c1f9",
      "tree": "e5e5b82ffd29f4f922ebfb5a97ea12a8b3624b7c",
      "parents": [
        "de5b3800427328170574f1950ae75776e020f4e7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 30 13:53:47 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 30 13:53:47 2019 +0100"
      },
      "message": "patch 8.1.1076: file for Insert mode is much too big\n\nProblem:    File for Insert mode is much too big.\nSolution:   Split off the code for Insert completion. (Yegappan Lakshmanan,\n            closes #4044)\n"
    },
    {
      "commit": "fd133323d4e1cc9c0e61c0ce357df4d36ea148e3",
      "tree": "db4227029ff088e984484404f690924f7ffa9fe1",
      "parents": [
        "723d165c2fcd9f94af4e8719feda3b70c8f46868"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 29 12:20:27 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 29 12:20:27 2019 +0100"
      },
      "message": "patch 8.1.1068: cannot get all the information about current completion\n\nProblem:    Cannot get all the information about current completion.\nSolution:   Add complete_info(). (Shougo, Hirohito Higashi, closes #4106)\n"
    },
    {
      "commit": "75bf3d22f42684beecd977f3185e98045b5c33d9",
      "tree": "a0e1bdbd10736d4ee13b26d34a88cfd2c8becbcc",
      "parents": [
        "6fb5c97242a151e67bd5c72736f187ef71c44e24"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 26 22:46:05 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 26 22:46:05 2019 +0100"
      },
      "message": "patch 8.1.1055: CTRL-G U in Insert mode doesn\u0027t work for shift-Left\n\nProblem:    CTRL-G U in Insert mode doesn\u0027t work to avoid splitting the undo\n            sequence for shift-left and shift-right.\nSolution:   Also check dont_sync_undo for shifted cursor keys. (Christian\n            Brabandt)\n"
    },
    {
      "commit": "2c519cf3bfe76083767ac94c674d2e161ed36587",
      "tree": "6386fbe43e4c710c1a31fe28ea3989cfe35e96a8",
      "parents": [
        "f7e47af7760fe054cb645dac9a1e96b23c85804d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 21 21:45:34 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 21 21:45:34 2019 +0100"
      },
      "message": "patch 8.1.1032: warnings from clang static analyzer\n\nProblem:    Warnings from clang static analyzer. (Yegappan Lakshmanan)\nSolution:   Fix relevant warnings.\n"
    },
    {
      "commit": "4f97475d326c2773a78561fb874e4f23c25cbcd9",
      "tree": "7e066bc70556dfbb415ddb9f364e8432e8aaf189",
      "parents": [
        "78d21dae9c3a39efb30316d3e38dce120bc1abbd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 17 17:44:42 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 17 17:44:42 2019 +0100"
      },
      "message": "patch 8.1.0941: macros for MS-Windows are inconsistent\n\nProblem:    Macros for MS-Windows are inconsistent, using \"32\", \"3264 and\n            others.\nSolution:   Use MSWIN for all MS-Windows builds.  Use FEAT_GUI_MSWIN for the\n            GUI build. (Hirohito Higashi, closes #3932)\n"
    },
    {
      "commit": "14184a3133b9a6ee5f711d493c04e41ba4fa7c2f",
      "tree": "2fefdfea751bfbfdbbec793f880073bd8387bb4f",
      "parents": [
        "6902c0eb27a3e4479445badfef31443f2227fe60"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 16 15:10:30 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 16 15:10:30 2019 +0100"
      },
      "message": "patch 8.1.0932: Farsi support is outdated and unused\n\nProblem:    Farsi support is outdated and unused.\nSolution:   Delete the Farsi support.\n"
    },
    {
      "commit": "2a78b7c70471527d83adef6b147dbfb6c9f838f7",
      "tree": "1f361c18f8a502f49fa1293ff3577cebcffa80ca",
      "parents": [
        "71b13e92ae580038b8aecbb783296c577ca2ba5a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 05 20:12:06 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 05 20:12:06 2019 +0100"
      },
      "message": "patch 8.1.0876: completion match not displayed when popup menu is not shown\n\nProblem:    Completion match not displayed when popup menu is not shown.\nSolution:   Call update_screen() when not displaying the popup menu to show\n            the inserted match. (Ken Takata, Hirohito Higashi)\n"
    },
    {
      "commit": "375e3390078e740d3c83b0c118c50d9a920036c7",
      "tree": "34f565d4a9351b58d48d8d06e4a84b07effdb3fd",
      "parents": [
        "b3051ce82f2e8af95ce3b6a41867f70aee5ecc82"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 18:26:10 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 18:26:10 2019 +0100"
      },
      "message": "patch 8.1.0864: cannot have a local value for \u0027scrolloff\u0027 and \u0027sidescrolloff\u0027\n\nProblem:    Cannot have a local value for \u0027scrolloff\u0027 and \u0027sidescrolloff\u0027.\n            (Gary Holloway)\nSolution:   Make \u0027scrolloff\u0027 and \u0027sidescrolloff\u0027 global-local. (mostly by\n            Aron Widforss, closes #3539)\n"
    },
    {
      "commit": "77255cab7447792d781752707c8e163c838ec996",
      "tree": "533a005e497dcfa7f558c6fac9149b0b1658ed6c",
      "parents": [
        "c45eb770a5988734ff2c572e5e2ce307158c33c8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 14:29:42 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 14:29:42 2019 +0100"
      },
      "message": "patch 8.1.0860: debug lines left in the code\n\nProblem:    Debug lines left in the code.\nSolution:   Delete the lines.\n"
    },
    {
      "commit": "4b47162ccede0b6d9cbb9473ad870220a24fbf54",
      "tree": "ce99699b4391edf919bc8a849653516f231d3ef7",
      "parents": [
        "bbb5f8d4c2cbc5f48556008875f57cbe7fc4ac6c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 13:48:09 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 31 13:48:09 2019 +0100"
      },
      "message": "patch 8.1.0857: indent functionality is not separated\n\nProblem:    Ignore functionality is not separated.\nSolution:   Move indent functionality into a new file. (Yegappan Lakshmanan,\n            closes #3886)\n"
    },
    {
      "commit": "29ddebef4038d2d2b3bc9d8d3b0109f4046d6fbf",
      "tree": "66144403e05268df8594b01d0298db4f570ed60f",
      "parents": [
        "3e460fd8b72db905fbf9f01b00371384ffc415b8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 26 17:28:26 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 26 17:28:26 2019 +0100"
      },
      "message": "patch 8.1.0826: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate FEAT_VIRTUALEDIT.  Adds about 10Kbyte to the code.\n"
    },
    {
      "commit": "cb574f415486adff645ce384979bfecf27f5be8c",
      "tree": "7e3ffdb38c38d7b8c1c2c30bfbd9c86e369749ff",
      "parents": [
        "970f5d39f27717b1a529b7b250a8ed7c3f791949"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 25 22:29:57 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 25 22:29:57 2019 +0100"
      },
      "message": "patch 8.1.0822: peeking and flushing output slows down execution\n\nProblem:    Peeking and flushing output slows down execution.\nSolution:   Do not update the mode message when global_busy is set.  Do not\n            flush when only peeking for a character. (Ken Takata)\n"
    },
    {
      "commit": "135059724f140ceac889c9f8136bd1bf5c41d49d",
      "tree": "64a9fc867701c8cdd596130cdab2d92129920bd7",
      "parents": [
        "4b9e91f0ba02192e4592a5c4a9bdcdd6e9efeb5e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 24 15:04:48 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 24 15:04:48 2019 +0100"
      },
      "message": "patch 8.1.0805: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate FEAT_MBYTE, part 1.\n"
    },
    {
      "commit": "9e26f7d31fbb780613fa700fe61de3e0b4ff2ef6",
      "tree": "a00df42661ee8d924b48fe4f5508c10a5612cc1b",
      "parents": [
        "563bbeabcce5580e03648e687bd7ddb9626a03d9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 22 22:08:09 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 22 22:08:09 2019 +0100"
      },
      "message": "patch 8.1.0792: bad display if opening cmdline window from Insert completion\n\nProblem:    Popup menu is displayed on top of the cmdline window if it is\n            opened from Insert completion. (Bjorn Linse)\nSolution:   Remove the popup menu.  Restore the cursor position.\n            (closes #3838)\n"
    },
    {
      "commit": "32526b3c1846025f0e655f41efd4e5428da16b6c",
      "tree": "e9f3ea5e0daaada049e905b5f1b38b4a45511f3d",
      "parents": [
        "d383c92ec1d14ffd5c3802f0ffd763e91d547fa8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 19 17:43:09 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 19 17:43:09 2019 +0100"
      },
      "message": "patch 8.1.0779: argument for message functions is inconsistent\n\nProblem:    Argument for message functions is inconsistent.\nSolution:   Make first argument to msg() \"char *\".\n"
    },
    {
      "commit": "ae654385dfb2ae4c1d70789d1dce3676dba4dfbc",
      "tree": "42dcbad57fb99544e9346fa8b075df03865ba1f4",
      "parents": [
        "c771bf901622064dc27421b04853e16b6914a295"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 17 21:09:05 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 17 21:09:05 2019 +0100"
      },
      "message": "patch 8.1.0768: updating completions may cause the popup menu to flicker\n\nProblem:    Updating completions may cause the popup menu to flicker.\nSolution:   Avoid updating the text below the popup menu before drawing the\n            popup menu.\n"
    },
    {
      "commit": "f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d",
      "tree": "a6b07005c19279a4f5d01be14f14861c2657fa95",
      "parents": [
        "05500ece6282407f9f7227aaf564e24147326863"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 13 23:38:42 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 13 23:38:42 2019 +0100"
      },
      "message": "patch 8.1.0743: giving error messages is not flexible\n\nProblem:    Giving error messages is not flexible.\nSolution:   Add semsg().  Change argument from \"char_u *\" to \"char *\", also\n            for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes\n            #3302)  Also make emsg() accept a \"char *\" argument.  Get rid of\n            an enormous number of type casts.\n"
    },
    {
      "commit": "c3c3158756ae074052b0db2a3e3a7ba192df5330",
      "tree": "79e1b820b5e86fce5f98573097e4457ec06f5881",
      "parents": [
        "44a7db4ffdd11dafd345fd1c2c7b2509d01e3895"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 22:15:05 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 22:15:05 2019 +0100"
      },
      "message": "patch 8.1.0728: cannot avoid breaking after a single space.\n\nProblem:    Cannot avoid breaking after a single space.\nSolution:   Add the \u0027p\u0027 flag to \u0027formatoptions\u0027. (Tom Ryder)\n"
    },
    {
      "commit": "535d5b653a1eddf49ee11dc9639c5355ef023301",
      "tree": "108a023a948f57b7620d2cad3c4931c58f21706c",
      "parents": [
        "465e8b5985908596261cef9d671024ed8ded1ce3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 20:45:36 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 20:45:36 2019 +0100"
      },
      "message": "patch 8.1.0726: redrawing specifically for conceal feature\n\nProblem:    Redrawing specifically for conceal feature.\nSolution:   Use generic redrawing methods.\n"
    },
    {
      "commit": "cee9bc2e3dc5c16a9d2a8d0e23aa0d5fdefa3a4a",
      "tree": "3459c3d301a0dfcb6669b6e5aa3b50597ccb0c0e",
      "parents": [
        "6f7e555f7440df148350468ad8bc6d559d676d7c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 13:02:23 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 11 13:02:23 2019 +0100"
      },
      "message": "patch 8.1.0716: get warning message when \u0027completefunc\u0027 returns nothing\n\nProblem:    Get warning message when \u0027completefunc\u0027 returns nothing.\nSolution:   Allow for returning v:none to suppress the warning message.\n            (Yasuhiro Matsumoto, closes #3789)\n"
    },
    {
      "commit": "ae12f4bad306a1a3a2d54ff6ed76df9b11d19469",
      "tree": "7ebc794adeeb121202d382ed689c149af54022ee",
      "parents": [
        "663bc89bbb8158bd0888f7d7228b2dbc6bbd4802"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 09 20:51:04 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 09 20:51:04 2019 +0100"
      },
      "message": "patch 8.1.0708: third argument for redrawWinline() is always FALSE\n\nProblem:    Third argument for redrawWinline() is always FALSE.\nSolution:   Drop the argument. (neovim #9479)\n"
    },
    {
      "commit": "6d11f3b8919bfbb6d5d51e6d280a2e685fb883b8",
      "tree": "7b12c32a494649c994bf8c1b416e4efc97c23ccd",
      "parents": [
        "bf3250a8ad39797e3ccdac82d20c6f19533419e4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 06 17:44:38 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 06 17:44:38 2019 +0100"
      },
      "message": "patch 8.1.0699: compiler warning for uninitialized variable\n\nProblem:    Compiler warning for uninitialized variable. (Tony Mechelynck)\nSolution:   Add a dummy init.\n"
    },
    {
      "commit": "8ad16da7290190f55f88073d5586dfe133fddf45",
      "tree": "41188d4134f13d2a85a4aaff0220ced1d8a4670c",
      "parents": [
        "f42b45d719e03218735b3c2845a74dca9c0efd60"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 06 15:29:57 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 06 15:29:57 2019 +0100"
      },
      "message": "patch 8.1.0696: when test_edit fails \u0027insertmode\u0027 may not be reset\n\nProblem:    When test_edit fails \u0027insertmode\u0027 may not be reset and the next\n            test may get stuck. (James McCoy)\nSolution:   Always reset \u0027insertmode\u0027 after executing a test.  Avoid that an\n            InsertCharPre autocommand or a \u0027complete\u0027 function can change the\n            state. (closes #3768)\n"
    },
    {
      "commit": "196d157f12cf0476d97f78834155fc67d6b161de",
      "tree": "3deba5b00cb3d25d69ae887a3491dde66096ac19",
      "parents": [
        "33c8ca923ed6d5638fa98afabb2e25b5056dd47b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 02 23:47:18 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 02 23:47:18 2019 +0100"
      },
      "message": "patch 8.1.0682: text properties not adjusted when backspacing replaced text\n\nProblem:    Text properties are not adjusted when backspacing replaced text.\nSolution:   Keep text properties on text restored in replace mode.\n"
    },
    {
      "commit": "33c8ca923ed6d5638fa98afabb2e25b5056dd47b",
      "tree": "33e389557ab7b0a3e6478eb14d7d3547397da122",
      "parents": [
        "c85ffc9daba6f66d5958ae80249d26f7f81bfced"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 02 18:00:27 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 02 18:00:27 2019 +0100"
      },
      "message": "patch 8.1.0681: text properties as not adjusted for deleted text\n\nProblem:    Text properties as not adjusted for deleted text.\nSolution:   Adjust text properties when backspacing to delete text.\n"
    },
    {
      "commit": "5d24a2257e597fd752e33b2c1e9c19cf9114a517",
      "tree": "10c6203d3f704fa189e1b52e9af5df62a6831fc8",
      "parents": [
        "c33181c44ccb86637e011f35cc0397a2d76e23ae"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 23 19:10:09 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 23 19:10:09 2018 +0100"
      },
      "message": "patch 8.1.0629: \"gn\" selects the wrong text with a multi-line match\n\nProblem:    \"gn\" selects the wrong text with a multi-line match.\nSolution:   Get the end position from searchit() directly. (closes #3695)\n"
    },
    {
      "commit": "d155d7a8519987361169459b8d464ae1caef5e9c",
      "tree": "26d437fd67b33ca1b57aca568d4da40151bc9a81",
      "parents": [
        "162b71479bd4dcdb3a2ef9198a1444f6f99e6843"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 21 16:04:21 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 21 16:04:21 2018 +0100"
      },
      "message": "patch 8.1.0615: get_tv function names are not consistent\n\nProblem:    Get_tv function names are not consistent.\nSolution:   Rename to tv_get.\n"
    },
    {
      "commit": "8f66717a1f835b8194139d158c1e2df8b30c3ef3",
      "tree": "a85c2d9df9a47870d35c88ae849510407c670b81",
      "parents": [
        "fb95e212a2696e5b1c8b5e6b2984af59fa7ead6f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 14 15:38:31 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 14 15:38:31 2018 +0100"
      },
      "message": "patch 8.1.0583: using illogical name for get_dict_number()/get_dict_string()\n\nProblem:    Using illogical name for get_dict_number()/get_dict_string().\nSolution:   Rename to start with dict_.\n"
    },
    {
      "commit": "98aefe7c3250bb5d4153b994f878594d1745424e",
      "tree": "262ae31c2dbf4ac0353f5564a2419a79267fa3ae",
      "parents": [
        "5c5697f29829fc3b21fc5452fe8f239f6a4cb8e1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 13 22:20:09 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 13 22:20:09 2018 +0100"
      },
      "message": "patch 8.1.0579: cannot attach properties to text\n\nProblem:    Cannot attach properties to text.\nSolution:   First part of adding text properties.\n"
    },
    {
      "commit": "f951416a8396a54bbbe21de1a8b16716428549f2",
      "tree": "2903bb024e534d4a4c5004beef72f4dc38583b29",
      "parents": [
        "2b84949ad8f247e5d142e2fb1371b3e37567977a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 22 03:08:29 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 22 03:08:29 2018 +0100"
      },
      "message": "patch 8.1.0542: shiftwidth() does not take \u0027vartabstop\u0027 into account\n\nProblem:    shiftwidth() does not take \u0027vartabstop\u0027 into account.\nSolution:   Use the cursor position or a position explicitly passed.\n            Also make \u003e\u003e and \u003c\u003c work better with \u0027vartabstop\u0027. (Christian\n            Brabandt)\n"
    },
    {
      "commit": "4dbc2627641a6b950c30c31cbf7b7e6c36da1927",
      "tree": "01a06742db92d299a694a3f7a3813df95834b593",
      "parents": [
        "f7acf2b63ce91ea802dbcf0618f0cdee80993468"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Nov 02 11:59:15 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Nov 02 11:59:15 2018 +0100"
      },
      "message": "patch 8.1.0504: when CTRL-C is mapped it triggers InsertLeave\n\nProblem:    When CTRL-C is mapped it triggers InsertLeave.\nSolution:   Make CTRL-C behave the same way when typed or used in a mapping.\n"
    },
    {
      "commit": "6dff58f15cede9139b2fcfc64c9064326ea3d3b0",
      "tree": "f2326055f5fe8bb5948374155f11bd220c1d9dc7",
      "parents": [
        "f45d747ebf920940b041f5c75c2bfdffb6b670ae"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 30 21:43:26 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 30 21:43:26 2018 +0200"
      },
      "message": "patch 8.1.0443: unnecessary static function prototypes\n\nProblem:    Unnecessary static function prototypes.\nSolution:   Remove unnecessary prototypes.\n"
    },
    {
      "commit": "90a997987dbbe43af3c15118a35f658f0f037d1d",
      "tree": "53f3974a235a4bc9c0a266fde3c5e86d5fde5ac6",
      "parents": [
        "643b6140873e0e6f297df0cbca11bc1ea1f21925"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 21:52:18 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 21:52:18 2018 +0200"
      },
      "message": "patch 8.1.0372: screen updating slow when \u0027cursorline\u0027 is set\n\nProblem:    Screen updating slow when \u0027cursorline\u0027 is set.\nSolution:   Only redraw the old and new cursor line, not all lines.\n"
    },
    {
      "commit": "9fa9506853516c82851baec643aa47458cb8b3bc",
      "tree": "1540434465ce7d083128d486b80cc10f5b2c1d81",
      "parents": [
        "f8f88f89e12df516c1fac5851b504238ebc1d2d4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 08 22:08:32 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 08 22:08:32 2018 +0200"
      },
      "message": "patch 8.1.0256: using setline() in TextChangedI splits undo\n\nProblem:    Using setline() in TextChangedI splits undo.\nSolution:   Use another solution for undo not working properly.\n"
    },
    {
      "commit": "ee380ae376692529b6f1805185015cb4717c6940",
      "tree": "07f07e9ac42332c087a9066e25d36e0a1eb2792f",
      "parents": [
        "91d2e783b41ca900bc603b3cb5e083c8a4a33170"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 19:32:52 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 19:32:52 2018 +0200"
      },
      "message": "patch 8.1.0246: build failure without the +eval feature\n\nProblem:    Build failure without the +eval feature.\nSolution:   Add #ifdef\n"
    },
    {
      "commit": "91d2e783b41ca900bc603b3cb5e083c8a4a33170",
      "tree": "f42a1d2db656122fb069474859514d9cb62523c4",
      "parents": [
        "917e32bda5a93941fbbccab09ae3960114b67188"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 19:05:01 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 19:05:01 2018 +0200"
      },
      "message": "patch 8.1.0245: calling setline() in TextChangedI autocmd breaks undo\n\nProblem:    Calling setline() in TextChangedI autocmd breaks undo. (Jason\n            Felice)\nSolution:   Don\u0027t save lines for undo when already saved. (closes #3291)\n"
    },
    {
      "commit": "02ab97709d5c56fb7fe42e134bb9fc54f76a1f9f",
      "tree": "7f7cf1ce94baaa11f4943762b6e9001da52d2879",
      "parents": [
        "7cc596547a582e7bc18d91312eb674906ebdc5c2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 14:55:09 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 07 14:55:09 2018 +0200"
      },
      "message": "patch 8.1.0242: Insert mode completion may use an invalid buffer pointer\n\nProblem:    Insert mode completion may use an invalid buffer pointer.\nSolution:   Check for ins_buf to be valid. (closes #3290)\n"
    },
    {
      "commit": "ded27a1febda3db7447958b60a7d791af514d124",
      "tree": "d6187c6d409aafabad0aab6e76f97132a51fe640",
      "parents": [
        "f711cb2f12458d32e082c0e3d4103e2b072947c3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 01 19:06:03 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 01 19:06:03 2018 +0200"
      },
      "message": "patch 8.1.0233: \"safe\" argument of call_vim_function() is always FALSE\n\nProblem:    \"safe\" argument of call_vim_function() is always FALSE.\nSolution:   Remove the argument.\n"
    },
    {
      "commit": "1f0bfe561737cd445532f20d7607a81d1dadddee",
      "tree": "7328a946135589dc8e69e2e4ff34afbd18be2e77",
      "parents": [
        "612cc3888b136e80485132d9f997ed457dbc5501"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 29 16:09:22 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 29 16:09:22 2018 +0200"
      },
      "message": "patch 8.1.0226: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate the +vreplace feature, it\u0027s not much code and quite a few\n            #ifdefs.\n"
    },
    {
      "commit": "fdd7155fab3447b38280035c66178330f8f041e7",
      "tree": "7ecc4f84e7f5ef2b63ad2d22a2994f3e72c110be",
      "parents": [
        "6ab9e429da18f4d784222a9f7dfafb7c0218b7eb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 28 23:12:05 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 28 23:12:05 2018 +0200"
      },
      "message": "patch 8.1.0224: hang in bracketed paste mode when t_PE not encountered\n\nProblem:    Hang in bracketed paste mode when t_PE not encountered.\nSolution:   Break out of the loop when got_int is set. (suggested by Christian\n            Brabandt, closes #3146)\n"
    },
    {
      "commit": "e0be167a805fd547c25ec1ec97fd4c7f13046236",
      "tree": "423fb96f7b30329ef0b7ccf3d4b2a02620e7929c",
      "parents": [
        "4cde86c2ef885e82fff3d925dee9fb5671c025cf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 08 16:50:37 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 08 16:50:37 2018 +0200"
      },
      "message": "patch 8.1.0166: using dict_add_nr_str() is clumsy\n\nProblem:    Using dict_add_nr_str() is clumsy.\nSolution:   Split into two functions. (Ozaki Kiichi, closes #3154)\n"
    },
    {
      "commit": "c9fe5ab3b093803b6e8d03358ba16aca6b6f0db1",
      "tree": "7ae32535ac0e6f4c08d7e550a621c5656b5c8ce5",
      "parents": [
        "e85ce6ea2e09fe4d61c94e34e9e437c3c1f20b6e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 05 22:27:08 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 05 22:27:08 2018 +0200"
      },
      "message": "patch 8.1.0154: crash with \"set smarttab shiftwidth\u003d0 softtabstop\u003d-1\"\n\nProblem:    Crash with \"set smarttab shiftwidth\u003d0 softtabstop\u003d-1\".\nSolution:   Fall back to using \u0027tabstop\u0027. (closes #3155)\n"
    },
    {
      "commit": "33d5ab3795720b7d986f9f17f660ee9e448466e0",
      "tree": "38af7f84382c74a45dc271d9f37eac9ac148dde4",
      "parents": [
        "ade55787978e15fe57c5cedf38c9f85bfe1d983c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 02 20:51:24 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 02 20:51:24 2018 +0200"
      },
      "message": "patch 8.1.0138: negative value of \u0027softtabstop\u0027 not used correctly\n\nProblem:    Negative value of \u0027softtabstop\u0027 not used correctly.\nSolution:   Use get_sts_value(). (Tom Ryder)\n"
    },
    {
      "commit": "04958cbaf25eea27eceedaa987adfb354ad5f7fd",
      "tree": "9a47e4e99b5b702e12d08c0424a91ae701eabb4d",
      "parents": [
        "5ec7414a1c0512832f60c17437d6374cbf4b08e9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 23 19:23:02 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 23 19:23:02 2018 +0200"
      },
      "message": "patch 8.1.0105: all tab stops are the same\n\nProblem:    All tab stops are the same.\nSolution:   Add the variable tabstop feature. (Christian Brabandt,\n            closes #2711)\n"
    },
    {
      "commit": "0e5979a6d491f68c4a8c86fab489016919329a6b",
      "tree": "9b2ae8d0a64cefadf20aafd660a0fce2558dfe39",
      "parents": [
        "2f82ca7d79148ae931bf28a747ede06ba8a65de8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 17 19:36:33 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 17 19:36:33 2018 +0200"
      },
      "message": "patch 8.1.0069: cannot handle pressing CTRL-C in a prompt buffer\n\nProblem:    Cannot handle pressing CTRL-C in a prompt buffer.\nSolution:   Add prompt_setinterrupt().\n"
    },
    {
      "commit": "942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa",
      "tree": "0fcb2f684a28b77e8397d39a2b9f4da84f873fbe",
      "parents": [
        "d595a1910c5672808e44afa028e253e47f03651f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 17 16:23:34 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 17 16:23:34 2018 +0200"
      },
      "message": "patch 8.1.0064: typing CTRL-W in a prompt buffer shows mode \"-- --\"\n\nProblem:    Typing CTRL-W in a prompt buffer shows mode \"-- --\".\nSolution:   Set restart_edit to \u0027A\u0027 and check for it.\n"
    },
    {
      "commit": "6ba3ec1bace67513a352326864cebc16b3c5bc56",
      "tree": "d8084d502418d4373963b7fe9f04ef8338e094af",
      "parents": [
        "43dee181f596c81b99e200b6cdfeb02ecfed42c8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 16 15:32:38 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 16 15:32:38 2018 +0200"
      },
      "message": "patch 8.1.0057: popup menu displayed wrong when using autocmd\n\nProblem:    Popup menu displayed wrong when using autocmd.\nSolution:   Use aucmd_prepbuf().  Force updating status line if the popup menu\n            is going to be redrawn anyway. (Christian Brabandt, closes #3009)\n"
    },
    {
      "commit": "ffa9684150f5441e84d492e7184ef73587bd6c6c",
      "tree": "e73aa4b5e0d37ef4d113fcb07f9e1efa5c01d133",
      "parents": [
        "83f4cbd973731872b633d6ba0caf850fb708d70c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 12 22:05:14 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 12 22:05:14 2018 +0200"
      },
      "message": "patch 8.1.0053: first argument of \u0027completefunc\u0027 has inconsistent type\n\nProblem:    The first argument given to \u0027completefunc\u0027 can be Number or\n            String, depending on the value.\nSolution:   Avoid guessing the type of an argument, use typval_T in the\n            callers of call_vim_function(). (Ozaki Kiichi, closes #2993)\n"
    },
    {
      "commit": "e31e256ba1769a3a3ed7840d5cc9a01ab058b8bc",
      "tree": "485661792fc2b13b50dfce2e72189e625993c144",
      "parents": [
        "d79a26219d7161e9211fd144f0e874aa5f6d251e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 10 13:12:55 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 10 13:12:55 2018 +0200"
      },
      "message": "patch 8.1.0040: warnings from 64-bit compiler\n\nProblem:    Warnings from 64-bit compiler.\nSolution:   Add type casts. (Mike Williams)\n"
    },
    {
      "commit": "891e1fd894720d0b99a9daefa41e8181844f819a",
      "tree": "ea5da71e753bf0022cc832a1397ea262d8d8a64c",
      "parents": [
        "6d41c78e353b630bc1a72cbff9160311d2a81e8c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 18:02:39 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 18:02:39 2018 +0200"
      },
      "message": "patch 8.1.0036: not restoring Insert mode if leaving prompt buffer with mouse\n\nProblem:    Not restoring Insert mode if leaving a prompt buffer by using a\n            mouse click.\nSolution:   Set b_prompt_insert appropriately. Also correct cursor position\n            when moving cursor to last line.\n"
    },
    {
      "commit": "6d41c78e353b630bc1a72cbff9160311d2a81e8c",
      "tree": "4ed89d974b7ce1e69ae848bfea2802605c748453",
      "parents": [
        "adb8fbec4f4059d214fe6acf2485ffd35e803450"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 09:11:12 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 09:11:12 2018 +0200"
      },
      "message": "patch 8.1.0035: not easy to switch between prompt buffer and other windows\n\nProblem:    Not easy to switch between prompt buffer and other windows.\nSolution:   Accept CTRL-W commands in Insert mode.  Start and stop Insert mode\n            as one would expect.\n"
    },
    {
      "commit": "f273245f6433d5d43a5671306b520a3230c35787",
      "tree": "958293fed4c59ee0cb91a491c8c0e32aa0e618c2",
      "parents": [
        "33c5e9fa7af935c61a8aac461b9664c501003440"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 03 14:47:35 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 03 14:47:35 2018 +0200"
      },
      "message": "patch 8.1.0027: difficult to make a plugin that feeds a line to a job\n\nProblem:    Difficult to make a plugin that feeds a line to a job.\nSolution:   Add the nitial code for the \"prompt\" buftype.\n"
    },
    {
      "commit": "0b6d911e5de1a1c10a23d4c2ee1b0275c474a2dd",
      "tree": "3d33047a64f47e30852f5d6f187f316d12b3f55b",
      "parents": [
        "b4518563c73460150344a57879bf5b22cb8b1c77"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 22 20:35:17 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 22 20:35:17 2018 +0200"
      },
      "message": "patch 8.1.0020: cannot tell whether a register is executing or recording\n\nProblem:    Cannot tell whether a register is being used for executing or\n            recording.\nSolution:   Add reg_executing() and reg_recording(). (Hirohito Higashi,\n            closes #2745)  Rename the global variables for consistency.  Store\n            the register name in reg_executing.\n"
    }
  ],
  "next": "b9464821901623f983528acaed9e4dc2cea7387b"
}
