diff --git a/docs/changelog.rst b/docs/changelog.rst index 6cd48cb1e..dab251b6d 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -70,9 +70,11 @@ Detailed list of changes - Support `OpenType Variable fonts `__ (:iss:`3711`) -- A new ``choose-fonts`` kitten that provides a UI with font previews to ease selection of fonts. Also has support for font features and variable fonts. +- A new ``choose-fonts`` kitten that provides a UI with font previews to ease selection of fonts. Also has support for font features and variable fonts -- Add NERD fonts builtin so that users don't have to install them to use NERD symbols in kitty. The builtin font is used only if the symbols are not available in some system font. +- Allow animating the blinking of the cursor. See :opt:`cursor_blink_interval` for how to configure it + +- Add NERD fonts builtin so that users don't have to install them to use NERD symbols in kitty. The builtin font is used only if the symbols are not available in some system font - Wayland: Allow fractional scales less than one (:pull:`7549`) @@ -80,7 +82,7 @@ Detailed list of changes - icat kitten: Add an option :option:`kitty +kitten icat --no-trailing-newline` to leave the cursor to the right of the image (:iss:`7574`) -- Speed up ``kitty --version`` and ``kitty --single-instance`` (for all subsequent instances). They are now the fastest of all terminal emulators with similar functionality. +- Speed up ``kitty --version`` and ``kitty --single-instance`` (for all subsequent instances). They are now the fastest of all terminal emulators with similar functionality - macOS: Fix rendering of the unicode hyphen (U+2010) character when using a font that does not include a glyph for it (:iss:`7525`) diff --git a/docs/glossary.rst b/docs/glossary.rst index 3634c119a..ac432ea4a 100644 --- a/docs/glossary.rst +++ b/docs/glossary.rst @@ -51,6 +51,15 @@ Glossary features such as viewing images, connecting conveniently to remote computers, transferring files, inputting unicode characters, etc. + easing function + A function that controls how an animation progresses over time. kitty + support the `CSS syntax for easing functions + `__. + Commonly used easing functions are :code:`linear` for a constant rate + animation and :code:`ease-in-out` for an animation that starts slow, + becomes fast in the middle and ends slowly. These are used to control + various animations in kitty, such as :opt:`cursor_blink_interval`. + .. _env_vars: Environment variables diff --git a/kitty/options/definition.py b/kitty/options/definition.py index 644219cae..592d8ccd9 100644 --- a/kitty/options/definition.py +++ b/kitty/options/definition.py @@ -331,7 +331,12 @@ opt('cursor_underline_thickness', '2.0', opt('cursor_blink_interval', '-1', option_type='cursor_blink_interval', ctype='!cursor_blink_interval', long_text=''' The interval to blink the cursor (in seconds). Set to zero to disable blinking. Negative values mean use system default. Note that the minimum interval will be -limited to :opt:`repaint_delay`. +limited to :opt:`repaint_delay`. You can also animate the cursor blink by specifying +an :term:`easing function`. For example, setting this to option to :code:`0.5 ease-in-out` +will cause the cursor blink to be animated over a second, in the first half of the second +it will go from opaque to transparent and then back again over the next half. You can specify +different easing functions for the two halves, for example: :code:`-1 linear ease-out`. kitty +supports all the :link:`CSS easing functions `. ''' )