-
Notifications
You must be signed in to change notification settings - Fork 13
配置文件
MenuZ配置文件为ini格式,以下声明定义:
配置文件的编码 由于Autohotkey原生的INI读取函数是基本ASNI的,所以INI配置文件必须是ASNI编码。如果发现读取的菜单内容乱码,请将配置文件修改为ASNI编码。最简单的修改方式可以使用记事本打开,然后另存为,"编码"选择ASNI
主配置文件: MenuZ.ini ,在生成菜单时,所有的菜单都从这里读取。
子配置文件: 一般位于config\ 目录下,可以通过 {inifile} 标签进行链接。
段: 在配置文件中,以[]包含起来的文本,如 [config] [env] [hotkey] 等。
全局配置段: [config] ,用于控制全局配置,详细说明请看 wiki/全局配置。
热键定义段: [hotkey] ,用于定义调用MenuZ菜单的热键 。遵守autohotkey热键的定义,一般左侧为热键名,右侧为模式。
文本类型定义段: [texttype] ,保留用于定义文本类型,根据正则式,对选择的文本进行分类,然后出对应类型设置菜单。如下定义一个名为ftp的文本类型:
[texttype]
ftp=^ftp:\\\\\
用户变量定义段 [env] ,用于定义用户变量,主要目的是简化编写菜单项和管理菜单项,通过设置用户变量,不需要每次冗长地输入路径或者经常用的"标签",如果调用的程序路径变动了,也只需要修改用户变量就行,不需要对每个带有该程序的菜单内容进行多次修改。调用只需要用%用户变量名%,定义和调用方式如下:
[env]
tc=D:\tools\tc\totalcmd.exe
[Anyfile]
使用TC打开=%tc% /O /T /L={file:path}
注:除了用户变量之外,还有MenuZ的相关变量、AHK内置变量,环境变量(Path)等,详细请见 wiki/变量
内置类型段 MenuZ的菜单是根据当前选择的类型,然后查询所有与当前类型相关的菜单内容,最后绘制菜单。其中,为了方便,MenuZ内置了一些类型段,方便菜单项的编写,内置类型有以下:
[Any]
;此内置类型段,无论MenuZ选择的是哪种类型,Any段下的菜单项都会出现
[AnyFile]
;仅当选择的内容是文件、文件夹、驱动器、无扩展名文件时,AnyFile段下的菜单项才会出现。
[AnyText]
;无视[texttype]定义的文件类型,只要选择的是文本,AnyText段下菜单都有效
[AnyClass]
;如果当前无选择内容,出现的是对应当前窗口的菜单,AnyClass 就是对应所有的窗口
[Multifiles]
;如果是选择了多个文件,由于多个文件的类型比较特殊,所以单列出来。详细说明见 wiki/多文件
[Folder]
;目录类型
[Drive]
;驱动器类型
[NoExt]
;无扩展名文件
类型段 除了内置类型段外,可以定义类型段,类型段的定义如下:
[.ahk]
;文件类型,一般是根据带点的后缀来定义的。此类型段为当选择类型为.ahk后缀时
[.ahk|.txt|.doc]
;有些菜单项可能对大部分文件类型都适合,此时,可以使用 | 分隔多种后缀。
[ftp]
;文本类型段,一般配置 [texttype] 使用,用于定义特定类型的文本的菜单
[texttype]
ftp=^ftp:\\\\
注:所有的类型段都可以做为子菜单,详细见wiki/子菜单
菜单项 菜单名=菜单内容
[.ahk]
用¬epad打开=%systemroot%\notepad.exe "{file:path}" {icon:icons\menuz.ico} {run:max}
;菜单名可以通过 & 来定义菜单导航,如 &C ,定义当前菜单的导航键为 C
;菜单内容一般由四部分组成
;程序路径 %systemroot%\notepad.exe
;参数类标签 {file:path}
;图标类标签 {icon:icons\menuz.ico}
;特殊类标签 {run:max}
注:详细的标签(开关)介绍请查看wiki/标签
模式: {mode} ,根据不同热键对应的模式,可以出不同的的组合菜单,每次通过热键调用MenuZ时,都会查询对应的模式,然后根据模式,查询菜单内容包括该模式的菜单项。例:
[hotkey]
;定义一个叫网络搜索的模式 {mode:网络搜索} ,热键为Alt+1
!1={mode:网络搜索}
[AnyText]
;会搜索对应的所有带 {mode:网络搜索} 的菜单项
&Google=https://www.google.com.hk/search?newwindow=1&safe=strict&q={select} {icon:icons\google.ico} {mode:网络搜索}
注:{mode}为调用所有菜单