Большинство из этих ответов не будет делать нечетким поиск как возвышенный текст делает это - они могут соответствовать части ответа, но они не делают славные «просто найти все буквы в этом порядок ".
Я думаю, что это немного ближе к тому, что вы хотите. Я собрал специальную версию cd ('fcd'), которая использует нечеткий поиск, чтобы найти целевой каталог. Супер просто - просто добавьте это к вашему Bashrc:
function joinstr { local IFS="$1"; shift; echo "$*"; }
function fcd { cd $(joinstr \* $(echo "$*" | fold -w1))* }
Это добавит * между каждой буквой на входе, так что если я хочу пойти, например,
/home/dave/results/sample/today
я могу просто введите любой из следующих действий:
fcd /h/d/r/spl/t
fcd /h/d/r/s/t
fcd /h/d/r/sam/t
fcd /h/d/r/s/ty
Используя первый в качестве примера, это будет выполнять cd /*h*/*d*/*r*/*s*p*l*/*t*
и пусть Шелла, что на самом деле соответствует.
До тех пор, пока первый символ верен, и одна буква из каждой директории в пути написана, она найдет то, что вы ищете. Возможно, вы можете адаптировать это для своих нужд? Важный бит:
$(joinstr \* $(echo "$*" | fold -w1))*
, который создает строку поиска нечеткого поиска.
Какая тема? – potlee
@potlee https://github.com/junegunn/seoul256.vim –
звучит хорошо. Не могли бы вы сделать видео с YouTube? Я также хочу знать, как вы так быстро вставляете kill -9. –
anonymous