1、界面概述
         PNFile界面如下图1所示主要分成Title, Menu, Button, PNTree, PNPreview和Status这几个区域。Title区域用来显示当前查看的文件全路径。Menu区域有File, Directory, Edit, View, Application, Tool和Help菜单,File菜单菜单用来选择PNTree的目录根节点,在PNPreview中打开文件以及文件的保存和界面退出,Directory菜单可以对打开的目录结构做Delete, Hold, Paste, Move, New, Rename, Compress和Copy Full Path操作,Edit菜单可以对打开的文件做一些简单的编辑,View菜单用来设置文件的颜色/字体/参数/语法,Application菜单用来打开PNTree, PNEdit, PNDiff, PNFinder和PNCompare这几个应用,Tool菜单用来打开系统信息查看(System Information)、文件加解密(Encrypt/Decrypt)、文件分解和合并(Split/Join)以及目录列表打印(Directory Print)这几个小工具,Help菜单用来打开用户手册、查看告警和报错信息的详细解释、查看版本信息。Button区域有File, Edit, Search, Goto, Application, Tool和Help按钮,其功能和菜单栏中对应的类似。PNTree区域显示当前浏览的目录结构。PNPreview区域显示当前目录结构中查看的文件内容。Status区域主要显示当前目录结构中查看的文件属性信息。
图1 PNFile窗口各区域
         在PNFile界面按钮中File, Edit, Search, Goto, Application和Tool项如下图2所示。File项中的按钮点击设置目录树结构PNTree中的根目录节点,按钮,按钮,按钮和按钮点击分别控制在文件预览PNPreview中打开文件,做文件保存,设置可编辑状态和设置不可编辑状态。Edit项中的按钮,按钮,按钮,按钮和按钮分别控制文件预览PNPreview中打开的文件编辑过程的回退,编辑过程的前进,选中内容的剪切,选中内容的复制和选中内容的粘贴。Search项中的输入框用于输入搜索的关键字,按钮和按钮分别控制搜索到的关键字向前和向后跳转。Goto项中的输入框用于输入和显示当前所在的行号,按钮和按钮分别跳转至文件的首行和尾行。Application项中的按钮,按钮,按钮,按钮和按钮分别打开PNTree,PNEdit,PNDiff,PNFinder和PNCompare这几个应用。Tool项中的按钮,按钮,按钮和按钮分别打开查看系统信息(System Information),文件加解密(Encrypt/Decrypt),文件分解和合并(Split/Join)和文件列表打印(Directory Print)这几个小工具。
图2 PNFile文件查看按钮
         在PNFile界面文件预览PNPreview区域中鼠标右键会弹出菜单如下图3所示,有Undo, Redo, Cut, Copy, Paste, Select Word, Select Line, Select Paragraph, Select All和Copy Full Path这几项。其中Undo, Redo, Cut, Copy和Paste项点击分别控制文件预览PNPreview中打开的文件编辑过程的回退,编辑过程的前进,选中内容的剪切,选中内容的复制和选中内容的粘贴。Select Word, Select Line, Select Paragraph和Select All项点击分别控制文件预览PNPreview中打开的文件中选中一个字,一行,一段和全部内容。Copy Full Path项用于复制文件预览PNPreview中打开的文件全路径到剪切板中。
图3 PNFile文件编辑菜单
2、目录文件浏览
         PNFile中集成了目录结构树PNTree和文件预览窗口PNPreview,这很好的集合了目录的树状管理结构和对预览文件的实时操作,能够快速的对系统中的文件进行预览、编辑和保存等操作。同时在目录浏览过程中可以对浏览的目录实时调用PNFile平台中的应用和一些小工具。
2.1、目录浏览应用
         目录结构树和文件预览窗口,目录结构树是将系统中的目录结构以树状显示和管理,其管理方式和功能与PNTree是一致的,这里可以看成在PNFile中的PNTree区域集成了一个PNTree。文件预览窗口是将在目录结构树中选中的文件鼠标左键双击预览(或者是文件预览菜单/按钮打开),文件在预览窗口中打开时会根据其后缀名判断该文件的语法属性并以对应的语法规则做相应的高亮显示,在文件预览窗口中支持简单的文本编辑功能,并对编辑之后的内容重新保存文件。目录结构树和文件预览窗口之间有交互功能,目录结构树上选中一个文件节点用鼠标左键双击或者用鼠标左键按住拖动该节点到文件预览窗口释放都可以将该文件内容显示在文件预览窗口中,同样在文件预览窗口显示的文件也可以用鼠标左键按住拖动该文件内容到目录结构树窗口中也会在目录结构树高亮显示该文件所在的目录节点。
         目录浏览调用PNTree,在目录结构做浏览时可以选中任意一个目录节点打开应用PNTree,如下图4所示,在该例子中选中了”/home/test/test_case/script/ttt”这一个文件夹目录节点,鼠标右键打开PNTree中的弹出式菜单选中其中的PNTree项(还可以通过Application菜单中的PNTree项,或者是Application按钮项中的)开始调用PNTree应用,在新打开的PNTree中以该选中的目录节点作为根目录节点展开目录树。
图4 PNFile目录浏览调用PNTree
         目录浏览调用PNEdit,在目录结构做浏览时可以选中任意多个目录节点打开应用PNEdit,如下图5所示,在该例子中选中了文件”/home/test/test_case/script/test_old.tcl”,文件”/home/test/test_case/script/test55.tcl”和文件夹”/home/test/test_case/script/split_join”这三个目录节点,鼠标右键打开PNTree中的弹出式菜单选中其中的PNEdit项(还可以通过Application菜单中的PNEdit项,或者是Application按钮项中的)开始调用PNEdit应用,在新打开的PNEdit中同时打开该三个目录节点的内容,其中文件以文件名后缀判断文件语法属性高亮显示,文件夹则打开一个目录浏览器每次单层显示目录结构树中的当前层所有的目录节点。
图5 PNFile目录浏览调用PNEdit
         目录浏览调用PNDiff,在目录结构做浏览时可以选中任意多个文件目录节点打开应用PNDiff,如下图6所示,在该例子中选中了”/home/test/test_case/script/diff_test/test_old.tcl”,”/home/test/test_case/script/diff_test/test_mid.tcl”和”/home/test/test_case/script/diff_test/test_new.tcl”这三个文件目录节点,鼠标右键打开PNTree中的弹出式菜单选中其中的PNDiff项(还可以通过Application菜单中的PNDiff项,或者是Application按钮项中的)开始调用PNDiff应用,在新打开的PNDiff中同时打开该三个文件目录节点的内容开始直接做缺省模式的文本比较并显示比较之后的结果。
图6 PNFile目录浏览调用PNDiff
         目录浏览调用PNFinder,在目录结构做浏览时可以选中任意一个目录节点打开应用PNFinder,如下图7所示,在该例子中选中了”/home/test/test_case/script/finder_test”这一个文件夹目录节点,点击Application按钮项中的 (还可以通过Application菜单中的PNFinder项)开始调用PNFinder应用,在新打开的PNFinder中的PNTree区域以该选中的目录节点作为根目录节点展开目录树。
图7 PNFile目录浏览调用PNFinder
         目录浏览调用PNCompare,在目录结构做浏览时可以选中任意一个目录节点打开应用PNCompare,如下图8所示,在该例子中选中了”/home/test/test_case/script/compare_test/case0/left_test”和”/home/test/test_case/script/compare_test/case0/right_test”这两个文件夹目录节点,点击Application按钮项中的 (还可以通过Application菜单中的PNCompare项)开始调用PNCompare应用,在新打开的PNCompare中的Compare区域左右两边分别以该选中的两个目录节点作为根目录节点展开目录树。
图8 PNFile目录浏览调用PNCompare
2.2、预览界面设置
         预览界面颜色设置,在文件预览界面中可以对打开的文件文字和背景颜色做调整,如下图9所示通过菜单栏View中的Color Style项展开有”blue”, “darkblue”, “default”, “delek”, “desert”, “elford”, “evening”, “industry”, “koehler”, “morning”, “murphy”, “pablo”, “peachpuff”, “ron”, “shine”, “slate”, “torte”和“zellner”共18种颜色设置模式,这里的模式选择是单选项。选中其中的”blue”项之后文件预览界面中打开的文件文字和背景颜色被改成了”blue”颜色模式对应预先设定的颜色。
图9 PNFile文件预览界面颜色设置
         预览界面字体设置,在文件预览界面中可以对打开的文件字体和大小做调整,如下图10所示通过菜单栏View中的Font Style项展开有”Default”, “Normal”, “Bold”, “Italic”, “Small”, “Medium”和“Large”共7种字体设置模式,这里的模式选择是单选项。选中其中的”Large”项之后文件预览界面中打开的文件字体和大小被改成了”Large”字体模式对应预先设定的字体和大小。
图10 PNFile文件预览界面字体设置
         预览界面参数设置,在文件预览界面中可以对打开的文件一些参数做调整,如下图11所示通过菜单栏View中的Parameters项展开有”No Number”, “No List”, “No Autoindent”和“No Wrap”共4个参数设置模式,这里的模式选择是勾选项,其中”No Number”参数设置控制文件预览界面中行号的显示,”No List”参数设置控制文件预览界面中行尾标识符的显示,”No Autoindent”参数设置控制文件预览界面中文本编辑时换行方式,”No Wrap”参数设置控制文件预览界面中每行文字的换行缩进显示。选中其中的”No Number”项之后文件预览界面中则不显示行号。
图11 PNFile文件预览界面参数设置
         预览界面语法设置,在文件预览界面中可以对打开的文件语法高亮做调整,如下图12所示通过菜单栏View中的Syntax Setting项打开语法设置的小界面,其中有”c/c++”, “css”, “html”, “java”, “javascript”, “json”, “perl”, “php”, “python”, “shell”, “sql”, “systemverilog”, “tcl/tk”, “verilog”, “vhdl”和“xml”共16种语法高亮设置。选中其中的”java”语法之后文件预览界面中打开的文件语法高亮由原来的“tcl/tk”改成了按”java”的语法规则重新解析和高亮文件中的文字。
图12 PNFile文件预览界面语法设置
2.3、预览文件编辑
         编辑模式设置,在文件预览界面中可以对打开的文件做编辑或预览,有输入模式”Input Mode”和预览模式”Preview Mode”这两种模式,可以通过菜单栏Edit中的”Input Mode”和”Preview Mode”项或者按钮项File中的分别设置输入和预览这两种模式,在输入模式下可以对打开的文件做编辑状态跳转、基本编辑操作、关键字搜索、行号跳转,在预览模式下可以对打开的文件做编辑状态跳转、关键字搜索、行号跳转。如下图13所示将文件预览界面中打开的文件设置成输入模式”Input Mode”,在该模式下对打开的文件进行了一些输入文字编辑。
图13 PNFile文件预览编辑模式设置
         编辑状态跳转,在文件预览界面中可以对打开的文件在做编辑时会将每次编辑修改的状态记录下来并可以对这些状态进行跳转,有向前跳转”Undo”和向后跳转”Redo”这两种跳转模式,可以通过菜单栏Edit中的”Undo”和”Redo”项,PNPreview区域中的弹出式菜单栏中的”Undo”和”Redo”项以及或者按钮项Edit中的分别控制编辑状态向前和向后这两种跳转模式。如下图14所示将文件预览界面中打开的文件编辑状态做向前跳转操作,跳转至8/11编辑状态,即打开的文件在编辑时共记录了11个编辑状态,将当前状态回退至记录的第8个编辑状态。
图14 PNFile文件预览编辑状态跳转
         基本编辑操作,在文件预览界面中可以对打开的文件做一些基本编辑操作,在输入模式下可以做文字的输入、删除、复制和粘贴等操作,同时在输入模式和预览模式下都可以通过菜单栏Edit中的”Cut”、”Copy”和”Paste”项,PNPreview区域中的弹出式菜单栏中的”Cut”、”Copy”和”Paste”项以及或者按钮项Edit中的分别对编辑的内容做剪切、复制和粘贴操作,此外还可以通过PNPreview区域中的弹出式菜单栏中的”Select Word”、”Select Line”、”Select Paragraph”和”Select All”项分别对编辑的内容做选中单个字、选中一行、选中一段和全部选中操作。如下图15所示将文件预览界面中打开的文件内容编辑其中27行至30行的部分内容选中做剪切操作。
图15 PNFile文件预览编辑操作
         关键字搜索,在文件预览界面中可以对打开的文件做关键字的搜索操作,可以通过按钮项Search中的输入框输入对当前正在预览的文件需要搜索的关键字,回车键确认该关键字开始搜索,在完成搜索之后会将正在预览的文件中所有匹配的关键字内容都高亮显示,并将光标移至搜索前光标所在位置之后的第一个匹配到的关键字上,对匹配上的关键字内容查看可以通过按钮和按钮分别控制向前和向后跳转。如下图16所示将文件预览界面中打开的文件搜索关键字”set”,搜索完成之后在该文件中所有的”set”都被高亮。
图16 PNFile文件预览关键字搜索
         行号跳转,在文件预览界面中可以对打开的文件按行号做跳转操作,可以通过按钮项Goto中的输入框输入对当前正在预览的文件需要跳转的行号,回车键确认该行号开始跳转,将正在预览的文件中的当前光标移至该行号对应的行首位置,还可以通过按钮和按钮分别直接跳转至文件的首行和尾行。如下图17所示将文件预览界面中打开的文件在Goto输入框中输入47,回车键确认后当前光标移至47行首位置。
图17 PNFile文件预览行号跳转
3、常用小工具
         PNFile平台中集成了系统信息查看(System Information),文件加解密(Encrypt/Decrypt),文件分解和合并(Split/Join)和目录列表打印(Directory Print)这4个常用的小工具。可以通过菜单栏Tool中的”System Information”、”Encrypt/Decrypt”、”Split/Join”和”Directory Print”项,按钮项Tool中的,以及PNTree区域中的弹出式菜单中的Tool项展开的”Encrypt/Decrypt”、”Split/Join”和”Directory Print”子项分别打开对应的小工具窗口。
3.1、系统信息查看
         如下图18所示是系统信息查看(System Information)工具窗口,在该窗口中显示了当前系统中的信息内容。其中”Architecture”显示当前系统所用的处理器为32或64位架构,”Machine”显示当前系统所用的处理器具体使用的哪种指令集架构,”Node”显示当前系统所在节点的名称,”Processors”显示当前系统所用的处理器核个数以及每个核的名称和主频信息,”System”显示当前所使用的操作系统名称,”Distribution”显示当前操作系统所使用的发行版本信息,”Average Load”显示当前CPU在一段时间(1分钟、5分钟、15分钟)内平均负载值,”Memory Info”显示当前系统中的内存占用信息(“MemTotal”对应总的内存值、”MemFree”对应剩余可用的内存值),”Uptime”显示当前系统已经登陆运行的总时间,”HostName”显示当前系统中的主机名称,”HostId”显示当前系统中的主机ID号,”MacAddr”显示当前系统中所使用的网卡物理地址,”IPAddr”显示当前系统中的IP地址信息,”SystemTime”显示当前系统中设置的系统时间信息。在该窗口中对于所显示的系统信息还可以通过点击按钮Refresh进行实时更新。
图18 PNFile系统信息查看工具
3.2、文件加解密
         文件加解密(Encrypt/Decrypt)工具窗口中可以对选中的文件做加解密操作,在File栏中点击按钮打开文件选择对话框,选中之后该文件全路径显示在文件输入框中(也可以直接输入文件的全路径名),在Password栏中有Encrypt和Decrypt这两个选项分别对应将选中的文件做加密和解密操作,Password输入框用于输入加解密的密码,点击按钮Preview可以将文件在做完加/解密操作之后的内容显示在Preview栏中(该操作只显示内容,不保存文件),点击按钮Apply或OK可以将加/解密操作之后的内容保存至当前打开的文件中。如下图19所示,选中了文件”/home/test/test_case/script/test_old.tcl”,对其做加密操作(设置密码为12345),加密之后源文件的内容变成乱码形式显示在Preview栏中。
图19 PNFile文件加解密工具
3.3、文件分解和合并
         文件分解和合并(Split/Join)工具窗口中可以对选中的文件做分解和合并操作,在该窗口中有Split和Join这两个分栏,选中Split即显示文件分解界面,选中Join则显示文件合并界面。
         文件分解,在From/To栏中点击按钮打开文件选择对话框找到当前需要做分解的文件,选中之后该文件全路径显示在文件输入框中(也可以直接输入文件的全路径名),点击按钮打开文件夹选择对话框找到做完文件分解之后的分解文件需要保存的文件夹,选中之后该文件夹全路径显示在文件夹输入框中(也可以直接输入文件夹的全路径名)。在Mode栏中有”split by line”和”split by file”这两个选项,分别选择设置分解为按行数和按文件数这两种方式,对应在各自的输入框中可以输入相应的值(行数值控制文件按该行数做新文件的分解,文件数值控制文件分解成多少个新的文件),点击按钮Preview可以将分解之后的文件信息做预览(该操作不保存文件)。在表格中显示的分解信息,其中Line-Range(From)列表示分解的源文件中的起始和结束行值,Part(To)列表示这些源文件中的行内容在分解之后新文件中所在的位置编号,File(To)列表示分解之后的新文件名。在该分解信息表格中有一个弹出式菜单,其中Add项点击会打开一个对话框,在该对话框中输入对当前选中文件中增加一段分解的内容,Delete项点击会将当前选中的分解项删除,Split项点击会仅对当前选中的分解项做分解输出到新文件中。窗口左下方显示当前分解文件的总的行数和分解之后总的文件数,点击按钮Split或OK可以将当前列表中的所有分解项做分解输出到新文件中。如下图20所示,选中了文件”/home/test/test_case/script/split_join/split_test1/split.txt”,对其做按每10行一个文件做分解,该文件共110行,分解之后为11个新文件,对应每个分解信息都显示在分解列表中。
图20 PNFile文件分解合并工具(分解)
         文件合并,在From/To栏中点击按钮打开文件选择对话框找到需要做合并的文件,选中之后该文件全路径显示在文件输入框中(也可以直接输入文件的全路径名),点击按钮Insert确认该文件将被作为要合并的文件被加载到合并列表中,点击按钮打开文件选择对话框找到做完文件合并之后的合并文件需要保存的文件,选中之后该文件全路径显示在文件输入框中(也可以直接输入文件的全路径名)。在表格中显示的合并信息,其中Line-Insert(To)列表示该项在合并之后的文件中所在的起始行值以及需要合并的行数,Line-Range(From)列表示合并的源文件中的行起始和结束行值,File(From)列表示合并的源文件名。在该合并信息表格中有一个弹出式菜单,其中Insert项点击会打开一个对话框,在该对话框中输入对当前选中项之前增加一个新的合并文件,Delete项点击会将当前选中的合并项删除。窗口左下方显示当前合并的源文件个数以及合并之后总的行数,点击按钮Join或OK可以将当前列表中的所有合并项做合并输出到新文件中。如下图21所示,选中了”/home/test/test_case/script/split_join/join_test1/split_sp0.txt”,”/home/test/test_case/script/split_join/join_test1/split_sp1.txt”,”/home/test/test_case/script/split_join/join_test1/split_sp2.txt”和”/home/test/test_case/script/split_join/join_test1/split_sp3.txt”这4个源文件,合并之后新文件名为”/home/test/test_case/script/split_join/join_test1/split_sp0123.txt” ,对4个源文件依次做顺序合并操作,其总的行数为233行。
图21 PNFile文件分解合并工具(合并)
3.4、目录列表打印
         目录列表打印(Directory Print)工具窗口中可以对选中的根目录做目录列表打印操作,在Scope栏中点击按钮打开文件夹选择对话框,选中之后该文件夹全路径显示在文件夹输入框中(也可以直接输入文件夹的全路径名),以该文件夹路径作为所要打印的根目录节点,这里有”Level All”、”Level 1”、”Level 1-?”和”Level ?”这4个选项分别设置根目录节点之下所要打印的目录层次为全部层次、第1层、第1到设定的值层,第设定的值层。在Information栏中有”Summary Info”和”Detail Info”这2个勾选项分别控制是否打印summary头信息和打印的目录列表信息中除目录全路径名之外是否还打印该目录的访问权限、创建者、存储大小和更新时间这些详细信息。在File/Folder栏中有”File-Folder”、”File Only”和”Folder Only”这3个单选项控制目录列表打印文件和文件夹、仅打印文件和仅打印文件夹。在Flatten/Hierarchy栏中有”Flatten Mode”和”Hierarchy Mode”这2个单选项控制目录列表打印的模式为展平的目录列表模式和有层次连接的目录树模式。在Sort By栏中有”File Name”、”File Size”和”Update Time”这3个单选项控制目录列表打印时按文件名、按存储大小和按更新时间做排序打印。点击按钮Search之后窗口左下方显示当前需要打印总的目录列表数,点击按钮Print会打开一个文件选择对话框,选中需要保存的文件将目录列表打印信息内容输出到该文件中。如下图22所示,选中了文件夹”/home/test/test_case/script/finder_test”作为根目录节点并选择打印全部目录层次,打印summary头信息和目录列表的详细信息,按展平模式打印,目录列表打印顺序按文件名排序,打印之后的内容保存在”/home/test/test_case/script/directory_print_finder_test.txt”文件中。
图22 PNFile目录列表打印工具