这应该是世界上最简单的事情,但我无论如何也想不出如何做到这一点。
在 Word 中,我使用 Ctrl+M 或 Ctrl+Shift+M 分别增加或减少段落的缩进。在 Libreoffice 中,我找不到执行该操作的图标。有一个“增加/减少缩进”图标,但它的功能与 Word 不同 - 我只能减少项目符号层次结构中的缩进,即使我想移动整个段落。
请帮我结束我的沮丧……?
答案1
答案2
注意:这对于 2020-01-25 的 LO Writer 5 来说很好。
对此有 3 个解决方案:
1) 有些人会说你应该发明一种新的段落样式,并在每次需要缩进时应用它……如果你想要两次缩进,可能还需要第二种段落样式,等等。这似乎这是一个优雅的解决方案,因为您只需调整每个段落样式就可以全局更改内容。但 LO 中的段落样式实际上不够通用:假设您有其他原因需要区分段落,并希望将其与缩进深度相结合?您很快就会得到许多不同的样式……并且您可能需要调整所有样式。
2) 您可以直接将热键分配给“增加缩进”和“减少缩进”:您可以通过转到“工具”-->“自定义”-->“键盘”选项卡-->“功能”类别:格式,然后设置热键来找到这些热键。注意:这些“缩进”与默认制表位相同。您可以根据需要通过转到“工具”-->“选项”-->“LibreOffice Writer”-->“常规”-->“制表位”(在“设置”下)来更改默认制表位值。这个新的默认制表位间隔将应用于所有新文档,直到您再次更改它。
3)编辑宏并添加以下代码:
- 工具-->宏-->组织宏
- LibreOffice Basic --> 在“宏来自”框中展开“我的宏”项
- 展开“我的宏”下的“标准”:这应该显示“Module1”
- 将焦点放在“现有宏”框中的“主要”(或任何内容)上,单击“编辑”
- 在打开的宏对话框的底部添加此代码:
-
sub increase_indent_1cm
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim viewCursor as object
viewCursor = ThisComponent.CurrentController.getViewCursor()
viewCursor.ParaLeftMargin = viewCursor.ParaLeftMargin + 1000
end sub
sub decrease_indent_1cm
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim viewCursor as object
viewCursor = ThisComponent.CurrentController.getViewCursor()
viewCursor.ParaLeftMargin = viewCursor.ParaLeftMargin - 1000
end sub
注意:您可以输入“1000”以外的其他数字:1000 对应 1 厘米。
- 关闭宏对话框并返回文档。
- 现在您需要设置热键:
- 转到工具-->自定义-->“键盘”选项卡
- 在“功能”-->“类别”下展开项目“LibreOffice 宏”
- 展开“用户”,展开“标准”,并将焦点放在“模块 1”上
- 将焦点放在“增加缩进 1cm”上
- 在“快捷键”框中选择要增加缩进的组合键(热键):我选择了
Ctrl-Shift-[
- 单击修改:热键现已分配
- 对“减少缩进 1cm”执行相同操作:我选择
Ctrl-Shift-]
- 单击“确定”
注意:默认制表位间隔(如我上面所述,可以更改)为 1.25 厘米。因此,设置为 1 厘米将使任何制表位的段落缩进都不同。这可能是或可能不是理想的,具体取决于您的使用情况。