Было бы неплохо, если бы можно было перемещать элемент массива (влево / вправо) при редактировании исходного кода. Например, если у вас есть этот массив (на любом языке)
var a = ['foo', 'bar', baz]; // JavaScript for instance
И если курсор находится рядом с baz
(в начале, в конце или даже в середине), вы сможете перемещать этот элемент внутри массива (в данном случае это последний элемент, поэтому вы можете не перемещать его вправо), если вы запустите функцию move-array-item-left
или unshift-array-item
, она переместит baz
влево:
var a = ['foo', baz, 'bar']; // JavaScript for instance
Кто-нибудь знает, как реализовать такую функцию (или, может быть, кто-то уже сделал это)?
Было бы неплохо иметь это для веб-режима, но, возможно, есть общий второстепенный режим, который Является ли это.
2 ответа
Расположите точку в начале baz
и нажмите C-M-t . Это запускает команду transpose-sexps
, которая, кажется, делает то, что вы хотите.
Я реализовал нечто подобное для семейства языков Lisp. См. гифку.
Можно сделать что-то подобное и для семейства Algol.
Похожие вопросы
Новые вопросы
arrays
Массив - это упорядоченная линейная структура данных, состоящая из набора элементов (значений, переменных или ссылок), каждый из которых идентифицируется одним или несколькими индексами. Когда вы спрашиваете о конкретных вариантах массивов, используйте вместо них следующие связанные теги: [vector], [arraylist], [matrix]. При использовании этого тега в вопросе, относящемся к языку программирования, пометьте вопрос используемым языком программирования.