From 8bc8949de766cbbd69d259721e6ad7e55b2ffa5f Mon Sep 17 00:00:00 2001 From: Willow Barraco Date: Mon, 17 Jun 2024 12:59:06 +0200 Subject: [PATCH] autowrap: automatically set autowrap column highlighter Also the user now can change the value, without duplicating the column. --- rc/detection/editorconfig.kak | 1 - rc/tools/autowrap.kak | 12 +++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/rc/detection/editorconfig.kak b/rc/detection/editorconfig.kak index e836c3e97..940c197fa 100644 --- a/rc/detection/editorconfig.kak +++ b/rc/detection/editorconfig.kak @@ -50,7 +50,6 @@ define-command editorconfig-load -params ..1 -docstring "editorconfig-load [file if (max_line_length && max_line_length != "off") { print "set window autowrap_column " max_line_length print "autowrap-enable" - print "add-highlighter window/ column %sh{ echo $((" max_line_length "+1)) } default,bright-black" } } ' ;; diff --git a/rc/tools/autowrap.kak b/rc/tools/autowrap.kak index d742f6ee7..2e98d3d9c 100644 --- a/rc/tools/autowrap.kak +++ b/rc/tools/autowrap.kak @@ -1,5 +1,5 @@ declare-option -docstring "maximum amount of characters per line, after which a newline character will be inserted" \ - int autowrap_column 80 + int autowrap_column 0 declare-option -docstring %{ when enabled, paragraph formatting will reformat the whole paragraph in which characters are being inserted @@ -48,3 +48,13 @@ define-command autowrap-enable -docstring "Automatically wrap the lines in which define-command autowrap-disable -docstring "Disable automatic line wrapping" %{ remove-hooks window autowrap } + +hook global WinSetOption autowrap_column=0 %{ + try %{ + remove-highlighter window/autowrap_column + } +} + +hook global WinSetOption autowrap_column=(?!0).* %{ + add-highlighter -override window/autowrap_column column %sh{ echo $((kak_opt_autowrap_column+1)) } default,bright-black +}