Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Has someone got an idea what the shortcut is/where I can create one for the \medskip{} command (or any other command, that generates a vertical space in my document)?

I looked in Tools/Preferences/Editing/Shortcuts, but I couldn't find any command of this type there.

P.S. I'm using Lyx 1.6.5

share|improve this question
    
When you get to the stage of asking "how do I use this TeX command in LyX?" maybe it's time you dropped LyX for a proper editor... –  Seamus Jul 13 '11 at 12:00
    
@Seamus: Actually, the question is about binding a shortcut to a LyX function available via the GUI (which in result inserts a \medskip in the TeX-output of LyX). –  Daniel Jul 14 '11 at 20:29

2 Answers 2

up vote 6 down vote accepted

Short answer:

The following command sequence inserts a \medskip in your document, you just have to bind it to the shortcut you prefer: inset-insert vspace medskip.

General answer:

At times it is a bit tricky to figure out what LyX commands one actually has to bind to a shortcut to achieve the desired behavior. While for most commands LyX shows the last executed command in the status bar, this does not help for commands that open a dialog for further settings. In the following, I describe the approach I used to figure this one out, so you could apply it for other questions in this respect:

(1) Start Lyx with the -dbg action option (that is, run /path/to/lyx-binary/lyx -dbg action from a console window).

(2) Execute the command for which you want to figure out the command sequence. LyX lists the actions in the debug output in the console. The following shows the relevant output for "Insert->Formatting->Vertical Space... with MedSkip":

LyXFunc::dispatch: cmd:  action: 219 [dialog-show-new-inset]  arg: 'vspace' x: 0 y: 0
LyXFunc.cpp(771): 
LyXFunc::dispatch: cmd:  action: 218 [dialog-show]  arg: 'vspace vspace defskip' x: 0 y: 0
LyXFunc.cpp(1842): dispatch msg is 
LyXFunc.cpp(1875): verbose dispatch msg (dialog-show-new-inset vspace)
LyXFunc.cpp(771): 
LyXFunc::dispatch: cmd:  action: 224 [inset-apply]  arg: 'vspace medskip' x: 0 y: 0
LyXFunc.cpp(771): 
LyXFunc::dispatch: cmd:  action: 225 [inset-insert]  arg: 'vspace medskip' x: 0 y: 0

(3) Usually the last command executed by some dialog-based action is the one you are looking for. In this case it is the line with [inset-insert] and the arguments vspace medskip.

(4) Use the LyX Mini-Command Buffer (View -> Toolbars -> Command Buffer) to manually test the command: inset-insert vspace medskip

If the result is what you want to achieve, you are done and have found the command sequence to bind to the shortcut. Otherwise you have to experiment more :-)

share|improve this answer
    
Wow, very elegant solution for the general case. thank you –  user10324 Jul 14 '11 at 11:28

From what you ask a simple solution would be to add in ERT \vspace{xcm}, where x is the vertical space required.

share|improve this answer
1  
Welcome to TeX.sx! In the present form, your answer looks more like a comment. Could you expand it slightly? –  Corentin Mar 19 '13 at 22:27

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.