我目前正在使用以下代码。它适用于每一行以换行符开头但不是其他行。 我尝试了一些变体,导致Autohotkey自动剥离字符串的开头。
AppsKey::
oldClipBoard := ClipboardAll ; old Clipboard
clipboard = ; Emptying clipboard to prepare for ClipWait
SendInput, ^c ; Copying the selected text (Crtl+C)
ClipWait
selected_text := Clipboard
StringReplace, selected_text , selected_text , `r`n , `n , All
placeholder := "`n "
StringReplace, selected_text , selected_text , `n , %placeholder% , All
SendInput, %selected_text%
ClipBoard := oldClipBoard ; restore ClipBoard
return
答案 0 :(得分:2)
尝试将四个空格添加到要粘贴的字符串的开头:
SendInput, {space 4}%selected_text%
并且不要在所选内容的上一行末尾选择换行符或回车符。
注意,由于选择的文本通常不会以换行符开头,因此上面的代码只是将四个字符{space 4}
添加到选择的开头,OP的原始代码处理四个空格对于每个新行(因为它们具有前面的换行符,然后由换行符和四个空格替换)。