VIM. Как удалить стрелочную функцию за одну команду?

Загуглив почему то все предлгают обычный способ когда просто выделяешь все через shift+v от начала до конца или приемом ma что очень не продуктивно. Есть ли способ удалить сразу всю функцию находясь в начале функции. Я знаю про d + numberOfLine + gg, но бывает не знаешь линию изза слишком длинной функции или просто лень бегать по неудобным клавишам фицр, почему то они мне не нравяться как расположены от 0-9 в ряд.

К примеру у меня есть функция

export const register = (name, email, password) => async (dispatch) => {
  try {
    dispatch({
      type: USER_REGISTER_REQUEST,
    });
    const config = {
      headers: {
        "Content-Type": "application/json",
      },
    };
    const { data } = await axios.post(
      "/api/users",
      { name, email, password },
      config
    );
    dispatch({ type: USER_REGISTER_REQUEST, payload: data });
    dispatch({ type: USER_REGISTER_SUCCESS, payload: data });
    localStorage.setItem("userInfo", JSON.stringify(data));
  } catch (error) {
    dispatch({
      type: USER_REGISTER_FAILURE,
      payload:
        error.response && error.response.data.message
          ? error.response.data.message
          : error.message,
    });
  }

};

как удалить ее максимально эффективно? находясь в начале, в середине, или в конце функции. 3 способа. Спасибо!


Ответы (1 шт):

Автор решения: TANAQ

Ответ нашел тут - https://stackoverflow.com/a/11723259/14455320

В кратции опишу:

  • Нужно взять на вооружение 2 простые команды
  1. dap - delete all paragraph - удаляет полностью параграфф, будь то функция или что то еще, очень полезно
  2. da{ или di{. da{ - удаляет вместе со скобками. di{ - удаляет внутри скобок.
→ Ссылка