Этот вопрос основан на этой теме.
Проблема: для доступа к руководству 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, которые я нашел по ссылке выше, включают только документацию
для следующих команд:
mysqlhotcopy
perror
mysqldump
resolveip
mysqltest_embedded
mysql_setpermission
mysql_client_test
mysql_find_rows
mysql_fix_privilege_tables
mysql_waitpid
mysql_config
mysql_client_test_embedded
myisampack
replace
msql2mysql
make_win_bin_dist
my_print_defaults
mysql
-stress
-test
.pl
mysqlaccess
mysql_secure_installation
mysql
.server
mysql_convert_table_format
mysql_zap
mysql_fix_extensions
myisamlog
myisam_ftdump
mysqlbinlog
mysql_install_db
resolve_stack_dump
mysqlslap
mysql
-test
-run
.pl
mysqld_safe
mysqladmin
mysqlshow
mysql_tzinfo_to_sql
mysqltest
mysqlbackup
mysqld_multi
mysql
mysqldumpslow
mysqlcheck
mysql_upgrade
mysqlimport
comp_err
mysqld
myisamchk
innochecksum
Вы также можете рассмотреть возможность добавления
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'