Пример #1
0
        public void Vi_BigWordStart()
        {
            CharType type = GetCharType(_iterator.RightChar);

            if (type == CharType.Identifier || type == CharType.Punctuation)
            {
                while (true)
                {
                    CharType typeI = GetCharType(_iterator.LeftChar);
                    if (typeI != CharType.Identifier && type != CharType.Punctuation)
                    {
                        break;
                    }
                    if (!_iterator.MoveLeft())
                    {
                        break;
                    }
                }
            }
            else if (type == CharType.Space)
            {
                while (GetCharType(_iterator.LeftChar) == CharType.Space)
                {
                    if (!_iterator.MoveLeft())
                    {
                        break;
                    }
                }
            }
        }
Пример #2
0
        public bool Vi_BracketStart(char bra, char ket, int count)
        {
            int  position = _iterator.Position;
            bool failByQuotes;
            bool result = BracketStart(bra, ket, count, out failByQuotes);

            if (failByQuotes)
            {
                _iterator = _lines.GetCharIterator(position);
                while (_iterator.MoveLeft())
                {
                    char c = _iterator.RightChar;
                    if ((c == '"' || c == '\'') && _iterator.LeftChar != '\'')
                    {
                        if (_iterator.MoveLeft())
                        {
                            result = BracketStart(bra, ket, count, out failByQuotes);
                        }
                        break;
                    }
                }
            }
            return(result);
        }