(У меня установлен TComment, и я нахожусь на NeoVim 0.4.0.)
Учитывая этот код, например:
let mem key st =
let is_matching_key = function
| Positional _ -> false
| Flag f -> f.name == key
in
(* FIXME: This is slow, but Array.exists isn't available until OCaml 4.03, and I am lazy. *)
List.exists is_matching_key (Array.to_list st.args)
Когда я выбираю приведенный выше код и нажимаю gc c, я получаю:
(* let mem key st = *)
(* let is_matching_key = function *)
(* | Positional _ -> false *)
(* | Flag f -> f.name == key *)
(* in *)
(* (* FIXME: This is slow, but Array.exists isn't available until OCaml 4.03, and I am lazy. *) *)
(* List.exists is_matching_key (Array.to_list st.args) *)
(* *)
Вместо этого я хотел бы получить что-то вроде,
(* let mem key st =
let is_matching_key = function
| Positional _ -> false
| Flag f -> f.name == key
in
(* FIXME: This is slow, but Array.exists isn't available until OCaml 4.03, and I am lazy. *)
List.exists is_matching_key (Array.to_list st.args) *)
… Где в начале и конце всего текста есть только разделители комментариев.
Как мне этого добиться?
Дополнительно - я бы хотел, чтобы Vim продолжал поддерживать этот стиль отступов при нажатии Return внутри docblocks. Если ⁁
- точка вставки в следующем тексте…
(** This is a documentation-block for this function.⁁
… Я сейчас получаю это после нажатия Return
(** This is a documentation-block for this function.
* ⁁
(Обратите внимание на дополнительную звездочку, которую он добавляет в каждой строке; также обратите внимание, что отступ - «один раз», не совпадает с буквой T
в приведенной выше строке.) Я хотел бы получить это:
(** This is a documentation-block for this function.
⁁
Я пытался изучить документацию TComment, но мне не повезло, улучшая это поведение.