Mercurial > vim
view runtime/spell/uk/main.aap @ 34194:a522c6c0127b v9.1.0047
patch 9.1.0047: issues with temp curwin/buf while cmdwin is open
Commit: https://github.com/vim/vim/commit/988f74311c26ea9917e84fbae608de226dba7e5f
Author: Sean Dewar <seandewar@users.noreply.github.com>
Date: Wed Aug 16 14:17:36 2023 +0100
patch 9.1.0047: issues with temp curwin/buf while cmdwin is open
Problem: Things that temporarily change/restore curwin/buf (e.g:
win_execute, some autocmds) may break assumptions that
curwin/buf is the cmdwin when "cmdwin_type != 0", causing
issues.
Solution: Expose the cmdwin's real win/buf and check that instead. Also
try to ensure these variables are NULL if "cmdwin_type == 0",
allowing them to be used directly in most cases without
checking cmdwin_type. (Sean Dewar)
Alternatively, we could ban win_execute in the cmdwin and audit all places that
temporarily change/restore curwin/buf, but I didn't notice any problems arising
from allowing this (standard cmdwin restrictions still apply, so things that may
actually break the cmdwin are still forbidden).
closes: #12819
Signed-off-by: Sean Dewar <seandewar@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 23 Jan 2024 23:00:04 +0100 |
parents | 52e76e2b5b65 |
children |
line wrap: on
line source
# Aap recipe for Ukrainian Vim spell files. # Use a freshly compiled Vim if it exists. @if os.path.exists('../../../src/vim'): VIM = ../../../src/vim @else: :progsearch VIM vim SPELLDIR = .. FILES = uk_UA.aff uk_UA.dic all: $SPELLDIR/uk.koi8-u.spl $SPELLDIR/uk.utf-8.spl \ ../README_uk.txt $SPELLDIR/uk.koi8-u.spl : $FILES :sys env LANG=uk_UA.KOI8-U $VIM -u NONE -e -c "mkspell! $SPELLDIR/uk uk_UA" -c q $SPELLDIR/uk.utf-8.spl : $FILES :sys env LANG=uk_UA.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/uk uk_UA" -c q ../README_uk.txt: README_uk_UA.txt :copy $source $target # # Fetching the files from OpenOffice.org. # OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries :attr {fetch = $OODIR/%file%} uk_UA.zip # The files don't depend on the .zip file so that we can delete it. # Only download the zip file if the targets don't exist. # This is a bit tricky, since the file name includes the date. uk_UA.aff uk_UA.dic: {buildcheck=} :assertpkg unzip :fetch uk_UA.zip :sys unzip uk_UA.zip :delete uk_UA.zip @if not os.path.exists('uk_UA.orig.aff'): :copy uk_UA.aff uk_UA.orig.aff @if not os.path.exists('uk_UA.orig.dic'): :copy uk_UA.dic uk_UA.orig.dic @if os.path.exists('uk_UA.diff'): :sys patch <uk_UA.diff # Generate diff files, so that others can get the OpenOffice files and apply # the diffs to get the Vim versions. diff: :assertpkg diff :sys {force} diff -a -C 1 uk_UA.orig.aff uk_UA.aff >uk_UA.diff :sys {force} diff -a -C 1 uk_UA.orig.dic uk_UA.dic >>uk_UA.diff # Check for updated spell files. When there are changes the # ".new.aff" and ".new.dic" files are left behind for manual inspection. check: :print Doesn't work yet.