Это не волшебство или что-то еще ... просто приятная стенография анонимных функций.
partial(alert, "FOO!")
эквивалентно function(){alert("FOO!");}
partial(Math.max, 0)
соответствует function(x){return Math.max(0, x);}
Призывы к частичной ( MochiKit терминологии. Я думаю, что некоторые другие библиотеки дают функции, которые способствуют тому или иному), выглядят немного лучше и менее шумно, чем анонимные функции.
Это противоположно тому, что было задано здесь .
Да, вы можете! Если у вас есть опция «скрывать», вы можете попробовать это.
:syntax match spaces / / conceal cchar= "Don't forget the space after cchar!
:set concealcursor=nvi
:set conceallevel=1
Вот что делают эти команды:
Вам все еще нужно установите для tabstop
, softtabstop
и shiftwidth
значение 4
, но выглядит , а чувствует , как 2
! Однако, когда вы пишете файл, это действительно 4
.
Если вы хотите отключить сокрытие, вы можете сделать одну из двух вещей:
:syntax clear spaces
или :set concealcursor=
Если он использует истинные пробелы вместо вкладок (как это звучит), нет, вы не можете отображать vim 2 пространства, где их нет 4. Однако вы можете сообщить vim следующим командам, чтобы заменить все 4-пространственные группы на и затем отобразите их как 2 пробела.
:set tabstop=4 ! display a tab as 4 columns
:set shiftwidth=4
:set noexpandtab
:gg=G ! convert the whole file to tabs
:set tabstop=2 !display a tab as 2 columns
:set shiftwidth=2
Когда вы готовы отправить свою работу,
:set tabstop=4
:set shiftwidth=4
:set expandtab
:%retab
Должны преобразовать ее.
Справка имеет пример для аналогичного варианта использования разных ширины табуляции, см. :help retab-example
.
Адаптация этого к пространствам с удвоением / удвоением:
:autocmd BufReadPost,BufWritePost * %substitute/^\( \+\)\1/\1/e
:autocmd BufWritePre * %substitute/^ \+/&&/e