PyQt QScintilla API 中文文档(1)

时间:2025-03-04 07:53:55

QScintilla选项和特殊功能

  • 本文API的父类
  • 换行模式
    • setWrapMode()
      • 设置换行模式
    • WrapMode()
      • 获取当前换行模式
    • setWrapVisualFlags()
      • 设置自动换行标志
    • setWrapIndentMode()
      • 设置换行缩进模式
  • 行尾(EOL)选项
    • setEolMode()
      • 设置行尾模式
    • setEolVisibility()
      • 设置行尾符号可见性
    • eolVisibility()
      • 获取当前行尾符号可见性
  • 缩进选项
    • setIndentationsUseTabs()
      • 设置使用Tabs缩进
    • indentationsUseTabs()
      • 获取当前缩进符号
    • setTabWidth()
      • 设置缩进长度
    • tabWidth()
      • 获取当前缩进长度
    • setIndentationGuides()
      • 设置缩进参考线
    • indentationGuides()
      • 获取当前是否使用缩进参考线
    • setTabIndents()
      • 设置Tab键为对齐缩进
    • tabIndents()
      • 获取当前Tab键是否为对齐缩进
    • setAutoIndent()
      • 设置自动缩进
    • autoIndent()
      • 获取当前自动缩进设置
  • 光标选项
    • setCaretForegroundColor()
      • 设置光标前景色
    • setCaretLineVisible()
      • 设置是否使用光标所在行背景色
    • setCaretLineBackgroundColor()
      • 设置光标所在行背景色
    • setCaretWidth()
      • 设置光标宽度

本文根据 官方文档翻译制作,水平有限,请以官方为准!本文仅用于个人学习研究,未经允许严禁用于商业,转载需标明出处!

本文API的父类

换行模式

设置或者启用编辑器的换行模式,当编辑器不足以容纳一行文本的时候,可以开启或者禁用自动换行。

setWrapMode()

设置换行模式

  • wrap_mode:换行模式

注意:自动换行不会增加行号

参数:wrap_mode 描述
不自动换行,只能通过滚动条来查看超过编辑框宽度的代码行
按单词换行,如果行末不足以容纳整个单词,那么这个单词将在下一行显示,一般用符号(如空格、逗号)来分隔单词
直接换行,如果字符碰到编辑框边缘,这个字符将在下一行开始显示
按空格换行,如果用空格分开的一个单词碰到编辑框边缘,那么这个单词将在下一行开始显示

WrapMode()

获取当前换行模式

返回值请看setWrapMode()的参数

setWrapVisualFlags()

设置自动换行标志

  • endFlag:行末标志
  • startFlag:行头标志
  • indent:每条换行缩进的空格数
参数:endFlag 描述
无换行标志
在文本末添加标志
在编辑器边界添加标志
在旁注栏添加标志
参数:startFlag 描述
无换行标志
在文本前添加标志
同上
在旁注栏添加标志(该值应用在endFlag时具有同样效果)
参数:indent 描述
每条换行缩进的空格数 仅当setWrapIndentMode方法设置为时,才能看到效果!

setWrapIndentMode()

设置换行缩进模式

参数:indent_mode 描述
设置每行换行使用空格缩进,缩进数使用setWrapVisualFlags方法进行设置
使用与第一行相同的缩进方式
在第一行的缩进方式上,再增加一个缩进级别,这个级别由setTabWidth方法设置

行尾(EOL)选项

这些选项影响行尾设置,如Windows模式(\r\n)、Unix模式(\n)、Mac模式(\r)。 默认情况下,行尾是不可见的,但可以使用setEolVisibility方法使它可见,如下所述。

setEolMode()

设置行尾模式

  • eol_mode:行尾模式
参数:eol_mode 描述
Windows模式,回车+换行(\r\n)
Unix模式,换行(\n)
Mac模式,回车(\r)

setEolVisibility()

设置行尾符号可见性

  • visibility:可见性
参数:visibility 描述
False EOL符号不可见
True EOL符号可见

eolVisibility()

获取当前行尾符号可见性

返回值:visibility 描述
False EOL符号不可见
True EOL符号可见

缩进选项

这些选项设置缩进使用的字符以及缩进长度。

setIndentationsUseTabs()

设置使用Tabs缩进

  • use_tabs:使用还是不使用
参数:use_tabs 描述
False 使用空格缩进
True 使用Tabs缩进

indentationsUseTabs()

获取当前缩进符号

返回值:use_tabs 描述
False 空格缩进
True Tabs缩进

setTabWidth()

设置缩进长度

  • indentation_size:缩进长度

tabWidth()

获取当前缩进长度

  • 返回值:缩进的长度

setIndentationGuides()

设置缩进参考线

  • indents:使用还是不使用

在编辑器上面显示一条缩进参考线,表示缩进的等级。

参数:indents 描述
False 不使用缩进参考线
True 使用缩进参考线

indentationGuides()

获取当前是否使用缩进参考线

返回值:indents 描述
False 不使用缩进参考线
True 使用缩进参考线

setTabIndents()

设置Tab键为对齐缩进

  • indents:是还是不是

这个功能解释起来可能有点麻烦,前提是光标在一行的缩进区内,按下tab键的作用请看下表参数描述。例如(空格用“空”代替,光标用“|”代替,代码用“代”代替),现在设置按下tab键是输入4个空格:“(行头)空空空空|代”,如果参数indents是False,那么光标在“空空空|空代”这个位置的时候,按下Tab键,将会变成“空空空空|空代”;如果如果参数indents是True,那么光标在“空空空|空代”这个位置的时候,按下Tab键,将会变成“空空空空空空空空|代”。建议去编辑框实际操作一遍。

参数:indents 描述
False 按下Tab键为在光标处插入一定数量的Tab符号或空格,使缩进对齐到光标所在位置的缩进等级,但是不删除光标右边的空格或Tab符号
True 按下tab键为在光标处插入足够的tab符号或空格,使缩进对齐到光标所在位置等级的下一级,并把光标右边的空格或Tab符号删除掉

tabIndents()

获取当前Tab键是否为对齐缩进

返回值参考setTabIndents方法的参数。

setAutoIndent()

设置自动缩进

  • autoindent_on:打开还是关闭自动缩进
参数:autoindent_on 描述
False 按下回车键时,光标移至下一行的行头
True 按下回车键时,下一行的缩进将使用与上一行相同的缩进,并把光标移动到该缩进

autoIndent()

获取当前自动缩进设置

返回值:autoindent_on 描述
False 按下回车键时,光标移至下一行的行头
True 按下回车键时,下一行的缩进将使用与上一行相同的缩进,并把光标移动到该缩进

光标选项

setCaretForegroundColor()

设置光标前景色

  • fg_color:前景色
参数:fg_color 描述
光标的前景色,比如把光标的前景色设成蓝色,你可以使用("#ff0000ff").

setCaretLineVisible()

设置是否使用光标所在行背景色

  • visibility:使用还是不使用
参数:visibility 描述
False 不使用
True 使用,背景色使用setCaretLineBackgroundColor方法设置

setCaretLineBackgroundColor()

设置光标所在行背景色

  • bg_color:光标所在行背景色
参数:bg_color 描述
光标所在行背景色。

setCaretWidth()

设置光标宽度

  • size:光标宽度
参数:size 描述
整数 光标宽度