Этот вопрос основан на этой теме.
Проблема: для доступа к руководству MySQL, когда курсор находится в начале слова
Ctrl-A Esc Ctrl-m
где m напоминает о M ysql.
Как вы можете создавать руководства Vim-like K in Screen для MySQL?
Этот вопрос основан на этой теме.
Проблема: для доступа к руководству MySQL, когда курсор находится в начале слова
Ctrl-A Esc Ctrl-m
где m напоминает о M ysql.
Как вы можете создавать руководства Vim-like K in Screen для MySQL?
Предполагая, что вы установили man-страницы из сайт документации по MySQL:
Поместите следующее в /path/to/mysql-help.screen:
# mysql-help.screen
# prevent messages from slowing this down
msgminwait 0
# copy term starting at cursor
copy
stuff " e "
# write term to a file
writebuf /tmp/screen-copied-term
# open that file in man in a new screen window
# (use `read` to pause on error, so user can see error message)
screen /bin/sh -c 'man `cat /tmp/screen-copied-term` || read'
# turn message waiting back on
msgminwait 1
# vi: ft=screen
Затем добавьте это в свой ~/.screenrc
# Have CTRL-A ESC put you in a mode to accept commands in the 'escaped' class
bind \033 command -c escaped
# add CTRL-M as an 'escaped' class command to run the given screen script
bind -c escaped ^M source /path/to/mysql-help.screen
Тогда ваш keybinding должен работать. Если вы используете другую программу для отображения
в руководстве, отличном от man, вам придется изменить script соответственно.
Страницы man для mysql, которые я нашел по ссылке выше, включают только документацию
для следующих команд:
mysqlhotcopyperrormysqldumpresolveipmysqltest_embeddedmysql_setpermissionmysql_client_testmysql_find_rowsmysql_fix_privilege_tablesmysql_waitpidmysql_configmysql_client_test_embeddedmyisampackreplacemsql2mysqlmake_win_bin_distmy_print_defaultsmysql-stress-test.plmysqlaccessmysql_secure_installationmysql.servermysql_convert_table_formatmysql_zapmysql_fix_extensionsmyisamlogmyisam_ftdumpmysqlbinlogmysql_install_dbresolve_stack_dumpmysqlslapmysql-test-run.plmysqld_safemysqladminmysqlshowmysql_tzinfo_to_sqlmysqltestmysqlbackupmysqld_multimysqlmysqldumpslowmysqlcheckmysql_upgrademysqlimportcomp_errmysqldmyisamchkinnochecksum
Вы также можете рассмотреть возможность добавления
zombie kr
на ваш .screenrc, так что если вы запустите руководство по термину, который он не распознает, экран автоматически не закрывает окно (и скрывает сообщение об ошибке).
Пока я не уверен, как начать создавать оболочку для vim, чтобы делать именно то, что вы хотите, я мог бы сделать предложение о том, как вы можете добиться подобного эффекта с помощью функции, встроенной в vim.
 :! <command> позволит вам запускать команды оболочки с аналогичным интерфейсом с командой vim K. Это может быть не самый чистый способ сделать это, но, используя :!, вы сможете быстро называть руководства MySQL для данного термина без полного выхода из vim.
Если вам действительно нужно написать свой собственный плагин для vim, эта статья может дать вам несколько указателей и поручить, где для начала.
Надеюсь, это поможет!
Мне нравится перерабатывать мои Man-страницы, чтобы я мог легко читать руководства. Я предлагаю следующее улучшение для команды Rampion.
Рэмпион
screen /bin/sh -c 'man `cat /tmp/screen-copied-term` || read'
Me
screen /bin/sh -c 'man `cat /tmp/screen-copied-term` > /tmp/manual | less /tmp/manual'