Pregunta

Esta pregunta se basa en este hilo.

Problema: Para acceder al manual de MySQL cuando el cursor está al comienzo de la palabra por

Ctrl-A Esc Ctrl-m

donde m recuerda METROYSQL.

¿Cómo puedes construir una K en la pantalla tipo VIM para los manuales de MySQL?

¿Fue útil?

Solución

Suponiendo que haya instalado las páginas del hombre desde Sitio de documentación de MySQL:

Pon lo siguiente /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

Luego agregue esto a su ~/.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

Entonces tu keybinding debería funcionar. Si está utilizando un programa diferente para mostrar el manual que no sea man, tendrás que cambiar el script en consecuencia.

los man Las páginas para MySQL que encontré en el enlace anterior solo incluyen documentación para los siguientes comandos:

mysqlbug 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

También es posible que desee considerar agregar

zombie kr

para usted .screenrc, de modo que si ejecuta el manual en un término que no reconoce, la pantalla no cierre automáticamente la ventana (y oculta el mensaje de error).

Otros consejos

Si bien no estoy seguro de cómo comenzar a crear una envoltura para que VIM haga exactamente lo que desea, podría hacer una sugerencia sobre cómo puede lograr un efecto similar con una función integrada en VIM.

:! <command> le permitirá ejecutar comandos de shell con una interfaz similar al comando K de VIM. Puede que no sea la forma más limpia de hacerlo, sino usando :! Debería poder llamar a los manuales MySQL rápidamente para un término dado rápidamente sin dejar completamente VIM.

Si realmente necesita escribir su propio complemento para VIM, Este artículo podría darle algunos consejos y un asa sobre dónde comenzar.

¡Espero que esto ayude!

Me encanta reciclar mi hombre, páginas de tal manera que pueda leer fácilmente manuales. Sugiere la siguiente mejora al comando de Rampion.

Rampión

screen /bin/sh -c 'man `cat /tmp/screen-copied-term` || read'

Yo

screen /bin/sh -c 'man `cat /tmp/screen-copied-term` > /tmp/manual | less /tmp/manual'

Mi código le da el porcentaje de signo en la parte inferior de un manual.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top