Отключите контурную карту в lubuntu

Сочетания клавиш Lubuntu 16.04 ctrl+alt+down и alt+shift+down ступают на мои сублимированные текстовые контурные карты.

Существует ли способ отключить эти сочетания клавиш?

0
задан 18 June 2017 в 01:49

6 ответов

Если Вы смотрите на итераторы определения PEP234, это говорит:

1. An object can be iterated over with "for" if it implements
   __iter__() or __getitem__().

2. An object can function as an iterator if it implements next().
47
ответ дан 1 November 2019 в 05:46

__getitem__ предшествует протоколу итератора и был в прошлом единственный способ сделать вещи повторяемыми. По сути, это все еще поддерживается как метод итерации. По существу протокол для повторения:

  1. Проверьте на __iter__ метод. Если это существует, используйте новый итеративный протокол.

  2. Иначе попытайтесь звонить __getitem__ с последовательно большими целочисленными значениями, пока это не повышает IndexError.

(2) используемый, чтобы быть единственным способом сделать это, но имело недостаток, что он принял больше, чем было необходимо для поддержки просто повторения. Для поддержки повторения необходимо было поддерживать произвольный доступ, который был намного более дорогим для вещей как файлы или сетевые потоки, где продвижения были легки, но идущий назад потребует хранения всего. __iter__ позволенное повторение без произвольного доступа, но так как произвольный доступ обычно позволяет повторение так или иначе, и потому что повреждение обратной совместимости было бы плохо, __getitem__ все еще поддерживается.

26
ответ дан 1 November 2019 в 05:46

Специальные методы такой как __getitem__ добавьте специальные поведения к объектам, включая повторение.

http://docs.python.org/reference/datamodel.html#object.getitem

"поскольку циклы ожидают, что IndexError будет повышен, чтобы недопустимые индексы позволили надлежащее обнаружение конца последовательности".

Повысьте IndexError для передачи сигналов о конце последовательности.

Ваш код в основном эквивалентен:

i = 0
while True:
    try:
        yield object[i]
        i += 1
    except IndexError:
        break

Где объект - то, чего Вы выполняете итерации в для цикла.

6
ответ дан 1 November 2019 в 05:46

Это так по историческим причинам. До Python 2.2 __ getitem __ был единственный способ создать класс, который мог быть выполнен с помощью итераций с для цикла. В 2,2 __ проход __ был добавлен протокол, но сохранить назад совместимость __ getitem __ все еще работает в на циклы.

5
ответ дан 1 November 2019 в 05:46

Поскольку cb[0] совпадает с cb.__getitem__(0). См. документацию Python относительно этого.

2
ответ дан 1 November 2019 в 05:46

Попытайтесь смотреть на это: https://help.ubuntu.com/community/Lubuntu/Keyboard#Create_New_Keyboard_shortcuts. Если можно добавить сочетания клавиш, необходимо смочь удалить их также похожим способом.

0
ответ дан 3 November 2019 в 11:53

Другие вопросы по тегам:

Похожие вопросы: